@font-face{font-family:'Imperial Script';src:url('fonts/imperial_script/imperialscript-regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:'Charm';src:url('fonts/charm/charm-regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
:root{--navy:#002f73;--navy-2:#001d51;--blue:#0b4da2;--red:#e2162a;--red-2:#b90f1e;--cream:#fff8ef;--paper:#fffdf9;--ink:#17233f;--muted:#606a7d;--gold:#f8b51d;--line:rgba(255,255,255,.62);--soft-line:rgba(0,47,115,.13);--shadow:0 18px 45px rgba(0,26,70,.16);--hero-shadow:0 5px 18px rgba(0,0,0,.42);--serif:Georgia,'Times New Roman',serif}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--serif);background:#fff;color:var(--ink);overflow-x:hidden}a{text-decoration:none;color:inherit}img,video,iframe{max-width:100%;display:block}.site-hero{height:100vh;min-height:720px;position:relative;overflow:hidden;background:url('images/isbl-hero.png') center bottom/cover no-repeat;color:#fff}.site-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.01),rgba(0,0,0,.05));pointer-events:none}.header{position:absolute;top:0;left:0;right:0;z-index:20;color:#fff}.header-inner{width:min(1440px,94vw);margin:0 auto;min-height:132px;display:flex;align-items:center;gap:24px;padding-top:18px}.header.solid{position:sticky;background:linear-gradient(180deg,var(--navy),var(--navy-2));box-shadow:0 8px 28px rgba(0,0,0,.16)}.header.solid .header-inner{min-height:118px;padding:10px 0}.brand{display:flex;align-items:center;gap:16px;flex:0 0 auto;min-width:0}.brand img{width:132px;height:132px;object-fit:contain;filter:drop-shadow(0 5px 12px rgba(0,0,0,.34));flex:0 0 auto}.brand-title{font-size:clamp(1.2rem,1.6vw,1.9rem);font-weight:700;color:#fff;white-space:nowrap;text-shadow:0 2px 8px rgba(0,0,0,.34);line-height:1.05}.nav{display:flex;align-items:center;gap:0;white-space:nowrap}.nav a{color:#fff;font-weight:700;font-size:clamp(.95rem,1.03vw,1.18rem);height:44px;display:flex;align-items:center;justify-content:center;padding:0 18px;border-left:1.5px solid var(--line);text-shadow:0 2px 8px rgba(0,0,0,.28);transition:opacity .18s ease,transform .18s ease}.nav a:first-child{border-left:0}.nav a:hover{opacity:.9;transform:translateY(-1px)}.nav .donate-link{background:linear-gradient(180deg,var(--red),var(--red-2));border-left:0;border-radius:999px;box-shadow:0 9px 22px rgba(0,0,0,.22);margin-left:14px;min-width:104px;height:42px;padding-inline:22px}.mobile-toggle{display:none;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.5);color:#fff;padding:10px 12px;border-radius:10px;font-weight:700}.hero-copy{position:absolute;left:63.7%;top:46%;transform:translate(-50%,-50%);width:min(760px,46vw);text-align:center;color:#fff;text-shadow:var(--hero-shadow);z-index:5}.welcome-stack{margin-bottom:24px}.bienvenidos{font-family:'Imperial Script',cursive;font-size:clamp(7.5rem,11.2vw,11.7rem);font-weight:400;line-height:.74;color:#fff;letter-spacing:.01em}.welcome{font-size:clamp(6.3rem,9.8vw,10.2rem);line-height:.8;color:#fff;margin-top:6px;letter-spacing:.01em;-webkit-text-stroke:.18px #fff}.welcome-w{font-family:'Charm',cursive;font-weight:400;letter-spacing:-.045em}.welcome-rest{font-family:'Imperial Script',cursive;font-weight:400;margin-left:-.08em}.subhead{max-width:min(740px,100%);margin:0 auto 32px;font-size:clamp(1.44rem,1.9vw,1.95rem);font-weight:700;line-height:1.32;color:#fff;text-wrap:balance}.actions{display:flex;justify-content:center;align-items:center;gap:32px;flex-wrap:wrap}.btn{border:0;border-radius:13px;padding:15px 30px;min-width:180px;min-height:56px;font-family:var(--serif);font-size:clamp(1.03rem,1.08vw,1.22rem);font-weight:700;color:#fff;box-shadow:var(--shadow);display:inline-flex;align-items:center;justify-content:center;gap:11px;cursor:pointer}.btn-red{background:linear-gradient(180deg,var(--red),var(--red-2))}.btn-navy{background:linear-gradient(180deg,var(--navy),var(--navy-2))}.play-icon{width:28px;height:28px;border:2px solid #fff;border-radius:50%;display:grid;place-items:center;position:relative}.play-icon:before{content:"";border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:8px solid #fff;transform:translateX(2px)}.lang-toggle{position:fixed;right:22px;bottom:32px;z-index:1000;background:#001d51;border:1.5px solid rgba(248,181,29,.35);border-radius:10px;box-shadow:0 4px 20px rgba(0,0,0,.36);overflow:hidden;display:flex}.lang-toggle button{border:0;background:transparent;color:rgba(255,255,255,.5);padding:9px 15px;font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;cursor:pointer;position:relative;transition:color .15s}.lang-toggle button:first-child{border-right:1px solid rgba(255,255,255,.12)}.lang-toggle button.active{color:#f8b51d;font-weight:800}.lang-toggle button.active::after{content:'';position:absolute;bottom:5px;left:50%;transform:translateX(-50%);width:14px;height:2px;background:#f8b51d;border-radius:1px}.section{padding:92px 28px}.section.alt{background:linear-gradient(180deg,#fffaf2,#fff)}.section.blue{background:linear-gradient(135deg,var(--navy),#0755ae);color:#fff}.section.blue .section-title,.section.blue .lead,.section.blue .kicker{color:#fff}.wrap{width:min(1180px,92vw);margin:0 auto}.kicker{text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:var(--red);font-size:.78rem;margin-bottom:14px}.section-title{font-size:clamp(2.25rem,4vw,4.4rem);line-height:1.02;color:var(--navy);margin-bottom:24px}.section-head{max-width:820px;margin-bottom:42px}.section-head.center{text-align:center;margin-left:auto;margin-right:auto}.lead{font-size:clamp(1.14rem,1.42vw,1.38rem);line-height:1.65;color:#39435c}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center}.card{background:#fff;border:1px solid var(--soft-line);border-radius:24px;padding:32px;box-shadow:var(--shadow)}.intro-split{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:stretch}.language-card{background:#fff;border:1px solid var(--soft-line);border-radius:28px;padding:34px;box-shadow:var(--shadow);position:relative;overflow:hidden}.language-card:before{content:"";position:absolute;top:0;left:0;right:0;height:7px;background:linear-gradient(90deg,var(--red),#fff,var(--blue))}.language-card h3{font-size:2.4rem;color:var(--navy);margin-bottom:16px}.language-card p{line-height:1.72;margin-bottom:12px;color:#3d465d;font-size:1.08rem}.impact-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:30px}.impact-card{background:#fff;border:1px solid var(--soft-line);border-radius:20px;padding:24px;box-shadow:0 12px 30px rgba(0,35,80,.07)}.impact-card strong{display:block;font-size:2.4rem;color:var(--red);line-height:1;margin-bottom:9px}.impact-card span{font-weight:800;color:var(--navy)}.isbl-feature{display:grid;grid-template-columns:150px 1fr;gap:30px;align-items:stretch}.letters{display:flex;flex-direction:column;gap:14px}.letter-btn{height:104px;border:0;border-radius:24px;background:linear-gradient(180deg,var(--navy),var(--navy-2));color:#fff;font-size:4.4rem;font-family:var(--serif);font-weight:800;box-shadow:var(--shadow);cursor:pointer;transition:transform .18s ease,background .18s ease}.letter-btn:hover{transform:translateY(-2px)}.letter-btn.active{background:linear-gradient(180deg,var(--red),var(--red-2))}.isbl-panel{display:grid;grid-template-columns:.88fr 1.12fr;gap:28px;align-items:stretch;min-height:380px}.placeholder{background:linear-gradient(135deg,#f4f7fc,#dfe8f6);border:2px dashed rgba(0,47,115,.28);border-radius:24px;color:var(--navy);display:grid;place-items:center;min-height:280px;font-weight:800;font-size:1.18rem;text-align:center;padding:24px}.panel-copy{align-self:center}.panel-copy h3{font-size:clamp(2.25rem,3vw,3.35rem);color:var(--navy);margin-bottom:16px}.panel-copy p{font-size:1.22rem;line-height:1.72;color:#3e465b}.statement-card{background:#fff;color:var(--ink);border-radius:32px;padding:52px;box-shadow:var(--shadow);display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:center}.statement-card h2{font-size:clamp(2.5rem,4.5vw,5.2rem);line-height:.98;color:var(--navy)}.statement-card p{font-size:1.18rem;line-height:1.7;color:#3e465b}.sponsor-strip{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.sponsor-strip span{padding:10px 14px;border-radius:999px;background:#fff;border:1px solid rgba(0,47,115,.14);font-weight:700;color:var(--navy)}.media-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}.video-card{background:#071c43;border-radius:24px;padding:18px;color:#fff;box-shadow:var(--shadow)}.video-card h3{font-size:1.55rem;margin:16px 8px}.video-card p{color:rgba(255,255,255,.84);line-height:1.6;margin:0 8px 10px}.video-card video,.video-card iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:16px;background:#000}.cta-card{background:linear-gradient(135deg,var(--navy),#0c57b4);color:#fff;border-radius:32px;padding:46px;display:flex;align-items:center;justify-content:space-between;gap:30px;box-shadow:var(--shadow)}.cta-card h2{font-size:clamp(2rem,3.3vw,3.6rem);line-height:1.05}.cta-card p{color:rgba(255,255,255,.9);line-height:1.6;max-width:560px;margin-top:12px}.about-hero{padding:150px 28px 82px;background:linear-gradient(135deg,var(--navy),#0e4da3);color:#fff}.about-hero h1{font-size:clamp(3rem,6vw,6rem);line-height:1}.about-hero p{max-width:850px;margin-top:18px;font-size:1.25rem;line-height:1.65;color:rgba(255,255,255,.9)}.about-layout{display:grid;grid-template-columns:280px 1fr;gap:38px;align-items:start}.about-sidebar{position:sticky;top:140px}.about-nav-card{background:#fff;border:1px solid var(--soft-line);border-radius:24px;padding:24px;box-shadow:var(--shadow)}.about-nav-card h3{color:var(--navy);font-size:1.35rem;margin-bottom:12px}.about-nav-card a{display:block;padding:12px 0;border-top:1px solid var(--soft-line);font-weight:800;color:var(--ink)}.about-content{display:grid;gap:26px}.about-block{background:#fff;border:1px solid var(--soft-line);border-radius:26px;padding:36px;box-shadow:0 14px 36px rgba(0,35,80,.07)}.about-block h2{font-size:clamp(2.1rem,3vw,3rem);color:var(--navy);margin-bottom:16px}.about-block p,.about-block li{font-size:1.1rem;line-height:1.78;color:#3e465b}.about-block ul{padding-left:20px;display:grid;gap:12px}.about-block.featured{display:grid;grid-template-columns:1fr 300px;gap:30px;align-items:center}.footer{background:#0b111d;color:#fff}.flag-trim{height:74px;background:url('images/flag-footer-trim.png') center/cover no-repeat;border-bottom:4px solid var(--red)}.footer-main{padding:58px 28px}.footer-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:32px}.footer h3{font-size:1.4rem;margin-bottom:12px}.footer p,.footer a{color:rgba(255,255,255,.84);line-height:1.6}.newsletter{display:flex;gap:10px;margin-top:12px}.newsletter input{flex:1;padding:13px 14px;border-radius:10px;border:0}.newsletter button{border:0;border-radius:10px;padding:13px 16px;background:var(--red);color:#fff;font-weight:800}.socials{display:flex;gap:12px;flex-wrap:wrap}.socials a{background:#192946;padding:10px 12px;border-radius:999px}.page-content{padding:86px 28px}.review-switch{position:fixed;left:18px;bottom:22px;z-index:999;display:flex;gap:7px;background:rgba(255,255,255,.94);padding:7px;border-radius:999px;box-shadow:0 12px 28px rgba(0,0,0,.16)}.review-switch a{font-size:.78rem;font-weight:800;color:var(--navy);padding:8px 10px;border-radius:999px}.review-switch a.active{background:var(--navy);color:#fff}
/* Version A: strong logo left, compact grouped links */
.home-a .brand-title{display:none}.home-a .header-inner{justify-content:flex-start;gap:34px}.home-a .nav{margin-left:0}.home-a .nav a{padding-inline:16px}.home-a .hero-copy{left:63.5%}
/* Version B: centered logo/name with split nav around it */
.home-b .header-inner{position:relative;justify-content:center;min-height:156px}.home-b .brand{position:absolute;left:50%;top:12px;transform:translateX(-50%);flex-direction:column;gap:2px;text-align:center;z-index:2}.home-b .brand img{width:132px;height:132px}.home-b .brand-title{font-size:1.18rem;line-height:1.05;max-width:360px}.home-b .nav{width:min(1180px,92vw);margin:0 auto;padding-top:64px;justify-content:center}.home-b .nav a{border-left:0;padding-inline:18px}.home-b .nav a:nth-child(3){margin-right:230px}.home-b .nav .donate-link{margin-left:8px}.home-b .hero-copy{left:64%}
/* Version C: larger mark + organization name, compact links in one system */
.home-c .header-inner{gap:28px}.home-c .brand{gap:18px}.home-c .brand-title{font-size:clamp(1.6rem,2.15vw,2.35rem);max-width:430px;line-height:1}.home-c .nav{margin-left:10px}.home-c .nav a{padding-inline:13px;font-size:clamp(.88rem,.96vw,1.08rem)}.home-c .nav .donate-link{min-width:96px;margin-left:10px}.home-c .hero-copy{left:63.9%}
@media (max-width:1280px){.brand img,.home-b .brand img{width:116px;height:116px}.header-inner{min-height:120px}.home-b .nav a:nth-child(3){margin-right:190px}.nav a{padding-inline:12px;font-size:.95rem}.brand-title{font-size:1.15rem}.home-c .brand-title{font-size:1.6rem}.hero-copy{width:min(680px,50vw)}}
@media (max-width:1060px){.mobile-toggle{display:block;margin-left:auto}.header-inner,.header.solid .header-inner{min-height:auto;padding:14px 0}.brand img,.home-b .brand img{width:86px;height:86px}.brand-title,.home-c .brand-title{font-size:1rem;max-width:240px;white-space:normal}.nav{display:none;position:absolute;top:100%;right:3vw;background:var(--navy-2);border-radius:18px;padding:12px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;min-width:260px}.nav.open{display:flex}.nav a,.home-c .nav a,.home-b .nav a{border-left:0;border-top:1px solid rgba(255,255,255,.14);height:auto;padding:13px 16px;justify-content:flex-start}.nav a:first-child{border-top:0}.nav .donate-link{margin:10px 0 0;justify-content:center}.home-a .header-inner,.home-c .header-inner{gap:16px}.home-b .header-inner{justify-content:flex-start;min-height:auto}.home-b .brand{position:static;transform:none;flex-direction:row;text-align:left}.home-b .nav{width:auto;margin:0;padding-top:12px}.home-b .nav a:nth-child(3){margin-right:0}.site-hero{min-height:760px;background-position:31% bottom}.hero-copy{left:60%;width:min(620px,56vw)}.bienvenidos{font-size:clamp(5.8rem,12vw,8rem)}.welcome{font-size:clamp(4.8rem,10vw,7rem)}.grid-2,.intro-split,.media-grid,.statement-card,.about-layout,.about-block.featured{grid-template-columns:1fr}.impact-row{grid-template-columns:repeat(2,1fr)}.about-sidebar{position:static}.footer-grid{grid-template-columns:1fr}}
@media (max-width:720px){.site-hero{display:flex;align-items:center;justify-content:center;padding:150px 22px 70px;background-position:28% bottom}.hero-copy{position:relative;left:auto;top:auto;transform:none;width:min(720px,94vw);background:rgba(0,0,0,.12);border-radius:28px;padding:28px 18px;backdrop-filter:blur(1px)}.bienvenidos{font-size:4.8rem}.welcome{font-size:3.55rem}.subhead{font-size:1.15rem}.actions{gap:16px}.btn{min-width:158px;min-height:52px;padding:13px 20px}.section{padding:68px 20px}.intro-columns,.intro-split{grid-template-columns:1fr}.isbl-feature{grid-template-columns:1fr}.letters{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.letter-btn{height:76px;font-size:3rem}.isbl-panel{grid-template-columns:1fr}.impact-row{grid-template-columns:1fr}.cta-card{display:block}.cta-card .btn{margin-top:22px}.review-switch{display:none}#a11y-group{right:14px;bottom:14px}.newsletter{flex-direction:column}}

/* v20 final cleanup: disciplined nav + nonprofit page polish */
.header-inner{width:min(1320px,92vw);gap:18px;min-height:132px;padding-top:14px;}
.brand img,.home-b .brand img{width:148px;height:148px;}
.nav{align-items:center;gap:0;}
.nav a,.nav-item>a{font-size:clamp(1rem,1vw,1.12rem);height:44px;padding:0 14px;border-left:1.5px solid var(--line);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;text-shadow:0 2px 8px rgba(0,0,0,.28);}
.nav a:first-child{border-left:0;}
.nav-item{position:relative;display:flex;align-items:center;height:44px;}
.nav-item>a{border-left:1.5px solid var(--line);}
.submenu{position:absolute;top:100%;left:50%;transform:translateX(-50%);min-width:210px;background:#fff;color:var(--navy);border:1px solid rgba(0,47,115,.12);border-radius:6px;padding:4px 0;box-shadow:0 4px 16px rgba(0,26,70,.12);display:none;}
.has-submenu:hover .submenu,.has-submenu:focus-within .submenu{display:block;}
.submenu a{height:auto;border:0!important;color:var(--navy);text-shadow:none;display:block;padding:10px 18px;border-radius:4px;font-size:.95rem;justify-content:flex-start;transition:background .15s ease,color .15s ease;}
.submenu a:hover{background:linear-gradient(90deg,rgba(226,22,42,.07),rgba(248,181,29,.05));color:var(--red);transform:none;opacity:1;}
.has-submenu>a::after{content:' ▾';font-size:.72em;opacity:.72;vertical-align:1px;margin-left:1px;}
.nav .donate-link{margin-left:12px;min-width:112px;padding-inline:22px;border-left:0!important;background:linear-gradient(180deg,var(--red),var(--red-2));border-radius:999px;}

/* Version A — centered, compact, premium */
.home-a .header-inner{justify-content:center;gap:26px;}
.home-a .brand{margin-right:2px;}
.home-a .brand-title{display:none;}
.home-a .nav{margin-left:0;}
.home-a .nav a,.home-a .nav-item>a{padding-inline:14px;}

/* Version B — centered logo with nav aligned to side markers */
.home-b .header-inner{justify-content:center;min-height:166px;padding-top:12px;}
.home-b .brand{position:absolute;left:50%;top:10px;transform:translateX(-50%);flex-direction:column;gap:0;text-align:center;z-index:3;}
.home-b .brand-title{font-size:1.05rem;max-width:360px;line-height:1.05;}
.home-b .nav{width:min(1240px,92vw);padding-top:58px;justify-content:center;align-items:center;}
.home-b .nav a,.home-b .nav-item>a{border-left:0;padding-inline:15px;height:46px;align-items:center;}
.home-b .nav a:nth-of-type(1),.home-b .nav .nav-item{margin-right:210px;}
.home-b .nav .donate-link{margin-left:10px;}
.home-b .submenu{top:100%;}

/* Version C — strongest branded wordmark, tightened */
.home-c.site-hero{background-image:url('images/isbl-hero-new.jpg');}
.mujer-subtitle{font-family:var(--serif);font-size:clamp(1.3rem,2vw,2rem);font-weight:700;color:var(--navy);margin-top:-8px;margin-bottom:20px;}
.home-c .welcome-stack{margin-top:64px;}
.home-c .actions{margin-top:52px;}
.home-c .header-inner{gap:22px;justify-content:center;}
.home-c .brand{gap:16px;}
.home-c .brand-title{font-size:clamp(1.42rem,1.8vw,2rem);max-width:315px;line-height:.98;white-space:normal;}
.home-c .brand-title::after{content:'';}
.home-c .nav{margin-left:0;}
.home-c .nav a,.home-c .nav-item>a{padding-inline:12px;font-size:clamp(.94rem,.96vw,1.06rem);}
.home-c .nav .donate-link{min-width:100px;margin-left:8px;}

/* Version D — compact ISBL mark */
.home-d .header-inner{justify-content:center;gap:20px;}
.home-d .brand{gap:12px;}
.home-d .brand img{width:148px;height:148px;}
.home-d .brand-title{font-size:clamp(2rem,2.6vw,3rem);letter-spacing:.04em;line-height:1;}
.home-d .nav{margin-left:0;}
.home-d .nav a,.home-d .nav-item>a{padding-inline:13px;font-size:clamp(.96rem,.98vw,1.08rem);}

/* Clean homepage sections */
.review-switch{left:18px;bottom:22px;}
.section{padding:96px 28px;}
.section.alt{background:#fffaf4;}
.intro-split,.intro-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:stretch;}
.intro-card,.language-card{border-radius:28px;padding:36px;background:#fff;border:1px solid rgba(0,47,115,.12);box-shadow:0 18px 44px rgba(0,35,80,.09);}
.intro-card h3,.language-card h3{font-size:clamp(2rem,3vw,3.1rem);color:var(--navy);margin-bottom:16px;}
.intro-card p,.language-card p{font-size:1.12rem;line-height:1.75;color:#3b465d;margin-bottom:12px;}
.section-title{text-wrap:balance;}
.lead{max-width:760px;}
.card,.about-block,.video-card,.placeholder{border-radius:26px;}
.sponsor-strip span{background:#fff;border:1px solid rgba(0,47,115,.16);box-shadow:0 8px 20px rgba(0,35,80,.06);}
.support-cta{background:linear-gradient(135deg,var(--navy),#0c57b4);color:#fff;text-align:center;}
.support-cta .section-title{color:#fff;margin-bottom:14px;}
.support-cta .lead{color:rgba(255,255,255,.9);margin:0 auto 28px;}
.donate-image-link{display:inline-block;line-height:0;filter:drop-shadow(0 16px 34px rgba(0,0,0,.32));transition:transform .18s ease,filter .18s ease;}
.donate-image-link:hover{transform:translateY(-2px);filter:drop-shadow(0 20px 42px rgba(0,0,0,.38));}
.donate-image-link img{width:min(430px,82vw);height:auto;display:block;}

/* Interior page nav — identical layout to homepage, semi-transparent navy background */
.inner-page .header{position:sticky;top:0;z-index:20;background:rgba(0,47,115,.95);}
.header.solid{position:sticky;top:0;}
.header.solid .header-inner{min-height:116px;padding-top:8px;padding-bottom:8px;justify-content:center;gap:22px;}
.header.solid .brand img{width:104px;height:104px;}
.header.solid .brand-title{font-size:clamp(1.15rem,1.4vw,1.55rem);}
.about-hero{padding:150px 28px 96px;background:linear-gradient(135deg,#001d51,#0b4da2);}
.about-hero .wrap{max-width:1100px;}
.about-hero h1{letter-spacing:-.03em;}
.about-layout{grid-template-columns:260px 1fr;gap:44px;}
.about-content{gap:30px;}
.about-block{padding:42px;}
.about-block p,.about-block li{max-width:860px;}
.about-block.featured{grid-template-columns:1fr 320px;}
.page-content{padding:92px 28px;}
.footer-main{padding:64px 28px;}
.flag-trim{height:58px;background-size:cover;background-position:center;}

/* CTA Grid Section — enhanced */
.cta-grid-section{background:linear-gradient(160deg,#001a4a 0%,#002f73 60%,#003d99 100%);padding:80px 28px;}
.cta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.cta-card-item{background:rgba(255,255,255,.12);border:1.5px solid rgba(255,255,255,.2);border-radius:28px;overflow:hidden;color:#fff;text-decoration:none;display:block;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease,background .3s ease;opacity:0;animation:ctaFadeUp .6s ease forwards;box-shadow:0 8px 32px rgba(0,0,0,.2);}
.cta-card-item:nth-child(1){animation-delay:.06s;border-top:4px solid #e2162a;}
.cta-card-item:nth-child(2){animation-delay:.21s;border-top:4px solid #f8b51d;}
.cta-card-item:nth-child(3){animation-delay:.36s;border-top:4px solid #2ac4c4;}
.cta-card-item:hover{transform:translateY(-8px) scale(1.025);background:rgba(255,255,255,.18);}
.cta-card-item:nth-child(1):hover{box-shadow:0 24px 60px rgba(226,22,42,.3);border-color:#e2162a;}
.cta-card-item:nth-child(2):hover{box-shadow:0 24px 60px rgba(248,181,29,.28);border-color:#f8b51d;}
.cta-card-item:nth-child(3):hover{box-shadow:0 24px 60px rgba(42,196,196,.28);border-color:#2ac4c4;}
.cta-card-img{width:100%;aspect-ratio:2/1;object-fit:cover;display:block;}
.cta-card-inner{padding:26px 28px 30px;text-align:center;}
.cta-icon{font-size:2rem;display:block;margin-bottom:10px;}
.cta-card-item .kicker{color:rgba(255,255,255,.6);margin-bottom:6px;}
.cta-card-item h3{font-size:clamp(1.5rem,2vw,2rem);color:#fff;margin:0 0 8px;}
.cta-card-inner>p{color:rgba(255,255,255,.82);margin-bottom:20px;font-size:1rem;line-height:1.5;}
.cta-card-item .btn{transition:transform .3s ease,box-shadow .3s ease;}
.cta-card-item:hover .btn{transform:scale(1.07);box-shadow:0 8px 24px rgba(0,0,0,.28);}
.donate-badge-btn{display:block;line-height:0;transition:transform .3s ease,filter .3s ease;filter:drop-shadow(0 6px 16px rgba(0,0,0,.28));}
.cta-card-item:hover .donate-badge-btn{transform:scale(1.08);filter:drop-shadow(0 10px 24px rgba(0,0,0,.4));}
.donate-badge-btn img{width:min(190px,80%);height:auto;display:block;margin:0 auto;}
@keyframes ctaFadeUp{from{opacity:0;transform:translateY(30px);}to{opacity:1;transform:translateY(0);}}

/* Volunteer Page */
.vol-hero{padding:150px 28px 82px;background:linear-gradient(135deg,var(--navy),#0c57b4);color:#fff;}
.vol-hero h1{font-size:clamp(3rem,6vw,5.5rem);line-height:1;}
.vol-hero p{max-width:780px;margin-top:18px;font-size:1.22rem;line-height:1.65;color:rgba(255,255,255,.9);}
.roles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px;}
.role-card{background:#fff;border:1px solid var(--soft-line);border-radius:20px;padding:24px;box-shadow:0 12px 28px rgba(0,35,80,.07);}
.role-card h4{color:var(--navy);font-size:1.22rem;margin-bottom:8px;}
.role-card p{color:#3e465b;font-size:1rem;line-height:1.6;}
.vol-form{background:#fff;border:1px solid var(--soft-line);border-radius:26px;padding:40px;box-shadow:var(--shadow);max-width:760px;margin:0 auto;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px;}
.form-group{display:flex;flex-direction:column;gap:7px;margin-bottom:18px;}
.form-group label{font-weight:700;color:var(--navy);font-size:.95rem;}
.form-group input,.form-group textarea,.form-group select{padding:13px 14px;border:1.5px solid rgba(0,47,115,.18);border-radius:12px;font-family:var(--serif);font-size:1rem;color:var(--ink);background:#fafcff;}
.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--navy);}
.form-group textarea{min-height:110px;resize:vertical;}
.checkbox-group{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px;}
.checkbox-group label{display:flex;align-items:center;gap:8px;font-weight:400;font-size:.97rem;color:var(--ink);cursor:pointer;}
.form-success{display:none;background:#e8f5e9;border:1px solid #a5d6a7;border-radius:14px;padding:20px;text-align:center;color:#2e7d32;font-weight:700;margin-top:16px;}

/* News Page */
.news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:28px;margin-top:40px;}
.news-card{background:#fff;border:1px solid var(--soft-line);border-radius:24px;overflow:hidden;box-shadow:0 14px 36px rgba(0,35,80,.07);}
.news-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;}
.news-card-body{padding:26px;}
.news-card-body .kicker{margin-bottom:8px;}
.news-card-body h2{font-size:clamp(1.4rem,2vw,1.9rem);color:var(--navy);margin-bottom:10px;line-height:1.2;}
.news-card-body p{color:#3e465b;line-height:1.68;font-size:1.02rem;}
.news-card-body .news-meta{font-size:.84rem;color:var(--muted);margin-top:14px;}
.news-empty{text-align:center;padding:80px 20px;color:var(--muted);}

/* Admin Page */
.admin-gate{max-width:420px;margin:120px auto 60px;padding:40px;background:#fff;border-radius:24px;box-shadow:var(--shadow);text-align:center;}
.admin-gate h2{color:var(--navy);margin-bottom:16px;}
.admin-gate input{width:100%;padding:13px 14px;border:1.5px solid rgba(0,47,115,.18);border-radius:12px;font-size:1rem;margin-bottom:14px;}
.admin-panel{display:none;max-width:780px;margin:40px auto 80px;padding:0 20px;}
.admin-panel h2{color:var(--navy);margin-bottom:24px;}
.admin-form{background:#fff;border:1px solid var(--soft-line);border-radius:26px;padding:36px;box-shadow:var(--shadow);}
.admin-posts{margin-top:40px;}
.admin-post-item{background:#fff;border:1px solid var(--soft-line);border-radius:16px;padding:20px;margin-bottom:14px;display:flex;justify-content:space-between;align-items:center;gap:16px;}
.admin-post-item h4{color:var(--navy);margin-bottom:4px;}
.admin-post-item p{color:var(--muted);font-size:.88rem;}
.btn-delete{background:transparent;border:1.5px solid var(--red);color:var(--red);border-radius:10px;padding:8px 14px;cursor:pointer;font-weight:700;font-size:.88rem;flex-shrink:0;}
.btn-delete:hover{background:var(--red);color:#fff;}
.export-bar{background:linear-gradient(135deg,var(--navy),#0c57b4);border-radius:18px;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#fff;margin-bottom:28px;}

@media (max-width:720px){.cta-grid,.roles-grid,.form-row{grid-template-columns:1fr;}.cta-card-item:nth-child(2){animation-delay:.12s;}.cta-card-item:nth-child(3){animation-delay:.24s;}.vol-form{padding:24px;}.export-bar{flex-direction:column;text-align:center;}}

@media (max-width:1260px){
  .brand img,.home-b .brand img,.home-d .brand img{width:124px;height:124px;}
  .home-b .nav a:nth-of-type(1),.home-b .nav .nav-item{margin-right:170px;}
  .nav a,.nav-item>a{padding-inline:10px;font-size:.94rem;}
  .home-c .brand-title{font-size:1.35rem;max-width:260px;}
}
@media (max-width:1060px){
  .brand img,.home-b .brand img,.home-d .brand img{width:88px;height:88px;}
  .home-b .brand{position:static;transform:none;flex-direction:row;text-align:left;}
  .home-b .nav a:nth-of-type(1),.home-b .nav .nav-item{margin-right:0;}
  .nav{display:none;position:absolute;top:100%;right:3vw;background:var(--navy-2);border-radius:18px;padding:12px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;min-width:280px;}
  .nav.open{display:flex;}
  .nav-item{height:auto;display:block;}
  .nav a,.nav-item>a,.home-b .nav a,.home-b .nav-item>a,.home-c .nav a,.home-c .nav-item>a,.home-d .nav a,.home-d .nav-item>a{height:auto;border-left:0;border-top:1px solid rgba(255,255,255,.14);justify-content:flex-start;padding:13px 16px;}
  .nav a:first-child{border-top:0;}
  .submenu{position:static;display:block;background:rgba(255,255,255,.08);box-shadow:none;border:0;margin:0 0 6px 12px;min-width:0;}
  .submenu a{color:#fff;background:transparent;font-size:.9rem;padding:10px 14px;}
  .submenu a:hover{background:rgba(255,255,255,.12);color:#fff;}
  .has-submenu>a::after{display:none;}
  .nav .donate-link{margin:10px 0 0;justify-content:center;}
  .intro-split,.intro-columns{grid-template-columns:1fr;}
}
@media (max-width:720px){
  .section{padding:70px 20px;}
  .about-block,.intro-card,.language-card{padding:28px;}
  .about-layout,.about-block.featured{grid-template-columns:1fr;}
  .donate-image-link img{width:min(340px,86vw);}
}

/* ── Board of Directors ── */
.board-founder{display:grid;grid-template-columns:280px 1fr;gap:48px;align-items:center;margin-bottom:72px;background:#fff;border:1px solid var(--soft-line);border-radius:28px;padding:40px;box-shadow:var(--shadow);}
.board-founder-img{width:220px;height:220px;border-radius:50%;object-fit:cover;border:4px solid var(--gold);box-shadow:0 12px 32px rgba(0,47,115,.18);display:block;margin:0 auto;}
.board-founder-name{font-size:clamp(2rem,3.5vw,3.2rem);color:var(--navy);margin-bottom:8px;font-family:system-ui,-apple-system,sans-serif;font-weight:800;}
.board-founder-role{font-size:1rem;font-weight:700;color:var(--red);margin-bottom:14px;font-family:system-ui,-apple-system,sans-serif;}
.board-founder-bio{font-size:1.08rem;line-height:1.72;color:#3e465b;font-family:system-ui,-apple-system,sans-serif;}
.board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:26px;margin-bottom:64px;}
.board-card{background:#fff;border:1px solid var(--soft-line);border-radius:24px;padding:28px 20px;text-align:center;box-shadow:0 12px 28px rgba(0,35,80,.07);transition:transform .22s ease,box-shadow .22s ease;cursor:pointer;}
.board-card:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(0,35,80,.12);}
.board-headshot{width:160px;height:160px;border-radius:14px;object-fit:cover;border:3px solid var(--soft-line);margin:0 auto 14px;display:block;}
.board-name{font-size:1.05rem;color:var(--navy);font-weight:700;margin-bottom:4px;line-height:1.2;font-family:system-ui,-apple-system,sans-serif;}
.board-role{font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--red);margin-bottom:8px;font-family:system-ui,-apple-system,sans-serif;}
.board-bio{font-size:.92rem;line-height:1.6;color:#4a5470;font-family:system-ui,-apple-system,sans-serif;}
.board-business-link{font-size:.88rem;font-weight:700;color:var(--navy);display:inline-block;margin-top:8px;font-family:system-ui,-apple-system,sans-serif;}
@media(max-width:720px){.board-founder{grid-template-columns:1fr;text-align:center;}.board-founder-img{margin:0 auto 20px;}}

/* ── Unified Support / Donate ── */
.unified-support{background:linear-gradient(160deg,#001a4a 0%,#002060 55%,#00307a 100%);padding:96px 28px;}
.unified-support-heading{text-align:center;margin-bottom:52px;}
.unified-support-heading h2{font-size:clamp(2.4rem,4vw,3.8rem);color:#fff;margin:8px 0 16px;font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-weight:800;letter-spacing:-.02em;}
.unified-support-heading>p{color:rgba(255,255,255,.8);font-size:1.12rem;max-width:580px;margin:0 auto;font-family:system-ui,-apple-system,sans-serif;line-height:1.65;}
.support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.support-card{display:block;text-decoration:none;color:inherit;background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.15);border-radius:24px;overflow:hidden;transition:transform .28s ease,box-shadow .28s ease,background .28s ease;cursor:pointer;box-shadow:0 8px 28px rgba(0,0,0,.18);}
.support-card:hover{transform:translateY(-8px) scale(1.025);background:rgba(255,255,255,.17);}
.support-card:nth-child(1):hover{box-shadow:0 24px 56px rgba(11,77,162,.35);}
.support-card:nth-child(2):hover{box-shadow:0 24px 56px rgba(226,22,42,.3);}
.support-card:nth-child(3):hover{box-shadow:0 24px 56px rgba(248,181,29,.28);}
.support-card-accent{height:5px;}
.support-card-inner{padding:28px 26px 32px;}
.support-icon{font-size:2rem;display:block;margin-bottom:12px;}
.support-label{font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.05em;color:rgba(255,255,255,.55);font-family:system-ui,-apple-system,sans-serif;display:block;margin-bottom:6px;}
.support-card h3{font-size:clamp(1.5rem,2vw,2rem);color:#fff;margin:0 0 10px;font-family:'Archivo Black',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-weight:900;letter-spacing:-.01em;}
.support-card p{color:rgba(255,255,255,.78);font-size:14px;line-height:1.6;margin-bottom:22px;font-family:system-ui,-apple-system,sans-serif;font-weight:400;}
.support-cta-btn{transition:transform .25s ease,box-shadow .25s ease;display:inline-flex;}
.support-card:hover .support-cta-btn{transform:scale(1.06);box-shadow:0 8px 20px rgba(0,0,0,.25);}
.donate-badge-btn img{max-width:160px;width:auto;height:auto;display:block;}
@media(max-width:720px){.support-grid{grid-template-columns:1fr;}}

/* ── v21 Redesign ─────────────────────────────────────────────────────────── */

/* Token additions */
:root{--body-text:#3e465b;}

/* Fix: unify lead/body text color throughout */
.lead,.about-block p,.about-block li,.intro-card p,.language-card p,.panel-copy p,.news-card-body p,.role-card p,.board-founder-bio,.board-bio{color:var(--body-text);}

/* Fix: off-palette teal → gold on cta-card-item (about page) */
.cta-card-item:nth-child(3){border-top-color:var(--gold);}
.cta-card-item:nth-child(3):hover{box-shadow:0 24px 60px rgba(248,181,29,.28);border-color:var(--gold);}

/* Fix: support section typography → use site serif stack */
.unified-support-heading h2{font-family:var(--serif);font-weight:700;letter-spacing:-.01em;}
.support-card h3{font-family:var(--serif);font-weight:700;letter-spacing:-.01em;}
.support-card p{font-family:var(--serif);}

/* Hide emoji icons in support cards */
.support-icon{display:none;}

/* ── Mission Section ── */
.mission-section{background:#fffaf4;padding:96px 28px;}
.mission-content{display:flex;gap:32px;align-items:flex-start;}
.mission-accent{flex-shrink:0;width:5px;height:88px;border-radius:3px;background:linear-gradient(180deg,var(--navy) 0 34%,var(--red) 34% 67%,var(--gold) 67%);}
.mission-statement{font-size:clamp(1.85rem,2.6vw,2.8rem);line-height:1.18;color:var(--navy);font-weight:700;max-width:860px;margin-bottom:24px;text-wrap:balance;}
.mission-body{font-size:clamp(1.06rem,1.25vw,1.24rem);line-height:1.76;color:var(--body-text);max-width:740px;}

/* ── ISBL Section ── */
.isbl-section{background:linear-gradient(160deg,var(--navy-2) 0%,#0a3580 100%);padding:96px 28px;}
.isbl-section .kicker{color:var(--gold);}
.isbl-title{color:#fff !important;font-size:clamp(.72rem,3vw,2.8rem);letter-spacing:-.02em;white-space:nowrap;}
.isbl-header{margin-bottom:52px;}
.isbl-section .isbl-feature{display:grid;grid-template-columns:168px 1fr;gap:28px;align-items:start;}
.isbl-section .letters{display:flex;flex-direction:column;gap:10px;}
.isbl-section .letter-btn{height:auto;padding:16px 14px;border-radius:16px;background:rgba(255,255,255,.08);border:1.5px solid rgba(255,255,255,.14);color:rgba(255,255,255,.65);box-shadow:none;font-size:inherit;display:flex;flex-direction:column;align-items:center;gap:5px;width:100%;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;}
.isbl-section .letter-btn:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.28);color:#fff;transform:translateY(-2px);}
.isbl-section .letter-btn.active{background:linear-gradient(180deg,var(--red),var(--red-2));border-color:var(--red);color:#fff;box-shadow:0 8px 22px rgba(226,22,42,.38);}
.letter-glyph{font-family:var(--serif);font-size:2.2rem;font-weight:800;line-height:1;display:block;}
.letter-word{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;opacity:.8;line-height:1.2;text-align:center;}
.isbl-section .letter-btn.active .letter-word{opacity:1;}
.isbl-panel-new{background:rgba(255,255,255,.06);border:1.5px solid rgba(255,255,255,.1);border-radius:24px;padding:52px 52px 52px 52px;position:relative;overflow:hidden;min-height:340px;display:flex;align-items:flex-end;}
.panel-letter-display{position:absolute;top:-24px;right:24px;font-family:var(--serif);font-size:clamp(9rem,15vw,15rem);font-weight:700;color:rgba(255,255,255,.055);line-height:1;pointer-events:none;user-select:none;transition:opacity .22s ease;}
.isbl-panel-new .panel-copy{position:relative;z-index:1;max-width:600px;}
.isbl-panel-new .panel-copy h3{font-size:clamp(1.7rem,2.4vw,2.6rem);color:#fff;margin-bottom:18px;line-height:1.1;}
.isbl-panel-new .panel-copy p{font-size:1.16rem;line-height:1.74;color:rgba(255,255,255,.82);}

/* ── Milestone Section ── */
.milestone-section{background:#fff;padding:96px 28px;}
.milestone-grid{display:grid;grid-template-columns:1fr auto;gap:56px;align-items:start;}
.milestone-text .kicker{color:var(--red);}
.milestone-number-col{text-align:right;min-width:200px;padding-top:52px;}
.milestone-number{display:block;font-family:var(--serif);font-size:clamp(6rem,9.5vw,10rem);font-weight:700;color:var(--navy);line-height:.88;letter-spacing:-.04em;}
.milestone-label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin-top:10px;text-align:right;}
.milestone-scholarship{margin-top:40px;border-top:3px solid var(--gold);padding-top:20px;text-align:right;}
.scholarship-num{display:block;font-family:var(--serif);font-size:clamp(3rem,4.5vw,4.4rem);font-weight:700;color:var(--gold);line-height:1;letter-spacing:-.03em;}
.scholarship-label{display:block;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);margin-top:6px;line-height:1.45;max-width:190px;margin-left:auto;}
.milestone-sponsors{margin-top:36px;padding-top:28px;border-top:1px solid var(--soft-line);}
.sponsor-heading{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin-bottom:14px;}
.sponsor-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:7px;}
.sponsor-list li{font-size:1rem;font-weight:700;color:var(--navy);}

/* ── Story Section ── */
.story-section{background:linear-gradient(160deg,var(--navy-2) 0%,#092f75 100%);padding:96px 28px;}
.story-section .kicker{color:var(--gold);}
.story-section .section-title{color:#fff;}
.story-section .section-head{margin-bottom:40px;}
.story-section .video-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);}
.story-section .video-card h3{color:#fff;}
.story-section .video-card p{color:rgba(255,255,255,.78);}

/* ── Media Feature Section ── */
.media-feature-section{background:#fffaf4;padding:96px 28px;}
.media-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.media-feature-text .section-title{color:var(--navy);}
.media-feature-video .video-card{background:var(--navy-2);border-radius:24px;padding:16px;box-shadow:var(--shadow);}
.media-feature-video .video-card video{border-radius:14px;}

/* ── Responsive: ≤1060px ── */
@media(max-width:1060px){
  .isbl-section .isbl-feature{grid-template-columns:1fr;}
  .isbl-section .letters{flex-direction:row;gap:8px;}
  .isbl-section .letter-btn{flex:1;min-width:0;}
  .letter-word{font-size:.62rem;}
  .milestone-grid{grid-template-columns:1fr;}
  .milestone-number-col{text-align:left;padding-top:0;min-width:0;order:-1;}
  .milestone-label,.scholarship-label{text-align:left;margin-left:0;}
  .milestone-scholarship{text-align:left;}
  .media-feature-grid{grid-template-columns:1fr;gap:36px;}
}

/* ── Responsive: ≤720px ── */
@media(max-width:720px){
  .mission-content{gap:20px;}
  .mission-accent{height:64px;}
  .isbl-section .isbl-feature{gap:20px;}
  .isbl-panel-new{padding:32px 28px 32px 28px;min-height:260px;}
  .panel-letter-display{font-size:7rem;top:-12px;right:12px;}
  .isbl-section .letters{gap:6px;}
  .letter-glyph{font-size:1.7rem;}
}

/* ═══════════════════════════════════════
   v22 — Elevation Pass
   ═══════════════════════════════════════ */

/* Hero text nudge — 45px down from center */
.hero-copy{margin-top:45px;}

/* Page hero — reduce padding-top for sticky-in-flow nav */
.about-hero{padding:80px 28px 80px;}
.about-hero h1{font-size:clamp(2.6rem,5vw,5.5rem);letter-spacing:-.03em;line-height:.95;}
.about-hero p{font-size:1.15rem;line-height:1.7;color:rgba(255,255,255,.88);max-width:720px;margin-top:14px;}

/* Volunteer page hero */
.vol-hero{padding:80px 28px 80px;background:linear-gradient(135deg,#001d51,#0b4da2);color:#fff;}
.vol-hero h1{font-size:clamp(2.6rem,5vw,5.5rem);letter-spacing:-.03em;line-height:.95;}
.vol-hero p{font-size:1.15rem;line-height:1.7;color:rgba(255,255,255,.88);max-width:720px;margin-top:14px;}

/* Program / service cards — top-border accent, no emoji */
.prog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;margin-bottom:60px;}
.prog-card{background:#fff;border:1px solid rgba(0,47,115,.1);border-radius:20px;padding:32px;box-shadow:0 8px 24px rgba(0,35,80,.07);position:relative;overflow:hidden;}
.prog-card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;}
.prog-card.c-navy::before{background:var(--navy);}
.prog-card.c-red::before{background:var(--red);}
.prog-card.c-gold::before{background:var(--gold);}
.prog-card h3{color:var(--navy);font-size:1.25rem;margin-bottom:10px;font-family:var(--serif);}
.prog-card p{color:var(--body-text);line-height:1.7;font-size:.98rem;}

/* Stat callout */
.stat-callout{background:linear-gradient(135deg,var(--navy-2),var(--navy));color:#fff;border-radius:24px;padding:44px 40px;margin-bottom:60px;display:grid;grid-template-columns:auto 1fr;gap:32px;align-items:center;}
.stat-callout-num{font-size:clamp(4rem,8vw,7rem);font-weight:800;line-height:1;color:var(--gold);font-family:var(--serif);}
.stat-callout-label{font-size:1.25rem;font-weight:700;margin-bottom:6px;}
.stat-callout-body{color:rgba(255,255,255,.84);line-height:1.65;}

/* Board cards */
.board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;margin-top:36px;}
.board-card{background:#fff;border:1px solid rgba(0,47,115,.1);border-radius:18px;padding:24px 18px;box-shadow:0 6px 18px rgba(0,35,80,.06);text-align:center;cursor:pointer;}
.board-headshot{width:160px;height:160px;object-fit:cover;border-radius:14px;margin:0 auto 12px;display:block;background:var(--navy);}
.board-name{color:var(--navy);font-size:1rem;font-weight:800;margin-bottom:3px;}
.board-role{color:var(--muted);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;}
.board-bio{color:var(--body-text);font-size:.9rem;line-height:1.6;}
.board-business-link{display:inline-block;margin-top:8px;color:var(--blue);font-size:.85rem;font-weight:700;text-decoration:underline;}
.board-founder{display:grid;grid-template-columns:260px 1fr;gap:44px;align-items:start;margin-bottom:60px;background:#fff;border:1px solid rgba(0,47,115,.1);border-radius:28px;padding:48px;box-shadow:0 10px 32px rgba(0,35,80,.08);}
.board-founder-img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:18px;background:var(--navy);}
.board-founder-name{font-size:clamp(2rem,3.5vw,3rem);color:var(--navy);line-height:.96;margin-bottom:8px;}
.board-founder-role{color:var(--red);font-weight:700;font-size:1rem;margin-bottom:16px;}
.board-founder-bio{color:var(--body-text);line-height:1.72;font-size:1.03rem;max-width:580px;}

/* Volunteer roles */
.roles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;}
.role-card{background:#fff;border-left:4px solid var(--navy);border-radius:0 14px 14px 0;padding:20px 24px;box-shadow:0 4px 14px rgba(0,35,80,.06);}
.role-card:nth-child(3n+2){border-left-color:var(--red);}
.role-card:nth-child(3n){border-left-color:var(--gold);}
.role-card h4{color:var(--navy);font-size:1.02rem;margin-bottom:6px;font-weight:800;}
.role-card p{color:var(--body-text);line-height:1.65;font-size:.93rem;}

/* Volunteer form */
.vol-form{background:#fff;border:1px solid rgba(0,47,115,.12);border-radius:24px;padding:44px;max-width:700px;box-shadow:0 8px 28px rgba(0,35,80,.07);}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;}
.form-group label{font-weight:800;color:var(--navy);font-size:.85rem;letter-spacing:.03em;}
.form-group input,.form-group textarea{border:1.5px solid rgba(0,47,115,.2);border-radius:10px;padding:12px 14px;font-family:var(--serif);font-size:1rem;color:var(--ink);transition:border-color .15s ease;width:100%;box-sizing:border-box;}
.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(0,47,115,.1);}
.form-group textarea{min-height:100px;resize:vertical;}
.checkbox-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;margin-top:6px;align-items:start;}
.checkbox-group label{display:flex;gap:8px;align-items:flex-start;line-height:1.35;font-size:.92rem;cursor:pointer;font-weight:400;color:var(--ink);}
.checkbox-group input[type=checkbox]{flex:0 0 auto;width:16px;height:16px;margin-top:2px;accent-color:var(--navy);}
.form-success{display:none;background:#f0fdf4;border:1.5px solid #22c55e;border-radius:12px;padding:16px 20px;color:#166534;font-weight:700;margin-top:14px;line-height:1.5;}

/* News */
.news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;padding-bottom:80px;}
.news-card{background:#fff;border:1px solid rgba(0,47,115,.1);border-radius:18px;overflow:hidden;box-shadow:0 6px 18px rgba(0,35,80,.06);}
.news-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;}
.news-card-body{padding:26px;}
.news-card-body .kicker{margin-bottom:8px;}
.news-card-body h2{font-size:1.2rem;color:var(--navy);margin-bottom:8px;line-height:1.25;}
.news-card-body p{color:var(--body-text);line-height:1.65;font-size:.95rem;}
.news-meta{color:var(--muted);font-size:.82rem;margin-top:10px;font-weight:700;}
.news-empty{text-align:center;padding:80px 20px;}

/* Partners */
.partner-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px;margin-bottom:48px;}
.partner-card{background:#fff;border:1px solid rgba(0,47,115,.1);border-radius:16px;padding:28px 20px;text-align:center;box-shadow:0 4px 14px rgba(0,35,80,.05);}
.partner-name{color:var(--navy);font-size:1rem;font-weight:800;line-height:1.3;}
.partner-type{color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin-top:5px;}
.submenu a.submenu-child{padding-left:30px;font-size:.86rem;color:var(--blue);}

/* Partner program pages */
.partner-pathways{margin:0 0 56px;padding:36px 0 12px;border-top:1px solid rgba(0,47,115,.12);}
.partner-pathways-heading{max-width:680px;margin-bottom:24px;}
.partner-pathways-heading h2,.program-intro h2,.program-section-heading h2,.program-cta h2,.program-media-coming h2{color:var(--navy);font-size:clamp(1.75rem,3.5vw,3rem);line-height:1.12;}
.partner-pathway-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;}
.partner-pathway-card{display:flex;flex-direction:column;align-items:flex-start;min-height:250px;padding:30px;background:#fff;border:1px solid rgba(0,47,115,.14);border-radius:16px;box-shadow:0 8px 24px rgba(0,35,80,.07);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
.partner-pathway-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(0,35,80,.12);border-color:rgba(0,47,115,.28);}
.partner-pathway-label{color:var(--red);font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px;}
.partner-pathway-card h3{color:var(--navy);font-size:clamp(1.35rem,2.3vw,2rem);line-height:1.15;margin-bottom:12px;}
.partner-pathway-card p{color:var(--body-text);line-height:1.7;margin-bottom:24px;}
.partner-pathway-link{margin-top:auto;color:var(--navy);font-weight:800;font-size:.9rem;}
.page-breadcrumb{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:.84rem;font-weight:700;margin-bottom:52px;}
.page-breadcrumb a{color:var(--navy);}
.page-breadcrumb a:hover{text-decoration:underline;}
.program-page{max-width:1100px;}
.program-intro{max-width:830px;margin-bottom:72px;}
.program-intro h2{margin-bottom:24px;}
.program-intro p:not(.kicker){color:var(--body-text);font-size:1.05rem;line-height:1.8;margin-bottom:16px;}
.program-section{margin-bottom:76px;}
.program-section-heading{max-width:720px;margin-bottom:28px;}
.program-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;list-style:none;}
.program-list li{position:relative;padding:17px 18px 17px 48px;background:#fff;border:1px solid rgba(0,47,115,.11);border-radius:12px;color:var(--ink);font-weight:700;line-height:1.45;box-shadow:0 3px 12px rgba(0,35,80,.04);}
.program-list li::before{content:'ISBL';position:absolute;left:15px;top:18px;color:var(--red);font-size:.58rem;font-weight:900;letter-spacing:.03em;}
.program-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:300px;gap:18px;}
.program-photo{position:relative;overflow:hidden;border-radius:16px;background:#e8edf6;box-shadow:0 8px 24px rgba(0,35,80,.1);}
.program-photo-label{position:absolute;left:12px;bottom:12px;background:rgba(11,17,29,.82);color:#fff;font-size:.76rem;font-weight:700;letter-spacing:.02em;padding:6px 12px;border-radius:999px;}
.program-photo img{width:100%;height:100%;object-fit:cover;}
.program-photo.portrait{grid-row:span 2;}
.program-photo.portrait img{object-position:center;}
.program-section-heading h2,.video-library-heading h2{scroll-margin-top:170px;}
.program-cta{display:flex;align-items:center;justify-content:space-between;gap:36px;margin:20px 0 60px;padding:38px 40px;background:#f6f8fc;border:1px solid rgba(0,47,115,.12);border-radius:18px;}
.program-cta>div{max-width:700px;}
.program-cta h2{margin-bottom:10px;}
.program-cta p:not(.kicker){color:var(--body-text);line-height:1.65;}
.program-cta .btn{flex:0 0 auto;}
.program-media-coming{margin:0 0 70px;padding:48px 42px;background:#f6f8fc;border:1px dashed rgba(0,47,115,.3);border-radius:18px;text-align:center;}
.program-media-coming>div{max-width:700px;margin:auto;}
.program-media-coming h2{margin-bottom:12px;}
.program-media-coming p:not(.kicker){color:var(--body-text);line-height:1.7;}

/* Video gallery */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.video-library{background:#f7f8fb;}
.video-library-feature{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:34px;align-items:center;margin-bottom:42px;padding:26px;background:var(--navy-2);border-radius:18px;box-shadow:0 16px 38px rgba(0,29,81,.18);scroll-margin-top:150px;}
.video-library-player{aspect-ratio:16/9;background:#000;border-radius:12px;overflow:hidden;position:relative;}
.video-library-player video{width:100%;height:100%;object-fit:contain;}
.video-library-feature-copy{padding:20px 20px 20px 0;color:#fff;}
.video-library-eyebrow,.video-gallery-card-category{color:var(--gold);font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;}
.video-library-feature-copy h2{font-size:clamp(1.75rem,3vw,3rem);line-height:1.08;margin:12px 0 14px;color:#fff;}
.video-library-feature-copy>p:not(.video-library-eyebrow):not(.video-library-meta){color:rgba(255,255,255,.76);line-height:1.7;}
.video-library-meta{margin-top:18px;color:rgba(255,255,255,.58);font-weight:700;font-size:.84rem;}
.video-recommendations{position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,24,64,.98),rgba(8,50,112,.96));color:#fff;padding:clamp(16px,3vw,28px);overflow-y:auto;z-index:2;}
.video-recommendations[hidden]{display:none;}
.video-recommendations-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px;}
.video-recommendations-head p{color:var(--gold);font-size:.65rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px;}
.video-recommendations-head h3{color:#fff;font-size:clamp(1.1rem,2.2vw,1.65rem);line-height:1.15;}
#video-recommendations-close{width:34px;height:34px;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:1.3rem;cursor:pointer;line-height:1;}
.video-recommendations-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.video-recommendation{border:0;background:transparent;color:#fff;text-align:left;cursor:pointer;font:inherit;padding:0;min-width:0;}
.video-recommendation img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:8px;margin-bottom:7px;transition:filter .18s,transform .18s;}
.video-recommendation span{display:block;font-size:.76rem;font-weight:800;line-height:1.3;}
.video-recommendation:hover img{filter:brightness(.8);transform:translateY(-2px);}
.video-recommendation:focus-visible{outline:3px solid var(--gold);outline-offset:4px;border-radius:8px;}
.video-replay{margin-top:15px;border:1px solid rgba(255,255,255,.42);border-radius:999px;background:transparent;color:#fff;padding:8px 14px;font:inherit;font-size:.76rem;font-weight:800;cursor:pointer;}
.video-comments{margin:0 0 72px;padding:34px;border:1px solid rgba(0,47,115,.13);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(0,35,80,.06);scroll-margin-top:150px;}
.video-comments-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:26px;}
.video-comments-heading h2{font-size:clamp(1.45rem,3vw,2.3rem);color:var(--navy);margin-top:6px;}
.video-comments-heading>p{max-width:470px;color:var(--body-text);line-height:1.6;font-size:.92rem;}
.video-comments-layout{display:grid;grid-template-columns:minmax(260px,.78fr) minmax(0,1.22fr);gap:38px;}
.video-comment-form{background:#f4f6fb;border-radius:14px;padding:22px;}
.video-comment-field{margin-bottom:15px;}
.video-comment-field label{display:block;color:var(--navy);font-size:.78rem;font-weight:800;letter-spacing:.03em;margin-bottom:6px;}
.video-comment-field input,.video-comment-field textarea{display:block;width:100%;border:1.5px solid rgba(0,47,115,.18);border-radius:9px;background:#fff;padding:11px 13px;color:var(--ink);font:inherit;box-sizing:border-box;}
.video-comment-field textarea{resize:vertical;min-height:118px;}
.video-comment-field input:focus,.video-comment-field textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(0,47,115,.1);}
.video-comment-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.video-comment-form-status{min-height:1.25em;margin-top:10px;font-size:.82rem;font-weight:700;color:var(--navy);line-height:1.45;}
.video-comment-form-status.error{color:var(--red);}
.video-comment-list-wrap h3{color:var(--navy);font-size:1rem;margin-bottom:14px;}
.video-comment-list{display:grid;gap:12px;}
.video-comment{border:1px solid rgba(0,47,115,.1);padding:13px 16px;background:#f8f9fc;border-radius:10px;box-shadow:inset 0 3px 0 rgba(200,168,106,.45);}
.video-comment-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:5px;}
.video-comment-name{color:var(--navy);font-weight:800;font-size:.9rem;}
.video-comment-date{color:#667085;font-size:.72rem;white-space:nowrap;}
.video-comment p{color:var(--body-text);font-size:.92rem;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;}
.video-comments-empty{color:#667085;font-size:.9rem;line-height:1.55;padding:12px 0;}
.video-library-browser{margin-bottom:56px;}
.video-library-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px;}
.video-library-heading h2{color:var(--navy);font-size:clamp(1.8rem,3.5vw,3.15rem);line-height:1.05;}
.video-search{flex:0 1 320px;}
.video-search input{width:100%;padding:13px 16px;border:1px solid rgba(0,47,115,.2);border-radius:10px;background:#fff;color:var(--ink);font:inherit;box-shadow:0 3px 12px rgba(0,35,80,.04);}
.video-search input:focus{outline:3px solid rgba(11,77,162,.18);border-color:var(--blue);}
.gallery-view-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:12px 0;border-top:1px solid rgba(0,47,115,.12);border-bottom:1px solid rgba(0,47,115,.12);}
.gallery-view-switch{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:#e7ebf3;}
.gallery-view-button{border:0;border-radius:999px;background:transparent;color:var(--navy);padding:10px 17px;font:inherit;font-size:.8rem;font-weight:850;cursor:pointer;}
.gallery-view-button.active{background:var(--navy);color:#fff;box-shadow:0 3px 10px rgba(0,35,80,.16);}
.gallery-view-button:focus-visible{outline:3px solid var(--gold);outline-offset:2px;}
.gallery-order{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.73rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;}
.gallery-order[hidden]{display:none;}
.gallery-order select{border:1px solid rgba(0,47,115,.2);border-radius:8px;background:#fff;color:var(--navy);padding:9px 30px 9px 11px;font:inherit;font-size:.8rem;font-weight:750;text-transform:none;letter-spacing:0;}
.video-filter-row{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:12px;}
.video-filter{border:1px solid rgba(0,47,115,.18);border-radius:999px;padding:9px 15px;background:#fff;color:var(--navy);font:inherit;font-size:.82rem;font-weight:800;cursor:pointer;}
.video-filter:hover,.video-filter.active{background:var(--navy);border-color:var(--navy);color:#fff;}
.video-results-status{min-height:22px;color:var(--muted);font-size:.8rem;margin:0 0 18px;}
.video-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 20px;}
.video-gallery-card{min-width:0;}
.video-gallery-select{display:block;width:100%;padding:0;border:0;background:transparent;text-align:left;color:inherit;font:inherit;cursor:pointer;}
.video-gallery-thumbnail{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;border-radius:12px;background:#071a3f;box-shadow:0 5px 16px rgba(0,35,80,.12);}
.video-gallery-thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform .2s ease,filter .2s ease;}
.video-gallery-play{position:absolute;left:50%;top:50%;width:48px;height:34px;transform:translate(-50%,-50%);border-radius:9px;background:rgba(226,22,42,.92);box-shadow:0 4px 14px rgba(0,0,0,.25);}
.video-gallery-play::after{content:'';position:absolute;left:20px;top:10px;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:11px solid #fff;}
.video-gallery-duration{position:absolute;right:8px;bottom:8px;padding:4px 7px;border-radius:5px;background:rgba(0,0,0,.78);color:#fff;font-family:system-ui,sans-serif;font-size:.7rem;font-weight:700;}
.video-gallery-select:hover .video-gallery-thumbnail img{transform:scale(1.025);filter:brightness(.88);}
.video-gallery-select:focus-visible{outline:3px solid var(--blue);outline-offset:4px;border-radius:12px;}
.video-gallery-card.selected .video-gallery-thumbnail{outline:3px solid var(--red);outline-offset:3px;}
.video-gallery-card-copy{display:block;padding:14px 3px 0;}
.video-gallery-card-category{display:block;color:var(--red);margin-bottom:6px;}
.video-gallery-card-title{display:block;color:var(--navy);font-size:1.04rem;font-weight:800;line-height:1.35;}
.video-load-more-wrap{text-align:center;margin-top:38px;}
.video-load-more-wrap button[hidden]{display:none;}
.video-copyright{padding-top:28px;border-top:1px solid rgba(0,47,115,.12);color:var(--muted);font-size:.78rem;line-height:1.6;text-align:center;}

/* Photo archive */
.photo-gallery-page{background:#f4f6fb;}
.photo-archive-hero{background:linear-gradient(135deg,#001839 0%,#00387b 68%,#0b4da2 100%);color:#fff;padding:76px 0 72px;overflow:hidden;}
.photo-archive-hero-inner{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);align-items:center;gap:64px;}
.photo-archive-intro .kicker{color:var(--gold);}
.photo-archive-intro h1{color:#fff;font-size:clamp(2.65rem,5.8vw,5.25rem);line-height:.94;letter-spacing:-.045em;margin:14px 0 24px;}
.photo-archive-intro>p:not(.kicker){color:rgba(255,255,255,.78);font-size:1.05rem;line-height:1.75;max-width:510px;}
.photo-archive-jump{display:inline-flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font-size:.83rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin-top:28px;padding-bottom:6px;border-bottom:2px solid var(--gold);}
.photo-archive-jump span{color:var(--gold);font-size:1.15rem;}
.photo-archive-collage{display:grid;grid-template-columns:1.35fr .8fr;grid-template-rows:210px 210px;gap:12px;transform:rotate(1.2deg);}
.photo-archive-collage figure{position:relative;overflow:hidden;border-radius:7px;background:#082757;box-shadow:0 22px 48px rgba(0,0,0,.25);}
.photo-archive-collage-wide{grid-row:1 / 3;}
.photo-archive-collage img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s ease;}
.photo-archive-collage figure:hover img{transform:scale(1.035);}
.photo-archive-collage figcaption{position:absolute;left:0;right:0;bottom:0;padding:24px 16px 12px;background:linear-gradient(transparent,rgba(0,0,0,.72));color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;}
.photo-archive{padding:34px 0 88px;background:#f4f6fb;}
.photo-archive-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin:54px 0 28px;}
.photo-archive-heading h2{color:var(--navy);font-size:clamp(2rem,4vw,3.5rem);line-height:1.02;margin-top:7px;scroll-margin-top:190px;}
.photo-archive-heading>p{max-width:500px;color:var(--body-text);font-size:.94rem;line-height:1.7;}
.photo-filter-rail{position:sticky;top:142px;z-index:30;display:flex;gap:8px;overflow-x:auto;padding:10px;margin:0 -10px 12px;background:rgba(244,246,251,.94);backdrop-filter:blur(12px);scrollbar-width:thin;}
.photo-filter{display:flex;align-items:center;gap:8px;flex:0 0 auto;border:1px solid rgba(0,47,115,.15);border-radius:999px;background:#fff;color:var(--navy);padding:9px 13px;font:inherit;font-size:.76rem;font-weight:800;cursor:pointer;box-shadow:0 3px 10px rgba(0,35,80,.035);}
.photo-filter small{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:20px;border-radius:999px;background:#edf1f8;color:#536078;font-size:.65rem;padding:0 5px;}
.photo-filter:hover,.photo-filter.active{background:var(--navy);border-color:var(--navy);color:#fff;}
.photo-filter.active small,.photo-filter:hover small{background:rgba(255,255,255,.16);color:#fff;}
.photo-filter:focus-visible{outline:3px solid var(--gold);outline-offset:2px;}
.photo-filter-loading{font-size:.82rem;color:var(--muted);padding:9px;}
.photo-gallery-status{color:#657087;font-size:.78rem;font-weight:700;margin:0 0 18px;min-height:20px;}
.photo-gallery-grid{columns:4 245px;column-gap:14px;}
.photo-gallery-card{display:block;position:relative;width:100%;padding:0;margin:0 0 14px;border:0;border-radius:10px;overflow:hidden;background:#071a3f;color:#fff;cursor:zoom-in;break-inside:avoid;box-shadow:0 7px 20px rgba(0,35,80,.1);content-visibility:auto;}
.photo-gallery-card img{display:block;width:100%;height:auto;min-height:150px;max-height:620px;object-fit:cover;aspect-ratio:var(--photo-ratio);transition:transform .35s ease,filter .35s ease;}
.photo-gallery-overlay{position:absolute;inset:auto 0 0;display:flex;flex-direction:column;gap:5px;padding:50px 15px 14px;text-align:left;background:linear-gradient(transparent,rgba(0,18,50,.94));transform:translateY(calc(100% - 6px));transition:transform .25s ease;}
.photo-gallery-card:hover .photo-gallery-overlay,.photo-gallery-card:focus-visible .photo-gallery-overlay{transform:translateY(0);}
.photo-gallery-card:hover img,.photo-gallery-card:focus-visible img{transform:scale(1.025);filter:brightness(.82);}
.photo-gallery-card:focus-visible{outline:4px solid var(--gold);outline-offset:3px;}
.photo-gallery-card-category{color:var(--gold);font-size:.61rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase;line-height:1.35;}
.photo-gallery-card-caption{color:#fff;font-size:.84rem;font-weight:800;line-height:1.38;}
.photo-gallery-copyright{margin-top:48px;padding-top:24px;border-top:1px solid rgba(0,47,115,.12);color:#667085;font-size:.76rem;line-height:1.6;text-align:center;}
.photo-gallery-error{column-span:all;background:#fff;border-radius:12px;padding:30px;text-align:center;color:var(--muted);}
body.photo-lightbox-open{overflow:hidden;}
.photo-lightbox{position:fixed;inset:0;z-index:10050;display:grid;grid-template-columns:72px minmax(0,1fr) 72px;align-items:center;background:rgba(0,12,35,.97);padding:30px;}
.photo-lightbox[hidden]{display:none;}
.photo-lightbox-stage{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;max-height:calc(100vh - 60px);}
.photo-lightbox-stage img{display:block;max-width:100%;max-height:calc(100vh - 155px);width:auto;height:auto;object-fit:contain;box-shadow:0 24px 70px rgba(0,0,0,.45);}
.photo-lightbox-stage figcaption{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 24px;width:min(100%,980px);padding-top:16px;color:#fff;}
.photo-lightbox-category{grid-column:1;color:var(--gold);font-size:.64rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
.photo-lightbox-stage strong{grid-column:1;font-size:clamp(.9rem,1.6vw,1.12rem);line-height:1.45;}
.photo-lightbox-count{grid-column:2;grid-row:1 / 3;align-self:center;color:rgba(255,255,255,.58);font-size:.75rem;font-weight:800;}
.photo-lightbox-close,.photo-lightbox-nav{border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:#fff;cursor:pointer;transition:background .15s,border-color .15s;}
.photo-lightbox-close{position:absolute;right:22px;top:20px;width:42px;height:42px;border-radius:50%;font-size:1.65rem;line-height:1;}
.photo-lightbox-nav{width:48px;height:48px;border-radius:50%;font-size:1.25rem;justify-self:center;}
.photo-lightbox-close:hover,.photo-lightbox-nav:hover{background:var(--red);border-color:var(--red);}
.photo-lightbox-close:focus-visible,.photo-lightbox-nav:focus-visible{outline:3px solid var(--gold);outline-offset:3px;}

@media(max-width:900px){
  .photo-archive-hero-inner{grid-template-columns:1fr;gap:42px;}
  .photo-archive-intro>p:not(.kicker){max-width:680px;}
  .photo-archive-collage{grid-template-rows:180px 180px;transform:none;}
  .photo-archive-heading{align-items:flex-start;flex-direction:column;gap:14px;}
  .photo-filter-rail{top:74px;}
  .photo-gallery-grid{columns:3 210px;}
}
@media(max-width:640px){
  .gallery-view-bar{align-items:stretch;flex-direction:column;}
  .gallery-view-switch{display:flex;}
  .gallery-view-button{flex:1;padding-inline:10px;}
  .gallery-order{justify-content:space-between;}
  .photo-archive-hero{padding:54px 0 46px;}
  .photo-archive-collage{grid-template-columns:1fr 1fr;grid-template-rows:230px 150px;}
  .photo-archive-collage-wide{grid-column:1 / 3;grid-row:auto;}
  .photo-archive{padding-top:20px;}
  .photo-archive-heading{margin-top:38px;}
  .photo-gallery-grid{columns:2 145px;column-gap:9px;}
  .photo-gallery-card{margin-bottom:9px;border-radius:7px;}
  .photo-gallery-card img{min-height:105px;}
  .photo-gallery-overlay{position:relative;transform:none;padding:10px 11px 12px;background:#06204a;}
  .photo-gallery-card-category{font-size:.55rem;}
  .photo-gallery-card-caption{font-size:.74rem;}
  .photo-lightbox{grid-template-columns:48px minmax(0,1fr) 48px;padding:60px 8px 24px;}
  .photo-lightbox-nav{width:38px;height:38px;}
  .photo-lightbox-close{right:12px;top:12px;}
  .photo-lightbox-stage img{max-height:calc(100vh - 190px);}
  .photo-lightbox-stage figcaption{padding:13px 8px 0;}
}
@media(hover:none){.photo-gallery-overlay{position:relative;transform:none;padding:10px 12px 12px;background:#06204a;}}
@media(prefers-reduced-motion:reduce){.photo-archive-collage img,.photo-gallery-card img,.photo-gallery-overlay{transition:none;}}

/* LA County Diaspora Directory pilot */
.diaspora-page-main{background:#f3f5f9;padding-bottom:90px;}
.diaspora-context{max-width:820px;margin:0 auto 58px;}
.diaspora-context .section-title{font-size:clamp(2rem,4.2vw,3.4rem);line-height:1.05;margin:8px 0 18px;}
.diaspora-pilot{width:100%;margin-inline:0;padding:56px clamp(22px,4vw,48px);background:#fff;border:1px solid rgba(0,47,115,.12);overflow:hidden;}
.diaspora-pilot-intro{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(360px,1.2fr);gap:68px;align-items:end;margin-bottom:34px;}
.diaspora-pilot-intro h2{color:var(--navy);font-size:clamp(2.15rem,4.8vw,4.4rem);line-height:.98;letter-spacing:-.035em;margin-top:9px;}
.diaspora-pilot-intro>p{color:var(--body-text);font-size:1rem;line-height:1.75;max-width:680px;}
.diaspora-explorer{border:1px solid rgba(0,47,115,.22);background:#fff;box-shadow:0 18px 48px rgba(0,35,80,.12);}
.diaspora-explorer-tools{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:12px 24px;padding:20px 22px;border-bottom:1px solid rgba(0,47,115,.18);background:#f6f7fa;}
.diaspora-search-label{display:grid;gap:7px;color:var(--navy);font-size:.7rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase;}
.diaspora-search-label input{width:100%;min-height:48px;padding:12px 15px;border:1px solid rgba(0,47,115,.22);background:#fff;color:var(--ink);font:inherit;font-size:.93rem;letter-spacing:0;text-transform:none;}
.diaspora-search-label input:focus{outline:3px solid rgba(200,168,106,.5);border-color:var(--navy);}
.diaspora-map-toggle{display:none;min-height:46px;border:1px solid var(--navy);background:#fff;color:var(--navy);padding:10px 16px;font:inherit;font-weight:800;cursor:pointer;}
.diaspora-filters{grid-column:1/-1;display:flex;gap:7px;flex-wrap:wrap;}
.diaspora-filter{min-height:42px;border:1px solid rgba(0,47,115,.2);background:#fff;color:var(--navy);padding:9px 13px;font:inherit;font-size:.75rem;font-weight:850;cursor:pointer;}
.diaspora-filter:hover,.diaspora-filter.active{background:var(--navy);border-color:var(--navy);color:#fff;}
.diaspora-filter:focus-visible,.diaspora-map-toggle:focus-visible,.diaspora-card button:focus-visible,.diaspora-card a:focus-visible,.diaspora-action-list a:focus-visible,.diaspora-action-list button:focus-visible{outline:3px solid var(--gold);outline-offset:3px;}
.diaspora-explorer-body{display:grid;grid-template-columns:minmax(0,59fr) minmax(350px,41fr);min-height:620px;max-height:760px;}
.diaspora-map-pane{position:relative;min-height:620px;background:#dfe6ee;overflow:hidden;}
.diaspora-map{position:absolute;inset:0;}
.diaspora-map-state{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:30px;background:#e8edf2;color:var(--navy);text-align:center;z-index:2;}
.diaspora-map-state strong{font-family:Georgia,serif;font-size:1.35rem;}
.diaspora-map-state span{max-width:390px;color:var(--body-text);font-size:.86rem;line-height:1.55;}
.diaspora-map-state[hidden]{display:none;}
.diaspora-results-pane{display:flex;flex-direction:column;min-height:0;border-left:1px solid rgba(0,47,115,.16);}
.diaspora-results-head{display:flex;align-items:end;justify-content:space-between;gap:14px;padding:21px 22px 17px;border-bottom:1px solid rgba(0,47,115,.12);}
.diaspora-results-label{color:var(--red);font-size:.63rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px;}
.diaspora-results-head h3{color:var(--navy);font-size:1.35rem;}
.diaspora-result-count{color:var(--navy);font-size:.72rem;font-weight:850;white-space:nowrap;}
.diaspora-results{overflow:auto;scrollbar-width:thin;}
.diaspora-card{position:relative;padding:22px 22px 20px 70px;border-bottom:1px solid rgba(0,47,115,.11);background:#fff;transition:background .15s;}
.diaspora-card::before{content:attr(data-index);position:absolute;left:22px;top:22px;color:var(--gold-dark);font-family:Georgia,serif;font-size:1.45rem;font-weight:700;}
.diaspora-card.selected{background:#f2f6fc;box-shadow:inset 4px 0 0 var(--red);}
.diaspora-card-category{color:var(--red);font-size:.62rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;}
.diaspora-card h4{color:var(--navy);font-size:1.04rem;line-height:1.28;margin:5px 0 7px;}
.diaspora-card-location{color:#536078;font-size:.75rem;font-weight:750;margin-bottom:9px;}
.diaspora-card-description{color:var(--body-text);font-size:.84rem;line-height:1.55;}
.diaspora-card-tags{display:flex;gap:5px;flex-wrap:wrap;margin:12px 0;}
.diaspora-card-tags span{border:1px solid rgba(0,47,115,.14);padding:4px 7px;color:#536078;font-size:.63rem;font-weight:750;}
.diaspora-card-access{display:flex;gap:7px;align-items:center;color:#6b4c08;font-size:.69rem;font-weight:850;margin-bottom:12px;}
.diaspora-card-access::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--gold);}
.diaspora-card-actions{display:flex;gap:8px;flex-wrap:wrap;}
.diaspora-card-actions a,.diaspora-card-actions button{display:inline-flex;align-items:center;min-height:44px;border:1px solid var(--navy);background:#fff;color:var(--navy);padding:8px 11px;text-decoration:none;font:inherit;font-size:.7rem;font-weight:850;cursor:pointer;}
.diaspora-card-actions a{background:var(--navy);color:#fff;}
.diaspora-empty{padding:55px 28px;text-align:center;color:var(--body-text);line-height:1.6;}
.diaspora-pilot-note{max-width:880px;margin:20px auto 0;color:#667085;font-size:.76rem;line-height:1.6;text-align:center;}
.diaspora-participate{display:grid;grid-template-columns:minmax(250px,.7fr) minmax(0,1.3fr);gap:64px;margin:88px 0 70px;padding:52px;background:var(--navy);color:#fff;}
.diaspora-participate h2,.diaspora-involved h2{font-size:clamp(2rem,4vw,3.35rem);line-height:1.02;margin:9px 0 18px;}
.diaspora-participate .kicker{color:var(--gold);}
.diaspora-participate-intro>p:last-child,.diaspora-involved>div>p:last-child{color:rgba(255,255,255,.78);line-height:1.7;}
.diaspora-story-form,.diaspora-correction-form{display:grid;grid-template-columns:1fr 1fr;gap:15px;}
.diaspora-story-form label,.diaspora-correction-form label{display:grid;gap:6px;color:#fff;font-size:.76rem;font-weight:800;}
.diaspora-story-form input,.diaspora-story-form select,.diaspora-story-form textarea,.diaspora-correction-form input,.diaspora-correction-form textarea{width:100%;min-height:45px;border:1px solid rgba(255,255,255,.35);background:#fff;color:#111d31;padding:10px 12px;font:inherit;font-size:.86rem;}
.diaspora-story-form textarea,.diaspora-correction-form textarea{resize:vertical;}
.diaspora-form-wide{grid-column:1/-1;}
.diaspora-form-consent{grid-template-columns:22px 1fr!important;align-items:start;line-height:1.5;}
.diaspora-form-consent input{width:20px;min-height:20px;}
.diaspora-form-note{display:inline;margin-left:12px;color:rgba(255,255,255,.65);font-size:.7rem;}
.diaspora-form-status{min-height:1.4em;margin-top:12px;color:#fff;font-size:.78rem;font-weight:750;line-height:1.5;}
.diaspora-form-status[data-state="success"]{color:#d9ffda;}.diaspora-form-status[data-state="failure"]{color:#fff0a8;}
.form-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important;}
.diaspora-involved{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:60px;padding:52px;background:#b7192e;color:#fff;}
.diaspora-action-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-content:start;}
.diaspora-action-list a,.diaspora-action-list button{display:flex;align-items:center;justify-content:center;min-height:54px;border:1px solid rgba(255,255,255,.65);background:transparent;color:#fff;padding:12px;text-align:center;text-decoration:none;font:inherit;font-size:.8rem;font-weight:850;cursor:pointer;}
.diaspora-action-list a:hover,.diaspora-action-list button:hover{background:#fff;color:var(--red);}
.diaspora-correction-form{grid-column:1/-1;margin-top:8px;padding-top:28px;border-top:1px solid rgba(255,255,255,.25);}
.diaspora-correction-form[hidden]{display:none;}
.maplibregl-popup-content{font:700 .78rem/1.35 Georgia,serif;color:#002f73;padding:10px 12px;}
@media(max-width:900px){
  .diaspora-pilot-intro,.diaspora-participate,.diaspora-involved{grid-template-columns:1fr;gap:28px;}
  .diaspora-explorer-body{grid-template-columns:1fr;max-height:none;}
  .diaspora-results-pane{order:1;border-left:0;}
  .diaspora-results{max-height:620px;}
  .diaspora-map-pane{order:2;display:none;min-height:520px;}
  .diaspora-map-pane.open{display:block;}
  .diaspora-map-toggle{display:block;}
  .diaspora-participate,.diaspora-involved{padding:36px 28px;}
}
@media(max-width:600px){
  .diaspora-pilot{padding:52px 16px;}
  .diaspora-explorer-tools{grid-template-columns:1fr auto;padding:15px;}
  .diaspora-search-label{grid-column:1/-1;}
  .diaspora-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;}
  .diaspora-filter{flex:0 0 auto;min-height:44px;}
  .diaspora-results-head{padding-inline:16px;}
  .diaspora-card{padding:19px 16px 18px 54px;}
  .diaspora-card::before{left:16px;top:19px;font-size:1.15rem;}
  .diaspora-map-pane{min-height:430px;}
  .diaspora-story-form,.diaspora-correction-form{grid-template-columns:1fr;}
  .diaspora-form-wide{grid-column:auto;}
  .diaspora-action-list{grid-template-columns:1fr;}
}
@media(prefers-reduced-motion:reduce){.diaspora-card{transition:none;}}

@media(max-width:900px){
  .partner-pathway-grid,.program-list{grid-template-columns:1fr;}
  .video-library-feature{grid-template-columns:1fr;}
  .video-library-feature-copy{padding:6px 8px 14px;}
  .video-comments-layout{grid-template-columns:1fr;gap:28px;}
  .video-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:640px){
  .partner-pathway-card{min-height:0;}
  .program-gallery{grid-template-columns:1fr;grid-auto-rows:260px;}
  .program-photo.portrait{grid-row:span 1;height:420px;}
  .program-cta{align-items:flex-start;flex-direction:column;padding:30px 24px;}
  .video-library-feature{padding:12px;gap:20px;}
  .video-library-heading{align-items:stretch;flex-direction:column;}
  .video-recommendations-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .video-recommendations-grid .video-recommendation:last-child{display:none;}
  .video-comments{padding:22px 18px;margin-bottom:52px;}
  .video-comments-heading{align-items:flex-start;flex-direction:column;gap:12px;}
  .video-search{flex-basis:auto;}
  .video-gallery-grid{grid-template-columns:1fr;}
}

/* Events empty / diaspora placeholder */
.events-notice{background:linear-gradient(135deg,var(--navy-2),var(--navy));color:#fff;border-radius:24px;padding:56px 40px;text-align:center;margin-bottom:60px;}
.events-notice h2{font-size:clamp(1.6rem,3vw,2.6rem);margin-bottom:12px;}
.events-notice p{color:rgba(255,255,255,.82);max-width:560px;margin:0 auto 24px;line-height:1.65;font-size:1rem;}
.diaspora-coming{border:2px dashed rgba(0,47,115,.22);border-radius:24px;padding:52px 40px;text-align:center;margin-bottom:60px;background:linear-gradient(135deg,#f7f9ff,#fff);}

/* v22 responsive */
@media(max-width:720px){
  .form-row{grid-template-columns:1fr;}
  .board-founder{grid-template-columns:1fr;gap:24px;padding:28px;}
  .stat-callout{grid-template-columns:1fr;text-align:center;}
  .checkbox-group{grid-template-columns:1fr;}
  .vol-form{padding:28px 20px;}
  .about-hero,.vol-hero{padding:60px 20px 60px;}
  .events-notice{padding:40px 24px;}
  .diaspora-coming{padding:36px 20px;}
}

/* ═══════════════════════════════════════
   v23 — Footer Redesign + Contact Page
   ═══════════════════════════════════════ */

/* Override old footer-main padding */
.footer .footer-main{padding:0 28px;}

/* 3-column footer grid */
.footer-grid-new{display:grid;grid-template-columns:1.3fr 1fr 1fr 0.75fr;gap:48px;padding:64px 0 48px;}
.footer-logo-link{display:inline-block;margin-bottom:16px;line-height:0;}
.footer-logo-link img{width:72px;height:72px;filter:drop-shadow(0 3px 8px rgba(0,0,0,.3));}
.footer .footer-tagline{color:rgba(255,255,255,.68);line-height:1.65;font-size:.9rem;margin-bottom:12px;max-width:280px;}
.footer .footer-501{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--gold);}
h3.footer-heading{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.18em;color:var(--gold);margin-bottom:18px;padding-bottom:10px;border-bottom:1px solid rgba(248,181,29,.2);}
.footer-nav{display:flex;flex-direction:column;gap:9px;}
.footer .footer-nav a{color:rgba(255,255,255,.62);font-size:.88rem;font-weight:400;transition:color .14s;line-height:1;display:block;}
.footer .footer-nav a:hover{color:#fff;}
.footer address{font-style:normal;}
.footer .footer-address p{color:rgba(255,255,255,.62);line-height:1.65;font-size:.88rem;margin-bottom:4px;}
.footer .footer-ein{font-size:.76rem;color:rgba(255,255,255,.38);margin-bottom:18px;}
.footer-socials{display:flex;gap:10px;margin-bottom:22px;flex-wrap:wrap;}
.footer-social-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:8px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.72);transition:background .14s,color .14s;border:1px solid rgba(255,255,255,.1);}
.footer-social-icon:hover{background:var(--gold);color:var(--navy);border-color:var(--gold);}
.footer-donate-btn{display:inline-flex;}

/* Newsletter bar */
.footer-newsletter-bar{border-top:1px solid rgba(255,255,255,.1);padding:30px 0;}
.footer-newsletter-inner{display:flex;align-items:center;gap:40px;flex-wrap:wrap;}
.footer-newsletter-inner>div{flex:1 1 220px;}
.footer .footer-newsletter-label{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.16em;color:var(--gold);margin-bottom:5px;}
.footer .footer-newsletter-inner>div>p{color:rgba(255,255,255,.52);font-size:.82rem;line-height:1.5;}
.footer-newsletter-form{display:flex;gap:10px;flex:2 1 320px;}
.footer-newsletter-form input[type=email]{flex:1;padding:11px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.07);color:#fff;font-size:.88rem;}
.footer-newsletter-form input[type=email]::placeholder{color:rgba(255,255,255,.35);}
.footer-newsletter-form input[type=email]:focus{outline:none;border-color:var(--gold);}
.footer-newsletter-form button{border:0;border-radius:10px;padding:11px 20px;background:var(--red);color:#fff;font-weight:700;cursor:pointer;white-space:nowrap;font-size:.88rem;}
.footer-newsletter-form button:hover{background:var(--red-2);}

/* Copyright bar */
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:18px 0;}
.footer .footer-bottom p{color:rgba(255,255,255,.35);font-size:.78rem;text-align:center;}
.footer-credit{margin-top:3px;}
.footer-credit a{color:rgba(255,255,255,.35);text-decoration:none;transition:color .15s;}
.footer-credit a:hover{color:rgba(255,255,255,.6);}

/* Footer responsive */
@media(max-width:1060px){.footer-grid-new{grid-template-columns:1fr 1fr;gap:36px;}}
@media(max-width:720px){.footer-grid-new{grid-template-columns:1fr;gap:28px;padding:48px 0 32px;}.footer-newsletter-inner{flex-direction:column;align-items:stretch;gap:14px;}.footer-newsletter-form{flex-direction:column;}}

/* ── Legal / Policy pages ── */
.policy-hero{background:var(--navy);padding:72px 0 56px;}
.policy-hero .kicker{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.2em;color:var(--gold);margin-bottom:10px;}
.policy-hero h1{font-family:'Montserrat',sans-serif;font-size:clamp(2rem,5vw,3rem);font-weight:800;color:#fff;line-height:1.1;margin-bottom:16px;}
.policy-hero p{color:rgba(255,255,255,.78);font-size:1.05rem;line-height:1.65;max-width:680px;}
.policy-meta{display:inline-block;font-size:.78rem;color:rgba(255,255,255,.45);margin-top:8px;letter-spacing:.03em;}
.policy-body{padding:64px 0 96px;}
.policy-content{max-width:780px;}
.policy-toc{background:#f4f6fb;border-radius:12px;padding:22px 28px;margin-bottom:48px;}
.policy-toc-title{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.16em;color:var(--navy);margin-bottom:12px;}
.policy-toc ol{margin:0;padding-left:1.2em;}
.policy-toc li{margin-bottom:4px;}
.policy-toc a{color:var(--navy);font-size:.9rem;text-decoration:none;font-weight:500;}
.policy-toc a:hover{color:var(--red);text-decoration:underline;}
.policy-section{margin-bottom:48px;scroll-margin-top:180px;}
.policy-section h2{font-family:'Montserrat',sans-serif;font-size:1.1rem;font-weight:800;color:var(--navy);margin-bottom:14px;padding-bottom:10px;border-bottom:2px solid var(--gold);}
.policy-section h3{font-family:'Montserrat',sans-serif;font-size:.95rem;font-weight:700;color:var(--navy);margin:20px 0 8px;}
.policy-section p{color:#3a4050;font-size:.97rem;line-height:1.8;margin-bottom:12px;}
.policy-section ul,.policy-section ol{padding-left:1.4em;margin-bottom:14px;}
.policy-section li{color:#3a4050;font-size:.97rem;line-height:1.75;margin-bottom:7px;}
.policy-section a{color:var(--navy);text-decoration:underline;}
.policy-section a:hover{color:var(--red);}
.policy-callout{background:var(--navy);border-radius:14px;padding:28px 32px;margin-top:16px;}
.policy-callout h3{font-family:'Montserrat',sans-serif;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:var(--gold);margin-bottom:8px;}
.policy-callout p{color:rgba(255,255,255,.8);font-size:.94rem;line-height:1.7;margin:0 0 6px;}
.policy-callout p:last-child{margin:0;}
.policy-callout a{color:var(--gold);}
.a11y-feature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin:18px 0;}
.a11y-feature-card{background:#f4f6fb;border-radius:10px;padding:16px 18px;border-left:3px solid var(--gold);}
.a11y-feature-card strong{display:block;font-family:'Montserrat',sans-serif;font-size:.85rem;font-weight:700;color:var(--navy);margin-bottom:4px;}
.a11y-feature-card span{font-size:.85rem;color:#555;line-height:1.5;}
@media(max-width:720px){.policy-body{padding:40px 0 64px;}.policy-callout{padding:22px 20px;}.a11y-feature-grid{grid-template-columns:1fr;}}

/* Contact Page */
.contact-hero{padding:80px 28px 80px;background:linear-gradient(135deg,#001d51,#0b4da2);color:#fff;}
.contact-hero h1{font-size:clamp(2.6rem,5vw,5.5rem);letter-spacing:-.03em;line-height:.95;}
.contact-hero p{font-size:1.15rem;line-height:1.7;color:rgba(255,255,255,.88);max-width:620px;margin-top:14px;}
.contact-form-wrap{max-width:680px;margin:0 auto;}
.contact-form{background:#fff;border:1px solid rgba(0,47,115,.12);border-radius:24px;padding:44px;box-shadow:0 8px 28px rgba(0,35,80,.07);}
.contact-form .form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:18px;}
.contact-form label{font-weight:800;color:var(--navy);font-size:.85rem;letter-spacing:.03em;}
.contact-form input,.contact-form select,.contact-form textarea{border:1.5px solid rgba(0,47,115,.2);border-radius:10px;padding:12px 14px;font-family:var(--serif);font-size:1rem;color:var(--ink);transition:border-color .15s;width:100%;box-sizing:border-box;background:#fafcff;}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(0,47,115,.1);}
.contact-form textarea{min-height:130px;resize:vertical;}
.contact-form select{cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23002f73' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;}
.contact-form-success{display:none;background:#f0fdf4;border:1.5px solid #22c55e;border-radius:12px;padding:18px 22px;color:#166534;font-weight:700;margin-top:14px;line-height:1.5;}
@media(max-width:720px){.contact-form{padding:28px 20px;}.contact-hero{padding:60px 20px;}}

/* ── Board member bio modal (public board page) ── */
#board-bio-overlay{position:fixed;inset:0;background:rgba(0,0,0,.52);z-index:9100;display:none;align-items:center;justify-content:center;padding:20px;}
#board-bio-overlay.open{display:flex;}
.board-bio-modal{background:#fff;border-radius:20px;width:100%;max-width:540px;max-height:88vh;overflow-y:auto;box-shadow:0 24px 64px rgba(0,0,0,.3);}
.board-bio-modal-head{background:#002556;color:#fff;border-radius:20px 20px 0 0;padding:20px 24px;display:flex;align-items:center;gap:12px;}
.board-bio-modal-head h3{font-family:system-ui,-apple-system,sans-serif;font-size:1.15rem;font-weight:800;flex:1;line-height:1.3;}
.board-bio-modal-close{background:rgba(255,255,255,.15);border:none;color:#fff;width:34px;height:34px;border-radius:50%;font-size:1.3rem;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1;transition:background .15s;}
.board-bio-modal-close:hover{background:rgba(255,255,255,.28);}
.board-bio-modal-body{padding:28px 32px;text-align:center;}
.bbm-photo{width:180px;height:180px;object-fit:cover;border-radius:16px;margin:0 auto 18px;display:block;border:3px solid rgba(0,47,115,.12);}
.bbm-title{font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--red);margin-bottom:16px;font-family:system-ui,-apple-system,sans-serif;}
.bbm-bio{color:var(--body-text);line-height:1.75;font-size:1rem;text-align:left;font-family:var(--serif);}
@media(max-width:540px){.board-bio-modal-body{padding:20px 18px;}.bbm-photo{width:140px;height:140px;}}

/* ── News cards: read more link + post-page body ── */
.news-read-more{display:inline-block;margin-top:14px;color:var(--navy);font-weight:700;font-size:.88rem;text-decoration:none;border-bottom:2px solid transparent;transition:border-color .15s;}
.news-read-more:hover{border-bottom-color:var(--navy);}
.post-hero{padding:120px 28px 72px;background:linear-gradient(135deg,var(--navy),#0b4da2);color:#fff;}
.post-hero h1{font-size:clamp(2rem,4.5vw,3.8rem);line-height:1.1;margin-bottom:10px;}
.post-meta-line{font-size:.95rem;color:rgba(255,255,255,.75);font-weight:600;}
.post-body-wrap{max-width:760px;margin:0 auto;}
.post-body-wrap img{width:100%;border-radius:18px;margin-bottom:28px;aspect-ratio:16/9;object-fit:cover;}
.post-body-wrap p{font-size:1.08rem;line-height:1.78;color:var(--body-text);margin-bottom:1.2em;}
.post-back{display:inline-flex;align-items:center;gap:8px;margin-top:40px;color:var(--navy);font-weight:700;font-size:.92rem;text-decoration:none;border-bottom:2px solid transparent;transition:border-color .15s;}
.post-back:hover{border-bottom-color:var(--navy);}

/* ── Events Calendar & System ── */
.ev-calendar-wrap{background:#fff;border-radius:16px;box-shadow:0 6px 20px rgba(0,35,80,.08);padding:20px;margin-bottom:40px;}
.ev-controls{display:flex;align-items:center;gap:10px;margin-bottom:16px;flex-wrap:wrap;}
.ev-cal-period{font-size:1.05rem;font-weight:800;color:var(--navy);flex:1;font-family:var(--serif);min-width:160px;}
.ev-cal-nav{background:none;border:1.5px solid rgba(0,47,115,.2);border-radius:8px;width:36px;height:36px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;color:var(--navy);transition:background .15s,color .15s;flex-shrink:0;}
.ev-cal-nav:hover{background:var(--navy);color:#fff;}
.ev-view-toggle{display:flex;background:#f0f2f7;border-radius:8px;padding:3px;gap:2px;}
.ev-view-btn{padding:6px 16px;border-radius:6px;border:none;background:transparent;font-weight:700;font-size:.82rem;cursor:pointer;font-family:var(--serif);color:var(--muted);transition:background .15s,color .15s;}
.ev-view-btn.active{background:var(--navy);color:#fff;}
/* Month grid */
.ev-month-grid{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid rgba(0,47,115,.14);border-radius:12px;overflow:hidden;}
.ev-cal-dow{background:var(--navy);color:#fff;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:9px 6px;text-align:center;}
.ev-cal-day{min-height:86px;border-right:1px solid rgba(0,47,115,.08);border-bottom:1px solid rgba(0,47,115,.08);padding:6px;background:#fff;overflow:hidden;}
.ev-cal-day:nth-child(7n){border-right:none;}
.ev-cal-day.other-month{background:#f8f9fc;}
.ev-cal-day.today{background:rgba(248,181,29,.07);}
.ev-cal-day-num{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;font-size:.76rem;font-weight:700;color:var(--navy);border-radius:50%;margin-bottom:3px;}
.ev-cal-day.today .ev-cal-day-num{background:var(--gold);color:var(--navy);}
.ev-cal-day.other-month .ev-cal-day-num{color:var(--muted);}
.ev-cal-pill{font-size:.68rem;font-weight:700;background:var(--red);color:#fff;border-radius:4px;padding:2px 5px;margin-bottom:2px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;transition:opacity .12s;}
.ev-cal-pill:hover{opacity:.84;}
/* Week grid */
.ev-week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;}
.ev-week-col{background:#fff;border:1px solid rgba(0,47,115,.1);border-radius:10px;overflow:hidden;}
.ev-week-col.today{border:2px solid var(--gold);}
.ev-week-day-header{background:var(--navy);color:#fff;padding:9px 8px;text-align:center;}
.ev-week-dow{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.07em;color:rgba(255,255,255,.6);}
.ev-week-date{display:block;font-size:1.3rem;font-weight:800;margin-top:1px;}
.ev-week-date.today-num{color:var(--gold);}
.ev-week-event{padding:7px 8px;border-bottom:1px solid rgba(0,47,115,.06);cursor:pointer;transition:background .15s;}
.ev-week-event:hover{background:#f5f7ff;}
.ev-week-event-time{font-size:.66rem;font-weight:700;color:var(--gold);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px;}
.ev-week-event-title{font-size:.76rem;font-weight:700;color:var(--navy);line-height:1.3;}
.ev-week-empty{padding:14px 8px;text-align:center;color:var(--muted);font-size:.74rem;}
/* Events list */
.ev-list{margin-top:16px;}
.ev-section-heading{font-size:clamp(1.5rem,2.5vw,2rem);color:var(--navy);margin-bottom:20px;font-family:var(--serif);}
.ev-card{background:#fff;border:1px solid rgba(0,47,115,.1);border-radius:20px;overflow:hidden;box-shadow:0 6px 20px rgba(0,35,80,.07);margin-bottom:20px;display:grid;grid-template-columns:80px 1fr;transition:box-shadow .22s,transform .22s;}
.ev-card:hover{box-shadow:0 14px 38px rgba(0,35,80,.13);transform:translateY(-2px);}
.ev-card.has-photo{grid-template-columns:220px 80px 1fr;}
.ev-card-past{opacity:.68;}
.ev-card-photo{width:220px;height:100%;min-height:140px;overflow:hidden;}
.ev-card-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.ev-card-date-col{background:var(--navy);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 8px;text-align:center;}
.ev-card-month{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gold);font-weight:700;}
.ev-card-day{font-size:2rem;font-weight:800;line-height:1;}
.ev-card-year{font-size:.65rem;color:rgba(255,255,255,.5);margin-top:2px;}
.ev-card-body{padding:20px 24px;}
.ev-card-title{font-size:1.15rem;font-weight:800;color:var(--navy);margin-bottom:6px;font-family:var(--serif);}
.ev-card-meta{font-size:.82rem;color:var(--muted);margin-bottom:10px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.ev-paid-badge{background:rgba(226,22,42,.1);color:var(--red);font-weight:700;font-size:.72rem;padding:2px 10px;border-radius:999px;}
.ev-free-badge{background:rgba(22,101,52,.1);color:#166534;font-weight:700;font-size:.72rem;padding:2px 10px;border-radius:999px;}
.ev-card-desc{font-size:.92rem;color:var(--body-text);line-height:1.65;margin-bottom:14px;}
.ev-card-actions{display:flex;gap:10px;flex-wrap:wrap;}
.ev-btn-detail{padding:9px 18px;border-radius:8px;border:1.5px solid var(--navy);background:transparent;color:var(--navy);font-weight:700;font-size:.82rem;cursor:pointer;font-family:var(--serif);transition:background .15s,color .15s;}
.ev-btn-detail:hover{background:var(--navy);color:#fff;}
.ev-btn-rsvp{padding:9px 18px;border-radius:8px;border:none;background:var(--red);color:#fff;font-weight:700;font-size:.82rem;cursor:pointer;font-family:var(--serif);transition:opacity .15s;}
.ev-btn-rsvp:hover{opacity:.88;}
.ev-btn-rsvp:disabled{opacity:.48;cursor:not-allowed;}
.ev-btn-ics{padding:9px 18px;border-radius:8px;border:1.5px solid rgba(0,47,115,.18);background:transparent;color:var(--muted);font-weight:600;font-size:.82rem;cursor:pointer;font-family:var(--serif);transition:border-color .15s,color .15s;}
.ev-btn-ics:hover{border-color:var(--navy);color:var(--navy);}
/* Event detail modal */
#ev-detail-overlay{position:fixed;inset:0;background:rgba(0,0,0,.54);z-index:9200;display:none;align-items:center;justify-content:center;padding:20px;overflow-y:auto;}
#ev-detail-overlay.open{display:flex;}
.ev-detail-modal{background:#fff;border-radius:24px;width:100%;max-width:680px;box-shadow:0 28px 72px rgba(0,0,0,.28);margin:auto;overflow:hidden;}
.ev-detail-hero{height:200px;background:linear-gradient(135deg,var(--navy),#0b4da2);position:relative;display:flex;align-items:flex-end;}
.ev-detail-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.ev-detail-hero-grad{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.65),transparent);}
.ev-detail-hero-head{position:relative;z-index:2;padding:18px 28px;width:100%;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;}
.ev-detail-hero-title{color:#fff;font-size:1.45rem;font-weight:800;font-family:var(--serif);flex:1;line-height:1.2;}
.ev-detail-close{background:rgba(255,255,255,.15);backdrop-filter:blur(8px);border:none;color:#fff;width:36px;height:36px;border-radius:50%;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s;}
.ev-detail-close:hover{background:rgba(255,255,255,.3);}
.ev-detail-body{padding:26px 30px 30px;}
.ev-detail-meta-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px;}
.ev-detail-meta-item{background:#f8f9fc;border-radius:10px;padding:11px 14px;}
.ev-detail-meta-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:700;margin-bottom:3px;}
.ev-detail-meta-val{font-size:.88rem;font-weight:700;color:var(--navy);}
.ev-detail-desc{color:var(--body-text);line-height:1.75;margin-bottom:20px;font-size:.98rem;}
.ev-detail-payment-note{background:rgba(226,22,42,.06);border:1.5px solid rgba(226,22,42,.14);border-radius:10px;padding:12px 16px;margin-bottom:18px;font-size:.88rem;color:#991b1b;font-weight:600;}
.ev-detail-actions{display:flex;gap:12px;border-top:1px solid rgba(0,47,115,.1);padding-top:18px;flex-wrap:wrap;}
/* RSVP modal */
#ev-rsvp-overlay{position:fixed;inset:0;background:rgba(0,0,0,.54);z-index:9300;display:none;align-items:center;justify-content:center;padding:20px;}
#ev-rsvp-overlay.open{display:flex;}
.ev-rsvp-modal{background:#fff;border-radius:24px;width:100%;max-width:460px;box-shadow:0 28px 72px rgba(0,0,0,.28);overflow:hidden;}
.ev-rsvp-head{background:var(--navy);color:#fff;padding:16px 22px;display:flex;align-items:center;gap:12px;}
.ev-rsvp-head h3{flex:1;font-size:.95rem;font-weight:800;font-family:var(--serif);line-height:1.3;}
.ev-rsvp-close-btn{background:rgba(255,255,255,.15);border:none;color:#fff;width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0;}
.ev-rsvp-close-btn:hover{background:rgba(255,255,255,.28);}
.ev-rsvp-form-body{padding:22px 26px;}
.ev-rsvp-form-body .rsvp-fg{margin-bottom:14px;}
.ev-rsvp-form-body label{font-weight:700;font-size:.8rem;color:var(--navy);display:block;margin-bottom:6px;letter-spacing:.02em;}
.ev-rsvp-form-body input{width:100%;padding:11px 14px;border:1.5px solid rgba(0,47,115,.2);border-radius:10px;font-size:.92rem;font-family:var(--serif);box-sizing:border-box;outline:none;transition:border-color .15s;}
.ev-rsvp-form-body input:focus{border-color:var(--navy);}
.ev-rsvp-error{color:var(--red);font-size:.82rem;margin-top:8px;display:none;}
.ev-rsvp-submit{width:100%;padding:13px;background:var(--red);color:#fff;border:none;border-radius:10px;font-weight:700;font-size:.97rem;cursor:pointer;font-family:var(--serif);transition:opacity .15s;margin-top:6px;}
.ev-rsvp-submit:hover{opacity:.9;}
.ev-rsvp-submit:disabled{opacity:.5;cursor:not-allowed;}
/* Ticket & QR */
.ev-rsvp-confirm{padding:26px;text-align:center;}
.ev-rsvp-confirm h4{font-size:1.15rem;font-weight:800;color:var(--navy);margin-bottom:8px;font-family:var(--serif);}
.ev-rsvp-confirm p{font-size:.9rem;color:var(--muted);margin-bottom:12px;}
.ticket-card{background:linear-gradient(135deg,var(--navy) 0%,#0b4da2 100%);border-radius:16px;padding:20px 22px;margin:14px 0;text-align:left;position:relative;overflow:hidden;}
.ticket-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--gold);}
.ticket-event-name{color:#fff;font-weight:800;font-size:1rem;margin-left:14px;margin-bottom:4px;font-family:var(--serif);}
.ticket-event-meta{color:rgba(255,255,255,.68);font-size:.8rem;margin-left:14px;margin-bottom:12px;}
.ticket-attendee-name{color:#fff;font-weight:700;font-size:.88rem;margin-left:14px;}
.ticket-id-line{color:var(--gold);font-size:.72rem;font-weight:700;letter-spacing:.12em;font-family:monospace;margin-left:14px;margin-top:3px;}
#qr-code-container{display:inline-block;background:#fff;padding:10px;border-radius:8px;margin:14px auto;}
#qr-code-container img,#qr-code-container canvas{display:block;}
.ev-rsvp-payment-note{background:rgba(226,22,42,.06);border:1.5px solid rgba(226,22,42,.14);border-radius:10px;padding:12px 16px;font-size:.86rem;color:#991b1b;margin:12px 0;text-align:left;}
.ev-rsvp-payment-note a{color:var(--red);text-decoration:underline;}
.ev-download-ticket-btn{display:inline-block;padding:10px 22px;border-radius:8px;border:1.5px solid var(--navy);background:transparent;color:var(--navy);font-weight:700;font-size:.86rem;cursor:pointer;font-family:var(--serif);transition:background .15s,color .15s;margin-top:6px;}
.ev-download-ticket-btn:hover{background:var(--navy);color:#fff;}
/* Responsive events */
@media(max-width:760px){
  .ev-card{grid-template-columns:70px 1fr;}
  .ev-card.has-photo{grid-template-columns:70px 1fr;}
  .ev-card-photo{display:none;}
  .ev-cal-day{min-height:54px;padding:3px;}
  .ev-cal-pill{font-size:.6rem;padding:1px 4px;}
  .ev-month-grid .ev-cal-dow{font-size:.58rem;padding:7px 2px;}
  .ev-week-grid{grid-template-columns:repeat(7,1fr);gap:3px;}
  .ev-week-day-header{padding:6px 3px;}
  .ev-week-dow{font-size:.55rem;}
  .ev-week-date{font-size:1rem;}
  .ev-detail-meta-row{grid-template-columns:1fr;}
  .ev-detail-body{padding:18px 20px;}
  .ev-detail-hero-title{font-size:1.1rem;}
  .ev-card-day{font-size:1.65rem;}
}

/* ── Latest event feature ── */
.events-latest-main{padding:88px 28px 104px;background:linear-gradient(180deg,#fff 0%,#fff8ef 100%)}
.latest-event-heading{display:grid;grid-template-columns:1fr minmax(260px,420px);gap:48px;align-items:end;margin-bottom:34px}
.latest-event-heading h2{font-size:clamp(2rem,4vw,4rem);line-height:1.02;color:var(--navy);max-width:760px}
.latest-event-heading>p{color:var(--muted);font-size:1.05rem;line-height:1.7}
.latest-event-feature{min-height:360px}.latest-event-loading{padding:80px 20px;text-align:center;color:var(--muted)}
.latest-event-card{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(340px,.84fr);background:#fff;border:1px solid var(--soft-line);box-shadow:0 24px 70px rgba(0,30,78,.13);overflow:hidden;border-radius:28px}
.latest-event-visual{position:relative;min-height:410px;background:var(--navy-2)}
.latest-event-visual img{width:100%;height:100%;object-fit:cover}
.latest-event-status{position:absolute;left:22px;top:22px;padding:9px 14px;background:var(--gold);color:var(--navy-2);font-weight:800;font-size:.72rem;letter-spacing:.11em;text-transform:uppercase;border-radius:999px;box-shadow:0 8px 20px rgba(0,0,0,.16)}
.latest-event-copy{padding:44px 42px;align-self:center}
.latest-event-date{color:var(--red);font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;margin-bottom:13px}
.latest-event-copy h3{font-size:clamp(2rem,3vw,3.25rem);line-height:1.02;color:var(--navy);margin-bottom:20px}
.latest-event-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.latest-event-meta span{padding:8px 11px;background:#f2f5fa;color:var(--navy);font-weight:700;font-size:.8rem;border-radius:999px}
.latest-event-address{font-weight:700;color:#3c4860;margin:12px 0}.latest-event-description{color:#414b61;line-height:1.72;font-size:1.02rem}
.latest-event-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.latest-event-actions .btn{min-width:0;min-height:48px;padding:12px 18px;font-size:.9rem}
.latest-event-recap{display:grid;grid-template-columns:.55fr 1.45fr;gap:34px;align-items:center;margin-top:30px;padding:34px;background:var(--navy-2);color:#fff;border-radius:24px}
.latest-event-recap h3{font-size:clamp(1.7rem,2.6vw,2.7rem);margin-bottom:12px}.latest-event-recap p:not(.kicker){color:rgba(255,255,255,.76);line-height:1.65}.latest-event-recap-media{display:grid;grid-template-columns:1.3fr .7fr;gap:14px;align-items:stretch}.latest-event-recap video,.latest-event-recap img{width:100%;height:100%;min-height:260px;object-fit:cover;border-radius:15px;background:#000}.latest-event-recap video{aspect-ratio:16/9}.latest-event-recap img{object-position:center 25%}
.latest-event-recap-media--single{grid-template-columns:1fr}

/* ── Looking Back: past-event flyer archive ── */
.looking-back-section{margin-top:80px;padding-top:66px;border-top:1px solid var(--soft-line)}
.flyer-archive{columns:4 240px;column-gap:22px;margin-top:32px}
.flyer-card{display:block;break-inside:avoid;margin:0 0 22px;background:#fff;border:1px solid var(--soft-line);border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(0,30,78,.08);text-decoration:none;transition:transform .18s ease,box-shadow .18s ease}
.flyer-card:hover,.flyer-card:focus-visible{transform:translateY(-3px);box-shadow:0 18px 44px rgba(0,30,78,.16)}
.flyer-card img{width:100%;height:auto;display:block}
.flyer-card-title{display:block;padding:12px 15px;font-size:.9rem;font-weight:700;line-height:1.4;color:var(--navy)}
@media(max-width:640px){.flyer-archive{columns:2 150px;column-gap:14px}.flyer-card{margin-bottom:14px}}

/* ── In Conversation series ── */
.ic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:26px;margin-top:8px}
.ic-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--soft-line);border-radius:18px;overflow:hidden;text-decoration:none;box-shadow:0 10px 30px rgba(0,30,78,.08);transition:transform .18s ease,box-shadow .18s ease}
.ic-card:hover,.ic-card:focus-visible{transform:translateY(-4px);box-shadow:0 20px 46px rgba(0,30,78,.16)}
.ic-card-media{background:#f2f5fa;line-height:0}
.ic-card-media img{width:100%;height:auto;display:block}
.ic-card-media-video{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:210px;background:linear-gradient(145deg,var(--navy-2),#07458f);line-height:1.2}
.ic-video-badge{width:58px;height:58px;border-radius:50%;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.4rem;padding-left:4px}
.ic-video-label{color:#fff;font-weight:700;font-size:.85rem;letter-spacing:.04em}
.ic-card-body{padding:20px 22px 24px;display:flex;flex-direction:column;gap:9px}
.ic-card-date{color:var(--red);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}
.ic-card-title{font-size:1.16rem;line-height:1.28;color:var(--navy)}
.ic-card-desc{font-size:.92rem;line-height:1.6;color:var(--muted)}
.post-series-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}

/* ── Scholarship and grant legacy ── */
.legacy-section{margin:78px 0 62px;padding-top:66px;border-top:1px solid var(--soft-line)}
.legacy-section-heading{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(340px,1.2fr);gap:54px;align-items:end;margin-bottom:34px}.legacy-section-heading .section-title{margin-bottom:0}.legacy-section-heading>p{font-size:1.12rem;line-height:1.75;color:#485267}
.legacy-poster-feature{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(360px,1.18fr);gap:42px;padding:28px;background:linear-gradient(145deg,var(--navy-2),#07458f);border-radius:28px;color:#fff;box-shadow:var(--shadow)}
.legacy-poster-feature>img{width:100%;height:auto;border-radius:16px;box-shadow:0 18px 40px rgba(0,0,0,.24)}
.legacy-poster-copy{padding:24px 18px 20px}.legacy-poster-copy h3{font-size:clamp(2rem,3.2vw,3.7rem);line-height:1.03;margin:24px 0 18px}.legacy-poster-copy>p{font-size:1.08rem;line-height:1.72;color:rgba(255,255,255,.8)}
.legacy-number{display:block;font-size:clamp(4.8rem,8vw,8rem);font-weight:800;line-height:.8;color:var(--gold)}.legacy-number-label{display:block;max-width:260px;margin-top:13px;text-transform:uppercase;font-size:.72rem;font-weight:800;letter-spacing:.12em;color:rgba(255,255,255,.7)}
.education-grant-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}.education-grant-grid article{padding:20px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);border-radius:15px}.education-grant-grid strong{display:block;color:var(--gold);margin-bottom:7px}.education-grant-grid p{font-size:.9rem;line-height:1.55;color:rgba(255,255,255,.78)}
.recipient-timeline{margin-top:34px;display:grid;gap:1px;background:var(--soft-line);border:1px solid var(--soft-line);border-radius:24px;overflow:hidden}.recipient-year{display:grid;grid-template-columns:140px 1fr;background:#fff;min-height:108px}.recipient-year-label{display:flex;align-items:center;justify-content:center;flex-direction:column;background:#f5f7fb;color:var(--navy);font-size:2rem;font-weight:800}.recipient-year-label small{margin-top:5px;color:var(--red);font-size:.58rem;text-transform:uppercase;letter-spacing:.12em}.recipient-year ul{list-style:none;padding:24px 30px;display:flex;flex-wrap:wrap;gap:11px 24px;align-content:center}.recipient-year li{color:#39435b;font-size:1rem}.recipient-year:not(.recipient-year-schools) li::before{content:'•';color:var(--gold);margin-right:8px}.recipient-year-schools ul{display:grid;grid-template-columns:repeat(3,1fr);align-items:start}.recipient-year-schools li strong,.recipient-year-schools li span{display:block}.recipient-year-schools li strong{color:var(--navy);margin-bottom:5px}.recipient-year-schools li span{color:var(--muted);font-size:.85rem;line-height:1.45}

/* ── Advisory board and honorees ── */
.advisory-section,.honoree-section{margin-top:78px;padding-top:68px;border-top:1px solid var(--soft-line)}
.advisory-heading{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:end;margin-bottom:30px}.advisory-heading .section-title{margin-bottom:0}.advisory-heading>p{font-size:1.05rem;line-height:1.7;color:var(--muted)}
.advisory-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--soft-line);border-radius:24px;overflow:hidden;background:var(--soft-line);gap:1px}.advisory-grid article{background:#fff;padding:24px;min-height:128px}.advisory-grid h3{font-size:1.08rem;color:var(--navy);margin-bottom:9px}.advisory-grid p{font-size:.88rem;line-height:1.55;color:var(--muted)}
.honoree-feature{display:grid;grid-template-columns:minmax(320px,1fr) minmax(340px,1fr);gap:38px;align-items:start}.honoree-feature>img{width:100%;border-radius:20px;box-shadow:var(--shadow)}.honoree-years{background:var(--navy-2);border-radius:22px;overflow:hidden;color:#fff}.honoree-years article{display:grid;grid-template-columns:90px 1fr;gap:20px;padding:25px;border-top:1px solid rgba(255,255,255,.12)}.honoree-years article:first-child{border-top:0}.honoree-years span{color:var(--gold);font-size:1.55rem;font-weight:800}.honoree-years p{color:rgba(255,255,255,.8);line-height:1.6;font-size:.95rem}

/* ── Business directory ── */
.directory-hero{padding:154px 28px 88px;background:linear-gradient(125deg,var(--navy-2) 0%,var(--navy) 64%,#0b4da2 100%);color:#fff}.directory-hero-inner{display:grid;grid-template-columns:1fr auto;gap:44px;align-items:center}.directory-hero h1{font-size:clamp(3.3rem,7vw,6.8rem);line-height:.92;margin-bottom:20px}.directory-hero p:not(.kicker){max-width:760px;font-size:1.2rem;line-height:1.65;color:rgba(255,255,255,.85)}
.directory-hero-mark{width:260px;aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,255,255,.22);display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;box-shadow:inset 0 0 0 16px rgba(255,255,255,.04)}.directory-hero-mark span{color:var(--gold);font-size:3rem;font-weight:800;line-height:1}.directory-hero-mark strong{font-size:.85rem;text-transform:uppercase;letter-spacing:.14em;margin-top:12px;line-height:1.4}
.directory-main{padding:72px 28px 100px;background:#f8f9fc}.directory-tools{margin:28px 0 34px;padding:26px;background:#fff;border:1px solid var(--soft-line);border-radius:20px;box-shadow:0 12px 30px rgba(0,35,80,.06)}.directory-tools>label{display:block;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--navy);margin-bottom:12px}.directory-search-row{display:grid;grid-template-columns:minmax(250px,.9fr) minmax(420px,1.1fr);gap:16px}.directory-search-row input{width:100%;min-height:50px;border:1.5px solid rgba(0,47,115,.2);border-radius:12px;padding:12px 15px;font:inherit}.directory-filters{display:flex;gap:8px;flex-wrap:wrap}.directory-filters button{border:1px solid rgba(0,47,115,.16);background:#f5f7fb;color:var(--navy);padding:9px 12px;border-radius:999px;font-family:inherit;font-weight:700;cursor:pointer}.directory-filters button.active{background:var(--navy);color:#fff;border-color:var(--navy)}.directory-results{margin-top:12px;color:var(--muted);font-size:.82rem}
.business-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.business-card{display:grid;grid-template-columns:180px 1fr;min-height:300px;background:#fff;border:1px solid var(--soft-line);border-radius:22px;overflow:hidden;box-shadow:0 12px 32px rgba(0,35,80,.07);transition:transform .2s ease,box-shadow .2s ease}.business-card:hover{transform:translateY(-3px);box-shadow:0 20px 44px rgba(0,35,80,.12)}.business-card-visual{position:relative;background:linear-gradient(150deg,var(--navy),#0b4da2);min-height:100%}.business-card-visual>img{width:100%;height:100%;object-fit:cover}.business-card-visual>span:first-child{height:100%;display:grid;place-items:center;color:rgba(255,255,255,.9);font-size:5rem;font-weight:800}.business-card-visual>span:last-child{position:absolute;left:10px;bottom:10px;background:var(--gold);color:var(--navy-2);font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:7px 9px;border-radius:999px}.business-card-copy{padding:27px}.business-card-copy h2{color:var(--navy);font-size:1.55rem;line-height:1.1;margin-bottom:12px}.business-card-copy>p{color:var(--muted);font-size:.92rem;line-height:1.6}.business-card-copy address{margin-top:13px;color:#3f4960;font-size:.86rem;line-height:1.5;font-style:normal}.business-contacts{list-style:none;margin-top:16px;display:grid;gap:9px}.business-contacts li{font-size:.83rem}.business-contacts strong{display:block;color:var(--navy);margin-bottom:2px}.business-contacts a{display:block;color:var(--blue);line-height:1.45}.business-secondary-phone{margin-top:10px}.business-website{display:inline-flex;margin-top:18px;color:var(--red);font-weight:800;font-size:.86rem}.directory-contact-cta{margin-top:38px;padding:34px 40px;background:var(--navy-2);color:#fff;border-radius:22px;display:flex;align-items:center;justify-content:space-between;gap:28px}.directory-contact-cta h2{font-size:clamp(1.6rem,2.5vw,2.5rem);margin-bottom:8px}.directory-contact-cta p:not(.kicker){color:rgba(255,255,255,.75)}.directory-empty{grid-column:1/-1;padding:70px 24px;text-align:center;background:#fff;border-radius:22px}.directory-loading{text-align:center;grid-column:1/-1;padding:60px;color:var(--muted)}
.contact-directory-card{max-width:900px;margin:34px auto 0;padding:30px 34px;background:linear-gradient(135deg,var(--navy-2),var(--navy));color:#fff;border-radius:22px;display:flex;align-items:center;justify-content:space-between;gap:28px;box-shadow:var(--shadow)}.contact-directory-card h2{font-size:clamp(1.5rem,2.5vw,2.5rem);margin:4px 0 8px}.contact-directory-card p{color:rgba(255,255,255,.76);line-height:1.55}.contact-directory-arrow{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:var(--navy-2);font-size:1.6rem;font-weight:800;flex:0 0 auto}

/* ── Photo archive hero refinement ── */
.photo-archive-hero-image{position:relative;min-height:430px;border-radius:14px;overflow:hidden;background:#082757;box-shadow:0 24px 56px rgba(0,0,0,.3)}.photo-archive-hero-image img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.photo-archive-hero-image figcaption{position:absolute;left:0;right:0;bottom:0;padding:80px 28px 24px;background:linear-gradient(transparent,rgba(0,20,54,.9));display:flex;align-items:end;justify-content:space-between;gap:22px}.photo-archive-hero-image figcaption span{color:var(--gold);font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem}.photo-archive-hero-image figcaption strong{max-width:430px;text-align:right;font-size:1.1rem;line-height:1.45;color:#fff}

@media(max-width:980px){
  .latest-event-card,.legacy-poster-feature,.honoree-feature{grid-template-columns:1fr}.latest-event-visual{min-height:330px}.latest-event-recap{grid-template-columns:1fr}.legacy-poster-feature>img,.honoree-feature>img{max-width:620px;margin:auto}.advisory-grid{grid-template-columns:repeat(2,1fr)}.business-grid{grid-template-columns:1fr}.directory-search-row{grid-template-columns:1fr}.directory-hero-mark{width:210px}.recipient-year-schools ul{grid-template-columns:1fr}
}
@media(max-width:720px){
  .latest-event-heading,.legacy-section-heading,.advisory-heading,.directory-hero-inner{grid-template-columns:1fr;gap:22px}.latest-event-copy{padding:30px 24px}.latest-event-actions{display:grid}.latest-event-actions .btn{width:100%}.latest-event-recap{padding:25px}.latest-event-recap-media{grid-template-columns:1fr}.latest-event-recap video,.latest-event-recap img{min-height:0}.legacy-poster-feature{padding:16px}.legacy-poster-copy{padding:18px 8px}.education-grant-grid{grid-template-columns:1fr}.recipient-year{grid-template-columns:82px 1fr}.recipient-year-label{font-size:1.35rem}.recipient-year ul{padding:20px 18px}.advisory-grid{grid-template-columns:1fr}.honoree-years article{grid-template-columns:70px 1fr;padding:20px}.directory-hero-mark{display:none}.business-card{grid-template-columns:1fr}.business-card-visual{height:190px}.directory-contact-cta{align-items:flex-start;flex-direction:column;padding:28px}.contact-directory-card{align-items:flex-start}.photo-archive-hero-image{min-height:300px}.photo-archive-hero-image figcaption{display:block}.photo-archive-hero-image figcaption strong{display:block;text-align:left;margin-top:8px}
}

@media(prefers-reduced-motion:reduce){.business-card{transition:none}}
