:root{--clay:#2A7BAB;--deep:#1F6090;--sand:#D6EEF8;--ochre:#1A5F80;--bark:#1A3245;--cream:#E3F2FA;--ww:#F4F9FD;--text:#1A3245;--muted:#4A7A95;--brd:#B8D8EC}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Source Serif 4',Georgia,serif;background:var(--ww);color:var(--text);overflow-x:hidden}

/* PAGE SYSTEM */
.page{display:none}.page.active{display:block}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:300;display:flex;align-items:center;justify-content:space-between;padding:1rem 4rem;background:rgba(255,252,245,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--brd)}
.logo{cursor:pointer;border:none;background:none;padding:0}.logo-img{display:flex;align-items:center}
.logo em{font-style:italic;font-weight:400;color:var(--bark)}
.nav-links{display:flex;gap:0;list-style:none;align-items:center}
.nav-links li{position:relative}
.nav-links a{display:block;padding:.5rem 1rem;font-size:.78rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);text-decoration:none;cursor:pointer;transition:color .2s;border:none;background:none;font-family:inherit}
.nav-links a:hover,.nav-links a.active{color:var(--clay)}
.nav-links a.active{font-weight:500}
.nav-donate{background:var(--clay)!important;color:white!important;border-radius:2rem;margin-left:.5rem;padding:.45rem 1.3rem!important;transition:background .2s!important}
.nav-donate:hover{background:var(--deep)!important;color:white!important}

/* SHARED */
.eyebrow{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--clay);margin-bottom:.9rem}
.sec-h{font-family:'Playfair Display',serif;font-size:clamp(1.7rem,2.8vw,2.4rem);color:var(--bark);line-height:1.2;margin-bottom:.9rem}
.sec-d{font-size:.95rem;line-height:1.8;color:var(--muted);font-weight:300;max-width:38rem}
.sec{padding:5.5rem 4.5rem}
.btn-p{background:var(--clay);color:white;padding:.8rem 1.8rem;border-radius:.2rem;text-decoration:none;font-family:inherit;font-size:.88rem;letter-spacing:.04em;display:inline-block;transition:background .2s,transform .15s;border:none;cursor:pointer}
.btn-p:hover{background:var(--deep);transform:translateY(-1px)}
.btn-s{border:1.5px solid var(--bark);color:var(--bark);padding:.8rem 1.8rem;border-radius:.2rem;text-decoration:none;font-family:inherit;font-size:.88rem;cursor:pointer;background:none;display:inline-block;transition:all .2s}
.btn-s:hover{background:var(--bark);color:white}
.tag{background:var(--cream);border:1px solid var(--brd);padding:.3rem .8rem;border-radius:1.5rem;font-size:.79rem;color:var(--bark);display:inline-block;transition:all .15s;cursor:default}
.tag:hover{background:var(--clay);color:white;border-color:var(--clay)}
.tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}

/* PAGE HERO */
.page-hero{padding:9rem 4.5rem 5rem;background:var(--cream);border-bottom:1px solid var(--brd)}
.page-hero h1{font-family:'Playfair Display',serif;font-size:clamp(2.2rem,4vw,3.4rem);color:var(--bark);line-height:1.15;margin-bottom:1rem}
.page-hero h1 em{font-style:italic;color:var(--clay)}
.page-hero p{font-size:1rem;line-height:1.8;color:var(--muted);max-width:36rem;font-weight:300}

/* FOOTER */
footer{background:var(--text);color:rgba(255,255,255,.55);padding:3.5rem 4.5rem;display:grid;grid-template-columns:2fr 1fr 1fr;gap:4rem}
.f-brand{font-family:'Playfair Display',serif;font-size:1.15rem;color:white;margin-bottom:.7rem}
.f-desc{font-size:.82rem;line-height:1.7;font-weight:300}
footer h4{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:.9rem}
footer ul{list-style:none}
footer li{margin-bottom:.4rem}
footer a{color:rgba(255,255,255,.55);text-decoration:none;font-size:.84rem;transition:color .2s;cursor:pointer;border:none;background:none;font-family:inherit}
footer a:hover{color:white}
.f-bottom{background:var(--text);border-top:1px solid rgba(255,255,255,.07);padding:1rem 4.5rem;font-size:.72rem;color:rgba(255,255,255,.28);display:flex;justify-content:space-between}

/* ══════════════════════════════════
   HOME
══════════════════════════════════ */
.hero{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;padding-top:68px}
.hero-l{padding:5.5rem 3.5rem 4rem 4.5rem;display:flex;flex-direction:column;justify-content:center}
.h-ey{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--clay);margin-bottom:1.2rem;display:flex;align-items:center;gap:.7rem}
.h-ey::before{content:'';width:2rem;height:1px;background:var(--clay)}
h1.hero-t{font-family:'Playfair Display',serif;font-size:clamp(2.6rem,4.5vw,4rem);line-height:1.1;color:var(--bark);margin-bottom:1.5rem}
h1.hero-t em{font-style:italic;color:var(--clay)}
.hero-d{font-size:1rem;line-height:1.8;color:var(--muted);max-width:30rem;margin-bottom:2.5rem;font-weight:300}
.ctas{display:flex;gap:1rem;flex-wrap:wrap}
.hero-r{background:var(--sand);position:relative;overflow:hidden}
.stats-strip{background:var(--bark);display:grid;grid-template-columns:repeat(4,1fr);border-top:3px solid var(--clay)}
.stat{padding:2.8rem 1.5rem;text-align:center;border-right:1px solid rgba(255,255,255,.08)}
.stat:last-child{border-right:none}
.stat-n{font-family:'Playfair Display',serif;font-size:2.7rem;font-weight:700;color:var(--ochre);line-height:1}
.stat-l{margin-top:.4rem;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.5);line-height:1.5}

/* VIDEO */
.vid-sec{padding:6rem 4.5rem;background:white}
.vid-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:5rem;align-items:center;margin-top:2.5rem}
.vid-wrap{position:relative;border-radius:.6rem;overflow:hidden;aspect-ratio:16/9;background:#1a1a1a;box-shadow:0 20px 60px rgba(0,0,0,.18)}
.vid-wrap iframe{width:100%;height:100%;border:none;display:block;position:absolute;inset:0}
.vid-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(42,123,171,.18),rgba(26,50,69,.3));display:flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .3s}
.vid-overlay.gone{opacity:0;pointer-events:none}
.play-btn{width:72px;height:72px;background:white;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 30px rgba(0,0,0,.25);transition:transform .2s}
.play-btn svg{margin-left:4px}
.vid-overlay:hover .play-btn{transform:scale(1.1)}
.vid-info h3{font-family:'Playfair Display',serif;font-size:1.5rem;color:var(--bark);margin-bottom:.9rem;line-height:1.3}
.vid-info p{font-size:.9rem;color:var(--muted);line-height:1.8;font-weight:300;margin-bottom:1.5rem}
.vquotes{display:flex;flex-direction:column;gap:1rem;margin-top:1.8rem}
.vq{border-left:2px solid var(--clay);padding:.6rem 1rem;background:var(--cream);border-radius:0 .3rem .3rem 0}
.vq p{font-size:.82rem;color:var(--muted);font-style:italic;font-weight:300;line-height:1.6}
.vq span{font-size:.72rem;color:var(--clay);letter-spacing:.05em;text-transform:uppercase;margin-top:.3rem;display:block}

/* PREVIEW */
.preview{background:var(--cream);padding:6rem 4.5rem}
.prev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem}
.prev-card{background:white;border:1px solid var(--brd);border-radius:.45rem;padding:1.8rem;cursor:pointer;display:block;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}
.prev-card::after{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--clay);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.prev-card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(0,0,0,.08)}
.prev-card:hover::after{transform:scaleX(1)}
.prev-ic{font-size:1.8rem;margin-bottom:.7rem}
.prev-t{font-family:'Playfair Display',serif;font-size:1.05rem;color:var(--bark);margin-bottom:.5rem}
.prev-d{font-size:.82rem;color:var(--muted);line-height:1.7;font-weight:300;margin-bottom:1rem}
.prev-link{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--clay)}
.prev-link::after{content:' →'}

/* ══════════════════════════════════
   ABOUT
══════════════════════════════════ */
.about-two{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.big-q{background:var(--clay);color:white;padding:2.5rem;border-radius:.5rem;font-family:'Playfair Display',serif;font-style:italic;font-size:1.2rem;line-height:1.65;position:relative;margin-bottom:1.5rem}
.big-q::before{content:'\201C';font-size:5rem;opacity:.12;position:absolute;top:-.8rem;left:1rem;line-height:1}
.values-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-top:2rem}
.val{background:white;border:1px solid var(--brd);border-radius:.4rem;padding:1.4rem}
.val-ic{font-size:1.5rem;margin-bottom:.5rem}
.val-t{font-family:'Playfair Display',serif;font-size:.95rem;color:var(--bark);margin-bottom:.35rem}
.val-d{font-size:.8rem;color:var(--muted);line-height:1.65;font-weight:300}
.tl-sec{padding:6rem 4.5rem;background:var(--bark);color:white}
.tl-sec .sec-h{color:white}
.tl-sec .eyebrow{color:var(--ochre)}
.tl-list{margin-top:3rem;position:relative;padding-left:2.5rem;border-left:2px solid rgba(255,255,255,.15)}
.tl-item{margin-bottom:2.5rem;position:relative}
.tl-item::before{content:'';width:10px;height:10px;background:var(--clay);border-radius:50%;position:absolute;left:-3.1rem;top:.3rem}
.tl-year{font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--ochre);margin-bottom:.35rem}
.tl-text{font-size:.88rem;color:rgba(255,255,255,.65);line-height:1.75;font-weight:300}
.tl-text strong{color:white;font-weight:500}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}
.tm{background:var(--cream);border:1px solid var(--brd);border-radius:.45rem;padding:2rem;text-align:center}
.tm-av{width:64px;height:64px;background:var(--sand);border-radius:50%;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center;font-size:1.6rem;border:2px solid var(--brd)}
.tm-n{font-family:'Playfair Display',serif;font-size:1rem;color:var(--bark);margin-bottom:.2rem}
.tm-r{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--clay);margin-bottom:.7rem}
.tm-d{font-size:.8rem;color:var(--muted);line-height:1.6;font-weight:300}
.partner-list{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}
.ptag-p{background:white;border:1px solid var(--brd);padding:.55rem 1.1rem;border-radius:.3rem;font-size:.82rem;color:var(--bark)}

/* ══════════════════════════════════
   PROGRAMS
══════════════════════════════════ */
.prog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.prog-card{background:white;border:1px solid var(--brd);border-radius:.5rem;padding:2rem;position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s}
.prog-card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(0,0,0,.09)}
.prog-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--clay);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.prog-card:hover::before{transform:scaleX(1)}
.prog-ic{font-size:2rem;margin-bottom:.8rem}
.prog-t{font-family:'Playfair Display',serif;font-size:1.05rem;color:var(--bark);margin-bottom:.5rem}
.prog-d{font-size:.82rem;color:var(--muted);line-height:1.72;font-weight:300;margin-bottom:1.1rem}
.prog-tags{display:flex;flex-direction:column;gap:.35rem}
.ptag{display:inline-block;background:var(--cream);border:1px solid var(--brd);padding:.22rem .7rem;border-radius:1rem;font-size:.72rem;color:var(--clay);font-weight:500;width:fit-content}
.prog-amd{font-size:.72rem;color:var(--muted);margin-top:.5rem}
.p-callout{background:var(--bark);color:white;padding:5rem 4.5rem;display:grid;grid-template-columns:2fr 1fr;gap:4rem;align-items:center}
.p-callout .sec-h{color:white}
.p-callout .eyebrow{color:var(--ochre)}
.p-callout p{color:rgba(255,255,255,.65);font-size:.92rem;line-height:1.8;font-weight:300;margin-top:.8rem}
.c-nums{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.cn2{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:.4rem;padding:1.3rem;text-align:center}
.cn2-n{font-family:'Playfair Display',serif;font-size:2rem;color:var(--ochre);font-weight:700;line-height:1}
.cn2-l{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.45);margin-top:.3rem}

/* ══════════════════════════════════
   IMPACT
══════════════════════════════════ */
.yr-grid{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--brd);border-radius:.5rem;overflow:hidden;margin-top:3rem}
.yr{border-right:1px solid var(--brd);padding:2rem 1.5rem;background:white}
.yr:last-child{border-right:none}
.yr-y{font-family:'Playfair Display',serif;font-size:1.5rem;color:var(--clay);margin-bottom:1.2rem;padding-bottom:.8rem;border-bottom:1px solid var(--brd)}
.yr-row{margin-bottom:.7rem}
.yr-n{font-size:1.3rem;font-weight:500;color:var(--bark);line-height:1.1}
.yr-l{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}
.yr-bar{height:4px;background:var(--brd);border-radius:2px;margin-top:1.2rem;overflow:hidden}
.yr-bf{height:100%;background:var(--clay);border-radius:2px}
.yr-note{font-size:.68rem;color:var(--muted);margin-top:.4rem;line-height:1.5}
.cat-sec{background:var(--cream)}
.cat-wrap{display:grid;grid-template-columns:1.4fr 1fr;gap:4rem;margin-top:2.5rem}
.cat-row{margin-bottom:1rem}
.cat-hd{display:flex;justify-content:space-between;margin-bottom:.35rem}
.cat-nm{font-size:.83rem;color:var(--bark)}
.cat-vl{font-size:.78rem;color:var(--muted);font-weight:300}
.track{height:6px;background:var(--brd);border-radius:3px;overflow:hidden}
.fill{height:100%;background:var(--clay);border-radius:3px}
.totals{display:flex;flex-direction:column;gap:1rem}
.tot{background:white;border:1px solid var(--brd);border-radius:.4rem;padding:1.4rem}
.tot-n{font-family:'Playfair Display',serif;font-size:2rem;color:var(--clay);font-weight:700;line-height:1}
.tot-l{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-top:.35rem;line-height:1.4}
.tot.acc{background:var(--clay);border-color:var(--clay)}
.tot.acc .tot-n,.tot.acc .tot-l{color:white}
.tot.acc .tot-l{color:rgba(255,255,255,.75)}
.ben-sec{background:var(--bark);color:white;padding:6rem 4.5rem}
.ben-sec .sec-h{color:white}
.ben-sec .eyebrow{color:var(--ochre)}
.ben-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin-top:3rem}
.ben{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:.4rem;padding:1.5rem;text-align:center}
.ben-y{font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--ochre);margin-bottom:.7rem}
.ben-n{font-size:1.6rem;font-weight:500;color:white;line-height:1}
.ben-l{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:rgba(255,255,255,.4);margin-top:.3rem}
.ben-bar{height:3px;background:rgba(255,255,255,.1);border-radius:2px;margin-top:1rem;overflow:hidden}
.ben-bf{height:100%;background:var(--clay);border-radius:2px}

/* ══════════════════════════════════
   WHERE
══════════════════════════════════ */
.where-top{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;margin-top:2.5rem}
.cov-nums{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem}
.cn{background:white;border:1px solid var(--brd);border-radius:.4rem;padding:1.3rem;text-align:center}
.cn-n{font-family:'Playfair Display',serif;font-size:2rem;color:var(--clay);font-weight:700;line-height:1}
.cn-l{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-top:.3rem}
.r-blocks{margin-top:3.5rem;display:flex;flex-direction:column;gap:2rem}
.r-block{background:white;border:1px solid var(--brd);border-radius:.5rem;padding:2.2rem}
.r-hd{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;margin-bottom:1.2rem}
.r-hd h3{font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--bark);margin-bottom:.3rem}
.r-hd p{font-size:.82rem;color:var(--muted);font-weight:300;line-height:1.65;max-width:28rem}
.r-badge{background:var(--clay);color:white;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;padding:.3rem .8rem;border-radius:1rem;white-space:nowrap;flex-shrink:0}
.r-comms{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem}

/* ══════════════════════════════════
   DONATE
══════════════════════════════════ */
.don-layout{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
.don-card{background:white;border:1px solid var(--brd);border-radius:.5rem;padding:2.5rem;margin-bottom:1.5rem}
.don-card h3{font-family:'Playfair Display',serif;font-size:1.15rem;color:var(--bark);margin-bottom:.5rem}
.don-card p{font-size:.85rem;color:var(--muted);line-height:1.75;font-weight:300;margin-bottom:1.5rem}
.don-card .btn-p{width:100%;text-align:center;display:block;padding:.95rem}
.amounts{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin-bottom:1.5rem}
.amt{background:var(--cream);border:1.5px solid var(--brd);padding:.7rem;border-radius:.3rem;text-align:center;cursor:pointer;font-family:inherit;font-size:.88rem;color:var(--bark);transition:all .2s}
.amt:hover,.amt.on{background:var(--clay);color:white;border-color:var(--clay)}
.c-input{width:100%;padding:.75rem 1rem;border:1.5px solid var(--brd);border-radius:.3rem;font-family:inherit;font-size:.9rem;color:var(--bark);margin-bottom:1rem;outline:none}
.c-input:focus{border-color:var(--clay)}
.imp-box{background:var(--cream);border:1px solid var(--brd);border-radius:.5rem;padding:2rem;margin-bottom:2rem}
.imp-box h4{font-family:'Playfair Display',serif;font-size:1rem;color:var(--bark);margin-bottom:1.2rem}
.imp-row{display:flex;align-items:flex-start;gap:1rem;margin-bottom:.9rem}
.imp-dot{width:8px;height:8px;background:var(--clay);border-radius:50%;flex-shrink:0;margin-top:.35rem}
.imp-row p{font-size:.83rem;color:var(--muted);line-height:1.65;font-weight:300}
.imp-row p strong{color:var(--bark);font-weight:500}
.bank-box{background:var(--bark);color:white;border-radius:.5rem;padding:2rem}
.bank-box h3{font-family:'Playfair Display',serif;color:white;font-size:1.05rem;margin-bottom:1rem}
.bank-row{display:flex;justify-content:space-between;padding:.6rem 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:.82rem}
.bank-row:last-child{border-bottom:none}
.b-lbl{color:rgba(255,255,255,.5);font-weight:300}
.b-val{color:white;text-align:right}
.trust-strip{background:var(--cream);border-top:1px solid var(--brd);padding:4rem 4.5rem;display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;text-align:center}
.trust-ic{font-size:2rem;margin-bottom:.7rem}
.trust-t{font-family:'Playfair Display',serif;font-size:1rem;color:var(--bark);margin-bottom:.4rem}
.trust-d{font-size:.8rem;color:var(--muted);line-height:1.65;font-weight:300}

/* ANIMATIONS */
@keyframes up{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.page.active .anim{animation:up .65s ease both}
.d1{animation-delay:.1s}.d2{animation-delay:.22s}.d3{animation-delay:.34s}.d4{animation-delay:.46s}

/* RESPONSIVE */
@media(max-width:960px){
  nav{padding:1rem 1.5rem}
  .nav-links a{padding:.5rem .65rem;font-size:.7rem}
  .hero{grid-template-columns:1fr;min-height:auto}
  .hero-l{padding:5.5rem 1.5rem 3rem}
  .hero-r{display:none}
  .stats-strip{grid-template-columns:repeat(2,1fr)}
  .sec{padding:3.5rem 1.5rem}
  .page-hero{padding:7rem 1.5rem 3.5rem}
  .vid-sec{padding:4rem 1.5rem}
  .vid-layout{grid-template-columns:1fr;gap:2.5rem}
  .preview{padding:4rem 1.5rem}
  .prev-grid{grid-template-columns:1fr}
  .about-two{grid-template-columns:1fr;gap:2.5rem}
  .values-grid{grid-template-columns:1fr}
  .tl-sec{padding:4rem 1.5rem}
  .team-grid{grid-template-columns:1fr}
  .prog-grid{grid-template-columns:1fr}
  .p-callout{grid-template-columns:1fr;padding:4rem 1.5rem}
  .yr-grid{grid-template-columns:repeat(2,1fr)}
  .cat-wrap{grid-template-columns:1fr}
  .ben-grid{grid-template-columns:repeat(2,1fr)}
  .ben-sec{padding:4rem 1.5rem}
  .where-top{grid-template-columns:1fr}
  .r-hd{flex-direction:column;gap:.8rem}
  .don-layout{grid-template-columns:1fr}
  .trust-strip{grid-template-columns:1fr;gap:2rem;padding:3.5rem 1.5rem}
  .acc-gallery{grid-template-columns:repeat(2,1fr)}
  .vid-ph-icon{width:60px;height:60px;font-size:1.3rem}
  .pi-grid{grid-template-columns:1fr}
  .tot-strip{grid-template-columns:1fr 1fr}
  .bp-hd{flex-direction:column;align-items:flex-start;gap:.3rem}
  .bs-grid{grid-template-columns:1fr}
  .staff-grid{grid-template-columns:repeat(2,1fr)}
  .office-sec{padding:4rem 1.5rem}
  .office-grid{grid-template-columns:1fr}
  .focus-sec{padding:4rem 1.5rem}
  .focus-grid{grid-template-columns:1fr}
  .dir-grid{grid-template-columns:1fr}
  .goals-list{grid-template-columns:1fr}
  .pillar-t{font-size:1.3rem}
  .acc-hd{padding:1rem 1.1rem;gap:.8rem}
  .acc-body{padding:.3rem 1.1rem 1.3rem}
  footer{grid-template-columns:1fr;gap:2rem;padding:3rem 1.5rem}
  .f-bottom{padding:1rem 1.5rem;flex-direction:column;gap:.3rem}
}

/* ══════════════════════════════════
   WHERE WE FOCUS (home pillars)
══════════════════════════════════ */
.focus-sec{background:white;padding:6rem 4.5rem}
.focus-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem}
.focus-card{background:var(--cream);border:1px solid var(--brd);border-radius:.5rem;padding:2rem;cursor:pointer;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}
.focus-card::after{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--clay);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.focus-card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(0,0,0,.08)}
.focus-card:hover::after{transform:scaleX(1)}
.focus-rom{font-family:'Playfair Display',serif;font-size:.78rem;color:var(--clay);letter-spacing:.14em}
.focus-ic{font-size:2rem;margin:.5rem 0 .7rem}
.focus-t{font-family:'Playfair Display',serif;font-size:1.08rem;color:var(--bark);margin-bottom:.5rem;line-height:1.3}
.focus-d{font-size:.82rem;color:var(--muted);line-height:1.7;font-weight:300;margin-bottom:1rem}
.focus-link{font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--clay)}
.focus-link::after{content:' \2192'}

/* ══════════════════════════════════
   STRATEGIC DIRECTIVES (about)
══════════════════════════════════ */
.dir-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2.2rem}
.dir-card{background:var(--cream);border:1px solid var(--brd);border-left:3px solid var(--clay);border-radius:.4rem;padding:1.9rem}
.dir-card h3{font-family:'Playfair Display',serif;font-size:1.05rem;color:var(--bark);margin-bottom:.6rem}
.dir-card p{font-size:.85rem;color:var(--muted);line-height:1.78;font-weight:300}
.goals-h{font-family:'Playfair Display',serif;font-size:1.15rem;color:var(--bark);margin:3rem 0 .4rem}
.goals-sub{font-size:.85rem;color:var(--muted);font-weight:300;margin-bottom:1.8rem}
.goals-list{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}
.goal{display:flex;gap:.95rem;align-items:flex-start}
.goal-n{flex-shrink:0;width:1.9rem;height:1.9rem;background:var(--clay);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-family:'Playfair Display',serif;margin-top:.1rem}
.goal-t{font-size:.85rem;color:var(--muted);line-height:1.65;font-weight:300}
.goal-t strong{color:var(--bark);font-weight:500}

/* ══════════════════════════════════
   PROGRAM PILLARS + ACCORDION
══════════════════════════════════ */
.pillar{margin-bottom:3.5rem}
.pillar:last-child{margin-bottom:0}
.pillar-hd{border-bottom:2px solid var(--clay);padding-bottom:1.1rem;margin-bottom:1.6rem}
.pillar-rom{font-family:'Playfair Display',serif;font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;color:var(--clay);margin-bottom:.45rem}
.pillar-t{font-family:'Playfair Display',serif;font-size:1.55rem;color:var(--bark);line-height:1.22}
.pillar-sub{font-size:.9rem;color:var(--muted);font-style:italic;font-weight:300;line-height:1.7;margin-top:.55rem;max-width:48rem}
.acc{background:#fff;border:1px solid var(--brd);border-radius:.45rem;margin-bottom:.8rem;overflow:hidden}
.acc-hd{display:flex;align-items:center;gap:1.1rem;padding:1.2rem 1.5rem;cursor:pointer;transition:background .15s;list-style:none}
.acc-hd::-webkit-details-marker{display:none}
.acc-hd:hover{background:var(--cream)}
.acc-ic{font-size:1.55rem;flex-shrink:0;line-height:1}
.acc-tw{flex:1;min-width:0}
.acc-t{font-family:'Playfair Display',serif;font-size:1.05rem;color:var(--bark);line-height:1.3}
.acc-badge{font-size:.71rem;color:var(--clay);letter-spacing:.03em;margin-top:.28rem;display:inline-block;font-weight:500}
.acc-arrow{flex-shrink:0;color:var(--clay);transition:transform .25s;font-size:.95rem}
.acc[open] .acc-arrow{transform:rotate(180deg)}
.acc-body{padding:.4rem 1.5rem 1.7rem;border-top:1px solid var(--brd)}
.acc-sub{font-size:.7rem;letter-spacing:.11em;text-transform:uppercase;color:var(--clay);margin:1.4rem 0 .55rem;font-weight:600}
.acc-body p{font-size:.86rem;color:var(--muted);line-height:1.82;font-weight:300}
.acc-impact{list-style:none;margin-top:.2rem}
.acc-impact li{position:relative;padding-left:1.35rem;font-size:.86rem;color:var(--muted);line-height:1.7;font-weight:300;margin-bottom:.55rem}
.acc-impact li::before{content:'';position:absolute;left:0;top:.6rem;width:7px;height:7px;background:var(--clay);border-radius:50%}
.acc-impact li strong{color:var(--bark);font-weight:500}
.acc-stats{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.3rem}


/* ══════════════════════════════════
   IMPACT — Pillar summary cards
══════════════════════════════════ */
.pi-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin-top:2.5rem}
.pi-card{background:white;border:1px solid var(--brd);border-radius:.5rem;padding:1.6rem 1.3rem;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s}
.pi-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--clay);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.pi-card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(0,0,0,.08)}
.pi-card:hover::before{transform:scaleX(1)}
.pi-rom{font-family:'Playfair Display',serif;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--clay);margin-bottom:.5rem}
.pi-icon{font-size:1.6rem;margin-bottom:.55rem;line-height:1}
.pi-title{font-family:'Playfair Display',serif;font-size:.92rem;color:var(--bark);line-height:1.32;margin-bottom:1rem;min-height:2.5rem}
.pi-stats{display:flex;gap:1.2rem;margin-bottom:.85rem;flex-wrap:wrap}
.pi-stat{flex:0 0 auto}
.pi-n{font-family:'Playfair Display',serif;font-size:1.35rem;color:var(--clay);font-weight:700;line-height:1}
.pi-l{font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-top:.22rem}
.pi-bar{height:5px;background:var(--brd);border-radius:2px;overflow:hidden;margin-bottom:.65rem}
.pi-bf{height:100%;background:var(--clay);border-radius:2px}
.pi-sub{font-size:.72rem;color:var(--muted);line-height:1.55;font-weight:300;margin-top:auto}

/* ══════════════════════════════════
   IMPACT — Pillar-grouped breakdown
══════════════════════════════════ */
.bp{margin-bottom:2.6rem}
.bp:last-child{margin-bottom:0}
.bp-hd{display:flex;align-items:baseline;gap:1.2rem;padding-bottom:.9rem;border-bottom:2px solid var(--clay);margin-bottom:1.3rem;flex-wrap:wrap}
.bp-rom{font-family:'Playfair Display',serif;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--clay);flex-shrink:0}
.bp-t{font-family:'Playfair Display',serif;font-size:1.18rem;color:var(--bark);flex:1;min-width:14rem;line-height:1.3}
.bp-tot{font-size:.82rem;color:var(--muted);font-weight:300}
.bp-tot strong{color:var(--bark);font-weight:500}
.bp-future{background:var(--cream);border:1px dashed var(--brd);border-radius:.4rem;padding:1.3rem 1.5rem;font-size:.86rem;color:var(--muted);line-height:1.7;font-weight:300}
.bp-future strong{color:var(--bark);font-weight:500}

/* Bottom totals strip */
.tot-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:3.5rem;padding-top:2.5rem;border-top:1px solid var(--brd)}


/* ══════════════════════════════════
   VIDEO PLACEHOLDER (no video yet)
══════════════════════════════════ */
.vid-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--sand) 0%,var(--cream) 100%);color:var(--muted);text-align:center;padding:1.5rem}
.vid-ph-icon{width:78px;height:78px;background:var(--clay);color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.7rem;margin-bottom:1.1rem;box-shadow:0 8px 24px rgba(42,123,171,.28);padding-left:5px}
.vid-ph-t{font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--bark);margin-bottom:.4rem}
.vid-ph-d{font-size:.78rem;color:var(--muted);font-weight:300;max-width:22rem;line-height:1.5}

/* ══════════════════════════════════
   PROJECT IMAGE GALLERY (4–10 slots)
══════════════════════════════════ */
.acc-gallery-wrap{margin-top:1.6rem;padding-top:1.4rem;border-top:1px solid var(--brd)}
.acc-gallery-h{font-size:.7rem;letter-spacing:.11em;text-transform:uppercase;color:var(--clay);margin-bottom:.7rem;font-weight:600}
.acc-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem}
.acc-img{aspect-ratio:4/3;background:var(--cream);border:1px dashed var(--brd);border-radius:.3rem;display:flex;align-items:center;justify-content:center;color:var(--brd);font-size:1.5rem;overflow:hidden;position:relative;transition:border-color .2s}
.acc-img:hover{border-color:var(--clay);border-style:solid}
.acc-img img{width:100%;height:100%;object-fit:cover;display:block}
.acc-img-num{position:absolute;top:.3rem;left:.4rem;font-size:.62rem;color:var(--muted);background:rgba(255,255,255,.6);padding:0 .3rem;border-radius:2px;letter-spacing:.05em}


/* ══════════════════════════════════
   BOARD & STAFF SECTIONS
══════════════════════════════════ */
.bs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:2.2rem}
.bs-card{background:white;border:1px solid var(--brd);border-radius:.5rem;padding:1.8rem 1.5rem;position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s}
.bs-card::after{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--clay);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.bs-card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(0,0,0,.08)}
.bs-card:hover::after{transform:scaleX(1)}
.bs-av{width:3.2rem;height:3.2rem;background:var(--sand);border:2px solid var(--brd);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:1rem}
.bs-name{font-family:'Playfair Display',serif;font-size:1.05rem;color:var(--bark);margin-bottom:.22rem;line-height:1.25}
.bs-role{font-size:.75rem;letter-spacing:.07em;text-transform:uppercase;color:var(--clay);margin-bottom:.7rem;font-weight:500}
.bs-bio{font-size:.82rem;color:var(--muted);line-height:1.75;font-weight:300}
.staff-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;margin-top:2.2rem}
.st-card{background:var(--cream);border:1px solid var(--brd);border-radius:.45rem;padding:1.4rem 1.2rem;text-align:center}
.st-av{width:2.6rem;height:2.6rem;background:white;border:1px solid var(--brd);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;margin:0 auto .8rem}
.st-name{font-family:'Playfair Display',serif;font-size:.92rem;color:var(--bark);margin-bottom:.2rem;line-height:1.3}
.st-role{font-size:.72rem;color:var(--clay);font-weight:500;letter-spacing:.05em;text-transform:uppercase}


/* ══════════════════════════════════
   OFFICE CARDS (Where We Work)
══════════════════════════════════ */
.office-sec{background:white;padding:5rem 4.5rem;border-top:1px solid var(--brd)}
.office-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2.2rem}
.office-card{background:var(--cream);border:1px solid var(--brd);border-radius:.55rem;overflow:hidden;transition:transform .2s,box-shadow .2s}
.office-card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(0,0,0,.09)}
.office-card-top{background:var(--clay);padding:1.8rem 2rem;position:relative}
.office-card-top::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:8px;background:var(--cream);clip-path:ellipse(55% 100% at 50% 100%)}
.office-badge{display:inline-block;background:rgba(255,255,255,.18);color:white;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;padding:.28rem .75rem;border-radius:1rem;margin-bottom:.85rem;font-weight:500}
.office-name{font-family:'Playfair Display',serif;font-size:1.45rem;color:white;line-height:1.2;margin-bottom:.3rem}
.office-region{font-size:.8rem;color:rgba(255,255,255,.75);font-weight:300;letter-spacing:.04em}
.office-body{padding:1.8rem 2rem 2rem}
.office-addr{list-style:none;margin:0 0 1.4rem;padding:0}
.office-addr li{display:flex;gap:.7rem;align-items:flex-start;font-size:.85rem;color:var(--muted);line-height:1.6;font-weight:300;padding:.35rem 0}
.office-addr li:not(:last-child){border-bottom:1px solid var(--brd)}
.office-addr-ic{flex-shrink:0;color:var(--clay);font-size:1rem;margin-top:.05rem}
.office-since{font-size:.76rem;letter-spacing:.07em;text-transform:uppercase;color:var(--clay);font-weight:500;padding-top:1.1rem;border-top:1px solid var(--brd)}


/* ── Language switcher ── */
.lang-switch{display:inline-flex;gap:2px;margin-left:1.25rem;border:1px solid var(--brd);border-radius:999px;padding:3px;background:var(--ww)}
.lang-btn{font-family:inherit;font-size:.72rem;font-weight:600;letter-spacing:.04em;color:var(--muted);background:transparent;border:none;border-radius:999px;padding:.34rem .62rem;cursor:pointer;transition:all .18s ease;line-height:1}
.lang-btn:hover{color:var(--deep)}
.lang-btn.active{background:var(--clay);color:#fff}
@media(max-width:880px){.lang-switch{margin-left:.5rem;padding:2px}.lang-btn{padding:.3rem .5rem;font-size:.68rem}}
