/* ================= Responsive ================= */

@media (max-width:1080px){
  .facilities-grid{ grid-template-columns:repeat(2,1fr); }
  .pub-grid{ grid-template-columns:repeat(2,1fr); }
  .events-grid{ grid-template-columns:repeat(2,1fr); }
  .footer-grid{ grid-template-columns:1fr 1fr; }
}

@media (max-width:960px){
  .main-nav{
    position:fixed;
    top:var(--header-h);
    left:0; right:0; bottom:0;
    background:var(--color-primary-dark);
    flex-direction:column;
    padding:20px;
    overflow-y:auto;
    transform:translateX(100%);
    transition:transform var(--transition);
    z-index:999;
  }
  .site-header.scrolled + .main-nav,
  .main-nav.open{ transform:translateX(0); }
  .main-nav > ul{ flex-direction:column; align-items:stretch; width:100%; gap:0; }
  .main-nav > ul > li > a{ padding:16px 8px; justify-content:space-between; width:100%; }
  .dropdown{
    position:static;
    opacity:1; visibility:visible; transform:none;
    display:none;
    box-shadow:none;
    background:rgba(255,255,255,.04);
    margin:0 0 6px;
  }
  .main-nav li.open .dropdown{ display:block; }
  .dropdown a{ color:var(--color-white); }
  .dropdown a:hover{ background:rgba(255,255,255,.08); color:var(--color-gold-300); }
  .mega-menu{ min-width:0; grid-template-columns:1fr; }
  .mega-intro{ padding:16px 14px; }
  .mega-links{ padding:6px 14px 10px; }
  .mega-links a{ color:var(--color-white); padding:11px 0; }
  .nav-toggle{ display:flex; }
  .header-actions .btn.btn-nav-hide{ display:none; }
  .about-grid{ grid-template-columns:1fr; }
  .about-photo{ margin-bottom:40px; }
  .membership-banner{ grid-template-columns:1fr; padding:44px 28px; text-align:left; }
  .social-feature{ grid-template-columns:1fr; padding:32px 24px; }
}

@media (max-width:860px){
  .quick-actions .grid{ grid-template-columns:1fr; }
  .stats-row{ grid-template-columns:repeat(2,1fr); }
  .contact-grid{ grid-template-columns:1fr; }
}

@media (max-width:680px){
  .section{ padding:64px 0; }
  .facilities-grid{ grid-template-columns:1fr; }
  .pub-grid{ grid-template-columns:1fr; }
  .events-grid{ grid-template-columns:1fr; }
  .footer-grid{ grid-template-columns:1fr; gap:32px; }
  .hero-content h1{ font-size:2rem; }
  .quick-actions{ margin-top:-40px; }
  .quick-card{ flex-direction:column; text-align:center; }
  .category-grid{ grid-template-columns:1fr; }
  .page-hero{ padding:calc(var(--header-h) + 48px) 0 48px; }
}

@media (max-width:760px){
  .category-grid{ grid-template-columns:1fr; }
  .two-col-grid{ grid-template-columns:1fr; }
  .mega-menu{ min-width:0 !important; }
}
