/*
 * Flexahosting conversion checkout
 * Visual layer only: HostFact field names, values, URLs and submit flow stay intact.
 */

:root {
	--fc-brand: #c20b5c;
	--fc-brand-dark: #930545;
	--fc-brand-soft: #fff2f7;
	--fc-ink: #161421;
	--fc-muted: #666473;
	--fc-line: #e7e5eb;
	--fc-line-strong: #d5d2dc;
	--fc-canvas: #f3f4f7;
	--fc-surface: #ffffff;
	--fc-sidebar: #171522;
	--fc-sidebar-soft: #292638;
	--fc-success: #08784a;
	--fc-success-dark: #055f3a;
	--fc-success-soft: #eaf8f1;
	--fc-transfer: #8a5200;
	--fc-transfer-soft: #fff6e8;
	--fc-danger: #b42318;
	--fc-danger-soft: #fff1ef;
	--fc-radius: 18px;
	--fc-radius-sm: 10px;
	--fc-shadow: 0 18px 50px rgba(26, 22, 40, 0.10);
}

html {
	background: var(--fc-canvas);
}

body.hf-checkout-body,
.hf-checkout-body {
	min-width: 0;
	background:
		radial-gradient(circle at 12% 0%, rgba(194, 11, 92, 0.055), transparent 30rem),
		var(--fc-canvas) !important;
	color: var(--fc-ink);
	font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
	font-size: 14px;
	line-height: 1.5;
}

.hf-checkout-body *,
.hf-checkout-body *::before,
.hf-checkout-body *::after,
.hf-whois-standalone *,
.hf-whois-standalone *::before,
.hf-whois-standalone *::after {
	box-sizing: border-box;
}

/* Keep the existing guarantee content, but make it a quiet utility bar. */
.hf-checkout-body .bestelform_header {
	display: flex !important;
	min-height: 36px;
	align-items: center;
	justify-content: center;
	gap: 18px;
	padding: 7px 16px !important;
	border: 0 !important;
	background: #fff !important;
	box-shadow: inset 0 -1px 0 var(--fc-line);
	color: #5f5d68 !important;
	font-size: 12px !important;
	line-height: 1.35 !important;
}

.hf-checkout-body .bestelform_header p {
	margin: 0 !important;
	color: inherit !important;
	font-size: inherit !important;
	line-height: inherit !important;
}

.hf-checkout-body .bestelform_header p:first-child strong {
	color: var(--fc-success) !important;
}

.hf-checkout-body .bestelform_header span,
.hf-checkout-body .bestelform_header em {
	color: inherit !important;
	font-style: normal;
}

.hf-checkout-body .bestelform_header a {
	color: var(--fc-brand) !important;
	font-weight: 700 !important;
	text-underline-offset: 2px;
}

/* Checkout shell: a guided rail instead of one generic floating card. */
.hf-checkout-main {
	padding: 24px 0 72px !important;
}

.hf-checkout-body .o_form_container {
	width: min(calc(100% - 32px), 1120px) !important;
	max-width: none !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

.hf-checkout-body .o_form_container > .o_form {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.hf-checkout-body .o_form_container > .o_form > .o_form {
	display: grid;
	grid-template-columns: 218px minmax(0, 1fr);
	align-items: start;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	overflow: clip;
	border: 1px solid rgba(24, 21, 34, 0.08) !important;
	border-radius: 22px !important;
	background: linear-gradient(90deg, var(--fc-sidebar) 0 218px, var(--fc-surface) 218px) !important;
	box-shadow: var(--fc-shadow) !important;
}

.hf-checkout-body .o_form_container > .o_form > .o_form > br {
	display: none !important;
}

.hf-checkout-body .o_form_container > .o_form > .o_form > *:not(.progress) {
	grid-column: 2;
	min-width: 0;
}

/* Vertical, compact progress rail. */
.hf-checkout-body .progress {
	grid-column: 1 !important;
	grid-row: 1 / span 100 !important;
	align-self: stretch;
	width: auto !important;
	margin: 0 !important;
	padding: 30px 22px !important;
	border: 0 !important;
	background: transparent !important;
}

.hf-checkout-body .progress::after {
	display: block;
	margin: 30px 0 0;
	padding-top: 18px;
	border-top: 1px solid rgba(255, 255, 255, 0.10);
	color: rgba(255, 255, 255, 0.58);
	content: "Veilig en eenvoudig bestellen";
	font-size: 12px;
	font-weight: 600;
	line-height: 1.5;
}

.hf-checkout-body .progress::before {
	top: 47px !important;
	bottom: auto !important;
	left: 38px !important;
	width: 1px !important;
	height: 150px !important;
	background: rgba(255, 255, 255, 0.15) !important;
}

.hf-checkout-body .progress ol {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 12px !important;
	margin: 0 !important;
	padding: 0 !important;
}

.hf-checkout-body .progress ol li {
	position: relative;
	z-index: 1;
	display: grid !important;
	grid-template-columns: 34px minmax(0, 1fr) !important;
	gap: 10px !important;
	align-items: center !important;
	width: 100% !important;
	min-height: 38px;
	margin: 0 !important;
	padding: 2px !important;
	border: 0 !important;
	background: transparent !important;
	color: rgba(255, 255, 255, 0.48) !important;
	text-align: left !important;
}

.hf-checkout-body .progress__number {
	display: grid !important;
	width: 34px !important;
	height: 34px !important;
	place-items: center;
	margin: 0 !important;
	border: 1px solid rgba(255, 255, 255, 0.24) !important;
	border-radius: 50% !important;
	background: var(--fc-sidebar) !important;
	box-shadow: none !important;
	color: rgba(255, 255, 255, 0.7) !important;
	font-size: 12px !important;
	font-weight: 750 !important;
}

.hf-checkout-body .progress__label {
	display: block !important;
	color: inherit !important;
	font-size: 12px !important;
	font-weight: 650 !important;
	line-height: 1.3;
}

.hf-checkout-body .progress__summary {
	display: none;
}

.hf-checkout-body .progress li.active {
	color: rgba(255, 255, 255, 0.78) !important;
}

.hf-checkout-body .progress li.active .progress__number {
	border-color: rgba(255, 255, 255, 0.22) !important;
	background: var(--fc-sidebar-soft) !important;
	color: #fff !important;
}

.hf-checkout-body .progress li.current {
	color: #fff !important;
}

.hf-checkout-body .progress li.current .progress__number {
	border-color: var(--fc-brand) !important;
	background: var(--fc-brand) !important;
	box-shadow: 0 0 0 5px rgba(194, 11, 92, 0.18) !important;
}

/* Main HostFact content. */
.hf-checkout-body .o_form_container > .o_form > .o_form > form {
	width: 100%;
	margin: 0 !important;
	padding: 28px 30px 8px !important;
}

.hf-checkout-body .o_form_container > .o_form > .o_form > .error_message {
	margin: 24px 30px 0 !important;
}

.hf-checkout-body .o_form_container > .o_form > .o_form > h2 {
	margin: 0 !important;
	padding: 28px 30px 0 43px !important;
}

.hf-checkout-body .o_form_container > .o_form > .o_form > h2::before {
	top: 34px;
	bottom: auto;
	left: 30px;
	height: 22px;
}

.hf-checkout-body .o_form h1,
.hf-checkout-body .o_form h2,
.hf-checkout-body .o_form h3 {
	color: var(--fc-ink) !important;
	font-family: inherit !important;
	letter-spacing: -0.025em;
}

.hf-checkout-body .o_form h2 {
	position: relative;
	margin: 22px 0 12px !important;
	padding: 0 0 0 13px !important;
	font-size: clamp(21px, 2.5vw, 27px) !important;
	font-weight: 780 !important;
	line-height: 1.18 !important;
}

.hf-checkout-body .o_form h2::before {
	position: absolute;
	top: 0.14em;
	bottom: 0.12em;
	left: 0;
	width: 3px;
	border-radius: 99px;
	background: var(--fc-brand);
	content: "";
}

.hf-checkout-body .o_form form > h2:first-of-type {
	margin-top: 0 !important;
}

.hf-checkout-body .o_form form > br {
	display: none !important;
}

.hf-checkout-body .o_form a {
	color: var(--fc-brand);
	text-underline-offset: 2px;
}

/* Domain already selected: a receipt-like line, not another card. */
.hf-checkout-body .domain_table {
	margin: 0 0 20px;
}

.hf-checkout-body .domain_table table.cart {
	width: 100% !important;
	margin: 0 0 9px !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
}

.hf-checkout-body .domain_table table.cart th {
	padding: 0 12px 7px !important;
	border: 0 !important;
	background: transparent !important;
	color: #888591 !important;
	font-size: 10px !important;
	font-weight: 750 !important;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.hf-checkout-body .domain_table table.cart td {
	padding: 13px 12px !important;
	border-top: 1px solid var(--fc-line) !important;
	border-bottom: 1px solid var(--fc-line) !important;
	border-radius: 0 !important;
	background: #fafafd !important;
	color: var(--fc-ink);
}

.hf-checkout-body .domain_table table.cart td:first-child {
	padding-left: 14px !important;
	padding-right: 50px !important;
	border-left: 1px solid var(--fc-line) !important;
	border-radius: var(--fc-radius-sm) 0 0 var(--fc-radius-sm) !important;
	font-weight: 680;
}

.hf-checkout-body .domain_table table.cart td:last-child {
	border-right: 1px solid var(--fc-line) !important;
	border-radius: 0 var(--fc-radius-sm) var(--fc-radius-sm) 0 !important;
}

.hf-checkout-body .domain_table .ico-del {
	display: grid !important;
	right: 10px !important;
	width: 28px !important;
	height: 28px !important;
	place-items: center;
	border: 1px solid #e5dce1 !important;
	border-radius: 7px !important;
	background: #fff !important;
	color: #77717b !important;
	font-size: 0 !important;
	text-decoration: none !important;
}

.hf-checkout-body .domain_table .ico-del img {
	display: none !important;
}

.hf-checkout-body .domain_table .ico-del::before {
	content: "×";
	font-size: 17px;
	font-weight: 500;
	line-height: 1;
}

.hf-checkout-body .domain_table .ico-del:hover {
	border-color: #e8b8b3 !important;
	background: var(--fc-danger-soft) !important;
	color: var(--fc-danger) !important;
}

.hf-checkout-body .domain_table p {
	margin: 0 !important;
	font-size: 13px;
}

/* Hosting route is a compact segmented choice. */
.hf-checkout-body form[name="OrderForm"] > label.no_width:has(input[name="HostingType"]) {
	display: inline-flex !important;
	width: calc(33.333% - 10px) !important;
	min-height: 48px;
	align-items: center;
	margin: 0 5px 12px 0 !important;
	padding: 9px 11px !important;
	border: 1px solid var(--fc-line) !important;
	border-radius: 9px !important;
	background: #fff !important;
	box-shadow: none !important;
	color: #44414d !important;
	font-size: 12px;
	font-weight: 650 !important;
	line-height: 1.3;
	vertical-align: top;
}

.hf-checkout-body form[name="OrderForm"] > label.no_width:has(input[name="HostingType"]:checked) {
	border-color: var(--fc-brand) !important;
	background: var(--fc-brand-soft) !important;
	color: var(--fc-brand-dark) !important;
}

.hf-checkout-body input[type="radio"],
.hf-checkout-body input[type="checkbox"],
.hf-whois-standalone input[type="radio"],
.hf-whois-standalone input[type="checkbox"] {
	width: 18px !important;
	height: 18px !important;
	flex: 0 0 18px;
	margin: 0 8px 0 0 !important;
	accent-color: var(--fc-brand);
}

/* Hosting plans become fast-scanning rows. */
.hf-checkout-body .hosting_new_packages {
	margin: 2px 0 0;
}

.hf-checkout-body .package_container,
.hf-checkout-body .package_container.grid2,
.hf-checkout-body .package_container.grid3,
.hf-checkout-body .package_container.grid4 {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) !important;
	gap: 8px !important;
	width: 100% !important;
	margin: 0 !important;
}

.hf-checkout-body .package_container > br {
	display: none !important;
}

.hf-checkout-body .package_box,
.hf-checkout-body .package_container .package_box.last_col {
	position: relative;
	display: grid !important;
	grid-template-columns: 20px minmax(0, 1fr) max-content;
	grid-template-areas:
		"radio name price"
		"radio info price";
	column-gap: 12px;
	row-gap: 3px;
	align-items: center;
	float: none !important;
	width: 100% !important;
	height: auto !important;
	min-height: 76px !important;
	margin: 0 !important;
	padding: 14px 16px !important;
	overflow: hidden;
	border: 1px solid var(--fc-line) !important;
	border-radius: 11px !important;
	background: #fff !important;
	box-shadow: none !important;
	color: var(--fc-muted) !important;
	word-break: normal !important;
	cursor: pointer;
}

.hf-checkout-body .package_box:hover {
	transform: none !important;
	border-color: var(--fc-line-strong) !important;
	background: #fafafd !important;
	box-shadow: none !important;
}

.hf-checkout-body .package_box.active,
.hf-checkout-body .package_box[aria-checked="true"] {
	border-color: var(--fc-brand) !important;
	background: linear-gradient(90deg, var(--fc-brand-soft), #fff 72%) !important;
	box-shadow: inset 4px 0 0 var(--fc-brand) !important;
}

.hf-checkout-body .package_box > input[type="radio"] {
	grid-area: radio;
	align-self: center;
	margin: 0 !important;
}

.hf-checkout-body .package_box > strong {
	grid-area: name;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--fc-ink) !important;
	font-size: 15px !important;
	font-weight: 760 !important;
	line-height: 1.25;
	word-break: normal !important;
}

.hf-checkout-body .package_box > br {
	display: none !important;
}

.hf-checkout-body .package_box > div {
	grid-area: info;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--fc-muted) !important;
	font-family: inherit !important;
	font-size: 12px !important;
	line-height: 1.35 !important;
	word-break: normal !important;
}

.hf-checkout-body .package_box > div > div:first-child {
	display: inline;
	margin: 0 7px 0 0 !important;
}

.hf-checkout-body .package_box > div > div:last-child {
	display: inline;
	color: var(--fc-muted) !important;
}

.hf-checkout-body .package_box div span[style*="border-radius:999px"] {
	padding: 2px 7px !important;
	background: #f0eff3 !important;
	color: #5f5b68 !important;
	font-size: 10px !important;
	font-weight: 750 !important;
}

.hf-checkout-body .package_box.active div span[style*="border-radius:999px"] {
	background: #fff !important;
	color: var(--fc-brand-dark) !important;
}

.hf-checkout-body .package_box .amount_span,
.hf-checkout-body .package_box [class*="amount_span"] {
	grid-area: price;
	align-self: center;
	min-width: 118px;
	margin: 0 !important;
	padding: 0 0 0 14px !important;
	border: 0 !important;
	border-left: 1px solid var(--fc-line) !important;
	color: var(--fc-ink) !important;
	font-size: 15px !important;
	font-weight: 780 !important;
	line-height: 1.25;
	text-align: right;
	white-space: nowrap;
}

/* Inputs and conditional HostFact blocks. */
.hf-checkout-body .o_form input[type="text"],
.hf-checkout-body .o_form input[type="email"],
.hf-checkout-body .o_form input[type="tel"],
.hf-checkout-body .o_form input[type="password"],
.hf-checkout-body .o_form input[type="number"],
.hf-checkout-body .o_form select,
.hf-checkout-body .o_form textarea,
.hf-whois-standalone input[type="text"] {
	min-height: 44px !important;
	padding: 10px 12px !important;
	border: 1px solid var(--fc-line-strong) !important;
	border-radius: 8px !important;
	background: #fff !important;
	box-shadow: none !important;
	color: var(--fc-ink) !important;
	font-family: inherit !important;
	font-size: 14px !important;
}

.hf-checkout-body .o_form input:focus,
.hf-checkout-body .o_form select:focus,
.hf-checkout-body .o_form textarea:focus,
.hf-whois-standalone input:focus {
	border-color: var(--fc-brand) !important;
	outline: 0 !important;
	box-shadow: 0 0 0 3px rgba(194, 11, 92, .11) !important;
}

.hf-checkout-body .o_form label:not(.no_width),
.hf-checkout-body .hf-field-label {
	margin-bottom: 5px !important;
	color: #3d3945 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
}

.hf-checkout-body #NewCustomerDiv,
.hf-checkout-body #ExistingCustomerDiv,
.hf-checkout-body #CustomInvoiceAddressDiv,
.hf-checkout-body #CustomWHOISDiv,
.hf-checkout-body #CustomNameServersDiv,
.hf-checkout-body #DomainTypeDiv_existing,
.hf-checkout-body #HostingTypeDiv_existing {
	margin: 9px 0 16px !important;
	padding: 18px !important;
	border: 1px solid var(--fc-line) !important;
	border-radius: 12px !important;
	background: #fafafd !important;
	box-shadow: none !important;
}

.hf-checkout-body .o_form .no_width:not(:has(input[name="HostingType"])),
.hf-checkout-body .hf-choice {
	min-height: 44px;
	margin-bottom: 8px !important;
	padding: 10px 12px !important;
	border: 1px solid var(--fc-line) !important;
	border-radius: 8px !important;
	background: #fff !important;
	box-shadow: none !important;
	color: #403d48 !important;
	font-weight: 620 !important;
}

.hf-checkout-body .o_form .no_width:not(:has(input[name="HostingType"])):has(input:checked),
.hf-checkout-body .hf-choice:has(input:checked) {
	border-color: rgba(194, 11, 92, .42) !important;
	background: var(--fc-brand-soft) !important;
}

/* WHOIS search: one decisive command bar. */
.hf-checkout-body .w_form,
.hf-whois-standalone .w_form {
	margin: 0 !important;
}

.hf-checkout-body .o_form_container > .o_form > .o_form > .w_form,
.hf-checkout-body .o_form_container > .o_form > .o_form > script + .w_form {
	padding: 15px 30px 0 !important;
}

.hf-checkout-body .w_form form,
.hf-whois-standalone .w_form form {
	display: block !important;
	width: 100%;
}

.hf-checkout-body .hf-domain-search,
.hf-whois-standalone .hf-domain-search {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 8px;
	align-items: center;
	padding: 6px !important;
	border: 1px solid var(--fc-line-strong) !important;
	border-radius: 12px !important;
	background: #fff !important;
	box-shadow: 0 8px 24px rgba(29, 23, 43, .06) !important;
}

.hf-checkout-body .hf-domain-search__icon,
.hf-whois-standalone .hf-domain-search__icon {
	display: none !important;
}

.hf-checkout-body .w_form input[name="whois_domain"],
.hf-whois-standalone .w_form input[name="whois_domain"] {
	width: 100% !important;
	height: 48px !important;
	min-height: 48px !important;
	padding: 11px 13px !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	font-size: 16px !important;
	font-weight: 620 !important;
}

.hf-checkout-body .wf_form_submit,
.hf-whois-standalone .wf_form_submit {
	width: auto !important;
	min-width: 146px;
	min-height: 46px;
	padding: 11px 18px !important;
	border: 0 !important;
	border-radius: 8px !important;
	background: var(--fc-brand) !important;
	box-shadow: none !important;
	color: #fff !important;
	font-family: inherit !important;
	font-size: 13px !important;
	font-weight: 760 !important;
	cursor: pointer;
}

.hf-checkout-body .wf_form_submit:hover,
.hf-whois-standalone .wf_form_submit:hover {
	transform: none !important;
	background: var(--fc-brand-dark) !important;
}

.hf-checkout-body .hf-field-hint,
.hf-whois-standalone .hf-field-hint {
	margin: 7px 2px 0 !important;
	color: var(--fc-muted) !important;
	font-size: 11px !important;
}

.hf-checkout-body .o_form_container > .o_form > .o_form > .w_result {
	margin: 0 !important;
	padding: 10px 30px 26px !important;
}

.hf-checkout-body .w_result table,
.hf-whois-standalone .w_result table {
	width: 100% !important;
	margin: 0 !important;
	border-collapse: collapse !important;
	border-spacing: 0 !important;
}

.hf-checkout-body .w_result th,
.hf-whois-standalone .w_result th {
	padding: 9px 10px !important;
	border: 0 !important;
	border-bottom: 1px solid var(--fc-line) !important;
	background: transparent !important;
	color: #8a8791 !important;
	font-size: 10px !important;
	font-weight: 750 !important;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.hf-checkout-body .w_result td,
.hf-whois-standalone .w_result td,
.hf-checkout-body .domain_tr.domain_td_checked_available td,
.hf-whois-standalone .domain_tr.domain_td_checked_available td {
	padding: 11px 10px !important;
	border: 0 !important;
	border-bottom: 1px solid var(--fc-line) !important;
	border-radius: 0 !important;
	background: #fff !important;
	color: var(--fc-ink);
}

.hf-checkout-body .domain_td_checked_available span,
.hf-whois-standalone .domain_td_checked_available span {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 2px 8px;
	border-radius: 99px;
	background: var(--fc-success-soft) !important;
	color: var(--fc-success) !important;
	font-size: 11px !important;
	font-weight: 750 !important;
}

.hf-checkout-body .domain_td_checked_unavailable span,
.hf-whois-standalone .domain_td_checked_unavailable span {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 2px 8px;
	border-radius: 99px;
	background: var(--fc-transfer-soft) !important;
	color: var(--fc-transfer) !important;
	font-size: 11px !important;
	font-weight: 750 !important;
}

.hf-checkout-body .domain_td_checked_error span,
.hf-whois-standalone .domain_td_checked_error span {
	background: var(--fc-danger-soft) !important;
	color: var(--fc-danger) !important;
}

.hf-checkout-body .domain_td_order a,
.hf-whois-standalone .domain_td_order a {
	display: inline-flex;
	min-width: 82px;
	min-height: 34px;
	align-items: center;
	justify-content: center;
	padding: 7px 10px !important;
	border: 1px solid rgba(194, 11, 92, .35) !important;
	border-radius: 7px !important;
	background: #fff !important;
	box-shadow: none !important;
	color: var(--fc-brand) !important;
	font-size: 11px !important;
	font-weight: 750 !important;
	text-decoration: none !important;
}

.hf-checkout-body .domain_td_order a:hover,
.hf-whois-standalone .domain_td_order a:hover {
	background: var(--fc-brand) !important;
	color: #fff !important;
}

.hf-checkout-body .domain_tr.domain_td_checked_available .domain_td_order a.order_link,
.hf-whois-standalone .domain_tr.domain_td_checked_available .domain_td_order a.order_link {
	border-color: var(--fc-brand) !important;
	background: var(--fc-brand) !important;
	color: #fff !important;
}

.hf-checkout-body .domain_tr.domain_td_checked_available .domain_td_order a.order_link:hover,
.hf-whois-standalone .domain_tr.domain_td_checked_available .domain_td_order a.order_link:hover {
	border-color: var(--fc-brand-dark) !important;
	background: var(--fc-brand-dark) !important;
}

.hf-checkout-body .domain_tr.domain_td_checked_unavailable .domain_td_order a.order_link,
.hf-whois-standalone .domain_tr.domain_td_checked_unavailable .domain_td_order a.order_link {
	border-color: #e4c28e !important;
	background: var(--fc-transfer-soft) !important;
	color: var(--fc-transfer) !important;
}

.hf-checkout-body .domain_tr.domain_td_checked_unavailable .domain_td_order a.order_link:hover,
.hf-whois-standalone .domain_tr.domain_td_checked_unavailable .domain_td_order a.order_link:hover {
	border-color: var(--fc-transfer) !important;
	background: var(--fc-transfer) !important;
	color: #fff !important;
}

.hf-checkout-body .domain_td_checked_error ~ .domain_td_order a.order_link,
.hf-whois-standalone .domain_td_checked_error ~ .domain_td_order a.order_link {
	border-color: rgba(194, 11, 92, .35) !important;
	background: #fff !important;
	color: var(--fc-brand) !important;
}

.hf-checkout-body .domain_td_order .remove_link,
.hf-whois-standalone .domain_td_order .remove_link {
	display: inline-grid !important;
	width: 30px !important;
	min-width: 30px !important;
	height: 30px;
	min-height: 30px !important;
	place-items: center;
	margin-left: 5px !important;
	padding: 0 !important;
	border: 1px solid #e5dce1 !important;
	border-radius: 7px !important;
	background: #fff !important;
	color: #77717b !important;
	font-size: 0 !important;
	vertical-align: middle;
}

.hf-checkout-body .domain_td_order .remove_link img,
.hf-whois-standalone .domain_td_order .remove_link img {
	display: none !important;
}

.hf-checkout-body .domain_td_order .remove_link::before,
.hf-whois-standalone .domain_td_order .remove_link::before {
	content: "×";
	font-size: 17px;
	font-weight: 500;
	line-height: 1;
}

.hf-checkout-body .domain_td_order .remove_link:hover,
.hf-whois-standalone .domain_td_order .remove_link:hover {
	border-color: #e8b8b3 !important;
	background: var(--fc-danger-soft) !important;
	color: var(--fc-danger) !important;
}

.hf-checkout-body .hf-domain-price,
.hf-whois-standalone .hf-domain-price {
	display: table-cell !important;
	min-width: 88px;
	font-variant-numeric: tabular-nums;
	line-height: 1.1;
	text-align: right;
	vertical-align: middle !important;
}

.hf-checkout-body .domain_tr .hf-domain-price span,
.hf-whois-standalone .domain_tr .hf-domain-price span,
.hf-checkout-body .domain_table .hf-domain-price span {
	display: block !important;
	min-height: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	line-height: 1.1 !important;
	text-align: right;
}

@media (min-width: 720px) {
	.hf-checkout-body .hf-price-offer,
	.hf-whois-standalone .hf-price-offer {
		margin-top: 3px;
	}
}

.hf-checkout-body .domain_tr .hf-domain-price span::before,
.hf-whois-standalone .domain_tr .hf-domain-price span::before,
.hf-checkout-body .domain_table .hf-domain-price span::before {
	display: none !important;
	content: none !important;
}

.hf-checkout-body .hf-price-original,
.hf-whois-standalone .hf-price-original {
	color: #89858f !important;
	font-size: 11px !important;
	font-weight: 650 !important;
	text-decoration: line-through;
	text-decoration-color: var(--fc-brand);
	text-decoration-thickness: 1.5px;
}

.hf-checkout-body .hf-price-offer strong,
.hf-whois-standalone .hf-price-offer strong {
	color: var(--fc-brand) !important;
	font-size: 19px;
	font-weight: 850;
	letter-spacing: -.02em;
}

.hf-checkout-body .hf-price-current {
	color: var(--fc-ink) !important;
	font-size: 12px !important;
	font-weight: 700 !important;
}

.hf-checkout-body .hf-domain-deal,
.hf-whois-standalone .hf-domain-deal {
	display: flex;
	align-items: center;
	gap: 9px;
	margin: 8px 0 10px;
	padding: 9px 11px;
	border: 1px solid #efd0de;
	border-radius: 9px;
	background: var(--fc-brand-soft);
	color: #4e2940;
	font-size: 12px;
	line-height: 1.35;
}

.hf-checkout-body .hf-domain-deal strong,
.hf-whois-standalone .hf-domain-deal strong {
	flex: 0 0 auto;
	color: var(--fc-brand-dark);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .03em;
	text-transform: uppercase;
}

.hf-checkout-body .hf-domain-deal--cart {
	margin: 9px 0 12px;
}

.hf-checkout-body .hf-domain-deal--cart.is-active {
	border-color: #bce1cf;
	background: var(--fc-success-soft);
	color: #265d47;
}

.hf-checkout-body .hf-domain-deal--cart.is-active strong {
	color: var(--fc-success);
}

.hf-checkout-body .hf-domain-discount-row td {
	border-color: #bce1cf !important;
	background: var(--fc-success-soft) !important;
	color: var(--fc-success) !important;
}

.hf-checkout-body .hf-domain-discount-row strong,
.hf-checkout-body .hf-domain-discount-row small {
	display: block;
}

.hf-checkout-body .hf-domain-discount-row small {
	margin-top: 2px;
	color: #48725f;
	font-size: 10px;
	font-style: normal;
}

/* Payment and overview stay dense and scannable. */
.hf-checkout-body .payment_box {
	margin: 0 0 7px !important;
	overflow: hidden;
	border: 1px solid var(--fc-line) !important;
	border-radius: 9px !important;
	background: #fff !important;
	box-shadow: none !important;
}

.hf-checkout-body .payment_box.active {
	border-color: var(--fc-brand) !important;
	background: var(--fc-brand-soft) !important;
}

.hf-checkout-body .payment_box td {
	padding: 10px !important;
	border: 0 !important;
	background: transparent !important;
}

.hf-checkout-body .payment_box_details {
	padding: 12px !important;
	border-top: 1px solid var(--fc-line) !important;
	background: #fff !important;
}

.hf-checkout-body table.cart:not(.domain_table table) {
	border-spacing: 0 !important;
}

.hf-checkout-body .overview_customer {
	margin: 0 8px 8px 0 !important;
	padding: 14px !important;
	border: 1px solid var(--fc-line) !important;
	border-radius: 10px !important;
	background: #fafafd !important;
	box-shadow: none !important;
	color: var(--fc-muted);
	font-size: 13px;
}

.hf-checkout-body .overview_customer strong {
	display: block;
	margin-bottom: 5px;
	color: var(--fc-ink);
}

.hf-checkout-body .o_form .no_width:has(input[name="agree"]) {
	position: relative;
	display: block !important;
	min-height: 46px;
	padding: 11px 12px 11px 46px !important;
	line-height: 1.55;
}

.hf-checkout-body .o_form .no_width:has(input[name="agree"]) input[name="agree"] {
	position: absolute;
	top: 50%;
	left: 14px;
	margin: 0 !important;
	transform: translateY(-50%);
}

.hf-checkout-body table.cart[style] {
	width: min(100%, 360px) !important;
	margin: 8px 0 18px auto !important;
	border-spacing: 0 !important;
}

.hf-checkout-body table.cart[style] td {
	padding: 7px 0 !important;
	border: 0 !important;
	background: transparent !important;
}

.hf-checkout-body table.cart[style] tr:last-child td {
	padding-top: 12px !important;
	border-top: 1px solid var(--fc-line) !important;
	color: var(--fc-ink);
	font-size: 15px;
	font-weight: 800;
}

/* Primary navigation. HostFact still owns the submit handlers. */
.hf-checkout-body .nav {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	width: auto !important;
	margin: 8px 30px 0 !important;
	padding: 16px 0 28px !important;
	border-top: 1px solid var(--fc-line) !important;
}

.hf-checkout-body .nav p {
	margin: 0 !important;
}

.hf-checkout-body .nav p:first-child {
	order: 2;
	margin-left: auto !important;
}

.hf-checkout-body .button_submit,
.hf-checkout-body #order_submit_btn,
.hf-dialog__cta {
	display: inline-flex !important;
	min-width: 220px;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	padding: 11px 18px !important;
	border: 0 !important;
	border-radius: 9px !important;
	background: var(--fc-brand) !important;
	box-shadow: none !important;
	color: #fff !important;
	font-family: inherit !important;
	font-size: 13px !important;
	font-weight: 760 !important;
	text-align: center;
	text-decoration: none !important;
	cursor: pointer;
}

.hf-checkout-body .button_submit:hover,
.hf-checkout-body #order_submit_btn:hover,
.hf-dialog__cta:hover {
	transform: none !important;
	background: var(--fc-brand-dark) !important;
	box-shadow: none !important;
}

.hf-checkout-body .button_submit.back {
	min-width: 0;
	padding-right: 0 !important;
	padding-left: 0 !important;
	background: transparent !important;
	color: var(--fc-muted) !important;
	font-weight: 650 !important;
}

.hf-checkout-body .button_submit.back:hover {
	color: var(--fc-brand) !important;
}

/* Completed order: keep the final action focused, compact and aligned. */
.hf-checkout-body .hf-complete__content {
	display: flex;
	flex-direction: column;
	gap: 22px;
	padding: 34px 38px 30px;
}

.hf-checkout-body .hf-complete__header {
	display: grid;
	grid-template-columns: 46px minmax(0, 1fr);
	gap: 15px;
	align-items: start;
	padding-bottom: 22px;
	border-bottom: 1px solid var(--fc-line);
}

.hf-checkout-body .hf-complete__check {
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	border-radius: 50%;
	background: var(--fc-success-soft);
	color: var(--fc-success);
	font-size: 22px;
	font-weight: 800;
	line-height: 1;
}

.hf-checkout-body .o_form .hf-complete__title {
	margin: 0 0 7px !important;
	padding: 0 !important;
	font-size: clamp(24px, 3vw, 30px) !important;
}

.hf-checkout-body .o_form .hf-complete__title::before {
	display: none !important;
}

.hf-checkout-body .hf-complete__lead,
.hf-checkout-body .hf-payment-card p,
.hf-checkout-body .hf-complete__support p {
	margin: 0 !important;
}

.hf-checkout-body .hf-complete__lead {
	max-width: 680px;
	color: var(--fc-muted);
	font-size: 14px;
	line-height: 1.55;
}

.hf-checkout-body .hf-payment-card {
	display: grid;
	grid-template-columns: minmax(0, 1fr) max-content;
	gap: 16px 24px;
	align-items: center;
	padding: 19px 20px;
	border: 1px solid #cce8da;
	border-radius: 13px;
	background: linear-gradient(120deg, var(--fc-success-soft), #fff 74%);
}

.hf-checkout-body .hf-payment-card__copy {
	display: grid;
	grid-template-columns: 38px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
}

.hf-checkout-body .hf-payment-card__icon {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border: 1px solid #b8ddcb;
	border-radius: 10px;
	background: #fff;
	color: var(--fc-success);
	font-size: 18px;
	font-weight: 800;
}

.hf-checkout-body .o_form .hf-payment-card h3 {
	margin: 0 0 3px !important;
	font-size: 16px !important;
	font-weight: 780 !important;
	letter-spacing: -0.015em;
}

.hf-checkout-body .hf-payment-card p {
	color: var(--fc-muted);
	font-size: 13px;
	line-height: 1.45;
}

.hf-checkout-body .hf-payment-card .hf-payment-card__button {
	min-width: 230px;
	gap: 10px;
	background: var(--fc-success) !important;
	box-shadow: 0 9px 22px rgba(8, 120, 74, .18) !important;
}

.hf-checkout-body .hf-payment-card .hf-payment-card__button:hover {
	background: var(--fc-success-dark) !important;
	box-shadow: none !important;
}

.hf-checkout-body .hf-payment-card .hf-payment-card__button span:last-child {
	font-size: 18px;
	font-weight: 500;
	line-height: 1;
}

.hf-checkout-body .hf-complete__support {
	margin-top: auto;
	padding-top: 18px;
	color: var(--fc-muted);
	font-size: 13px;
}

.hf-checkout-body .hf-payment-card + .hf-complete__support {
	border-top: 1px solid var(--fc-line);
}

.hf-checkout-body .hf-complete__support strong {
	display: block;
	margin-top: 4px;
	color: var(--fc-ink);
	font-size: 13px;
}

/* Never let the visual layer override HostFact's functional hidden state. */
.hf-checkout-body .goto_orderform[style*="display:none"],
.hf-checkout-body .goto_orderform[style*="display: none"],
.hf-whois-standalone .goto_orderform[style*="display:none"],
.hf-whois-standalone .goto_orderform[style*="display: none"] {
	display: none !important;
}

.hf-checkout-body .hf-cart-cta:not([style*="display:none"]):not([style*="display: none"]),
.hf-whois-standalone .hf-cart-cta:not([style*="display:none"]):not([style*="display: none"]) {
	display: inline-flex !important;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 9px 12px !important;
	border: 1px solid var(--fc-success) !important;
	border-radius: 9px !important;
	background: var(--fc-success) !important;
	box-shadow: 0 9px 22px rgba(8, 120, 74, .22) !important;
	color: #fff !important;
	font-size: 12px !important;
	font-weight: 780 !important;
	text-decoration: none !important;
}

.hf-checkout-body .hf-cart-cta:hover,
.hf-whois-standalone .hf-cart-cta:hover {
	border-color: var(--fc-success-dark) !important;
	background: var(--fc-success-dark) !important;
}

.hf-checkout-body .hf-cart-cta:focus-visible,
.hf-whois-standalone .hf-cart-cta:focus-visible {
	outline: 3px solid rgba(8, 120, 74, .24) !important;
	outline-offset: 2px;
}

.hf-checkout-body .hf-cart-count,
.hf-whois-standalone .hf-cart-count {
	display: inline-grid;
	min-width: 24px;
	height: 24px;
	place-items: center;
	padding: 0 6px;
	border-radius: 99px;
	background: #fff;
	color: var(--fc-success-dark);
	font-size: 11px;
	font-weight: 850;
}

.hf-checkout-body .hf-cart-cta__arrow,
.hf-whois-standalone .hf-cart-cta__arrow {
	font-size: 16px;
	line-height: 1;
	transition: transform .16s ease;
}

.hf-checkout-body .hf-cart-cta:hover .hf-cart-cta__arrow,
.hf-whois-standalone .hf-cart-cta:hover .hf-cart-cta__arrow {
	transform: translateX(2px);
}

.hf-checkout-body .hf-cart-cta-top {
	position: static !important;
	width: max-content !important;
	min-width: 190px;
	margin: 12px 30px 4px auto !important;
	transform: none !important;
}

.hf-checkout-body .hf-cart-cta-bottom:not([style*="display:none"]):not([style*="display: none"]),
.hf-whois-standalone .hf-cart-cta-bottom:not([style*="display:none"]):not([style*="display: none"]) {
	display: flex !important;
	visibility: visible !important;
	position: static !important;
	right: auto !important;
	bottom: auto !important;
	left: auto !important;
	float: none !important;
	width: max-content;
	min-width: 210px;
	margin: 14px 0 0 auto !important;
	transform: none !important;
}

.hf-checkout-body .o_form_container > .o_form > .o_form > .goto_orderform:not([style*="display:none"]):not([style*="display: none"]) {
	position: static !important;
	grid-column: 2 !important;
	justify-self: end;
	width: auto !important;
	min-width: 180px;
	margin: 14px 30px 0 !important;
	transform: none !important;
}

.hf-checkout-body .footer_excl_incl_vat {
	color: #888591 !important;
	font-size: 10px !important;
}

/* Standalone WHOIS shares the same visual language. */
.hf-whois-standalone .hf-whois-main {
	padding: 20px 0 !important;
}

.hf-whois-standalone .w_form_container {
	width: min(calc(100% - 24px), 900px) !important;
	max-width: none !important;
	margin: 0 auto !important;
	padding: 22px !important;
	border: 1px solid var(--fc-line) !important;
	border-radius: 16px !important;
	background: #fff !important;
	box-shadow: 0 12px 34px rgba(26, 22, 40, .08) !important;
	font-family: inherit !important;
}

.hf-whois-standalone .w_form_container > h2 {
	margin: 0 0 14px !important;
	color: var(--fc-ink) !important;
	font-family: inherit !important;
	font-size: 23px !important;
	font-weight: 780 !important;
	letter-spacing: -.025em;
}

.hf-whois-standalone .w_result {
	margin-top: 12px !important;
}

@media (min-width: 720px) {
	.hf-checkout-body #NewCustomerDiv {
		display: grid;
		grid-template-columns: repeat(12, minmax(0, 1fr));
		gap: 5px 9px;
	}

	.hf-checkout-body #NewCustomerDiv > br {
		display: none !important;
	}

	.hf-checkout-body #NewCustomerDiv > label {
		grid-column: 1 / -1;
		margin-top: 5px !important;
	}

	.hf-checkout-body #NewCustomerDiv > label:first-child {
		margin-top: 0 !important;
	}

	.hf-checkout-body #NewCustomerDiv > input[name="CompanyName"],
	.hf-checkout-body #NewCustomerDiv > input[name="Address"],
	.hf-checkout-body #NewCustomerDiv > input[name="PhoneNumber"],
	.hf-checkout-body #NewCustomerDiv > input[name="EmailAddress"],
	.hf-checkout-body #NewCustomerDiv > select[name="Country"] {
		grid-column: 1 / -1;
	}

	.hf-checkout-body #NewCustomerDiv > select[name="Sex"] {
		grid-column: span 2;
	}

	.hf-checkout-body #NewCustomerDiv > input[name="Initials"] {
		grid-column: span 2;
	}

	.hf-checkout-body #NewCustomerDiv > input[name="SurName"] {
		grid-column: span 8;
	}

	.hf-checkout-body #NewCustomerDiv > input[name="ZipCode"] {
		grid-column: span 3;
	}

	.hf-checkout-body #NewCustomerDiv > input[name="City"] {
		grid-column: span 9;
	}
}

@media (min-width: 480px) {
	.hf-checkout-body .overview_customer {
		width: calc(50% - 14px) !important;
		vertical-align: top;
	}

	.hf-checkout-body .overview_customer.payment_data {
		margin-right: 0 !important;
		margin-left: 8px !important;
	}
}

@media (max-width: 859px) {
	.hf-checkout-main {
		padding: 14px 0 68px !important;
	}

	.hf-checkout-body .o_form_container {
		width: min(calc(100% - 20px), 760px) !important;
	}

	.hf-checkout-body .o_form_container > .o_form > .o_form {
		grid-template-columns: minmax(0, 1fr);
		border-radius: 15px !important;
		background: #fff !important;
	}

	.hf-checkout-body .o_form_container > .o_form > .o_form > *:not(.progress) {
		grid-column: 1;
	}

	.hf-checkout-body .progress {
		grid-column: 1 !important;
		grid-row: auto !important;
		padding: 13px 16px !important;
		border-bottom: 1px solid var(--fc-line) !important;
		background: #fafafd !important;
	}

	.hf-checkout-body .progress::before {
		top: 30px !important;
		left: 30px !important;
		width: calc(100% - 60px) !important;
		height: 1px !important;
		background: var(--fc-line-strong) !important;
	}

	.hf-checkout-body .progress::after {
		display: none;
	}

	.hf-checkout-body .progress ol {
		display: flex !important;
		flex-direction: row !important;
		justify-content: space-between;
		gap: 4px !important;
	}

	.hf-checkout-body .progress ol li {
		display: flex !important;
		width: auto !important;
		min-height: 34px;
		flex: 0 1 auto;
		gap: 6px !important;
		color: #9996a0 !important;
	}

	.hf-checkout-body .progress__number {
		width: 32px !important;
		height: 32px !important;
		flex: 0 0 32px;
		border-color: var(--fc-line-strong) !important;
		background: #fff !important;
		color: #777480 !important;
	}

	.hf-checkout-body .progress li.active .progress__number {
		border-color: var(--fc-brand) !important;
		background: #fff !important;
		color: var(--fc-brand) !important;
	}

	.hf-checkout-body .progress li.current .progress__number {
		background: var(--fc-brand) !important;
		color: #fff !important;
		box-shadow: none !important;
	}

	.hf-checkout-body .progress__label {
		display: none !important;
		color: var(--fc-ink) !important;
		font-size: 11px !important;
	}

	.hf-checkout-body .progress li.current .progress__label {
		display: block !important;
		max-width: 92px;
	}
}

@media (max-width: 719px) {
	.hf-checkout-body .hf-complete__content {
		gap: 16px;
		padding: 20px 16px 22px;
	}

	.hf-checkout-body .hf-complete__header {
		grid-template-columns: 38px minmax(0, 1fr);
		gap: 11px;
		padding-bottom: 17px;
	}

	.hf-checkout-body .hf-complete__check {
		width: 38px;
		height: 38px;
		font-size: 18px;
	}

	.hf-checkout-body .o_form .hf-complete__title {
		margin-bottom: 5px !important;
		font-size: 22px !important;
	}

	.hf-checkout-body .hf-complete__lead {
		font-size: 13px;
	}

	.hf-checkout-body .hf-payment-card {
		grid-template-columns: minmax(0, 1fr);
		gap: 14px;
		padding: 15px;
	}

	.hf-checkout-body .hf-payment-card__copy {
		grid-template-columns: 34px minmax(0, 1fr);
		gap: 10px;
	}

	.hf-checkout-body .hf-payment-card__icon {
		width: 34px;
		height: 34px;
		font-size: 16px;
	}

	.hf-checkout-body .hf-payment-card .hf-payment-card__button {
		width: 100% !important;
		min-width: 0;
	}

	.hf-checkout-body .hf-complete__support {
		padding-top: 15px;
	}

	.hf-checkout-body.hf-has-cart-selection,
	.hf-whois-standalone.hf-has-cart-selection {
		padding-bottom: 74px !important;
	}

	.hf-checkout-body .progress {
		padding: 11px 14px 10px !important;
		background: #fff !important;
	}

	.hf-checkout-body .progress::before {
		display: none !important;
	}

	.hf-checkout-body .progress ol {
		display: grid !important;
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
		gap: 6px !important;
	}

	.hf-checkout-body .progress ol li,
	.hf-checkout-body .progress ol li.active,
	.hf-checkout-body .progress ol li.current {
		display: block !important;
		width: 100% !important;
		min-height: 5px;
		padding: 0 !important;
	}

	.hf-checkout-body .progress__number,
	.hf-checkout-body .progress li.active .progress__number,
	.hf-checkout-body .progress li.current .progress__number {
		display: block !important;
		width: 100% !important;
		height: 5px !important;
		min-height: 5px !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 99px !important;
		background: #e6e3e9 !important;
		box-shadow: none !important;
		box-sizing: border-box !important;
		color: transparent !important;
		font-size: 0 !important;
		line-height: 0 !important;
	}

	.hf-checkout-body .progress li.active .progress__number {
		background: rgba(194, 11, 92, .32) !important;
	}

	.hf-checkout-body .progress li.current .progress__number {
		background: var(--fc-brand) !important;
	}

	.hf-checkout-body .progress__number > span,
	.hf-checkout-body .progress__label,
	.hf-checkout-body .progress li.current .progress__label {
		display: none !important;
	}

	.hf-checkout-body .progress__summary {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		margin-top: 9px;
		color: #85818b;
		font-size: 10px;
		font-weight: 700;
		line-height: 1.2;
	}

	.hf-checkout-body .progress__summary strong {
		color: var(--fc-ink);
		font-size: 11px;
		font-weight: 780;
	}

	.hf-checkout-body .hf-domain-deal,
	.hf-whois-standalone .hf-domain-deal {
		align-items: flex-start;
		gap: 4px;
		flex-direction: column;
		margin: 7px 0 9px;
		padding: 9px 10px;
	}

	.hf-checkout-body .hf-cart-cta-top {
		width: auto !important;
		margin: 9px 14px 3px !important;
	}

	.hf-checkout-body .hf-cart-cta-bottom:not([style*="display:none"]):not([style*="display: none"]),
	.hf-whois-standalone .hf-cart-cta-bottom:not([style*="display:none"]):not([style*="display: none"]) {
		position: fixed !important;
		right: auto !important;
		top: auto !important;
		bottom: max(10px, env(safe-area-inset-bottom)) !important;
		left: 50% !important;
		z-index: 90;
		width: min(calc(100% - 24px), 420px) !important;
		min-height: 50px;
		margin: 0 !important;
		transform: translateX(-50%) !important;
		box-shadow: 0 12px 30px rgba(67, 11, 43, .25) !important;
	}

	.hf-checkout-body .bestelform_header {
		display: block !important;
		min-height: 0;
		padding: 7px 10px !important;
		font-size: 10px !important;
		text-align: center;
	}

	.hf-checkout-body .bestelform_header p + p {
		margin-top: 2px !important;
	}

	.hf-checkout-body .o_form_container {
		width: calc(100% - 14px) !important;
	}

	.hf-checkout-body .o_form_container > .o_form > .o_form > form {
		padding: 14px 14px 4px !important;
	}

	.hf-checkout-body .o_form_container > .o_form > .o_form > .error_message {
		margin: 14px 14px 0 !important;
	}

	.hf-checkout-body .o_form_container > .o_form > .o_form > h2 {
		padding: 18px 14px 0 27px !important;
	}

	.hf-checkout-body .o_form_container > .o_form > .o_form > h2::before {
		top: 22px;
		left: 14px;
		height: 19px;
	}

	.hf-checkout-body .o_form h2 {
		margin: 14px 0 8px !important;
		font-size: 21px !important;
	}

	.hf-checkout-body .domain_table {
		margin-bottom: 14px;
	}

	.hf-checkout-body .domain_table table.cart,
	.hf-checkout-body .domain_table table.cart > tbody,
	.hf-checkout-body .domain_table table.cart > tbody > tr {
		display: block !important;
		width: 100% !important;
	}

	.hf-checkout-body .domain_table table.cart > tbody > tr:first-child {
		display: none !important;
	}

	.hf-checkout-body .domain_table table.cart > tbody > tr:not(:first-child) {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto auto;
		gap: 3px 7px;
		align-items: end;
		padding: 11px 12px;
		border: 1px solid var(--fc-line);
		border-radius: 9px;
		background: #fafafd;
	}

	.hf-checkout-body .domain_table table.cart td {
		display: block !important;
		padding: 0 !important;
		border: 0 !important;
		background: transparent !important;
	}

	.hf-checkout-body .domain_table table.cart td:first-child {
		grid-column: 1 / -1;
		padding: 0 38px 3px 0 !important;
		border: 0 !important;
		font-size: 13px;
		overflow-wrap: break-word;
		word-break: normal;
	}

	.hf-checkout-body .domain_table table.cart td.hf-domain-price {
		display: flex !important;
		min-width: 80px;
		align-items: flex-end;
		flex-direction: column;
		gap: 2px;
	}

	.hf-checkout-body .domain_table table.cart td:nth-child(4) {
		display: none !important;
	}

	.hf-checkout-body form[name="OrderForm"] > label.no_width:has(input[name="HostingType"]) {
		display: flex !important;
		width: 100% !important;
		min-height: 44px;
		margin: 0 0 4px !important;
		font-size: 12px;
	}

	.hf-checkout-body .package_container,
	.hf-checkout-body .package_container.grid2,
	.hf-checkout-body .package_container.grid3,
	.hf-checkout-body .package_container.grid4 {
		gap: 6px !important;
	}

	.hf-checkout-body .package_box,
	.hf-checkout-body .package_container .package_box.last_col {
		grid-template-columns: 20px minmax(0, 1fr) auto;
		grid-template-areas:
			"radio name price"
			". info info";
		column-gap: 8px;
		row-gap: 3px;
		min-height: 0;
		padding: 10px 11px !important;
		border-radius: 10px !important;
	}

	.hf-checkout-body .package_box.active,
	.hf-checkout-body .package_box[aria-checked="true"] {
		background: linear-gradient(105deg, rgba(194, 11, 92, .07), #fff 74%) !important;
		box-shadow: 0 5px 16px rgba(69, 17, 45, .07) !important;
	}

	.hf-checkout-body .package_box > strong {
		font-size: 13px !important;
		line-height: 1.2 !important;
	}

	.hf-checkout-body .package_box > div {
		font-size: 11px !important;
		line-height: 1.25 !important;
	}

	.hf-checkout-body .package_box div span[style*="border-radius:999px"] {
		padding: 2px 6px !important;
		font-size: 9.5px !important;
	}

	.hf-checkout-body .package_box .amount_span,
	.hf-checkout-body .package_box [class*="amount_span"] {
		min-width: 0;
		padding: 0 !important;
		border: 0 !important;
		font-size: 11.5px !important;
	}

	.hf-checkout-body #NewCustomerDiv,
	.hf-checkout-body #ExistingCustomerDiv,
	.hf-checkout-body #CustomInvoiceAddressDiv,
	.hf-checkout-body #CustomWHOISDiv,
	.hf-checkout-body #CustomNameServersDiv,
	.hf-checkout-body #DomainTypeDiv_existing,
	.hf-checkout-body #HostingTypeDiv_existing {
		padding: 12px !important;
	}

	.hf-checkout-body #NewCustomerDiv {
		margin: 7px 0 10px !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
	}

	.hf-checkout-body #NewCustomerDiv {
		display: grid;
		grid-template-columns: repeat(12, minmax(0, 1fr));
		gap: 4px 7px;
	}

	.hf-checkout-body #NewCustomerDiv > br {
		display: none !important;
	}

	.hf-checkout-body #NewCustomerDiv > label,
	.hf-checkout-body #NewCustomerDiv > #CustomerCompanyDiv {
		grid-column: 1 / -1;
		margin: 2px 0 0 !important;
		padding: 0 !important;
		line-height: 1.25 !important;
	}

	.hf-checkout-body #NewCustomerDiv > label:first-child {
		margin-top: 0 !important;
	}

	.hf-checkout-body #ExistingCustomerDiv:not([style*="display:none"]):not([style*="display: none"]) {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr);
		gap: 4px;
		margin: 7px 0 10px !important;
		padding: 11px !important;
	}

	.hf-checkout-body #ExistingCustomerDiv > br {
		display: none !important;
	}

	.hf-checkout-body #ExistingCustomerDiv > label {
		margin: 2px 0 0 !important;
		padding: 0 !important;
		line-height: 1.25 !important;
	}

	.hf-checkout-body #ExistingCustomerDiv > .check_existing_customer_link {
		display: flex !important;
		min-height: 42px;
		align-items: center;
		justify-content: center;
		margin: 4px 0 0 !important;
		padding: 9px 14px !important;
		border-radius: 8px;
		background: var(--fc-brand);
		color: #fff !important;
		font-size: 13px;
		font-weight: 760;
		text-decoration: none !important;
		cursor: pointer;
	}

	.hf-checkout-body #NewCustomerDiv > input[name="CompanyName"],
	.hf-checkout-body #NewCustomerDiv > input[name="Address"],
	.hf-checkout-body #NewCustomerDiv > input[name="PhoneNumber"],
	.hf-checkout-body #NewCustomerDiv > input[name="EmailAddress"],
	.hf-checkout-body #NewCustomerDiv > select[name="Country"] {
		grid-column: 1 / -1;
	}

	.hf-checkout-body #NewCustomerDiv > select[name="Sex"] {
		grid-column: span 3;
	}

	.hf-checkout-body #NewCustomerDiv > input[name="Initials"] {
		grid-column: span 3;
	}

	.hf-checkout-body #NewCustomerDiv > input[name="SurName"] {
		grid-column: span 6;
	}

	.hf-checkout-body #NewCustomerDiv > input[name="ZipCode"] {
		grid-column: span 4;
	}

	.hf-checkout-body #NewCustomerDiv > input[name="City"] {
		grid-column: span 8;
	}

	.hf-checkout-body .o_form input[type="text"],
	.hf-checkout-body .o_form input[type="email"],
	.hf-checkout-body .o_form input[type="tel"],
	.hf-checkout-body .o_form input[type="password"],
	.hf-checkout-body .o_form input[type="number"],
	.hf-checkout-body .o_form select,
	.hf-checkout-body .o_form textarea {
		width: 100% !important;
		max-width: none !important;
	}

	.hf-checkout-body .o_form select.contactperson,
	.hf-checkout-body .o_form input.small,
	.hf-checkout-body .o_form input.small_fill {
		margin-bottom: 0 !important;
	}

	.hf-checkout-body .o_form_container > .o_form > .o_form > .w_form,
	.hf-checkout-body .o_form_container > .o_form > .o_form > script + .w_form {
		padding: 12px 14px 0 !important;
	}

	.hf-checkout-body .hf-domain-search,
	.hf-whois-standalone .hf-domain-search {
		grid-template-columns: minmax(0, 1fr);
		gap: 6px;
		padding: 0 !important;
		border: 0 !important;
		box-shadow: none !important;
	}

	.hf-checkout-body .w_form input[name="whois_domain"],
	.hf-whois-standalone .w_form input[name="whois_domain"] {
		border: 1px solid var(--fc-line-strong) !important;
		border-radius: 9px !important;
		background: #fff !important;
	}

	.hf-checkout-body .wf_form_submit,
	.hf-whois-standalone .wf_form_submit {
		width: 100% !important;
	}

	.hf-checkout-body .o_form_container > .o_form > .o_form > .w_result {
		padding: 8px 14px 18px !important;
	}

	.hf-checkout-body .w_result table,
	.hf-whois-standalone .w_result table,
	.hf-checkout-body .w_result tbody,
	.hf-whois-standalone .w_result tbody {
		display: block !important;
		width: 100% !important;
	}

	.hf-checkout-body .w_result table > tbody:first-child > tr:first-child,
	.hf-whois-standalone .w_result table > tbody:first-child > tr:first-child {
		display: none !important;
	}

	.hf-checkout-body .domain_tr,
	.hf-whois-standalone .domain_tr,
	.hf-checkout-body .domain_tr.domain_td_checked_available,
	.hf-whois-standalone .domain_tr.domain_td_checked_available {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 5px 9px;
		align-items: center;
		width: 100%;
		padding: 11px 0;
		border: 0 !important;
		border-bottom: 1px solid var(--fc-line) !important;
		border-radius: 0 !important;
		background: #fff !important;
	}

	.hf-checkout-body .domain_tr td,
	.hf-whois-standalone .domain_tr td,
	.hf-checkout-body .domain_tr.domain_td_checked_available td,
	.hf-whois-standalone .domain_tr.domain_td_checked_available td {
		display: block !important;
		padding: 0 !important;
		border: 0 !important;
		background: transparent !important;
	}

	.hf-checkout-body .w_result table tr.domain_tr > td,
	.hf-whois-standalone .w_result table tr.domain_tr > td {
		border: 0 !important;
	}

	.hf-checkout-body .domain_tr td.hf-domain-price,
	.hf-whois-standalone .domain_tr td.hf-domain-price {
		display: flex !important;
		min-width: 80px;
		align-items: flex-end;
		flex-direction: column;
		gap: 2px;
	}

	.hf-checkout-body .domain_tr td:first-child,
	.hf-whois-standalone .domain_tr td:first-child {
		grid-column: 1;
		font-size: 13px !important;
		overflow-wrap: break-word;
		word-break: normal;
	}

	.hf-checkout-body .domain_tr td:nth-child(2),
	.hf-whois-standalone .domain_tr td:nth-child(2) {
		grid-column: 1;
		font-size: 11px !important;
	}

	.hf-checkout-body .domain_tr td:nth-child(3),
	.hf-whois-standalone .domain_tr td:nth-child(3) {
		grid-column: 2;
		grid-row: 1;
		font-size: 12px !important;
		white-space: nowrap;
	}

	.hf-checkout-body .domain_tr td:nth-child(4),
	.hf-whois-standalone .domain_tr td:nth-child(4),
	.hf-checkout-body .domain_tr td:nth-child(5),
	.hf-whois-standalone .domain_tr td:nth-child(5) {
		display: none !important;
	}

	.hf-checkout-body .domain_tr .domain_td_order,
	.hf-whois-standalone .domain_tr .domain_td_order {
		grid-column: 2;
		grid-row: 2;
	}

	.hf-checkout-body .overview_customer {
		float: none !important;
		width: 100% !important;
		margin-right: 0 !important;
	}

	.hf-checkout-body .nav {
		position: sticky;
		bottom: 0;
		z-index: 30;
		flex-direction: column;
		align-items: stretch;
		gap: 6px;
		margin: 8px 0 0 !important;
		padding: 10px 14px max(10px, env(safe-area-inset-bottom)) !important;
		border-top: 1px solid var(--fc-line) !important;
		background: rgba(255, 255, 255, .96) !important;
		box-shadow: 0 -10px 28px rgba(26, 22, 40, .08);
		backdrop-filter: blur(10px);
	}

	.hf-checkout-body .nav p,
	.hf-checkout-body .nav p:first-child {
		width: 100%;
		margin: 0 !important;
	}

	.hf-checkout-body .nav p:first-child {
		order: 0;
	}

	.hf-checkout-body .nav .button_submit,
	.hf-checkout-body .nav #order_submit_btn {
		width: 100% !important;
		min-width: 0;
	}

	.hf-checkout-body .nav .button_submit.back {
		min-height: 38px;
	}

	.hf-checkout-body .o_form_container > .o_form > .o_form > .goto_orderform:not([style*="display:none"]):not([style*="display: none"]) {
		grid-column: 1 !important;
		justify-self: stretch;
		width: auto !important;
		margin: 10px 14px 0 !important;
	}

	.hf-whois-standalone .hf-whois-main {
		padding: 8px 0 !important;
	}

	.hf-whois-standalone .w_form_container {
		width: calc(100% - 14px) !important;
		padding: 16px 13px !important;
		border-radius: 13px !important;
	}

	.hf-whois-standalone .w_form_container > h2 {
		font-size: 20px !important;
	}
}

@media (max-width: 390px) {
	.hf-checkout-body .progress {
		padding-right: 10px !important;
		padding-left: 10px !important;
	}

	.hf-checkout-body .progress li.current .progress__label {
		display: none !important;
	}

	.hf-checkout-body .package_box,
	.hf-checkout-body .package_container .package_box.last_col {
		grid-template-columns: 18px minmax(0, 1fr) auto;
		grid-template-areas:
			"radio name price"
			". info info";
	}

	.hf-checkout-body .package_box .amount_span,
	.hf-checkout-body .package_box [class*="amount_span"] {
		text-align: left;
	}
}

@media (prefers-reduced-motion: reduce) {
	.hf-checkout-body *,
	.hf-checkout-body *::before,
	.hf-checkout-body *::after {
		scroll-behavior: auto !important;
		transition: none !important;
	}
}

/* Optional company details: keep the HostFact fields aligned on every order form. */
.hf-checkout-body #NewCustomerDiv > #CustomerCompanyDiv {
	grid-column: 1 / -1 !important;
	box-sizing: border-box;
	width: 100% !important;
	min-width: 0;
	margin: 4px 0 8px !important;
	padding: 13px 14px !important;
	border: 1px solid #e4dfe6;
	border-left: 3px solid var(--fc-brand);
	border-radius: 0 10px 10px 0;
	background: #fff8fb !important;
}

.hf-checkout-body #CustomerCompanyDiv > input,
.hf-checkout-body #CustomerCompanyDiv > select {
	box-sizing: border-box;
	width: 100% !important;
	min-width: 0;
	margin: 0 !important;
}

.hf-checkout-body #CustomerCompanyDiv > label {
	margin: 0 !important;
}

@media (min-width: 720px) {
	.hf-checkout-body #CustomerCompanyDiv:not([style*="display:none"]):not([style*="display: none"]) {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 5px 12px;
		align-items: end;
	}

	.hf-checkout-body #CustomerCompanyDiv > br {
		display: none !important;
	}

	.hf-checkout-body #CustomerCompanyDiv > label:nth-of-type(1),
	.hf-checkout-body #CustomerCompanyDiv > input[name="CompanyNumber"] {
		grid-column: 1;
	}

	.hf-checkout-body #CustomerCompanyDiv > label:nth-of-type(2),
	.hf-checkout-body #CustomerCompanyDiv > input[name="TaxNumber"] {
		grid-column: 2;
	}

	.hf-checkout-body #CustomerCompanyDiv > label:nth-of-type(3),
	.hf-checkout-body #CustomerCompanyDiv > select[name="LegalForm"] {
		grid-column: 3;
	}

	.hf-checkout-body #CustomerCompanyDiv > label {
		grid-row: 1;
	}

	.hf-checkout-body #CustomerCompanyDiv > input,
	.hf-checkout-body #CustomerCompanyDiv > select {
		grid-row: 2;
	}
}

@media (max-width: 719px) {
	.hf-checkout-body #CustomerCompanyDiv:not([style*="display:none"]):not([style*="display: none"]) {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr);
		gap: 5px;
	}

	.hf-checkout-body #CustomerCompanyDiv > br {
		display: none !important;
	}

	.hf-checkout-body #CustomerCompanyDiv > label:not(:first-child) {
		margin-top: 5px !important;
	}
}
