:root{
  --teal-deep:#1B2E2A;--teal-darker:#11201C;--parchment:#F6EFE2;--paper:#FFFDF8;
  --marigold:#E2A93A;--clay:#C45B3C;--ink:#2B2018;--sage:#7A9189;
  --line:rgba(43,32,24,0.14);--text-muted:rgba(43,32,24,0.78);
  --text-on-dark:#F6EFE2;--text-muted-on-dark:rgba(246,239,226,0.82);
  --display:'Bitter',Georgia,serif;--body:'Work Sans',-apple-system,sans-serif;--mono:'Space Mono',monospace;
}
[data-theme="dark"]{
  --teal-deep:#15241F;--teal-darker:#0C1714;--parchment:#1A2320;--paper:#212B26;
  --marigold:#EAB75C;--clay:#E5916F;--ink:#F3EEE3;--sage:#AEC4B9;
  --line:rgba(243,238,227,0.14);--text-muted:rgba(243,238,227,0.85);
  --text-on-dark:#F3EEE3;--text-muted-on-dark:rgba(243,238,227,0.85);
}
html{transition:background-color .25s ease;scroll-behavior:smooth;-webkit-tap-highlight-color:transparent;}
body{transition:background-color .25s ease,color .25s ease;}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
body{margin:0;font-family:var(--body);color:var(--ink);background:var(--parchment);line-height:1.6;-webkit-font-smoothing:antialiased;}
img,svg{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
h1,h2,h3,h4{font-family:var(--display);margin:0;line-height:1.15;color:var(--ink);}
p{margin:0;color:var(--text-muted);}
ul{margin:0;padding:0;list-style:none;}
button{font-family:inherit;cursor:pointer;border:none;background:none;}
:focus-visible{outline:3px solid var(--marigold);outline-offset:3px;}

/* Custom tap feedback instead of the default mobile blue flash */
a,button,.btn,.gallery-item,.team-card,.program-card,.story-card,.contact-link-btn,.lightbox-img{-webkit-tap-highlight-color:transparent;}
a:active,.btn:active,.contact-link-btn:active,.nav-links a:active{transform:scale(0.97);transition:transform .12s ease;}
.btn-primary:active{box-shadow:0 4px 14px rgba(226,169,58,0.4);}
.gallery-item:active,.team-card:active,.program-card:active,.story-card:active{transform:scale(0.98);box-shadow:0 6px 16px rgba(0,0,0,0.14);transition:transform .12s ease,box-shadow .12s ease;}
.gallery-item:active img{transform:scale(1.06);}
.value-chip:active,.event-row a:active{background:var(--marigold);color:var(--teal-darker);transition:background .12s ease,color .12s ease;}

.wrap{max-width:1120px;margin:0 auto;padding:0 28px;}
.eyebrow{font-family:var(--mono);font-size:0.78rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--clay);}
.section-pad{padding:96px 0;}
@media(max-width:720px){.section-pad{padding:60px 0;}}

.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 26px;border-radius:999px;font-weight:600;font-size:0.95rem;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,color .18s ease;border:1.5px solid transparent;}
.btn-primary{background:var(--marigold);color:var(--teal-darker);box-shadow:0 10px 22px rgba(226,169,58,0.24);}
.btn-primary:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 12px 26px rgba(226,169,58,0.36);}
.btn-dark{border-color:var(--teal-deep);color:var(--teal-deep);background:rgba(255,255,255,0.3);}
[data-theme="dark"] .btn-dark{color:var(--marigold);border-color:var(--marigold);background:rgba(14,25,21,0.28);}
.btn-dark:hover{background:var(--teal-deep);color:#fff;box-shadow:0 10px 22px rgba(27,46,42,0.18);}

/* NAV */
header{position:sticky;top:0;z-index:50;background:var(--teal-deep);border-bottom:1px solid rgba(255,255,255,0.08);}
nav{display:flex;align-items:center;justify-content:space-between;padding:14px 28px;max-width:1120px;margin:0 auto;gap:12px;}
.brand{display:flex;align-items:center;gap:10px;color:#fff;}
.brand-mark{width:38px;height:38px;border-radius:50%;overflow:hidden;flex-shrink:0;background:#fff;}
.brand-mark img{width:100%;height:100%;object-fit:cover;}
.brand-name{font-family:var(--display);font-weight:700;font-size:1.02rem;color:#fff;}
.brand-name span{display:block;font-family:var(--mono);font-size:0.6rem;letter-spacing:0.08em;color:#AEC4B9;text-transform:uppercase;font-weight:400;}
.nav-links{display:flex;align-items:center;gap:16px;flex-wrap:wrap;}
.nav-links a{color:rgba(246,239,226,0.88);font-size:0.86rem;font-weight:500;padding:4px 2px;transition:color .18s ease,transform .18s ease;}
.nav-links a:hover{color:var(--marigold);}
.nav-links a[aria-current="page"]{color:var(--marigold);border-bottom:2px solid var(--marigold);}
.nav-cta{margin-left:2px;}
.nav-toggle{display:none;color:#fff;font-size:1.6rem;transition:transform .2s ease,background-color .2s ease;border-radius:12px;padding:6px 10px;}
.nav-toggle[aria-expanded="true"]{transform:rotate(90deg);background:rgba(255,255,255,0.06);}
.lang-toggle{display:flex;border:1.5px solid rgba(255,255,255,0.4);border-radius:999px;overflow:hidden;}
.lang-btn{padding:7px 10px;font-size:0.75rem;font-weight:700;color:rgba(255,255,255,0.75);background:transparent;font-family:var(--mono);transition:background-color .2s ease,color .2s ease,transform .2s ease;}
.lang-btn:hover{transform:translateY(-1px);}
.lang-btn.active{background:var(--marigold);color:var(--teal-darker);}
.icon-toggle{padding:8px 13px;font-size:1rem;border:1.5px solid rgba(255,255,255,0.4);border-radius:999px;color:#fff;background:transparent;cursor:pointer;transition:transform .2s ease,background-color .2s ease;}
.icon-toggle:hover{transform:translateY(-1px);background:rgba(255,255,255,0.04);}
@media(max-width:960px){
  .nav-links{position:fixed;top:65px;left:16px;right:16px;background:rgba(17,32,28,0.98);border:1px solid rgba(255,255,255,0.08);border-radius:20px;box-shadow:0 18px 40px rgba(0,0,0,0.28);flex-direction:column;align-items:flex-start;padding:14px 18px 18px;gap:14px;transform:translateY(-10px) scale(0.98);opacity:0;pointer-events:none;transition:opacity .22s ease,transform .22s ease;max-height:80vh;overflow-y:auto;}
  .nav-links.open{transform:translateY(0) scale(1);opacity:1;pointer-events:auto;}
  .nav-toggle{display:block;}
  .nav-links a{width:100%;padding:10px 12px;border-radius:12px;}
  .nav-links a:hover{background:rgba(255,255,255,0.04);}
}

/* PAGE HERO (interior pages) */
.page-hero{background:var(--teal-deep);padding:56px 0 44px;}
.page-hero h1{color:#fff;font-size:clamp(1.8rem,3.4vw,2.6rem);margin:12px 0 10px;}
.page-hero p{color:rgba(246,239,226,0.85);max-width:600px;font-size:1rem;}
.breadcrumb{font-family:var(--mono);font-size:0.72rem;color:rgba(246,239,226,0.6);margin-top:14px;}
.breadcrumb a{color:rgba(246,239,226,0.75);}
.breadcrumb a:hover{color:var(--marigold);}

/* HERO (home) */
.hero{padding:64px 0 0;}
.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:center;}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;gap:36px;}}
.hero h1{font-size:clamp(2rem,4vw,3.2rem);margin:14px 0 18px;font-weight:700;}
.hero h1 em{font-style:italic;color:var(--clay);}
.hero .lede{font-size:1.06rem;max-width:480px;margin-bottom:26px;}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;}

.ledger{background:var(--paper);border:1px solid var(--line);border-radius:22px;box-shadow:0 18px 40px rgba(0,0,0,0.08);overflow:hidden;}
.ledger-head{display:flex;justify-content:space-between;align-items:baseline;padding:18px 22px 14px;border-bottom:1px solid var(--line);}
.ledger-head strong{font-family:var(--display);color:var(--ink);}
.ledger-head .num{font-family:var(--mono);font-size:0.72rem;color:var(--sage);}
.ledger-cols{display:grid;grid-template-columns:1fr 1fr 1fr;}
.ledger-col{padding:22px 16px 18px;border-right:1px solid var(--line);}
.ledger-col:last-child{border-right:none;}
.ledger-col .label{font-family:var(--mono);font-size:0.63rem;letter-spacing:0.05em;text-transform:uppercase;color:var(--ink);opacity:0.7;display:block;margin-bottom:7px;}
.ledger-col .figure{font-family:var(--display);font-weight:900;font-size:2rem;color:var(--ink);display:block;}
.ledger-col .note{font-style:italic;font-size:0.74rem;color:var(--sage);margin-top:6px;display:block;}
.ledger-foot{padding:13px 22px 17px;font-size:0.83rem;color:var(--ink);background:rgba(226,169,58,0.1);border-top:1px dashed var(--line);}
.ledger-foot strong{color:var(--clay);}
@media(max-width:520px){.ledger-cols{grid-template-columns:1fr;}.ledger-col{border-right:none;border-bottom:1px solid var(--line);}}

/* COUNTERS */
.counters-strip{background:var(--teal-deep);padding:48px 0;margin-top:64px;}
.counters-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center;}
@media(max-width:780px){.counters-grid{grid-template-columns:repeat(2,1fr);}}
.counter-item{display:flex;flex-direction:column;gap:6px;}
.counter-num{font-family:var(--display);font-weight:900;font-size:clamp(1.9rem,3.8vw,2.7rem);color:var(--marigold);}
.counter-label{font-size:0.82rem;color:rgba(246,239,226,0.82);}

/* SLIDER */
.slider-section{background:var(--teal-darker);}
.slider{position:relative;width:100%;height:420px;overflow:hidden;}
@media(max-width:720px){.slider{height:260px;}}
.slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease;}
.slide img{width:100%;height:100%;object-fit:cover;object-position:center;}
.slide.active{opacity:1;}
.slider-caption{position:absolute;left:28px;bottom:46px;z-index:2;color:#fff;font-family:var(--display);font-weight:700;font-size:clamp(1rem,2.2vw,1.5rem);text-shadow:0 2px 12px rgba(0,0,0,0.6);max-width:560px;}
.slider::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(12,23,20,0.78),transparent 55%);z-index:1;}
.slider-dots{position:absolute;right:28px;bottom:22px;z-index:2;display:flex;gap:8px;}
.slider-dots button{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,0.4);border:none;padding:0;cursor:pointer;}
.slider-dots button.active{background:var(--marigold);}

/* HOME TEASERS */
.teaser-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:38px;}
@media(max-width:880px){.teaser-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:560px){.teaser-grid{grid-template-columns:1fr;}}
.teaser-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:26px 22px;transition:transform .2s ease,box-shadow .2s ease;border-top:3px solid rgba(226,169,58,0.35);}
.teaser-card:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(0,0,0,0.1);}
.teaser-card h3{font-size:1.08rem;margin-bottom:9px;}
.teaser-card p{font-size:0.9rem;margin-bottom:14px;}
.teaser-card a{font-family:var(--mono);font-size:0.76rem;color:var(--clay);text-transform:uppercase;letter-spacing:0.04em;}
.teaser-card a:hover{color:var(--marigold);}

/* ABOUT */
.about{background:var(--paper);}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;}
@media(max-width:880px){.about-grid{grid-template-columns:1fr;gap:28px;}}
.about h2{font-size:clamp(1.7rem,2.8vw,2.2rem);margin:10px 0 16px;}
.about p+p{margin-top:14px;}
.mv-card{background:var(--parchment);border-left:3px solid var(--marigold);border-radius:3px;padding:20px 22px;margin-bottom:18px;}
.mv-card h3{font-size:1rem;margin-bottom:8px;color:var(--clay);}
.mv-card p{font-size:0.91rem;}
.values-grid{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px;}
.value-chip{font-family:var(--mono);font-size:0.78rem;padding:9px 15px;border-radius:999px;background:var(--parchment);border:1px solid var(--line);color:var(--ink);}
.objectives-list{margin-top:26px;display:grid;grid-template-columns:1fr 1fr;gap:14px 28px;}
@media(max-width:780px){.objectives-list{grid-template-columns:1fr;}}
.objective-item{display:flex;gap:10px;font-size:0.91rem;color:var(--text-muted);}
.objective-item .num{font-family:var(--mono);color:var(--clay);font-weight:700;flex-shrink:0;padding-top:1px;}

/* LEADERSHIP */
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:38px;}
@media(max-width:880px){.team-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:500px){.team-grid{grid-template-columns:1fr;}}
.team-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:26px 20px;text-align:center;transition:transform .2s ease,box-shadow .2s ease;}
.team-card:hover{transform:translateY(-3px);box-shadow:0 12px 24px rgba(0,0,0,0.09);}
.team-avatar{width:54px;height:54px;border-radius:50%;background:var(--teal-deep);color:var(--marigold);display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:700;font-size:1.15rem;margin:0 auto 14px;}
.team-card h3{font-size:0.98rem;margin-bottom:5px;}
.team-card .role{font-family:var(--mono);font-size:0.72rem;color:var(--clay);text-transform:uppercase;letter-spacing:0.04em;}
.team-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:38px;max-width:600px;}
@media(max-width:600px){.team-grid-2{grid-template-columns:1fr;}}
.team-photo-wrap{width:120px;height:120px;border-radius:50%;overflow:hidden;margin:0 auto 16px;border:3px solid var(--marigold);}
.team-photo-wrap img{width:100%;height:100%;object-fit:cover;object-position:top;}

/* PROGRAMS */
.programs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px;}
@media(max-width:880px){.programs-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:520px){.programs-grid{grid-template-columns:1fr;}}
.program-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:28px 22px;transition:transform .2s ease,box-shadow .2s ease;border-top:3px solid rgba(196,91,60,0.26);}
.program-card:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(0,0,0,0.1);}
.program-icon{width:42px;height:42px;margin-bottom:14px;color:var(--teal-deep);}
[data-theme="dark"] .program-icon{color:var(--marigold);}
.program-card h3{font-size:1.12rem;margin-bottom:10px;}
.program-card p{font-size:0.9rem;}

/* FEATURED */
.featured-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;margin-top:38px;}
@media(max-width:880px){.featured-grid{grid-template-columns:1fr;}}
.featured-photo img{width:100%;border-radius:4px;box-shadow:0 18px 40px rgba(0,0,0,0.14);cursor:zoom-in;}
.featured-grid p{margin-bottom:14px;}

/* INVOLVED / DONATE */
.involved{background:var(--teal-deep);}
.involved h2,.involved h3{color:#fff;}
.involved .eyebrow{color:var(--marigold);}
.involved p{color:rgba(246,239,226,0.85);}
.involved-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:38px;}
@media(max-width:900px){.involved-grid{grid-template-columns:1fr;}}
.tier-list{display:flex;flex-direction:column;gap:11px;margin:20px 0 24px;}
.tier{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.14);border-radius:3px;padding:14px 17px;}
.tier .tier-name{font-weight:600;font-size:0.93rem;color:#fff;}
.tier .tier-desc{font-size:0.8rem;color:rgba(246,239,226,0.8);margin-top:3px;}
.panel{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.14);border-radius:6px;padding:28px;}
.panel h3{color:#fff;}
.panel p{color:rgba(246,239,226,0.85);}
.contact-link-row{display:flex;flex-direction:column;gap:13px;margin-top:18px;}
.contact-link-btn{display:flex;align-items:center;gap:13px;padding:16px 18px;border-radius:4px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.16);transition:background .2s ease;color:#fff;}
.contact-link-btn:hover{background:rgba(255,255,255,0.13);}
.contact-link-btn .ic{width:22px;height:22px;flex-shrink:0;color:var(--marigold);}
.contact-link-btn strong{display:block;color:#fff;font-size:0.93rem;}
.contact-link-btn span.sub{font-size:0.78rem;color:rgba(246,239,226,0.78);}

/* NEWS */
.events-list{display:flex;flex-direction:column;margin-top:38px;}
.event-row{display:grid;grid-template-columns:130px 1fr auto;gap:20px;align-items:center;padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,0.38);margin-bottom:14px;box-shadow:0 8px 18px rgba(17,32,28,0.03);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
.event-row:hover{transform:translateY(-2px);border-color:rgba(226,169,58,0.42);box-shadow:0 12px 24px rgba(17,32,28,0.06);}
.event-date{font-family:var(--mono);color:var(--clay);font-size:0.82rem;}
.event-title{font-family:var(--display);font-weight:700;font-size:1.04rem;margin-bottom:4px;color:var(--ink);}
.event-loc{font-size:0.82rem;color:var(--sage);}
@media(max-width:640px){.event-row{grid-template-columns:1fr;gap:5px;padding:18px 16px;}}

/* STORIES */
.stories-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:38px;}
@media(max-width:880px){.stories-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:520px){.stories-grid{grid-template-columns:1fr;}}
.story-card{background:var(--paper);border:1px solid var(--line);border-radius:4px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;}
.story-card:hover{transform:translateY(-3px);box-shadow:0 12px 24px rgba(0,0,0,0.09);}
.story-thumb{height:155px;overflow:hidden;}
.story-thumb img{width:100%;height:100%;object-fit:cover;cursor:zoom-in;}
.story-body{padding:17px 19px;}
.story-tag{font-family:var(--mono);font-size:0.64rem;color:var(--clay);text-transform:uppercase;letter-spacing:0.05em;}
.story-body h3{font-size:1rem;margin:7px 0 7px;}
.story-body p{font-size:0.84rem;}

/* GALLERY */
.gallery{background:var(--paper);}
.gallery-filters{display:flex;flex-wrap:wrap;gap:10px;}
.gallery-filter{padding:9px 14px;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;font-family:var(--mono);font-size:0.72rem;letter-spacing:0.04em;text-transform:uppercase;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease;}
.gallery-filter:hover,.gallery-filter.active{background:var(--teal-darker);color:#fff;border-color:var(--teal-darker);}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:38px;}
@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:620px){.gallery-grid{grid-template-columns:repeat(2,1fr);}}
.gallery-item{aspect-ratio:1;border-radius:3px;overflow:hidden;position:relative;background:var(--teal-deep);}
.gallery-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease;cursor:zoom-in;}
.gallery-item:hover img{transform:scale(1.05);}
.gallery-item .cap{position:absolute;left:0;right:0;bottom:0;padding:8px 10px 7px;background:linear-gradient(to top,rgba(0,0,0,0.82),transparent);color:#fff;font-size:0.68rem;font-family:var(--mono);pointer-events:none;}

/* LIGHTBOX */
.lightbox-overlay{position:fixed;inset:0;background:rgba(8,14,12,0.94);z-index:200;display:none;align-items:center;justify-content:center;padding:20px;}
.lightbox-overlay.open{display:flex;}
.lightbox-image{max-width:90vw;max-height:78vh;object-fit:contain;border-radius:3px;box-shadow:0 20px 60px rgba(0,0,0,0.5);}
.lightbox-caption{color:#fff;font-family:var(--mono);font-size:0.82rem;text-align:center;margin-top:16px;max-width:640px;padding:0 20px;}
.lightbox-close,.lightbox-prev,.lightbox-next{position:fixed;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.25);color:#fff;border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;}
.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{background:var(--marigold);color:var(--teal-darker);border-color:var(--marigold);}
.lightbox-close{top:20px;right:20px;}
.lightbox-prev{left:20px;top:50%;transform:translateY(-50%);}
.lightbox-next{right:20px;top:50%;transform:translateY(-50%);}
@media(max-width:640px){.lightbox-prev{left:8px;}.lightbox-next{right:8px;}.lightbox-close{top:10px;right:10px;}}
.lightbox-comments{display:none;width:100%;max-width:640px;margin:14px auto 0;padding:0 20px;max-height:26vh;overflow-y:auto;}
.comment-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;}
.comment-item{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.14);border-radius:3px;padding:8px 11px;font-size:0.82rem;color:#f6efe2;}
.comment-item strong{display:block;font-size:0.78rem;color:var(--marigold);margin-bottom:2px;}
.comment-empty{color:rgba(246,239,226,0.6);font-size:0.8rem;text-align:center;}
.comment-form{display:flex;flex-direction:column;gap:8px;}
.comment-form .comment-name,.comment-form .comment-text{background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.25);border-radius:3px;padding:8px 10px;color:#fff;font-family:var(--body);font-size:0.84rem;}
.comment-form .comment-text{resize:vertical;min-height:44px;}
.comment-form .comment-name::placeholder,.comment-form .comment-text::placeholder{color:rgba(246,239,226,0.55);}
.comment-form .comment-submit{align-self:flex-end;}

/* CONTACT */
.contact{background:var(--teal-darker);}
.contact h2{color:#fff;}
.contact .eyebrow{color:var(--marigold);}
.contact>div>p,.contact>div>.section-head>p{color:rgba(246,239,226,0.85);}
.contact-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:48px;margin-top:34px;}
@media(max-width:880px){.contact-grid{grid-template-columns:1fr;}}
.contact-info p{margin-bottom:15px;font-size:0.94rem;color:#fff;}
.contact-info .label{font-family:var(--mono);font-size:0.68rem;color:var(--marigold);text-transform:uppercase;display:block;margin-bottom:3px;}
.contact-info a{color:#fff;}
.contact-info a:hover{color:var(--marigold);}
.social-row{display:flex;gap:12px;margin-top:20px;}
.social-row a{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,0.25);display:flex;align-items:center;justify-content:center;font-size:0.78rem;font-weight:700;color:#fff;}
.social-row a:hover{background:var(--marigold);color:var(--teal-darker);}

/* FOOTER */
footer{background:var(--teal-darker);border-top:1px solid rgba(255,255,255,0.1);padding:36px 0;}
.footer-tagline{text-align:center;margin-bottom:16px;font-family:var(--display);font-style:italic;color:var(--marigold);font-size:1rem;}
.footer-links{display:flex;flex-wrap:wrap;gap:10px 18px;justify-content:center;margin-bottom:18px;font-size:0.8rem;}
.footer-links a{color:rgba(246,239,226,0.7);}
.footer-links a:hover{color:var(--marigold);}
.footer-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;color:rgba(246,239,226,0.6);font-size:0.8rem;}
.footer-row a{color:rgba(246,239,226,0.6);}
.footer-row a:hover{color:var(--marigold);}

/* REVEAL */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease;}
.reveal.is-visible{opacity:1;transform:translateY(0);}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none;}html{scroll-behavior:auto;}}
.section-head{max-width:640px;}
.section-head h2{margin:10px 0 14px;}
.section-head p{color:var(--text-muted);}
.involved .section-head p,.contact .section-head p{color:rgba(246,239,226,0.85);}

/* MOBILE OVERFLOW FIX: long unbroken strings (emails/phone numbers) were
   forcing grid tracks wider than the screen on narrow devices, causing the
   whole page to scroll horizontally. Allow them to wrap and stop grid
   items from being forced wider than their track. */
html,body{overflow-x:hidden;}
.contact-link-btn strong,.contact-link-btn .sub,.contact-info a{overflow-wrap:anywhere;word-break:break-word;}
.contact-link-btn,.involved-grid>*,.contact-grid>*,.featured-grid>*{min-width:0;}
