/* B5 — final polish + global guards. Loads last (90- prefix). */

/* Respect reduced motion everywhere. */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
}

/* Hero sits flush; the first content section shouldn't double its top border. */
.hero + .section { border-top: none; }

/* Balance standalone leads. */
.section-inner > p.lead { text-wrap: balance; }

/* Comfortable tap targets on touch devices. */
@media (pointer: coarse) {
  .site-nav a { padding-block: 0.35rem; }
  .btn { padding: 0.8rem 1.2rem; }
}

/* Print: drop the cinematic hero, keep the content legible. */
@media print {
  .hero { height: auto; }
  .hero__sticky { position: static; height: auto; overflow: visible; }
  .hero__video, .hero__scrim, .hero__progress, .site-header, .subscribe { display: none; }
  body { background: #fff; color: #000; }
}
