/* One centered, bounded header for every page and viewport. */
.v5 .main-header{display:block;position:sticky;top:0;z-index:70;width:100%;height:auto;padding:0;background:rgba(255,255,255,.97);border-bottom:1px solid #12194d12;box-shadow:0 3px 18px #12194d05}
.header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:2rem;min-height:5.5rem;max-width:1600px;padding:0 5%;margin:0 auto}
.main-header .official-logo{width:12.25rem;justify-self:start}
.main-header #main-nav{display:flex;position:static;align-items:stretch;justify-content:center;justify-self:center;gap:1.75rem;height:5.5rem;max-height:none;padding:0;margin:0;overflow:visible;box-shadow:none;background:transparent}
.nav-menu{height:100%;min-width:0}
.nav-menu>summary{display:flex;align-items:center;height:100%;padding:0 .15rem;list-style:none;cursor:pointer;color:var(--navy);font-size:1rem;font-weight:500;line-height:1.4;border-bottom:3px solid transparent;border-top:3px solid transparent}
.nav-menu>summary::-webkit-details-marker{display:none}
.nav-menu>summary::marker{content:''}
.nav-menu[open]>summary,.nav-menu>summary:hover{color:#007c48;border-bottom-color:var(--green)}
.nav-menu>summary:focus-visible{outline:2px solid #00834b;outline-offset:-7px;border-radius:4px}
.main-header .header-actions{justify-self:end;display:flex;align-items:center;gap:1rem;margin:0;min-width:0}
.main-header .header-actions .header-demo{display:inline-flex;padding:.875rem 1.25rem;max-width:none;font-size:.875rem;line-height:1.5;margin:0;white-space:nowrap}
.main-header .login-link{width:2.625rem;height:2.625rem}
.main-header .mobile-menu{display:none}
.main-header #main-nav>.mobile-demo-link{display:none}
.mega-panel{position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid #dce5df;box-shadow:0 18px 30px #12194d13;max-height:calc(100dvh - 5.5rem);overflow:auto;overscroll-behavior:contain}
.mega-panel-inner{max-width:1600px;margin:0 auto;padding:2.75rem 5% 3rem;display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:4.5rem;align-items:start}
.mega-panel .eyebrow{font-size:.75rem;letter-spacing:.08em;color:#007a47;display:block;margin-bottom:1rem;line-height:1.5}
.mega-intro{max-width:340px}
.mega-intro h2{font-size:1.9rem;line-height:1.18;letter-spacing:-.045rem;margin:0 0 1rem}
.mega-panel p{font-size:1rem;line-height:1.6;color:var(--muted);margin:0}
.mega-panel .text-link{font-size:.9375rem;line-height:1.4;margin-top:1.25rem;color:var(--navy);font-weight:600}
.mega-links{display:flex;flex-direction:column;gap:.15rem}
.mega-links a{display:block;padding:.6rem 0;font-size:1rem;color:var(--navy);line-height:1.4}
.mega-links a:hover{color:#007a47;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.mega-highlight{display:block;background:#eef8f3;border:1px solid #dcece3;border-radius:14px;padding:1.65rem}
.mega-highlight h3{font-size:1.5rem;line-height:1.22;letter-spacing:-.025rem;margin:0 0 1rem}
.mega-highlight:hover{background:#e4f5ec}
.mega-highlight .eyebrow{margin-bottom:.9rem}
.v5 [id]{scroll-margin-top:1rem}
@media(max-width:1100px){
 .header-inner{grid-template-columns:minmax(0,1fr) auto;min-height:5rem;gap:1rem}
 .main-header .official-logo{width:11.25rem}
 .main-header .header-actions{gap:.75rem}
 .main-header .mobile-menu{display:block;order:initial;background:#fff;border:1px solid #cad5cd;border-radius:7px;font-size:.875rem;line-height:1.4;min-height:2.625rem;padding:.625rem .75rem;color:var(--navy)}
 .main-header #main-nav{display:none;position:absolute;top:100%;left:0;right:0;height:auto;max-height:calc(100dvh - 5rem);overflow-y:auto;background:#fff;padding:.5rem 5% 1.5rem;box-shadow:0 15px 30px #12194d14}
 .main-header #main-nav.open{display:block}
 .nav-menu{height:auto;border-bottom:1px solid #dce5df}
 .nav-menu>summary{height:auto;min-height:3.5rem;padding:.9rem 0;border:0;font-size:1rem}
 .nav-menu[open]>summary{color:#007a47}
 .mega-panel{position:static;max-height:none;overflow:visible;box-shadow:none;border:0;background:transparent}
 .mega-panel-inner{grid-template-columns:1fr 1fr;gap:1.5rem;padding:.5rem 0 1.75rem}
 .mega-intro{grid-column:1/-1;max-width:none;background:#f2f8f5;padding:1.5rem;border-radius:10px}
 .mega-intro h2{font-size:1.55rem;max-width:500px}
 .mega-panel p{font-size:1rem}
 .mega-panel .eyebrow{margin-bottom:.65rem}
 .mega-links a{padding:.65rem 0}
 .mega-highlight{padding:1.4rem}
 .mega-highlight h3{font-size:1.35rem}
}
@media(max-width:600px){
 .header-inner{min-height:4.75rem;gap:.75rem}
 .main-header .official-logo{width:9.5rem}
 .main-header .header-actions{gap:.625rem}
 .main-header .header-actions .header-demo{display:none}
 .main-header #main-nav{max-height:calc(100dvh - 4.75rem)}
 .main-header #main-nav>.mobile-demo-link{display:block;color:#007a49;font-weight:600;font-size:1rem;padding:1rem 0;border:0}
 .mega-panel-inner{grid-template-columns:1fr;gap:1.5rem}
 .mega-intro{padding:1.25rem}
 .mega-highlight{padding:1.25rem}
}
