.hero {
	position:relative;
	padding-top:clamp(2.5rem, 2rem + 3vw, 5rem);
	padding-bottom:clamp(3rem, 2.5rem + 3.5vw, 6rem);
	border-bottom:2px solid var(--border);
	overflow:hidden;
}

.hero-grid {
	display:grid;
	grid-template-columns:1fr;
	gap:var(--space-xl);
	align-items:start;
}

@media (min-width: 960px) {
	.hero-grid {
		grid-template-columns:minmax(0, 1.35fr) minmax(0, 1.15fr);
		gap:var(--space-2xl);
		align-items:center;
	}
}

.hero-content { min-width:0; }

.hero-stamp {
	display:inline-flex;
	align-items:center;
	gap:0.5rem;
	padding:0.35rem 0.75rem;
	background-color:var(--ink);
	color:var(--ink-inverse);
	font-family:var(--zugi-760);
	font-size:var(--fs-xs);
	font-weight:600;
	letter-spacing:0.06em;
	text-transform:uppercase;
	margin-bottom:var(--space-md);
	border-radius:var(--radius-xs);
}

.hero-stamp-dot {
	width:8px;
	height:8px;
	background-color:var(--accent);
	border-radius:50%;
	display:inline-block;
}

.hero-title {
	font-family:var(--zugi-044);
	font-size:var(--fs-huge);
	font-weight:700;
	line-height:0.94;
	letter-spacing:0.01em;
	text-transform:uppercase;
	color:var(--ink);
	margin-bottom:var(--space-lg);
	max-width:22ch;
	word-wrap:break-word;
}

.hero-lead {
	font-family:var(--zugi-3e0);
	font-size:var(--fs-md);
	line-height:var(--lh-snug);
	color:var(--ink);
	margin-bottom:var(--space-lg);
	max-width:52ch;
	font-weight:500;

}

.hero-facts-strip {
	display:grid;
	grid-template-columns:repeat(auto-fit, minmax(140px, 1fr));
	gap:var(--space-sm);
	margin-top:var(--space-xl);
	padding-top:var(--space-lg);
	border-top:1.5px solid var(--border);
}

.hero-fact-item {
	display:flex;
	flex-direction:column;
	gap:0.15rem;
}

.hero-fact-val {
	font-family:var(--zugi-760);
	font-size:var(--fs-lg);
	font-weight:600;
	color:var(--ink);
	line-height:1.1;
}

.hero-fact-lbl {
	font-family:var(--zugi-760);
	font-size:var(--fs-xs);
	text-transform:uppercase;
	letter-spacing:0.05em;
	color:var(--ink-muted);
}

.hero-media-wrap {
	position:relative;
	min-width:0;
}

.hero-figure {
	margin:0;
	position:relative;
	border:2px solid var(--ink);
	box-shadow:6px 6px 0 var(--ink);
	background-color:var(--bg-surface);
}

.hero-figure img {
	width:100%;
	height:auto;
	aspect-ratio:4 / 3;
	object-fit:cover;
	display:block;
}

@media (min-width: 960px) {
	.hero-figure img { aspect-ratio:16 / 11; }
}

.hero-figure-caption {
	padding:0.75rem 1rem;
	background-color:var(--bg-surface);
	border-top:1.5px solid var(--ink);
	font-family:var(--zugi-760);
	font-size:var(--fs-xs);
	color:var(--ink);
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:0.5rem;
}

.hero-figure-badge {
	background-color:var(--accent);
	color:var(--ink-inverse);
	padding:0.2rem 0.45rem;
	font-size:0.7rem;
	letter-spacing:0.05em;
	font-weight:600;
	text-transform:uppercase;
}

.page-header {
	padding-top:clamp(2.5rem, 2rem + 2.5vw, 4.5rem);
	padding-bottom:clamp(2rem, 1.5rem + 2vw, 3.5rem);
	border-bottom:2px solid var(--border);
	background-color:var(--bg);
}

.page-header--surface { background-color:var(--bg-surface); }

.page-header-title {
	font-family:var(--zugi-044);
	font-size:var(--fs-2xl);
	font-weight:700;
	line-height:0.98;
	letter-spacing:0.02em;
	text-transform:uppercase;
	color:var(--ink);
	margin-bottom:var(--space-sm);
	max-width:24ch;
}

.page-header-lead {
	font-family:var(--zugi-3e0);
	font-size:var(--fs-base);
	line-height:var(--lh-snug);
	color:var(--ink);
	max-width:64ch;
	margin-bottom:var(--space-md);
}

.page-header-meta {
	display:flex;
	flex-wrap:wrap;
	gap:var(--space-md);
	align-items:center;
	font-family:var(--zugi-760);
	font-size:var(--fs-xs);
	color:var(--ink-muted);
}

.page-header-meta-item {
	display:inline-flex;
	align-items:center;
	gap:0.35rem;
}

.offcenter-section {
	display:grid;
	grid-template-columns:minmax(0, 1fr);
	gap:var(--space-xl);
	align-items:start;
	max-width:100%;
}

@media (min-width: 900px) {
	.offcenter-section--2-1 {
		grid-template-columns:minmax(0, 1.85fr) minmax(0, 1.15fr);
		gap:var(--space-2xl);
	}

	.offcenter-section--1-2 {
		grid-template-columns:minmax(0, 1.15fr) minmax(0, 1.85fr);
		gap:var(--space-2xl);
	}
}

.full-bleed-duotone {
	position:relative;
	width:100%;
	min-height:clamp(380px, 45vh, 560px);
	display:flex;
	align-items:flex-end;
	background-color:var(--bg-deep);
	overflow:hidden;
	border-top:2px solid var(--ink);
	border-bottom:2px solid var(--ink);
}

.full-bleed-duotone-img {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	object-fit:cover;
	filter:contrast(135%) brightness(55%) sepia(40%) hue-rotate(340deg);
	opacity:0.72;
}

.full-bleed-duotone::after {
	content:"";
	position:absolute;
	inset:0;
	background:linear-gradient(180deg, rgba(38, 33, 28, 0.4) 0%, rgba(38, 33, 28, 0.9) 100%);
	pointer-events:none;
}

.full-bleed-duotone-content {

	position:relative;
	z-index:2;
	width:100%;
	padding-top:var(--space-2xl);
	padding-bottom:var(--space-2xl);
	color:var(--ink-inverse);
}

.full-bleed-duotone-quote {
	font-family:var(--zugi-044);
	font-size:var(--fs-xl);
	font-weight:700;
	line-height:1.05;
	text-transform:uppercase;
	color:var(--ink-inverse);
	max-width:28ch;
	margin-bottom:var(--space-sm);
}

.full-bleed-duotone-author {
	font-family:var(--zugi-760);
	font-size:var(--fs-sm);
	color:var(--accent-light);
	letter-spacing:0.05em;
	text-transform:uppercase;

	display:flex;
	align-items:center;
	gap:0.5rem;
}

.full-width-break-image {
	margin:var(--space-2xl) 0;
	border:2px solid var(--ink);
	box-shadow:4px 4px 0 var(--ink);
	background-color:var(--bg-surface);
	overflow:hidden;
}

.full-width-break-image img {
	width:100%;
	height:auto;
	max-height:520px;
	object-fit:cover;
	display:block;
}

.full-width-break-image figcaption {
	padding:0.75rem 1rem;
	background-color:var(--bg-surface);
	border-top:1.5px solid var(--border-dark);
	font-family:var(--zugi-760);
	font-size:var(--fs-xs);
	color:var(--ink);
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
	gap:0.5rem;
}

.inspection-route-card {
	background-color:var(--bg-surface);
	border:2px solid var(--border-dark);
	padding:clamp(1.25rem, 1rem + 1vw, 2.5rem);
	box-shadow:4px 4px 0 var(--border-dark);
	margin-top:var(--space-lg);
	border-radius:var(--radius-xs);
}

.inspection-svg-canvas {
	width:100%;
	height:auto;
	max-height:280px;
	margin:var(--space-md) 0 var(--space-lg);
	display:block;
	background-color:var(--bg);
	border:1.5px solid var(--border-dark);
	padding:var(--space-sm);
}

.route-step-path {
	fill:none;
	stroke:var(--ink);
	stroke-width:3;
	stroke-linecap:square;
	stroke-linejoin:miter;
	stroke-dasharray:1000;
	stroke-dashoffset:0;
	transition:stroke-dashoffset 0.1s linear;
}

.route-step-node {
	fill:var(--bg-surface);
	stroke:var(--ink);
	stroke-width:2.5;
	transition:fill var(--dur-fast) var(--ease-trade), stroke var(--dur-fast) var(--ease-trade);
}

.route-step-node.is-active {
	fill:var(--accent);
	stroke:var(--ink);
}

.inspection-steps-list {
	list-style:none;
	padding:0;
	margin:0;
	display:grid;
	grid-template-columns:1fr;
	gap:var(--space-md);
}

@media (min-width: 768px) {
	.inspection-steps-list { grid-template-columns:repeat(4, 1fr); }
}

.inspection-step-item {
	padding:var(--space-sm);
	background-color:var(--bg);
	border:1.5px solid var(--border-dark);
	border-left:4px solid var(--border-dark);
	transition:border-left-color var(--dur-fast) var(--ease-trade), background-color var(--dur-fast) var(--ease-trade);
}

.inspection-step-item.is-active {
	border-left-color:var(--accent);
	background-color:#bea181;
}

.inspection-step-title {
	font-family:var(--zugi-044);
	font-size:var(--fs-sm);
	font-weight:700;
	letter-spacing:0.05em;
	text-transform:uppercase;
	color:var(--ink);
	margin-bottom:0.25rem;
}

.inspection-step-desc {
	font-family:var(--zugi-3e0);
	font-size:var(--fs-xs);
	line-height:var(--lh-snug);
	color:var(--ink-muted);
	margin:0;
}

.calculator-wrapper {
	background-color:var(--bg-surface);
	border:2px solid var(--ink);
	box-shadow:4px 4px 0 var(--ink);
	padding:clamp(1rem, 0.75rem + 1vw, 2.5rem);
	margin-top:var(--space-xl);
	border-radius:var(--radius-xs);
	max-width:100%;
	box-sizing:border-box;
}

.calculator-header {
	border-bottom:2px solid var(--ink);
	padding-bottom:var(--space-md);
	margin-bottom:var(--space-lg);
}

.calculator-title {
	font-family:var(--zugi-044);
	font-size:var(--fs-lg);
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:0.03em;
	color:var(--ink);
	margin-bottom:0.25rem;
}

.calculator-formula-display {
	font-family:var(--zugi-760);
	font-size:var(--fs-xs);
	background-color:var(--ink);
	color:var(--ink-inverse);
	padding:0.4rem 0.65rem;
	border-radius:var(--radius-xs);
	display:inline-block;
	margin-top:var(--space-xs);
}

.calculator-layout {
	display:grid;
	grid-template-columns:minmax(0, 1fr);
	gap:var(--space-xl);
	width:100%;
}

@media (min-width: 860px) {
	.calculator-layout { grid-template-columns:minmax(0, 1.4fr) minmax(0, 1fr); }
}

.calc-inputs {
	display:flex;
	flex-direction:column;
	gap:var(--space-md);
	min-width:0;
	max-width:100%;
}

.calc-input-group {
	display:flex;
	flex-direction:column;
	gap:0.35rem;
	min-width:0;
	max-width:100%;
}

.calc-label {
	font-family:var(--zugi-760);
	font-size:var(--fs-xs);
	font-weight:600;
	text-transform:uppercase;
	letter-spacing:0.05em;
	color:var(--ink);
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	min-width:0;
	max-width:100%;
	overflow-wrap:break-word;
	word-break:break-word;
}

.calc-select,
.calc-input {
	min-height:46px;
	width:100%;
	max-width:100%;
	box-sizing:border-box;
	padding:0.65rem 0.85rem;
	background-color:var(--bg);
	border:1.5px solid var(--border-dark);
	border-radius:var(--radius-xs);
	font-family:var(--zugi-760);
	font-size:var(--fs-base);
	color:var(--ink);
}

.calc-select:hover,
.calc-input:hover { border-color:var(--ink); }

.calc-select:focus,
.calc-input:focus {
	outline:none;
	border-color:var(--accent);
	box-shadow:0 0 0 3px var(--accent-alpha);
}

.calc-range-wrapper {
	display:flex;
	align-items:center;
	gap:var(--space-md);
	min-width:0;
	max-width:100%;
}

.calc-range {
	flex:1;
	min-width:0;
	height:8px;
	accent-color:var(--accent);
	cursor:pointer;
}

.calc-range-value {
	font-family:var(--zugi-760);
	font-size:var(--fs-base);
	font-weight:600;
	min-width:60px;
	text-align:right;
	color:var(--ink);
}

.calc-results-card {
	background-color:var(--ink);
	color:var(--ink-inverse);
	padding:var(--space-lg);
	border:2px solid var(--border-dark);
	box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.4);
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	gap:var(--space-md);
	min-width:0;
	max-width:100%;
}

.calc-result-lead-label {
	font-family:var(--zugi-760);
	font-size:var(--fs-xs);
	text-transform:uppercase;
	letter-spacing:0.06em;
	color:var(--ink-inverse-muted);
}

.calc-output-numeral {
	font-family:var(--zugi-044);
	font-size:var(--fs-numeral);
	font-weight:700;
	line-height:0.92;
	color:var(--accent-light);
	letter-spacing:-0.02em;
	word-break:break-word;
	overflow-wrap:break-word;
	max-width:100%;
}

.calc-output-unit {
	font-family:var(--zugi-760);
	font-size:var(--fs-base);
	color:var(--ink-inverse);
	margin-left:0.35rem;
	overflow-wrap:break-word;
	max-width:100%;
}

.calc-details-list {
	list-style:none;
	padding:0;
	margin:var(--space-md) 0 0 0;
	border-top:1px solid var(--border-dark);
	padding-top:var(--space-sm);
	display:flex;
	flex-direction:column;
	gap:0.45rem;
	font-family:var(--zugi-760);
	font-size:var(--fs-xs);
	color:var(--ink-inverse-muted);
}

.calc-details-list li {
	display:block;
	margin:0;
}

.calc-details-list li > span {
	display:block;
	width:100%;
}

.calc-details-list li > strong {
	display:block;
	width:100%;
}

@media (min-width: 480px) {
	.calc-details-list li {
		display:flex;
		flex-direction:column;
		justify-content:flex-start;
		align-items:flex-start;
		gap:0.25rem;
	}
}

.calc-details-list strong { color:var(--ink-inverse); }

.calc-disclaimer {
	font-family:var(--zugi-3e0);
	font-size:var(--fs-xs);
	color:var(--ink-inverse-muted);
	line-height:var(--lh-snug);
	margin:0;
	padding-top:var(--space-xs);
	border-top:1px dashed var(--border-dark);
	max-width:100%;
	overflow-wrap:break-word;
}

.rates-catalogue-grid {
	display:grid;
	grid-template-columns:1fr;
	gap:var(--space-xl);
	margin-top:var(--space-xl);
}

@media (min-width: 900px) {
	.rates-catalogue-grid { grid-template-columns:repeat(3, 1fr); }
}

.rate-card {
	background-color:var(--bg-surface);
	border:2px solid var(--ink);
	box-shadow:4px 4px 0 var(--ink);
	display:flex;
	flex-direction:column;
	border-radius:var(--radius-xs);
	position:relative;
	transition:transform var(--dur-fast) var(--ease-trade), box-shadow var(--dur-fast) var(--ease-trade);
}

.rate-card:hover {
	transform:translateY(-2px);
	box-shadow:6px 6px 0 var(--ink);
}

.rate-card-head {
	padding:var(--space-lg);
	border-bottom:2px solid var(--ink);
	background-color:var(--bg);
}

.rate-card-title {
	font-family:var(--zugi-044);
	font-size:var(--fs-md);
	font-weight:700;
	letter-spacing:0.04em;
	text-transform:uppercase;
	color:var(--ink);
	margin-bottom:var(--space-xs);
}

.rate-card-price {
	font-family:var(--zugi-760);
	font-size:var(--fs-xl);
	font-weight:600;
	color:var(--accent);
	line-height:1;
}

.rate-card-body {
	padding:var(--space-lg);
	flex:1;
	display:flex;
	flex-direction:column;
	gap:var(--space-md);
}

.rate-card-body p {
	font-size:var(--fs-sm);
	line-height:var(--lh-snug);
	color:var(--ink);
	margin:0;
}

.rate-card-specs {
	list-style:none;
	padding:0;
	margin:0;
	display:flex;
	flex-direction:column;
	gap:0.35rem;
	border-top:1.5px solid var(--border);
	padding-top:var(--space-sm);
	font-family:var(--zugi-760);
	font-size:var(--fs-xs);
	color:var(--ink-muted);
}

.rate-card-specs li {
	display:flex;
	align-items:center;
	gap:0.4rem;
	margin:0;
}

.rate-card-specs .icon {
	color:var(--accent);
	width:1rem;
	height:1rem;
}

.rate-card-foot {
	padding:var(--space-md) var(--space-lg);
	border-top:1.5px solid var(--ink);
	background-color:var(--bg-surface);
}

.pricing-factors-box {
	background-color:var(--bg-surface);
	border:2px solid var(--border-dark);
	padding:var(--space-xl);
	margin-top:var(--space-2xl);
	box-shadow:3px 3px 0 var(--border-dark);
}

.pricing-factors-title {
	font-family:var(--zugi-044);
	font-size:var(--fs-md);
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:0.05em;
	margin-bottom:var(--space-md);
	color:var(--ink);
}

.pricing-factors-grid {
	display:grid;
	grid-template-columns:1fr;
	gap:var(--space-md);
}

@media (min-width: 640px) {
	.pricing-factors-grid { grid-template-columns:repeat(2, 1fr); }
}

@media (min-width: 1024px) {
	.pricing-factors-grid { grid-template-columns:repeat(3, 1fr); }
}

.pricing-factor-item {
	padding:var(--space-sm);
	background-color:var(--bg);
	border:1px solid var(--border);
	border-radius:var(--radius-xs);
}

.pricing-factor-name {
	font-family:var(--zugi-760);
	font-size:var(--fs-xs);
	font-weight:600;
	text-transform:uppercase;
	color:var(--accent-dark);
	margin-bottom:0.25rem;
}

.pricing-factor-desc {
	font-size:var(--fs-xs);
	line-height:var(--lh-snug);
	color:var(--ink-muted);
	margin:0;
}

.warranty-block {
	background-color:var(--bg-deep);
	color:var(--ink-inverse);
	border:2px solid var(--ink);
	box-shadow:5px 5px 0 var(--ink);
	padding:clamp(1.5rem, 1.25rem + 1.5vw, 3rem);
	margin-top:var(--space-2xl);
	border-radius:var(--radius-xs);
}

.warranty-block-header {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:space-between;
	gap:var(--space-md);
	margin-bottom:var(--space-lg);
	border-bottom:2px solid var(--border-dark);
	padding-bottom:var(--space-md);
}

.warranty-block-badge {
	background-color:var(--accent);
	color:var(--ink-inverse);
	font-family:var(--zugi-760);
	font-size:var(--fs-xs);
	font-weight:600;
	text-transform:uppercase;
	letter-spacing:0.05em;
	padding:0.35rem 0.75rem;
	display:inline-flex;
	align-items:center;
	gap:0.4rem;
}

.warranty-block p { color:var(--ink-inverse-muted); }

.warranty-block strong { color:var(--ink-inverse); }

.inventory-grid {
	display:grid;
	grid-template-columns:1fr;
	gap:var(--space-lg);
	margin-top:var(--space-xl);
}

@media (min-width: 768px) {
	.inventory-grid { grid-template-columns:repeat(2, 1fr); }
}

.inventory-item {
	background-color:var(--bg-surface);
	border:1.5px solid var(--border-dark);
	padding:var(--space-md);
	border-radius:var(--radius-xs);
	box-shadow:2px 2px 0 var(--border-dark);
}

.inventory-item-title {
	font-family:var(--zugi-044);
	font-size:var(--fs-sm);
	font-weight:700;
	letter-spacing:0.04em;
	text-transform:uppercase;
	color:var(--ink);
	margin-bottom:0.35rem;
	display:flex;
	align-items:center;
	gap:0.4rem;
}

.inventory-item-desc {
	font-size:var(--fs-xs);
	line-height:var(--lh-snug);
	color:var(--ink-muted);
	margin:0;
}

.profile-card {
	background-color:var(--bg-surface);
	border:2px solid var(--ink);
	box-shadow:4px 4px 0 var(--ink);
	padding:clamp(1.25rem, 1rem + 1vw, 2.5rem);
}

.profile-facts-list {
	list-style:none;
	padding:0;
	margin:var(--space-md) 0 0 0;
	display:grid;
	grid-template-columns:1fr;
	gap:var(--space-xs);
}

.profile-fact-row {
	display:flex;
	justify-content:space-between;
	padding:0.5rem 0;
	border-bottom:1px solid var(--border);
	font-family:var(--zugi-760);
	font-size:var(--fs-xs);
}

.profile-fact-row:last-child { border-bottom:none; }

.profile-fact-key {
	color:var(--ink-muted);
	text-transform:uppercase;
}

.profile-fact-val {
	font-weight:600;
	color:var(--ink);
	text-align:right;
}

.dated-rail-layout {
	display:grid;
	grid-template-columns:1fr;
	gap:var(--space-xl);
	margin-top:var(--space-xl);
}

@media (min-width: 900px) {
	.dated-rail-layout {
		grid-template-columns:240px minmax(0, 1fr);
		gap:var(--space-2xl);
	}
}

.dated-rail-aside { position:relative; }

.dated-rail-sticky {
	position:sticky;
	top:6rem;
	background-color:var(--bg-surface);
	border:2px solid var(--ink);
	box-shadow:3px 3px 0 var(--ink);
	padding:var(--space-md);
	border-radius:var(--radius-xs);
}

@media (max-width: 899px) {
	.dated-rail-sticky {
		position:static;
		display:flex;
		flex-wrap:wrap;
		gap:var(--space-sm);
		justify-content:space-between;
	}
}

.dated-rail-title {
	font-family:var(--zugi-044);
	font-size:var(--fs-sm);
	font-weight:700;
	letter-spacing:0.05em;
	text-transform:uppercase;
	color:var(--ink);
	margin-bottom:var(--space-sm);
	border-bottom:1.5px solid var(--border-dark);
	padding-bottom:0.25rem;
}

.dated-rail-list {
	list-style:none;
	padding:0;
	margin:0;
	display:flex;
	flex-direction:column;
	gap:var(--space-sm);
}

@media (max-width: 899px) {
	.dated-rail-list {
		flex-direction:row;
		flex-wrap:wrap;
		gap:var(--space-md);
		width:100%;
	}
}

.dated-rail-item {
	border-left:3px solid var(--accent);
	padding-left:var(--space-xs);
	margin:0;
}

.dated-rail-date {
	font-family:var(--zugi-760);
	font-size:var(--fs-xs);
	font-weight:600;
	color:var(--ink);
	display:block;
}

.dated-rail-label {
	font-family:var(--zugi-3e0);
	font-size:0.75rem;
	color:var(--ink-muted);
	display:block;
}

.dated-rail-content { min-width:0; }

.legal-section-block {
	margin-bottom:var(--space-2xl);
	padding-bottom:var(--space-xl);
	border-bottom:1.5px solid var(--border);
}

.legal-section-block:last-child {
	border-bottom:none;
	margin-bottom:0;
	padding-bottom:0;
}

.legal-section-block h2 {
	font-family:var(--zugi-044);
	font-size:var(--fs-lg);
	font-weight:700;
	letter-spacing:0.03em;
	text-transform:uppercase;
	color:var(--ink);
	margin-bottom:var(--space-sm);
}

.legal-section-block h3 {
	font-family:var(--zugi-044);
	font-size:var(--fs-md);
	font-weight:600;
	letter-spacing:0.03em;
	text-transform:uppercase;
	color:var(--ink);
	margin-top:var(--space-lg);
	margin-bottom:var(--space-xs);
}

.plain-questions-wrap {
	display:flex;
	flex-direction:column;
	gap:var(--space-2xl);
	max-width:840px;
	margin-top:var(--space-xl);
}

.plain-question-unit {
	background-color:var(--bg-surface);
	border:2px solid var(--border-dark);
	box-shadow:3px 3px 0 var(--border-dark);
	padding:clamp(1.25rem, 1rem + 1vw, 2.25rem);
	border-radius:var(--radius-xs);
}

.plain-question-title {
	font-family:var(--zugi-044);
	font-size:var(--fs-lg);
	font-weight:700;
	line-height:1.05;
	letter-spacing:0.02em;
	text-transform:uppercase;
	color:var(--ink);
	margin-bottom:var(--space-md);
	border-bottom:2px solid var(--ink);
	padding-bottom:var(--space-xs);
}

.plain-question-answer {
	font-family:var(--zugi-3e0);
	font-size:var(--fs-base);
	line-height:var(--lh-body);
	color:var(--ink);
}

.plain-question-answer p:last-child { margin-bottom:0; }

.terms-sticky-layout {
	display:grid;
	grid-template-columns:1fr;
	gap:var(--space-xl);
	margin-top:var(--space-xl);
}

@media (min-width: 960px) {
	.terms-sticky-layout {
		grid-template-columns:260px minmax(0, 1fr);
		gap:var(--space-2xl);
	}
}

.terms-nav-panel { position:relative; }

.terms-nav-sticky {
	position:sticky;
	top:6rem;
	background-color:var(--bg-surface);
	border:2px solid var(--ink);
	box-shadow:3px 3px 0 var(--ink);
	padding:var(--space-md);
	border-radius:var(--radius-xs);
	max-height:calc(100vh - 8rem);
	overflow-y:auto;
}

@media (max-width: 959px) {
	.terms-nav-panel { display:none; }
}

.terms-mobile-jump {
	display:none;
	margin-bottom:var(--space-lg);
	padding:var(--space-sm);
	background-color:var(--bg-surface);
	border:2px solid var(--ink);
	border-radius:var(--radius-xs);
}

@media (max-width: 959px) {
	.terms-mobile-jump {
		display:flex;
		flex-direction:column;
		gap:var(--space-xs);
	}
}

.terms-jump-label {
	font-family:var(--zugi-760);
	font-size:var(--fs-xs);
	font-weight:600;
	text-transform:uppercase;
	letter-spacing:0.05em;
	color:var(--ink);
}

.terms-jump-select {
	min-height:44px;
	padding:0.5rem 0.75rem;
	background-color:var(--bg);
	border:1.5px solid var(--border-dark);
	font-family:var(--zugi-760);
	font-size:var(--fs-sm);
	color:var(--ink);
}

.terms-nav-title {
	font-family:var(--zugi-044);
	font-size:var(--fs-sm);
	font-weight:700;
	letter-spacing:0.05em;
	text-transform:uppercase;
	color:var(--ink);
	margin-bottom:var(--space-sm);
	border-bottom:1.5px solid var(--border-dark);
	padding-bottom:0.25rem;
}

.terms-nav-list {
	list-style:none;
	padding:0;
	margin:0;
	display:flex;
	flex-direction:column;
	gap:0.25rem;
}

.terms-nav-link {
	font-family:var(--zugi-760);
	font-size:var(--fs-xs);
	color:var(--ink-muted);
	text-decoration:none;
	padding:0.35rem 0.5rem;
	min-height:38px;
	display:flex;
	align-items:center;
	border-radius:var(--radius-xs);
	transition:color var(--dur-fast) var(--ease-trade), background-color var(--dur-fast) var(--ease-trade);
}

.terms-nav-link:hover {
	color:var(--accent);
	background-color:var(--bg);
}

.terms-nav-link:active { background-color:var(--border); }

.terms-nav-link.is-active {
	background-color:var(--ink);
	color:var(--ink-inverse);
	font-weight:600;
}

.terms-nav-link:focus-visible {
	outline:2px solid var(--accent);
	outline-offset:2px;
}

.terms-content { min-width:0; }

.terms-clause {
	margin-bottom:var(--space-2xl);
	padding-bottom:var(--space-xl);
	border-bottom:1.5px solid var(--border);
}

.terms-clause:last-child {
	border-bottom:none;
	margin-bottom:0;
	padding-bottom:0;
}

.terms-clause-head {
	display:flex;
	align-items:baseline;
	gap:var(--space-sm);
	margin-bottom:var(--space-sm);
}

.terms-clause-number {
	font-family:var(--zugi-760);
	font-size:var(--fs-sm);
	font-weight:700;
	color:#ffa599;
	background-color:var(--ink);
	padding:0.2rem 0.5rem;
	border-radius:var(--radius-xs);
}

.terms-clause-title {
	font-family:var(--zugi-044);
	font-size:var(--fs-lg);
	font-weight:700;
	letter-spacing:0.02em;
	text-transform:uppercase;
	color:var(--ink);
}

.accordion-group {
	display:flex;
	flex-direction:column;
	gap:var(--space-sm);
	margin-top:var(--space-lg);
}

.accordion-item {
	background-color:var(--bg-surface);
	border:1.5px solid var(--border-dark);
	border-radius:var(--radius-xs);
	box-shadow:2px 2px 0 var(--border-dark);
}

.accordion-trigger {
	width:100%;
	display:flex;
	justify-content:space-between;
	align-items:center;
	padding:var(--space-md);
	background:transparent;
	border:none;
	font-family:var(--zugi-044);
	font-size:var(--fs-base);
	font-weight:700;
	letter-spacing:0.03em;
	text-transform:uppercase;
	text-align:left;
	color:var(--ink);
	cursor:pointer;
	min-height:48px;
	gap:var(--space-md);
	transition:background-color var(--dur-fast) var(--ease-trade);
}

.accordion-trigger:hover { background-color:var(--bg); }

.accordion-trigger:focus-visible {
	outline:2px solid var(--accent);
	outline-offset:2px;
}

.accordion-icon {
	flex-shrink:0;
	width:1.25rem;
	height:1.25rem;
	transition:transform var(--dur-fast) var(--ease-trade);
}

.accordion-item.is-expanded .accordion-icon { transform:rotate(180deg); }

.accordion-panel {
	padding:0 var(--space-md) var(--space-md);
	display:none;
	font-family:var(--zugi-3e0);
	font-size:var(--fs-base);
	line-height:var(--lh-body);
	color:var(--ink);
}

.accordion-item.is-expanded .accordion-panel { display:block; }

.error-page-wrap {
	min-height:60vh;
	display:flex;
	flex-direction:column;
	justify-content:center;
	padding:var(--space-3xl) 0;
}

.error-code {
	font-family:var(--zugi-044);
	font-size:clamp(5rem, 4rem + 6vw, 10rem);
	font-weight:700;
	line-height:0.88;
	color:var(--accent);
	letter-spacing:-0.02em;
	margin-bottom:var(--space-sm);
}

.error-title {
	font-family:var(--zugi-044);
	font-size:var(--fs-xl);
	font-weight:700;
	text-transform:uppercase;
	color:var(--ink);
	margin-bottom:var(--space-md);
}

.error-desc {
	font-family:var(--zugi-3e0);
	font-size:var(--fs-base);
	max-width:50ch;
	margin-bottom:var(--space-xl);
}

.contact-direct-card {
	background-color:var(--bg-surface);
	border:2px solid var(--ink);
	box-shadow:4px 4px 0 var(--ink);
	padding:var(--space-xl);
	border-radius:var(--radius-xs);
	display:flex;
	flex-direction:column;
	gap:var(--space-lg);
}

.contact-direct-row {
	display:flex;
	align-items:flex-start;
	gap:var(--space-md);
}

.contact-direct-icon {
	width:44px;
	height:44px;
	background-color:var(--ink);
	color:var(--ink-inverse);
	display:flex;
	align-items:center;
	justify-content:center;
	flex-shrink:0;
	border-radius:var(--radius-xs);
}

.contact-direct-info {
	display:flex;
	flex-direction:column;
	gap:0.15rem;
}

.contact-direct-title {
	font-family:var(--zugi-760);
	font-size:var(--fs-xs);
	font-weight:600;
	text-transform:uppercase;
	color:var(--ink-muted);
}

.contact-direct-val {
	font-family:var(--zugi-3e0);
	font-size:var(--fs-base);
	color:var(--ink);
	font-weight:600;
}

.contact-direct-val a {
	color:var(--ink);
	text-decoration:underline;
}

.contact-direct-val a:hover { color:var(--accent); }

.contact-badge-strip {
	display:flex;
	flex-wrap:wrap;
	gap:var(--space-xs);
	margin-top:var(--space-sm);
}
