/* ==========================================================
   Kahna Safari — Responsive Overrides
   Load this file AFTER style.css
   ========================================================== */

@media(max-width:1199px){
  .gallery-grid{grid-template-columns:repeat(3,1fr);}
 
}

@media(max-width:991px){
    .section-head h2 br{
        display: none;
    }
  .nav-links{display:none;}
  .burger{display:block;}
  .gallery-grid{grid-template-columns:repeat(2,1fr);}
  .hero-stats .row>div{border-right:none;border-bottom:1px solid rgba(255,255,255,.14);}

  .container, .container-xl{
      padding: 0px 24px;
  }
  .about-home .row{
      flex-direction: column-reverse;
  }
  .about-img-wrap{
      margin-top: 30px;
  }
  
  .section-head {
    max-width: 400px;
  }
}

@media(max-width:767px){
  .hero-content{padding-top:70px;}
  .cta-banner{padding:60px 24px;}
  .gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px;}
  .g-wide{grid-column:span 2;}
  .footer-bottom{flex-direction:column;text-align:center;}
  .page-hero{min-height:38vh;}
  .hero {
    position: relative;
    padding: 70px 0px 200px;
    min-height: auto;
  }
  .section {
    padding: 40px 0;
}
.section-head {
    margin-bottom: 30px;
}
}

@media(max-width:575px){
  .hero-cta{flex-direction:column;align-items:flex-start;}
  .gallery-grid{grid-template-columns:repeat(1,1fr);}
  .g-tall,.g-wide{grid-row:span 1;grid-column:span 1;}
}

/* Mobile off-canvas nav (built by main.js) */
.mobile-nav{
  position:fixed;top:0;right:0;bottom:0;width:82%;max-width:340px;
  background:var(--green-deep);z-index:9999999;padding:90px 30px 30px;
  transform:translateX(100%);transition:transform .45s cubic-bezier(.16,.84,.44,1);
  display:flex;flex-direction:column;gap:22px;
}
.mobile-nav.open{transform:translateX(0);}
.mobile-nav a{color:rgba(255,255,255,.9);font-size:1.05rem;font-weight:500;}
.mobile-nav a.active{color:var(--gold);}
.mobile-nav-backdrop{
  position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:1090;
  opacity:0;pointer-events:none;transition:opacity .35s;
}
.mobile-nav-backdrop.open{opacity:1;pointer-events:auto;}
.mobile-nav .close-mn{position:absolute;top:24px;right:24px;color:#fff;font-size:1.4rem;background:none;border:none;}
