/* GNLA: a consistent institutional reading system, layered over the static export. */
:root{--navy-950:#102c40;--navy-900:#14384b;--navy-800:#244b60;--teal-700:#086965;--teal-600:#087a73;--teal-100:#e8f4f2;--gold:#a78443;--ivory:#f3f6f8;--paper:#fff;--ink:#243d4d;--muted:#526775;--line:#d6e1e6;--surface-mist:#f3f6f8;--surface-sage:#f3f6f8;--surface-warm:#f3f6f8;--surface-paper:#fff;--soft-line:#d6e1e6}
html{scroll-padding-top:24px;background:#fff}
body{font-size:1rem;line-height:1.75;color:var(--ink);background:#fff;letter-spacing:-.015em}
*,*:before,*:after{box-sizing:border-box}
p,h1,h2,h3,h4,li,blockquote{word-break:keep-all;overflow-wrap:break-word}
h1,h2,h3,h4{letter-spacing:-.035em;text-wrap:balance}
a,button,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #a87920;outline-offset:4px}
.skip-content{position:fixed;top:10px;left:20px;z-index:1000;padding:12px 20px;background:#fff;color:#102c40;border:2px solid #086965;transform:translateY(-180%);border-radius:4px}
.skip-content:focus{transform:translateY(0)}
.container{width:min(1360px,calc(100% - 64px));max-width:1440px}
.section-space{padding-block:88px}
.section-kicker{font-size:.875rem;line-height:1.6;letter-spacing:.045em;font-weight:700;color:var(--teal-700);margin-bottom:12px}
.section-head h2,.leadership-copy h2,.bridge-copy h2,.member-cta h2{font-size:clamp(1.875rem,2.7vw,2.625rem);line-height:1.4;font-weight:700;letter-spacing:-.04em}
.section-head{margin-bottom:36px}
.section-head>p:last-child,.section-head>div>p:last-child:not(.section-kicker),.official-info-menu-subtitle{font-size:1.0625rem;line-height:1.85;color:var(--muted);max-width:54rem}
.split-head{gap:32px;align-items:flex-end}
.split-head>p{max-width:34rem}
.text-link{font-size:1rem;line-height:1.5;min-height:44px;align-items:center;color:var(--teal-700)}
.button,.member-button{min-height:48px;height:auto;padding:13px 22px;border-radius:6px;font-size:1rem;line-height:1.5;font-weight:650}

/* Recognizable identity and legible, consistent navigation. */
.utility-bar{background:#f3f6f8;color:#4d6573;border-bottom:1px solid #e5ecef}
.utility-inner{min-height:36px;height:auto}
.utility-inner p,.utility-links a{font-size:.8125rem;color:#415c6a}
.utility-links a{min-height:36px;display:inline-flex;align-items:center}
.brand-row{min-height:98px;height:auto;padding-block:18px;gap:24px}
.brand{min-width:0;gap:15px}
.brand-name{min-width:0}
.brand-name strong{font-size:clamp(1.125rem,1.8vw,1.5rem);white-space:normal;line-height:1.45;word-break:keep-all;overflow-wrap:break-word;color:var(--navy-950);font-weight:750}
.brand-name small{font-size:.75rem;line-height:1.5;letter-spacing:.06em;color:#526775}
.brand-logo{width:64px;height:64px}
.header-actions{flex-shrink:0}
.member-button{border-color:#cbdce2;color:var(--navy-950)}
.main-nav{background:#fff;border-color:var(--line)}
.nav-top{min-height:58px;height:auto;padding:15px 8px;font-size:1.0625rem;line-height:1.6}
.nav-top[aria-current],.nav-top.section-current{color:var(--teal-700);background:#f2f8f7}
.nav-top.section-current:after{transform:scaleX(1);height:3px;left:24%;right:24%}
.mega-menu{border-color:var(--line);border-radius:8px;box-shadow:0 16px 32px rgba(16,44,64,.12)}
.mega-intro strong{font-size:1.125rem}
.mega-intro p{font-size:.875rem;line-height:1.8;color:#526775}
.mega-links a{font-size:1rem;min-height:44px;line-height:1.6}
.mega-links a[aria-current="page"],.mobile-panel nav a[aria-current="page"]{background:#e8f4f2;color:#086965;font-weight:700}
.mobile-panel nav details a{font-size:.9375rem;min-height:44px;padding:8px 10px;line-height:1.5}
.mobile-panel nav summary{font-size:1rem}
.mobile-quickbar a{font-size:.8125rem}

/* Preserve the approved whole photograph, while giving the slogan first priority. */
.hero-panorama .hero-slogan{margin-bottom:22px;padding-bottom:22px;border-bottom-color:rgba(232,244,242,.32)}
.hero-panorama .hero-slogan strong{font-size:clamp(1.75rem,2.5vw,2.375rem);line-height:1.4;letter-spacing:-.045em;color:#f0faf7;text-wrap:balance}
.hero-panorama .hero-slogan p{font-size:1rem;color:#e0ebee;line-height:1.8;margin-top:14px}
.hero-panorama h1{font-size:clamp(1.875rem,2.45vw,2.5rem);line-height:1.4;letter-spacing:-.04em;margin-bottom:17px}
.hero-panorama .hero-copy>p{font-size:1rem;line-height:1.85;color:#e0ebee}
.hero-panorama .hero-actions{margin-top:24px}
.sub-hero-panorama .sub-hero-copy>p{font-size:.875rem;color:#bee5db;letter-spacing:.09em}
.sub-hero-panorama .sub-hero-copy>span{font-size:1.125rem;line-height:1.85}
.quick-section{margin:0;padding:0;background:#fff;border-bottom:1px solid var(--line);z-index:2}
.quick-grid{border:0;border-radius:0;box-shadow:none;background:#fff;grid-template-columns:repeat(6,minmax(0,1fr));overflow:visible}
.quick-item{min-height:102px;padding:18px 16px;gap:10px;border-color:var(--line)}
.quick-icon{width:36px;height:36px;flex-basis:36px;border-radius:6px;background:#e8f4f2}
.quick-item strong{font-size:1rem;line-height:1.5;white-space:normal}
.quick-item small{display:block;color:#526775;font-size:.8125rem;line-height:1.55;white-space:normal}
.quick-item>svg{display:none}
.home-field-summary{background:#fff;border-color:var(--line)}
.home-field-summary>.container{padding-block:38px;gap:48px}
.home-field-summary .official-core-intro strong{font-size:1.375rem;color:var(--navy-950)}
.home-field-summary .official-core-intro p{font-size:1.0625rem;color:var(--muted);line-height:1.9}
.home-field-summary .hero-meta{gap:20px}
.home-field-summary .hero-meta strong{font-size:1.25rem;color:var(--navy-950)}
.home-field-summary .hero-meta span{font-size:.875rem;color:var(--muted)}
.official-home-promise{background:#14384b;padding-block:42px;border-bottom:3px solid #087a73}
.official-home-promise-inner{grid-template-columns:1fr 1.1fr;gap:56px}
.official-home-promise-inner>div:first-child>p{font-size:.875rem;color:#b9e3d8;letter-spacing:.045em}
.official-home-promise h2{font-size:clamp(1.6rem,2.2vw,2rem);line-height:1.5;text-wrap:balance}
.official-home-promise-inner>div:last-child>p{font-size:1.0625rem;line-height:1.85;color:#fff}
.official-home-promise strong{font-size:1rem;font-weight:500;line-height:1.85;color:#d4e5ea}

/* Each section has one dominant heading, supporting copy and a clear destination. */
.leadership-section,.information-section,.activity-section{background:#fff;box-shadow:none}
.leadership-section .leadership-grid{max-width:1160px;gap:52px}
.leadership-copy h2{margin:12px 0 22px}
.chairman-name strong{font-size:1.1875rem;color:var(--navy-950)}
.chairman-name span{font-size:.9375rem;line-height:1.8;color:#526775}
.leadership-copy blockquote{font-size:1.25rem;line-height:1.8;font-weight:600;margin:24px 0 18px;color:#244b60}
.leadership-copy>p:not(.section-kicker){font-size:1.0625rem;line-height:1.9;max-width:48rem;color:var(--muted)}
.leadership-priorities span{font-size:.9375rem;line-height:1.6;min-height:58px;gap:10px;color:#244b60}
.leadership-priorities b{font-size:.8125rem}
.leadership-actions{flex-wrap:wrap;gap:20px}
.mission-section,.news-hub{background:#f3f6f8;box-shadow:none}
.mission-section:before{display:none}
.mission-grid{gap:22px}
.mission-card{border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:none;min-height:0}
.mission-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(16,44,64,.08)}
.mission-number{font-size:.8125rem;letter-spacing:.07em;color:#526775}
.mission-icon{width:42px;height:42px;border-radius:6px;margin-top:4px}
.mission-icon svg{width:24px;height:24px}
.mission-card h3{font-size:1.375rem;font-weight:700;line-height:1.5;margin:18px 0 14px}
.mission-card p{font-size:1rem;line-height:1.85;color:var(--muted)}
.mission-card .official-core-message{font-size:1.0625rem;font-weight:650;line-height:1.75;color:#244b60;min-height:0;margin-bottom:12px}
.mission-card .text-link{padding-top:24px;font-size:1rem}
.bridge-section{background:#14384b;background-image:none}
.bridge-section:before,.bridge-section:after{display:none}
.bridge-copy>p:not(.section-kicker){font-size:1.0625rem;line-height:1.9;color:#d6e5ea;max-width:36rem}
.bridge-copy .section-kicker{color:#b9e3d8}
.bridge-copy .text-link{color:#fff}
.bridge-field{border-radius:8px;overflow:hidden;background:#14384b}
.bridge-photo-label strong{font-size:1.0625rem;line-height:1.7}
.bridge-photo-label span{font-size:.8125rem}
.bridge-steps{background:#102c40}
.bridge-steps>div{padding:26px 22px;min-height:0}
.bridge-steps>div>span{font-size:.875rem;color:#b9e3d8}
.bridge-steps>div>strong{font-size:1.125rem;line-height:1.6;color:#fff}
.bridge-steps p{font-size:1rem;line-height:1.85;color:#d6e5ea}
.bridge-steps .official-core-message{font-size:1rem;line-height:1.85;color:#fff;font-weight:600}
.notice-panel,.schedule-panel{border-radius:8px;border:1px solid var(--line);background:#fff;box-shadow:none}
.panel-title h3{font-size:1.375rem;line-height:1.5}
.panel-title a{font-size:.9375rem;min-height:44px;display:inline-flex;align-items:center}
.notice-item strong,.schedule-item strong{font-size:1rem;line-height:1.65;word-break:keep-all}
.notice-list a>strong,.insight-list a>strong,.schedule-list a strong{font-size:1.0625rem;line-height:1.7;white-space:normal;overflow:visible;text-overflow:clip;word-break:keep-all}
.notice-list a>span,.insight-list a>span,.schedule-list a i{font-size:.875rem;line-height:1.7}
.notice-list a>time,.insight-list a>time,.schedule-list a small{font-size:.875rem;line-height:1.6;color:#526775}
.notice-list a,.insight-list a{min-height:72px;padding-block:16px;gap:14px}
.notice-item p,.notice-item time,.schedule-item p,.schedule-item time{font-size:.875rem;line-height:1.6;color:#526775}
.cms-home-empty{padding:34px 24px;font-size:1rem;line-height:1.8;color:#526775;background:#f7f9fa;border:1px solid var(--line);border-radius:6px}
.activity-grid>.cms-home-empty,.insight-list>.cms-home-empty{grid-column:1/-1}
.feature-insight{border:1px solid var(--line);border-radius:8px;box-shadow:none}
.feature-insight h3{font-size:1.5rem;line-height:1.5}
.feature-insight p,.activity-card p{font-size:1rem;line-height:1.85;color:var(--muted)}
.feature-insight .category{font-size:.875rem}
.activity-card{border-radius:8px;box-shadow:none}
.activity-card h3{font-size:1.125rem;line-height:1.6}
.member-cta{background:#14384b;background-image:none}
.member-cta p:not(.section-kicker){font-size:1.0625rem;line-height:1.85;color:#d6e5ea}
.partner-section{background:#f3f6f8;border-top:1px solid var(--line)}
.partner-section a{font-size:.9375rem;min-height:44px}

/* Long official manuscripts: readable measure, visible sections and in-page links. */
.breadcrumb{background:#f3f6f8;border-color:var(--line)}
.breadcrumb .container{min-height:58px;height:auto;flex-wrap:wrap;padding-block:14px;row-gap:8px;white-space:normal;overflow:visible}
.breadcrumb a,.breadcrumb span,.breadcrumb strong{font-size:.875rem;line-height:1.65;color:#526775}
.breadcrumb strong{color:#14384b}
.content-main{min-width:0}
.content-main p,.content-main li,.content-main label{font-size:1rem;line-height:1.85}
.content-main th,.content-main td{font-size:.9375rem;line-height:1.8}
.content-main input,.content-main select,.content-main textarea,.content-main button{font-size:1rem}
.content-heading{padding-bottom:28px;margin-bottom:30px;border-color:var(--line)}
.content-heading>p{font-size:.8125rem;letter-spacing:.07em;color:var(--teal-700)}
.content-heading h2{font-size:clamp(1.75rem,2.35vw,2.25rem);line-height:1.5;font-weight:700;max-width:46rem}
.content-heading>span{font-size:1.0625rem;color:var(--muted);line-height:1.85;max-width:48rem}
.side-navigation{box-shadow:none;border-color:var(--line);border-radius:8px}
.side-navigation>div{background:#14384b;padding:24px 22px}
.side-navigation>div small{font-size:.8125rem;color:#b9e3d8;letter-spacing:.04em}
.side-navigation>div strong{font-size:1.25rem;line-height:1.6}
.side-navigation>div p{font-size:.875rem;line-height:1.8;color:#d6e5ea}
.side-navigation nav a{font-size:1rem;line-height:1.6;min-height:48px;padding:12px;border-radius:5px;gap:10px}
.side-navigation nav a.active{background:#086965}
.official-content-body{font-size:1.0625rem;line-height:1.95;color:#314d5b;margin-top:32px;max-width:52rem;overflow-wrap:break-word}
.official-content-body>p{margin-bottom:24px}
.official-content-body h3{margin:46px 0 20px;padding:16px 20px;border:0;border-left:3px solid #087a73;border-radius:0;background:#f0f6f6;color:#14384b;font-size:1.375rem;line-height:1.6;scroll-margin-top:24px}
.official-content-body h3:before{display:none}
.official-content-body h4{font-size:1.1875rem;line-height:1.65;color:#086965;margin:30px 0 12px;scroll-margin-top:24px}
.official-content-body .official-core-message{font-size:1.125rem;line-height:1.8;color:#14384b;font-weight:650;background:none;border:0;padding:0;margin-bottom:14px}
.official-content-body blockquote{font-size:1rem;line-height:1.9;border-left:3px solid #879eaa;border-radius:0;background:#f3f6f8;color:#314d5b}
.official-content-body .official-signature{background:none;color:#14384b;border:0;line-height:1.9;font-size:1.0625rem}
.official-toc{padding:20px 24px;background:#f3f6f8;border:1px solid var(--line);border-radius:6px;margin:0 0 32px;max-width:52rem}
.official-toc>strong{display:block;font-size:.875rem;color:#526775;margin-bottom:10px}
.official-toc>div{display:flex;flex-wrap:wrap;gap:8px 20px}
.official-toc a{display:inline-flex;align-items:center;min-height:40px;font-size:.9375rem;line-height:1.7;color:#086965;text-underline-offset:4px;text-decoration:underline;text-decoration-color:#adc8c4}
.official-toc a:hover{text-decoration-color:currentColor}
.body-copy,.greeting-copy p{font-size:1.0625rem;line-height:1.9;color:var(--muted)}
.chairman-message-portrait{background:#f3f6f8;border:1px solid var(--line);border-radius:6px}
.chairman-prose>p{font-size:1.0625rem;line-height:2;margin-bottom:26px}
.cms-board-shell{--cms-green:#086965;--cms-green-soft:#e8f4f2;--cms-line:#d6e1e6;--cms-text:#243d4d;font-size:1rem}
.cms-board-search input{font-size:1rem}
.cms-board-title strong{font-size:1.0625rem;line-height:1.7;color:#14384b;white-space:normal;overflow:visible;text-overflow:clip}
.cms-board-title small{font-size:.875rem;line-height:1.7;color:#526775;white-space:normal}
.cms-board-number,.cms-board-date,.cms-board-count{color:#526775;font-size:.875rem}
.cms-board-tag{font-size:.8125rem;line-height:1.6;min-height:28px}
.cms-pagination{flex-wrap:wrap}.cms-pagination button{width:44px;height:44px;font-size:1rem}
.cms-post-meta{color:#526775;font-size:.875rem}
.cms-board-empty,.cms-board-loading{font-size:1rem;color:#526775}
.cms-post-attachment a{overflow-wrap:anywhere}

/* Contact information is a working part of the site, including on a phone. */
.site-footer{background:#102c40}
.footer-top{padding-block:44px;min-height:0;gap:44px;align-items:flex-start}
.footer-brand{align-items:flex-start;gap:16px;min-width:0}
.footer-brand strong{font-size:1.0625rem;line-height:1.7;word-break:keep-all}
.footer-brand p{font-size:.9375rem;line-height:1.8;color:#d0dfe5}
.footer-contact{font-size:1rem;line-height:1.8;color:#d0dfe5;max-width:36rem;gap:12px}
.footer-contact p{align-items:flex-start;gap:10px;flex-wrap:wrap}
.footer-contact svg{width:17px;height:17px;flex:0 0 17px;margin-top:5px;color:#abd7cc}
.footer-contact a{color:#fff;text-decoration:underline;text-underline-offset:4px}
.footer-bottom .container{min-height:66px;height:auto;padding-block:16px;gap:18px;color:#b7ccd6;font-size:.8125rem;line-height:1.8}
.footer-bottom div div{flex-wrap:wrap;gap:12px 22px}
.footer-bottom a{display:inline-flex;align-items:center;min-height:40px;font-size:.875rem;color:#d0dfe5}

@media(max-width:1200px){
 .quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .quick-item:nth-child(3){border-right:0}.quick-item:nth-child(-n+3){border-bottom:1px solid var(--line)}
 .mission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .news-layout{gap:28px}
}
@media(min-width:1101px){
 .hero-panorama>.hero-inner,.sub-hero-panorama>.container{width:min(1360px,calc(100% - 64px))}
}
@media(max-width:1100px){
 .home-field-summary>.container{gap:28px}.home-field-summary .hero-meta{max-width:600px}
 .hero-panorama .hero-slogan strong{font-size:2rem;text-wrap:balance}
 .hero-panorama h1{font-size:2rem}
 .hero-panorama .hero-overlay-copy{max-width:48rem}
 .leadership-section .leadership-grid{gap:32px}
 .section-space{padding-block:64px}
 .official-home-promise-inner{gap:32px}
}
@media(max-width:900px){
 .brand-row{min-height:78px;padding-block:13px;gap:12px}
 .brand-logo{width:50px;height:50px}
 .brand-name strong{font-size:1.0625rem}
 .brand-name small{display:none}
 .side-navigation nav{flex-wrap:wrap;overflow:visible;gap:4px}
 .side-navigation nav a{min-width:0;flex:0 1 auto;font-size:.9375rem}
 .footer-top{flex-direction:column;gap:30px}
 .footer-contact{max-width:none}
}
@media(max-width:780px){
 .official-home-promise-inner{grid-template-columns:1fr;gap:22px}
 .official-home-promise{padding-block:34px}
 .split-head{align-items:flex-start;gap:18px}
 .bridge-steps{grid-template-columns:1fr}
 .bridge-steps>div{padding:24px;grid-template-columns:34px minmax(0,1fr);gap:0 10px;border-right:0}
 .bridge-steps>div>span{grid-row:1/3}
 .official-content-body{max-width:100%}
 .footer-bottom .container{align-items:flex-start;flex-direction:column}
}
@media(max-width:600px){
 .container{width:calc(100% - 40px)}
 .section-space{padding-block:48px}
 .section-head{margin-bottom:26px}
 .section-head h2,.leadership-copy h2,.bridge-copy h2,.member-cta h2{font-size:1.875rem;line-height:1.45}
 .section-head>p:last-child,.section-head>div>p:last-child:not(.section-kicker){font-size:1rem}
 .brand{gap:9px}.brand-row{gap:10px}.brand-logo{width:42px;height:42px}
 .brand-name strong{font-size:1rem;white-space:normal;line-height:1.45;max-width:19em}
 .mobile-panel-head .brand-name strong{font-size:.9375rem}
 .mobile-panel-head{gap:12px;flex-wrap:wrap}
 .mobile-panel nav details>div{grid-template-columns:1fr 1fr;padding-left:0}
 .utility-links{gap:18px}.utility-links a{font-size:.8125rem}
 .hero-panorama .hero-slogan strong{font-size:1.875rem}
 .hero-panorama .hero-slogan p{font-size:1rem}
 .hero-panorama h1{font-size:1.875rem}
 .hero-panorama .hero-copy>p{font-size:1rem}
 .hero-panorama .hero-actions .button{font-size:1rem}
 .quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .quick-item{min-height:88px;padding:15px 10px;gap:9px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
 .quick-item:nth-child(3){border-right:1px solid var(--line)}.quick-item:nth-child(2n){border-right:0}.quick-item:nth-last-child(-n+2){border-bottom:0}
 .quick-item strong{font-size:.9375rem}.quick-item small{font-size:.8125rem}
 .quick-icon{width:30px;height:30px;flex-basis:30px}
 .home-field-summary>.container{padding-block:30px;gap:24px}
 .home-field-summary .hero-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
 .home-field-summary .hero-meta strong{font-size:1.125rem}
 .home-field-summary .hero-meta span{font-size:.875rem}
 .official-home-promise h2{font-size:1.625rem}
 .leadership-section .leadership-grid{gap:24px}
 .leadership-copy blockquote{font-size:1.1875rem}
 .leadership-priorities{grid-template-columns:1fr}
 .leadership-priorities span{min-height:46px;padding-inline:0;border-right:0}
 .mission-grid{grid-template-columns:1fr;gap:22px}
 .mission-card{min-height:0}.mission-card .official-core-message{font-size:1.0625rem}
 .content-heading h2{font-size:1.75rem;line-height:1.5}
 .content-heading>span,.official-content-body,.chairman-prose>p,.body-copy{font-size:1rem;line-height:1.9}
 .official-content-body h3{font-size:1.25rem;padding:14px 16px;margin-top:36px}
 .official-content-body h4{font-size:1.125rem}
 .official-toc{padding:18px}.official-toc>div{gap:4px 16px}
 .chairman-message-portrait{margin-left:18px}
 .footer-top{padding-block:34px;gap:26px}
 .footer-brand .brand-logo{width:44px;height:44px}
 .footer-brand strong{font-size:1rem}.footer-brand p{font-size:.875rem}
 .footer-contact{font-size:.9375rem}
 .footer-bottom .container{font-size:.8125rem}
 .mobile-quickbar{height:calc(66px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom)}
 .site-footer{padding-bottom:env(safe-area-inset-bottom)}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*:before,*:after{animation:none!important;transition:none!important}
}
