.brand-picture{display:block;width:166px;height:110px;overflow:hidden;flex:none}
.brand .brand-picture img{display:block;width:166px;height:166px;max-width:none;border-radius:0;object-fit:contain;margin-top:-28px;mix-blend-mode:multiply}
.header-inner{min-height:112px}.editorial-image{display:block;width:100%;height:auto;border-radius:20px;aspect-ratio:3/2;object-fit:cover}
.editorial-feature{gap:60px}.editorial-feature .lead{font-size:17px}.editorial-feature figure{margin:0}.editorial-feature figcaption{font-size:11px;color:var(--muted);margin-top:12px}
.kv-form{padding:32px;border:1px solid var(--line);border-radius:18px;background:white}
.kv-form .fluentform .ff-el-form-control{border-radius:7px;border:1px solid #a6b29e;padding:12px 14px;font:14px/1.5 Poppins,Arial,sans-serif;background:#fff;color:var(--navy)}
.kv-form .fluentform .ff-el-input--label label{font-size:14px;font-weight:500;color:var(--navy)}
.kv-form .fluentform .ff-btn-submit{background:var(--navy);color:white;border:0;border-radius:7px;padding:14px 24px;font:700 15px Manrope,Arial,sans-serif}
.kv-form .fluentform .ff-btn-submit:hover{background:#233c52}.kv-form .fluentform .text-danger{color:#a12626}.kv-form .ff-message-success{color:var(--navy);background:var(--pale);border-color:#789e3c}
.kv-form .ff-el-form-check-label{font-size:13px;line-height:1.6}.kv-form textarea{min-height:130px}.form-intro{max-width:700px;margin-bottom:30px}
@media(max-width:760px){.brand-picture{width:166px;height:59px;overflow:visible}.brand .brand-picture img{width:166px;height:59px;margin:0;object-fit:contain;mix-blend-mode:normal}.header-inner{min-height:83px}.editorial-feature{gap:28px}.kv-form{padding:24px}.site-footer .brand-picture{width:185px;height:66px}.site-footer .brand .brand-picture img{width:185px;height:66px}}

/* Unified transparent wordmark */
.site-header .brand-picture{width:196px;height:auto;aspect-ratio:2560/911;overflow:visible}
.site-header .brand .brand-picture img{width:100%;height:auto;max-width:100%;margin:0;border-radius:0;object-fit:contain;mix-blend-mode:normal}
.site-header .header-inner{min-height:88px}
@media(max-width:1024px){.site-header .brand-picture{width:166px;height:auto}.site-header .header-inner{min-height:80px}}
/* Responsive navigation and proportional shared wordmark. */
.site-footer .brand-picture{width:185px;height:auto;aspect-ratio:2560/911;overflow:visible}
.site-footer .brand .brand-picture img{display:block;width:100%;height:auto;max-width:100%;margin:0;object-fit:contain;mix-blend-mode:normal}
@media(max-width:1024px){
 .site-header .header-inner{column-gap:12px;row-gap:0}
 .site-header .menu-toggle{min-width:74px;min-height:44px;flex-shrink:0}
 .site-header .nav{flex-basis:100%;padding:8px 0 16px;gap:4px;align-items:stretch}
 .site-header .nav a{display:block;flex-basis:100%;padding:11px 14px;border-radius:6px;min-height:44px}
 .site-header .nav a:hover,.site-header .nav a[aria-current=page]{background:var(--pale)}
 .site-header .nav.open{max-height:calc(100dvh - 130px);overflow-y:auto}
}

/* Keep the logo/button row stationary while the navigation expands. */
@media(max-width:1024px){
 .site-header .header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:80px auto;align-items:center}
 .site-header .brand{grid-column:1;grid-row:1;justify-self:start}
 .site-header .menu-toggle{grid-column:2;grid-row:1}
 .site-header .nav{grid-column:1 / -1;grid-row:2;width:100%;margin:0}
}

/* A consistent, restrained motion system. */
.button,.resource-card,.card{transition:transform .22s ease,background-color .22s ease,border-color .22s ease,box-shadow .22s ease}
.resource-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px rgba(6,21,41,.07)}
.nav a{transition:background-color .18s ease,color .18s ease}
.kv-reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.65,.3,1)}
.kv-reveal.is-visible{opacity:1;transform:none}
@media(max-width:1024px){
 .js .site-header .nav{display:flex;max-height:0;opacity:0;visibility:hidden;overflow:hidden;padding:0;transition:max-height .3s cubic-bezier(.2,.65,.3,1),padding .3s ease,opacity .2s ease,visibility 0s .3s}
 .js .site-header .nav.open{max-height:min(340px,calc(100dvh - 130px));padding:8px 0 16px;opacity:1;visibility:visible;overflow-y:auto;transition-delay:0s}
 .site-header .menu-toggle{transition:background-color .2s ease,border-color .2s ease}
 .site-header .menu-toggle[aria-expanded=true]{background:var(--pale);border-color:#bed29d}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important}
 .kv-reveal{opacity:1;transform:none}
}

/* Full-screen mobile navigation: overlays content without reflow. */
.mobile-menu-contact{display:none}
@media(max-width:1024px){
 body.menu-is-open{overflow:hidden}
 .site-header .header-inner{grid-template-rows:80px}
 .site-header .brand,.site-header .menu-toggle{z-index:42;position:relative}
 .js .site-header .nav,.site-header .nav{position:fixed;inset:0;z-index:40;width:100%;height:100dvh;max-height:none;box-sizing:border-box;display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:5px;padding:110px max(24px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom));margin:0;background:radial-gradient(ellipse at 100% 100%,#dfedc9 0%,#f8f9f5 62%);overflow-y:auto;overscroll-behavior:contain;opacity:0;visibility:hidden;transform:translateY(-12px);clip-path:inset(0 0 100% 0);transition:clip-path .42s cubic-bezier(.22,.7,.2,1),transform .42s ease,opacity .25s ease,visibility 0s .42s}
 .js .site-header .nav.open{max-height:none;padding:110px max(24px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom));opacity:1;visibility:visible;transform:none;clip-path:inset(0);transition-delay:0s}
 .site-header .nav > a{flex:none;font:800 clamp(25px,6vw,38px)/1.2 Manrope,Arial,sans-serif;letter-spacing:-.035em;padding:10px 8px;min-height:48px;border-radius:8px;opacity:0;transform:translateY(14px);transition:opacity .25s ease,transform .35s ease,background-color .2s ease}
 .site-header .nav.open > a{opacity:1;transform:none;transition-delay:.09s}
 .site-header .nav.open > a:nth-child(2){transition-delay:.13s}
 .site-header .nav.open > a:nth-child(3){transition-delay:.17s}
 .site-header .nav.open > a:nth-child(4){transition-delay:.21s}
 .site-header .nav.open > a:nth-child(5){transition-delay:.25s}
 .site-header .mobile-menu-contact{display:block;margin-top:22px;padding:28px 8px 0;border-top:1px solid #cbd8bd;flex:none}
 .site-header .mobile-menu-contact .eyebrow{font-size:10px;margin-bottom:10px}
 .site-header .mobile-menu-contact a{font-size:15px;letter-spacing:0;font-weight:600;min-height:44px;padding:8px 0;overflow-wrap:anywhere}
 .admin-bar .site-header .nav{padding-top:140px}
 .admin-bar .site-header .nav.open{padding-top:140px}
 .mobile-menu-secondary{display:flex;flex-wrap:wrap;gap:2px 18px;margin-bottom:24px}
 .site-header .mobile-menu-secondary a{flex:0 0 auto;padding:7px 0;font-size:13px}
 .menu-placeholder{font-size:12px;color:var(--muted)}
 .menu-social-placeholders{display:flex;align-items:center;gap:10px;margin-top:16px;color:#76806e}
 .menu-social-placeholders>span{width:34px;height:34px;border:1px solid #cbd4c2;border-radius:50%;display:flex;align-items:center;justify-content:center;font:bold 17px Arial,sans-serif}
 .menu-social-placeholders small{font-size:10px;max-width:85px;line-height:1.4}
}
@media(prefers-reduced-motion:reduce){.site-header .nav,.site-header .nav > a{transform:none!important}}

@media(max-width:1024px){
 .menu-is-open .site-header::after{content:'';position:fixed;inset:0 0 auto;height:80px;background:var(--paper);z-index:41;pointer-events:none}
 .admin-bar.menu-is-open .site-header::after{height:126px}
 html:not(.js) .site-header .nav{position:static;height:auto;opacity:1;visibility:visible;clip-path:none;transform:none;padding:8px 0 16px;grid-row:2}
 html:not(.js) .site-header .nav > a{opacity:1;transform:none}
 html:not(.js) .menu-toggle{display:none}
}

/* Tablet navigation shares the mobile overlay without changing page layouts. */
@media(max-width:1024px){.site-header .menu-toggle{display:block}.site-header .header-cta{display:none}}
