/* =========================================================
   FONT LOCK — homepage fonts everywhere, no exceptions.
   Inline page CSS (e.g. .za-compare { font: … system-ui })
   must not win.
   ========================================================= */
body,
button,
input,
select,
textarea {
	font-family: var(--wp--preset--font-family--body) !important;
}

h1, h2, h3, h4, h5, h6,
.wp-block-heading,
.wp-block-post-title,
.wp-block-query-title,
.za-h,
.za-panel h3,
.za-tile h3,
.za-steps h2,
.za-steps h3,
.za-tiles h2,
.za-compare .za-h,
.za-compare h3,
.za-head h3,
.za-enterprise #ent-title,
.za-enterprise summary strong {
	font-family: var(--wp--preset--font-family--display) !important;
}

.za-eyebrow,
.za-panel-tag,
.za-readout,
.za-readout-label,
.za-readout-value,
.za-enterprise .ent-sub,
.za-enterprise .ent-btn,
.za-enterprise .ent-link,
.wp-block-button__link,
.wp-element-button,
.za-site-header .wp-block-navigation,
.za-site-header .wp-block-navigation a {
	font-family: var(--wp--preset--font-family--mono) !important;
}

/* Kill system-ui / Arial stacks baked into page content CSS */
.za-compare,
.za-compare *,
.za-stats,
.za-stats *,
.za-steps,
.za-steps *,
.za-tiles,
.za-tiles *,
.za-site-snapshot,
.za-site-snapshot *,
.za-enterprise,
.za-enterprise *,
.za-use-cases,
.za-use-cases *,
.za-table,
.za-table *,
.za-cell,
.za-row,
.za-feature,
.za-price,
.za-deposit,
.za-link,
.za-sub {
	font-family: 'Inter', var(--wp--preset--font-family--body), sans-serif !important;
}

/* Re-assert Fraunces for headings after the * catch-alls */
.za-compare .za-h,
.za-compare h2,
.za-compare h3,
.za-compare .za-head h3,
.za-steps h2,
.za-steps h3,
.za-tiles h2,
.za-tile h3,
.za-panel h3,
.za-enterprise #ent-title,
.za-enterprise summary strong,
.za-site-snapshot h2,
.za-use-case-tile h3 {
	font-family: 'Fraunces', var(--wp--preset--font-family--display), serif !important;
}

/* Compare Plans Reserve buttons: same Inter as table body (no mono in this table) */
.za-compare .za-btn,
.za-compare a.za-btn,
.za-table .za-btn,
.za-table a.za-btn {
	font-family: 'Inter', var(--wp--preset--font-family--body), sans-serif !important;
	letter-spacing: 0.02em !important;
	text-transform: none !important;
}

/* Stats pills keep Inter like live (not mono) */

.za-enterprise .ent-sub,
.za-enterprise .ent-btn,
.za-enterprise .ent-link {
	font-family: 'JetBrains Mono', var(--wp--preset--font-family--mono), monospace !important;
}

.za-compare {
	font: unset !important;
	font-family: 'Inter', var(--wp--preset--font-family--body), sans-serif !important;
	font-size: 15px !important;
	line-height: 1.55 !important;
	color: var(--wp--preset--color--text-muted);
}

/* ---- Site shell ---- */
html {
	scroll-behavior: smooth;
}

/* Page entrance: gently fade content down into place */
@keyframes za-page-fade-in-down {
	from {
		opacity: 0;
		transform: translateY(-24px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* No page entrance fade — paint immediately for LCP (home + inner). */
.home .wp-site-blocks > main,
.home .wp-site-blocks > .za-hero,
.home .za-hero .wp-block-cover__inner-container > .wp-block-group > .za-eyebrow,
.home .za-hero .wp-block-cover__inner-container > .wp-block-group > h1,
.home .za-hero .wp-block-cover__inner-container > .wp-block-group > p:not(.za-eyebrow),
.home .za-hero .wp-block-cover__inner-container > .wp-block-group > .wp-block-buttons {
	animation: none;
	will-change: auto;
	opacity: 1;
	transform: none;
}

@keyframes za-home-reveal-left {
	from {
		opacity: 0;
		transform: translateX(-20px);
	}
	to {
		opacity: 1;
		transform: translateX(0);
	}
}

@keyframes za-home-panel-rise {
	from {
		opacity: 0;
		transform: translateY(28px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* Scroll-linked reveals where supported; unsupported browsers stay static. */
@supports (animation-timeline: view()) {
	.home .za-readout > .wp-block-column {
		animation: za-home-reveal-left 1ms linear both;
		animation-timeline: view();
	}

	.home .za-readout > .wp-block-column:nth-child(1) {
		animation-range: entry 0% cover 22%;
	}

	.home .za-readout > .wp-block-column:nth-child(2) {
		animation-range: entry 4% cover 26%;
	}

	.home .za-readout > .wp-block-column:nth-child(3) {
		animation-range: entry 8% cover 30%;
	}

	.home .za-readout > .wp-block-column:nth-child(4) {
		animation-range: entry 12% cover 34%;
	}

	.home .za-panel {
		animation: za-home-panel-rise 1ms linear both;
		animation-timeline: view();
	}

	.home .za-panel:nth-child(1) {
		animation-range: entry 0% cover 18%;
	}

	.home .za-panel:nth-child(2) {
		animation-range: entry 2% cover 20%;
	}

	.home .za-panel:nth-child(3) {
		animation-range: entry 4% cover 22%;
	}
}

/* Inner pages: lightweight static SVG sky (no photo, no twinkle). Homepage keeps photo hero. */
body:not(.home) .wp-site-blocks > main {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background-color: var(--wp--preset--color--bg-deep);
	background-image: none;
	background-attachment: scroll;
}

body:not(.home) .wp-site-blocks > main::before {
	content: '';
	position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	background-color: #0a0d16;
	background-image:
		linear-gradient(
			180deg,
			rgba(10, 13, 22, 0.15) 0%,
			rgba(10, 13, 22, 0.05) 40%,
			rgba(10, 13, 22, 0.45) 78%,
			#0a0d16 100%
		),
		url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201600%20900%22%20preserveAspectRatio%3D%22xMidYMid%20slice%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22sky%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%220%22%20y2%3D%221%22%3E%3Cstop%20offset%3D%220%25%22%20stop-color%3D%22%2312182B%22%2F%3E%3Cstop%20offset%3D%2245%25%22%20stop-color%3D%22%23151C33%22%2F%3E%3Cstop%20offset%3D%2275%25%22%20stop-color%3D%22%230E1322%22%2F%3E%3Cstop%20offset%3D%22100%25%22%20stop-color%3D%22%230A0D16%22%2F%3E%3C%2FlinearGradient%3E%3CradialGradient%20id%3D%22mw%22%20cx%3D%2270%25%22%20cy%3D%2215%25%22%20r%3D%2265%25%22%3E%3Cstop%20offset%3D%220%25%22%20stop-color%3D%22%233A5178%22%20stop-opacity%3D%22.35%22%2F%3E%3Cstop%20offset%3D%2260%25%22%20stop-color%3D%22%231E2740%22%20stop-opacity%3D%22.12%22%2F%3E%3Cstop%20offset%3D%22100%25%22%20stop-color%3D%22%230A0D16%22%20stop-opacity%3D%220%22%2F%3E%3C%2FradialGradient%3E%3ClinearGradient%20id%3D%22hill%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%220%22%20y2%3D%221%22%3E%3Cstop%20offset%3D%220%25%22%20stop-color%3D%22%23080A11%22%2F%3E%3Cstop%20offset%3D%22100%25%22%20stop-color%3D%22%2305060A%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Crect%20width%3D%221600%22%20height%3D%22900%22%20fill%3D%22url(%23sky)%22%2F%3E%3Crect%20width%3D%221600%22%20height%3D%22900%22%20fill%3D%22url(%23mw)%22%2F%3E%3Ccircle%20cx%3D%22404%22%20cy%3D%2255%22%20r%3D%221.0%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.46%22%2F%3E%3Ccircle%20cx%3D%22601%22%20cy%3D%2216%22%20r%3D%220.9%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.41%22%2F%3E%3Ccircle%20cx%3D%221398%22%20cy%3D%22617%22%20r%3D%221.4%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.60%22%2F%3E%3Ccircle%20cx%3D%221027%22%20cy%3D%22534%22%20r%3D%221.1%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.40%22%2F%3E%3Ccircle%20cx%3D%22224%22%20cy%3D%22589%22%20r%3D%221.5%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.79%22%2F%3E%3Ccircle%20cx%3D%22881%22%20cy%3D%22112%22%20r%3D%221.0%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.48%22%2F%3E%3Ccircle%20cx%3D%221509%22%20cy%3D%22509%22%20r%3D%220.5%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.76%22%2F%3E%3Ccircle%20cx%3D%22747%22%20cy%3D%2238%22%20r%3D%220.4%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.62%22%2F%3E%3Ccircle%20cx%3D%221328%22%20cy%3D%22524%22%20r%3D%221.2%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.54%22%2F%3E%3Ccircle%20cx%3D%22937%22%20cy%3D%22432%22%20r%3D%221.2%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.71%22%2F%3E%3Ccircle%20cx%3D%221584%22%20cy%3D%22279%22%20r%3D%220.5%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.45%22%2F%3E%3Ccircle%20cx%3D%22716%22%20cy%3D%2279%22%20r%3D%221.3%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.65%22%2F%3E%3Ccircle%20cx%3D%221287%22%20cy%3D%22241%22%20r%3D%220.6%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.49%22%2F%3E%3Ccircle%20cx%3D%2231%22%20cy%3D%22172%22%20r%3D%220.8%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.79%22%2F%3E%3Ccircle%20cx%3D%221529%22%20cy%3D%22119%22%20r%3D%221.4%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.64%22%2F%3E%3Ccircle%20cx%3D%22539%22%20cy%3D%22195%22%20r%3D%220.5%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.84%22%2F%3E%3Ccircle%20cx%3D%22165%22%20cy%3D%22571%22%20r%3D%221.3%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.57%22%2F%3E%3Ccircle%20cx%3D%221136%22%20cy%3D%22190%22%20r%3D%220.5%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.60%22%2F%3E%3Ccircle%20cx%3D%22188%22%20cy%3D%22151%22%20r%3D%221.1%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.70%22%2F%3E%3Ccircle%20cx%3D%22785%22%20cy%3D%22130%22%20r%3D%220.6%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.70%22%2F%3E%3Ccircle%20cx%3D%221411%22%20cy%3D%22507%22%20r%3D%221.2%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.77%22%2F%3E%3Ccircle%20cx%3D%22643%22%20cy%3D%2295%22%20r%3D%220.5%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.62%22%2F%3E%3Ccircle%20cx%3D%221043%22%20cy%3D%22612%22%20r%3D%220.9%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.72%22%2F%3E%3Ccircle%20cx%3D%22688%22%20cy%3D%2228%22%20r%3D%220.4%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.76%22%2F%3E%3Ccircle%20cx%3D%221566%22%20cy%3D%22496%22%20r%3D%220.6%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.54%22%2F%3E%3Ccircle%20cx%3D%22453%22%20cy%3D%22304%22%20r%3D%221.4%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.81%22%2F%3E%3Ccircle%20cx%3D%22316%22%20cy%3D%22196%22%20r%3D%221.0%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.48%22%2F%3E%3Ccircle%20cx%3D%22646%22%20cy%3D%228%22%20r%3D%221.1%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.53%22%2F%3E%3Ccircle%20cx%3D%22759%22%20cy%3D%22158%22%20r%3D%221.1%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.70%22%2F%3E%3Ccircle%20cx%3D%22884%22%20cy%3D%22374%22%20r%3D%220.6%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.54%22%2F%3E%3Ccircle%20cx%3D%22669%22%20cy%3D%22580%22%20r%3D%220.6%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.81%22%2F%3E%3Ccircle%20cx%3D%221520%22%20cy%3D%22354%22%20r%3D%221.5%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.36%22%2F%3E%3Ccircle%20cx%3D%22408%22%20cy%3D%22335%22%20r%3D%221.0%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.83%22%2F%3E%3Ccircle%20cx%3D%221568%22%20cy%3D%22439%22%20r%3D%221.3%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.50%22%2F%3E%3Ccircle%20cx%3D%22902%22%20cy%3D%22425%22%20r%3D%220.4%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.52%22%2F%3E%3Ccircle%20cx%3D%22735%22%20cy%3D%22475%22%20r%3D%221.5%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.37%22%2F%3E%3Ccircle%20cx%3D%22921%22%20cy%3D%22188%22%20r%3D%221.1%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.68%22%2F%3E%3Ccircle%20cx%3D%22748%22%20cy%3D%22158%22%20r%3D%221.2%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.60%22%2F%3E%3Ccircle%20cx%3D%2255%22%20cy%3D%22524%22%20r%3D%221.2%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.80%22%2F%3E%3Ccircle%20cx%3D%221182%22%20cy%3D%22333%22%20r%3D%221.5%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.84%22%2F%3E%3Ccircle%20cx%3D%22994%22%20cy%3D%22487%22%20r%3D%220.4%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.62%22%2F%3E%3Ccircle%20cx%3D%22985%22%20cy%3D%22155%22%20r%3D%221.2%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.36%22%2F%3E%3Ccircle%20cx%3D%221505%22%20cy%3D%22278%22%20r%3D%220.8%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.64%22%2F%3E%3Ccircle%20cx%3D%22913%22%20cy%3D%2219%22%20r%3D%220.8%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.64%22%2F%3E%3Ccircle%20cx%3D%22111%22%20cy%3D%2287%22%20r%3D%220.5%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.48%22%2F%3E%3Ccircle%20cx%3D%22452%22%20cy%3D%22348%22%20r%3D%220.9%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.84%22%2F%3E%3Ccircle%20cx%3D%221070%22%20cy%3D%22371%22%20r%3D%220.8%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.70%22%2F%3E%3Ccircle%20cx%3D%22448%22%20cy%3D%22568%22%20r%3D%221.4%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.63%22%2F%3E%3Ccircle%20cx%3D%221049%22%20cy%3D%22464%22%20r%3D%221.1%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.49%22%2F%3E%3Ccircle%20cx%3D%22235%22%20cy%3D%22145%22%20r%3D%220.5%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.52%22%2F%3E%3Ccircle%20cx%3D%22706%22%20cy%3D%22483%22%20r%3D%221.1%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.76%22%2F%3E%3Ccircle%20cx%3D%22467%22%20cy%3D%22429%22%20r%3D%220.9%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.53%22%2F%3E%3Ccircle%20cx%3D%221169%22%20cy%3D%22324%22%20r%3D%221.3%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.69%22%2F%3E%3Ccircle%20cx%3D%22437%22%20cy%3D%22498%22%20r%3D%221.5%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.75%22%2F%3E%3Ccircle%20cx%3D%221410%22%20cy%3D%22100%22%20r%3D%221.1%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.61%22%2F%3E%3Ccircle%20cx%3D%221116%22%20cy%3D%225%22%20r%3D%220.9%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.38%22%2F%3E%3Ccircle%20cx%3D%221325%22%20cy%3D%22141%22%20r%3D%220.8%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.84%22%2F%3E%3Ccircle%20cx%3D%221073%22%20cy%3D%22375%22%20r%3D%220.5%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.60%22%2F%3E%3Ccircle%20cx%3D%22914%22%20cy%3D%22576%22%20r%3D%220.5%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.43%22%2F%3E%3Ccircle%20cx%3D%221306%22%20cy%3D%22600%22%20r%3D%221.3%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.41%22%2F%3E%3Ccircle%20cx%3D%22358%22%20cy%3D%22487%22%20r%3D%221.4%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.79%22%2F%3E%3Ccircle%20cx%3D%221372%22%20cy%3D%2257%22%20r%3D%221.2%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.82%22%2F%3E%3Ccircle%20cx%3D%22995%22%20cy%3D%22357%22%20r%3D%221.4%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.73%22%2F%3E%3Ccircle%20cx%3D%221211%22%20cy%3D%22276%22%20r%3D%221.3%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.47%22%2F%3E%3Ccircle%20cx%3D%22799%22%20cy%3D%22369%22%20r%3D%220.6%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.43%22%2F%3E%3Ccircle%20cx%3D%22678%22%20cy%3D%2286%22%20r%3D%221.3%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.69%22%2F%3E%3Ccircle%20cx%3D%22363%22%20cy%3D%22143%22%20r%3D%220.5%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.76%22%2F%3E%3Ccircle%20cx%3D%221568%22%20cy%3D%22248%22%20r%3D%220.9%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.41%22%2F%3E%3Ccircle%20cx%3D%22168%22%20cy%3D%22521%22%20r%3D%220.7%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.57%22%2F%3E%3Ccircle%20cx%3D%22948%22%20cy%3D%22226%22%20r%3D%221.2%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.50%22%2F%3E%3Ccircle%20cx%3D%22371%22%20cy%3D%22596%22%20r%3D%221.3%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.37%22%2F%3E%3Ccircle%20cx%3D%221381%22%20cy%3D%22114%22%20r%3D%220.7%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.51%22%2F%3E%3Ccircle%20cx%3D%221474%22%20cy%3D%22499%22%20r%3D%220.9%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.37%22%2F%3E%3Ccircle%20cx%3D%221255%22%20cy%3D%22271%22%20r%3D%221.4%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.37%22%2F%3E%3Ccircle%20cx%3D%221109%22%20cy%3D%2257%22%20r%3D%221.2%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.49%22%2F%3E%3Ccircle%20cx%3D%22414%22%20cy%3D%22533%22%20r%3D%221.2%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.38%22%2F%3E%3Ccircle%20cx%3D%221314%22%20cy%3D%22111%22%20r%3D%220.6%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.72%22%2F%3E%3Ccircle%20cx%3D%22284%22%20cy%3D%22241%22%20r%3D%221.5%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.73%22%2F%3E%3Ccircle%20cx%3D%22708%22%20cy%3D%22319%22%20r%3D%221.2%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.45%22%2F%3E%3Ccircle%20cx%3D%2299%22%20cy%3D%22316%22%20r%3D%221.1%22%20fill%3D%22%23F4F2EC%22%20opacity%3D%220.85%22%2F%3E%3Cpath%20d%3D%22M0%2C640%20C220%2C590%20380%2C660%20560%2C620%20C760%2C575%20900%2C650%201080%2C610%20C1260%2C572%201420%2C630%201600%2C600%20L1600%2C900%20L0%2C900%20Z%22%20fill%3D%22url(%23hill)%22%2F%3E%3C%2Fsvg%3E");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
}

/* Terms page — legal document layout */
.page-id-276 .wp-block-post-content > .za-eyebrow,
.page-id-276 .wp-block-post-content > h1,
.page-id-276 .wp-block-post-content > p.has-text-align-center,
.page-id-276 .wp-block-post-content > .wp-block-spacer {
	max-width: 760px;
	margin-left: auto;
	margin-right: auto;
}

.page-id-276 .za-legal {
	font-family: 'Inter', var(--wp--preset--font-family--body), sans-serif;
}

.page-id-276 .za-legal-updated {
	margin-bottom: 1.75rem !important;
	letter-spacing: 0.04em;
}

.page-id-276 .za-legal h2 {
	margin-top: 2.5rem;
	margin-bottom: 1rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--wp--preset--color--line);
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(1.25rem, 2.5vw, 1.45rem);
	font-weight: 500;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--text);
}

.page-id-276 .za-legal > h2:first-of-type {
	margin-top: 0;
	padding-top: 0;
	border-top: none;
}

.page-id-276 .za-legal h3 {
	margin-top: 1.75rem;
	margin-bottom: 0.6rem;
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.05rem;
	font-weight: 500;
	color: var(--wp--preset--color--accent-bright);
}

.page-id-276 .za-legal p {
	margin-top: 0;
	margin-bottom: 0.85rem;
	font-size: 0.9375rem;
	line-height: 1.75;
	color: var(--wp--preset--color--text-muted);
}

.page-id-276 .za-legal p strong {
	color: var(--wp--preset--color--text);
	font-weight: 600;
}

.page-id-276 .za-legal ul {
	margin: 0.35rem 0 1.25rem;
	padding-left: 1.35rem;
}

.page-id-276 .za-legal li {
	margin-bottom: 0.45rem;
	font-size: 0.9375rem;
	line-height: 1.7;
	color: var(--wp--preset--color--text-muted);
}

.page-id-276 .za-legal li::marker {
	color: var(--wp--preset--color--accent);
}

.page-id-276 .za-legal a {
	color: var(--wp--preset--color--accent-bright);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.page-id-276 .za-legal a:hover {
	color: var(--wp--preset--color--text);
}

.page-id-276 .za-legal .za-legal-divider {
	margin: 2rem auto;
	max-width: 120px;
	border-color: var(--wp--preset--color--line) !important;
	opacity: 0.55;
}

body {
	background: var(--wp--preset--color--bg-deep);
	color: var(--wp--preset--color--text);
	-webkit-font-smoothing: antialiased;
}

/* Offset main content below the fixed header (all pages except full-bleed hero).
   Pad .wp-site-blocks itself — WooCommerce account pages often have no <main>,
   so targeting only main left content sitting under the header. */
body:not(.home) .wp-site-blocks {
	padding-top: 112px;
}

body:not(.home) .za-page-main,
body:not(.home) .wp-site-blocks > main,
body:not(.home) main.wp-block-group {
	padding-top: 0;
}

/* Inner pages: match homepage section rhythm */
.za-page-main .wp-block-post-content > .wp-block-spacer:first-child {
	display: none; /* page template already pads under the fixed header */
}

.za-page-main .wp-block-post-content > h2:first-of-type,
.za-page-main .wp-block-post-content > .wp-block-heading:first-of-type {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 500;
	font-size: clamp(1.7rem, 3.4vw, 2.4rem);
	letter-spacing: -0.01em;
	margin-bottom: 1.5rem;
	color: var(--wp--preset--color--text);
}

.za-page-main .wp-block-post-content > * + .za-stats,
.za-page-main .wp-block-post-content > * + .za-steps,
.za-page-main .wp-block-post-content > * + .za-tiles {
	margin-top: 3rem;
}

.za-page-main .wp-block-post-content .za-steps,
.za-page-main .wp-block-post-content .za-tiles {
	margin-bottom: 3.5rem;
}

.za-page-main .wp-block-post-content > p {
	color: var(--wp--preset--color--text-muted);
	line-height: 1.7;
	max-width: 72ch;
}

.admin-bar .wp-site-blocks > header,
.admin-bar .za-site-header {
	top: 0;
}

/* ---- Fixed header (matches concept) ---- */
.wp-site-blocks > header,
.za-site-header {
	position: fixed;
	top: 0 !important;
	left: 0;
	right: 0;
	margin-top: 0 !important;
	z-index: 100;
	border-bottom: 1px solid transparent;
	transition: background 0.4s ease, border-color 0.4s ease, padding 0.4s ease;
}

.wp-site-blocks > header.is-scrolled,
.za-site-header.is-scrolled {
	background: rgba(10, 13, 22, 0.86);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border-bottom-color: var(--wp--preset--color--line);
}

/* Site logo — brand mark in the fixed header */
.wp-site-blocks > header .wp-block-site-logo img,
.za-site-header .wp-block-site-logo img {
	width: 64px !important;
	height: auto !important;
	max-height: none;
}

/* ---- Navigation: top-level + submenus (site-wide) ---- */
.wp-site-blocks > header .wp-block-navigation .wp-block-navigation-item__content,
.wp-site-blocks > header .wp-block-navigation a,
.za-site-header .wp-block-navigation .wp-block-navigation-item__content,
.za-site-header .wp-block-navigation a {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 13px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--text-muted);
	text-decoration: none;
	position: relative;
	padding-bottom: 4px;
	transition: color 0.25s ease;
}

.wp-site-blocks > header .wp-block-navigation .wp-block-navigation-item__content:hover,
.wp-site-blocks > header .wp-block-navigation a:hover,
.za-site-header .wp-block-navigation .wp-block-navigation-item__content:hover,
.za-site-header .wp-block-navigation a:hover {
	color: var(--wp--preset--color--accent-bright);
}

.wp-site-blocks > header .wp-block-navigation .wp-block-navigation-item__content::after,
.wp-site-blocks > header .wp-block-navigation > .wp-block-navigation__container > .wp-block-navigation-item > a::after,
.za-site-header .wp-block-navigation .wp-block-navigation-item__content::after,
.za-site-header .wp-block-navigation > .wp-block-navigation__container > .wp-block-navigation-item > a::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 0;
	height: 1px;
	background: var(--wp--preset--color--accent-bright);
	transition: width 0.25s ease;
}

.wp-site-blocks > header .wp-block-navigation .wp-block-navigation-item__content:hover::after,
.wp-site-blocks > header .wp-block-navigation > .wp-block-navigation__container > .wp-block-navigation-item > a:hover::after,
.za-site-header .wp-block-navigation .wp-block-navigation-item__content:hover::after,
.za-site-header .wp-block-navigation > .wp-block-navigation__container > .wp-block-navigation-item > a:hover::after {
	width: 100%;
}

/* Dropdown / flyout submenus */
.wp-site-blocks > header .wp-block-navigation__submenu-container,
.za-site-header .wp-block-navigation__submenu-container {
	background: var(--wp--preset--color--bg-panel) !important;
	border: 1px solid var(--wp--preset--color--line) !important;
	border-radius: 0;
	padding: 8px 0 !important;
	min-width: 220px;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
}

.wp-site-blocks > header .wp-block-navigation__submenu-container .wp-block-navigation-item__content,
.za-site-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	display: block;
	padding: 12px 22px !important;
	font-size: 14px !important;
	letter-spacing: 0.06em;
	color: var(--wp--preset--color--text-muted);
}

.wp-site-blocks > header .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
.za-site-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--accent-bright);
	background: rgba(111, 160, 224, 0.06);
}

.wp-site-blocks > header .wp-block-navigation__submenu-container .wp-block-navigation-item__content::after,
.za-site-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content::after {
	display: none;
}

/* Nested sub-submenu */
.wp-site-blocks > header .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,
.za-site-header .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
	margin-left: 4px;
}

/* Mobile / overlay menu — full-width left-aligned list (no shrink-to-text rows) */
.wp-block-navigation__responsive-container.is-menu-open {
	background: var(--wp--preset--color--bg-deep) !important;
	padding: 20px 20px 40px !important;
	overflow-y: auto !important;
	-webkit-overflow-scrolling: touch;
	width: 100% !important;
	max-width: none !important;
	left: 0 !important;
	right: 0 !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
	z-index: 10002 !important;
	pointer-events: auto !important;
}

/* Logged-in mobile: admin bar covers the default close control */
@media (max-width: 782px) {
	.admin-bar .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
		top: calc(46px + 10px) !important;
		right: 12px !important;
		z-index: 100050 !important; /* above WP admin bar (99999) */
	}

	.admin-bar .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
		padding-top: 96px !important;
	}
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	padding-top: 56px;
	align-items: stretch !important;
	justify-content: flex-start !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

/* Dividers on links only — never on wrapping submenu <li> (that made short/long lines) */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item > .wp-block-navigation-item__content {
	display: block !important;
	width: 100% !important;
	box-sizing: border-box !important;
	text-align: left !important;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--text-muted);
	padding: 14px 2px !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(58, 81, 120, 0.35) !important;
	outline: none !important;
	box-shadow: none !important;
	background: transparent !important;
	position: relative;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item > .wp-block-navigation-item__content:hover,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item > .wp-block-navigation-item__content:focus,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item > .wp-block-navigation-item__content:focus-visible {
	color: var(--wp--preset--color--accent-bright);
	outline: none !important;
	box-shadow: none !important;
	background: transparent !important;
}

/* Kill desktop hover underline inside the overlay */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content::after {
	content: none !important;
	display: none !important;
	width: 0 !important;
}

.wp-block-navigation__responsive-container.is-menu-open .current-menu-item > .wp-block-navigation-item__content,
.wp-block-navigation__responsive-container.is-menu-open .current-menu-ancestor > .wp-block-navigation-item__content {
	color: var(--wp--preset--color--accent-bright);
	background: transparent !important;
	border-color: rgba(58, 81, 120, 0.35) !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-icon,
.wp-block-navigation__responsive-container.is-menu-open button.wp-block-navigation-submenu__toggle {
	display: none !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	display: block !important;
	position: static !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	height: auto !important;
	opacity: 1 !important;
	visibility: visible !important;
	overflow: visible !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	padding: 0 0 0 16px !important;
	margin: 0 !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item > .wp-block-navigation-item__content {
	padding: 12px 2px !important;
	font-size: 11px;
	letter-spacing: 0.06em;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
	padding-left: 14px !important;
	margin-left: 0 !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.za-nav-dup {
	display: none !important;
}

/* Header CTA button */
.wp-site-blocks > header .wp-block-button.is-style-outline .wp-block-button__link,
.za-site-header .wp-block-button.is-style-outline .wp-block-button__link {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 11px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	border-color: var(--wp--preset--color--line-bright);
	color: var(--wp--preset--color--text);
	border-radius: 0;
	padding: 9px 16px;
	transition: border-color 0.25s ease, background 0.25s ease, color 0.25s ease;
}

.wp-site-blocks > header .wp-block-button.is-style-outline .wp-block-button__link:hover,
.za-site-header .wp-block-button.is-style-outline .wp-block-button__link:hover {
	border-color: var(--wp--preset--color--accent-bright);
	background: rgba(111, 160, 224, 0.08);
	color: var(--wp--preset--color--accent-bright);
}

/* ---- Links site-wide (content, footer, widgets) ---- */
.wp-block-post-content a:not(.wp-block-button__link),
.entry-content a:not(.wp-block-button__link),
.wp-block-group a:not(.wp-block-button__link):not(.wp-block-navigation-item__content) {
	color: var(--wp--preset--color--accent-bright);
	text-decoration: none;
	transition: color 0.2s ease;
}

.wp-block-post-content a:not(.wp-block-button__link):hover,
.entry-content a:not(.wp-block-button__link):hover {
	color: var(--wp--preset--color--accent);
}

/* ---- Buttons site-wide (match concept primary / secondary) ---- */
.wp-block-button:not(.is-style-outline) .wp-block-button__link {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12.5px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	border-radius: 0;
	transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

.wp-block-button.is-style-outline .wp-block-button__link {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12.5px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	border-radius: 0;
	border-color: var(--wp--preset--color--line-bright);
	color: var(--wp--preset--color--text-muted);
	background: transparent;
	transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
	color: var(--wp--preset--color--text);
	border-color: var(--wp--preset--color--accent);
}

/* ---- Hero: photo base + SVG star dots on top (zulualpha-site.js) ---- */
.za-hero {
	position: relative;
	overflow: hidden;
	background-color: var(--wp--preset--color--bg-deep);
	/* Optimised 1920px hero — WebP with JPEG fallback (same crop/position). */
	background-image: url(images/hero-saao-1920.jpg);
	background-image: image-set(
		url('images/hero-saao-1920.webp') type('image/webp'),
		url('images/hero-saao-1920.jpg') type('image/jpeg')
	);
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}

/* Hide WP cover dim — photo + light veil handle contrast */
.za-hero > .wp-block-cover__background {
	display: none !important;
}

/* Any cover <img> from the editor sits under the dots too */
.za-hero > .wp-block-cover__image-background,
.za-hero .za-hero-photo {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center center !important;
	z-index: 0 !important;
	pointer-events: none;
}

.za-hero .za-hero-sky {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background: transparent;
}

.za-hero .za-hero-sky svg {
	width: 100%;
	height: 100%;
	display: block;
}

.za-hero .za-hero-veil {
	position: absolute;
	inset: 0;
	z-index: 2;
	pointer-events: none;
	background: linear-gradient(
		180deg,
		rgba(10, 13, 22, 0.28) 0%,
		rgba(10, 13, 22, 0.12) 35%,
		rgba(10, 13, 22, 0.45) 72%,
		var(--wp--preset--color--bg-deep) 100%
	);
}

.za-hero .wp-block-cover__inner-container {
	position: relative;
	z-index: 3;
}

/* Mobile: stronger veil + crop so Milky Way band sits below hero copy */
@media (max-width: 782px) {
	.za-hero {
		background-position: center 58%;
	}

	.za-hero > .wp-block-cover__image-background,
	.za-hero .za-hero-photo {
		object-position: center 58% !important;
	}

	.za-hero .za-hero-veil {
		background: linear-gradient(
			180deg,
			rgba(10, 13, 22, 0.62) 0%,
			rgba(10, 13, 22, 0.58) 38%,
			rgba(10, 13, 22, 0.72) 68%,
			var(--wp--preset--color--bg-deep) 100%
		);
	}

	.za-hero .wp-block-cover__inner-container > .wp-block-group > h1 {
		text-shadow: 0 1px 12px rgba(10, 13, 22, 0.8);
	}

	.za-hero .wp-block-cover__inner-container > .wp-block-group > p:not(.za-eyebrow) {
		color: var(--wp--preset--color--text) !important;
		text-shadow: 0 1px 10px rgba(10, 13, 22, 0.75);
	}
}

/* Desktop: brighter copy + stronger veil behind paragraphs over the terrain */
@media (min-width: 783px) {
	.za-hero .za-hero-veil {
		background: linear-gradient(
			180deg,
			rgba(10, 13, 22, 0.34) 0%,
			rgba(10, 13, 22, 0.2) 30%,
			rgba(10, 13, 22, 0.55) 58%,
			rgba(10, 13, 22, 0.78) 82%,
			var(--wp--preset--color--bg-deep) 100%
		);
	}

	.za-hero .wp-block-cover__inner-container > .wp-block-group > h1 {
		color: var(--wp--preset--color--text) !important;
		text-shadow:
			0 2px 20px rgba(10, 13, 22, 0.7),
			0 1px 4px rgba(10, 13, 22, 0.55);
	}

	.za-hero .wp-block-cover__inner-container > .wp-block-group > p:not(.za-eyebrow) {
		color: var(--wp--preset--color--text) !important;
		text-shadow:
			0 1px 16px rgba(10, 13, 22, 0.85),
			0 1px 5px rgba(10, 13, 22, 0.65);
	}

	.za-hero .wp-block-cover__inner-container > .wp-block-group > p:not(.za-eyebrow) strong {
		color: var(--wp--preset--color--text) !important;
	}
}

/* ---- Data readout strip ---- */
.za-readout {
	font-family: var(--wp--preset--font-family--mono);
	border-top: 1px solid var(--wp--preset--color--line);
	border-bottom: 1px solid var(--wp--preset--color--line);
}

.za-readout .wp-block-group,
.za-readout .wp-block-column {
	border-right: 1px solid var(--wp--preset--color--line);
}

.za-readout .wp-block-column:last-child .wp-block-group,
.za-readout .wp-block-column:last-child {
	border-right: none;
}

.za-readout-label {
	font-size: 10px;
	letter-spacing: 0.14em;
	color: var(--wp--preset--color--text-faint);
	text-transform: uppercase;
	margin-bottom: 6px;
	display: block;
}

.za-readout-value {
	font-size: 13.5px;
	color: var(--wp--preset--color--accent-bright);
	letter-spacing: 0.02em;
}

/* Homepage specification band: balanced columns and single-line values */
.home .za-spec-band > .wp-block-columns,
.home .wp-site-blocks > .has-bg-panel-2-background-color:last-of-type > .wp-block-columns {
	display: grid !important;
	grid-template-columns: minmax(260px, 300px) minmax(0, 1fr);
	align-items: end !important;
	column-gap: clamp(36px, 5vw, 72px) !important;
	width: 100% !important;
	max-width: 1180px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.home .za-spec-band > .wp-block-columns > .wp-block-column:last-child > .wp-block-columns,
.home .wp-site-blocks > .has-bg-panel-2-background-color:last-of-type > .wp-block-columns > .wp-block-column:last-child > .wp-block-columns {
	display: grid !important;
	grid-template-columns: repeat(4, max-content);
	justify-content: space-between;
	align-items: end;
	column-gap: 24px !important;
	margin: 0 !important;
}

.home .za-spec-band .za-readout-value,
.home .wp-site-blocks > .has-bg-panel-2-background-color:last-of-type .za-readout-value {
	white-space: nowrap;
}

@media (max-width: 900px) {
	.home .za-spec-band > .wp-block-columns,
	.home .wp-site-blocks > .has-bg-panel-2-background-color:last-of-type > .wp-block-columns {
		grid-template-columns: 1fr;
		row-gap: 36px !important;
	}
}

@media (max-width: 620px) {
	.home .za-spec-band > .wp-block-columns > .wp-block-column:last-child > .wp-block-columns,
	.home .wp-site-blocks > .has-bg-panel-2-background-color:last-of-type > .wp-block-columns > .wp-block-column:last-child > .wp-block-columns {
		grid-template-columns: 1fr 1fr;
		row-gap: 24px !important;
	}

	.home .za-spec-band .za-readout-value,
	.home .wp-site-blocks > .has-bg-panel-2-background-color:last-of-type .za-readout-value {
		white-space: normal;
	}
}

/* ---- Use-case panels (concept homepage) ---- */
.za-panel {
	background: var(--wp--preset--color--bg-panel-2);
	border: 1px solid var(--wp--preset--color--line);
	padding: 38px 32px 34px;
	transition: background 0.3s ease;
	display: flex;
	flex-direction: column;
	height: auto;
	align-self: stretch;
	box-sizing: border-box;
}

.home .wp-block-columns:has(> .za-panel) {
	align-items: stretch !important;
}

.za-panel:hover {
	background: var(--wp--preset--color--bg-panel);
}

.za-panel-tag {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 10px;
	letter-spacing: 0.14em;
	color: var(--wp--preset--color--text-faint);
	text-transform: uppercase;
	margin-bottom: 10px;
	display: block;
}

.za-panel .za-panel-cta {
	margin-top: auto;
	padding-top: 24px;
}

.za-panel .za-panel-cta .wp-block-button__link {
	font-size: 11px;
	letter-spacing: 0.06em;
	padding: 12px 16px;
	text-align: center;
	white-space: normal;
	line-height: 1.35;
}

/* ---- Day/night map embed ---- */
.za-embed {
	max-width: 980px;
	margin: 0 auto;
}

.za-embed iframe {
	width: 100%;
	height: 640px;
	border: 0;
	border-radius: 12px;
	display: block;
	overflow: hidden;
	background: var(--wp--preset--color--bg-panel);
}

@media (max-width: 1024px) {
	.za-embed iframe {
		height: 560px;
	}
}

@media (max-width: 782px) {
	.za-embed iframe {
		height: 500px;
		border-radius: 10px;
	}
}

@media (max-width: 480px) {
	.za-embed iframe {
		height: 460px;
	}
}

/* ---- Eyebrow labels ---- */
.za-eyebrow {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 11.5px;
	letter-spacing: 0.24em;
	color: var(--wp--preset--color--accent-bright);
	text-transform: uppercase;
}

/* Hero eyebrow sits on the bright photo — darken it and add a soft halo
   so it stays legible against the light Milky Way sky. */
.za-hero .za-eyebrow {
	color: #0A0D16 !important;
	font-weight: 500;
	text-shadow: 0 1px 6px rgba(200, 214, 240, 0.65);
}

/* ---- Inner-page content areas ---- */
.wp-block-post-content,
.entry-content {
	color: var(--wp--preset--color--text);
}

.wp-block-post-content h1,
.wp-block-post-content h2,
.wp-block-post-content h3,
.entry-content h1,
.entry-content h2,
.entry-content h3 {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 500;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--text);
}

/* Tables site-wide */
.wp-block-post-content table,
.entry-content table,
.za-site-snapshot table {
	border-color: var(--wp--preset--color--line);
}

.wp-block-post-content th,
.entry-content th {
	color: var(--wp--preset--color--text);
}

.wp-block-post-content td,
.entry-content td {
	color: var(--wp--preset--color--text-muted);
}

/* =========================================================
   Dark-palette overrides for existing page content components
   (inline <style> in page content ships light-theme za-* classes)
   ========================================================= */

.za-use-case-tile {
	background: var(--wp--preset--color--bg-panel-2) !important;
	border-color: var(--wp--preset--color--line) !important;
	box-shadow: none !important;
	color: var(--wp--preset--color--text) !important;
}

.za-use-case-tile h3,
.za-use-case-tile p,
.za-use-case-tile li {
	color: var(--wp--preset--color--text-muted) !important;
}

.za-use-case-tile h3 {
	color: var(--wp--preset--color--text) !important;
}

.za-use-case-tag {
	background: var(--wp--preset--color--bg-panel) !important;
	color: var(--wp--preset--color--accent-bright) !important;
}

.za-use-case-cta a {
	border-color: var(--wp--preset--color--line-bright) !important;
	color: var(--wp--preset--color--accent-bright) !important;
}

.za-use-case-cta a:hover {
	background: var(--wp--preset--color--accent) !important;
	color: var(--wp--preset--color--bg-deep) !important;
	border-color: var(--wp--preset--color--accent) !important;
}

.za-site-snapshot {
	background: var(--wp--preset--color--bg-panel-2) !important;
	border-color: var(--wp--preset--color--line) !important;
	box-shadow: none !important;
	color: var(--wp--preset--color--text-muted) !important;
}

.za-site-snapshot h2 {
	color: var(--wp--preset--color--text) !important;
}

.za-site-snapshot th {
	color: var(--wp--preset--color--text) !important;
}

.za-site-snapshot td {
	color: var(--wp--preset--color--text-muted) !important;
}

.za-site-snapshot tr:nth-child(2n+1) td,
.za-site-snapshot tr:nth-child(2n+1) th {
	background: rgba(255, 255, 255, 0.04) !important;
}

.za-site-snapshot tr:nth-child(2n) td,
.za-site-snapshot tr:nth-child(2n) th {
	background: transparent !important;
}

.za-table {
	border-color: var(--wp--preset--color--line) !important;
	color: var(--wp--preset--color--text-muted) !important;
}

.za-row {
	border-top-color: var(--wp--preset--color--line) !important;
}

.za-cell {
	background: var(--wp--preset--color--bg-panel-2) !important;
	color: var(--wp--preset--color--text-muted) !important;
}

.za-head .za-cell {
	background: var(--wp--preset--color--bg-panel) !important;
}

.za-head h3,
.za-price {
	color: var(--wp--preset--color--text) !important;
}

.za-feature {
	background: var(--wp--preset--color--bg-panel) !important;
	color: var(--wp--preset--color--text) !important;
}

/* Reserve CTA row: match left-aligned price cells in plan columns */
.za-compare .za-row.za-cta .za-cell:not(.za-feature) {
	text-align: left !important;
}

.za-compare .za-row.za-cta .za-btn {
	margin-left: 0;
	margin-right: auto;
}

.za-btn,
.za-link a {
	border-color: var(--wp--preset--color--line-bright) !important;
	color: var(--wp--preset--color--text) !important;
}

.za-btn:hover {
	background: var(--wp--preset--color--accent) !important;
	color: var(--wp--preset--color--bg-deep) !important;
	border-color: var(--wp--preset--color--accent) !important;
}

.za-table:focus-within {
	outline-color: var(--wp--preset--color--accent) !important;
}

.za-h,
.za-sub {
	color: var(--wp--preset--color--text) !important;
}

.za-sub {
	color: var(--wp--preset--color--text-muted) !important;
}

/* =========================================================
   Hosting components — match live /hosting layout exactly
   (light stats strip, dark step cards + white badges, white tiles).
   Child theme only supplies fonts + page chrome around them.
   ========================================================= */

/* Stats pills — live light strip */
.za-stats {
	background: #f5f7fb !important;
	border: 1px solid #e9edf5 !important;
	border-radius: 14px !important;
	padding: 0.8rem 1rem !important;
	margin: 1rem 0 2rem !important;
	max-width: none;
}

.za-stats-list {
	display: flex !important;
	gap: 18px !important;
	flex-wrap: wrap !important;
	justify-content: center !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.za-stats li {
	padding: 0.35rem 0.75rem !important;
	border-radius: 999px !important;
	background: #fff !important;
	border: 1px solid #e5e7eb !important;
	color: #0b1220 !important;
	font-family: var(--wp--preset--font-family--body) !important;
	font-size: 14px !important;
	letter-spacing: normal !important;
	line-height: 1.4;
}

.za-stats strong {
	font-family: var(--wp--preset--font-family--body) !important;
	font-weight: 800 !important;
	color: #0b1220 !important;
}

/* How it works — live 4-up dark cards + white corner badges */
.za-steps {
	margin: 2rem 0 !important;
}

.za-steps h2 {
	font-family: var(--wp--preset--font-family--display) !important;
	font-weight: 500 !important;
	font-size: clamp(1.5rem, 3vw, 2rem) !important;
	letter-spacing: -0.01em;
	margin: 0 0 0.5rem !important;
	color: var(--wp--preset--color--text) !important;
	text-align: left !important;
}

.za-steps .za-steps-list {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 14px !important;
	margin: 0 !important;
	padding: 18px 8px 0 !important;
	list-style: none !important;
	counter-reset: za-step;
	background: transparent !important;
	border: none !important;
	overflow: visible !important;
}

.za-steps .za-steps-list > li {
	position: relative;
	background: #0b1220 !important;
	color: #fff !important;
	border: none !important;
	border-radius: 16px !important;
	/* Top padding clears the hanging badge; left clears title under badge */
	padding: 1.75rem 1.15rem 1.15rem 2.35rem !important;
	min-height: 120px !important;
	margin: 0 !important;
	overflow: visible !important;
}

.za-steps .za-steps-list > li::marker {
	content: none;
}

.za-steps .za-steps-list > li::before {
	content: none !important;
}

.za-steps .za-steps-list > li::after {
	counter-increment: za-step;
	content: counter(za-step) !important;
	position: absolute !important;
	top: -10px !important;
	left: -10px !important;
	right: auto !important;
	width: 36px !important;
	height: 36px !important;
	display: grid !important;
	place-items: center !important;
	background: #fff !important;
	color: #0b1220 !important;
	border: 2px solid #0b1220 !important;
	border-radius: 50% !important;
	font-family: var(--wp--preset--font-family--body) !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	letter-spacing: 0 !important;
	line-height: 1 !important;
	z-index: 2;
	box-sizing: border-box !important;
}

.za-steps .za-steps-list h3 {
	margin: 0.1rem 0 0.35rem !important;
	font-family: var(--wp--preset--font-family--display) !important;
	font-weight: 500 !important;
	font-size: 1.05rem !important;
	color: #fff !important;
	padding: 0 !important;
}

.za-steps .za-steps-list p {
	margin: 0 !important;
	opacity: 0.95 !important;
	color: rgba(255, 255, 255, 0.9) !important;
	font-family: var(--wp--preset--font-family--body) !important;
	font-size: 14px !important;
	line-height: 1.55;
}

/* Explore tiles — live white cards, 3-col */
.za-tiles {
	margin: 2rem 0 !important;
}

.za-tiles h2 {
	font-family: var(--wp--preset--font-family--display) !important;
	font-weight: 500 !important;
	margin: 0 0 0.5rem !important;
	color: var(--wp--preset--color--text) !important;
	text-align: left !important;
}

.za-tiles-grid {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr) !important;
	gap: 14px !important;
	background: transparent !important;
	border: none !important;
}

.za-tile {
	display: block !important;
	padding: 1rem !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 14px !important;
	background: #fff !important;
	text-decoration: none !important;
	color: #0b1220 !important;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.za-tile:hover {
	box-shadow: 0 6px 30px rgba(0, 0, 0, 0.12) !important;
	transform: translateY(-1px) !important;
	background: #fff !important;
	border-color: #e5e7eb !important;
	color: #0b1220 !important;
}

.za-tile h3 {
	margin: 0.1rem 0 0.25rem !important;
	font-family: var(--wp--preset--font-family--display) !important;
	font-weight: 500 !important;
	font-size: 1.05rem !important;
	color: #0b1220 !important;
}

.za-tile p,
.za-tile {
	font-family: var(--wp--preset--font-family--body) !important;
	font-size: 14px !important;
	line-height: 1.55;
	letter-spacing: normal !important;
}

.za-tile p {
	margin: 0 !important;
	color: #4b5563 !important;
}

.za-tile:hover p {
	color: #4b5563 !important;
}

/* Hosting page: one centered, uniform content system */
.page-id-282 .za-page-main,
.page-id-282 .wp-block-post-content {
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box;
}

.page-id-282 .wp-block-post-content {
	padding-inline: clamp(20px, 4vw, 48px) !important;
	padding-top: 0 !important;
}

.page-id-282 .wp-block-post-content > h2,
.page-id-282 .wp-block-post-content > .za-stats,
.page-id-282 .wp-block-post-content > .za-steps,
.page-id-282 .wp-block-post-content > .za-tiles {
	width: 100% !important;
	max-width: 1100px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box;
}

.page-id-282 .wp-block-post-content > p,
.page-id-282 .wp-block-post-content > ul,
.page-id-282 .wp-block-post-content > ol,
.page-id-282 .wp-block-post-content > .wp-block-buttons {
	width: 100% !important;
	max-width: 760px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box;
}

.page-id-282 .za-steps {
	margin-top: 2.5rem !important;
	margin-bottom: 2.5rem !important;
}

.page-id-282 .za-tiles {
	margin-top: 0 !important;
	margin-bottom: 2.75rem !important;
}

.page-id-282 .za-steps-list > li,
.page-id-282 .za-tile {
	height: 100%;
	box-sizing: border-box;
}

@media (max-width: 782px) {
	.page-id-282 .wp-block-post-content > h2:first-of-type {
		margin-top: 0.5rem !important;
		margin-bottom: 0.75rem !important;
	}

	.page-id-282 .za-stats {
		margin: 0.5rem 0 1.25rem !important;
		padding: 0.65rem 0.75rem !important;
	}

	.page-id-282 .za-stats-list {
		gap: 8px !important;
		justify-content: flex-start !important;
	}

	.page-id-282 .za-stats li {
		font-size: 13px !important;
		padding: 0.3rem 0.6rem !important;
		line-height: 1.35 !important;
	}
}

/* Hosting section headings: consistent, centered Fraunces styling */
.page-id-282 .za-steps h2,
.page-id-282 .za-tiles + p + p {
	font-family: 'Fraunces', var(--wp--preset--font-family--display), serif !important;
	font-size: clamp(1.5rem, 3vw, 2rem) !important;
	font-weight: 500 !important;
	letter-spacing: -0.01em !important;
	line-height: 1.2 !important;
	text-align: center !important;
	color: var(--wp--preset--color--text) !important;
}

.page-id-282 .za-steps h2 {
	margin-bottom: 1.25rem !important;
}

.page-id-282 .za-tiles + p + p {
	margin-top: 2.5rem !important;
	margin-bottom: 1.25rem !important;
}

/* Hosting lower section: clear vertical separation between groups */
.page-id-282 .za-tiles + p + p + ul {
	margin-top: 0 !important;
	margin-bottom: 2.75rem !important;
}

.page-id-282 .wp-block-post-content > .wp-block-buttons {
	margin-top: 2.75rem !important;
	margin-bottom: 3rem !important;
}

.page-id-282 .wp-block-post-content > .wp-block-buttons + p {
	margin-top: 0 !important;
	margin-bottom: 1.75rem !important;
}

.page-id-282 .wp-block-post-content > .wp-block-buttons + p + p {
	margin-top: 0 !important;
	margin-bottom: 3.5rem !important;
	line-height: 1.8 !important;
}

/* The Site page: centered layout + panel grid */
.page-id-83 .za-page-main,
.page-id-83 .wp-block-post-content {
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box;
	padding-inline: clamp(20px, 4vw, 48px) !important;
}

.page-id-83 .wp-block-post-content > .za-eyebrow,
.page-id-83 .wp-block-post-content > h2:first-of-type,
.page-id-83 .wp-block-post-content > .za-stats,
.page-id-83 .wp-block-post-content > .za-site-map-wrap,
.page-id-83 .wp-block-post-content > .za-site-proof,
.page-id-83 .wp-block-post-content > .za-readout,
.page-id-83 .wp-block-post-content > .wp-block-buttons {
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
}

.page-id-83 .wp-block-post-content > p.has-text-muted-color {
	max-width: 760px;
	margin-left: auto;
	margin-right: auto;
}

.page-id-83 .za-site-section {
	width: 100%;
	max-width: 1180px;
	margin-left: auto;
	margin-right: auto;
}

.page-id-83 .za-site-panels {
	align-items: stretch !important;
	gap: 1px !important;
	margin-top: 1.5rem;
}

.page-id-83 .za-site-panels .za-panel h3 {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 500;
	text-align: left;
}

.page-id-83 .za-site-panels .za-panel p {
	text-align: left;
}

.page-id-83 .za-site-panels--two {
	max-width: 66.666%;
	margin-left: auto;
	margin-right: auto;
}

.page-id-83 .za-site-proof .za-readout-value {
	font-size: clamp(1.25rem, 3vw, 1.75rem);
	margin-bottom: 0.5rem;
}

.page-id-83 .za-site-chart {
	max-width: 100%;
	margin: 1.5rem auto;
}

.page-id-83 .za-site-chart img {
	border: 1px solid var(--wp--preset--color--line);
	display: block;
	width: 100%;
	height: auto;
}

.page-id-83 .za-site-map-wrap {
	max-width: 560px;
	margin-left: auto;
	margin-right: auto;
}

.page-id-83 .za-site-map {
	display: block;
	width: fit-content;
	max-width: 100%;
	margin: 0 auto;
	padding: 6px;
	background: #ffffff;
	border-radius: 16px;
	box-shadow:
		0 0 20px rgba(255, 255, 255, 0.28),
		0 0 44px rgba(255, 255, 255, 0.14),
		0 0 72px rgba(255, 255, 255, 0.06);
}

.page-id-83 .za-site-map img {
	display: block;
	width: 100%;
	max-width: 548px;
	height: auto;
	margin: 0 auto;
	border: none;
	border-radius: 11px;
	object-fit: contain;
}

.page-id-83 .za-readout {
	max-width: 1100px;
	margin-left: auto !important;
	margin-right: auto !important;
}

@media (max-width: 900px) {
	.page-id-83 .za-site-panels--two {
		max-width: none;
	}
}

/* Header: logo | centered nav | tight utilities (account + cart + CTA) */
.za-site-header,
.wp-site-blocks > header .za-site-header {
	width: 100%;
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: center;
	justify-content: flex-start;
	gap: 14px;
	position: relative;
}

/* True optical centre for the primary nav */
.za-site-header > .wp-block-navigation,
.wp-site-blocks > header .za-site-header > .wp-block-navigation {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2;
}

/* First utility after the nav starts the right-hand cluster */
.za-site-header > .wp-block-woocommerce-customer-account,
.za-site-header > .wp-block-woocommerce-mini-cart,
.za-site-header > .wc-block-mini-cart,
.za-site-header > .wp-block-buttons {
	margin-left: auto;
	flex-shrink: 0;
}

/* Keep account, cart, and CTA snug — only the first utility gets the push */
.za-site-header > .wp-block-woocommerce-customer-account ~ .wp-block-woocommerce-mini-cart,
.za-site-header > .wp-block-woocommerce-customer-account ~ .wc-block-mini-cart,
.za-site-header > .wp-block-woocommerce-customer-account ~ .wp-block-buttons,
.za-site-header > .wp-block-woocommerce-mini-cart ~ .wp-block-buttons,
.za-site-header > .wc-block-mini-cart ~ .wp-block-buttons {
	margin-left: 0;
}

.za-site-header .wp-block-woocommerce-customer-account .wc-block-customer-account__link,
.za-site-header .wp-block-woocommerce-mini-cart,
.za-site-header .wc-block-mini-cart {
	display: inline-flex;
	align-items: center;
	color: var(--wp--preset--color--text);
}

.za-site-header .wc-block-customer-account__account-icon,
.za-site-header .wc-block-mini-cart__icon {
	width: 26px;
	height: 26px;
}

/* =========================================================
   SITE-WIDE: every page aligns to homepage design
   Applies even when a page uses a customised Site Editor
   template (no .za-page-main class).
   ========================================================= */

/* Universal content column on non-home views */
body:not(.home) .wp-block-post-content,
body:not(.home) .entry-content {
	color: var(--wp--preset--color--text);
}

body:not(.home) .wp-block-post-content h1,
body:not(.home) .wp-block-post-content h2,
body:not(.home) .wp-block-post-content h3,
body:not(.home) .wp-block-post-content h4,
body:not(.home) .entry-content h1,
body:not(.home) .entry-content h2,
body:not(.home) .entry-content h3,
body:not(.home) .entry-content h4,
body:not(.home) .wp-block-query-title,
body:not(.home) .wp-block-post-title {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 500;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--text);
}

body:not(.home) .wp-block-post-content > p,
body:not(.home) .entry-content > p {
	color: var(--wp--preset--color--text-muted);
	line-height: 1.7;
}

body:not(.home) .wp-block-post-content ul:not([class]),
body:not(.home) .wp-block-post-content ol:not([class]),
body:not(.home) .entry-content ul:not([class]),
body:not(.home) .entry-content ol:not([class]) {
	color: var(--wp--preset--color--text-muted);
	line-height: 1.7;
}

body:not(.home) .wp-block-post-content li::marker,
body:not(.home) .entry-content li::marker {
	color: var(--wp--preset--color--accent);
}

/* Separators */
body:not(.home) .wp-block-separator {
	border-color: var(--wp--preset--color--line) !important;
	color: var(--wp--preset--color--line) !important;
}

/* Block quotes */
body:not(.home) .wp-block-quote {
	background: var(--wp--preset--color--bg-panel-2) !important;
	border-left: 2px solid var(--wp--preset--color--accent) !important;
	color: var(--wp--preset--color--text-muted);
	border-radius: 0 !important;
}

/* Generic HTML tables (terms, status, etc.) */
body:not(.home) .wp-block-post-content table:not(.za-site-snapshot table),
body:not(.home) .entry-content table:not(.za-site-snapshot table) {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid var(--wp--preset--color--line);
	background: var(--wp--preset--color--bg-panel-2);
}

body:not(.home) .wp-block-post-content th,
body:not(.home) .entry-content th {
	background: var(--wp--preset--color--bg-panel);
	color: var(--wp--preset--color--text);
	padding: 0.75rem 1rem;
	text-align: left;
	border-bottom: 1px solid var(--wp--preset--color--line);
	font-family: 'Inter', var(--wp--preset--font-family--body), sans-serif !important;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.02em;
}

body:not(.home) .wp-block-post-content td,
body:not(.home) .entry-content td {
	color: var(--wp--preset--color--text-muted);
	padding: 0.75rem 1rem;
	border-bottom: 1px solid var(--wp--preset--color--line);
}

/* FAQ / accordion — details + summary (and Yoast/RankMath FAQ buttons) */
body:not(.home) details,
body:not(.home) .wp-block-details {
	background: var(--wp--preset--color--bg-panel-2);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: 0;
	padding: 0;
	margin: 0 0 1px;
}

body:not(.home) details summary,
body:not(.home) .wp-block-details summary,
body:not(.home) .schema-faq-question,
body:not(.home) .rank-math-list-item .rank-math-question,
body:not(.home) .yoast-faq-block .schema-faq-question {
	cursor: pointer;
	list-style: none;
	padding: 1.1rem 1.4rem;
	font-family: var(--wp--preset--font-family--display);
	font-weight: 500;
	font-size: 1.05rem;
	color: var(--wp--preset--color--text);
	background: transparent;
	border: none;
	text-align: left;
	width: 100%;
	transition: background 0.2s ease, color 0.2s ease;
}

body:not(.home) details summary::-webkit-details-marker {
	display: none;
}

body:not(.home) details summary:hover,
body:not(.home) .schema-faq-question:hover {
	background: var(--wp--preset--color--bg-panel);
	color: var(--wp--preset--color--accent-bright);
}

body:not(.home) details[open] summary {
	border-bottom: 1px solid var(--wp--preset--color--line);
	color: var(--wp--preset--color--accent-bright);
}

body:not(.home) details > *:not(summary),
body:not(.home) .schema-faq-answer,
body:not(.home) .rank-math-answer {
	padding: 1rem 1.4rem 1.35rem;
	color: var(--wp--preset--color--text-muted);
	line-height: 1.7;
}

/* Forms — Gravity Forms, WPForms, Contact Form 7, native */
body:not(.home) input[type="text"],
body:not(.home) input[type="email"],
body:not(.home) input[type="tel"],
body:not(.home) input[type="url"],
body:not(.home) input[type="number"],
body:not(.home) input[type="password"],
body:not(.home) input[type="search"],
body:not(.home) input[type="date"],
body:not(.home) select,
body:not(.home) textarea,
body:not(.home) .gform_wrapper input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]),
body:not(.home) .gform_wrapper select,
body:not(.home) .gform_wrapper textarea,
body:not(.home) .wpforms-field input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
body:not(.home) .wpforms-field select,
body:not(.home) .wpforms-field textarea,
body:not(.home) .wpcf7-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
body:not(.home) .wpcf7-form select,
body:not(.home) .wpcf7-form textarea {
	background: var(--wp--preset--color--bg-panel-2) !important;
	border: 1px solid var(--wp--preset--color--line) !important;
	border-radius: 0 !important;
	color: var(--wp--preset--color--text) !important;
	padding: 0.75rem 1rem !important;
	font-family: var(--wp--preset--font-family--body) !important;
	font-size: 15px !important;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

body:not(.home) input:focus,
body:not(.home) select:focus,
body:not(.home) textarea:focus {
	outline: 1px solid var(--wp--preset--color--accent) !important;
	border-color: var(--wp--preset--color--line-bright) !important;
}

body:not(.home) label,
body:not(.home) .gfield_label,
body:not(.home) .wpforms-field-label,
body:not(.home) .wpcf7-form label {
	color: var(--wp--preset--color--text-muted) !important;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 11px !important;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

body:not(.home) input[type="submit"],
body:not(.home) button[type="submit"],
body:not(.home) .gform_button,
body:not(.home) .wpforms-submit,
body:not(.home) .wpcf7-submit,
body:not(.home) .woocommerce button.button,
body:not(.home) .woocommerce a.button,
body:not(.home) .woocommerce #respond input#submit {
	font-family: var(--wp--preset--font-family--mono) !important;
	font-size: 12.5px !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	background: var(--wp--preset--color--accent-bright) !important;
	color: var(--wp--preset--color--bg-deep) !important;
	border: 1px solid var(--wp--preset--color--accent-bright) !important;
	border-radius: 0 !important;
	padding: 14px 28px !important;
	cursor: pointer;
	transition: background 0.25s ease, color 0.25s ease;
}

body:not(.home) input[type="submit"]:hover,
body:not(.home) button[type="submit"]:hover,
body:not(.home) .gform_button:hover,
body:not(.home) .wpforms-submit:hover,
body:not(.home) .wpcf7-submit:hover,
body:not(.home) .woocommerce button.button:hover,
body:not(.home) .woocommerce a.button:hover {
	background: transparent !important;
	color: var(--wp--preset--color--accent-bright) !important;
}

/* WooCommerce product/cart surfaces */
body:not(.home).woocommerce .woocommerce,
body:not(.home) .woocommerce-page .woocommerce {
	color: var(--wp--preset--color--text-muted);
}

body:not(.home) .woocommerce div.product .product_title,
body:not(.home) .woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--wp--preset--font-family--display);
	color: var(--wp--preset--color--text);
}

body:not(.home) .woocommerce table.shop_table {
	border-color: var(--wp--preset--color--line) !important;
	background: var(--wp--preset--color--bg-panel-2);
}

body:not(.home) .woocommerce table.shop_table th,
body:not(.home) .woocommerce table.shop_table td {
	border-color: var(--wp--preset--color--line) !important;
	color: var(--wp--preset--color--text-muted);
}

body:not(.home) .woocommerce-message,
body:not(.home) .woocommerce-info,
body:not(.home) .woocommerce-error {
	background: var(--wp--preset--color--bg-panel) !important;
	border-top-color: var(--wp--preset--color--accent) !important;
	color: var(--wp--preset--color--text) !important;
}

/* Enterprise accordion on pricing */
.za-enterprise {
	margin: 2.5rem 0 3rem;
}

.za-enterprise details {
	border: 1px solid var(--wp--preset--color--line) !important;
	border-radius: 0 !important;
	padding: 0 !important;
	background: var(--wp--preset--color--bg-panel-2) !important;
}

.za-enterprise summary {
	list-style: none;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 1.1rem 1.4rem;
}

.za-enterprise summary::-webkit-details-marker {
	display: none;
}

.za-enterprise #ent-title,
.za-enterprise summary strong {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 500;
	font-size: 1.15rem;
	color: var(--wp--preset--color--text) !important;
}

.za-enterprise .ent-sub {
	font-weight: 500 !important;
	opacity: 1 !important;
	font-size: 0.9rem !important;
	font-family: var(--wp--preset--font-family--mono);
	letter-spacing: 0.04em;
	color: var(--wp--preset--color--text-muted) !important;
}

.za-enterprise .ent-body {
	margin: 0 !important;
	padding: 0 1.4rem 1.4rem;
	border-top: 1px solid var(--wp--preset--color--line);
	padding-top: 1rem;
	color: var(--wp--preset--color--text-muted);
}

.za-enterprise .ent-list {
	margin: 0.5rem 0 1rem !important;
	padding-left: 1.15rem !important;
	color: var(--wp--preset--color--text-muted);
}

.za-enterprise .ent-cta {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
}

.za-enterprise .ent-btn,
.za-enterprise .ent-link {
	display: inline-block;
	padding: 0.75rem 1.25rem !important;
	border-radius: 0 !important;
	text-decoration: none !important;
	font-family: var(--wp--preset--font-family--mono) !important;
	font-size: 12px !important;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	font-weight: 500 !important;
}

.za-enterprise .ent-btn {
	background: var(--wp--preset--color--accent-bright) !important;
	color: var(--wp--preset--color--bg-deep) !important;
	border: 1px solid var(--wp--preset--color--accent-bright) !important;
}

.za-enterprise .ent-link {
	border: 1px solid var(--wp--preset--color--line-bright) !important;
	color: var(--wp--preset--color--text-muted) !important;
	background: transparent !important;
}

.za-enterprise .ent-btn:hover {
	background: transparent !important;
	color: var(--wp--preset--color--accent-bright) !important;
}

.za-enterprise .ent-link:hover {
	border-color: var(--wp--preset--color--accent) !important;
	color: var(--wp--preset--color--text) !important;
}

/* Search block */
body:not(.home) .wp-block-search__input {
	background: var(--wp--preset--color--bg-panel-2) !important;
	border: 1px solid var(--wp--preset--color--line) !important;
	border-radius: 0 !important;
	color: var(--wp--preset--color--text) !important;
}

body:not(.home) .wp-block-search__button {
	border-radius: 0 !important;
	background: var(--wp--preset--color--accent-bright) !important;
	color: var(--wp--preset--color--bg-deep) !important;
	font-family: var(--wp--preset--font-family--mono);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

/* Post cards / query loops */
body:not(.home) .wp-block-post-template .wp-block-post {
	background: var(--wp--preset--color--bg-panel-2);
	border: 1px solid var(--wp--preset--color--line);
	padding: 1.5rem;
}

body:not(.home) .wp-block-post-template .wp-block-post-title a {
	color: var(--wp--preset--color--text);
	text-decoration: none;
}

body:not(.home) .wp-block-post-template .wp-block-post-title a:hover {
	color: var(--wp--preset--color--accent-bright);
}

body:not(.home) .wp-block-post-excerpt {
	color: var(--wp--preset--color--text-muted);
}

@media (max-width: 900px) {
	.za-steps .za-steps-list {
		grid-template-columns: 1fr 1fr !important;
	}

	.za-tiles-grid {
		grid-template-columns: 1fr 1fr !important;
	}
}

@media (max-width: 860px) {
	.za-site-header {
		padding-left: 20px !important;
		padding-right: 20px !important;
		flex-wrap: wrap !important;
	}

	.za-site-header > .wp-block-navigation,
	.wp-site-blocks > header .za-site-header > .wp-block-navigation {
		position: static;
		left: auto;
		transform: none;
		margin-left: auto;
	}

	.za-site-header .wp-block-buttons {
		display: none;
	}

	.za-readout .wp-block-column {
		border-right: none;
		border-bottom: 1px solid var(--wp--preset--color--line);
	}

	.za-page-main .wp-block-post-content,
	body:not(.home) .wp-block-post-content {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
}

@media (max-width: 560px) {
	.za-steps .za-steps-list {
		grid-template-columns: 1fr !important;
	}

	.za-tiles-grid {
		grid-template-columns: 1fr !important;
	}

	.za-enterprise .ent-btn,
	.za-enterprise .ent-link {
		min-width: 100%;
		text-align: center;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	.wp-site-blocks > main,
	.wp-site-blocks > .za-hero {
		animation: none;
		will-change: auto;
	}

	.home .za-hero .wp-block-cover__inner-container > .wp-block-group > *,
	.home .za-readout > .wp-block-column,
	.home .za-panel {
		animation: none !important;
		transform: none !important;
		opacity: 1 !important;
	}

	.za-star animate {
		display: none;
	}
}

/* LCP: no page entrance fade on any page. */
.wp-site-blocks > main,
.wp-site-blocks > .za-hero,
.home .za-hero .wp-block-cover__inner-container > .wp-block-group > .za-eyebrow,
.home .za-hero .wp-block-cover__inner-container > .wp-block-group > h1,
.home .za-hero .wp-block-cover__inner-container > .wp-block-group > p:not(.za-eyebrow),
.home .za-hero .wp-block-cover__inner-container > .wp-block-group > .wp-block-buttons {
	animation: none !important;
	will-change: auto !important;
	opacity: 1 !important;
	transform: none !important;
}

/* =========================================================
   FINAL OVERRIDE — pricing / all tables must use Inter.
   Loaded last so it beats earlier theme rules AND page
   inline <style> blocks (which lack !important).
   ========================================================= */
.za-compare,
.za-compare .za-table,
.za-compare .za-row,
.za-compare .za-cell,
.za-compare .za-feature,
.za-compare .za-price,
.za-compare .za-deposit,
.za-compare .za-link,
.za-compare .za-sub,
.za-compare a:not(.za-btn),
.za-table,
.za-table .za-cell,
.za-table .za-feature,
.za-table .za-price,
.za-table .za-deposit,
.za-table .za-link,
.za-table a:not(.za-btn),
.za-site-snapshot,
.za-site-snapshot td,
.za-site-snapshot th,
.za-site-snapshot p,
body:not(.home) table,
body:not(.home) table td,
body:not(.home) table th,
body:not(.home) .woocommerce table.shop_table td,
body:not(.home) .woocommerce table.shop_table th {
	font-family: 'Inter', var(--wp--preset--font-family--body), sans-serif !important;
	letter-spacing: normal !important;
}

.za-compare .za-h,
.za-compare h2,
.za-compare h3,
.za-compare .za-head h3,
.za-site-snapshot h2 {
	font-family: 'Fraunces', var(--wp--preset--font-family--display), serif !important;
}

.za-compare .za-btn,
.za-compare a.za-btn,
.za-table .za-btn,
.za-table a.za-btn {
	font-family: 'Inter', var(--wp--preset--font-family--body), sans-serif !important;
	letter-spacing: 0.02em !important;
}

/* Pricing comparison table uses the technical mono typeface */
.za-compare,
.za-compare .za-table,
.za-compare .za-row,
.za-compare .za-cell,
.za-compare .za-feature,
.za-compare .za-price,
.za-compare .za-deposit,
.za-compare .za-link,
.za-compare .za-sub,
.za-compare a,
.za-table,
.za-table .za-row,
.za-table .za-cell,
.za-table .za-feature,
.za-table .za-price,
.za-table .za-deposit,
.za-table .za-link,
.za-table a,
.za-compare .za-btn,
.za-compare a.za-btn,
.za-table .za-btn,
.za-table a.za-btn,
.za-compare.za-compare .za-btn,
.za-compare.za-compare a.za-btn {
	font-family: 'JetBrains Mono', var(--wp--preset--font-family--mono), monospace !important;
	letter-spacing: 0 !important;
}

/* Keep the comparison section heading in the display face */
.za-compare .za-h,
.za-compare h2,
.za-compare h3,
.za-compare .za-head h3 {
	font-family: 'Fraunces', var(--wp--preset--font-family--display), serif !important;
}

/* Comparison intro copy stays in the site's default body font */
.za-compare.za-compare .za-sub {
	font-family: 'Inter', var(--wp--preset--font-family--body), sans-serif !important;
	letter-spacing: normal !important;
}

/* Pricing row labels are explicitly mono in both editor and front end */
.za-compare.za-compare .za-feature.za-feature,
.za-table.za-table .za-feature.za-feature,
.za-compare.za-compare [role="rowheader"] {
	font-family: 'JetBrains Mono', var(--wp--preset--font-family--mono), monospace !important;
	letter-spacing: 0 !important;
}

/* Pier sizing — center "See examples" CTAs (block attrs alone are unreliable on cached pages) */
.page-id-263 .wp-block-post-content > p:has(+ .wp-block-buttons) {
	text-align: center !important;
	max-width: none !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.page-id-263 .wp-block-post-content > .wp-block-buttons {
	display: flex !important;
	justify-content: center !important;
	flex-wrap: wrap;
	width: 100% !important;
	max-width: none !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* see server append HOSTING LIVE MATCH — local already rewritten above */

/* ---- Footer social links (child theme footer template part) ---- */
footer .za-footer-social,
footer .wp-block-social-links.za-footer-social {
	display: flex;
	justify-content: center;
	margin: 0 0 4px;
	padding-left: 0;
	gap: 12px;
	list-style: none;
}

footer .za-footer-social .wp-block-social-link,
footer .wp-block-social-links.za-footer-social .wp-block-social-link {
	list-style: none;
	margin: 0;
	padding: 0;
}

footer .za-footer-social .wp-block-social-link svg,
footer .wp-block-social-links.za-footer-social .wp-block-social-link svg {
	width: 22px;
	height: 22px;
	fill: var(--wp--preset--color--text-muted);
	transition: fill 0.2s ease, transform 0.2s ease;
}

footer .za-footer-social .wp-block-social-link:hover svg,
footer .wp-block-social-links.za-footer-social .wp-block-social-link:hover svg {
	fill: var(--wp--preset--color--accent-bright);
	transform: translateY(-1px);
}

footer .za-footer-social .wp-block-social-link-anchor,
footer .wp-block-social-links.za-footer-social .wp-block-social-link-anchor {
	border-radius: 999px;
	padding: 6px;
}

/* Mini-cart drawer must not sit in page flow when closed
   (WooCommerce drawer CSS can be dropped by cache/combine) */
.wc-block-components-drawer__screen-overlay--is-hidden {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
	height: 0 !important;
	overflow: hidden !important;
	position: fixed !important;
}

.wc-block-components-drawer__screen-overlay:not(.wc-block-components-drawer__screen-overlay--is-hidden) {
	position: fixed !important;
	inset: 0 !important;
	z-index: 100000 !important;
}

.wc-block-mini-cart__drawer[aria-hidden="true"] {
	display: none !important;
}

/* Pier Micro-FAQ answers — match Compact white text (small / standard / heavy) */
.page-id-268 .wp-block-post-content > p:has(> em),
.page-id-269 .wp-block-post-content > p:has(> em),
.page-id-274 .wp-block-post-content > p:has(> em) {
	color: var(--wp--preset--color--text) !important;
}

/* =========================================================
   Reserve a Pier / Formidable multi-page — mobile only
   ========================================================= */
@media (max-width: 782px) {
	/* Progress: show only the active step title (no overlapping labels) */
	.frm_rootline_group {
		margin-bottom: 1.25rem;
		/* Padding (not margin) so space for the absolute title cannot collapse. */
		padding-top: 2.35rem;
	}

	.frm_rootline_group .frm_page_bar.frm_show_titles {
		position: relative;
		display: flex !important;
		flex-wrap: nowrap !important;
		align-items: center;
		justify-content: space-between;
		gap: 0;
		/* Keep title outside the bar so Formidable's ::after connector
		   (top:14px on each step) cannot cut through the label. */
		padding-top: 0;
		margin-top: 0;
	}

	.frm_rootline_group .frm_page_bar .frm_rootline_title {
		display: none !important;
	}

	.frm_rootline_group .frm_page_bar .frm_current_page .frm_rootline_title {
		display: block !important;
		position: absolute;
		left: 0;
		right: 0;
		top: auto;
		bottom: calc(100% + 0.55rem);
		width: 100% !important;
		max-width: none !important;
		margin: 0;
		padding: 0;
		text-align: center;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		font-family: var(--wp--preset--font-family--body);
		font-size: 14px !important;
		font-weight: 600;
		letter-spacing: 0.02em;
		text-transform: none;
		color: var(--wp--preset--color--text) !important;
		line-height: 1.3;
		pointer-events: none;
	}

	.frm_rootline_group .frm_page_bar .frm_rootline_single {
		flex: 1 1 0;
		min-width: 0;
		/* Static so the absolute step title uses the bar as containing
		   block (full width). Relative on the step clipped it to ~50px
		   ("Orga…") under the heading. */
		position: static;
		z-index: 1;
	}

	/* Hide Formidable per-step connectors; draw one bar-level line instead
	   so it cannot cut through the title above. */
	.frm_rootline_group .frm_page_bar .frm_rootline_single::before,
	.frm_rootline_group .frm_page_bar .frm_rootline_single::after {
		display: none !important;
	}

	.frm_rootline_group .frm_page_bar.frm_show_lines::before {
		content: "" !important;
		position: absolute;
		left: 8%;
		right: 8%;
		top: 50%;
		height: 1px;
		margin-top: -0.5px;
		background: rgba(255, 255, 255, 0.18);
		z-index: 0;
		pointer-events: none;
	}

	.frm_rootline_group .frm_percent_complete,
	.frm_rootline_group .frm_pages_complete {
		font-size: 11px;
		letter-spacing: 0.04em;
	}

	/* Name row: stack First / Last on narrow screens */
	.frm_form_field.frm_first_half,
	.frm_form_field.frm_last_half,
	.frm_form_field.frm_half,
	.frm_form_field.frm_third,
	.frm_form_field.frm_two_thirds {
		width: 100% !important;
		max-width: 100% !important;
		float: none !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	/* Infrastructure Snapshot — inline CSS uses white-space:nowrap on labels,
	   which crushes value cells into a tall, sparse table on phones. */
	.za-site-snapshot {
		padding: 1.15rem 1.1rem 1.3rem !important;
		margin-bottom: 2rem !important;
	}

	.za-site-snapshot table,
	.za-site-snapshot tbody,
	.za-site-snapshot tr,
	.za-site-snapshot th,
	.za-site-snapshot td {
		display: block !important;
		width: 100% !important;
	}

	.za-site-snapshot tr {
		padding: 0.7rem 0 !important;
		border: none !important;
		border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
	}

	.za-site-snapshot tr:last-child {
		border-bottom: none;
	}

	.za-site-snapshot th {
		white-space: normal !important;
		width: auto !important;
		padding: 0 0 0.2rem !important;
		font-size: 11px !important;
		font-weight: 600;
		letter-spacing: 0.05em;
		text-transform: uppercase;
		line-height: 1.3;
		border: none !important;
		box-shadow: none !important;
	}

	.za-site-snapshot td {
		padding: 0 !important;
		font-size: 14px !important;
		line-height: 1.45 !important;
		border: none !important;
		box-shadow: none !important;
	}

	.za-site-snapshot tr:nth-child(odd) td,
	.za-site-snapshot tr:nth-child(odd) th,
	.za-site-snapshot tr:nth-child(even) td,
	.za-site-snapshot tr:nth-child(even) th {
		background: transparent !important;
	}

	/* Ground Stations / Request Proposal — tighter page rhythm */
	.page-id-400 .wp-block-post-content > h2:first-of-type,
	.page-id-400 .wp-block-post-content > .wp-block-heading:first-of-type {
		margin-top: 0.25rem !important;
		margin-bottom: 1rem !important;
		font-size: 1.55rem !important;
		line-height: 1.25 !important;
	}

	.page-id-400 .wp-block-post-content > .za-site-snapshot + h2,
	.page-id-400 .wp-block-post-content > .za-site-snapshot + .wp-block-heading {
		margin-top: 0.25rem !important;
		margin-bottom: 0.75rem !important;
	}
}

/* ZA mobile header compact + hide admin bar */
@media (max-width: 860px) {
	.za-site-header {
		padding-top: 12px !important;
		padding-bottom: 12px !important;
	}
	.za-site-header .wp-block-site-logo img,
	.za-site-header .custom-logo {
		width: 48px !important;
	}
}

@media screen and (max-width: 782px) {
	#wpadminbar { display: none !important; }
	html.admin-bar { margin-top: 0 !important; }
	body.admin-bar .za-site-header,
	body.admin-bar .wp-site-blocks > header { top: 0 !important; }
}


/* ZA mobile header cluster fix — icons stay clustered on the right */
@media (max-width: 860px) {
	.za-site-header {
		flex-wrap: nowrap !important;
	}
	.za-site-header > .wp-block-woocommerce-customer-account,
	.za-site-header > .wp-block-woocommerce-mini-cart,
	.za-site-header > .wc-block-mini-cart {
		margin-left: 0 !important;
	}
}


/* ZA hide admin bar front-end — hide WP toolbar on public pages while logged in */
body:not(.wp-admin) #wpadminbar {
	display: none !important;
}
html.admin-bar {
	margin-top: 0 !important;
}
body.admin-bar:not(.wp-admin) .za-site-header,
body.admin-bar:not(.wp-admin) .wp-site-blocks > header {
	top: 0 !important;
}


/* ZA center stats pill row */
.za-stats {
	margin-left: auto !important;
	margin-right: auto !important;
	width: fit-content !important;
	max-width: 100% !important;
	border-radius: 999px !important;
	box-sizing: border-box;
}
.za-stats-list {
	justify-content: center !important;
	align-items: center !important;
}
.page-id-83 .wp-block-post-content > .za-stats {
	margin-left: auto !important;
	margin-right: auto !important;
	width: fit-content !important;
	max-width: min(1100px, 100%) !important;
}


/* ZA hide mobile hamburger — account + cart only */
@media (max-width: 860px) {
	.za-site-header .wp-block-navigation__responsive-container-open {
		display: none !important;
	}
	.za-site-header > .wp-block-navigation,
	.wp-site-blocks > header .za-site-header > .wp-block-navigation {
		margin-left: 0 !important;
		width: 0 !important;
		min-width: 0 !important;
		flex: 0 0 0 !important;
		overflow: visible;
	}
	.za-site-header > .wp-block-woocommerce-customer-account {
		margin-left: auto !important;
	}
}


/* ZA restore mobile hamburger — undo hide */
@media (max-width: 860px) {
	.za-site-header .wp-block-navigation__responsive-container-open {
		display: flex !important;
	}
	.za-site-header > .wp-block-navigation,
	.wp-site-blocks > header .za-site-header > .wp-block-navigation {
		margin-left: auto !important;
		width: auto !important;
		min-width: 0 !important;
		flex: 0 0 auto !important;
		overflow: visible;
	}
	.za-site-header > .wp-block-woocommerce-customer-account,
	.za-site-header > .wp-block-woocommerce-mini-cart,
	.za-site-header > .wc-block-mini-cart {
		margin-left: 0 !important;
	}
}

/* ZA stats strip mobile fix — full-width rounded card, no capsule overflow */
@media (max-width: 782px) {
	.za-stats,
	.page-id-282 .za-stats,
	.page-id-83 .za-stats,
	.page-id-282 .wp-block-post-content > .za-stats,
	.page-id-83 .wp-block-post-content > .za-stats {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		margin-top: 0.5rem !important;
		margin-bottom: 1.25rem !important;
		padding: 0.75rem !important;
		border-radius: 24px !important;
		box-sizing: border-box !important;
	}

	.za-stats-list,
	.page-id-282 .za-stats-list {
		justify-content: center !important;
		align-items: center !important;
		gap: 8px !important;
	}

	.za-stats li,
	.page-id-282 .za-stats li {
		max-width: 100% !important;
		min-width: 0 !important;
		white-space: normal !important;
		box-sizing: border-box !important;
		font-size: 13px !important;
		line-height: 1.35 !important;
	}
}

/* Desktop/tablet: keep strip full-width of content, soft radius (not capsule) */
.za-stats {
	width: 100% !important;
	max-width: 100% !important;
	border-radius: 28px !important;
	box-sizing: border-box !important;
}
