

.hero-split {
  position:relative;
  width:100%;
  min-height:100vh;
  min-height:100dvh;
  display:flex;
  align-items:stretch;
  background-color:var(--ground-deep);
  overflow:hidden;
  border-bottom:2px solid var(--hazard-line);
}

.hero-webgl-canvas {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:var(--z-ground);
  opacity:0.65;
  pointer-events:none;
  background:radial-gradient(circle at 75% 30%, rgba(194, 155, 56, 0.12) 0%, rgba(74, 31, 34, 0.95) 60%, var(--ground-deep) 100%);
}

.hero-split-grid {
  position:relative;
  z-index:var(--z-elevated);
  display:grid;
  grid-template-columns:minmax(0, 1.15fr) minmax(0, 1fr);
  width:100%;
  min-height:100vh;
  min-height:100dvh;
}

@media (max-width: 960px) {
  .hero-split-grid {
    grid-template-columns:1fr;
    min-height:auto;
  }
}

.hero-split-content {
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:calc(6.5rem + var(--gutter)) var(--gutter) calc(4rem + var(--gutter));
  background-color:rgba(46, 18, 20, 0.78);
  border-right:1px solid var(--border-subtle);
  min-width:0;
}

@supports ((-webkit-backdrop-filter: blur(8px)) or (backdrop-filter: blur(8px))) {
  .hero-split-content {
    background-color:rgba(46, 18, 20, 0.72);
    -webkit-backdrop-filter:blur(8px);
    backdrop-filter:blur(8px);
  }
}

.hero-split-media {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  min-height:440px;
  background-color:var(--ground-deep);
}

.hero-split-figure {
  width:100%;
  height:100%;
  position:relative;
}

.hero-split-figure img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 25%;
  filter:contrast(105%) brightness(0.96);
}

.hero-media-stamp {
  position:absolute;
  bottom:var(--gutter);
  right:var(--gutter);
  padding:0.65rem 1rem;
  background-color:rgba(46, 18, 20, 0.92);
  border:1px solid var(--border-gold);
  color:var(--accent-gold);
  font-family:var(--gabo-962);
  font-size:var(--text-xs);
  letter-spacing:var(--tracking-stencil);
  text-transform:uppercase;
  z-index:2;

  box-shadow:var(--shadow-subtle);
}

.hero-kicker-bar {
  display:inline-flex;
  align-items:center;
  gap:0.75rem;
  margin-bottom:var(--space-md);
}

.hero-kicker-dot {
  width:8px;
  height:8px;
  background-color:var(--hazard-line);
  box-shadow:0 0 8px var(--hazard-line);
}

.hero-headline {
  font-family:var(--gabo-005);
  font-size:var(--text-hero);
  font-weight:800;
  line-height:1.05;
  color:var(--paper);
  letter-spacing:var(--tracking-tight);
  text-transform:uppercase;
  margin-bottom:var(--space-md);
  text-wrap:balance;
}

.hero-manifesto {
  font-size:var(--text-lead);
  line-height:var(--leading-relaxed);
  color:var(--paper-muted);
  max-width:52ch;
  margin-bottom:var(--space-lg);
}

.hero-price-basis {
  display:flex;
  flex-direction:column;
  gap:0.35rem;
  padding:1rem 1.25rem;
  background-color:var(--ground-surface);
  border-left:3px solid var(--accent-gold);
  margin-bottom:var(--space-xl);
}

.hero-price-basis-label {
  font-family:var(--gabo-962);
  font-size:var(--text-xs);
  letter-spacing:var(--tracking-stencil);
  text-transform:uppercase;
  color:var(--accent-gold);
}

.hero-price-basis-value {
  font-family:var(--gabo-962);
  font-size:var(--text-lead);
  font-weight:700;
  color:var(--paper);
}

.hero-actions-row {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--space-sm);
  margin-bottom:var(--space-xl);
}

.hero-meta-strip {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:var(--space-md);
  padding-top:var(--space-md);
  border-top:1px solid var(--border-subtle);
}

@media (max-width: 600px) {
  .hero-meta-strip {
    grid-template-columns:1fr;
    gap:var(--space-sm);
  }
}

.hero-meta-cell {
  display:flex;
  flex-direction:column;
  gap:0.25rem;
}

.hero-meta-head {
  font-family:var(--gabo-962);
  font-size:var(--text-xs);
  color:var(--accent-gold);
  letter-spacing:var(--tracking-wide);
  text-transform:uppercase;
}

.hero-meta-body {
  font-size:var(--text-xs);
  color:var(--paper-muted);
  line-height:var(--leading-snug);
}


.plate-section--hazard-edge {
  border-left:3px solid var(--hazard-line);
}

.plate-section--gold-edge {
  border-left:3px solid var(--accent-gold);
}

.plate-framing-industrial {
  position:relative;
}

.plate-framing-industrial::before,
.plate-framing-industrial::after {
  content:"";
  position:absolute;
  width:14px;
  height:14px;
  pointer-events:none;
  z-index:2;
}

.plate-framing-industrial::before {
  top:8px;
  left:8px;
  border-top:2px solid var(--accent-gold);
  border-left:2px solid var(--accent-gold);
}

.plate-framing-industrial::after {
  bottom:8px;
  right:8px;
  border-bottom:2px solid var(--accent-gold);
  border-right:2px solid var(--accent-gold);
}

.plate-lead-strong {
  font-family:var(--gabo-005);
  font-size:var(--text-h2);
  font-weight:800;
  line-height:var(--leading-snug);
  color:var(--paper);
  letter-spacing:var(--tracking-tight);
  margin-bottom:var(--space-xs);
  display:block;
}

.plate-prose-condensed {
  font-size:var(--text-body);
  line-height:var(--leading-relaxed);
  color:var(--paper-muted);
  max-width:var(--caption-measure);
}

.plate-spec-matrix {
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
  gap:var(--space-sm);
  margin-top:var(--space-md);
  padding:var(--space-md);
  background-color:var(--ground-deep);
  border:1px solid var(--border-subtle);
}

.plate-spec-item {
  display:flex;
  flex-direction:column;

  gap:0.2rem;
}

.plate-spec-label {
  font-family:var(--gabo-962);
  font-size:var(--text-xs);
  color:var(--paper-muted);
  letter-spacing:var(--tracking-wide);
  text-transform:uppercase;
}

.plate-spec-value {
  font-family:var(--gabo-962);
  font-size:var(--text-sm);
  font-weight:700;
  color:var(--accent-gold);
}


.process-strip-section {
  background-color:var(--ground-deep);
  border-top:1px solid var(--border-subtle);
  border-bottom:1px solid var(--border-subtle);
  padding:var(--space-2xl) 0;
}

.process-strip-header {
  margin-bottom:var(--space-xl);
  max-width:var(--caption-measure);
}

.process-flow-track-wrap {
  width:100%;
  position:relative;
  margin:var(--space-lg) 0;
}

.process-flow-legend {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:var(--space-md);

  margin-top:var(--space-lg);
  padding-top:var(--space-md);
  border-top:1px solid var(--border-subtle);
}

@media (max-width: 768px) {
  .process-flow-legend {
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 480px) {
  .process-flow-legend {
    grid-template-columns:1fr;
  }
}

.process-legend-card {
  padding:var(--space-md);
  background-color:var(--ground-surface);
  border:1px solid var(--border-subtle);
  border-top:3px solid var(--border-medium);
  transition:border-color var(--duration-fast) var(--ease-out-quad);
}

.process-legend-card.is-active,
.process-legend-card:hover {
  border-top-color:var(--accent-gold);
}

.process-legend-title {
  font-family:var(--gabo-962);
  font-size:var(--text-xs);
  letter-spacing:var(--tracking-stencil);
  text-transform:uppercase;
  color:var(--accent-gold);
  margin-bottom:var(--space-2xs);
}

.process-legend-desc {
  font-size:var(--text-xs);
  line-height:var(--leading-normal);
  color:var(--paper-muted);
}


.pricing-allocation-band {
  background-color:var(--ground-surface);
  border-top:2px solid var(--hazard-line);
  border-bottom:2px solid var(--hazard-line);
  padding:var(--space-2xl) 0;
}

.pricing-band-intro {
  margin-bottom:var(--space-xl);
  max-width:var(--caption-measure);
}

.pricing-matrix-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  gap:var(--space-md);
}

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

.pricing-matrix-card {
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:var(--space-lg);
  background-color:var(--ground-deep);
  border:1px solid var(--border-subtle);
  position:relative;
  transition:transform var(--duration-fast) var(--ease-out-quad),
              border-color var(--duration-fast) var(--ease-out-quad),
              box-shadow var(--duration-fast) var(--ease-out-quad);
}

.pricing-matrix-card:hover {
  transform:translateY(-2px);
  border-color:var(--accent-gold);
  box-shadow:var(--shadow-medium);
}

.pricing-matrix-header {
  display:flex;
  flex-direction:column;
  gap:0.35rem;
  margin-bottom:var(--space-md);
}

.pricing-category-title {
  font-family:var(--gabo-005);
  font-size:clamp(1rem, 1.25vw, 1.25rem);
  font-weight:800;
  color:var(--paper);
  word-break:normal;
  overflow-wrap:normal;
  hyphens:none;
  min-width:0;
}

.pricing-rate-figure {
  font-family:var(--gabo-962);
  font-size:var(--text-h3);
  font-weight:700;
  color:var(--accent-gold);
  line-height:var(--leading-tight);
  margin:0.25rem 0;
}

.pricing-basis-label {
  font-family:var(--gabo-962);
  font-size:var(--text-xs);
  color:var(--paper-muted);
}

.pricing-factors-list {
  display:flex;
  flex-direction:column;
  gap:0.5rem;
  margin:var(--space-md) 0;
  padding-top:var(--space-sm);
  border-top:1px solid var(--border-subtle);
  font-size:var(--text-xs);
  color:var(--paper-muted);
}

.pricing-factor-row {
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  flex-wrap:wrap;
  gap:0.25rem 0.5rem;
}

.pricing-factor-name {
  color:var(--paper-faint);
  min-width:0;
  flex:1 1 auto;
}

.pricing-factor-val {
  font-family:var(--gabo-962);
  color:var(--paper);
  font-weight:600;
  text-align:right;
  flex:1 1 auto;
  max-width:100%;
  overflow-wrap:break-word;
}


.privacy-stack-page {
  padding-top:calc(7.5rem + var(--space-section));
  padding-bottom:var(--space-section);
  min-height:100vh;
  scroll-padding-top:5rem;
}

.privacy-page-header {
  margin-bottom:var(--space-xl);
  max-width:var(--container-narrow);
}

.privacy-controls-bar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:var(--space-md);
  padding:1rem 1.25rem;
  background-color:var(--ground-surface);
  border:1px solid var(--border-subtle);
  border-left:3px solid var(--accent-gold);
  margin-bottom:var(--space-xl);
}

.privacy-controls-group {
  display:flex;
  align-items:center;
  gap:var(--space-sm);
  flex-wrap:wrap;
}

.disclosure-stack {
  display:flex;
  flex-direction:column;
  gap:var(--space-md);
  max-width:var(--container-narrow);
}

.disclosure-block {
  background-color:var(--ground-surface);
  border:1px solid var(--border-subtle);
  transition:border-color var(--duration-fast) var(--ease-out-quad),
              box-shadow var(--duration-fast) var(--ease-out-quad);
}

.disclosure-block[open] {
  border-color:var(--border-medium);
  box-shadow:var(--shadow-subtle);
}

.disclosure-block:target,
.disclosure-block.is-targeted {
  border-color:var(--accent-gold);
  box-shadow:0 0 0 2px var(--accent-gold-subtle);
}

.disclosure-summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-md);
  padding:1.25rem 1.5rem;
  cursor:pointer;
  list-style:none;
  font-family:var(--gabo-a44);
  user-select:none;
  min-height:var(--tap-min);
  transition:background-color var(--duration-fast) var(--ease-out-quad);
}

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

.disclosure-summary:hover {
  background-color:rgba(247, 242, 232, 0.04);
}

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

.disclosure-summary-text {
  display:flex;
  flex-direction:column;
  gap:0.25rem;
}

.disclosure-summary-lead {
  font-family:var(--gabo-005);
  font-size:var(--text-h4);
  font-weight:700;
  color:var(--paper);
}

.disclosure-summary-sentence {
  font-size:var(--text-sm);
  color:var(--paper-muted);
  line-height:var(--leading-normal);
}

.disclosure-indicator {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  min-width:32px;
  border:1px solid var(--border-subtle);
  background-color:var(--ground-deep);
  color:var(--accent-gold);
  flex-shrink:0;
  transition:transform var(--duration-normal) var(--ease-industrial),
              background-color var(--duration-fast) var(--ease-out-quad),
              border-color var(--duration-fast) var(--ease-out-quad);
}

.disclosure-block[open] .disclosure-indicator {
  transform:rotate(180deg);
  background-color:var(--accent-gold);
  color:var(--ground-deep);
}

.disclosure-body {
  padding:0 1.5rem 1.5rem 1.5rem;
  border-top:1px solid var(--border-subtle);
  padding-top:1.25rem;
  font-size:var(--text-sm);
  line-height:var(--leading-relaxed);
  color:var(--paper-muted);
}

.disclosure-body p + p {
  margin-top:var(--space-sm);
}

.disclosure-body ul {
  margin:var(--space-sm) 0;
  padding-left:1.25rem;
  list-style:square;
}

.disclosure-body li {
  margin-bottom:0.35rem;
}

.disclosure-highlight-box {
  background-color:var(--ground-deep);
  border-left:3px solid var(--hazard-line);
  padding:1rem 1.25rem;
  margin:var(--space-md) 0;
}

.disclosure-highlight-title {
  font-family:var(--gabo-962);
  font-size:var(--text-xs);
  letter-spacing:var(--tracking-wide);
  text-transform:uppercase;
  color:var(--hazard-line);
  margin-bottom:0.35rem;
}


.statute-page {
  padding-top:calc(5.5rem + var(--space-section));
  padding-bottom:var(--space-section);
  min-height:100vh;
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}

.statute-container {
  max-width:var(--container-max);
  margin:0 auto;
}

.statute-masthead {
  padding:var(--space-xl) var(--space-lg);
  background-color:var(--ground-surface);
  border:1px solid var(--border-subtle);
  border-bottom:3px solid var(--accent-gold);
  margin-bottom:var(--space-2xl);
}

.statute-preamble {
  font-size:var(--text-body);
  line-height:var(--leading-relaxed);
  color:var(--paper-muted);
  max-width:64ch;
  width:100%;
  margin-top:var(--space-sm);
  overflow-wrap:break-word;
}

.statute-two-column {
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
  gap:var(--space-2xl);
  position:relative;
  width:100%;
  min-width:0;
}

.statute-two-column::after {
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  width:1px;
  background-color:var(--border-subtle);
  transform:translateX(-50%);
}

@media (max-width: 860px) {
  .statute-two-column {
    grid-template-columns:1fr;
    gap:var(--space-xl);
  }

  .statute-two-column::after {
    display:none;
  }
}

.statute-column {
  display:flex;
  flex-direction:column;
  gap:var(--space-lg);
  min-width:0;
}

.statute-clause-entry {
  padding-bottom:var(--space-md);
  border-bottom:1px solid rgba(247, 242, 232, 0.08);
  font-size:var(--text-sm);
  line-height:var(--leading-normal);
  color:var(--paper-muted);
  text-align:left;
  overflow-wrap:break-word;
  word-break:normal;
  hyphens:auto;
}

.statute-runin-head {
  display:inline;
  font-family:var(--gabo-962);
  font-size:var(--text-xs);
  font-weight:700;
  letter-spacing:var(--tracking-stencil);
  text-transform:uppercase;
  color:var(--accent-gold);
  margin-right:0.5rem;
  overflow-wrap:break-word;
  word-break:normal;
}

.statute-clause-entry strong {
  color:var(--paper);
}

.statute-clause-entry code {
  color:var(--accent-gold);
  background-color:var(--ground-deep);
  padding:0.1rem 0.35rem;
  border:1px solid var(--border-subtle);
}

.statute-table-section {
  grid-column:1 / -1;
  margin-top:var(--space-xl);
  padding-top:var(--space-xl);
  border-top:1px solid var(--border-subtle);
}


.terms-document-page {
  padding-top:calc(5.5rem + var(--space-section));
  padding-bottom:var(--space-section);
  min-height:100vh;
  display:flex;
  justify-content:center;
}

.document-frame-card {
  width:100%;
  max-width:900px;
  background-color:var(--ground-surface);
  border:1px solid var(--border-medium);
  box-shadow:0 1px 0 rgba(247, 242, 232, 0.12), 0 16px 48px rgba(15, 6, 7, 0.85);
  position:relative;
  overflow:hidden;
}

.document-frame-card::before {
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:4px;
  background:linear-gradient(90deg, var(--hazard-line) 0%, var(--accent-gold) 100%);
}

.document-masthead-block {
  padding:clamp(2rem, 5vw, 3.5rem);
  background-color:var(--ground-deep);
  border-bottom:1px solid var(--border-subtle);
  position:relative;
}

.document-stamp {
  position:absolute;
  top:clamp(1.5rem, 4vw, 3rem);
  right:clamp(1.5rem, 4vw, 3.5rem);
  padding:0.5rem 0.85rem;
  border:2px solid var(--border-gold);
  color:var(--accent-gold);
  font-family:var(--gabo-962);
  font-size:var(--text-xs);
  letter-spacing:var(--tracking-stencil);
  text-transform:uppercase;
  transform:rotate(-3deg);
  opacity:0.85;
}

@media (max-width: 640px) {
  .document-stamp {
    position:static;
    display:inline-block;
    margin-top:var(--space-md);
    transform:none;
  }
}

.document-version-meta {
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-md);
  margin-top:var(--space-md);
  padding-top:var(--space-sm);
  border-top:1px solid var(--border-subtle);
  font-family:var(--gabo-962);
  font-size:var(--text-xs);
  color:var(--paper-muted);
}

.document-body-content {
  padding:clamp(2rem, 5vw, 3.5rem);
  display:flex;
  flex-direction:column;
  gap:var(--space-xl);
}

.document-clause-block {
  display:flex;
  flex-direction:column;
  gap:var(--space-sm);
  padding-bottom:var(--space-lg);
  border-bottom:1px solid rgba(247, 242, 232, 0.08);
}

.document-clause-block:last-child {
  border-bottom:0;
  padding-bottom:0;
}

.document-clause-title {
  font-family:var(--gabo-005);
  font-size:var(--text-h3);
  font-weight:700;
  color:var(--paper);
  display:flex;
  align-items:baseline;
  gap:0.5rem;
}

.document-clause-num {
  font-family:var(--gabo-962);
  font-size:var(--text-sm);
  color:var(--accent-gold);
}

.document-clause-text {
  font-size:var(--text-body);
  line-height:var(--leading-relaxed);
  color:var(--paper-muted);
}

.document-clause-text p + p {
  margin-top:var(--space-sm);
}

.warranty-callout-panel {
  background-color:var(--ground-deep);
  border:1px solid var(--border-gold);
  border-left:4px solid var(--accent-gold);
  padding:1.5rem;
  margin:var(--space-md) 0;
}

.warranty-callout-title {
  font-family:var(--gabo-962);
  font-size:var(--text-sm);
  font-weight:700;
  letter-spacing:var(--tracking-stencil);
  text-transform:uppercase;
  color:var(--accent-gold);
  margin-bottom:0.5rem;
}


.allocation-checker-wrap {
  width:100%;
  margin:var(--space-2xl) 0;
}

.allocation-tool-card {
  background-color:var(--ground-surface);
  border:1px solid var(--border-subtle);
  border-top:3px solid var(--accent-gold);
  padding:clamp(1.5rem, 4vw, 3rem);
  box-shadow:var(--shadow-medium);
}

.tool-control-row {
  display:flex;
  flex-direction:column;
  gap:0.5rem;
}

.tool-select-pills {
  display:flex;
  flex-wrap:wrap;
  gap:0.5rem;
}

.tool-pill-option {
  position:relative;
}

.tool-pill-option input[type="radio"] {
  position:absolute;
  opacity:0;
  width:0;
  height:0;
}

.tool-pill-label {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:var(--tap-min);
  padding:0.5rem 1rem;
  background-color:var(--ground-deep);
  border:1px solid var(--border-subtle);
  color:var(--paper-muted);
  font-family:var(--gabo-962);
  font-size:var(--text-xs);
  cursor:pointer;
  transition:all var(--duration-fast) var(--ease-out-quad);
}

.tool-pill-option input[type="radio"]:checked + .tool-pill-label {
  background-color:var(--accent-gold);
  color:var(--ground-deep);
  border-color:var(--accent-gold);
  font-weight:700;
}

.tool-pill-label:hover {
  border-color:var(--accent-gold);
  color:var(--paper);
}

.tool-pill-option input[type="radio"]:focus-visible + .tool-pill-label {
  outline:2px solid var(--paper);
  outline-offset:2px;
}

.tool-slider-wrap {
  display:flex;
  align-items:center;
  gap:1rem;
}

.tool-range-input {
  flex:1 1 auto;
  min-height:var(--tap-min);
  accent-color:var(--accent-gold);
  cursor:pointer;
}

.tool-range-readout {
  font-family:var(--gabo-962);
  font-size:var(--text-h4);
  font-weight:700;
  color:var(--accent-gold);
  min-width:48px;
  text-align:right;
}

.tool-calculated-display {
  display:flex;
  flex-direction:column;
  justify-content:center;
  background-color:var(--ground-deep);
  border:1px solid var(--border-medium);
  padding:var(--space-xl);
  min-height:260px;
}

.tool-calculated-label {
  font-family:var(--gabo-962);
  font-size:var(--text-xs);
  letter-spacing:var(--tracking-stencil);
  text-transform:uppercase;
  color:var(--accent-gold);
}

.tool-calculated-val {
  font-family:var(--gabo-962);
  font-size:clamp(2rem, 4vw, 3.2rem);
  font-weight:700;
  color:var(--paper);
  line-height:1.1;
  margin:0.35rem 0;
}

.tool-calculated-note {
  font-family:var(--gabo-a44);
  font-size:var(--text-sm);
  color:var(--paper-muted);
  line-height:var(--leading-normal);
  margin-top:0.5rem;
}

.tool-calculated-spec {
  margin-top:var(--space-md);
  padding-top:var(--space-sm);
  border-top:1px solid var(--border-subtle);
  font-family:var(--gabo-962);
  font-size:var(--text-xs);
  color:var(--paper-faint);
}


.catalogue-hero {
  padding-top:calc(5.5rem + var(--space-section));
  padding-bottom:var(--space-section);
  background-color:var(--ground-deep);
  border-bottom:2px solid var(--hazard-line);
}

.catalogue-intro-grid {
  display:grid;
  grid-template-columns:minmax(0, 1.4fr) minmax(0, 1fr);
  gap:var(--space-2xl);
  align-items:end;
}

@media (max-width: 860px) {
  .catalogue-intro-grid {
    grid-template-columns:1fr;
    gap:var(--space-lg);
  }
}

.scale-comparator-section {
  background-color:var(--ground-surface);
  border-top:1px solid var(--border-subtle);
  border-bottom:1px solid var(--border-subtle);
  padding:var(--space-2xl) 0;
}

.scale-grid {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:var(--space-md);
  margin-top:var(--space-xl);
}

@media (max-width: 960px) {
  .scale-grid {
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 520px) {
  .scale-grid {
    grid-template-columns:1fr;
  }
}

.scale-card {
  padding:var(--space-lg);
  background-color:var(--ground-deep);
  border:1px solid var(--border-subtle);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.scale-dimension-visual {
  font-family:var(--gabo-962);
  font-size:clamp(2rem, 3.5vw, 3rem);
  font-weight:700;
  color:var(--accent-gold);
  line-height:1;
  margin-bottom:var(--space-sm);
}

.scale-dimension-title {
  font-family:var(--gabo-005);
  font-size:var(--text-h4);
  font-weight:700;
  color:var(--paper);
  margin-bottom:var(--space-xs);
}

.scale-dimension-desc {
  font-size:var(--text-xs);
  line-height:var(--leading-normal);
  color:var(--paper-muted);
}


.about-hero {
  padding-top:calc(5.5rem + var(--space-section));
  padding-bottom:var(--space-section);
  background-color:var(--ground-deep);
  border-bottom:1px solid var(--border-subtle);
}

.lineage-manifesto-grid {
  display:grid;
  grid-template-columns:minmax(0, 1.2fr) minmax(0, 1fr);
  gap:var(--space-2xl);
  align-items:start;
}

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

.lineage-callout-box {
  padding:var(--space-xl);
  background-color:var(--ground-surface);
  border:1px solid var(--border-subtle);
  border-left:4px solid var(--hazard-line);
}

.lineage-year-badge {
  font-family:var(--gabo-962);
  font-size:var(--text-sm);
  font-weight:700;
  letter-spacing:var(--tracking-stencil);
  color:var(--hazard-line);
  text-transform:uppercase;
  margin-bottom:0.5rem;
}

.lineage-callout-quote {
  font-family:var(--gabo-005);
  font-size:var(--text-h3);
  font-weight:700;
  line-height:var(--leading-snug);
  color:var(--paper);
  margin-bottom:var(--space-md);
}

.lineage-provenance-list {
  display:flex;
  flex-direction:column;
  gap:var(--space-sm);
  padding-top:var(--space-md);
  border-top:1px solid var(--border-subtle);
  font-family:var(--gabo-962);
  font-size:var(--text-xs);
  color:var(--paper-muted);
}

.lineage-provenance-item {
  display:flex;
  align-items:center;
  gap:0.5rem;
}

.lineage-provenance-item svg {
  color:var(--accent-gold);
}


.faq-section {
  padding:var(--space-2xl) 0;
  background-color:var(--ground-surface);
  border-top:1px solid var(--border-subtle);
}

.faq-stack {
  display:flex;
  flex-direction:column;
  gap:var(--space-md);
  max-width:var(--container-narrow);
  margin-top:var(--space-xl);
}

.faq-item {
  background-color:var(--ground-deep);
  border:1px solid var(--border-subtle);
  transition:border-color var(--duration-fast) var(--ease-out-quad);
}

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

.faq-summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-md);
  padding:1.25rem 1.5rem;
  cursor:pointer;
  list-style:none;
  font-family:var(--gabo-005);
  font-size:var(--text-h4);
  font-weight:700;
  color:var(--paper);
  min-height:var(--tap-min);
  user-select:none;
  transition:background-color var(--duration-fast) var(--ease-out-quad);
}

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

.faq-summary:hover {
  background-color:rgba(247, 242, 232, 0.04);
}

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

.faq-icon {
  width:20px;
  height:20px;
  color:var(--accent-gold);
  flex-shrink:0;
  transition:transform var(--duration-fast) var(--ease-industrial);
}

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

.faq-body {
  padding:0 1.5rem 1.5rem 1.5rem;
  border-top:1px solid rgba(247, 242, 232, 0.08);
  padding-top:1rem;
  font-size:var(--text-sm);
  line-height:var(--leading-relaxed);
  color:var(--paper-muted);
}


.error-view-section {
  min-height:80vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:calc(6rem + var(--space-section)) var(--gutter) var(--space-section);
  text-align:center;
}

.error-view-card {
  max-width:640px;
  padding:var(--space-2xl) var(--space-xl);
  background-color:var(--ground-surface);
  border:1px solid var(--border-medium);
  border-top:4px solid var(--status-error);
  box-shadow:var(--shadow-heavy);
}

.error-code-badge {
  font-family:var(--gabo-962);
  font-size:clamp(3rem, 7vw, 5rem);
  font-weight:700;
  color:var(--status-error);
  line-height:1;
  margin-bottom:var(--space-sm);
}

.error-title {
  font-family:var(--gabo-005);
  font-size:var(--text-h2);
  font-weight:800;
  color:var(--paper);
  margin-bottom:var(--space-md);
}

.error-desc {
  font-size:var(--text-body);
  color:var(--paper-muted);
  line-height:var(--leading-relaxed);
  margin-bottom:var(--space-xl);
}


@media print {
  body {
    background-color:#FFF !important;
    color:#111 !important;
  }

  .site-header,
  .site-footer,
  .consent-bar,
  .chat-widget,
  .hero-webgl-canvas,
  .privacy-controls-bar,
  .btn {
    display:none !important;
  }

  .hero-split {
    min-height:auto !important;
    border:none !important;
  }

  .hero-split-content {
    background:none !important;
    padding:0 !important;
  }

  .disclosure-block {
    border:1px solid #CCC !important;
    page-break-inside:avoid;
  }

  .disclosure-block[open] .disclosure-body,
  .disclosure-body {
    display:block !important;
    padding:1rem !important;
    color:#222 !important;
  }

  .statute-two-column {
    display:block !important;
  }

  .statute-column {
    display:block !important;
  }

  .statute-two-column::after {
    display:none !important;
  }

  .document-frame-card {
    box-shadow:none !important;
    border:1px solid #333 !important;
    max-width:100% !important;
  }

  .document-masthead-block,
  .document-body-content {
    background:none !important;
    color:#111 !important;
  }

  h1, h2, h3, h4, p, span, td, th {
    color:#111 !important;
  }
}
