/* Compact header and footer; final global layer after earlier brand styles. */
.site-header{height:auto;min-height:96px;background:rgba(255,255,255,.97);border-bottom:1px solid #e0eaf0;box-shadow:0 4px 20px rgba(18,59,86,.045)}
.site-header .nav{min-height:96px;padding:6px 0;position:relative;justify-content:center}
.site-header .nav>.brand{position:absolute;left:0;top:50%;transform:translateY(-50%)}
.site-header .brand{max-width:280px;flex:0 0 auto}
.site-header .brand img{width:var(--header-logo-width,180px);height:auto;max-height:88px;max-width:100%;object-fit:contain;object-position:left center}
.site-header .nav nav{display:flex;position:static;align-items:center;gap:4px;width:auto;padding:5px;background:#f0f6fa;border:1px solid #e2ecf2;border-radius:999px;box-shadow:none}
.site-header .nav nav a{padding:11px 18px;border-radius:999px;font-size:13px;font-weight:700;line-height:1.35;white-space:nowrap;color:#355469;transition:background .2s ease,color .2s ease,box-shadow .2s ease}
.site-header .nav nav a:after{display:none}
.site-header .nav nav a:hover{background:#fff;color:#096dac}
.site-header .nav nav a.is-active:not(.nav-cta){background:#fff;color:#096dac;box-shadow:0 2px 8px rgba(8,60,94,.09)}
.site-header .nav nav a.nav-cta{background:#096dac;color:#fff;box-shadow:none;margin-left:4px}
.site-header .nav nav a.nav-cta:hover,.site-header .nav nav a.nav-cta.is-active{background:#064978}
.site-header a:focus-visible,.site-header button:focus-visible{outline:2px solid #096dac;outline-offset:3px}
.site-header .menu-button{display:none;width:44px;height:44px;border:1px solid #d6e5ef;border-radius:12px;background:#f0f6fa;color:#096dac;cursor:pointer}
footer{padding:36px 0 18px;border-top:1px solid #cbdfe9;background:linear-gradient(120deg,#f7fafc,#edf5f9)}
footer .footer-grid{grid-template-columns:1.25fr .6fr 1fr;gap:40px;align-items:start}
footer .brand.footer-brand{width:var(--footer-logo-width,160px);max-width:180px;margin:0 0 8px;background:transparent}
footer .brand.footer-brand img{width:100%;height:auto;max-height:104px;object-fit:contain;object-position:left center}
footer .footer-grid p{font-size:13px;line-height:1.65;margin:8px 0;max-width:400px}
footer .footer-grid h4{font-size:11px;margin:8px 0 15px;padding-bottom:10px;letter-spacing:.12em}
footer .footer-grid>div>a:not(.brand){font-size:13px;margin:8px 0}
footer .contact-details .contact-detail{gap:10px;margin:10px 0;font-size:13px;line-height:1.6}
footer .contact-detail-icon{width:30px;height:30px;flex-basis:30px;border-radius:9px}
footer .contact-detail-icon svg{width:17px;height:17px}
footer .contact-detail small{font-size:10px;margin-bottom:1px}
footer .copyright{margin-top:24px;padding-top:16px;font-size:11px}
@media(max-width:1000px){
 .site-header .nav{justify-content:space-between;gap:24px}
 .site-header .nav>.brand{position:static;transform:none}
 .site-header .menu-button{display:block}
 .site-header .nav nav{display:none;position:absolute;top:calc(100% + 8px);left:0;right:0;flex-direction:column;align-items:stretch;padding:10px;border-radius:18px;background:#fff;box-shadow:0 18px 40px rgba(18,59,86,.14);max-height:calc(100dvh - 100px);overflow-y:auto}
 .site-header .nav.open nav{display:flex}
 .site-header .nav nav a{padding:12px 16px;border-radius:10px}
 .site-header .nav nav a.is-active:not(.nav-cta){background:#eaf4fb;box-shadow:none}
 .site-header .nav nav a.nav-cta{margin:4px 0 0;text-align:center}
}
@media(max-width:900px){footer .footer-grid{grid-template-columns:1fr 1fr;gap:24px}footer .footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:600px){
 .site-header,.site-header .nav{min-height:72px}
 .site-header .brand img{height:58px;max-height:58px}
 footer{padding:28px 0 16px}
 footer .footer-grid{grid-template-columns:1fr;gap:18px}
 footer .brand.footer-brand{max-width:140px}
 footer .brand.footer-brand img{max-height:90px}
 footer .copyright{margin-top:20px;line-height:1.6}
}
@media(prefers-reduced-motion:reduce){.site-header .nav nav a{transition:none}}


/* Homepage transparent header over hero */
.home-page .site-header.site-header--overlay{position:absolute;top:0;left:0;right:0;z-index:40;min-height:100px;background:transparent;border-bottom:0;box-shadow:none}
.home-page .site-header.site-header--overlay .nav{min-height:100px;padding:10px 0;position:relative;justify-content:center}
.home-page .site-header.site-header--overlay .nav>.brand{position:absolute;left:0;top:50%;transform:translateY(-50%)}
.home-page .site-header.site-header--overlay .brand img{filter:drop-shadow(0 6px 18px rgba(3,14,22,.18))}
.home-page .site-header.site-header--overlay .nav nav{background:transparent;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.home-page .site-header.site-header--overlay .nav nav a{color:#fff}
.home-page .site-header.site-header--overlay .nav nav a:hover{background:transparent;color:#fff}
.home-page .site-header.site-header--overlay .nav nav a.is-active:not(.nav-cta){background:transparent;color:#fff;box-shadow:none}
.home-page .site-header.site-header--overlay .nav nav a.nav-cta{background:#096dac;color:#fff;box-shadow:0 10px 24px rgba(9,109,172,.2)}
.home-page .site-header.site-header--overlay .nav nav a.nav-cta:hover,.home-page .site-header.site-header--overlay .nav nav a.nav-cta.is-active{background:#064978}
.home-page .site-header.site-header--overlay .menu-button{background:rgba(255,255,255,.84);border:1px solid rgba(223,236,244,.72);box-shadow:0 12px 28px rgba(2,18,31,.1)}
@media(max-width:900px){
 .home-page .site-header.site-header--overlay .nav{justify-content:space-between;gap:24px}
 .home-page .site-header.site-header--overlay .nav>.brand{position:static;transform:none}
 .home-page .site-header.site-header--overlay .nav nav{top:calc(100% + 8px);background:rgba(255,255,255,.96)}
}
@media(max-width:600px){
 .home-page .site-header.site-header--overlay,.home-page .site-header.site-header--overlay .nav{min-height:72px}
}

/* Adjustable large header logo */
@media(max-width:1180px) and (min-width:1001px){
 .site-header .brand{max-width:220px}
 .site-header .brand img{width:min(var(--header-logo-width,180px),220px);max-height:82px}
}
@media(max-width:1000px){
 .site-header,.site-header .nav{min-height:86px}
 .site-header .brand{max-width:190px}
 .site-header .brand img{width:min(var(--header-logo-width,180px),190px);max-height:76px}
 .home-page .site-header.site-header--overlay,.home-page .site-header.site-header--overlay .nav{min-height:86px}
}
@media(max-width:600px){
 .site-header,.site-header .nav{min-height:76px}
 .site-header .brand{max-width:155px}
 .site-header .brand img{width:min(var(--header-logo-width,180px),155px);max-height:64px}
 .home-page .site-header.site-header--overlay,.home-page .site-header.site-header--overlay .nav{min-height:76px}
}
