


.page-head {
	padding-top:var(--space-xl);
	padding-bottom:var(--space-lg);
	border-bottom:1px solid var(--line);
}


.page-head-compact {
	padding-top:var(--space-lg);
	padding-bottom:var(--space-md);
	border-bottom:1px solid var(--line);
}


.page-title {
	font-family:var(--cure-55c);
	font-size:var(--text-2xl);
	font-weight:700;
	line-height:var(--leading-tight);
	letter-spacing:var(--tracking-tight);
	margin-bottom:var(--space-xs);
	max-width:22ch;
}


.page-lede {
	font-size:var(--text-md);
	line-height:var(--leading-snug);
	color:var(--ink-soft);
	max-width:62ch;
}


.modular-grid {
	display:grid;
	grid-template-columns:1fr;
	gap:1px;
	background-color:var(--line);
	border:1px solid var(--line);
	margin-top:var(--space-lg);
	margin-bottom:var(--space-lg);
}


@media (min-width: 768px) {
	.modular-grid { grid-template-columns:repeat(12, minmax(0, 1fr)); }
}


.mod-tile {
	background-color:var(--ground);
	padding:var(--space-md);
	display:flex;
	flex-direction:column;
}


.mod-tile-lead { grid-column:1 / -1; }


@media (min-width: 768px) {
	.mod-tile-lead { grid-column:span 7; }
}


@media (min-width: 1024px) {
	.mod-tile-lead { grid-column:span 8; }
}


.mod-tile-rail { grid-column:1 / -1; }


@media (min-width: 768px) {
	.mod-tile-rail { grid-column:span 5; }
}


@media (min-width: 1024px) {
	.mod-tile-rail { grid-column:span 4; }
}


.mod-tile-half { grid-column:1 / -1; }


@media (min-width: 768px) {
	.mod-tile-half { grid-column:span 6; }
}


.mod-tile-third { grid-column:1 / -1; }


@media (min-width: 768px) {
	.mod-tile-third { grid-column:span 4; }
}


.mod-tile-header {
	display:flex;

	justify-content:space-between;
	align-items:baseline;
	padding-bottom:var(--space-xs);
	border-bottom:1px solid var(--line);
	margin-bottom:var(--space-sm);
}


.mod-tile-tag {

	font-family:var(--cure-076);
	font-size:var(--text-xs);
	text-transform:uppercase;
	letter-spacing:var(--tracking-wider);
	color:var(--ink-soft);
}


.mod-tile-title {
	font-family:var(--cure-55c);
	font-size:var(--text-lg);
	font-weight:700;
	line-height:var(--leading-tight);
	margin-bottom:var(--space-xs);
}


.mod-tile-body {
	font-size:var(--text-base);
	color:var(--ink);
	flex-grow:1;
}


.mod-tile-figure {
	margin-top:var(--space-sm);
	overflow:hidden;
	border:1px solid var(--line);
	background-color:var(--surface);
}


.mod-tile-img {
	width:100%;
	aspect-ratio:16 / 10;
	object-fit:cover;
	display:block;
}



.hero-opening {
	padding-top:var(--space-2xl);
	padding-bottom:var(--space-2xl);
	position:relative;
	overflow:hidden;
}


.hero-heading-block { margin-bottom:var(--space-xl); }


.hero-h1 {
	font-family:var(--cure-55c);
	font-size:var(--text-display);
	font-weight:700;
	line-height:1.06;
	letter-spacing:var(--tracking-tight);
	color:var(--ink);
	max-width:22ch;
	text-wrap:balance;
	hyphens:manual;
	word-break:normal;
	overflow-wrap:normal;
}


.hero-plate-layout {
	display:flex;
	flex-direction:column;
	gap:var(--space-lg);
}


@media (min-width: 860px) {
	.hero-plate-layout {
		display:grid;
		grid-template-columns:minmax(260px, 1fr) minmax(480px, 2fr);
		gap:var(--space-2xl);
		align-items:start;
	}
}


.hero-margin-col {
	display:flex;
	flex-direction:column;
	gap:var(--space-md);
}


@media (max-width: 859px) {
	.hero-margin-col {
		order:2;
		padding-top:var(--space-xs);
	}
}


.hero-lede {
	font-size:var(--text-md);
	line-height:var(--leading-snug);
	color:var(--ink);
	max-width:44ch;
}


.hero-meta-list {
	border-top:1px solid var(--line);
	padding-top:var(--space-sm);
	display:flex;
	flex-direction:column;
	gap:var(--space-2xs);
	font-size:var(--text-sm);
}


.hero-meta-item {
	display:flex;
	justify-content:space-between;
	gap:var(--space-xs);
}


.hero-meta-key {
	font-family:var(--cure-076);
	font-size:var(--text-xs);
	color:var(--ink-soft);
	text-transform:uppercase;
	letter-spacing:var(--tracking-wider);
}


.hero-meta-val {
	font-family:var(--cure-076);
	font-size:var(--text-xs);
	color:var(--ink);
	text-align:right;
}


.hero-action { padding-top:var(--space-xs); }


.hero-plate-col {
	display:flex;
	flex-direction:column;
}


@media (max-width: 859px) {
	.hero-plate-col { order:1; }
}


.hero-plate-frame {
	position:relative;
	border:1px solid var(--line);
	background-color:var(--surface);
	overflow:hidden;
}


.hero-plate-img {
	width:100%;
	aspect-ratio:16 / 10;
	object-fit:cover;
	object-position:70% center;
	display:block;
}


.hero-plate-caption {
	padding-top:var(--space-xs);
	font-family:var(--cure-076);
	font-size:var(--text-xs);
	color:var(--ink-soft);
	display:flex;
	justify-content:space-between;
	gap:var(--space-xs);
}



.ledger-section {
	padding-top:var(--space-xl);
	padding-bottom:var(--space-xl);
	border-top:1px solid var(--line);
}


.ledger-head { margin-bottom:var(--space-md); }


.ledger-title {
	font-family:var(--cure-55c);
	font-size:var(--text-xl);
	font-weight:700;
	line-height:var(--leading-tight);
	letter-spacing:var(--tracking-tight);
	margin-bottom:var(--space-2xs);
}


.ledger-standfirst {
	font-size:var(--text-base);
	color:var(--ink-soft);
	max-width:65ch;
	line-height:var(--leading-normal);
}


.ledger-sheet {
	border-top:1px solid var(--line);
	border-bottom:1px solid var(--line);
	background-color:transparent;
}


.ledger-entry {
	display:grid;
	grid-template-columns:1fr;
	padding:var(--space-sm) 0;
	border-bottom:1px solid var(--line);
	gap:var(--space-2xs);
	transition:background-color var(--transition-fast);
}


.ledger-entry:last-child { border-bottom:none; }


.ledger-entry:hover { background-color:rgba(213, 220, 212, 0.45); }


@media (min-width: 640px) {
	.ledger-entry {
		grid-template-columns:220px 1fr;
		gap:var(--space-md);

		align-items:baseline;
	}
}


@media (min-width: 960px) {
	.ledger-entry { grid-template-columns:280px 1fr; }
}


.ledger-section { padding-bottom:clamp(6rem, 12vw, 10rem); }


.ledger-field-key {
	font-family:var(--cure-076);
	font-size:var(--text-xs);
	font-weight:500;
	color:var(--ink-soft);
	text-transform:uppercase;
	letter-spacing:var(--tracking-wider);
}


.ledger-field-val {
	font-size:var(--text-base);
	color:var(--ink);
	line-height:var(--leading-normal);
}


.ledger-field-val strong {
	font-weight:600;
	color:var(--ink);
}


.ledger-field-mono {
	font-family:var(--cure-076);
	font-size:var(--text-sm);
	color:var(--ink);
	font-variant-numeric:tabular-nums;
}


/* Incidental Full-Width Photo Interlude between ledgers */
.ledger-photo-break {
	margin-top:var(--space-lg);
	margin-bottom:var(--space-lg);
	border:1px solid var(--line);
	background-color:var(--surface);
	overflow:hidden;
}


.ledger-photo-img {
	width:100%;
	aspect-ratio:21 / 9;
	object-fit:cover;
	display:block;
}


@media (max-width: 640px) {
	.ledger-photo-img { aspect-ratio:16 / 9; }
}


.ledger-photo-caption {
	padding:var(--space-2xs) var(--space-sm);
	background-color:var(--surface);
	border-top:1px solid var(--line);
	font-family:var(--cure-076);
	font-size:var(--text-xs);
	color:var(--ink-soft);
	display:flex;
	justify-content:space-between;
}



.duotone-caesura {
	position:relative;
	width:100%;
	margin-top:var(--space-2xl);
	margin-bottom:var(--space-2xl);
	background-color:#272A27;
	overflow:hidden;
	border-top:1px solid var(--line);
	border-bottom:1px solid var(--line);
}


.duotone-stage {
	position:relative;
	aspect-ratio:3 / 2;
	display:flex;
	align-items:center;
	padding:var(--space-lg) 0;
}


@media (min-width: 960px) {
	.duotone-stage { padding:var(--space-2xl) 0; }
}


.duotone-backdrop {
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	aspect-ratio:3 / 2;
	object-fit:cover;
	filter:contrast(110%) brightness(0.65) sepia(20%) hue-rotate(75deg);
	opacity:0.55;
	mix-blend-mode:luminosity;
}


.duotone-tint {
	position:absolute;
	inset:0;
	background:linear-gradient(
		135deg,
		rgba(39, 42, 39, 0.92) 0%,
		rgba(42, 60, 44, 0.78) 50%,
		rgba(168, 101, 21, 0.35) 100%
	);
	pointer-events:none;
}


.duotone-content {
	position:relative;
	z-index:2;
	color:#FFF;
}


.duotone-quote {
	font-family:var(--cure-55c);
	font-size:var(--text-2xl);
	font-weight:600;
	line-height:var(--leading-tight);
	color:#FFF;
	max-width:24ch;
	margin-bottom:var(--space-md);
	text-wrap:balance;
}


.duotone-cite {
	display:flex;
	flex-direction:column;
	gap:2px;
	font-family:var(--cure-076);
	font-size:var(--text-xs);
	text-transform:uppercase;
	letter-spacing:var(--tracking-wider);
	color:var(--surface);
	border-left:2px solid var(--accent);
	padding-left:var(--space-sm);
}


.duotone-cite strong {
	color:#FFF;
	font-size:var(--text-sm);
	letter-spacing:var(--tracking-normal);
}



.craft-route-section {
	padding-top:var(--space-xl);
	padding-bottom:var(--space-xl);
	border-top:1px solid var(--line);
}


.craft-diagram-container {
	margin-top:var(--space-lg);
	padding:var(--space-md);
	background-color:var(--surface);
	border:1px solid var(--line);
	border-radius:var(--radius-sm);
}


.craft-svg-track {
	width:100%;
	height:auto;
	max-height:240px;
	overflow:visible;
}


.craft-joint-path {
	fill:none;
	stroke:var(--line);
	stroke-width:2;
	stroke-linecap:round;
	stroke-linejoin:round;
}


.craft-joint-active {
	fill:none;
	stroke:var(--accent);
	stroke-width:2.5;
	stroke-linecap:round;
	stroke-linejoin:round;
	stroke-dasharray:1000;
	stroke-dashoffset:0;
	transition:stroke-dashoffset 0.1s linear;
}


.craft-steps-grid {
	display:grid;
	grid-template-columns:1fr;
	gap:var(--space-sm);
	margin-top:var(--space-md);
	border-top:1px solid var(--line);
	padding-top:var(--space-md);
}


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


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


.craft-step-node {
	padding:var(--space-sm);
	background-color:var(--ground);
	border:1px solid var(--line);
	border-radius:var(--radius-sm);
	transition:border-color var(--transition-fast), background-color var(--transition-fast);
}


.craft-step-node.is-active {
	border-color:var(--accent);
	background-color:#FFF;
}


.craft-step-stage {
	font-family:var(--cure-076);
	font-size:var(--text-xs);
	color:var(--ink-soft);
	text-transform:uppercase;
	letter-spacing:var(--tracking-wider);
	margin-bottom:var(--space-2xs);
}


.craft-step-node.is-active .craft-step-stage {
	color:var(--accent);
	font-weight:600;
}


.craft-step-name {
	font-family:var(--cure-55c);
	font-size:var(--text-base);
	font-weight:700;
	line-height:var(--leading-tight);
	margin-bottom:var(--space-2xs);
}


.craft-step-desc {
	font-size:var(--text-xs);
	color:var(--ink-soft);
	line-height:var(--leading-normal);
}



.calc-wrapper {
	background-color:var(--surface);
	border:1px solid var(--line);
	border-radius:var(--radius-sm);
	padding:var(--space-md);
	margin-top:var(--space-lg);
	margin-bottom:var(--space-lg);
}


@media (min-width: 768px) {
	.calc-wrapper { padding:var(--space-lg); }
}


.calc-layout {
	display:grid;
	grid-template-columns:1fr;
	gap:var(--space-lg);
}


@media (min-width: 860px) {
	.calc-layout {
		grid-template-columns:1.1fr 1fr;
		align-items:start;
	}
}


.calc-inputs-pane {
	display:flex;
	flex-direction:column;
	gap:var(--space-sm);
}


.calc-row-3 {
	display:grid;
	grid-template-columns:repeat(3, minmax(0, 1fr));
	gap:var(--space-xs);
}


.calc-input-label {
	font-family:var(--cure-076);
	font-size:var(--text-xs);
	font-weight:500;
	text-transform:uppercase;
	letter-spacing:var(--tracking-wider);
	color:var(--ink);
	display:flex;
	flex-direction:column;
	gap:var(--space-2xs);
}


.calc-input-label span {
	color:var(--ink-soft);
	font-size:11px;
}


.calc-num-input {
	width:100%;
	padding:0.55rem 0.65rem;
	min-height:44px;
	background-color:var(--ground);
	color:var(--ink);
	border:1px solid var(--line);
	border-radius:var(--radius-sm);
	font-family:var(--cure-076);
	font-size:var(--text-base);
	text-align:right;
	transition:border-color var(--transition-fast), background-color var(--transition-fast);
}


.calc-num-input:hover { border-color:var(--ink-soft); }


.calc-num-input:focus {
	border-color:var(--focus-ring);
	background-color:#FFF;
	outline:2px solid var(--focus-ring);
	outline-offset:1px;
}


.calc-results-pane {
	background-color:var(--ground);
	border:1px solid var(--line);
	border-radius:var(--radius-sm);
	padding:var(--space-md);
	display:flex;
	flex-direction:column;
	gap:var(--space-sm);
}


.calc-primary-answer {
	border-bottom:1px solid var(--line);
	padding-bottom:var(--space-sm);
}


.calc-answer-label {
	font-family:var(--cure-076);
	font-size:var(--text-xs);
	color:var(--ink-soft);
	text-transform:uppercase;
	letter-spacing:var(--tracking-wider);
}


.calc-answer-val {
	font-family:var(--cure-55c);
	font-size:var(--text-2xl);
	font-weight:700;
	color:var(--accent);
	line-height:1.15;
	margin-top:2px;
}


.calc-breakdown-list {
	display:flex;
	flex-direction:column;
	gap:var(--space-xs);
	font-family:var(--cure-076);
	font-size:var(--text-xs);
}


.calc-breakdown-row {
	display:flex;
	justify-content:space-between;
	border-bottom:1px dashed var(--line);
	padding-bottom:4px;
}


.calc-formula-block {
	margin-top:var(--space-xs);
	padding:var(--space-xs);
	background-color:var(--surface);
	border:1px solid var(--line);
	border-radius:var(--radius-sm);
	font-family:var(--cure-076);
	font-size:11px;
	color:var(--ink-soft);
	line-height:1.4;
}


.calc-disclaimer {
	font-size:var(--text-xs);
	color:var(--ink-soft);
	font-style:italic;
	margin-top:var(--space-xs);
}



.catalogue-toolbar {
	display:flex;
	flex-wrap:wrap;
	gap:var(--space-xs);
	padding:var(--space-sm) 0;
	border-bottom:1px solid var(--line);
	align-items:center;
	justify-content:space-between;
}


.catalogue-filter-chips {
	display:flex;
	flex-wrap:wrap;
	gap:var(--space-2xs);
}


.filter-chip {
	padding:0.35rem 0.75rem;
	min-height:38px;
	font-family:var(--cure-076);
	font-size:var(--text-xs);
	border:1px solid var(--line);
	background-color:var(--ground);
	color:var(--ink);
	border-radius:var(--radius-sm);
	cursor:pointer;
	transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);
}


.filter-chip:hover {
	background-color:var(--surface);
	border-color:var(--ink-soft);
}


.filter-chip:active { background-color:var(--surface-2); }


.filter-chip.is-active {
	background-color:var(--ink);
	color:var(--ground);
	border-color:var(--ink);
}


.filter-chip:focus-visible {
	outline:2px solid var(--focus-ring);
	outline-offset:2px;
}


.catalogue-summary-text {
	font-family:var(--cure-076);
	font-size:var(--text-xs);
	color:var(--ink-soft);
}


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


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


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


.catalogue-card {
	border:1px solid var(--line);
	background-color:var(--ground);
	display:flex;
	flex-direction:column;
	transition:box-shadow var(--transition-fast), border-color var(--transition-fast);
}


.catalogue-card:hover {
	border-color:var(--ink-soft);
	box-shadow:0 4px 16px rgba(39, 42, 39, 0.08);
}


.catalogue-card-thumb {
	position:relative;
	background-color:var(--surface);
	border-bottom:1px solid var(--line);
}


.catalogue-card-thumb img {
	width:100%;
	aspect-ratio:4 / 3;
	object-fit:cover;
	display:block;
}


.catalogue-card-info {
	padding:var(--space-sm);
	display:flex;
	flex-direction:column;
	flex-grow:1;
}


.catalogue-card-category {
	font-family:var(--cure-076);
	font-size:var(--text-xs);
	color:var(--ink-soft);
	text-transform:uppercase;
	letter-spacing:var(--tracking-wider);
	margin-bottom:var(--space-2xs);
}


.catalogue-card-name {
	font-family:var(--cure-55c);
	font-size:var(--text-md);
	font-weight:700;
	line-height:var(--leading-tight);
	margin-bottom:var(--space-2xs);
}


.catalogue-card-spec-list {
	margin-top:var(--space-xs);
	margin-bottom:var(--space-sm);
	border-top:1px solid var(--line);
	padding-top:var(--space-xs);
	display:flex;
	flex-direction:column;
	gap:4px;
	font-size:var(--text-xs);
}


.catalogue-card-spec-row {
	display:flex;
	justify-content:space-between;
	gap:var(--space-2xs);
}


.catalogue-card-spec-row .k {
	font-family:var(--cure-076);
	color:var(--ink-soft);
}


.catalogue-card-spec-row .v {
	font-family:var(--cure-076);
	color:var(--ink);
	text-align:right;
}


.catalogue-card-foot {
	padding:var(--space-xs) var(--space-sm);
	background-color:var(--surface);
	border-top:1px solid var(--line);
	display:flex;
	justify-content:space-between;
	align-items:center;
}


.catalogue-card-price {
	font-family:var(--cure-076);
	font-size:var(--text-sm);
	font-weight:600;
	color:var(--ink);
}


.catalogue-inquire-btn {
	font-family:var(--cure-24b);
	font-size:var(--text-xs);
	font-weight:600;
	color:var(--accent);
	display:inline-flex;
	align-items:center;
	gap:2px;
}


.catalogue-inquire-btn:hover { text-decoration:underline; }



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


@media (min-width: 860px) {
	.about-intro-grid {
		grid-template-columns:1fr 1.2fr;
		align-items:start;
	}
}


.about-profile-card {
	border:1px solid var(--line);
	background-color:var(--surface);
	padding:var(--space-md);
	display:flex;
	flex-direction:column;
	gap:var(--space-sm);
}


.about-profile-badge {
	font-family:var(--cure-076);
	font-size:var(--text-xs);
	text-transform:uppercase;
	letter-spacing:var(--tracking-wider);
	color:var(--ink-soft);
}


.about-profile-name {
	font-family:var(--cure-55c);
	font-size:var(--text-xl);
	font-weight:700;
	line-height:var(--leading-tight);
}


.about-profile-creds {
	border-top:1px solid var(--line);
	border-bottom:1px solid var(--line);
	padding:var(--space-sm) 0;
	display:flex;
	flex-direction:column;
	gap:var(--space-2xs);
	font-family:var(--cure-076);
	font-size:var(--text-xs);
}


.about-creds-row {
	display:flex;
	justify-content:space-between;
}


.about-creds-row span:first-child { color:var(--ink-soft); }


.about-creds-row span:last-child {
	color:var(--ink);
	font-weight:500;
}


.store-hours-card {
	background-color:var(--ground);
	border:1px solid var(--line);
	padding:var(--space-md);
	margin-top:var(--space-md);
}


.store-hours-title {
	font-family:var(--cure-55c);
	font-size:var(--text-md);
	font-weight:600;
	margin-bottom:var(--space-xs);
	display:flex;
	align-items:center;
	gap:var(--space-xs);
}


.store-hours-list {
	display:flex;
	flex-direction:column;
	gap:var(--space-2xs);
	font-family:var(--cure-076);
	font-size:var(--text-sm);
}


.store-hours-row {
	display:flex;
	justify-content:space-between;
	border-bottom:1px dashed var(--line);
	padding-bottom:4px;
}



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


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


.dated-rail-track {
	display:flex;
	flex-direction:column;
}


@media (max-width: 859px) {
	.dated-rail-track {
		background-color:var(--surface);
		border:1px solid var(--line);
		padding:var(--space-sm);
		border-radius:var(--radius-sm);
	}
}


@media (min-width: 860px) {
	.dated-rail-track {
		position:sticky;
		top:var(--space-lg);
		border-right:1px solid var(--line);
		padding-right:var(--space-md);
		gap:var(--space-md);
	}
}


.dated-rail-strip {
	display:flex;
	flex-direction:column;
	gap:var(--space-xs);
}


@media (max-width: 859px) {
	.dated-rail-strip {
		flex-direction:row;
		flex-wrap:wrap;
		justify-content:space-between;
	}
}


.dated-rail-node {
	display:flex;
	flex-direction:column;
	gap:2px;
}


.dated-rail-time {
	font-family:var(--cure-076);
	font-size:var(--text-xs);
	font-weight:600;
	color:var(--ink);
	letter-spacing:var(--tracking-normal);
}


.dated-rail-meta {
	font-family:var(--cure-076);
	font-size:11px;
	color:var(--ink-soft);
	text-transform:uppercase;
	letter-spacing:var(--tracking-wider);
}


.dated-rail-content {
	display:flex;
	flex-direction:column;
	gap:var(--space-xl);
}


.dated-rail-section {
	position:relative;
	padding-bottom:var(--space-lg);
	border-bottom:1px solid var(--line);
}


.dated-rail-section:last-child { border-bottom:none; }


.dated-rail-header {
	display:flex;
	align-items:baseline;
	justify-content:space-between;
	gap:var(--space-sm);
	margin-bottom:var(--space-xs);
}


.dated-rail-heading {
	font-family:var(--cure-55c);
	font-size:var(--text-lg);
	font-weight:700;
	line-height:var(--leading-tight);
}


.dated-rail-badge {
	font-family:var(--cure-076);
	font-size:11px;
	color:var(--ink-soft);
	background-color:var(--surface);
	padding:2px 6px;
	border:1px solid var(--line);
	border-radius:var(--radius-sm);
	white-space:nowrap;
}



.stack-controls-bar {
	display:flex;
	flex-wrap:wrap;
	gap:var(--space-sm);
	align-items:center;
	justify-content:space-between;
	padding:var(--space-sm) 0;
	border-bottom:1px solid var(--line);
	margin-top:var(--space-md);
	margin-bottom:var(--space-md);
}


.stack-controls-actions {
	display:flex;
	gap:var(--space-xs);
}


.disclosure-stack {
	display:flex;
	flex-direction:column;
	gap:var(--space-xs);
	margin-bottom:var(--space-2xl);
}


.disclosure-item {
	border:1px solid var(--line);
	background-color:var(--ground);
	border-radius:var(--radius-sm);
	overflow:hidden;
	transition:border-color var(--transition-fast), background-color var(--transition-fast);
}


.disclosure-item[open] {
	background-color:var(--ground);
	border-color:var(--ink-soft);
}


.disclosure-summary {
	padding:var(--space-md);
	cursor:pointer;
	list-style:none;
	display:flex;
	justify-content:space-between;
	align-items:center;
	gap:var(--space-sm);
	user-select:none;
	background-color:var(--surface);
	transition:background-color var(--transition-fast);
}


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


.disclosure-summary:hover { background-color:var(--surface-2); }


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


.disclosure-summary-text {
	display:flex;
	flex-direction:column;
	gap:4px;
}


.disclosure-title {
	font-family:var(--cure-55c);
	font-size:var(--text-md);
	font-weight:700;
	line-height:var(--leading-snug);
	color:var(--ink);
}


.disclosure-subtitle {
	font-size:var(--text-sm);
	color:var(--ink-soft);
	max-width:65ch;
}


.disclosure-chevron {
	width:24px;
	height:24px;
	flex-shrink:0;
	color:var(--ink);
	transition:transform var(--transition-fast);
}


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


.disclosure-content {
	padding:var(--space-md);
	border-top:1px solid var(--line);
	background-color:var(--ground);
	display:flex;
	flex-direction:column;
	gap:var(--space-md);
}



.questions-stream {
	display:flex;
	flex-direction:column;
	gap:var(--space-xl);
	margin-top:var(--space-xl);
	margin-bottom:var(--space-2xl);
	max-width:820px;
}


.question-block {
	padding-bottom:var(--space-lg);
	border-bottom:1px solid var(--line);
	display:flex;
	flex-direction:column;
	gap:var(--space-sm);
}


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


.question-heading {
	font-family:var(--cure-55c);
	font-size:var(--text-xl);
	font-weight:700;
	line-height:var(--leading-tight);
	color:var(--ink);
	text-wrap:balance;
}


.question-answer {
	font-size:var(--text-base);
	line-height:var(--leading-relaxed);
	color:var(--ink);
	max-width:65ch;
}


.question-meta {
	font-family:var(--cure-076);
	font-size:var(--text-xs);
	color:var(--ink-soft);
	background-color:var(--surface);
	padding:var(--space-2xs) var(--space-xs);
	border:1px solid var(--line);
	border-radius:var(--radius-sm);
	display:inline-flex;
	align-self:flex-start;
	gap:var(--space-2xs);
}



.table-responsive-wrapper {
	width:100%;
	overflow-x:auto;
	-webkit-overflow-scrolling:touch;
	border:1px solid var(--line);
	background-color:var(--ground);
	margin-top:var(--space-sm);
	margin-bottom:var(--space-sm);
}


.data-table {
	width:100%;
	border-collapse:collapse;
	font-size:var(--text-sm);
	text-align:left;
	min-width:580px;
}


.data-table th,
.data-table td {
	padding:0.65rem 0.85rem;
	border-bottom:1px solid var(--line);
	vertical-align:top;
}


.data-table th {
	background-color:var(--surface);
	font-family:var(--cure-076);
	font-size:var(--text-xs);
	font-weight:600;
	text-transform:uppercase;
	letter-spacing:var(--tracking-wider);
	color:var(--ink-soft);
	border-bottom:2px solid var(--line);
}


.data-table tr:last-child td { border-bottom:none; }


.data-table tr:hover td { background-color:rgba(213, 220, 212, 0.4); }


.data-table code {
	font-family:var(--cure-076);
	font-size:0.9em;
	background-color:var(--surface);
	padding:1px 4px;
	border-radius:2px;
	border:1px solid var(--line);
}



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


@media (min-width: 860px) {
	.inquiry-split-layout {
		grid-template-columns:1fr 1.3fr;
		gap:var(--space-xl);
		align-items:start;
	}
}


.inquiry-info-pane {
	display:flex;
	flex-direction:column;
	gap:var(--space-md);
}


.inquiry-card-specs {
	background-color:var(--surface);
	border:1px solid var(--line);
	padding:var(--space-md);
}


.inquiry-form-card {
	background-color:var(--surface);
	border:1px solid var(--line);
	padding:var(--space-md);
	border-radius:var(--radius-sm);
}


@media (min-width: 640px) {
	.inquiry-form-card { padding:var(--space-lg); }
}


.inquiry-form-grid-2 {
	display:grid;
	grid-template-columns:1fr;
	gap:var(--space-xs);
}


@media (min-width: 640px) {
	.inquiry-form-grid-2 { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}



.faq-accordion {
	display:flex;
	flex-direction:column;
	gap:var(--space-xs);
	margin-top:var(--space-md);
	margin-bottom:var(--space-lg);
}


.faq-item {
	border:1px solid var(--line);
	background-color:var(--ground);
	border-radius:var(--radius-sm);
	overflow:hidden;
}


.faq-summary {
	padding:var(--space-sm) var(--space-md);
	cursor:pointer;
	list-style:none;
	display:flex;
	justify-content:space-between;
	align-items:center;
	background-color:var(--surface);
	font-family:var(--cure-55c);
	font-size:var(--text-base);
	font-weight:600;
	color:var(--ink);
	transition:background-color var(--transition-fast);
}


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


.faq-summary:hover { background-color:var(--surface-2); }


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


.faq-chevron {
	width:20px;
	height:20px;
	flex-shrink:0;
	transition:transform var(--transition-fast);
}


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


.faq-body {
	padding:var(--space-md);
	border-top:1px solid var(--line);
	background-color:var(--ground);
	font-size:var(--text-base);
	line-height:var(--leading-normal);
}



.notfound-scene {
	padding-top:var(--space-2xl);
	padding-bottom:var(--space-2xl);
	text-align:center;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
}


.notfound-code {
	font-family:var(--cure-076);
	font-size:clamp(4rem, 10vw, 8rem);
	font-weight:700;
	line-height:1;
	color:var(--accent);
	margin-bottom:var(--space-xs);
}


.notfound-heading {
	font-family:var(--cure-55c);
	font-size:var(--text-2xl);
	font-weight:700;
	margin-bottom:var(--space-sm);
}


.notfound-text {
	font-size:var(--text-md);
	color:var(--ink-soft);
	max-width:48ch;
	margin-bottom:var(--space-lg);
}


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