/* ===============================================================
   HCBI responsive
   Breakpoints: 1024px (nav to mobile), 768px (trust bar, footer),
   560px (fine tuning). Mobile-first additions layered on top of
   the desktop base in main.css and components.css.
   =============================================================== */

/* ---------------------------------------------------------------
   TABLET AND BELOW (max 1024px)
   Hide desktop nav and CTAs, show hamburger.
--------------------------------------------------------------- */
@media (max-width: 1024px) {
  .primary-nav,
  .site-header__actions {
    display: none;
  }

  .mobile-nav-toggle {
    display: flex;
    margin-left: auto;
  }

  .site-header__inner {
    gap: var(--space-sm);
  }
}

/* ---------------------------------------------------------------
   MOBILE (max 768px)
   Hide trust bar, stack footer, tighten spacing.
--------------------------------------------------------------- */
@media (max-width: 768px) {
  .trust-bar {
    display: none;
  }

  section {
    padding: var(--space-lg) 0;
  }

  .site-footer__top {
    grid-template-columns: 1fr 1fr;
    gap: var(--space-md);
  }

  .site-footer__brand {
    grid-column: 1 / -1;
  }

  .site-footer__bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-sm);
  }

  .site-footer__legal {
    flex-wrap: wrap;
  }
}

/* ---------------------------------------------------------------
   SMALL MOBILE (max 560px)
--------------------------------------------------------------- */
@media (max-width: 560px) {
  .site-footer__top {
    grid-template-columns: 1fr;
  }

  .card-grid {
    grid-template-columns: 1fr;
  }

  .form-checkboxes {
    grid-template-columns: 1fr;
  }

  .mobile-nav__panel {
    width: 100%;
  }
}

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