/* =========================================================
   CoreAxis Ventures - Responsive Rules
   ========================================================= */

@media (max-width: 1100px){
  .footer-grid{ grid-template-columns:1fr 1fr 1fr; }
  .hero h1{ font-size:2.6rem; }
}

@media (max-width: 991px){
  .hero-grid{ grid-template-columns:1fr; }
  .hero-visual{ order:-1; }
  .grid-4{ grid-template-columns:repeat(2,1fr); }
  .grid-3{ grid-template-columns:repeat(2,1fr); }
  .footer-grid{ grid-template-columns:1fr 1fr; gap:30px 20px; }
  .pricing-card.popular{ transform:none; }
}

@media (max-width: 860px){
  .topbar{ display:none; }
  .nav-menu{
    position:fixed; top:0; right:-100%; width:80%; max-width:320px; height:100vh; z-index:999;
    background:var(--bg-white); flex-direction:column; align-items:flex-start; gap:0;
    padding:90px 26px 30px; box-shadow:var(--shadow-lg); transition: right .35s ease; overflow-y:auto;
  }
  .nav-menu.active{ right:0; }
  .nav-menu > li{ width:100%; border-bottom:1px solid var(--border-color); }
  .nav-menu > li > a{ padding:16px 0; width:100%; justify-content:space-between; }
  .mega-menu{
    position:static; box-shadow:none; min-width:auto;
    display:none; border-top:none; padding:0 0 10px; border-radius:0;
  }
  .has-mega:hover .mega-menu{ display:none; }
  .has-mega.open .mega-menu{ display:block; }
  .mega-menu-list > li > .mega-parent{ padding:10px 10px; font-size:.85rem; }
  .mega-menu-list > li > .mega-parent .mega-arrow{ display:none; }
  .mega-sub{
    position:static; box-shadow:none; min-width:auto; border-radius:0;
    display:none; padding:0 0 4px; margin:0;
  }
  .mega-menu-list > li:hover > .mega-sub{ display:none; }
  .mega-menu-list > li.sub-open > .mega-sub{ display:block; }
  .mega-sub > li > a{ padding:8px 10px 8px 40px; font-size:.84rem; }
  .mega-sub > li > a:hover{ padding-left:44px; }
  .nav-toggle{ display:flex; }
  .nav-overlay{ position:fixed; inset:0; background:rgba(0,0,0,0.4); z-index:998; display:none; }
  .nav-overlay.active{ display:block; }
}

@media (max-width: 768px){
  h1{ font-size:2.1rem; }
  h2{ font-size:1.6rem; }
  .hero{ padding:90px 0 70px; }
  .hero h1{ font-size:2.1rem; }
  .hero-stats{ grid-template-columns:1fr; margin-top:20px; }
  .hero-stat-card{ border-right:none; border-bottom:1px solid var(--border-color); }
  .grid-2, .grid-3, .grid-4{ grid-template-columns:1fr; }
  .footer-grid{ grid-template-columns:1fr; }
  .section{ padding:56px 0; }
  .cta-band{ padding:44px 24px; }
  .service-detail-head{ flex-direction:column; align-items:flex-start; gap:10px; }
  .legal-content{ padding:26px; }
  .footer-bottom{ flex-direction:column; text-align:center; }
  .error-page h1{ font-size:5rem; }
}

@media (max-width: 480px){
  .hero-actions, .cta-band .hero-actions{ flex-direction:column; width:100%; }
  .hero-actions .btn, .cta-band .btn{ width:100%; }
  .brand span.brand-text{ font-size:1.05rem; }
  .float-btns{ right:14px; bottom:14px; }
  .float-btn{ width:48px; height:48px; font-size:1.2rem; }
}
