


/* Lead Story / Hero Scene */
.front-lead {
	border-bottom:var(--border-thick);
	background-color:var(--ground);
	position:relative;
	overflow:hidden;
	padding:var(--space-lg) 0 var(--space-xl) 0;
}


.front-lead__grid {
	display:grid;
	grid-template-columns:1.55fr 1fr;
	gap:var(--space-lg);
	align-items:stretch;
}


@media (max-width: 980px) {
	.front-lead__grid { grid-template-columns:1fr; }
}


.front-lead__story {
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	background-color:var(--surface-card);
	border:var(--border-thick);
	border-radius:var(--radius-xs);
	padding:var(--space-lg);
	position:relative;
	box-shadow:var(--shadow-flat);
}


.front-lead__meta-row {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:space-between;
	gap:var(--space-xs);
	margin-bottom:var(--space-md);
	padding-bottom:var(--space-xs);
	border-bottom:var(--border-hairline);
	font-family:var(--beki-391);
	font-size:var(--text-xs);
	color:var(--steel);
}


.front-lead__title {
	font-family:var(--beki-f2b);
	font-size:var(--text-3xl);
	font-weight:700;
	line-height:1.08;
	letter-spacing:var(--tracking-tight);
	color:var(--ink);
	margin-bottom:var(--space-md);
}


.front-lead__dek {
	font-size:var(--text-md);
	line-height:var(--leading-snug);
	color:var(--ink);
	margin-bottom:var(--space-lg);
	max-width:65ch;
	font-weight:500;
}


.front-lead__metrics {
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:1px;
	background-color:var(--line);
	border:var(--border-thick);
	border-radius:var(--radius-xs);
	overflow:hidden;
	margin-top:auto;
	margin-bottom:var(--space-md);
}


@media (max-width: 600px) {
	.front-lead__metrics { grid-template-columns:1fr; }
}


.front-lead__metric-cell {
	background-color:#FFF;

	padding:var(--space-sm);
	display:flex;
	flex-direction:column;
	gap:0.2rem;
}


.front-lead__metric-label {
	font-family:var(--beki-391);
	font-size:11px;
	font-weight:700;
	color:var(--steel);
	text-transform:uppercase;

	letter-spacing:var(--tracking-wide);
}


.front-lead__metric-val {
	font-family:var(--beki-391);
	font-size:var(--text-base);
	font-weight:700;
	color:var(--accent);
}


/* Secondary Modular Rail & Dispatch Widget */
.front-lead__rail {
	display:flex;
	flex-direction:column;

	gap:var(--space-md);
}


.rail-dispatch-card {
	background-color:var(--surface-dark);
	color:var(--ink-light);
	border:var(--border-thick);
	border-radius:var(--radius-xs);
	padding:var(--space-md);
	display:flex;
	flex-direction:column;
	gap:var(--space-sm);
	box-shadow:var(--shadow-flat);
}


.rail-dispatch-card__header {
	display:flex;
	align-items:center;
	justify-content:space-between;
	border-bottom:1px solid rgba(244, 238, 229, 0.2);
	padding-bottom:0.5rem;
}


.rail-dispatch-card__title {
	font-family:var(--beki-f2b);
	font-size:var(--text-sm);
	font-weight:700;
	text-transform:uppercase;
	color:#FFF;
	letter-spacing:var(--tracking-wide);
	margin:0;
}


.rail-dispatch-card__status {
	display:inline-flex;
	align-items:center;
	gap:0.35rem;
	font-family:var(--beki-391);
	font-size:11px;
	color:#8FD892;
}


.rail-dispatch-card__body p {
	font-size:var(--text-sm);
	line-height:var(--leading-normal);
	color:rgba(244, 238, 229, 0.85);
	margin-bottom:var(--space-sm);
}


.rail-bullet-list {
	list-style:none;
	margin:0 0 var(--space-sm) 0;
	padding:0;
	display:flex;
	flex-direction:column;
	gap:0.45rem;
	font-family:var(--beki-391);
	font-size:var(--text-xs);
}


.rail-bullet-list li {
	display:flex;
	align-items:baseline;
	gap:0.45rem;
	color:rgba(244, 238, 229, 0.9);
}


.rail-bullet-list li::before {
	content:"■";
	color:var(--accent-surface);
	font-size:8px;
}


/* Secondary Editorial Cards Grid */
.front-modular-grid {
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:var(--space-md);
	margin-top:var(--space-xl);
	margin-bottom:var(--space-xl);
}


@media (max-width: 960px) {
	.front-modular-grid { grid-template-columns:1fr; }
}


.editorial-tile {
	background-color:var(--surface-card);
	border:var(--border-thick);
	border-radius:var(--radius-xs);
	padding:var(--space-md);
	display:flex;
	flex-direction:column;
	position:relative;
	transition:transform var(--dur-normal) var(--ease-spring), border-color var(--dur-fast) ease, box-shadow var(--dur-fast) ease;
	box-shadow:var(--shadow-flat);
}


.editorial-tile:hover {
	border-color:var(--accent);
	transform:translateY(-2px);
	box-shadow:var(--shadow-lift);
}


.editorial-tile__badge-row {
	display:flex;
	align-items:center;
	justify-content:space-between;
	margin-bottom:var(--space-sm);
}


.editorial-tile__title {
	font-family:var(--beki-f2b);
	font-size:var(--text-lg);
	font-weight:700;
	line-height:1.2;
	margin-bottom:var(--space-xs);
	color:var(--ink);
}


.editorial-tile__body {
	font-size:var(--text-sm);
	line-height:var(--leading-normal);
	color:var(--ink);
	margin-bottom:var(--space-md);
	flex-grow:1;
}


.editorial-tile__rate-foot {
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding-top:var(--space-xs);
	border-top:var(--border-hairline);
	font-family:var(--beki-391);
	font-size:var(--text-xs);
}


.editorial-tile__rate-val {
	font-weight:700;
	color:var(--accent);
	font-size:var(--text-sm);
}



.parallax-hero-stage {
	position:relative;
	width:100%;
	border-bottom:var(--border-thick);
	background-color:var(--ground);
	overflow:hidden;
	padding:var(--space-xl) 0 var(--space-2xl) 0;
}


.parallax-scene {
	position:relative;
	min-height:480px;
	display:grid;
	grid-template-columns:1.2fr 1fr;
	gap:var(--space-xl);
	align-items:center;
}


@media (max-width: 900px) {
	.parallax-scene {
		grid-template-columns:1fr;
		min-height:auto;
	}
}


.parallax-layer {
	position:relative;
	will-change:transform;
}


.parallax-layer--bg { z-index:1; }


.parallax-layer--fg { z-index:2; }


.parallax-frame {
	position:relative;
	border:var(--border-thick);
	border-radius:var(--radius-xs);
	background-color:var(--surface-card);
	box-shadow:var(--shadow-heavy);
	overflow:hidden;
}


.parallax-frame img {
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
}


.parallax-tag-stamp {
	position:absolute;
	bottom:1rem;
	left:1rem;
	background-color:var(--surface-dark);
	color:#FFF;
	padding:0.4rem 0.8rem;
	font-family:var(--beki-391);
	font-size:11px;
	border:1px solid rgba(244, 238, 229, 0.4);
	border-radius:var(--radius-xs);
	z-index:5;
	box-shadow:var(--shadow-flat);
}


@media (prefers-reduced-motion: reduce) {
	.parallax-layer {
		transform:none !important;
		will-change:auto !important;
	}
}



.job-case {
	padding-top:var(--space-2xl);
	padding-bottom:var(--space-2xl);
	border-bottom:var(--border-thick);
	background-color:var(--ground);
}


.job-case:nth-of-type(even) { background-color:#E2D7C6; }


.job-case__container {
	width:100%;
	max-width:var(--site-max-width);
	margin:0 auto;
	padding:0 var(--page-gutter);
}


.job-case__heading {
	font-family:var(--beki-f2b);
	font-size:var(--text-2xl);
	font-weight:700;
	line-height:1.14;
	letter-spacing:var(--tracking-tight);
	color:var(--ink);
	margin-bottom:var(--space-md);
	max-width:960px;
}


.job-case__narrative {
	font-family:var(--beki-1d6);
	font-size:var(--text-base);
	line-height:var(--leading-loose);
	color:var(--ink);
	max-width:var(--prose-max-width);
	margin-bottom:var(--space-lg);
}


.job-case__narrative p { margin-bottom:var(--space-md); }


.job-case__narrative p:last-child { margin-bottom:0; }


.job-facts-grid {
	display:grid;
	grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));
	gap:1px;
	background-color:var(--line);
	border:var(--border-thick);
	border-radius:var(--radius-xs);
	overflow:hidden;
	margin-top:var(--space-lg);
	margin-bottom:var(--space-xl);
}


.job-facts-cell {
	background-color:var(--surface-card);
	padding:var(--space-sm) var(--space-md);
	display:flex;
	flex-direction:column;
	gap:0.25rem;
}


.job-facts-cell__label {
	font-family:var(--beki-391);
	font-size:11px;
	font-weight:700;
	color:var(--steel);
	text-transform:uppercase;
	letter-spacing:var(--tracking-wide);
}


.job-facts-cell__val {
	font-family:var(--beki-f2b);
	font-size:var(--text-base);
	font-weight:700;
	color:var(--ink);
}


.job-facts-cell__val--rate {
	font-family:var(--beki-391);
	color:var(--accent);
	font-size:var(--text-md);
}


.job-evidence-wrap {
	width:100%;
	margin:var(--space-xl) 0 0 0;
}


.job-evidence-photo {
	position:relative;
	border:var(--border-thick);
	border-radius:var(--radius-xs);
	overflow:hidden;
	background-color:var(--surface-dark);
	box-shadow:var(--shadow-flat);
	display:flex;
	flex-direction:column;
}


.job-evidence-photo img {
	width:100%;
	height:auto;
	aspect-ratio:16 / 9;
	object-fit:cover;
	display:block;
}


.job-evidence-meta {
	position:relative;
	z-index:2;
	background-color:var(--surface-card);
	border-top:var(--border-thin);
	padding:0.75rem 1.25rem;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:space-between;
	gap:var(--space-sm);
	font-family:var(--beki-391);
	font-size:var(--text-xs);
	color:var(--steel);
}


.job-evidence-meta__location {
	color:var(--ink);
	font-weight:700;
	text-transform:uppercase;
	display:flex;
	align-items:center;
	gap:0.35rem;
}


.job-evidence-meta__tooling { color:var(--steel-light); }



.flooring-hero {
	padding:var(--space-xl) 0 var(--space-2xl) 0;
	border-bottom:var(--border-thick);
	background-color:var(--ground);
}


.flooring-hero__title {
	font-size:var(--text-3xl);
	font-weight:700;
	line-height:1.1;
	margin-bottom:var(--space-md);
	max-width:900px;
}


.flooring-hero__lead {
	font-size:var(--text-lg);
	line-height:var(--leading-snug);
	color:var(--ink);
	max-width:72ch;
	margin-bottom:var(--space-lg);
}


.flooring-rate-sheet {
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:var(--space-lg);
	margin:var(--space-xl) 0;
}


@media (max-width: 768px) {
	.flooring-rate-sheet { grid-template-columns:1fr; }
}


.flooring-tier-card {
	background-color:var(--surface-card);
	border:var(--border-thick);
	border-radius:var(--radius-xs);
	padding:var(--space-lg);
	display:flex;
	flex-direction:column;
	position:relative;
	box-shadow:var(--shadow-flat);
}


.flooring-tier-card--highlight {
	border-color:var(--accent);
	background-color:#F8F3EC;
}


.flooring-tier-card__header {
	border-bottom:var(--border-hairline);
	padding-bottom:var(--space-sm);
	margin-bottom:var(--space-md);
}


.flooring-tier-card__title {
	font-family:var(--beki-f2b);
	font-size:var(--text-xl);
	font-weight:700;
	color:var(--ink);
	margin-bottom:0.25rem;
}


.flooring-tier-card__rate {
	font-family:var(--beki-391);
	font-size:var(--text-2xl);
	font-weight:700;
	color:var(--accent);
}


.flooring-tier-card__unit {
	font-size:var(--text-xs);
	color:var(--steel);
	font-weight:500;
	text-transform:uppercase;
}


.flooring-spec-list {
	list-style:none;
	margin:0 0 var(--space-lg) 0;
	padding:0;
	display:flex;
	flex-direction:column;
	gap:0.5rem;
	font-size:var(--text-sm);
}


.flooring-spec-list li {
	display:flex;
	align-items:baseline;
	gap:0.5rem;
	line-height:1.45;
}


.flooring-spec-list .icon {
	color:var(--accent);
	margin-top:0.2rem;
}


/* Tolerance Standard Callout Box */
.tolerance-callout {
	background-color:var(--surface);
	border:var(--border-thick);
	border-left:6px solid var(--accent);
	border-radius:var(--radius-xs);
	padding:var(--space-md) var(--space-lg);
	margin:var(--space-xl) 0;
	display:grid;
	grid-template-columns:auto 1fr;
	gap:var(--space-md);
	align-items:center;
}


@media (max-width: 640px) {
	.tolerance-callout { grid-template-columns:1fr; }
}


.tolerance-callout__icon {
	font-size:2.4rem;
	color:var(--accent);
}


.tolerance-callout__text h4 {
	margin-bottom:0.25rem;
	font-size:var(--text-md);
}


.tolerance-callout__text p {
	margin:0;
	font-size:var(--text-sm);
	color:var(--ink);
}



.services-catalog-grid {
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:var(--space-md);
	margin:var(--space-xl) 0;
}


@media (max-width: 768px) {
	.services-catalog-grid { grid-template-columns:1fr; }
}


.service-card {
	background-color:var(--surface-card);
	border:var(--border-thick);
	border-radius:var(--radius-xs);
	padding:var(--space-lg);
	display:flex;
	flex-direction:column;
	box-shadow:var(--shadow-flat);
	transition:transform var(--dur-normal) var(--ease-spring), border-color var(--dur-fast) ease;
}


.service-card:hover {
	transform:translateY(-2px);
	border-color:var(--accent);
}


.service-card__top {
	display:flex;
	align-items:center;
	justify-content:space-between;
	margin-bottom:var(--space-xs);
}


.service-card__rate {
	font-family:var(--beki-391);
	font-size:var(--text-sm);
	font-weight:700;
	color:var(--accent);
	background-color:var(--surface);
	padding:0.2rem 0.5rem;
	border-radius:var(--radius-xs);
	border:1px solid var(--line-subtle);
}


.service-card__title {
	font-family:var(--beki-f2b);
	font-size:var(--text-lg);
	font-weight:700;
	color:var(--ink);
	margin-bottom:var(--space-xs);
}


.service-card__desc {
	font-size:var(--text-sm);
	line-height:var(--leading-normal);
	color:var(--ink);
	margin-bottom:var(--space-md);
	flex-grow:1;
}


.service-card__specs {
	list-style:none;
	margin:0;
	padding:0;
	display:flex;
	flex-direction:column;
	gap:0.35rem;
	font-family:var(--beki-391);
	font-size:11px;
	color:var(--steel);
	border-top:var(--border-hairline);
	padding-top:var(--space-xs);
}


.service-card__specs li {
	display:flex;
	align-items:center;
	gap:0.35rem;
}


/* Dispatch Policy Box */
.dispatch-rule-box {
	background-color:var(--surface-dark);
	color:var(--ink-light);
	border:var(--border-thick);
	border-radius:var(--radius-xs);
	padding:var(--space-lg);
	margin:var(--space-2xl) 0;
	display:grid;
	grid-template-columns:1.5fr 1fr;
	gap:var(--space-lg);
	align-items:center;
}


@media (max-width: 800px) {
	.dispatch-rule-box { grid-template-columns:1fr; }
}


.dispatch-rule-box h3 {
	color:#FFF;
	margin-bottom:var(--space-xs);
}


.dispatch-rule-box p {
	color:rgba(244, 238, 229, 0.85);
	font-size:var(--text-sm);
	margin-bottom:0;
}


.dispatch-rate-badge {
	background-color:rgba(244, 238, 229, 0.08);
	border:1px solid rgba(244, 238, 229, 0.2);
	border-radius:var(--radius-xs);
	padding:var(--space-md);
	text-align:center;
	display:flex;
	flex-direction:column;
	gap:0.25rem;
}


.dispatch-rate-badge__amount {
	font-family:var(--beki-391);
	font-size:var(--text-2xl);
	font-weight:700;
	color:var(--accent-surface);
}


.dispatch-rate-badge__label {
	font-family:var(--beki-391);
	font-size:11px;
	text-transform:uppercase;
	color:var(--ink-light);
}



.about-master-hero {
	padding:var(--space-xl) 0 var(--space-2xl) 0;
	border-bottom:var(--border-thick);
	background-color:var(--ground);
}


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


@media (max-width: 800px) {
	.about-spec-grid { grid-template-columns:1fr; }
}


.tool-inventory-card {
	background-color:var(--surface-card);
	border:var(--border-thick);
	border-radius:var(--radius-xs);
	padding:var(--space-md);
}


.tool-inventory-card h4 {
	font-family:var(--beki-f2b);
	font-size:var(--text-md);
	margin-bottom:var(--space-xs);
	border-bottom:var(--border-hairline);
	padding-bottom:0.25rem;
}


.tool-list {
	list-style:none;
	margin:0;
	padding:0;
	display:flex;
	flex-direction:column;
	gap:0.45rem;
	font-family:var(--beki-391);
	font-size:var(--text-xs);
	color:var(--ink);
}


.tool-list li {
	display:flex;
	align-items:baseline;
	justify-content:space-between;
	border-bottom:1px dotted var(--line-subtle);
	padding-bottom:0.25rem;
}


.tool-list__item { font-weight:600; }


.tool-list__spec { color:var(--steel); }


/* Operational Record Block */
.operational-record-box {
	background-color:var(--surface);
	border:var(--border-thick);
	border-radius:var(--radius-xs);
	padding:var(--space-lg);
	margin:var(--space-xl) 0;
}


.record-row {
	display:grid;
	grid-template-columns:200px 1fr;
	gap:var(--space-md);
	padding:var(--space-xs) 0;
	border-bottom:1px solid var(--line-subtle);
	font-size:var(--text-sm);
}


@media (max-width: 600px) {
	.record-row {
		grid-template-columns:1fr;
		gap:0.25rem;
	}
}


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


.record-row__key {
	font-family:var(--beki-391);
	font-size:var(--text-xs);
	font-weight:700;
	color:var(--steel);
	text-transform:uppercase;
}


.record-row__val {
	color:var(--ink);
	font-weight:500;
}



.contact-layout {
	display:grid;
	grid-template-columns:1fr 1.35fr;
	gap:var(--space-xl);
	padding:var(--space-xl) 0 var(--space-2xl) 0;
}


@media (max-width: 900px) {
	.contact-layout { grid-template-columns:1fr; }
}


.contact-info-panel {
	display:flex;
	flex-direction:column;
	gap:var(--space-lg);
}


.contact-info-card {
	background-color:var(--surface-card);
	border:var(--border-thick);
	border-radius:var(--radius-xs);
	padding:var(--space-md);
	box-shadow:var(--shadow-flat);
}


.contact-info-card h3 {
	font-size:var(--text-md);
	margin-bottom:var(--space-sm);
	border-bottom:var(--border-hairline);
	padding-bottom:0.35rem;
}


.contact-details-list {
	list-style:none;
	margin:0;
	padding:0;
	display:flex;
	flex-direction:column;
	gap:var(--space-sm);
	font-family:var(--beki-391);
	font-size:var(--text-sm);
}


.contact-details-list li {
	display:flex;
	align-items:flex-start;
	gap:0.65rem;
	line-height:1.4;
}


.contact-details-list .icon {
	color:var(--accent);
	margin-top:0.2rem;
}


.contact-phone-direct {
	font-size:var(--text-lg);
	font-weight:700;
	color:var(--accent);
	text-decoration:none;
}


.contact-phone-direct:hover { text-decoration:underline; }


.service-area-badge {
	background-color:var(--surface-dark);
	color:var(--ink-light);
	border-radius:var(--radius-xs);
	padding:var(--space-md);
	font-family:var(--beki-391);
	font-size:var(--text-xs);
	line-height:1.5;
}


.service-area-badge strong {
	color:#FFF;
	display:block;
	font-size:var(--text-sm);
	margin-bottom:0.25rem;
}



.legal-margin-page {
	padding:var(--space-xl) 0 var(--space-3xl) 0;
	background-color:var(--ground);
}


.legal-header-block {
	border-bottom:var(--border-thick);
	padding-bottom:var(--space-lg);
	margin-bottom:var(--space-xl);
}


.legal-header-block__title {
	font-size:var(--text-3xl);
	font-weight:700;
	line-height:1.1;
	margin-bottom:var(--space-xs);
}


.legal-header-block__meta {
	font-family:var(--beki-391);
	font-size:var(--text-xs);
	color:var(--steel);
	display:flex;
	flex-wrap:wrap;
	gap:var(--space-md);
}


/* Container for reading column + margin column */
.legal-margin-container {
	display:grid;
	grid-template-columns:minmax(0, 1fr) 280px;
	gap:var(--space-xl);
	align-items:start;
	position:relative;
}


.legal-margin-main {
	min-width:0;
	max-width:var(--prose-max-width);
}


.legal-margin-rail {
	display:flex;
	flex-direction:column;
	gap:var(--space-xl);
	position:relative;
}


/* Anchored Passage & Aligned Margin Note */
.legal-passage {
	position:relative;
	margin-bottom:var(--space-xl);
	padding-bottom:var(--space-md);
	border-bottom:var(--border-hairline);
}


.legal-passage:last-child { border-bottom:none; }


.legal-passage__heading {
	font-family:var(--beki-f2b);
	font-size:var(--text-xl);
	font-weight:700;
	color:var(--ink);
	margin-top:var(--space-md);
	margin-bottom:var(--space-xs);
}


.legal-passage p {
	font-size:var(--text-base);
	line-height:var(--leading-loose);
	color:var(--ink);
	margin-bottom:var(--space-md);
}


.margin-note {
	background-color:var(--surface-card);
	border:var(--border-thin);
	border-left:3px solid var(--accent);
	border-radius:var(--radius-xs);
	padding:0.65rem 0.85rem;
	font-family:var(--beki-391);
	font-size:var(--text-xs);
	line-height:1.45;
	color:var(--steel);
	box-shadow:1px 1px 0 var(--line-subtle);
}


.margin-note strong {
	display:block;
	color:var(--ink);
	font-size:11px;
	text-transform:uppercase;
	letter-spacing:var(--tracking-wide);
	margin-bottom:0.2rem;
}


.margin-note__badge {
	display:inline-block;
	background-color:var(--surface);
	color:var(--ink);
	padding:0.15rem 0.4rem;
	border-radius:var(--radius-xs);
	font-size:10px;
	font-weight:700;
	margin-top:0.35rem;
}


/* Tablet & Mobile Breakpoint: Margin notes move inline directly under their paragraph */
.margin-note--inline-fallback { display:none; }


@media (max-width: 960px) {
	.legal-margin-container {
		grid-template-columns:1fr;
		gap:0;
	}


	.legal-margin-rail { display:none; }


	.margin-note--inline-fallback {
		display:block;
		margin:var(--space-sm) 0 var(--space-md) 0;
		background-color:var(--surface-card);
		border:var(--border-thin);
		border-left:4px solid var(--accent);
		border-radius:var(--radius-xs);
		padding:0.75rem 1rem;
		font-family:var(--beki-391);
		font-size:var(--text-xs);
		line-height:1.45;
		color:var(--steel);
	}


	.margin-note--inline-fallback strong {
		display:block;
		color:var(--ink);
		font-size:11px;
		text-transform:uppercase;
		letter-spacing:var(--tracking-wide);
		margin-bottom:0.25rem;
	}
}


.tracking-ids-table {
	width:100%;
	border-collapse:collapse;
	margin:var(--space-md) 0 var(--space-lg) 0;
	font-size:var(--text-xs);
	font-family:var(--beki-391);
	border:var(--border-thick);
	background-color:var(--surface-card);
}


.tracking-ids-table th,
.tracking-ids-table td {
	padding:0.65rem 0.85rem;
	border:1px solid var(--line-subtle);
	text-align:left;
}


.tracking-ids-table th {
	background-color:var(--surface);
	font-family:var(--beki-f2b);
	font-weight:700;
	color:var(--ink);
	text-transform:uppercase;
}


/* Folded Legal Passages (Accessibility & Data Request anchors) */
.folded-legal-section {
	margin-top:var(--space-2xl);
	padding-top:var(--space-xl);
	border-top:var(--border-thick);
}



.cookies-clause-page {
	padding:var(--space-xl) 0 var(--space-3xl) 0;
	background-color:var(--ground);
}


.cookies-clause-container {
	width:100%;
	max-width:920px; 
	margin:0 auto;
	padding:0 var(--page-gutter);
}


.cookies-clause-header {
	border-bottom:var(--border-thick);
	padding-bottom:var(--space-lg);
	margin-bottom:var(--space-2xl);
}


.cookies-clause-header__title {
	font-size:var(--text-3xl);
	font-weight:700;
	line-height:1.1;
	margin-bottom:var(--space-xs);
}


.cookies-clause-header__meta {
	font-family:var(--beki-391);
	font-size:var(--text-xs);
	color:var(--steel);
}


/* Numbered Clause Unit */
.clause-block {
	display:grid;
	grid-template-columns:80px minmax(0, 1fr);
	gap:var(--space-md);
	margin-bottom:var(--space-2xl);
	padding-bottom:var(--space-xl);
	border-bottom:1px solid var(--line-faint);
	align-items:baseline;
}


@media (max-width: 640px) {
	.clause-block {
		grid-template-columns:1fr;
		gap:var(--space-2xs);
		margin-bottom:var(--space-xl);
		padding-bottom:var(--space-lg);
	}
}


.clause-block:last-child { border-bottom:none; }


/* Quiet Clause Reference Mark (Never a display figure) */
.clause-ref-num {
	font-family:var(--beki-391);
	font-size:var(--text-sm);
	font-weight:700;
	color:var(--steel);
	letter-spacing:var(--tracking-snug);
	user-select:none;
}


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


.clause-heading {
	font-family:var(--beki-f2b);
	font-size:var(--text-lg);
	font-weight:700;
	line-height:1.25;
	color:var(--ink);
	margin-bottom:var(--space-sm);
}


.clause-text {
	font-size:var(--text-base);
	line-height:var(--leading-loose);
	color:var(--ink);
	margin-bottom:var(--space-md);
}


.clause-text p { margin-bottom:var(--space-sm); }


.clause-text p:last-child { margin-bottom:0; }


.consent-mode-matrix {
	width:100%;
	border-collapse:collapse;
	margin:var(--space-md) 0;
	font-family:var(--beki-391);
	font-size:var(--text-xs);
	border:var(--border-thick);
	background-color:var(--surface-card);
}


.consent-mode-matrix th,
.consent-mode-matrix td {
	padding:0.65rem 0.85rem;
	border:1px solid var(--line-subtle);
	text-align:left;
	min-width:110px;
}


.consent-mode-matrix th {
	background-color:var(--surface);
	font-family:var(--beki-f2b);
	font-weight:700;
	color:var(--ink);
	text-transform:uppercase;
}


.consent-mode-matrix td.status-denied {
	color:var(--error);
	font-weight:700;
}


.consent-mode-matrix td.status-granted {
	color:var(--success);
	font-weight:700;
}



.terms-stack-page {
	padding:var(--space-xl) 0 var(--space-3xl) 0;
	background-color:var(--ground);
}


.terms-stack-container {
	width:100%;
	max-width:960px;
	margin:0 auto;
	padding:0 var(--page-gutter);
}


.terms-stack-header {
	border-bottom:var(--border-thick);
	padding-bottom:var(--space-lg);
	margin-bottom:var(--space-lg);
}


.terms-stack-header__title {
	font-size:var(--text-3xl);
	font-weight:700;
	line-height:1.1;
	margin-bottom:var(--space-xs);
}


.terms-stack-header__dek {
	font-size:var(--text-md);
	color:var(--ink);
	max-width:70ch;
	margin-bottom:var(--space-md);
}


/* Global Controls Toolbar (Open Everything / Collapse / Print) */
.disclosure-toolbar {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:space-between;
	gap:var(--space-sm);
	background-color:var(--surface);
	border:var(--border-thin);
	border-radius:var(--radius-xs);
	padding:0.65rem 1rem;
	margin-bottom:var(--space-xl);
	overflow:hidden;
}


.disclosure-toolbar__actions {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:var(--space-xs);
}


.disclosure-btn {
	background-color:var(--surface-card);
	color:var(--ink);
	border:var(--border-thin);
	border-radius:var(--radius-xs);
	padding:0.35rem 0.75rem;
	font-family:var(--beki-391);
	font-size:var(--text-xs);
	font-weight:700;
	cursor:pointer;
	white-space:normal;
	transition:background-color var(--dur-fast) ease, border-color var(--dur-fast) ease, transform var(--dur-fast) var(--ease-spring);
}


.disclosure-btn:hover {
	background-color:#FFF;
	border-color:var(--accent);
	transform:translateY(-1px);
}


.disclosure-btn:active { transform:translateY(1px); }


.disclosure-btn:focus-visible {
	outline:var(--focus-ring);
	outline-offset:2px;
}


/* Details Stack Container */
.disclosure-stack {
	display:flex;
	flex-direction:column;
	gap:var(--space-md);
}


.disclosure-item {
	background-color:var(--surface-card);
	border:var(--border-thick);
	border-radius:var(--radius-xs);
	overflow:hidden;
	box-shadow:var(--shadow-flat);
	transition:border-color var(--dur-fast) ease, box-shadow var(--dur-fast) ease;
}


.disclosure-item[open] {
	border-color:var(--accent);
	box-shadow:var(--shadow-lift);
}


.disclosure-item:target {
	border-color:var(--accent);
	box-shadow:0 0 0 3px rgba(184, 74, 40, 0.25);
}


/* Summary: Real descriptive sentence, not a bare title */
.disclosure-summary {
	list-style:none;
	cursor:pointer;
	padding:var(--space-md) var(--space-lg);
	display:grid;
	grid-template-columns:1fr auto;
	align-items:center;
	gap:var(--space-md);
	user-select:none;
	background-color:var(--surface-card);
	transition:background-color var(--dur-fast) ease;
}


.disclosure-summary::-webkit-details-marker { display:none; }


.disclosure-summary:hover { background-color:#FFF; }


.disclosure-summary:focus-visible {
	outline:var(--focus-ring);
	outline-offset:-2px;
}


.disclosure-summary__sentence {
	font-family:var(--beki-f2b);
	font-size:var(--text-md);
	font-weight:700;
	line-height:1.3;
	color:var(--ink);
}


.disclosure-summary__indicator {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:28px;
	height:28px;
	border-radius:var(--radius-xs);
	border:var(--border-thin);
	background-color:var(--ground);
	color:var(--ink);
	transition:transform var(--dur-normal) var(--ease-spring), background-color var(--dur-fast) ease;
}


.disclosure-item[open] .disclosure-summary__indicator {
	transform:rotate(180deg);
	background-color:var(--accent);
	color:#FFF;
	border-color:var(--accent-hover);
}


.disclosure-body {
	padding:var(--space-md) var(--space-lg) var(--space-lg) var(--space-lg);
	border-top:var(--border-hairline);
	background-color:#FFF;
	font-size:var(--text-base);
	line-height:var(--leading-loose);
	color:var(--ink);
}


.disclosure-body p { margin-bottom:var(--space-md); }


.disclosure-body p:last-child { margin-bottom:0; }


/* Print styling expands all disclosures automatically */
@media print {
	.disclosure-item {
		border:1px solid #000 !important;
		page-break-inside:avoid;
		margin-bottom:1rem;
	}
	.disclosure-item[open],
	.disclosure-item:not([open]) { display:block !important; }
	.disclosure-body { display:block !important; }
	.disclosure-toolbar { display:none !important; }
}



.faq-section {
	padding:var(--space-2xl) 0;
	border-bottom:var(--border-thick);
	background-color:var(--ground);
}


.faq-header {
	margin-bottom:var(--space-xl);
	max-width:800px;
}


.faq-header__title {
	font-size:var(--text-2xl);
	font-weight:700;
	margin-bottom:var(--space-xs);
}


.faq-accordion {
	display:flex;
	flex-direction:column;
	gap:var(--space-sm);
	max-width:900px;
}


.faq-item {
	background-color:var(--surface-card);
	border:var(--border-thick);
	border-radius:var(--radius-xs);
	overflow:hidden;
	box-shadow:var(--shadow-flat);
	transition:border-color var(--dur-fast) ease;
}


.faq-item[open] { border-color:var(--accent); }


.faq-summary {
	list-style:none;
	cursor:pointer;
	padding:var(--space-md) var(--space-lg);
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:var(--space-md);
	font-family:var(--beki-f2b);
	font-size:var(--text-base);
	font-weight:700;
	color:var(--ink);
	user-select:none;
}


.faq-summary::-webkit-details-marker { display:none; }


.faq-summary:hover { background-color:#FFF; }


.faq-summary:focus-visible {
	outline:var(--focus-ring);
	outline-offset:-2px;
}


.faq-icon {
	transition:transform var(--dur-fast) var(--ease-spring);
	color:var(--accent);
	flex-shrink:0;
}


.faq-item[open] .faq-icon { transform:rotate(180deg); }


.faq-body {
	padding:0 var(--space-lg) var(--space-md) var(--space-lg);
	font-size:var(--text-sm);
	line-height:var(--leading-loose);
	color:var(--ink);
}


.faq-body p:last-child { margin-bottom:0; }



.error-scene {
	padding:var(--space-3xl) 0;
	background-color:var(--ground);
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:60vh;
}


.error-box {
	background-color:var(--surface-card);
	border:var(--border-heavy);
	border-radius:var(--radius-xs);
	padding:var(--space-2xl);
	max-width:640px;
	width:100%;
	box-shadow:var(--shadow-heavy);
	text-align:center;
}


.error-code {
	font-family:var(--beki-391);
	font-size:clamp(3rem, 2.5rem + 4vw, 5.5rem);
	font-weight:700;
	color:var(--accent);
	line-height:1;
	margin-bottom:var(--space-sm);
	letter-spacing:var(--tracking-tight);
}


.error-title {
	font-family:var(--beki-f2b);
	font-size:var(--text-xl);
	font-weight:700;
	margin-bottom:var(--space-sm);
}


.error-text {
	font-size:var(--text-base);
	color:var(--ink);
	margin-bottom:var(--space-lg);
	line-height:var(--leading-normal);
}


.error-actions {
	display:flex;
	justify-content:center;
	gap:var(--space-sm);
	flex-wrap:wrap;
}
