.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 VPN order form ===== */
.tkv-order-head { position: relative; text-align: center; margin: 1rem 0 1.5rem; }
.tkv-order-head h2 { font-family: 'Nunito', 'Roboto', sans-serif; font-weight: 800; color: #2d465e; font-size: clamp(1.6rem, 3vw, 2.2rem); margin-bottom: .4rem; }
.tkv-order-head p { color: #6b7280; max-width: 38rem; margin: 0 auto; }
.tkv-currency { position: absolute; top: 0; right: 0; }
.tkv-currency select { width: auto; }
@media (max-width: 767.98px) { .tkv-currency { position: static; display: flex; justify-content: center; margin-top: .75rem; } }

.tkv-terms { display: flex; flex-wrap: wrap; justify-content: center; gap: .4rem; padding: .35rem; margin: 0 auto .5rem; max-width: max-content; background: #f7f7f8; border: 1px solid #e5e7eb; border-radius: 999px; }
.tkv-term { border: 0; background: transparent; color: #2d465e; font-weight: 600; font-size: .9rem; padding: .45rem 1rem; border-radius: 999px; cursor: pointer; }
.tkv-term:hover { background: #fff4f2; color: #c93630; }
.tkv-term.active { background: #c93630; color: #fff; box-shadow: 0 6px 16px rgba(201, 54, 48, .25); }
.tkv-term:focus-visible { outline: 3px solid rgba(201, 54, 48, .35); outline-offset: 2px; }
.tkv-terms-note { text-align: center; color: #9ca3af; font-size: .85rem; margin-bottom: 1.75rem; }

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

.tkv-reassure { display: flex; flex-wrap: wrap; justify-content: center; gap: .75rem 1.75rem; margin: .5rem 0 1.5rem; color: #6b7280; font-size: .9rem; }
.tkv-reassure i { color: #c93630; margin-right: .3rem; }

/* Configure, cart and checkout steps in TekLan colours */
.order .btn-success { background: #c93630; border-color: #c93630; }
.order .btn-success:hover, .order .btn-success:focus { background: #a82b26; border-color: #a82b26; }
.order .section-title h3 { font-family: 'Nunito', 'Roboto', sans-serif; font-weight: 800; color: #2d465e; }
.order .card-blesta, .order .card { border-radius: 14px; }
.tkv-amount small.tkv-for { display: block; font-size: .9rem; margin-top: .15rem; }
.tkv-plan-card.tkv-chosen { outline: 3px solid #c93630; 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; }
}
