/* Scallex Enterprise UX shared shell — self-contained navigation/footer foundation. */
body.ux-shell-v1 .navbar{position:sticky;top:0;z-index:1100;background:rgba(255,255,255,.97);backdrop-filter:saturate(130%) blur(12px);border-bottom:1px solid var(--line,#dbe4f5);box-shadow:none;height:auto}
body.ux-shell-v1 .nav-container{width:min(1200px,calc(100% - 40px));margin:auto;min-height:82px;height:auto;display:flex;align-items:center;gap:1.15rem;justify-content:flex-start}
body.ux-shell-v1 .brand-link{display:flex;align-items:center;flex:0 0 auto}
body.ux-shell-v1 .brand-link img{width:178px;height:auto}
body.ux-shell-v1 .nav-menu{display:flex;align-items:center;gap:.05rem;list-style:none;padding:0;margin:0 0 0 auto;position:static;width:auto;height:auto;background:transparent;box-shadow:none;overflow:visible}
body.ux-shell-v1 .nav-menu>li{position:relative;display:flex;align-items:center;width:auto;border:0}
body.ux-shell-v1 .nav-menu>li>a,body.ux-shell-v1 .nav-label{display:inline-flex;align-items:center;min-height:44px;padding:.65rem .52rem;color:var(--ink,#1f2937);font-weight:750;font-size:.88rem;background:none;border:0;cursor:pointer;border-radius:12px;white-space:nowrap;font-family:inherit}
body.ux-shell-v1 .nav-menu>li>a:hover,body.ux-shell-v1 .nav-menu>li>a:focus-visible,body.ux-shell-v1 .nav-label:hover,body.ux-shell-v1 .nav-label:focus-visible{background:var(--bg,var(--light,#f5f8ff));text-decoration:none;color:var(--navy,var(--primary-dark,#1d3493))}
body.ux-shell-v1 .submenu-toggle{display:none;background:none;border:0;color:var(--navy,var(--primary-dark,#1d3493));font-size:1.1rem;cursor:pointer;font-family:inherit}
body.ux-shell-v1 .dropdown-menu{display:none;position:absolute;top:calc(100% + 8px);left:0;min-width:280px;list-style:none;margin:0;padding:.65rem;background:#fff;border:1px solid var(--line,#dbe4f5);border-radius:18px;box-shadow:var(--shadow,0 16px 44px rgba(29,52,147,.14));z-index:1200}
body.ux-shell-v1 .dropdown-menu a{display:block;padding:.7rem .8rem;color:var(--ink,#1f2937);border-radius:11px;font-size:.91rem;font-weight:650;text-decoration:none}
body.ux-shell-v1 .dropdown-menu a:hover,body.ux-shell-v1 .dropdown-menu a:focus-visible{background:var(--bg,var(--light,#f5f8ff));text-decoration:none;color:var(--navy,var(--primary-dark,#1d3493))}
body.ux-shell-v1 .menu-heading{padding:.68rem .8rem .3rem;color:var(--blue,var(--primary-mid,#2244a0));font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;font-weight:900}
body.ux-shell-v1 .nav-cta{display:inline-flex;align-items:center;justify-content:center;padding:.78rem 1rem;background:linear-gradient(135deg,var(--navy,var(--primary-dark,#1d3493)),var(--blue,var(--primary-mid,#2244a0)));color:#fff!important;font-weight:850;border-radius:999px;box-shadow:var(--shadow-sm,0 2px 10px rgba(29,52,147,.08));white-space:nowrap;text-decoration:none}
body.ux-shell-v1 .nav-cta:hover{text-decoration:none;transform:translateY(-1px)}
body.ux-shell-v1 .mobile-only{display:none}
body.ux-shell-v1 .menu-toggle{display:none;margin-left:auto;width:44px;height:44px;border:1px solid var(--line,#dbe4f5);background:#fff;border-radius:12px;padding:10px;flex-direction:column;justify-content:center;gap:5px;cursor:pointer;z-index:1200}
body.ux-shell-v1 .menu-toggle span{height:2px;background:var(--navy,var(--primary-dark,#1d3493));width:100%;display:block}
body.ux-shell-v1 .mobile-overlay{position:fixed;inset:0;background:rgba(8,15,44,.45);z-index:1040;display:none}
body.ux-shell-v1 .mobile-overlay.active{display:block}
body.ux-shell-v1 .site-footer{background:var(--navy,var(--primary-dark,#1d3493));color:#fff;padding:4rem 0 1.5rem}
body.ux-shell-v1 .footer-grid{width:min(1200px,calc(100% - 40px));margin:auto;display:grid;gap:1.55rem}
body.ux-shell-v1 .footer-brand img{width:190px;height:auto}
body.ux-shell-v1 .footer-brand p,body.ux-shell-v1 .office-note{color:rgba(255,255,255,.8);font-size:.9rem}
body.ux-shell-v1 .site-footer a{color:rgba(255,255,255,.88);text-decoration:none}
body.ux-shell-v1 .site-footer a:hover,body.ux-shell-v1 .site-footer a:focus-visible{color:#fff;text-decoration:underline}
body.ux-shell-v1 .footer-heading{font-size:.83rem;text-transform:uppercase;letter-spacing:.09em;margin:.2rem 0 .9rem;color:#fff}
body.ux-shell-v1 .footer-links{list-style:none;padding:0;margin:0;display:grid;gap:.48rem}
body.ux-shell-v1 .footer-links a{font-size:.9rem}
body.ux-shell-v1 .legal-name{font-size:.78rem!important;opacity:.8}
body.ux-shell-v1 .footer-bottom{width:min(1200px,calc(100% - 40px));margin:2.4rem auto 0;border-top:1px solid rgba(255,255,255,.13);padding-top:1.25rem;color:rgba(255,255,255,.7);font-size:.82rem;text-align:center}
body.ux-shell-v1 .ux-navbar .nav-container{max-width:1280px}
body.ux-shell-v1 .ux-navbar .nav-menu{gap:.05rem}
body.ux-shell-v1 .ux-navbar .nav-menu>li>a,body.ux-shell-v1 .ux-navbar .nav-label{font-size:.88rem;padding:.65rem .52rem}
body.ux-shell-v1 .ux-navbar .nav-label{font-family:inherit}
body.ux-shell-v1 .ux-navbar .submenu-toggle{font-family:inherit}
body.ux-shell-v1 .ux-mega-menu{padding:0;width:min(820px,calc(100vw - 48px));border-radius:20px;overflow:hidden}
body.ux-shell-v1 .ux-services-menu{left:-30px}
body.ux-shell-v1 .ux-who-menu{width:min(680px,calc(100vw - 48px));left:-130px}
body.ux-shell-v1 .ux-resources-menu{width:min(720px,calc(100vw - 48px));left:-350px}
body.ux-shell-v1 .ux-location-menu{min-width:340px;padding:.6rem}
body.ux-shell-v1 .ux-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:.55rem}
body.ux-shell-v1 .ux-menu-grid.ux-two-col{grid-template-columns:repeat(2,minmax(0,1fr))}
body.ux-shell-v1 .ux-menu-group{padding:.25rem}
body.ux-shell-v1 .ux-menu-group+.ux-menu-group{border-left:1px solid var(--line)}
body.ux-shell-v1 .ux-menu-group .menu-heading{padding:.55rem .7rem .35rem}
body.ux-shell-v1 .ux-menu-group a,body.ux-shell-v1 .ux-location-menu a{display:grid;gap:.12rem;padding:.72rem;border-radius:12px;white-space:normal}
body.ux-shell-v1 .ux-menu-group a strong,body.ux-shell-v1 .ux-location-menu a strong{font-size:.88rem;color:var(--ink)}
body.ux-shell-v1 .ux-menu-group a span,body.ux-shell-v1 .ux-location-menu a span{font-size:.76rem;line-height:1.35;color:var(--muted);font-weight:500}
body.ux-shell-v1 .ux-location-menu li+li{border-top:1px solid var(--line)}
body.ux-shell-v1 .ux-footer-grid{grid-template-columns:1.35fr repeat(4,minmax(0,1fr));gap:1.55rem}
body.ux-shell-v1 .ux-footer-secondary-heading{margin-top:1.45rem}
body.ux-shell-v1 .ux-site-footer .footer-links a{line-height:1.45}
@media(max-width:1120px){
 body.ux-shell-v1 .ux-navbar .nav-menu>li>a,body.ux-shell-v1 .ux-navbar .nav-label{font-size:.82rem;padding:.6rem .38rem}
 body.ux-shell-v1 .ux-navbar .nav-container{gap:.65rem}
 body.ux-shell-v1 .ux-footer-grid{grid-template-columns:1.35fr repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
 body.ux-shell-v1 .ux-mega-menu,body.ux-shell-v1 .ux-who-menu,body.ux-shell-v1 .ux-resources-menu{width:auto;left:auto;overflow:visible}
 body.ux-shell-v1 .ux-menu-grid,body.ux-shell-v1 .ux-menu-grid.ux-two-col{grid-template-columns:1fr}
 body.ux-shell-v1 .ux-menu-group+.ux-menu-group{border-left:0;border-top:1px solid var(--line)}
 body.ux-shell-v1 .ux-menu-group a span{display:none}
 body.ux-shell-v1 .ux-location-menu{min-width:0;padding:0 0 .6rem .75rem}
 body.ux-shell-v1 .ux-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){body.ux-shell-v1 .ux-footer-grid{grid-template-columns:1fr}}
/* Production menu state is explicit: hover/focus alone never becomes the only open-state mechanism. */
body.ux-shell-v1 .has-dropdown:hover>.dropdown-menu,
body.ux-shell-v1 .has-dropdown:focus-within>.dropdown-menu{display:none}
body.ux-shell-v1 .has-dropdown.open>.dropdown-menu{display:grid;gap:.12rem}
/* Shared drawer containment: keep closed navigation out of layout width on tablet/mobile. */
@media(max-width:1120px){
 body.ux-shell-v1 .menu-toggle{display:flex}
 body.ux-shell-v1 .desktop-cta{display:inline-flex;margin-left:auto}
 body.ux-shell-v1 .nav-menu{position:fixed;right:0;top:0;width:min(360px,88vw);height:100vh;background:#fff;padding:5.6rem 1rem 2rem;overflow-y:auto;box-shadow:-16px 0 40px rgba(0,0,0,.16);z-index:1150;display:none}
 body.ux-shell-v1 .nav-menu.active{display:block;right:0}
 body.ux-shell-v1 .nav-menu>li{display:grid;grid-template-columns:1fr auto;border-bottom:1px solid var(--line)}
 body.ux-shell-v1 .nav-menu>li>a,body.ux-shell-v1 .nav-label{justify-content:flex-start;width:100%;padding:.85rem .55rem;min-height:50px}
 body.ux-shell-v1 .submenu-toggle{display:block}
 body.ux-shell-v1 .dropdown-menu{position:static;grid-column:1/-1;box-shadow:none;border:0;border-radius:0;padding:0 0 .6rem .75rem;min-width:0}
 body.ux-shell-v1 .has-dropdown.open>.dropdown-menu{display:grid}
 body.ux-shell-v1 .nav-menu>li.mobile-only{display:grid!important}
}
@media(max-width:900px){body.ux-shell-v1 .desktop-cta{display:none}}
/* Explicit desktop submenu controls: Services/Resources must not depend on hover. */
@media(min-width:1121px){
 body.ux-shell-v1 .ux-services-nav>.submenu-toggle,
 body.ux-shell-v1 .ux-resources-nav>.submenu-toggle{display:inline-flex;align-items:center;justify-content:center;width:30px;height:40px;padding:0;margin-left:-.3rem;border-radius:10px;color:var(--navy)}
 body.ux-shell-v1 .ux-services-nav>.submenu-toggle:hover,
 body.ux-shell-v1 .ux-resources-nav>.submenu-toggle:hover,
 body.ux-shell-v1 .ux-services-nav>.submenu-toggle:focus-visible,
 body.ux-shell-v1 .ux-resources-nav>.submenu-toggle:focus-visible{background:var(--bg)}
}
@media(min-width:1121px){body.ux-shell-v1 .ux-services-menu{left:-60px}}
