@media (max-width: 1080px) {
  .hero { grid-template-columns: 1fr; min-height: auto; }
  .hero-copy { padding-top: 30px; }
  .hero-model { min-height: 520px; }
  .pipeline-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pipeline-card:not(:last-child)::after { display: none; }
  .asset-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .done-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .shell { width: min(100% - 30px, 680px); }
  .hero { gap: 44px; padding-block: 48px 70px; }
  .hero h1 { font-size: clamp(3.2rem, 16vw, 5.2rem); }
  .eyebrow { align-items: flex-start; flex-direction: column; gap: 4px; }
  .eyebrow span + span::before { display: none; }
  .hero-model { min-height: 500px; }
  .spatial-frame { margin-inline: -10px; }
  .section-heading { grid-template-columns: 1fr; gap: 20px; }
  .branch-grid,
  .story-grid,
  .truth-content,
  .open-decisions { grid-template-columns: 1fr; }
  .branch-card { min-height: auto; padding-bottom: 86px; }
  .convergence { height: 50px; }
  .convergence::before { top: 0; right: auto; left: 50%; width: 1px; height: 50px; border: 0; border-left: 1px solid var(--line-strong); }
  .convergence::after,
  .convergence span { display: none; }
  .approval-gate { grid-template-columns: 1fr auto; }
  .gate-index { grid-column: 1 / -1; }
  .pipeline-grid,
  .asset-flow,
  .room-flow,
  .outcome-outputs,
  .done-grid { grid-template-columns: 1fr; }
  .pipeline-card,
  .asset-card,
  .view-decision { min-height: auto; }
  .pipeline-tag { position: static; display: inline-block; margin-top: 18px; }
  .outcome-outputs { gap: 1px; }
  .truth-section { padding: 76px 15px; }
  .confidence-panel li { grid-template-columns: 15px 70px 1fr; }
  .done-grid article { min-height: 180px; }
  .open-decisions { gap: 40px; margin-bottom: 15px; }
  .open-decisions li { grid-template-columns: 1fr; gap: 4px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: 0.01ms !important; }
}

@media print {
  body { background: #fff; }
  body::before,
  .skip-link { display: none; }
  .shell { width: 100%; }
  .hero { min-height: auto; padding-block: 24px 44px; }
  .hero-model,
  .flow-board,
  .story-card,
  .open-decisions { box-shadow: none; }
  .flow-section,
  .stories-section,
  .done-section { padding-block: 44px; }
  .truth-section { break-inside: avoid; print-color-adjust: exact; }
  .story-card,
  .outcome-card,
  .open-decisions { break-inside: avoid; }
}
