/* Confine the padded logo canvas without allowing grid intrinsic sizing to crop it. */
.site-header .brand{display:block;position:relative;width:120px;height:60px;flex:0 0 120px;overflow:hidden;margin:0}
.site-header .brand img{position:absolute;display:block;width:180px;height:180px;max-width:none;top:50%;left:50%;transform:translate(-50%,-50%);object-fit:contain;margin:0}
.site-header .main-nav{background:transparent;order:initial;width:auto;flex:1;align-items:center}
.site-header .main-nav>a,.site-header .nav-parent>a{color:#333!important;border-radius:8px}
.site-header .main-nav a.active{background:#eaf3fc;color:#0055a6!important}
.site-header .nav-parent{display:flex;align-items:center;border-radius:10px;transition:background-color .18s ease}.site-header .nav-parent:hover,.site-header .nav-parent:focus-within{background:#f1f6fb}
.site-header .nav-parent>a{padding-inline-end:4px;border-radius:10px 0 0 10px}.site-header .nav-parent>a:hover{color:#0055a6!important}
.site-header .product-menu-toggle{display:grid;place-items:center;color:#333;background:transparent;min-width:34px;min-height:44px;padding:0 10px 0 4px;border:0;border-radius:0 10px 10px 0;cursor:pointer}
.site-header .product-menu-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s ease}
.site-header .product-menu-toggle[aria-expanded=true]{color:#0055a6}.site-header .product-menu-toggle[aria-expanded=true] svg{transform:rotate(180deg)}
.site-header .mega-menu a{color:#4f5965!important;border-radius:8px;text-decoration:none;transition:background-color .15s ease,color .15s ease,transform .15s ease}
.site-header .mega-menu a:hover,.site-header .mega-menu a:focus-visible{color:#0055a6!important;background:#eef6fd;text-decoration:none;transform:translateX(3px)}
.site-header .mega-menu .mega-heading{color:#172536!important}.site-header .mega-menu .mega-heading:hover,.site-header .mega-menu .mega-heading:focus-visible{color:#0055a6!important}
@media(max-width:1100px){.site-header .main-nav{order:3;width:100%;flex-basis:100%}.site-header .nav-shell{flex-wrap:wrap}}
@media(max-width:800px){.site-header .main-nav{display:none}.site-header .main-nav.open{display:flex}.site-header .brand{width:106px;flex-basis:106px}}
/* Mobile navigation is an opaque panel, never transparent text over the page. */
@media(max-width:800px){
 .site-header .main-nav.open{position:absolute;top:100%;left:12px;right:12px;width:auto;flex:none;flex-basis:auto;margin:0;padding:12px;background:#fff;opacity:1;z-index:100;align-items:stretch;justify-content:flex-start;gap:2px;max-height:calc(100dvh - 100px);overflow-y:auto;border:1px solid #e3e8ef;border-radius:0 0 18px 18px;box-shadow:0 18px 40px #17253626}
 .site-header .main-nav.open>a,.site-header .main-nav.open .nav-parent{width:100%;min-height:44px;flex-shrink:0}
 .site-header .main-nav.open>a{justify-content:flex-start;padding:12px 16px;border-bottom:0}
 .site-header .main-nav.open .nav-parent>a{flex:1;padding:12px 16px}
 .site-header .main-nav.open .mega-menu{position:static;width:100%;max-height:none;box-shadow:none;border:0;padding:8px 12px;grid-template-columns:1fr;background:#f5f7fa}
}

/* Reserve scrollbar space before and after page loading. */
html{scrollbar-gutter:stable}
