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

@media (max-width: 1180px){
  .card-grid, .country-grid, .feature-grid, .contact-grid{ grid-template-columns: repeat(3,1fr); }
  .visa-card-grid{ grid-template-columns: repeat(2,1fr); }
  .process-track{ grid-template-columns: repeat(3,1fr); row-gap:50px; }
  .process-track::before{ display:none; }
  .mega{ width:520px; }
}

@media (max-width: 1024px){
  .hero .container{ grid-template-columns:1fr; }
  .hero-visual{ display:none; }
  .about-grid{ grid-template-columns:1fr; }
  .visa-showcase{ grid-template-columns:1fr; }
  .visa-orbit{ min-height:360px; }
  .book-wrap{ grid-template-columns:1fr; }
  .top-bar .tb-left span:nth-child(3){ display:none; }
}

@media (max-width: 900px){
  .main-nav{ position:fixed; top:0; right:-100%; width:min(360px,88%); height:100vh; background:var(--navy);
    flex-direction:column; align-items:flex-start; padding:100px 32px 40px; transition: right .45s var(--ease); z-index:55; overflow-y:auto; }
  .main-nav.open{ right:0; box-shadow: -20px 0 60px rgba(0,0,0,0.35); }
  .main-nav > ul{ flex-direction:column; gap:6px; width:100%; }
  .main-nav > ul > li{ width:100%; border-bottom:1px solid rgba(255,255,255,0.08); }
  .main-nav > ul > li > a{ color:rgba(255,255,255,0.9); display:flex; justify-content:space-between; padding:14px 4px; }
  .mega, .dropdown{ position:static; opacity:1; visibility:visible; transform:none; box-shadow:none; background:transparent;
    display:none; width:100%; padding:6px 6px 6px 14px; border-radius:0; }
  .mega{ grid-template-columns:1fr; }
  li.open .mega, li.open .dropdown{ display:block; }
  .dropdown a, .mega-col a{ color: rgba(255,255,255,0.75); }
  .mega-col h4{ color: var(--gold-soft); }
  .header-cta .btn-primary{ display:none; }
  .burger{ display:flex; }
  .burger.active span:nth-child(1){ transform: translateY(7px) rotate(45deg); }
  .burger.active span:nth-child(2){ opacity:0; }
  .burger.active span:nth-child(3){ transform: translateY(-7px) rotate(-45deg); }

  .card-grid, .country-grid, .feature-grid, .contact-grid{ grid-template-columns: repeat(2,1fr); }
  .visa-feature ul{ grid-template-columns:1fr; }
  .process-track{ grid-template-columns: repeat(2,1fr); }
  .stats-grid{ grid-template-columns: repeat(2,1fr); row-gap:0; }
  .stats-grid .stat:nth-child(2){ border-right:0; }
  .stats-grid .stat:nth-child(1), .stats-grid .stat:nth-child(2){ border-bottom:1px solid rgba(255,255,255,0.2); }
  .detail-grid{ grid-template-columns:1fr; }
  .check-grid{ grid-template-columns:1fr; }
  .footer-grid{ grid-template-columns: repeat(2,1fr); }
  .top-bar .tb-left span:nth-child(2){ display:none; }
}

@media (max-width: 640px){
  .section-pad{ padding:76px 0; }
  .card-grid, .country-grid, .feature-grid, .contact-grid{ grid-template-columns: 1fr; }
  .visa-card-grid{ grid-template-columns:1fr; }
  .visa-feature{ padding:30px 22px; }
  .visa-orbit{ min-height:300px; }
  .orbit-ring{ inset:28px; }
  .ring-two{ inset:72px; }
  .orbit-core{ width:118px; height:118px; }
  .orbit-chip{ padding:9px 11px; font-size:.78rem; }
  .process-track{ grid-template-columns: 1fr; }
  .stats-grid{ grid-template-columns: repeat(2,1fr); }
  .stats-strip{ padding:34px 0; }
  .stats-grid{ gap:0; }
  .stats-grid .stat{ min-height:112px; padding:16px 10px; }
  .stats-grid .stat b{ font-size: clamp(2.5rem, 12vw, 3.25rem); margin-bottom:8px; }
  .stats-grid .stat span:last-child{ font-size:.72rem; letter-spacing:.08em; }
  .footer-grid{ grid-template-columns: 1fr; gap:36px; }
  .form-row{ grid-template-columns:1fr; }
  .book-info, .book-form{ padding:40px 26px; }
  .hero-cta{ flex-direction:column; }
  .hero-cta .btn{ width:100%; justify-content:center; }
  .top-bar .tb-left{ display:none; }
  .top-bar .container{ justify-content:center; }
  .fab-group{ right:16px; bottom:16px; }
  .fab{ width:48px; height:48px; font-size:1.1rem; }
}
