/**
 * Foresters Environmental Consultants — Mobile & Responsive Fixes
 * Add to every HTML page inside <head>:
 * <link rel="stylesheet" href="/assets/mobile-fixes.css">
 */
*,*::before,*::after{box-sizing:border-box;}
html{overflow-x:hidden;scroll-behavior:smooth;}
body{overflow-x:hidden;max-width:100vw;}
img{max-width:100%;height:auto;display:block;}

/* ── FOOTER FIX ─────────────────────────────────────────── */
footer,.site-footer{width:100%!important;overflow:hidden!important;}
@media(max-width:768px){
  footer>*,.site-footer>*{padding-left:16px!important;padding-right:16px!important;}
  footer [class*="grid"],footer [class*="cols"],.site-footer [class*="grid"]{display:flex!important;flex-direction:column!important;gap:24px!important;}
  footer ul,.site-footer ul{padding-left:0!important;}
}

/* ── SECTIONS ───────────────────────────────────────────── */
@media(max-width:768px){
  section{padding-left:16px!important;padding-right:16px!important;}
  .container,.wrapper{padding-left:16px!important;padding-right:16px!important;width:100%!important;}
  h1{font-size:clamp(24px,6vw,40px)!important;line-height:1.2!important;}
  h2{font-size:clamp(20px,5vw,32px)!important;}
  h3{font-size:clamp(17px,4vw,24px)!important;}
}

/* ── HERO ───────────────────────────────────────────────── */
@media(max-width:768px){
  section[class*="hero"],.hero{padding:56px 16px 40px!important;min-height:auto!important;}
  .hero [class*="btn-group"],.hero [class*="cta"]{flex-direction:column!important;align-items:stretch!important;gap:10px!important;}
  .hero [class*="btn-group"] a,.hero [class*="cta"] a{text-align:center!important;width:100%!important;}
}

/* ── STATS BAR ──────────────────────────────────────────── */
@media(max-width:640px){
  [class*="stats"]{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;padding:16px!important;}
}

/* ── SERVICE / PROJECT / BLOG GRIDS ────────────────────── */
@media(max-width:768px){
  [class*="service"][class*="grid"],[class*="project"][class*="grid"],[class*="blog"][class*="grid"],
  [class*="cards"],[class*="grid-cols"]{grid-template-columns:1fr!important;}
}
@media(min-width:480px) and (max-width:768px){
  [class*="service"][class*="grid"],[class*="blog"][class*="grid"]{grid-template-columns:1fr 1fr!important;}
}

/* ── CONTACT FORM ───────────────────────────────────────── */
@media(max-width:768px){
  .contact-grid,[class*="form-row"]{display:flex!important;flex-direction:column!important;gap:12px!important;}
  form input,form textarea,form select{width:100%!important;font-size:16px!important;/* prevent iOS zoom */}
}

/* ── TABLES ─────────────────────────────────────────────── */
@media(max-width:600px){.table-wrap,.tw{overflow-x:auto!important;-webkit-overflow-scrolling:touch;}table{min-width:480px;}}

/* ── MOBILE STICKY CTA BAR ──────────────────────────────── */
.mobile-cta-bar{
  position:fixed;bottom:0;left:0;right:0;z-index:970;
  display:flex;background:#1a4a28;padding:8px 10px;gap:6px;
  box-shadow:0 -3px 14px rgba(0,0,0,.2);
}
.mobile-cta-bar a{
  flex:1;text-align:center;padding:11px 6px;border-radius:7px;
  font-size:12.5px;font-weight:700;text-decoration:none;line-height:1.2;
}
.mobile-cta-bar .cta-call {background:#3aad5e;color:#fff;}
.mobile-cta-bar .cta-wa   {background:#25D366;color:#fff;}
.mobile-cta-bar .cta-quote{background:#c8972a;color:#fff;}
@media(min-width:769px){.mobile-cta-bar{display:none!important;}}

/* ── NAV DROPDOWN MOBILE ────────────────────────────────── */
@media(max-width:900px){
  nav .dropdown-menu,[class*="dropdown"][class*="menu"]{
    position:static!important;box-shadow:none!important;
    background:rgba(0,0,0,.05)!important;border-radius:6px!important;margin-top:4px!important;
  }
}

/* ── PRINT ──────────────────────────────────────────────── */
@media print{nav,footer,.mobile-cta-bar,[class*="whatsapp"],[class*="float"]{display:none!important;}body{font-size:12pt;color:#000!important;background:#fff!important;padding-bottom:0!important;}}
