.hero-opening {
  position:relative;
  width:100%;
  padding-top:calc(var(--header-height) + var(--space-m));
  padding-bottom:0;
  background-color:var(--ground);
  overflow:hidden;
}

[data-opening] {
  position:relative;
  width:100%;
}

.hero-type-stage {
  max-width:var(--measure-max);
  margin-inline:auto;
  padding-inline:var(--space-s);
  padding-bottom:var(--space-m);
  display:flex;
  flex-direction:column;
  gap:var(--space-s);
}

@media (min-width: 768px) {
  .hero-type-stage {
    padding-inline:var(--space-l);
    display:grid;
    grid-template-columns:1.4fr 1fr;
    align-items:end;
    gap:var(--space-l);
    padding-bottom:var(--space-m);
  }
}

@media (min-width: 1200px) {
  .hero-type-stage {
    padding-inline:var(--space-xl);
  }
}

.hero-headline {
  font-family:var(--hizi-65b);
  font-size:clamp(2.3rem, 1.8rem + 3.4vw, 4.8rem);
  font-weight:700;
  line-height:1.05;
  letter-spacing:-0.035em;
  color:var(--ink);
  text-wrap:balance;
  overflow-wrap:break-word;
  max-width:18ch;
}

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

.hero-lede-text {
  font-size:var(--hizi-c84);
  line-height:1.5;
  color:var(--ink-soft);
  max-width:48ch;
  margin-bottom:0;
}

.hero-meta-strip {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--space-xs);
  font-family:var(--hizi-9b6);
  font-size:var(--step--2);
  color:var(--ink-soft);
  text-transform:uppercase;
  letter-spacing:0.05em;
  padding-top:var(--space-3xs);
  border-top:var(--border-fine);
}

.hero-fullbleed-stage {
  position:relative;
  width:100vw;
  margin-left:max(calc(-50vw + 50%), calc(50% - 50vw));
  margin-right:max(calc(-50vw + 50%), calc(50% - 50vw));
  aspect-ratio:16 / 9;
  max-height:900px;
  overflow:hidden;
  background-color:var(--surface);
  border-top:var(--border-fine);
  border-bottom:var(--border-fine);
}

@media (max-width: 767px) {
  .hero-fullbleed-stage {
    aspect-ratio:3 / 2;
  }
}

.hero-fullbleed-stage img {
  width:100%;
  height:100%;

  object-fit:cover;
  object-position:20% 85%;
  transform:translate3d(0, 0, 0);
  will-change:transform;
}

.job-section-first {
  padding-top:var(--space-l);
  padding-bottom:var(--space-2xl);
  border-bottom:var(--border-fine);
}

@media (min-width: 768px) {
  .job-section-first {
    padding-top:var(--space-xl);
    padding-bottom:var(--space-3xl);
  }
}

.hero-floating-action {
  position:absolute;
  top:var(--space-m);
  right:var(--space-m);
  z-index:10;
  display:inline-flex;
}

@media (min-width: 768px) {
  .hero-floating-action {
    top:var(--space-xl);
    right:var(--space-xl);
  }
}

.hero-action-anchor {
  display:inline-flex;
  align-items:center;
  gap:var(--space-xs);
  min-height:48px;
  height:48px;
  padding:0 1.4rem;
  border-radius:var(--radius-none);
  background-color:var(--accent);
  color:var(--accent-ink);
  border:1px solid var(--accent);
  font-family:var(--hizi-9b6);
  font-size:var(--step--1);
  font-weight:500;
  text-decoration:none;
  letter-spacing:0.02em;
  box-shadow:none;
  box-sizing:border-box;
  transition:background-color var(--dur-fast) var(--ease-out),
              color var(--dur-fast) var(--ease-out),
              border-color var(--dur-fast) var(--ease-out);
}

.hero-action-anchor:hover {
  background-color:var(--accent);
  color:var(--accent-ink);
  border-color:var(--accent);
}

.hero-action-anchor:active {
  background-color:#793f1b;
  color:var(--accent-ink);
}

.hero-action-anchor:focus-visible {
  outline:2px solid var(--accent);
  outline-offset:2px;
}

.job-section {
  padding-block:var(--space-2xl);
  border-bottom:var(--border-fine);
}

@media (min-width: 768px) {
  .job-section {
    padding-block:var(--space-3xl);
  }
}

.job-section-inner {
  max-width:var(--measure-max);
  margin-inline:auto;
  padding-inline:var(--space-s);
}

@media (min-width: 768px) {
  .job-section-inner {
    padding-inline:var(--space-l);

  }
}

@media (min-width: 1200px) {
  .job-section-inner {
    padding-inline:var(--space-xl);
  }
}

.job-title {
  font-family:var(--hizi-65b);
  font-size:clamp(1.8rem, 1.4rem + 1.8vw, 2.9rem);
  font-weight:600;
  line-height:1.15;
  letter-spacing:-0.025em;
  color:var(--ink);
  margin-bottom:var(--space-m);
  max-width:32ch;
  text-wrap:balance;
}

.job-narrative {
  font-size:var(--hizi-c84);
  line-height:1.65;
  color:var(--ink);
  max-width:var(--measure-prose);
  margin-bottom:var(--space-l);
}

.job-facts-matrix {
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:var(--space-s);
  padding:var(--space-m);
  background-color:var(--surface);
  border:var(--border-fine);
  margin-bottom:var(--space-l);
  max-width:var(--measure-prose);
}

@media (min-width: 640px) {
  .job-facts-matrix {
    grid-template-columns:repeat(4, minmax(0, 1fr));
  }
}

.job-fact-cell {
  display:flex;
  flex-direction:column;
  gap:var(--space-3xs);
}

.job-fact-title {
  font-family:var(--hizi-9b6);
  font-size:var(--step--2);
  color:var(--ink-soft);
  text-transform:uppercase;
  letter-spacing:0.05em;
}

.job-fact-data {
  font-family:var(--hizi-9b6);
  font-size:var(--step--1);
  font-weight:500;
  color:var(--ink);
  font-variant-numeric:tabular-nums;
}

.job-evidence-break {
  position:relative;
  width:100vw;
  margin-left:max(calc(-50vw + 50%), calc(50% - 50vw));
  margin-right:max(calc(-50vw + 50%), calc(50% - 50vw));
  margin-block:var(--space-2xl);
  background-color:var(--surface);
  border-top:var(--border-fine);
  border-bottom:var(--border-fine);
}

.job-evidence-break img {
  width:100%;
  aspect-ratio:3 / 2;
  object-fit:cover;
  display:block;
}

.job-evidence-caption {
  max-width:var(--measure-max);

  margin-inline:auto;
  padding:var(--space-xs) var(--space-s);
  font-family:var(--hizi-9b6);
  font-size:var(--step--2);
  color:var(--ink-soft);
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--space-xs);
  background-color:var(--surface);
}

@media (min-width: 768px) {
  .job-evidence-caption {
    padding-inline:var(--space-l);
  }
}

.job-action-row {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--space-m);
  margin-top:var(--space-l);
}

.duotone-section {
  position:relative;
  width:100vw;
  margin-left:max(calc(-50vw + 50%), calc(50% - 50vw));
  margin-right:max(calc(-50vw + 50%), calc(50% - 50vw));
  aspect-ratio:16 / 9;
  min-height:380px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background-color:#2b261c;
  margin-block:var(--space-3xl);
  border-top:var(--border-thick);
  border-bottom:var(--border-thick);
}

@media (max-width: 480px) {
  .duotone-section {
    aspect-ratio:auto;
    min-height:480px;
    padding-block:var(--space-xl);
  }
}

.duotone-bg {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  aspect-ratio:3 / 2;
  object-fit:cover;
  filter:contrast(1.2) brightness(0.68) sepia(0.4) hue-rotate(-22deg);
  opacity:0.88;
}

.duotone-tint {
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(43, 38, 28, 0.55) 0%, rgba(166, 94, 46, 0.42) 100%);
  mix-blend-mode:multiply;
}

.duotone-content-shell {
  position:relative;
  z-index:2;
  max-width:860px;
  padding:var(--space-xl) var(--space-s);
  text-align:center;
  color:#ffffff;
}

@media (min-width: 768px) {
  .duotone-content-shell {
    padding:var(--space-2xl) var(--space-l);
  }
}

.duotone-headline {
  font-family:var(--hizi-65b);
  font-size:clamp(2rem, 1.6rem + 2.4vw, 3.8rem);
  font-weight:700;
  line-height:1.12;
  color:#ffffff;
  margin-bottom:var(--space-m);
  letter-spacing:-0.025em;
  text-wrap:balance;
}

.duotone-body {
  font-size:var(--hizi-c84);
  line-height:1.6;
  color:#e5dac7;
  max-width:58ch;
  margin-inline:auto;
  margin-bottom:var(--space-l);
}

.duotone-tag {
  display:inline-flex;
  align-items:center;
  gap:var(--space-2xs);
  padding:0.35rem 0.8rem;
  background-color:rgba(20, 16, 10, 0.82);
  border:1px solid rgba(255, 255, 255, 0.7);
  color:#ffffff;
  font-family:var(--hizi-9b6);
  font-size:var(--step--2);
  text-transform:uppercase;
  letter-spacing:0.08em;
  margin-bottom:var(--space-m);
}

.tool-section {
  padding-block:var(--space-2xl);
  background-color:var(--surface);
  border-top:var(--border-fine);
  border-bottom:var(--border-fine);
}

@media (min-width: 768px) {
  .tool-section {
    padding-block:var(--space-3xl);
  }
}

.tool-shell {
  max-width:var(--measure-max);
  margin-inline:auto;
  padding-inline:var(--space-xs);
  box-sizing:border-box;
  width:100%;
  overflow-x:hidden;
}

@media (min-width: 400px) {
  .tool-shell {
    padding-inline:var(--space-s);
  }
}

@media (min-width: 768px) {
  .tool-shell {
    padding-inline:var(--space-l);
  }
}

@media (min-width: 1200px) {
  .tool-shell {
    padding-inline:var(--space-xl);
  }
}

.tool-header-block {
  margin-bottom:var(--space-xl);
}

.tool-headline {
  font-family:var(--hizi-65b);
  font-size:clamp(1.8rem, 1.5rem + 1.6vw, 2.8rem);
  margin-bottom:var(--space-xs);
}

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

@media (min-width: 900px) {
  .tool-layout {
    grid-template-columns:1.25fr 1fr;
    align-items:start;
  }
}

.tool-controls-panel {
  display:flex;
  flex-direction:column;
  gap:var(--space-l);
  background-color:var(--ground);
  padding:var(--space-s);
  border:var(--border-fine);
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}

@media (min-width: 480px) {
  .tool-controls-panel {
    padding:var(--space-l);
  }
}

.tool-fieldset {
  border:none;
  padding:0;
  margin:0;
  display:flex;
  flex-direction:column;
  gap:var(--space-xs);
}

.tool-legend {
  font-family:var(--hizi-9b6);
  font-size:var(--step--1);
  font-weight:500;
  color:var(--ink);
  text-transform:uppercase;
  letter-spacing:0.04em;
  margin-bottom:var(--space-2xs);
}

.tool-radio-grid {
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-xs);
}

@media (min-width: 600px) {
  .tool-radio-grid {
    grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
  }
}

.tool-radio-card {
  position:relative;
  border:var(--border-fine);
  background-color:var(--surface);
  padding:var(--space-s);
  cursor:pointer;
  display:flex;
  flex-direction:column;
  gap:var(--space-3xs);
  transition:background-color var(--dur-fast) var(--ease-out),
              border-color var(--dur-fast) var(--ease-out);
}

.tool-radio-card:hover {
  background-color:var(--surface-2);
  border-color:var(--ink);
}

.tool-radio-card input[type="radio"] {
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.tool-radio-card.is-selected,
.tool-radio-card:has(input[type="radio"]:checked) {
  background-color:var(--ground);
  border-color:var(--accent);
  box-shadow:inset 0 0 0 1px var(--accent);
}

.tool-radio-card:has(input[type="radio"]:focus-visible) {
  outline:2px solid var(--accent);
  outline-offset:2px;
}

.tool-radio-label {
  font-family:var(--hizi-9b6);
  font-size:var(--step--1);
  font-weight:500;
  color:var(--ink);
}

.tool-radio-sub {
  font-size:var(--step--2);
  color:var(--ink-soft);
}

.tool-range-row {
  display:flex;
  flex-direction:column;
  gap:var(--space-2xs);
}

.tool-range-labels {
  display:flex;
  justify-content:space-between;
  font-family:var(--hizi-9b6);
  font-size:var(--step--1);
  color:var(--ink);
}

.tool-range-slider {
  width:100%;
  height:8px;
  background:var(--surface-2);
  border-radius:var(--radius-none);
  outline:none;
  -webkit-appearance:none;
  border:var(--border-fine);
}

.tool-range-slider::-webkit-slider-thumb {
  -webkit-appearance:none;
  appearance:none;
  width:24px;
  height:24px;
  background:var(--accent);
  cursor:pointer;
  border:1px solid var(--ink);
}

.tool-range-slider::-moz-range-thumb {
  width:24px;
  height:24px;
  background:var(--accent);
  cursor:pointer;
  border:1px solid var(--ink);
}

.tool-range-slider:focus-visible {
  outline:2px solid var(--ink);
  outline-offset:2px;
}

.tool-results-panel {
  background-color:var(--ground);
  border:var(--border-thick);
  padding:var(--space-l);
  display:flex;
  flex-direction:column;
  gap:var(--space-m);
}

@media (min-width: 900px) {
  .tool-results-panel {
    position:sticky;
    top:calc(var(--header-height) + var(--space-m));
  }
}

.tool-output-box {
  padding:var(--space-m);
  background-color:var(--surface);
  border:var(--border-fine);
  display:flex;
  flex-direction:column;
  gap:var(--space-2xs);
}

.tool-output-label {
  font-family:var(--hizi-9b6);
  font-size:var(--step--2);
  color:var(--ink-soft);
  text-transform:uppercase;
  letter-spacing:0.05em;
}

.tool-output-val {
  font-family:var(--hizi-9b6);
  font-size:clamp(1.4rem, 1.2rem + 0.8vw, 2.2rem);
  font-weight:600;
  color:var(--ink);
  line-height:1.2;
  font-variant-numeric:tabular-nums;
  overflow-wrap:break-word;
}

.tool-note-box {
  font-size:var(--step--1);
  color:var(--ink);
  line-height:1.5;
  padding:var(--space-s);
  background-color:var(--surface-2);
  border:var(--border-fine);
}

.tool-status-live {
  font-family:var(--hizi-9b6);
  font-size:var(--step--2);
  color:var(--ink-soft);
  border-left:2px solid var(--accent);
  padding-left:var(--space-xs);
}

.tool-quote-disclaimer {
  font-size:var(--step--2);
  color:var(--ink-soft);
  line-height:1.4;
  border-top:var(--border-fine);
  padding-top:var(--space-s);
}

.legal-page-header {
  padding-top:calc(var(--header-height) + var(--space-xl));
  padding-bottom:var(--space-xl);
  border-bottom:var(--border-fine);
  background-color:var(--surface);
}

.legal-header-shell {
  max-width:var(--measure-max);
  margin-inline:auto;
  padding-inline:var(--space-s);
}

@media (min-width: 768px) {
  .legal-header-shell {
    padding-inline:var(--space-l);
  }
}

@media (min-width: 1200px) {
  .legal-header-shell {
    padding-inline:var(--space-xl);
  }
}

.legal-page-title {
  font-family:var(--hizi-65b);
  font-size:clamp(2rem, 1.6rem + 2vw, 3.2rem);
  line-height:1.15;
  margin-bottom:var(--space-xs);
}

.legal-page-sub {
  font-size:var(--hizi-c84);
  color:var(--ink-soft);
  max-width:var(--measure-prose);
}

.legal-tab-system {
  padding-block:var(--space-2xl);
}

.legal-tab-shell {
  max-width:var(--measure-max);
  margin-inline:auto;
  padding-inline:var(--space-s);
}

@media (min-width: 768px) {
  .legal-tab-shell {
    padding-inline:var(--space-l);
  }
}

@media (min-width: 1200px) {
  .legal-tab-shell {
    padding-inline:var(--space-xl);
  }
}

.legal-tablist {
  display:flex;
  flex-direction:column;
  border-bottom:var(--border-fine);
  gap:var(--space-2xs);
  margin-bottom:var(--space-xl);
}

@media (min-width: 768px) {
  .legal-tablist {
    flex-direction:row;
    flex-wrap:wrap;
    gap:0;
  }
}

.legal-tab-btn {
  background:var(--surface);
  border:var(--border-fine);
  padding:0.75rem 1.25rem;
  font-family:var(--hizi-9b6);
  font-size:var(--step--1);
  font-weight:500;
  color:var(--ink);
  cursor:pointer;
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  text-align:left;
  transition:background-color var(--dur-fast) var(--ease-out),
              border-color var(--dur-fast) var(--ease-out),
              color var(--dur-fast) var(--ease-out);
}

@media (min-width: 768px) {
  .legal-tab-btn {
    border-bottom:none;
    margin-right:max(-1px, calc(50% - 50vw));
    margin-bottom:-1px;
  }
}

.legal-tab-btn:hover {
  background-color:var(--surface-2);
}

.legal-tab-btn:active {
  background-color:var(--ground);
}

.legal-tab-btn:focus-visible {
  outline:2px solid var(--accent);
  outline-offset:2px;
}

.legal-tab-btn[aria-selected="true"] {
  background-color:var(--ground);
  border-color:var(--line);
  border-bottom:2px solid var(--accent);
  color:var(--accent);
  font-weight:600;
}

.legal-tabpanel {
  display:block;
}

@media (min-width: 768px) {
  .legal-tabpanel[hidden] {
    display:none !important;
  }
}

@media (min-width: 768px) {
  .legal-accordion-trigger {
    display:none;
  }
}

@media (max-width: 767px) {
  .legal-tablist {
    display:none;
  }

  .legal-accordion-item {
    border:var(--border-fine);
    background-color:var(--surface);
    margin-bottom:var(--space-xs);
  }

  .legal-accordion-trigger {
    width:100%;
    min-height:48px;
    padding:0.75rem 1rem;
    background:none;
    border:none;
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-family:var(--hizi-9b6);
    font-size:var(--step--1);
    font-weight:500;
    color:var(--ink);
    cursor:pointer;
  }

  .legal-accordion-trigger:hover {
    background-color:var(--surface-2);
  }

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

  .legal-accordion-trigger[aria-expanded="true"] {
    background-color:var(--surface-2);
    border-bottom:var(--border-fine);
    color:var(--accent);
  }

  .legal-accordion-body {
    padding:var(--space-m);
    background-color:var(--ground);
  }

  .legal-accordion-body[hidden] {
    display:none;
  }
}

.legal-content-prose {
  max-width:var(--measure-prose);
  font-size:var(--hizi-c84);
  line-height:1.65;
}

.legal-content-prose h2,
.legal-content-prose h3 {
  margin-top:var(--space-xl);
  margin-bottom:var(--space-s);
}

.legal-content-prose h2:first-child,
.legal-content-prose h3:first-child {
  margin-top:0;
}

.dsar-box {
  background-color:var(--surface);
  border:var(--border-thick);
  padding:var(--space-l);
  margin-block:var(--space-2xl);
}

.dsar-box h3 {
  margin-bottom:var(--space-xs);
}

.dsar-box p {
  margin-bottom:var(--space-m);
}

.statute-container {
  max-width:var(--measure-max);
  margin-inline:auto;
  padding-inline:var(--space-s);
  padding-block:var(--space-2xl);
}

@media (min-width: 768px) {
  .statute-container {
    padding-inline:var(--space-l);
  }
}

@media (min-width: 1200px) {
  .statute-container {
    padding-inline:var(--space-xl);
  }
}

.statute-grid {
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-xl);
}

@media (min-width: 768px) {
  .statute-grid {
    grid-template-columns:1fr 1fr;
    column-gap:var(--space-2xl);
    position:relative;
  }

  .statute-grid::after {
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:50%;
    width:1px;
    background-color:var(--line);
  }
}

.statute-col {
  display:flex;
  flex-direction:column;
  gap:var(--space-l);
}

.statute-paragraph {
  font-size:var(--step--1);
  line-height:1.55;
  color:var(--ink);
  text-align:justify;
}

.statute-runin-head {
  font-family:var(--hizi-9b6);
  font-size:var(--step--2);
  font-weight:600;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--ink);
  margin-right:var(--space-2xs);
  display:inline;
}

.statute-table-wrap {
  margin-block:var(--space-xl);
  overflow-x:auto;
  border:var(--border-fine);
  background-color:var(--surface);
}

.statute-table {
  min-width:580px;
}

.terms-wrapper {
  max-width:var(--measure-max);
  margin-inline:auto;
  padding-inline:var(--space-s);
  padding-block:var(--space-2xl);
}

@media (min-width: 768px) {
  .terms-wrapper {
    padding-inline:var(--space-l);
  }
}

@media (min-width: 1200px) {
  .terms-wrapper {
    padding-inline:var(--space-xl);
  }
}

.terms-mobile-nav {
  display:block;
  margin-bottom:var(--space-l);
  background-color:var(--surface);
  border:var(--border-fine);
  padding:var(--space-s);
}

@media (min-width: 860px) {
  .terms-mobile-nav {
    display:none;
  }
}

.terms-mobile-label {
  font-family:var(--hizi-9b6);
  font-size:var(--step--2);
  color:var(--ink-soft);
  text-transform:uppercase;
  letter-spacing:0.05em;
  margin-bottom:var(--space-3xs);
}

.terms-jump-control {
  width:100%;
  min-height:44px;
  padding:0.5rem 0.75rem;
  background-color:var(--surface-2);
  border:var(--border-fine);
  color:var(--ink);
  font-family:var(--hizi-9b6);
  font-size:var(--step--1);
}

@media (max-width: 48rem) {
  .terms-jump-control {
    font-size:max(16px, 1rem);
  }
}

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

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

.terms-sticky-index {
  display:none;
}

@media (min-width: 860px) {
  .terms-sticky-index {
    display:block;
    position:sticky;
    top:calc(var(--header-height) + var(--space-l));
    align-self:start;
    border-left:var(--border-fine);
    padding-left:var(--space-m);
  }

  .terms-index-title {
    font-family:var(--hizi-9b6);
    font-size:var(--step--2);
    text-transform:uppercase;
    letter-spacing:0.08em;
    color:var(--ink-soft);
    margin-bottom:var(--space-s);
  }

  .terms-index-list {
    list-style:none;
    padding:0;
    margin:0;
    display:flex;
    flex-direction:column;
    gap:var(--space-xs);
  }

  .terms-index-link {
    font-family:var(--hizi-9b6);
    font-size:var(--step--2);
    color:var(--ink-soft);
    text-decoration:none;
    display:block;
    padding:var(--space-3xs) 0;
    transition:color var(--dur-fast) var(--ease-out),
                transform var(--dur-fast) var(--ease-out);
  }

  .terms-index-link:hover {
    color:var(--accent);
    transform:translateX(4px);
  }

  .terms-index-link.is-current {
    color:var(--accent);
    font-weight:600;
  }
}

.terms-body-col {
  display:flex;
  flex-direction:column;
  gap:var(--space-2xl);
}

.terms-section {
  scroll-margin-top:calc(var(--header-height) + var(--space-m));
}

.terms-num-tag {
  font-family:var(--hizi-9b6);
  font-size:var(--step--1);
  font-weight:600;
  color:var(--accent);
  display:inline-block;
  margin-bottom:var(--space-3xs);
}

.terms-sec-title {
  font-family:var(--hizi-65b);
  font-size:var(--hizi-4ad);
  margin-bottom:var(--space-s);
}

.itinerary-hero-stage {
  padding-top:calc(var(--header-height) + var(--space-xl));
  padding-bottom:var(--space-xl);
  background-color:var(--surface);
  border-bottom:var(--border-fine);
}

.itinerary-card {
  background-color:var(--ground);
  border:var(--border-fine);
  padding:var(--space-l);
  display:flex;
  flex-direction:column;
  gap:var(--space-m);
}

.itinerary-card-media {
  width:100%;
  aspect-ratio:3 / 2;
  overflow:hidden;
  border:var(--border-fine);
}

.itinerary-card-media img {
  width:100%;
  height:100%;
  aspect-ratio:3 / 2;
  object-fit:cover;
  transition:transform var(--dur-deliberate) var(--ease-out);
}

.itinerary-card:hover .itinerary-card-media img {
  transform:scale(1.03);
}

.route-table-wrapper {
  overflow-x:auto;
  border:var(--border-fine);
  background-color:var(--surface);
  margin-block:var(--space-xl);
}

.route-spec-table {
  min-width:680px;
}

.service-spec-bar {
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(160px, 1fr));
  gap:var(--space-s);
  padding:var(--space-m);
  background-color:var(--surface);
  border:var(--border-fine);
  margin-block:var(--space-l);
}

.service-step-timeline {
  display:flex;
  flex-direction:column;
  gap:var(--space-l);
  margin-block:var(--space-xl);
  border-left:2px solid var(--line);
  padding-left:var(--space-m);
}

.service-step-item {
  display:flex;
  flex-direction:column;
  gap:var(--space-3xs);
  position:relative;
}

.service-step-item::before {
  content:"";
  position:absolute;
  left:calc(-1 * var(--space-m) - 6px);
  top:4px;
  width:10px;
  height:10px;
  background-color:var(--accent);
  border:1px solid var(--ink);
}

.service-step-time {
  font-family:var(--hizi-9b6);
  font-size:var(--step--2);
  color:var(--accent);
  font-weight:500;
}

.service-step-name {
  font-family:var(--hizi-65b);
  font-size:var(--hizi-8bc);
}

.fleet-grid {
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-l);
  margin-block:var(--space-xl);
}

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

.fleet-card {
  background-color:var(--surface);
  border:var(--border-fine);
  display:flex;
  flex-direction:column;
  overflow:hidden;
}

.fleet-card-media {
  width:100%;
  aspect-ratio:3 / 2;
  overflow:hidden;
  border-bottom:var(--border-fine);
}

.fleet-card-media img {
  width:100%;
  height:100%;
  aspect-ratio:3 / 2;
  object-fit:cover;
}

.fleet-card-body {
  padding:var(--space-m);
  display:flex;
  flex-direction:column;
  gap:var(--space-xs);
  flex:1;
}

.fleet-card-title {
  font-family:var(--hizi-65b);
  font-size:var(--hizi-8bc);
  margin-bottom:var(--space-3xs);
}

.fleet-spec-row {
  display:flex;
  justify-content:space-between;
  font-family:var(--hizi-9b6);
  font-size:var(--step--2);
  padding-top:var(--space-3xs);
  border-top:var(--border-fine);
}

.weather-protocol-callout {
  background-color:var(--surface-2);
  border-left:4px solid var(--accent);
  padding:var(--space-l);
  margin-block:var(--space-xl);
}

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

@media (min-width: 768px) {
  .about-dossier-grid {
    grid-template-columns:1.2fr 1fr;
  }
}

.accreditation-panel {
  background-color:var(--surface);
  border:var(--border-thick);
  padding:var(--space-l);
  display:flex;
  flex-direction:column;
  gap:var(--space-s);
}

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

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

.meeting-locations-grid {
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-m);
  margin-block:var(--space-xl);
}

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

.meeting-card {
  background-color:var(--surface);
  border:var(--border-fine);
  padding:var(--space-m);
  display:flex;
  flex-direction:column;
  gap:var(--space-xs);
}

.meeting-card-title {
  font-family:var(--hizi-65b);
  font-size:var(--hizi-c84);
  font-weight:600;
}

.meeting-card-coords {
  font-family:var(--hizi-9b6);
  font-size:var(--step--2);
  color:var(--ink-soft);
}

.thanks-stage {
  padding-top:calc(var(--header-height) + var(--space-2xl));
  padding-bottom:var(--space-3xl);
  min-height:70vh;
  display:flex;
  align-items:center;
}

.thanks-card-box {
  background-color:var(--surface);
  border:var(--border-thick);
  padding:var(--space-xl);
  max-width:640px;
  margin-inline:auto;
  display:flex;
  flex-direction:column;
  gap:var(--space-m);
}

.thanks-receipt-badge {
  font-family:var(--hizi-9b6);
  font-size:var(--step--1);
  color:var(--accent);
  text-transform:uppercase;
  letter-spacing:0.05em;
  font-weight:600;
}

.error-stage {
  padding-top:calc(var(--header-height) + var(--space-2xl));
  padding-bottom:var(--space-3xl);
  min-height:70vh;
  display:flex;
  align-items:center;
}

.error-card-box {
  max-width:580px;
  margin-inline:auto;
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:var(--space-m);
}

.error-huge-code {
  font-family:var(--hizi-65b);
  font-size:clamp(4rem, 3rem + 5vw, 8rem);
  font-weight:700;
  line-height:1;
  color:var(--accent);
}

.faq-list {
  display:flex;
  flex-direction:column;
  gap:var(--space-xs);
  margin-block:var(--space-xl);
  max-width:var(--measure-prose);
}

.faq-item {
  border:var(--border-fine);
  background-color:var(--surface);
}

.faq-question-btn {
  width:100%;
  min-height:48px;
  padding:var(--space-s) var(--space-m);
  background:none;
  border:none;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:var(--space-s);
  cursor:pointer;
  text-align:left;
  font-family:var(--hizi-9b6);
  font-size:var(--step--1);
  font-weight:500;
  color:var(--ink);
  transition:background-color var(--dur-fast) var(--ease-out);
}

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

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

.faq-question-btn[aria-expanded="true"] {
  background-color:var(--surface-2);
  border-bottom:var(--border-fine);
}

.faq-answer-pane {
  padding:var(--space-m);
  background-color:var(--ground);
  font-size:var(--hizi-c84);
  line-height:1.6;
}

.faq-answer-pane[hidden] {
  display:none;
}
