/* ==========================================================================
   Responsive rules — mobile-first overrides layered on style.css
   ========================================================================== */

/* Ultra-wide */
@media (min-width: 1600px){
  :root{ --maxw: 1400px; }
}

/* Laptop / small desktop */
@media (max-width: 1180px){
  .footer-grid{ grid-template-columns:1.2fr 1fr 1fr; }
  .footer-col.col-links{ grid-column: span 1; }
}

/* Tablet */
@media (max-width: 960px){
  .nav-main, .search-toggle { display:none; }
  .nav-toggle{ display:block; }
  .nav-actions .btn-on-nav{
    min-width: 3.2rem;
    padding: .72em .95em;
    font-size: 0;
    line-height: 1;
    white-space: nowrap;
  }
  .nav-actions .btn-on-nav::before{
    content: "GIVE";
    display: inline-block;
    padding: 0 .15em;
    font-size: .95rem;
    font-weight: 700;
  }
  .hero-grid{ grid-template-columns:1fr; }
  .hero-media{ order:-1; aspect-ratio:16/10; }
  .two-col{ grid-template-columns:1fr; }
  .grid-4{ grid-template-columns:repeat(2,1fr); }
  .grid-3{ grid-template-columns:repeat(2,1fr); }
  .grid-2{ grid-template-columns:1fr; }
  .footer-grid{ grid-template-columns:1fr 1fr; gap:2rem 1.5rem; }
  .gallery-grid{ column-count:2; }
  .form-row{ grid-template-columns:1fr; }
  .donate-strip{ flex-direction:column; align-items:flex-start; }
}

/* Mobile landscape / large phones */
@media (max-width: 680px){
  :root{ --nav-h:64px; --topbar-h:0px; }
  .grid-4, .grid-3{ grid-template-columns:1fr 1fr; }
  .stat-card{ padding:1.2rem .5rem; }
  .gallery-grid{ column-count:1; }
  .footer-grid{ grid-template-columns:1fr; }
  .donate-strip .actions{ width:100%; }
  .donate-strip .actions .btn{ flex:1; }
  .hero-cta-row{ flex-direction:column; align-items:stretch; }
  .hero-cta-row .btn{ width:100%; }
  .page-hero{ padding-bottom:2.6rem; }
  .brand .brand-full small{ display:none; }
  .back-to-top{ left:1rem; right:auto; bottom:5.5rem; width:44px; height:44px; }
  body{ padding-bottom:64px; } /* clear the sticky mobile donate bar */
}

/* Small phones */
@media (max-width: 420px){
  .grid-4, .grid-3, .grid-2{ grid-template-columns:1fr; }
  .tabs-nav{ gap:.4rem; }
  .tabs-nav button{ padding:.55em 1em; font-size:.8rem; }
}

/* Landscape orientation on short viewports (phones rotated) */
@media (orientation: landscape) and (max-height: 480px){
  .hero{ min-height:auto; padding-block:6rem 3rem; }
  .hero-slideshow{ min-height:auto; }
  .hero-slide{ position:relative; }
  .page-hero{ padding-top:calc(var(--header-stack) + 1.5rem); padding-bottom:2rem; }
}

/* Print */
@media print{
  .site-header, .topbar, .mobile-nav, .back-to-top, .scroll-progress, .loading-screen, .emergency-banner, .chat-widget, .mobile-donate-bar, .nl-popup-backdrop{ display:none !important; }
}
