.package-slider {
	margin-bottom: 20px;
	padding-top: 20px;
	border-top: 1px solid var(--light);
}

#create-account {
	margin-top: 20px;
	padding: 20px 15px 0px 15px;
	border-top: 1px solid var(--light);
}

#summary-details .btn {
	margin: 10px 0px;
}

.pass-reset {
	padding-top: 5px;
	font-size: 12px;
	font-style: italic;
}

.card-order {
	background-color: #fff;
	font-size: 12px;
	padding: 5px 10px;
	margin-bottom: 15px;
}

.card-order .row.card-fix {
	margin: 0px -20px;
}

.card-order .table {
	border: none;
}

.card-order .table > thead > tr > th {
	background: none;
	border: none;
	border-bottom: 2px solid rgba(0, 0, 0, 0.1);
}

.card-order .table > tbody > tr > td {
	border: none;
	padding: 8px 4px 4px 4px;
}

.card-order .total-due {
	text-align: right;
}

.card-order .total-due h4 {
	margin-top: 5px;
}

.currency {
	margin-top: 10px;
}

.currency form {
	float: right;
	margin: 10px 0px;
}

.currency form * {
	margin-right: 0px !important;
	margin-left: 5px;
	display: flex;
}

@media (max-width: 768px) {
	.currency {
		margin-top: 0px;
	}

	.currency form {
		float: none;
		width: 100%;
		margin: 0px 0px 15px 0px;
	}

	.currency form * {
		width: 100% !important;
		display: block;
		margin: 0px !important;
	}
}

.gateway-logo {
	object-fit: cover;
	max-height: 40px;
	max-width: 125px;
	padding-left: 5px;
	box-sizing: border-box;
}

#payment-method .card-body .px-2:last-child label {
	margin-bottom: 5px;
}

.payment_type, .gateway {
	margin-right: 5px;
}

.section-title {
    margin-top: 10px;
}

.section-title h3 {
    font-weight: bold;
}

/* Slider Styles */
.package-slider {
	margin-bottom: 20px;
}

.package-slider .slider.slider-horizontal {
	margin: 10px 15px;
	box-sizing: border-box;
}

.package-slider .slider.slider-horizontal {
	width: calc(100% - 30px);
}

.package-slider .slider.slider-horizontal .slider-track-high {
	background: var(--secondary) !important;
	opacity: 0.5;
}

.package-slider .slider.slider-horizontal .slider-selection {
	background: var(--info) !important;
}

.package-slider .slider .slider-handle {
	background: var(--info) !important;
}

.package-slider .package-block {
	display: none;
}

.package-slider .package-block.active {
	display: block;
}

.package-slider .package-selected {
	padding: 10px 20px;
}

.package-slider .package-selected h3 {
	margin-bottom: 0px;
}

.package-slider .instructions {
	padding: 0px 10px;
	font-style: italic;
	color: var(--secondary);
}

/* Boxes styles */
.package {
	margin: 10px 0 15px;
	background: #fff;
	text-align: center;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	-webkit-box-shadow: 0 3px 1px #acacac;
	-moz-box-shadow: 0 3px 1px #acacac;
	box-shadow: 0 3px 1px #acacac;
	border: 2px solid #fff;
	opacity: 0.6;
}

.package.selected {
	opacity: 1;
}

.package > .selected-btn, .package.selected > .unselected-btn {
	display: none;
}

.package > .unselected-btn, .package.selected > .selected-btn {
	display: block;
}

.package .package-name {
	-webkit-border-top-left-radius: 6px;
	-webkit-border-top-right-radius: 6px;
	-moz-border-radius-topleft: 6px;
	-moz-border-radius-topright: 6px;
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
}

.package-name.card-header {
	padding: 5px 10px;
}

.package ul {
	text-align: left;
}

.package p {
	border-bottom: 1px dashed #efefef;
	margin: 0;
	padding: 5px 10px;
}

.package h4 {
	font-size: 18px;
	padding: 5px 0;
	margin-top: 0;
	margin-bottom: 0;
}

.package .price-box {
	background-color: #efefef;
	padding: 1px 0;
}

.package .price-box p {
	padding: 0;
	margin-bottom: -10px;
	margin-top: 5px;
	font-style: italic;
	font-size: 12px;
	color: #999;
}

.package .order {
	padding: 5px;
	background-color: #efefef;
	-webkit-border-bottom-right-radius: 6px;
	-webkit-border-bottom-left-radius: 6px;
	-moz-border-radius-bottomright: 6px;
	-moz-border-radius-bottomleft: 6px;
	border-bottom-right-radius: 6px;
	border-bottom-left-radius: 6px;
}

.package-groups {
	margin-top: 20px;
}

.package-groups .list-group-item {
	margin-bottom: 20px;
    border-top-width: 1px;
}

/* Whois styles */
.card {
    background-color: inherit;
}

.whois {
	margin-top: 15px;
	margin-bottom: 15px;
    background: rgba(0, 0, 0, 0.05);
    background-repeat: no-repeat;
    background-position: 110% -70px;
    background-image: url(../images/globe.svg);
    padding: 25px;
    border-radius: 8px;
}

.whois div.checkbox label {
	padding-right: 5px;
}

.whois div.tlds, div.search {
	margin: 0 auto;
	text-align: center;
	display: block;
}

.whois div.tlds {
	margin-bottom: 0;
}

.whois .show_more {
	margin-left: 5px;
}

.domains {
	font-size: 14px;
}

#queue_nonempty_btns, #queue_continue_btns {
	display: none;
}

#empty_cart {
	margin-bottom: 20px;
}

/* List Styles */
.package-list {
	margin-top: 10px;
	background-color: #fff;
}

.package-list .package-item {
	margin-top: 0;
	padding: 0px 20px;
}

.package-list .package-description {
	padding: 10px;
}

.package-list h3 {
	margin-top: 5px;
}

.package-list .instructions {
	margin-bottom: 2px;
	font-style: italic;
	color: #999;
}

.package-list .selected-btn, .package-list.selected .unselected-btn {
	display: none;
}

.package-list .unselected-btn, .package-list.selected .selected-btn {
	display: block;
}/* ===== TekLan Hosting order form (same layout as TekLan VPN's, in Hosting's colours: Inter, indigo #0254fa, navy #141e35) ===== */
.tkh-order-head { position: relative; text-align: center; margin: 1rem 0 1.5rem; }
.tkh-order-head h2 { font-family: 'Inter', sans-serif; font-weight: 800; color: #141e35; font-size: clamp(1.6rem, 3vw, 2.2rem); margin-bottom: .4rem; }
.tkh-order-head p { color: #64748b; max-width: 38rem; margin: 0 auto; }
.tkh-currency { position: absolute; top: 0; right: 0; }
.tkh-currency select { width: auto; }
@media (max-width: 767.98px) { .tkh-currency { position: static; display: flex; justify-content: center; margin-top: .75rem; } }

.tkh-terms { display: flex; flex-wrap: wrap; justify-content: center; gap: .4rem; padding: .35rem; margin: 0 auto .5rem; max-width: max-content; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 999px; }
.tkh-term { border: 0; background: transparent; color: #141e35; font-weight: 600; font-size: .9rem; padding: .45rem 1rem; border-radius: 999px; cursor: pointer; }
.tkh-term:hover { background: #eaf1ff; color: #0254fa; }
.tkh-term.active { background: #0254fa; color: #fff; box-shadow: 0 6px 16px rgba(2, 84, 250, .25); }
.tkh-term:focus-visible { outline: 3px solid rgba(2, 84, 250, .35); outline-offset: 2px; }
.tkh-terms-note { text-align: center; color: #94a3b8; font-size: .85rem; margin-bottom: 1.75rem; }

.tkh-plans { align-items: stretch; }
.tkh-plan-card { position: relative; height: 100%; display: flex; flex-direction: column; padding: 1.75rem 1.5rem; background: #fff; border: 1px solid #e2e8f0; border-radius: 18px; box-shadow: 0 1px 3px rgba(15, 23, 42, .08), 0 8px 24px rgba(15, 23, 42, .04); }
.tkh-plan-card.featured { border: 2px solid #0254fa; box-shadow: 0 14px 34px rgba(2, 84, 250, .18); }
.tkh-badge { position: absolute; top: -.8rem; left: 50%; transform: translateX(-50%); padding: .2rem .8rem; border-radius: 999px; background: #0254fa; color: #fff; font-size: .72rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; white-space: nowrap; }
.tkh-plan-card h3 { font-family: 'Inter', sans-serif; font-weight: 800; color: #141e35; font-size: 1.25rem; margin: 0 0 .25rem; text-align: center; }
.tkh-summary { color: #64748b; text-align: center; font-size: .92rem; margin-bottom: 1rem; }
.tkh-footnote { color: #94a3b8; font-size: .8rem; line-height: 1.5; margin: auto 0 0; padding-top: .9rem; }
.tkh-price { text-align: center; margin-bottom: 1.25rem; }
.tkh-amount { font-family: 'Inter', sans-serif; font-size: 2.3rem; font-weight: 800; color: #141e35; line-height: 1.1; }
.tkh-amount small { font-size: .95rem; font-weight: 600; color: #64748b; }
.tkh-sub { color: #64748b; font-size: .88rem; margin: .3rem 0 .9rem; min-height: 1.3rem; }
.tkh-save { display: inline-block; margin-left: .35rem; padding: .05rem .5rem; border-radius: 999px; background: #dcfce7; color: #15803d; font-weight: 700; font-size: .78rem; }
.tkh-features { list-style: none; padding: 0; margin: 0; border-top: 1px dashed #e2e8f0; padding-top: 1rem; }
.tkh-features li { position: relative; padding: .3rem 0 .3rem 1.6rem; font-size: .92rem; color: #1a2035; }
.tkh-features li::before { content: "\2713"; position: absolute; left: 0; top: .28rem; font-weight: 700; color: #16a34a; }

.tkh-reassure { display: flex; flex-wrap: wrap; justify-content: center; gap: .75rem 1.75rem; margin: .5rem 0 1.5rem; color: #64748b; font-size: .9rem; }
.tkh-reassure i { color: #0254fa; margin-right: .3rem; }

/* Configure, cart and checkout steps in Hosting's colours */
.order .btn-success { background: #0254fa; border-color: #0254fa; }
.order .btn-success:hover, .order .btn-success:focus { background: #0143cc; border-color: #0143cc; }
.order .section-title h3 { font-family: 'Inter', sans-serif; font-weight: 800; color: #141e35; }
.order .card-blesta, .order .card { border-radius: 14px; }
.tkh-amount small.tkh-for { display: block; font-size: .9rem; margin-top: .15rem; }
.tkh-plan-card.tkh-chosen { outline: 3px solid #0254fa; outline-offset: 3px; }

/* Phone: cart and summary tables fit the card (Bootstrap keeps cells on one line and the card clips them) */
@media (max-width: 767.98px) {
	.card.card-order.table-responsive, .card-order .table-responsive { overflow-x: auto; }
	.card-order .table > thead > tr > th, .card-order .table > tbody > tr > td { white-space: normal; }
	.card-order .table .btn-group { flex-direction: column; gap: .25rem; }
	.card-order .table .btn-group > .btn { border-radius: .25rem !important; margin: 0 !important; }
}

/* Plan cards: the price block has a fixed height so every card's Choose button and feature list line up,
   whatever the length of the plan's summary. */
.tkh-summary { min-height: 2.8rem; }
.tkh-price .tkh-sub { min-height: 1.3rem; }

/* Configure step: the order summary follows the page below the fixed header (replaces the jQuery plugin). */
@media (min-width: 992px) {
	#sticker { position: sticky; top: 96px; z-index: 1; }
}

/* Domain step: room between the extension tick boxes, and the free-domain note */
.card-order .form-group.tlds, .form-group.tlds { display: flex !important; flex-wrap: wrap; justify-content: center; align-items: center; gap: .5rem 1rem; }
.tlds .checkbox-inline, .tlds label.spotlight_tld { display: inline-flex; align-items: center; gap: .35rem; margin: 0; font-weight: 500; color: #141e35; cursor: pointer; }
.tlds input[type="checkbox"] { width: 1rem; height: 1rem; accent-color: #0254fa; margin: 0; }
.tkh-free-domain { display: inline-flex; align-items: center; gap: .5rem; padding: .45rem .9rem; border-radius: 999px; background: #eaf1ff; color: #0143cc; font-weight: 600; font-size: .92rem; }

/* Long plan descriptions read better left-aligned, in normal-size text */
.tkh-summary.tkh-summary-long { text-align: left; font-size: .9rem; line-height: 1.55; color: #53627a; }
