/* Shared public header/footer components. Typography draws from gateway-design.css. */
.gw-site-header,.gw-site-footer{--gw-shell-blue:#1C3765;--gw-shell-navy:#142348;--gw-shell-yellow:#FECB43;font-family:var(--gw-sans);font-size:1rem;line-height:1.6}
.gw-shell-inner{width:min(100% - 48px,1200px);margin-inline:auto}
.gw-site-header{background:#fff;border-bottom:1px solid #e2e7ed;color:var(--gw-shell-blue)}
.gw-header-inner{display:flex;align-items:center;gap:36px;padding-block:18px}
.gw-header-logo{display:block;flex:0 0 190px;line-height:0}
.gw-header-logo img{display:block;width:180px;max-width:100%;height:auto}
.gw-header-panel{display:flex;align-items:center;justify-content:space-between;gap:28px;flex:1;min-width:0}
.gw-site-header a{color:var(--gw-shell-blue);text-decoration:none}
.gw-shell-menu{display:flex;gap:24px;list-style:none;margin:0;padding:0}
.gw-shell-menu li{margin:0;padding:0}
.gw-site-header .gw-shell-menu a{display:flex;align-items:center;min-height:44px;font-size:1rem;font-weight:600;white-space:nowrap;border-bottom:2px solid transparent}
.gw-site-header .gw-shell-menu a:hover,.gw-site-header .gw-shell-menu .current-menu-item>a{border-bottom-color:var(--gw-shell-yellow)}
.gw-header-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.gw-header-utility{display:flex;gap:16px;align-items:center;font-size:.8125rem;white-space:nowrap}
.gw-header-utility a:hover{text-decoration:underline;text-underline-offset:3px}
.gw-site-header .gw-shell-button,.gw-site-footer .gw-shell-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 24px;border:2px solid transparent;border-radius:28px;background:var(--gw-shell-yellow);color:var(--gw-shell-navy);font:700 1rem/1.3 var(--gw-sans);text-decoration:none;text-align:center;white-space:nowrap}
.gw-site-header .gw-shell-button:hover,.gw-site-footer .gw-shell-button:hover{background:#ffdb76;border-color:var(--gw-shell-yellow)}
.gw-menu-toggle{display:none}
.gw-site-footer{background:var(--gw-shell-navy);color:#fff}
.gw-site-footer a{color:#fff;text-decoration:none;overflow-wrap:anywhere}
.gw-site-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.gw-site-footer :is(a,button):focus-visible{outline:3px solid var(--gw-shell-yellow)!important;outline-offset:4px;box-shadow:none}
.gw-footer-cta{border-top:4px solid var(--gw-shell-yellow);border-bottom:1px solid #425274;background:var(--gw-shell-blue)}
.gw-footer-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-block:44px}
.gw-site-footer .gw-footer-cta h2{font:600 var(--gw-section)/1.2 var(--gw-sans);color:#fff;margin:0 0 12px;text-transform:none;letter-spacing:normal}
.gw-footer-cta p{margin:0;max-width:60ch;color:#E9EFF9}
.gw-footer-grid{display:grid;grid-template-columns:1.3fr .7fr 1.2fr 1fr;gap:40px;padding-block:48px}
.gw-footer-logo{display:inline-block;line-height:0;margin-bottom:20px}
.gw-footer-logo img{width:196px;height:auto}
.gw-footer-brand p{margin:0 0 20px;color:#E9EFF9;font-size:.9375rem}
.gw-site-footer h3{font:700 1.0625rem/1.4 var(--gw-sans);color:#fff;text-transform:none;letter-spacing:normal;margin:0 0 16px}
.gw-site-footer .gw-shell-menu{flex-direction:column;gap:6px}
.gw-site-footer .gw-shell-menu a{display:inline-flex;align-items:center;min-height:40px}
.gw-contact-list{list-style:none;margin:0 0 16px;padding:0}
.gw-contact-list li{margin:0 0 10px}
.gw-footer-small,.gw-direct-contacts{font-size:.875rem;color:#E9EFF9}
.gw-direct-contacts a{text-decoration:underline}
.gw-site-footer address{font-style:normal;margin:0 0 20px;color:#E9EFF9}
.gw-address-label{display:block;font-size:.8125rem;font-weight:600;color:#fff;margin-bottom:3px}
.gw-social-links{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:.875rem}
.gw-social-links a{display:inline-flex;align-items:center;min-height:40px}
.gw-footer-bottom{border-top:1px solid #425274;padding-block:22px;display:flex;justify-content:space-between;gap:20px;color:#E9EFF9;font-size:.8125rem}
.gw-footer-bottom p{margin:0}
@media(max-width:1200px){
 .gw-header-inner{flex-wrap:wrap;justify-content:space-between;gap:0;padding-block:14px}
 .gw-header-logo{width:170px;flex-basis:170px}
 .gw-header-logo img{width:160px}
 .gw-header-panel{flex:0 0 100%;flex-direction:column;align-items:stretch;gap:20px;padding-top:20px}
 .gw-header-panel .gw-shell-menu{flex-direction:column;gap:0}
 .gw-site-header .gw-shell-menu a{padding:10px 4px;border-bottom:1px solid #e2e7ed;min-height:48px}
 .gw-header-actions{align-items:stretch;gap:16px;padding-bottom:6px}
 .gw-header-utility{justify-content:space-between;flex-wrap:wrap;font-size:.9375rem}
 .gw-header-utility a{padding-block:8px}
 .gw-site-header[data-menu-ready] .gw-menu-toggle{display:flex;align-items:center;gap:10px;min-height:46px;padding:10px 14px;background:#fff;color:var(--gw-shell-blue);border:1px solid #b5bfd0;border-radius:6px;font:600 1rem/1.3 var(--gw-sans);cursor:pointer}
 .gw-site-header[data-menu-ready] .gw-header-panel{display:none}
 .gw-site-header[data-menu-ready][data-menu-open] .gw-header-panel{display:flex}
 .gw-footer-grid{grid-template-columns:1fr 1fr;gap:36px}
}
@media(max-width:600px){
 .gw-shell-inner{width:calc(100% - 40px)}
 .gw-header-logo,.gw-header-logo img{width:150px;flex-basis:150px}
 .gw-footer-cta-inner{flex-direction:column;align-items:flex-start;gap:24px;padding-block:32px}
 .gw-footer-cta h2{max-width:18ch}
 .gw-footer-grid{grid-template-columns:1fr;gap:30px;padding-block:36px}
 .gw-footer-brand p{max-width:42ch}
 .gw-footer-bottom{flex-direction:column;gap:10px}
}
/* Keep legacy theme link sizing out of utility and footer text. */
body .gw-header-utility a,body .gw-site-footer a{font-size:inherit;line-height:inherit}
body .gw-site-footer .gw-shell-button{font-size:1rem;line-height:1.3}
/* Approved compact dropdown header — October 20, 2026. */
.gw-expanded-header{position:relative;z-index:50}
.gw-utility-band{background:#f7f8fa;border-bottom:1px solid #e5eaf1}
.gw-utility-inner{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:9px;font-size:11px;line-height:1.6}
.gw-utility-inner>span{color:#606161}
.gw-utility-inner nav{display:flex;align-items:center;gap:23px}
body .gw-utility-inner a{font-size:inherit;line-height:inherit}
.gw-expanded-header .gw-header-inner{padding-block:23px;gap:40px}
.gw-expanded-header .gw-header-logo{flex-basis:185px;width:185px}
.gw-expanded-header .gw-header-logo img{width:185px}
.gw-expanded-header .gw-header-panel{justify-content:flex-end;gap:25px}
.gw-expanded-header .gw-header-actions{padding:0}
.gw-expanded-menu,.gw-dropdown-links{list-style:none;margin:0;padding:0}
.gw-expanded-menu{display:flex;align-items:center;gap:25px}
.gw-expanded-menu li{margin:0;padding:0}
body .gw-expanded-menu a,.gw-nav-dropdown summary{font:700 13px/1.6 var(--gw-sans);color:#1c3765;text-decoration:none}
.gw-expanded-menu>li>a{display:block;padding-block:12px;white-space:nowrap}
.gw-nav-dropdown{position:relative}
.gw-nav-dropdown summary{display:flex;align-items:center;gap:7px;list-style:none;padding:12px 0;cursor:pointer;white-space:nowrap}
.gw-nav-dropdown summary::-webkit-details-marker{display:none}
.gw-nav-dropdown[open]>summary{color:#1c75bc}
.gw-dropdown-links{position:absolute;top:100%;left:0;width:265px;background:#fff;box-shadow:0 14px 30px #14234824;border-top:3px solid #fecb43;padding:12px;z-index:100}
.gw-expanded-menu>li:last-child .gw-dropdown-links{right:0;left:auto}
body .gw-dropdown-links a{display:block;padding:12px;border-bottom:1px solid #edf0f5;white-space:normal}
.gw-dropdown-links li:last-child a{border:0}
.gw-dropdown-links a:hover,.gw-dropdown-links a[aria-current=page]{background:#e9eff9}
.gw-expanded-header :is(a,summary,button):focus-visible{outline:3px solid #1c75bc;outline-offset:4px}
body .gw-expanded-header .gw-shell-button{font-size:13px;padding:14px 22px}
@media(min-width:851px){.gw-expanded-header .gw-header-inner{flex-wrap:nowrap}.gw-expanded-header .gw-header-panel,.gw-expanded-header[data-menu-ready] .gw-header-panel{display:flex;flex:1;flex-direction:row;align-items:center;padding-top:0}.gw-expanded-header[data-menu-ready] .gw-menu-toggle{display:none}}
@media(min-width:851px) and (max-width:1100px){.gw-expanded-header .gw-header-inner{gap:20px}.gw-expanded-header .gw-header-logo{flex-basis:155px;width:155px}.gw-expanded-header .gw-header-logo img{width:155px}.gw-expanded-menu,.gw-expanded-header .gw-header-panel{gap:16px}body .gw-expanded-menu a,.gw-nav-dropdown summary{font-size:12px}body .gw-expanded-header .gw-shell-button{font-size:12px;padding:12px 17px}}
@media(max-width:850px){.gw-expanded-header .gw-header-inner{padding-block:20px;gap:0}.gw-expanded-header .gw-header-logo,.gw-expanded-header .gw-header-logo img{width:165px;flex-basis:165px}.gw-utility-inner>span{display:none}.gw-utility-inner nav{width:100%;justify-content:space-between;gap:12px;flex-wrap:wrap}.gw-utility-inner{font-size:11px}.gw-expanded-menu{flex-direction:column;align-items:stretch;gap:0}.gw-expanded-menu>li>a,.gw-nav-dropdown summary{padding:14px 0;font-size:14px}.gw-expanded-header .gw-header-panel{gap:18px}.gw-dropdown-links{position:static;width:100%;box-shadow:none;background:#f3f6fb;padding:10px}.gw-expanded-header .gw-header-actions{align-items:stretch}.gw-expanded-header .gw-shell-button{width:100%}}

/* Approved balanced footer — October 23, 2026. Scoped to leave the header untouched. */
.gw-balanced-footer .gw-footer-main{border-top:3px solid #FECB43}
.gw-balanced-footer .gw-footer-cta{background:#E9EFF9;border-top:1px solid #d7e0ed;border-bottom:0;color:#1C3765}
.gw-balanced-footer .gw-footer-cta-inner{padding:45px 32px}
.gw-balanced-footer .gw-footer-cta h2{font:600 30px/1.25 var(--gw-sans);color:#1C3765;margin:0 0 15px;max-width:none}
.gw-balanced-footer .gw-footer-cta p{color:#606161;font-size:15px;line-height:1.65}
.gw-balanced-footer .gw-footer-cta .gw-footer-eyebrow{font:700 11px/1.65 var(--gw-sans);letter-spacing:.13em;text-transform:uppercase;color:#1C75BC;margin:0 0 16px}
.gw-balanced-footer .gw-footer-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px;white-space:nowrap}
body .gw-balanced-footer .gw-footer-actions>a:last-child{color:#1C3765;font-size:13px;font-weight:600}
body .gw-balanced-footer .gw-shell-button{font-size:14px;padding:15px 25px}
.gw-balanced-footer .gw-footer-grid{grid-template-columns:1.3fr 1fr 1fr 1.25fr;gap:45px;padding-block:48px}
.gw-balanced-footer .gw-footer-logo{display:block;margin-bottom:22px;width:185px}
.gw-balanced-footer .gw-footer-logo img{display:block;width:185px;max-width:100%;height:auto}
.gw-balanced-footer .gw-footer-tagline{font-size:17px;line-height:1.5;color:#fff;margin:0 0 16px}
.gw-balanced-footer .gw-footer-description{font-size:13px;line-height:1.65;color:#c4d1e7;max-width:240px;margin:0}
.gw-balanced-footer h3{font-size:15px;margin:0 0 18px}
body .gw-balanced-footer .gw-footer-links>a,body .gw-balanced-footer .gw-footer-contact>a{display:block;font-size:13px;min-height:34px;line-height:1.65}
body .gw-balanced-footer .gw-footer-contact .gw-footer-phone{font-size:18px;font-weight:600;margin-bottom:5px}
body .gw-balanced-footer .gw-footer-contact .gw-footer-email{font-size:12px}
.gw-balanced-footer address{font-size:12px;line-height:1.7;margin:18px 0;color:#fff}
.gw-balanced-footer .gw-address-label{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#c4d1e7;margin-bottom:4px}
.gw-balanced-footer .gw-social-links{font-size:11px;gap:14px;margin-top:22px}
.gw-balanced-footer .gw-footer-bottom{font-size:11px;line-height:1.65;align-items:center;justify-content:flex-start;gap:26px;padding-block:20px;color:#c4d1e7}
.gw-balanced-footer .gw-footer-top{margin-left:auto}
@media(max-width:1000px){.gw-balanced-footer .gw-footer-grid{grid-template-columns:1fr 1fr}.gw-balanced-footer .gw-footer-cta-inner{flex-direction:column;align-items:flex-start;gap:25px}.gw-balanced-footer .gw-footer-actions{flex-direction:row;align-items:center;gap:25px}}
@media(max-width:600px){.gw-balanced-footer .gw-footer-cta-inner{padding:32px 0}.gw-balanced-footer .gw-footer-cta h2{font-size:26px}.gw-balanced-footer .gw-footer-actions{flex-direction:column;align-items:flex-start;white-space:normal;gap:12px}.gw-balanced-footer .gw-footer-grid{gap:32px 22px;padding-block:32px}.gw-balanced-footer .gw-footer-brand,.gw-balanced-footer .gw-footer-contact{grid-column:1/-1}.gw-balanced-footer .gw-footer-contact address{display:inline-block;margin-right:25px}.gw-balanced-footer .gw-footer-bottom{flex-direction:row;flex-wrap:wrap;gap:10px 20px}.gw-balanced-footer .gw-footer-top{margin-left:0}body .gw-balanced-footer .gw-footer-links>a{padding-bottom:9px;line-height:1.5}}
body .gw-balanced-footer .gw-footer-main a{color:#fff}
