/* Shared public navigation only. Portal layouts and content components are untouched. */
.site-header.public-shell-header .nav{grid-template-columns:auto minmax(0,1fr) auto;min-height:104px;gap:22px;padding-block:6px}
.site-header.public-shell-header .brand{display:flex;flex-direction:column;align-items:center;gap:2px;justify-self:start;min-width:0}
.site-header.public-shell-header .logo-window{width:150px;height:86px;background:#fff}
.site-header.public-shell-header .logo-window img{width:160px;left:-5px;top:-39px}
.site-header.public-shell-header .public-brand-descriptor{font-size:10px;line-height:1.3;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#082f5c;margin-top:0}
.site-header.public-shell-header .site-navigation{justify-self:center;order:initial}
.site-header.public-shell-header .nav-links{gap:22px}
.site-header.public-shell-header .nav-links>a,.site-header.public-shell-header .nav-dropdown>summary{font-size:12px;white-space:nowrap}
.site-header.public-shell-header .nav-cta{display:inline-flex;grid-column:auto;grid-row:auto;order:initial;gap:10px;padding:12px 14px;font-size:12px;white-space:nowrap}
.site-header.public-shell-header .nav-links>a[aria-current="page"]{color:#a8102b;text-decoration:underline;text-underline-offset:5px}
.site-header.public-shell-header .nav-dropdown-panel{width:280px;max-height:min(480px,70vh);overflow-y:auto}
.site-header.public-shell-header :is(a,summary):focus-visible{outline:3px solid #c71935;outline-offset:4px}
.public-shell-footer .footer-grid{grid-template-columns:.8fr 1.1fr 1fr .85fr 1.1fr;gap:28px}
.public-shell-footer .footer-brand{grid-column:auto}
.public-shell-footer .footer-links,.public-shell-footer .footer-contact{min-width:0;gap:9px}
.public-shell-footer .footer-links a,.public-shell-footer .footer-contact a{font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.public-shell-footer .footer-links strong,.public-shell-footer .footer-contact strong{font-family:inherit;font-size:11px;line-height:1.5}
.public-shell-footer .logo-window{max-width:100%}
.public-shell-footer :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:4px}
/* Modern native details keeps closed content hidden through this pseudo-element.
   The desktop menu is always visible; the nested product disclosure still closes. */
@media(min-width:1121px){
 .site-header.public-shell-header .nav-menu::details-content{content-visibility:visible;display:contents}
 .site-header.public-shell-header .nav-menu>.nav-links{display:flex!important}
}
@media(max-width:1120px){
 .site-header.public-shell-header .nav{position:relative;grid-template-columns:1fr auto auto;gap:14px;min-height:98px}
 .site-header.public-shell-header .nav-menu{position:static}
 .site-header.public-shell-header .site-navigation{justify-self:end;order:2}
 .site-header.public-shell-header .nav-cta{order:3}
 .site-header.public-shell-header .nav-menu-toggle{display:inline-flex;align-items:center;min-height:42px;padding:9px 12px;border:1px solid #d9e4ee;border-radius:8px;color:#082f5c;font-size:12px;font-weight:850}
 .site-header.public-shell-header .nav-menu>.nav-links{display:none!important;position:absolute;z-index:3;top:calc(100% + 8px);right:0;width:min(320px,calc(100vw - 34px));max-height:calc(100dvh - 150px);overflow-y:auto;padding:12px;border:1px solid #d9e4ee;border-radius:12px;background:#fff;box-shadow:0 22px 48px rgba(5,31,60,.18)}
 .site-header.public-shell-header .nav-menu[open]>.nav-links{display:flex!important;align-items:stretch;flex-direction:column;gap:2px}
 .site-header.public-shell-header .nav-links>a,.site-header.public-shell-header .nav-dropdown>summary{display:flex;padding:11px;border-radius:7px}
 .site-header.public-shell-header .nav-dropdown-panel{position:static;width:auto;max-height:none;overflow:visible;margin:2px 0 6px;padding:6px;border:0;border-radius:8px;background:#f5f9fd;box-shadow:none;transform:none}
 .site-header.public-shell-header .nav-dropdown-panel:before{display:none}
 .site-header.public-shell-header .nav-dropdown-panel a{padding:9px 10px}
 .public-shell-footer .footer-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}
 .public-shell-footer .footer-brand{grid-column:1/-1}
}
@media(max-width:760px){
 .site-header.public-shell-header .nav{grid-template-columns:1fr auto auto;gap:10px;min-height:94px;padding-block:5px}
 .site-header.public-shell-header .logo-window{width:125px;height:67px}
 .site-header.public-shell-header .logo-window img{width:136px;left:-5px;top:-33px}
 .site-header.public-shell-header .public-brand-descriptor{font-size:9px;margin-top:0}
 .site-header.public-shell-header .nav-cta{padding:10px 11px;font-size:11px}
 .public-shell-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px}
}
@media(max-width:520px){
 .site-header.public-shell-header .nav{grid-template-columns:1fr auto minmax(0,125px);gap:8px;min-height:84px}
 .site-header.public-shell-header .logo-window{width:99px;height:55px}
 .site-header.public-shell-header .logo-window img{width:110px;left:-5px;top:-27px}
 .site-header.public-shell-header .public-brand-descriptor{font-size:8px;letter-spacing:.08em;margin-top:0}
 .site-header.public-shell-header .nav-menu-toggle{padding:9px 10px}
 .site-header.public-shell-header .nav-cta{display:inline-flex;white-space:normal;line-height:1.35;gap:5px;padding:10px 9px;font-size:10px}
 .public-shell-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 18px}
 .public-shell-footer .footer-brand,.public-shell-footer .footer-contact{grid-column:1/-1}
}
@media print{.site-header.public-shell-header,.public-shell-footer{display:none!important}}
