/* NoorVista 3.0.160 — compact quick-service tiles + mobile-first hero/header repair */
:root{
  --nv160-navy:#0a2540;
  --nv160-blue:#1769e0;
  --nv160-cyan:#17b9cf;
  --nv160-line:#d7e6f4;
}

/* Compact four-card service strip */
body.nv-home-page .nv-quick-services{
  padding:24px 0 30px!important;
  margin:0!important;
  background:linear-gradient(180deg,#fff 0%,#f7fbff 100%);
}
body.nv-home-page .nv-quick-services__shell{
  width:min(calc(100% - 32px),1240px)!important;
  margin-inline:auto!important;
}
body.nv-home-page .nv-quick-services__sr-only{
  position:absolute!important;
  width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;border:0!important;
}
body.nv-home-page .nv-quick-services__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
body.nv-home-page .nv-quick-service{
  min-height:176px;
  padding:22px 16px 18px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  border-radius:25px;
  text-align:center;
  color:#fff!important;
  text-decoration:none!important;
  overflow:hidden;
  position:relative;
  isolation:isolate;
  box-shadow:0 16px 34px rgba(24,71,157,.16);
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
body.nv-home-page .nv-quick-service::before{
  content:"";
  position:absolute;
  inset:-35% auto auto -15%;
  width:150px;height:150px;
  border-radius:50%;
  background:rgba(255,255,255,.10);
  z-index:-1;
}
body.nv-home-page .nv-quick-service--laser{background:linear-gradient(145deg,#278bf5,#2160db)}
body.nv-home-page .nv-quick-service--eyelid{background:linear-gradient(145deg,#225ce0,#123ec7)}
body.nv-home-page .nv-quick-service--ptosis{background:linear-gradient(145deg,#3932d5,#2520b7)}
body.nv-home-page .nv-quick-service--exam{background:linear-gradient(145deg,#211ab8,#100b91)}
body.nv-home-page .nv-quick-service:hover,
body.nv-home-page .nv-quick-service:focus-visible{
  transform:translateY(-4px);
  box-shadow:0 22px 42px rgba(24,71,157,.24);
  filter:saturate(1.06);
}
body.nv-home-page .nv-quick-service__icon{
  width:64px;height:64px;
  display:grid;place-items:center;
  border-radius:19px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.20);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18);
}
body.nv-home-page .nv-quick-service__icon svg{
  width:43px;height:43px;
  fill:none;
  stroke:#fff;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
body.nv-home-page .nv-quick-service__title{
  color:#fff!important;
  font-size:17px;
  font-weight:950;
  line-height:1.6;
}
body.nv-home-page .nv-quick-service__meta{
  color:rgba(255,255,255,.83)!important;
  font-size:11px;
  font-weight:700;
  line-height:1.6;
}

/* Mobile header rebuilt as a real off-canvas menu */
@media(max-width:900px){
  body:not([data-panel-role]) header.navbar{
    min-height:60px!important;
    height:auto!important;
    z-index:1300!important;
    background:#fff!important;
    border-bottom:1px solid #dbe8f3!important;
    box-shadow:0 8px 24px rgba(10,37,64,.07)!important;
  }
  body:not([data-panel-role]) header.navbar .nav-inner,
  body:not([data-panel-role]) .navbar .container.nav-inner{
    width:calc(100% - 20px)!important;
    min-height:60px!important;
    height:60px!important;
    padding:0!important;
    margin-inline:auto!important;
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr)!important;
    grid-template-areas:"toggle brand"!important;
    align-items:center!important;
    gap:10px!important;
  }
  body:not([data-panel-role]) header.navbar .brand{
    grid-area:brand!important;
    justify-self:end!important;
    width:auto!important;
    max-width:min(145px,42vw)!important;
    min-width:0!important;
    margin:0!important;
    overflow:hidden!important;
  }
  body:not([data-panel-role]) header.navbar .brand>div:not(.brand-logo){display:none!important}
  body:not([data-panel-role]) header.navbar .brand .brand-logo,
  body:not([data-panel-role]) header.navbar .brand .brand-logo-image{
    width:auto!important;
    max-width:min(145px,42vw)!important;
    height:46px!important;
    max-height:46px!important;
    margin:0!important;
    overflow:hidden!important;
  }
  body:not([data-panel-role]) header.navbar .brand img{
    width:auto!important;
    max-width:100%!important;
    height:100%!important;
    max-height:46px!important;
    object-fit:contain!important;
    object-position:right center!important;
  }
  body:not([data-panel-role]) header.navbar .mobile-toggle,
  body:not([data-panel-role]) header.navbar #mobileToggle{
    grid-area:toggle!important;
    justify-self:start!important;
    display:inline-grid!important;
    place-items:center!important;
    width:42px!important;height:42px!important;
    min-width:42px!important;min-height:42px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #cddfed!important;
    border-radius:13px!important;
    background:#f8fbfe!important;
    color:var(--nv160-navy)!important;
    z-index:1410!important;
  }
  body:not([data-panel-role]) header.navbar nav{
    display:block!important;
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:auto!important;
    width:min(88vw,360px)!important;
    max-width:360px!important;
    height:100dvh!important;
    padding:82px 18px 112px!important;
    margin:0!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    background:#fff!important;
    border-left:1px solid #d7e5f1!important;
    box-shadow:-20px 0 48px rgba(7,31,55,.18)!important;
    transform:translateX(108%)!important;
    opacity:1!important;
    visibility:visible!important;
    transition:transform .24s ease!important;
    z-index:1380!important;
  }
  body:is(.nv-mobile-menu-open,.nv-menu-open,.nav-open) header.navbar nav,
  body:not([data-panel-role]) header.navbar nav:has(.menu.open),
  body:not([data-panel-role]) header.navbar nav:has(.menu.is-open){
    transform:translateX(0)!important;
  }
  body:is(.nv-mobile-menu-open,.nv-menu-open,.nav-open)::before{
    content:"";
    position:fixed;
    inset:0;
    z-index:1370;
    background:rgba(4,21,38,.48);
    backdrop-filter:blur(2px);
  }
  body:not([data-panel-role]) header.navbar .menu,
  body:not([data-panel-role]) header.navbar #menu{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:6px!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    background:transparent!important;
    list-style:none!important;
  }
  body:not([data-panel-role]) header.navbar .menu>li{
    width:100%!important;
    margin:0!important;
    border:0!important;
  }
  body:not([data-panel-role]) header.navbar .menu>li>a{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    min-height:45px!important;
    padding:10px 12px!important;
    border:1px solid transparent!important;
    border-radius:12px!important;
    background:#fff!important;
    color:#17324d!important;
    font-size:13px!important;
    font-weight:850!important;
    line-height:1.5!important;
    text-align:right!important;
    opacity:1!important;
    visibility:visible!important;
    white-space:normal!important;
  }
  body:not([data-panel-role]) header.navbar .menu>li>a.active,
  body:not([data-panel-role]) header.navbar .menu>li>a:hover{
    background:#edf7ff!important;
    border-color:#d4e8f8!important;
    color:#096ca5!important;
  }
  body:not([data-panel-role]) header.navbar .mega-menu{
    position:static!important;
    inset:auto!important;
    display:none!important;
    width:100%!important;
    max-width:none!important;
    max-height:none!important;
    margin:5px 0 0!important;
    padding:10px!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    border:1px solid #d9e8f4!important;
    border-radius:14px!important;
    background:#f8fbfe!important;
    box-shadow:none!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
  }
  body:not([data-panel-role]) header.navbar .has-mega:is(.open,.is-open,.submenu-open) .mega-menu{
    display:grid!important;
  }
  body:not([data-panel-role]) header.navbar .mega-col{
    display:grid!important;
    gap:3px!important;
  }
  body:not([data-panel-role]) header.navbar .mega-col strong{
    color:#0a5e8e!important;
    font-size:12px!important;
    margin:5px 5px 3px!important;
  }
  body:not([data-panel-role]) header.navbar .mega-col a{
    display:block!important;
    padding:8px 9px!important;
    border-radius:9px!important;
    color:#435f79!important;
    background:#fff!important;
    font-size:11.5px!important;
    font-weight:700!important;
    line-height:1.55!important;
  }
  body:not([data-panel-role]) header.navbar .nav-actions{
    display:flex!important;
    position:fixed!important;
    right:18px!important;
    bottom:20px!important;
    left:auto!important;
    width:min(calc(88vw - 36px),324px)!important;
    max-width:324px!important;
    padding:10px!important;
    margin:0!important;
    gap:8px!important;
    border:1px solid #d9e6f2!important;
    border-radius:16px!important;
    background:rgba(255,255,255,.96)!important;
    box-shadow:0 14px 32px rgba(11,49,87,.14)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateX(108%)!important;
    transition:transform .24s ease,opacity .18s ease!important;
    z-index:1395!important;
  }
  body:is(.nv-mobile-menu-open,.nv-menu-open,.nav-open) header.navbar .nav-actions,
  body:not([data-panel-role]) header.navbar:has(.menu.open) .nav-actions,
  body:not([data-panel-role]) header.navbar:has(.menu.is-open) .nav-actions{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateX(0)!important;
  }
  body:not([data-panel-role]) header.navbar .nav-actions .btn{
    flex:1!important;
    width:auto!important;
    min-width:0!important;
    min-height:43px!important;
    padding:0 10px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:12px!important;
    font-size:12px!important;
    white-space:nowrap!important;
  }
  body:is(.nv-mobile-menu-open,.nv-menu-open,.nav-open) header.navbar .mobile-toggle,
  body:not([data-panel-role]) header.navbar:has(.menu.open) .mobile-toggle{
    position:fixed!important;
    top:14px!important;
    left:14px!important;
  }
}

/* Compact, centered mobile hero */
@media(max-width:760px){
  body.nv-home-page .nv-home-slider{
    width:100%!important;
    height:clamp(330px,90vw,390px)!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
  }
  body.nv-home-page .nv-home-slide__image{
    width:100%!important;height:100%!important;
    object-fit:cover!important;
  }
  body.nv-home-page .nv-home-slide__veil{
    background:linear-gradient(180deg,rgba(4,24,43,.30),rgba(4,28,50,.72))!important;
  }
  body.nv-home-page .nv-home-slide[data-content-position] .nv-home-slide__content,
  body.nv-home-page .nv-home-slide__content{
    width:min(calc(100% - 24px),480px)!important;
    height:100%!important;
    margin:0 auto!important;
    padding:26px 12px 38px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
  }
  body.nv-home-page .nv-home-slide__eyebrow{
    margin:0 auto!important;
    padding:6px 11px!important;
    font-size:10.5px!important;
  }
  body.nv-home-page .nv-home-slide__title{
    width:100%!important;
    max-width:360px!important;
    margin:10px auto 0!important;
    font-size:clamp(21px,6.3vw,27px)!important;
    line-height:1.42!important;
    letter-spacing:-.025em!important;
    text-align:center!important;
  }
  body.nv-home-page .nv-home-slide__subtitle{
    max-width:360px!important;
    margin:8px auto 0!important;
    font-size:12px!important;
    line-height:1.8!important;
    text-align:center!important;
    display:-webkit-box!important;
    -webkit-line-clamp:3!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  body.nv-home-page .nv-home-slide__actions,
  body.nv-home-page .nv-home-slide[data-content-position] .nv-home-slide__actions{
    width:min(100%,320px)!important;
    margin:14px auto 0!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    justify-content:center!important;
  }
  body.nv-home-page .nv-home-slide__action{
    width:100%!important;
    min-height:42px!important;
    max-width:none!important;
    padding:0 10px!important;
    font-size:11.5px!important;
    line-height:1.4!important;
  }
  body.nv-home-page .nv-home-slide__trust{display:none!important}
  body.nv-home-page .nv-home-slider__arrow{display:none!important}
  body.nv-home-page .nv-home-slider__footer{bottom:10px!important}
  body.nv-home-page .nv-home-slider__dot{width:6px!important;height:6px!important}
  body.nv-home-page .nv-home-slider__dot.is-active{width:20px!important}
  body.nv-home-page .nv-quick-services{padding:14px 0 20px!important}
  body.nv-home-page .nv-quick-services__shell{width:calc(100% - 20px)!important}
  body.nv-home-page .nv-quick-services__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  body.nv-home-page .nv-quick-service{
    min-height:142px;
    padding:15px 9px 13px;
    border-radius:19px;
    gap:7px;
  }
  body.nv-home-page .nv-quick-service__icon{
    width:52px;height:52px;border-radius:15px;
  }
  body.nv-home-page .nv-quick-service__icon svg{width:35px;height:35px}
  body.nv-home-page .nv-quick-service__title{font-size:13px;line-height:1.55}
  body.nv-home-page .nv-quick-service__meta{font-size:9.5px;line-height:1.5}
}

@media(max-width:380px){
  body.nv-home-page .nv-home-slider{height:330px!important}
  body.nv-home-page .nv-home-slide__eyebrow{display:none!important}
  body.nv-home-page .nv-home-slide__title{font-size:21px!important;margin-top:0!important}
  body.nv-home-page .nv-home-slide__subtitle{-webkit-line-clamp:2!important}
  body.nv-home-page .nv-quick-service{min-height:136px!important}
}

@media(prefers-reduced-motion:reduce){
  body.nv-home-page .nv-quick-service,
  body:not([data-panel-role]) header.navbar nav,
  body:not([data-panel-role]) header.navbar .nav-actions{transition:none!important}
}
