/* =========================================================
   GANDHI EYE CENTRE — UNIFIED NAVBAR (loaded LAST on every page)
   One navbar, one logo size, one Book Appointment button,
   one Services mega-menu — on every page, laptop + mobile.
   ========================================================= */
html{scroll-padding-top:88px}

/* ---------- Bar ---------- */
nav.navbar-gec{
  height:72px!important;min-height:72px!important;max-height:72px!important;
  padding:0!important;display:flex!important;align-items:center!important;
  background:rgba(255,255,255,.98)!important;
  -webkit-backdrop-filter:blur(20px)!important;backdrop-filter:blur(20px)!important;
  border-bottom:1px solid rgba(0,70,144,.09)!important;
  box-shadow:0 4px 24px rgba(0,70,144,.08)!important;
  position:fixed!important;top:0!important;left:0!important;right:0!important;
  z-index:1050!important;
}
nav.navbar-gec>.container-xl{
  position:static!important;display:flex!important;flex-wrap:nowrap!important;
  align-items:center!important;justify-content:space-between!important;
  width:100%!important;height:100%!important;gap:8px;
}

/* ---------- Logo (bigger, never clipped) ---------- */
nav.navbar-gec .navbar-brand{
  display:flex!important;align-items:center!important;margin:0 8px 0 0!important;
  padding:0!important;flex-shrink:0!important;overflow:visible!important;min-width:0;
}
nav.navbar-gec .navbar-logo-img{
  height:56px!important;max-height:56px!important;width:auto!important;max-width:none!important;
  object-fit:contain!important;mix-blend-mode:multiply;flex-shrink:0;display:block;
}
nav.navbar-gec .fallback-logo-circle{width:44px!important;height:44px!important;flex-shrink:0}

/* ---------- Links ---------- */
nav.navbar-gec .navbar-collapse{align-items:center;flex-grow:1}
nav.navbar-gec .navbar-nav{
  display:flex!important;flex-direction:row;flex-wrap:nowrap!important;align-items:center!important;
  margin:0 0 0 8px!important;gap:2px!important;padding:0;
}
nav.navbar-gec .nav-link-gec{
  font-family:'Plus Jakarta Sans',sans-serif!important;font-weight:600!important;
  font-size:.88rem!important;color:#33404d!important;padding:8px 10px!important;
  display:flex!important;align-items:center;line-height:1.2;white-space:nowrap;
  border-radius:10px;transition:color .15s,background .15s;
}
nav.navbar-gec .nav-link-gec:hover,
nav.navbar-gec .nav-link-gec.active,
nav.navbar-gec .dropdown-gec.gec-open>.nav-link-gec{color:#004690!important;background:rgba(0,70,144,.06)}
nav.navbar-gec .dropdown-gec>.nav-link-gec{gap:6px;cursor:pointer}
nav.navbar-gec .dropdown-gec>.nav-link-gec::after{
  content:'';display:inline-block;width:0;height:0;flex-shrink:0;
  border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;
  transition:transform .2s;margin-left:0;
}
nav.navbar-gec .dropdown-gec.gec-open>.nav-link-gec::after{transform:rotate(180deg)}

/* ---------- Right side ---------- */
nav.navbar-gec .gec-nav-right{
  margin-left:auto;display:flex;align-items:center;gap:8px;flex-shrink:0;
}
nav.navbar-gec .gec-nav-email{display:none;flex-direction:column;align-items:flex-end;line-height:1.35;margin-right:4px}
nav.navbar-gec .gec-nav-email b{font-family:Manrope,sans-serif;font-weight:700;font-size:.72rem;color:#002255}
nav.navbar-gec .gec-nav-email a{font-size:.65rem;color:#5f7080;text-decoration:none}
nav.navbar-gec .gec-nav-social{display:flex;align-items:center;gap:4px}
nav.navbar-gec .nav-social-btn{
  width:40px!important;height:40px!important;display:inline-flex!important;align-items:center!important;
  justify-content:center!important;border-radius:50%!important;
  background:var(--surface-container-low,#f2f4f6)!important;flex-shrink:0;color:#004690;text-decoration:none;
  transition:background .15s,transform .15s;
}
nav.navbar-gec .nav-social-btn:hover{background:#dce8fb!important;transform:translateY(-1px)}
nav.navbar-gec .nav-social-btn svg{width:16px;height:16px;fill:#004690}

/* ---------- BOOK APPOINTMENT button (full size, same everywhere) ---------- */
nav.navbar-gec .btn-3d-primary{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px;
  min-height:46px;padding:12px 26px!important;border:none!important;border-radius:12px!important;
  font-family:'Manrope','Plus Jakarta Sans',sans-serif!important;font-weight:800!important;
  font-size:.95rem!important;line-height:1!important;letter-spacing:.01em;white-space:nowrap;
  color:#fff!important;text-decoration:none!important;cursor:pointer;
  background:linear-gradient(135deg,#005dbb 0%,#004690 60%,#003070 100%)!important;
  box-shadow:0 4px 0 #002255,0 8px 16px rgba(0,70,144,.3),inset 0 1px 0 rgba(255,255,255,.2)!important;
  position:relative;top:0;transition:all .18s ease;
}
nav.navbar-gec .btn-3d-primary:hover{top:2px;box-shadow:0 2px 0 #002255,0 5px 10px rgba(0,70,144,.25)!important;color:#fff!important}
nav.navbar-gec .btn-3d-primary:active{top:4px;box-shadow:0 0 0 #002255!important}

/* ---------- Services mega-menu ---------- */
nav.navbar-gec .dropdown-gec{position:static!important}
nav.navbar-gec .dropdown-menu-gec.dropdown-menu-mega{
  display:none!important;position:absolute!important;top:100%!important;
  left:50%!important;right:auto!important;transform:translateX(-50%)!important;
  width:min(1120px,calc(100vw - 32px))!important;min-width:0!important;max-width:none!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:6px 14px;
  padding:22px 24px!important;background:#fff!important;border:1px solid rgba(0,70,144,.08)!important;
  border-radius:0 0 18px 18px!important;box-shadow:0 22px 44px rgba(0,50,112,.18)!important;
  max-height:calc(100vh - 90px);overflow-y:auto;opacity:1!important;visibility:visible!important;
  pointer-events:auto!important;margin:0!important;animation:none!important;
}
nav.navbar-gec .dropdown-gec.gec-open>.dropdown-menu-mega{display:grid!important}
nav.navbar-gec .mega-col{display:flex;flex-direction:column;gap:2px;min-width:0}
nav.navbar-gec .mega-col-title{
  font-family:Manrope,sans-serif;font-weight:800;font-size:.72rem;letter-spacing:.08em;
  text-transform:uppercase;color:#004690;padding:0 8px 8px;margin-bottom:4px;
  border-bottom:2px solid rgba(0,70,144,.12);
}
nav.navbar-gec .mega-link{
  display:block;padding:8px 10px;border-radius:9px;font-family:'Plus Jakarta Sans',sans-serif;
  font-size:.86rem;font-weight:600;line-height:1.3;color:#33404d;text-decoration:none;
  white-space:normal;transition:background .15s,color .15s;
}
nav.navbar-gec .mega-link:hover,nav.navbar-gec .mega-link:focus-visible{background:#eef4ff;color:#004690}

/* ---------- Large screens: show socials / email when there is room ---------- */
@media (min-width:1200px) and (max-width:1399.98px){
  nav.navbar-gec .gec-nav-social{display:none}
}
@media (min-width:1400px){
  nav.navbar-gec .nav-link-gec{font-size:.92rem!important;padding:8px 12px!important}
}
@media (min-width:1600px){
  nav.navbar-gec .gec-nav-email{display:flex}
}

/* ---------- Breadcrumb clearance ---------- */
.gec-breadcrumb{margin-top:72px!important}

/* ---------- Mobile / tablet / small laptop (collapsed menu) ---------- */
@media (max-width:1199.98px){
  nav.navbar-gec{height:auto!important;min-height:64px!important;max-height:none!important;padding:6px 0!important}
  nav.navbar-gec>.container-xl{flex-wrap:wrap!important;height:auto!important}
  nav.navbar-gec .navbar-logo-img{height:50px!important;max-height:50px!important}
  nav.navbar-gec .navbar-toggler{
    margin-left:auto;border:1px solid rgba(0,70,144,.2)!important;border-radius:10px;
    padding:6px 10px;box-shadow:none!important;
  }
  nav.navbar-gec .navbar-collapse{
    flex-basis:100%;width:100%;background:#fff;border-radius:16px;margin-top:8px;
    padding:8px 10px 16px;box-shadow:0 12px 30px rgba(0,70,144,.14);
    max-height:calc(100vh - 92px);max-height:calc(100dvh - 92px);overflow-y:auto;
    -webkit-overflow-scrolling:touch;
  }
  nav.navbar-gec .navbar-nav{flex-direction:column;align-items:stretch!important;margin:0!important;width:100%;gap:0!important}
  nav.navbar-gec .nav-link-gec{width:100%;padding:12px 8px!important;font-size:.98rem!important;border-radius:8px;justify-content:space-between}
  nav.navbar-gec .dropdown-menu-gec.dropdown-menu-mega{
    position:static!important;transform:none!important;width:100%!important;
    grid-template-columns:1fr!important;gap:2px;padding:4px 4px 10px 12px!important;
    border:none!important;border-left:3px solid rgba(0,70,144,.14)!important;border-radius:0!important;
    box-shadow:none!important;max-height:none;overflow:visible;background:transparent!important;
    margin:2px 0 6px 8px!important;
  }
  nav.navbar-gec .mega-col{margin-top:8px}
  nav.navbar-gec .mega-link{padding:10px 10px;font-size:.92rem}
  nav.navbar-gec .gec-nav-right{
    margin:12px 0 0!important;flex-wrap:wrap;width:100%;justify-content:flex-start;gap:10px;
  }
  nav.navbar-gec .gec-nav-email{display:flex;align-items:flex-start;width:100%;order:3;margin:0}
  nav.navbar-gec .gec-nav-social{order:1}
  nav.navbar-gec .gec-nav-phone{order:2}
  nav.navbar-gec .btn-3d-primary{order:0;width:100%;min-height:50px;font-size:1rem!important}
  .gec-breadcrumb{margin-top:64px!important}
}
@media (max-width:420px){
  nav.navbar-gec .navbar-logo-img{height:44px!important;max-height:44px!important}
}
