@media (max-width: 920px) {
  .hero, .intro-grid, .watch-panel, .newsletter-card {
    grid-template-columns: 1fr;
  }
  .hero { gap: 2rem; min-height: auto; }
  .hero-card { min-height: 460px; }
  .card-grid, .flock-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 720px) {
  .nav-toggle { display: block; }
  .nav-links {
    position: absolute;
    left: 1rem;
    right: 1rem;
    top: 76px;
    display: none;
    grid-template-columns: 1fr;
    padding: 1rem;
    border: 1px solid var(--border);
    border-radius: 22px;
    background: rgba(255, 249, 236, 0.96);
    box-shadow: var(--shadow);
  }
  .nav-links.is-open { display: grid; }
  .section { padding: 4rem 1rem; }
  .hero { padding-top: 4.5rem; }
  h1 { font-size: clamp(3rem, 16vw, 5rem); }
  .card-grid, .flock-grid, .video-grid { grid-template-columns: 1fr; }
  .site-footer { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    transition: none !important;
  }
  .reveal { opacity: 1; transform: none; }
}

@media (max-width: 920px) {
  .snapshot-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 720px) {
  .snapshot-grid { grid-template-columns: 1fr; }
  .hero-photo, .hero-photo-card { min-height: 420px; }
}
