/* Shared header and footer. The height token keeps page anchors clear. */
.site-header{background:rgba(255,255,255,.98);border-bottom-color:#dce5ed;box-shadow:0 3px 18px #172b3a06}
.site-header .primary-nav{font-size:15px}
.site-header .brand-name{letter-spacing:-.035em}
.site-header .primary-nav>details>summary,.site-header .primary-nav>.nav-link{position:relative;border-radius:6px;transition:background-color 160ms,color 160ms}
.site-header .primary-nav>details>summary:hover,.site-header .primary-nav>.nav-link:hover{color:var(--action);background:#f1f5fa}
.site-header .primary-nav>.nav-link.is-current,.site-header .primary-nav>.nav-section-active>summary{color:var(--action)}
.site-header .primary-nav :is(a,summary,button):focus-visible{outline:2px solid var(--action);outline-offset:4px}
.site-header .mega-heading{align-items:center;gap:20px}
.site-header .mega-heading>span{color:var(--ink);font-size:15px;font-weight:600}
.site-header .mega-heading>a{gap:10px;font-size:14px;text-decoration:none}
.site-header .menu-group-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 10px}
.site-header .mega-item{gap:18px;margin:0;padding:10px 12px;min-height:58px;transition:background-color 160ms,color 160ms}
.site-header .mega-item-title{display:block;font-size:15px;line-height:22px;font-weight:500}
.site-header .mega-item-description{display:block;color:var(--muted);font-size:12px;line-height:18px;font-weight:400;margin-top:3px}
.site-header .mega-item-arrow{flex:none;color:var(--muted);font-size:16px;transition:transform 160ms}
.site-header .mega-item:is(:hover,.is-current){background:var(--soft);color:var(--action)}
.site-header .mega-item:is(:hover,.is-current) .mega-item-arrow{color:var(--action);transform:translateX(2px)}
.site-header .mega-assistance{margin:22px 12px 0;padding:18px 20px;border:1px solid #d9e5f0;border-radius:8px;background:#f3f7fb}
.site-header .mega-assistance-label{display:block;font-size:14px;font-weight:600;color:var(--ink);line-height:22px}
.site-header .mega-assistance p{font-size:13px;line-height:21px;margin:7px 0 10px;max-width:40ch}
.site-header .mega-assistance a{display:inline-flex;align-items:center;gap:12px;font-size:13px;font-weight:600;text-decoration:none}
.site-header .mega-note{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;line-height:20px;margin-top:20px;padding-top:16px}
.site-header .mega-note>a{display:inline-flex;align-items:center;gap:10px;color:var(--action);font-size:13px;font-weight:500;text-decoration:none}
.site-header .mega-note>span{color:var(--muted)}
.site-header .company-submenu a{font-size:14px;line-height:22px}
.site-header .company-submenu a[aria-current=page]{color:var(--action);background:var(--soft)}
.site-header .nav-search{color:var(--ink);transition:background-color 160ms,border-color 160ms,box-shadow 160ms}
.site-header .nav-search:hover,.site-header .nav-search[aria-current=page]{color:var(--action);background:var(--soft);border-color:#b4c8de}
.site-header .nav-quote{min-height:46px;padding:11px 18px;gap:14px;font-size:14px;border-radius:6px;box-shadow:0 3px 8px #2459a615;transition:background-color 160ms,box-shadow 160ms}
.site-header .nav-quote:hover{box-shadow:0 5px 14px #2459a629}
@media(min-width:1120px){
 :root{--header-height:88px}
 .site-header .header-inner{gap:20px}
 .site-header .primary-nav{gap:8px}
 .site-header .primary-nav>details>summary,.site-header .primary-nav>.nav-link{padding:10px 10px;min-height:44px}
 .site-header .primary-nav>details>summary::after,.site-header .primary-nav>.nav-link::after{position:absolute;left:10px;right:10px;bottom:3px;height:2px;background:var(--action);content:'';transform:scaleX(0);transform-origin:left;transition:transform 160ms}
 .site-header .primary-nav>.nav-section-active>summary::after,.site-header .primary-nav>.nav-link.is-current::after{transform:scaleX(1)}
 .site-header .primary-nav>details[open]>summary{background:var(--soft)}
 .site-header .mega-menu{left:auto;right:40px;top:calc(100% + 6px);width:940px;max-width:calc(100% - 80px);margin:0;padding:24px 26px 18px;border:1px solid #d6e1ea;border-top:3px solid var(--action);border-radius:8px;box-shadow:0 16px 42px #172b3a18}
 .site-header .mega-heading{padding-bottom:18px}
 .site-header .mega-groups{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:26px;padding-top:22px}
 .site-header .mega-column+.mega-column{border-left:1px solid var(--line);padding-left:26px}
 .site-header .company-submenu{top:calc(100% + 18px);width:260px;border:1px solid #d6e1ea;border-top:3px solid var(--action);border-radius:8px;padding:8px;box-shadow:0 16px 36px #172b3a18}
 .site-header .company-submenu a{padding:12px 14px}
 .site-header .primary-nav .nav-search{display:flex;justify-content:center;width:42px;height:42px;min-height:42px;padding:0;border:1px solid var(--line);border-radius:50%;margin-left:6px}
 .site-header .nav-search-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
 .site-header .nav-quote{margin-left:8px}
}
@media(min-width:1320px){
 .site-header .primary-nav{gap:15px}
 .site-header .primary-nav>details>summary,.site-header .primary-nav>.nav-link{padding-inline:12px}
 .site-header .nav-quote{padding-inline:22px}
}
@media(max-width:1119px){
 .site-header .menu-toggle{border:1px solid var(--line);border-radius:6px;padding:8px 12px;min-height:44px;gap:12px}
 .site-header .primary-nav{padding-top:10px;padding-bottom:22px;box-shadow:0 16px 24px #172b3a0c;overscroll-behavior:contain}
 .site-header .primary-nav>details{border-bottom:1px solid var(--line)}
 .site-header .primary-nav>details>summary{min-height:48px;padding:12px 0;justify-content:space-between;font-size:16px}
 .site-header .primary-nav>details>summary:hover{background:none}
 .site-header .primary-nav>.nav-link{border-radius:0;font-size:16px;padding:12px 0}
 .site-header .mega-menu{padding:0 0 16px}
 .site-header .mega-heading{display:flex;padding:4px 0 14px;border-bottom:0}
 .site-header .mega-heading>span{display:none}
 .site-header .mega-groups{gap:16px;padding-top:0}
 .site-header .mega-column{padding:14px;background:var(--bg);border-radius:7px}
 .site-header .mega-item{min-height:44px;padding:9px 6px}
 .site-header .mega-item-title{font-size:14px;line-height:22px}
 .site-header .mega-item-description{display:none}
 .site-header .mega-assistance{margin:12px 0 0;padding:12px 14px;background:#fff}
 .site-header .mega-assistance p{display:none}
 .site-header .mega-assistance a{margin-top:5px}
 .site-header .mega-note{margin:14px 0 0;padding:0;border:0}
 .site-header .mega-note>span{display:none}
 .site-header .company-submenu{padding:0 0 8px 12px;margin:0 0 10px;border-left:2px solid var(--line)}
 .site-header .company-submenu a{padding:10px 12px}
 .site-header .primary-nav .nav-search{padding:12px 0;font-size:16px;min-height:48px}
 .site-header .nav-search:hover{background:none}
 .site-header .primary-nav .nav-quote{margin-top:16px;align-self:stretch;justify-content:center}
}
@media(max-width:767px){
 .site-header .mega-groups{grid-template-columns:1fr;gap:12px}
 .site-header .mega-column{padding:12px}
}
/* Compact, high-contrast manufacturer footer. */
.site-footer.footer-refined{padding:0;background:#122c43;color:#c9d7e4;border-top:0}
.footer-refined a{color:inherit}
.footer-refined :is(a,button):focus-visible{outline:2px solid #a5d2ff;outline-offset:4px}
.footer-refined .footer-help{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:34px 0;border-bottom:1px solid #ffffff21}
.footer-refined .footer-kicker{display:block;color:#9ec5ec;font-size:12px;font-weight:500;line-height:20px;letter-spacing:.025em;margin-bottom:7px}
.footer-refined .footer-help h2{font-size:25px;line-height:33px;letter-spacing:-.02em;color:#fff;margin:0}
.footer-refined .footer-help p{font-size:14px;line-height:22px;color:#c9d7e4;margin:8px 0 0}
.footer-refined .footer-help-button{flex:none;color:#183a5a;background:#fff;border-color:#fff;font-size:14px;min-height:46px;padding:11px 18px;box-shadow:0 4px 12px #00000012;transition:box-shadow 160ms,background-color 160ms}
.footer-refined .footer-help-button:hover{background:#eaf3fc;box-shadow:0 7px 16px #00000025}
.footer-refined .footer-grid{display:grid;grid-template-columns:1.25fr .85fr .95fr 1fr;gap:32px;padding:34px 0 30px}
.footer-refined .brand{color:#fff;font-size:28px;line-height:34px;letter-spacing:-.025em}
.footer-refined .brand-mark{background:#fff;padding:3px;border-radius:4px}
.footer-refined .footer-about>p{font-size:14px;line-height:22px;margin:16px 0 10px;max-width:28ch;color:#e4ecf3}
.footer-refined .footer-about>span{display:block;font-size:13px;line-height:21px;color:#a9bdcf}
.footer-refined .footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0}
.footer-refined .footer-links h2{color:#fff;font-size:14px;line-height:22px;font-weight:600;margin:0 0 9px}
.footer-refined .footer-links a{font-size:13px;line-height:21px;padding:4px 0;text-decoration:none;color:#c9d7e4;transition:color 150ms}
.footer-refined .footer-links a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.footer-refined .footer-contact>a{overflow-wrap:anywhere}
.footer-refined .footer-contact a span{margin-left:8px}
.footer-refined .footer-contact .footer-order-link{display:inline-flex;align-items:center;color:#fff;font-weight:500;margin-top:8px;padding-bottom:6px;border-bottom:1px solid #6e8da9}
.footer-refined .footer-bottom{border-top:1px solid #ffffff21;color:#a9bdcf;padding:18px 0;font-size:12px;line-height:20px;gap:20px}
.footer-refined .footer-bottom p{margin:0}
.footer-refined .footer-bottom a{font-size:12px;line-height:20px;color:#c9d7e4}
.footer-refined .footer-bottom a:hover{color:#fff}
.footer-refined .footer-utility{gap:14px 24px}
.footer-refined .footer-bottom a span{margin-left:8px}
@media(max-width:1119px){
 .footer-refined .footer-grid{grid-template-columns:1fr 1fr;gap:28px 40px}
 .footer-refined .footer-help h2{font-size:23px;line-height:31px}
 .footer-refined .footer-help{gap:24px}
}
@media(max-width:767px){
 .footer-refined .footer-help{align-items:flex-start;flex-direction:column;gap:18px;padding:28px 0}
 .footer-refined .footer-help h2{font-size:22px;line-height:29px}
 .footer-refined .footer-help-button{font-size:13px;padding-inline:16px;min-height:44px}
 .footer-refined .footer-grid{grid-template-columns:1fr 1fr;gap:26px 18px;padding:28px 0}
 .footer-refined .footer-about{grid-column:1/-1}
 .footer-refined .footer-about>p{max-width:40ch;margin:12px 0 8px}
 .footer-refined .footer-contact{grid-column:1/-1;padding-top:22px;border-top:1px solid #ffffff21}
 .footer-refined .footer-links{gap:3px}
 .footer-refined .footer-links h2{font-size:13px;margin-bottom:6px}
 .footer-refined .footer-bottom{flex-direction:column;gap:12px;padding:18px 0 22px}
 .footer-refined .footer-utility{gap:12px 24px}
}
@media(prefers-reduced-motion:reduce){
 .site-header .primary-nav>details>summary,.site-header .primary-nav>.nav-link,.site-header .mega-item,.site-header .mega-item-arrow,.site-header .nav-search,.site-header .nav-quote,.site-header .primary-nav>details>summary::after,.site-header .primary-nav>.nav-link::after,.footer-refined a,.footer-refined .footer-help-button{transition:none}
}

/* The graphic mark is the complete visible brand, with accessible link naming. */
.site-header .brand{display:flex;align-items:center;flex:none;min-width:88px}
.site-header .brand-mark{display:block;width:80px;height:64px;object-fit:contain;background:transparent}
.footer-refined .brand-mark{width:86px;height:auto;background:transparent;padding:0;border-radius:0}
.nav-extra,.footer-extra{display:flex;flex-wrap:wrap;gap:16px;list-style:none;margin:0;padding:0}
.nav-extra a{text-decoration:none;font-weight:500}
.footer-extra{padding:0 0 22px}
.footer-extra a{color:#c9d7e4}
body.admin-bar .site-header{top:32px}
@media(max-width:782px){body.admin-bar .site-header{top:46px}.site-header .brand{min-width:68px}.site-header .brand-mark{width:62px;height:50px}}
@media(max-width:600px){body.admin-bar .site-header{top:0}}
