/* Novaris 2026 – phone/tablet layout. Loaded after the existing desktop design. */
html{scroll-padding-top:calc(84px + env(safe-area-inset-top,0px))}
body{min-width:0}
.nav{padding-top:env(safe-area-inset-top,0px);height:calc(84px + env(safe-area-inset-top,0px))!important}
.nav-inner{min-width:0}
#menuBtn{cursor:pointer;touch-action:manipulation}
.mobile-menu{padding-bottom:calc(34px + env(safe-area-inset-bottom,0px));overflow-y:auto;overscroll-behavior:contain}
main,section,.section,.hero-grid,.assess-head,.assessment,.card,.media-copy,.diag-copy{min-width:0}
.section[id]{scroll-margin-top:calc(92px + env(safe-area-inset-top,0px))}
@media (max-width:1100px){
  .navlinks{gap:15px}
  .navlinks a{font-size:9.5px!important;letter-spacing:.03em!important}
  .nav-pill{padding:9px 12px}
  .hero-grid{gap:28px}
}
@media (max-width:980px){
  .navlinks{display:none!important}
  .menu-btn{display:inline-flex!important;align-items:center;justify-content:center;width:46px;min-height:46px;color:#102d43!important;background:#eff7f5!important;border:1px solid #cbdedc!important;border-radius:10px!important;line-height:1!important;font-size:23px!important}
  .mobile-menu{top:calc(84px + env(safe-area-inset-top,0px))!important;padding-top:16px!important;z-index:399!important}
  .mobile-menu a{font-size:clamp(26px,5.4vw,42px)!important;line-height:1.2!important;padding:18px 0!important}
  .hero-grid{grid-template-columns:1fr!important;gap:26px!important;align-content:center}
  .hero-side{max-width:690px}
  .hero-foot span:last-child{display:none}
  .pressure-grid,.mission-grid,.diag-wrap,.authority,.eng-intro,.consult-grid,.fit-grid,.contact-grid{grid-template-columns:minmax(0,1fr)!important;gap:32px!important}
  .media-split{grid-template-columns:minmax(0,1fr)!important}
  .media-photo{min-height:360px;height:50vh}
  .diag-image{position:relative!important;top:auto!important;height:430px;order:-1}
  .diagnose .diag-copy{padding:64px 6vw!important}
  .assess-head{grid-template-columns:1fr!important;gap:14px!important}
  .assess-head p{max-width:640px}
  .cases{grid-template-columns:minmax(0,1fr)!important}
  .fit-card{position:static!important}
  .contact{min-height:0!important}
}
@media (max-width:760px){
  html{scroll-padding-top:calc(70px + env(safe-area-inset-top,0px))}
  .nav{height:calc(70px + env(safe-area-inset-top,0px))!important}
  .nav-inner{padding:0 16px!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important}
  .brand img{width:clamp(146px,45vw,184px)!important;max-height:50px!important;height:auto!important}
  .nav-end{gap:6px!important}
  .mobile-menu{top:calc(70px + env(safe-area-inset-top,0px))!important;left:0;right:0;bottom:0;padding:12px 22px 26px!important}
  .mobile-menu a{font-size:clamp(27px,8vw,42px)!important}
  .mobile-menu.open{display:block!important}
  .section[id]{scroll-margin-top:calc(78px + env(safe-area-inset-top,0px))}
  .hero{min-height:min(900px,100svh)!important;height:auto!important;padding-top:calc(70px + env(safe-area-inset-top,0px))!important;align-items:center!important}
  .hero-grid{padding:clamp(24px,7vh,58px) 20px 66px!important;display:grid!important;gap:18px!important;align-content:center!important}
  .hero-media img{object-position:62% center!important;transform:none!important}
  .hero-media:after{background:linear-gradient(90deg,rgba(248,252,251,.95),rgba(248,252,251,.82))!important}
  .kicker{font-size:10px!important;line-height:1.6!important;letter-spacing:.095em!important;margin-bottom:12px!important}
  .hero h1{font-size:clamp(33px,8.15vw,52px)!important;line-height:1.09!important;letter-spacing:-.035em!important;max-width:580px!important;overflow-wrap:break-word}
  .hero-side{padding:0!important}
  .hero-side p{font-size:15px!important;line-height:1.6!important;margin:0 0 15px!important}
  .hero-actions{gap:9px!important}
  .hero-actions .btn{font-size:12px!important;min-height:44px!important;padding:12px 14px!important}
  .hero-foot{left:20px!important;right:20px!important;bottom:17px!important}
  .pad{padding:clamp(48px,11vw,76px) 20px!important}
  .display,.mission .display,.assess-head .display,.consult-grid .display,.contact .display{font-size:clamp(31px,7.7vw,48px)!important;line-height:1.11!important;letter-spacing:-.036em!important}
  .lead,.mission-note p,.eng-intro p,.contact p{font-size:15px!important;line-height:1.65!important}
  .pressure-grid{gap:20px!important}
  .pressure-line{grid-template-columns:34px minmax(0,1fr)!important;gap:10px!important;padding:17px 0!important}
  .pressure-line b{font-size:clamp(24px,6.4vw,36px)!important;line-height:1.15!important;overflow-wrap:anywhere}
  .media-photo{height:295px!important;min-height:295px!important}
  .media-copy{padding:40px 20px 52px!important}
  .media-copy h2,.diag-copy h2,.authority-copy h2{font-size:clamp(31px,7.8vw,45px)!important;line-height:1.1!important;margin:12px 0 18px!important}
  .media-copy p,.diag-copy p,.authority-copy p{font-size:15px!important;line-height:1.6!important}
  .mission-grid,.consult-grid,.fit-grid,.contact-grid{gap:25px!important}
  .values{grid-template-columns:minmax(0,1fr)!important}
  .diagnose .diag-copy{padding:44px 20px 55px!important}
  .diag-image{height:260px!important}
  .diag-axis{display:grid;grid-template-columns:1fr 1fr!important;gap:9px!important;margin-top:24px!important}
  .axis{padding:13px!important}.axis strong{font-size:23px!important}.axis small{font-size:9px!important}.axis p{font-size:11px!important;line-height:1.45!important}
  .assessments{padding:55px 0!important}
  .assess-head{padding:0 20px 24px!important;gap:13px!important}
  .assess-head p{font-size:14px!important;line-height:1.6!important}
  .cards{gap:12px!important;padding:0 20px 18px!important;scroll-padding-inline:20px;overscroll-behavior-x:contain}
  .assessment{flex:0 0 min(86vw,410px)!important;min-height:405px!important;height:auto!important;padding:23px!important;scroll-snap-align:center!important}
  .assessment h3{font-size:clamp(26px,7vw,38px)!important;line-height:1.1!important;overflow-wrap:break-word}
  .assessment .tagline{font-size:14px!important}
  .assessment .meta{gap:9px!important}
  .scrollhint{padding:7px 20px 0!important}
  .authority-copy{padding:52px 20px!important}
  .authority-visual{min-height:300px!important;height:300px!important}
  .eng-intro{margin-bottom:26px!important}
  .cases{gap:12px!important}
  .case{min-height:400px!important;height:400px!important}
  .case h2,.case h3{font-size:clamp(23px,6.5vw,34px)!important;line-height:1.13!important}
  .consult-right>p{font-size:15px!important;line-height:1.65!important}
  .contact{padding-top:65px!important;padding-bottom:65px!important}
  .contact-side a.email{font-size:clamp(21px,5.4vw,29px)!important;overflow-wrap:anywhere;word-break:break-word}
  footer{gap:15px!important;text-align:left!important;font-size:11px!important}
}
@media(max-width:380px){
  .nav-inner{padding:0 12px!important}.brand img{width:146px!important}
  .hero-grid{padding-left:16px!important;padding-right:16px!important}
  .hero h1{font-size:clamp(29px,8.3vw,36px)!important}
  .hero-actions .btn{width:100%;justify-content:center}
  .hero{min-height:780px!important}
  .diag-axis{grid-template-columns:1fr!important}
  .assessment{flex-basis:90vw!important}
}
@media(prefers-reduced-motion:reduce){.cards{scroll-behavior:auto!important}}
