/* TREEI GLOBAL — shared brand tokens, base, header, footer & buttons.
   Loaded on EVERY page so all pages (incl. plugin pages) wear the main theme. */

:root{
  --teal:#025250; --teal-deep:#01302e; --teal-800:#013a38; --teal-500:#0a8a8a; --sky:#53c0e6;
  --sand:#c9b08a; --sand-deep:#b7975f; --brown:#7a5630;
  --paper:#f1f7f8; --paper-2:#e9f1f0; --cream:#f6f2e9; --white:#fff; --ink:#2d2d2d; --muted:#5a6b68; --line:#dbe6e4;
  --ph:#111614;
  --name:"Merriweather",Georgia,serif;
  --disp:"Inter",system-ui,sans-serif;
  --body:"Noto Sans",system-ui,sans-serif;
  --serif:"Source Serif 4",Georgia,serif;
  --wrap:1240px;
  --shadow:0 30px 60px -34px rgba(1,42,40,.42);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
p{margin:0}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
::selection{background:var(--sand);color:var(--teal-deep)}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}
.eyebrow::before{content:"";width:28px;height:1.5px;background:var(--sand-deep)}
.eyebrow.center{justify-content:center}
.eyebrow.on-dark{color:var(--sand)}
.eyebrow.on-dark::before{background:var(--sand)}
.btn .ar{transition:transform .3s cubic-bezier(.2,.7,.3,1)}
.btn-sand{background:var(--sand);color:var(--teal-deep);border-color:var(--sand)}
.btn-line{background:transparent;color:#fff;border-color:rgba(255,255,255,.42)}
.btn-line:hover{background:rgba(255,255,255,.12);border-color:#fff}
.logo-slot{position:relative;width:44px;height:44px;border-radius:50%;overflow:hidden;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;background:var(--white);border:1px solid var(--line)}
.logo-slot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2}
.logo-slot.on-dark{background:rgba(255,255,255,.06);border-color:rgba(201,176,138,.4)}
.topbar{background:var(--teal-deep);color:#9fc4c1;font-size:.78rem}
.topbar .wrap{display:flex;align-items:center;height:38px;gap:16px}
.topbar .reg{font-family:var(--disp);font-size:.62rem;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--sand);display:flex;gap:16px;flex-wrap:wrap}
.topbar .sp{flex:1}
.topbar .socials{display:flex;gap:13px}
.topbar .socials a{color:#9fc4c1;transition:.2s}
.topbar .socials a:hover{color:#fff}
.topbar .socials svg{width:14px;height:14px;display:block}
.head{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.head-in{display:flex;align-items:center;gap:20px;height:74px}
.brand{display:flex;align-items:center;gap:11px}
.brand b{font-family:var(--name);font-weight:900;font-size:.9rem;letter-spacing:.01em;color:var(--teal);line-height:1;display:block}
.brand .wm{font-family:var(--disp);font-size:.52rem;font-weight:600;letter-spacing:.19em;text-transform:uppercase;color:var(--brown);display:block;margin-top:5px}
.nav{display:flex;gap:19px;margin-left:auto;align-items:center}
.nav a.lnk{font-family:var(--disp);font-weight:500;font-size:.86rem;color:var(--ink);position:relative;padding:6px 0;white-space:nowrap}
.nav a.lnk::after{content:"";position:absolute;left:0;bottom:0;height:1.5px;width:0;background:var(--sand-deep);transition:width .28s}
.nav a.lnk:hover::after,.nav a.lnk.active::after{width:100%}
.nav .cta{font-family:var(--disp);font-weight:700;font-size:.82rem;padding:10px 16px;border-radius:5px;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;position:relative}
.nav .cta .dot{width:7px;height:7px;border-radius:50%;display:inline-block}
.cta-live{background:var(--teal);color:#fff;animation:pulseLive 2.2s ease-in-out infinite}
.cta-live .dot{background:var(--sky);animation:blinkDot 1.1s steps(1) infinite}
.cta-live:hover{background:var(--teal-800)}
.cta-donate{background:var(--sand);color:var(--teal-deep);animation:pulseDonate 1.7s ease-in-out infinite}
.cta-donate:hover{background:#d8c3a2}
@keyframes pulseLive{0%,100%{box-shadow:0 0 0 0 rgba(83,192,230,.55)}50%{box-shadow:0 0 0 7px rgba(83,192,230,0)}}
@keyframes pulseDonate{0%,100%{box-shadow:0 0 0 0 rgba(201,176,138,.7);transform:translateY(0)}50%{box-shadow:0 0 0 8px rgba(201,176,138,0);transform:translateY(-1px)}}
@keyframes blinkDot{0%,50%{opacity:1}51%,100%{opacity:.15}}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px;margin-left:auto}
.burger span{width:24px;height:2px;background:var(--teal);display:block;transition:.3s}
.foot{background:#01201e;color:#8fb2b0;padding:70px 0 0}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;padding-bottom:48px;border-bottom:1px solid rgba(201,176,138,.16)}
.foot-brand .logo-slot{width:52px;height:52px;margin-bottom:18px}
.foot-brand b{font-family:var(--name);font-weight:900;color:#fff;font-size:1.1rem;letter-spacing:.01em;display:block}
.foot-brand .wm{font-family:var(--disp);font-weight:600;font-size:.55rem;letter-spacing:.2em;text-transform:uppercase;color:var(--sand);display:block;margin-top:6px}
.foot-brand p{font-size:.92rem;margin:16px 0 0;max-width:34ch;color:#7ea3a0}
.foot-col h4{color:#fff;font-family:var(--disp);font-weight:600;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;margin:0 0 15px}
.foot-col a{display:block;font-size:.92rem;color:#8fb2b0;padding:6px 0;transition:.2s}
.foot-col a:hover{color:var(--sand);padding-left:5px}
.foot-bar{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px 0;flex-wrap:wrap}
.foot-bar .r{font-family:var(--disp);font-weight:500;font-size:.66rem;letter-spacing:.09em;color:#5f817e;display:flex;gap:18px;flex-wrap:wrap}
.foot-bar .c{font-size:.78rem;color:#5f817e}

/* Impact stats row (program pages) — minimalist, accent-coloured */
.tstat-row{display:flex;justify-content:center;align-items:stretch;flex-wrap:wrap;max-width:1200px;margin:0 auto}
.tstat{flex:1;min-width:150px;padding:8px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;border-left:1px solid rgba(255,255,255,.14)}
.tstat:first-child{border-left:0}
.tstat-ic{color:var(--acc-bright,#3fbf8f);line-height:0}
.tstat-ic svg{width:60px;height:60px}
.tstat-ic img{width:60px;height:60px;object-fit:contain}
.tstat-val{display:flex;align-items:baseline;gap:6px;justify-content:center}
.tstat-num{font-family:var(--disp,'Inter'),system-ui,sans-serif;font-weight:800;font-size:30px;line-height:1;color:#fff}
.tstat-unit{font-weight:700;font-size:14px;color:var(--acc-bright,#3fbf8f)}
.tstat-desc{font-size:13.5px;line-height:1.45;color:rgba(255,255,255,.72);max-width:16ch}
@media(max-width:900px){.tstat{flex:0 0 33.33%;border-left:0;padding:18px 14px}}
@media(max-width:560px){.tstat{flex:0 0 50%}}

/* ---- Volunteering / Careers (listing + full detail pages) ---- */
.rl-hero{background:linear-gradient(150deg,var(--teal-deep,#01302e),var(--teal,#025250));color:#dbeae7}
.rl-hero .in{max-width:1080px;margin:0 auto;padding:40px 24px 44px}
.rl-hero .crumb{font:600 12.5px Inter,sans-serif;color:#9fc4c1;margin-bottom:14px}
.rl-hero .crumb a{color:var(--sand,#c9b08a);text-decoration:none}
.rl-hero h1{font-family:var(--disp,'Plus Jakarta Sans'),sans-serif;font-weight:800;font-size:clamp(28px,4.2vw,44px);color:#fff;margin:10px 0 8px;line-height:1.07}
.rl-hero .sub{color:#bcd8d5;font-size:16px;max-width:60ch}
.rl-badges{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}
.rl-bd{font:700 11px Inter,sans-serif;letter-spacing:.04em;text-transform:uppercase;padding:7px 13px;border-radius:999px;background:rgba(255,255,255,.1);color:#ddeeeb;border:1px solid rgba(255,255,255,.16)}
.rl-bd.g{background:var(--sand,#c9b08a);color:#01302e;border:0}
.rl-list{list-style:none;margin:0 0 16px;padding:0}
.rl-list li{position:relative;padding:7px 0 7px 26px;font-size:15px;line-height:1.5;border-bottom:1px solid #f2f5f4;color:#42514c}
.rl-list li::before{content:"";position:absolute;left:2px;top:14px;width:8px;height:8px;border-radius:50%;background:var(--teal,#025250)}
.rl-list-wrap{max-width:1080px;margin:0 auto;padding:34px 24px 60px}
.rl-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.rl-chips button{border:1px solid #d7e0dc;background:#fff;color:#25423e;font:600 12.5px Inter,sans-serif;padding:8px 15px;border-radius:999px;cursor:pointer}
.rl-chips button.on{background:#01302e;color:#fff;border-color:#01302e}
.rl-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:680px){.rl-grid{grid-template-columns:1fr}}
.rl-card{background:#fff;border:1px solid #e7eeeb;border-radius:16px;padding:24px;text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:.16s}
.rl-card:hover{box-shadow:0 22px 44px -30px rgba(1,42,40,.5);transform:translateY(-2px)}
.rl-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.rl-t{font:700 10.5px Inter,sans-serif;letter-spacing:.04em;text-transform:uppercase;padding:5px 11px;border-radius:999px;background:#eef6f0;color:#1c7a44}
.rl-t.s{background:#f3eee2;color:#8a6b2e}.rl-t.b{background:#eaf2f8;color:#2c71a8}
.rl-card h3{font:800 19px Inter,sans-serif;color:#01302e;margin:0 0 7px}
.rl-card p{font-size:14px;color:#556;line-height:1.55;margin:0 0 16px;flex:1}
.rl-card .foot{display:flex;align-items:center;justify-content:space-between}
.rl-card .dl{font-size:12px;color:#8a9a9a}.rl-card .go{font:700 13px Inter,sans-serif;color:var(--teal,#025250)}
.rl-empty{background:#fff;border:1px dashed #cdd8d4;border-radius:14px;padding:34px;text-align:center;color:#6a7a74}
.rl-wrap{max-width:1080px;margin:-22px auto 0;padding:0 24px 30px;display:grid;grid-template-columns:1fr 330px;gap:28px;align-items:start}
@media(max-width:820px){.rl-wrap{grid-template-columns:1fr}}
.rl-main{background:#fff;border:1px solid #e7eeeb;border-radius:18px;padding:32px 34px}
.rl-main h3{font-family:var(--disp,'Plus Jakarta Sans'),sans-serif;font-weight:800;font-size:19px;color:#01302e;margin:24px 0 10px}
.rl-main h3:first-child{margin-top:0}
.rl-main p{font-size:15.5px;line-height:1.72;margin:0 0 14px;color:#42514c}
.rl-side{position:sticky;top:20px;display:flex;flex-direction:column;gap:14px}
.rl-glance{background:#fff;border:1px solid #e7eeeb;border-radius:16px;padding:20px 22px 6px}
.rl-glance .row{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid #f2f5f4;font-size:14px}
.rl-glance .row:last-child{border-bottom:0}
.rl-glance .k{color:#8a9a9a;font-weight:600}.rl-glance .v{color:#12201d;font-weight:700;text-align:right}
.rl-apply-btn{display:block;background:var(--teal,#025250);color:#fff;text-align:center;text-decoration:none;font-weight:700;font-size:15px;padding:14px;border-radius:12px}
.rl-apply-btn:hover{background:#01302e}
.rl-applysec{max-width:1080px;margin:0 auto;padding:6px 24px 60px}
.rl-form{background:#faf7f0;border:1px solid #ece5d6;border-radius:18px;padding:28px 30px}
.rl-form h3{font-family:var(--disp,'Plus Jakarta Sans'),sans-serif;font-weight:800;font-size:20px;color:#01302e;margin:0 0 4px}
.rl-form .lead{color:#6a7a74;font-size:14px;margin:0 0 18px}
.rl-frow{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:13px}.rl-frow>div{flex:1;min-width:200px}
.rl-form label{display:block;font:600 12.5px Inter,sans-serif;color:#01302e;margin:0 0 5px}
.rl-form input,.rl-form select,.rl-form textarea{width:100%;border:1px solid #d9e0dc;border-radius:10px;padding:11px 12px;font:400 14px Inter,sans-serif;background:#fff}
.rl-form button{background:var(--teal,#025250);color:#fff;border:0;border-radius:999px;padding:13px 28px;font:700 14px Inter,sans-serif;cursor:pointer;margin-top:6px}
.rl-ok{background:#e3f6ec;border:1px solid #bfe6cf;color:#1c7a44;padding:12px 16px;border-radius:10px;margin-bottom:16px;font:600 14px Inter,sans-serif}
.rl-err{background:#fdeaea;border:1px solid #e6bcbc;color:#a12b2b;padding:12px 16px;border-radius:10px;margin-bottom:16px;font:600 14px Inter,sans-serif}
