/* One header geometry for the home page and every main navigation destination. */
html{scrollbar-gutter:stable}
body:is(.studio-theme,.services-slate) .page-header{height:88px}
body:is(.studio-theme,.services-slate) .nav.shell{
 width:min(1400px,calc(100% - 80px));height:88px;gap:28px;
 display:flex;align-items:center;justify-content:flex-start;
 top:0;border:0;translate:none!important;
}
body:is(.studio-theme,.services-slate) .nav.shell .hero-menu-group{display:flex;align-items:center;gap:24px;margin-left:24px;min-width:0;translate:none!important;scale:1!important}
body:is(.studio-theme,.services-slate) .nav.shell .logo{
 flex:none;margin:0;translate:none!important;scale:1!important;
 transform:none!important;line-height:.75;
}
body:is(.studio-theme,.services-slate) .nav.shell .logo b{font-size:30px;letter-spacing:-3px}
body:is(.studio-theme,.services-slate) .nav.shell .logo small{font-size:9px;letter-spacing:5px;margin-top:8px}
body:is(.studio-theme,.services-slate) .nav.shell nav{
 display:flex;gap:clamp(12px,1.5vw,25px);margin:0;
 align-items:center;translate:none!important;scale:1!important;
}
body:is(.studio-theme,.services-slate) .nav.shell nav a{
 padding:10px 0;font-size:11px;line-height:16px;letter-spacing:.5px;
 font-weight:600;white-space:nowrap;border:0;
}
body:is(.studio-theme,.services-slate) .nav.shell .outline{
 flex:none;margin:0;padding:13px 18px;font-size:11px;line-height:16px;
 letter-spacing:1px;white-space:nowrap;border-radius:24px;
}
body:is(.studio-theme,.services-slate) .nav.shell .menu{display:none}
@media(min-width:901px) and (max-width:1150px){
 body:is(.studio-theme,.services-slate) .nav.shell{width:calc(100% - 40px);gap:18px}
 body:is(.studio-theme,.services-slate) .nav.shell nav{gap:12px}
 body:is(.studio-theme,.services-slate) .nav.shell nav a{font-size:10px}
 body:is(.studio-theme,.services-slate) .nav.shell .outline{padding:12px;font-size:10px}
}
@media(max-width:900px){
 body:is(.studio-theme,.services-slate) .page-header{height:76px}
 body:is(.studio-theme,.services-slate) .nav.shell{width:calc(100% - 40px);height:76px;gap:18px}
 body:is(.studio-theme,.services-slate) .nav.shell .menu{
  display:block;margin-left:auto;min-width:44px;min-height:44px;
  padding:0;position:relative;z-index:2;
 }
 body:is(.studio-theme,.services-slate) .nav.shell .outline{display:none}
 body:is(.studio-theme,.services-slate) .nav.shell nav{display:none}
 body:is(.studio-theme,.services-slate) .nav.shell nav.mobile-open{
  display:flex;position:absolute;top:76px;left:0;right:0;
  margin:0;padding:20px;flex-direction:column;align-items:stretch;
  gap:0;border-radius:12px;background:#4f5264fa!important;
  box-shadow:0 12px 32px #20263640;z-index:20;
 }
 body:is(.studio-theme,.services-slate) .nav.shell nav.mobile-open a{
  padding:14px 10px;font-size:13px;line-height:16px;min-height:44px;
 }
 body:is(.studio-theme,.services-slate) .nav.shell nav.mobile-open a:after{display:none}
}
@media(max-width:540px){body:is(.studio-theme,.services-slate) .nav.shell{width:calc(100% - 32px)}}

/* Preserve the pre-update home composition on wide desktops as well. */
@media(min-width:1801px){
 body:is(.studio-theme,.services-slate) .nav.shell{translate:-6px 3px!important}
 body:is(.studio-theme,.services-slate) .nav.shell .hero-menu-group{margin-left:auto;gap:34px;translate:-560px 1px!important}
 body:is(.studio-theme,.services-slate) .nav.shell .logo{translate:-92px 0!important;scale:1.2064816022170726!important;transform-origin:top left}
 body:is(.studio-theme,.services-slate) .nav.shell nav{gap:25px}
}
@media(max-width:900px){body:is(.studio-theme,.services-slate) .nav.shell .hero-menu-group{margin:0;display:contents}}

/* Bring links closer to the logo on narrower desktop screens. */
@media(min-width:901px) and (max-width:1800px){body:is(.studio-theme,.services-slate) .nav.shell .hero-menu-group{margin-left:0}}

/* GO STUDIO unified navigation 2026-10-25 */
body:is(.studio-theme,.services-slate) .nav.shell nav a{
 position:relative;background:transparent;border-radius:0;box-shadow:none;
 color:#ececf3;text-decoration:none;transition:color .2s;
}
body:is(.studio-theme,.services-slate) .nav.shell nav a:is(.active,[aria-current="page"]){
 color:var(--brand-gold-bright,#ffcf70);background:transparent;
}
body:is(.studio-theme,.services-slate) .nav.shell nav a:focus-visible{
 color:#ffe0a1;background:transparent;outline:2px solid #e4ad43;outline-offset:5px;
}
@media(hover:hover){
 body:is(.studio-theme,.services-slate) .nav.shell nav a:hover{color:#ffe0a1;background:transparent}
}
@media(min-width:901px){
 body:is(.studio-theme,.services-slate) .nav.shell nav a::after{
  content:'';position:absolute;left:0;right:0;bottom:-9px;height:2px;
  background:#e4ad43;transform:scaleX(0);transform-origin:left;transition:transform .2s;
  pointer-events:none;
 }
 body:is(.studio-theme,.services-slate) .nav.shell nav a:focus-visible::after{transform:scaleX(1)}
}
@media(min-width:901px) and (hover:hover){
 body:is(.studio-theme,.services-slate) .nav.shell nav a:hover::after{transform:scaleX(1)}
}
@media(max-width:900px){
 body:is(.studio-theme,.services-slate) .nav.shell nav.mobile-open a::after{display:none}
}
@media(prefers-reduced-motion:reduce){
 body:is(.studio-theme,.services-slate) .nav.shell nav a,
 body:is(.studio-theme,.services-slate) .nav.shell nav a::after{transition:none}
}
