:root{
  color-scheme:light;
  --container:min(1200px, calc(100vw - 2rem));
  --section-gap:clamp(3.5rem, 5vw, 4.75rem);
  --card-pad:1.35rem;
  --button-height:3.15rem;
  --space-1:.25rem;
  --space-2:.5rem;
  --space-3:.75rem;
  --space-4:1rem;
  --space-5:1.5rem;
  --space-6:2rem;
  --space-7:2.75rem;
  --space-8:3.5rem;
  --radius-1:1rem;
  --radius-2:1.5rem;
  --radius-3:2rem;
  --surface-plain:rgba(255,255,255,.92);
  --surface-soft:linear-gradient(180deg, rgba(255,255,255,.96), rgba(250,244,235,.9));
  --surface-spot:rgba(247,240,230,.86);
  --surface-inverse:linear-gradient(160deg, #0d3929, #0d6445 56%, #0f7d57 100%);
  --surface-inverse-soft:rgba(9,43,31,.56);
  --text:#163126;
  --muted:#5b6f64;
  --line:rgba(9,40,28,.1);
  --line-strong:rgba(9,40,28,.18);
  --accent:#c4512e;
  --accent-strong:#a93c1a;
  --success:#0d6c42;
  --success-soft:rgba(13,108,66,.08);
  --gold-soft:#f8e095;
  --shadow-card:0 18px 42px rgba(8,37,26,.08);
  --shadow-soft:0 10px 28px rgba(8,37,26,.06);
  --shadow-strong:0 28px 64px rgba(8,37,26,.16);
}

html[data-theme="dark"]{
  color-scheme:dark;
  --surface-plain:rgba(18,31,26,.92);
  --surface-soft:linear-gradient(180deg, rgba(18,31,26,.96), rgba(10,20,16,.94));
  --surface-spot:rgba(255,255,255,.05);
  --surface-inverse:linear-gradient(160deg, #0b2f22, #114633 58%, #155d42 100%);
  --surface-inverse-soft:rgba(255,255,255,.04);
  --text:#eef4ef;
  --muted:#b6c5bb;
  --line:rgba(255,255,255,.1);
  --line-strong:rgba(255,255,255,.18);
  --accent:#df6d46;
  --accent-strong:#bf5631;
  --success:#2cb778;
  --success-soft:rgba(44,183,120,.12);
  --shadow-card:0 18px 42px rgba(0,0,0,.24);
  --shadow-soft:0 10px 28px rgba(0,0,0,.2);
  --shadow-strong:0 32px 74px rgba(0,0,0,.32);
}

html,
body{
  min-height:100%;
}

body{
  color:var(--text);
  background:
    radial-gradient(circle at 92% 10%, rgba(239,196,25,.16), transparent 18%),
    radial-gradient(circle at 12% 14%, rgba(13,108,66,.1), transparent 20%),
    linear-gradient(180deg, #fffdf9 0%, #f8f1e6 52%, #fffaf2 100%);
}

html[data-theme="dark"] body{
  background:
    radial-gradient(circle at 90% 10%, rgba(239,196,25,.1), transparent 18%),
    radial-gradient(circle at 12% 14%, rgba(44,183,120,.12), transparent 20%),
    linear-gradient(180deg, #07120d 0%, #0a1711 55%, #0d1d16 100%);
}

main{
  display:grid;
  gap:var(--section-gap);
  padding-block:clamp(2rem, 4vw, 3rem) clamp(1.25rem, 3vw, 2rem);
}

.ambient{
  opacity:.48;
}

.ambient--grid{
  opacity:.14;
}

.skip-link{
  position:fixed;
  top:1rem;
  right:1rem;
  z-index:60;
  padding:.8rem 1rem;
  border-radius:1rem;
  background:var(--surface-plain);
  color:var(--text);
  border:1px solid var(--line);
  box-shadow:var(--shadow-soft);
  transform:translateY(-140%);
  transition:transform .2s ease;
}

.skip-link:focus{
  transform:translateY(0);
}

:focus-visible{
  outline:3px solid rgba(196,81,46,.28);
  outline-offset:3px;
}

.section{
  padding:0;
  scroll-margin-top:7rem;
}

.section + .section{
  padding-top:0;
}

.section-heading{
  display:grid;
  grid-template-columns:minmax(0, 1.05fr) minmax(0, .95fr);
  align-items:end;
  gap:var(--space-5);
  margin-bottom:var(--space-6);
}

.section-heading__title{
  max-width:13ch;
  text-wrap:balance;
}

.section-heading__text{
  max-width:36rem;
  color:var(--muted);
}

.eyebrow,
.section-heading__eyebrow{
  background:var(--surface-plain);
  border-color:rgba(196,81,46,.14);
  box-shadow:none;
}

.card{
  border-radius:var(--radius-2);
  border:1px solid var(--line);
  background:var(--surface-soft);
  box-shadow:var(--shadow-card);
}

.card:hover{
  box-shadow:0 22px 50px rgba(8,37,26,.12);
}

html[data-theme="dark"] .card:hover{
  box-shadow:0 22px 50px rgba(0,0,0,.32);
}

.button{
  min-height:var(--button-height);
  padding:.85rem 1.15rem;
  border-radius:1rem;
  font-weight:900;
}

.button--accent{
  background:linear-gradient(135deg, var(--accent), var(--accent-strong));
  box-shadow:0 14px 32px rgba(196,81,46,.18);
}

.button--secondary,
.button--ghost{
  background:var(--surface-plain);
  color:var(--text);
  border-color:var(--line);
}

.button--ghost-light{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.18);
}

.filter-button,
.office-filter-chip,
.office-reset-button,
.player-action{
  min-height:var(--button-height);
  border-radius:1rem;
  font-weight:900;
}

.site-header{
  z-index:30;
}

.header-main{
  padding:.75rem 0 .65rem;
  background:linear-gradient(180deg, rgba(255,249,242,.94), rgba(255,246,238,.72));
  backdrop-filter:blur(18px);
  border-bottom:none;
}

html[data-theme="dark"] .header-main{
  background:linear-gradient(180deg, rgba(8,20,15,.94), rgba(8,20,15,.72));
}

.header-main__shell{
  display:grid;
  gap:var(--space-3);
}

.header-main__inner{
  min-height:auto;
  padding:var(--space-4) var(--space-5);
  border-radius:1.75rem;
  background:var(--surface-plain);
  border:1px solid var(--line);
  box-shadow:var(--shadow-soft);
  flex-wrap:nowrap;
}

.brand__logo-wrap--header{
  background:var(--surface-soft);
  box-shadow:var(--shadow-soft);
}

.brand__text strong{
  color:var(--text);
}

.brand__text span{
  color:var(--muted);
}

.hero-contact h2,
.hero-panel h2,
.donate__copy h2,
.trust-card__title,
.paths-section__intro h3,
.activity-card__title,
.news-card__title,
.donate-contact-card h3{
  margin:0;
  line-height:1.5;
}

.metric-card__label,
.metric-card__value,
.metric-card__text,
.trust-card__title,
.trust-card__text,
.paths-section__intro h3,
.paths-section__intro p,
.support-track__title,
.support-track__text,
.activity-card__title,
.activity-card__text,
.news-card__title,
.news-card__text,
.live-copy__text,
.donate__copy p,
.donate-contact-card p{
  margin:0;
}

.hero-contact h2,
.hero-contact__list a,
.hero-contact__list p,
.hero-contact__list button,
.donate__copy h2,
.donate-contact-card h3,
.activity-card__title,
.news-card__title,
.office-map-studio__top h3,
.office-map-sidebar__title,
.office-map-sidebar__lead h4,
.office-map-sidebar__section h4,
.office-map-sidebar__row-copy strong{
  color:var(--text);
}

.nav-panel{
  flex:1;
  justify-content:space-between;
  gap:var(--space-4);
}

.header-quick-action{
  display:none;
  align-items:center;
  justify-content:center;
  min-height:2.8rem;
  padding:0 .95rem;
  border-radius:999px;
  background:linear-gradient(135deg, var(--accent), var(--accent-strong));
  color:#fff;
  font-size:.84rem;
  font-weight:900;
  box-shadow:0 12px 26px rgba(196,81,46,.18);
  white-space:nowrap;
}

.site-nav{
  gap:.35rem;
  flex:1;
  justify-content:center;
  padding:.35rem;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--surface-spot);
  box-shadow:none;
}

.site-nav a{
  min-height:2.7rem;
  padding:.55rem .95rem;
  border-radius:999px;
  color:var(--muted);
  transition:background .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.site-nav a:hover,
.site-nav a:focus-visible,
.site-nav a.is-current{
  background:var(--surface-plain);
  color:var(--text);
  box-shadow:var(--shadow-soft);
  transform:translateY(-1px);
}

.header-main__actions{
  gap:.65rem;
}

.theme-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:2.9rem;
  padding:0 1rem;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--surface-plain);
  color:var(--text);
  cursor:pointer;
  font:inherit;
  font-size:.86rem;
  font-weight:900;
  box-shadow:var(--shadow-soft);
}

.header-strip{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:var(--space-3);
}

.header-strip__item{
  display:grid;
  gap:.2rem;
  padding:1rem 1.1rem;
  border-radius:1.25rem;
  border:1px solid var(--line);
  background:var(--surface-plain);
  box-shadow:var(--shadow-soft);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.header-strip__label{
  color:var(--muted);
  font-size:.72rem;
  font-weight:800;
}

.header-strip__item strong{
  color:var(--text);
  font-size:.92rem;
  line-height:1.7;
}

.scroll-progress{
  width:var(--container);
  height:4px;
  background:rgba(9,40,28,.08);
}

#scroll-progress-bar{
  display:block;
  width:0;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg, var(--accent), #e7bd2b, var(--success));
}

.hero__grid,
.hero-followup__grid,
.story__layout,
.paths-section__layout,
.news-layout,
.live-shell,
.donate__layout,
.office-map-studio__layout{
  display:grid;
  grid-template-columns:repeat(12, minmax(0, 1fr));
  gap:var(--space-5);
  align-items:stretch;
}

.hero{
  padding-top:.2rem;
}

.hero__main{
  grid-column:span 7;
  display:grid;
  gap:var(--space-5);
  padding:var(--space-6);
  border:1px solid var(--line);
  border-radius:var(--radius-3);
  background:
    radial-gradient(circle at 88% 12%, rgba(196,81,46,.1), transparent 24%),
    radial-gradient(circle at 12% 10%, rgba(239,196,25,.12), transparent 18%),
    var(--surface-soft);
  box-shadow:var(--shadow-card);
}

.hero__main::after{
  opacity:.4;
}

.hero__intro{
  display:flex;
  flex-wrap:wrap;
  gap:.55rem;
}

.hero__signal{
  min-height:2.4rem;
  background:var(--success-soft);
  border-color:rgba(13,108,66,.14);
  color:var(--success);
}

.hero__title{
  margin:0;
  max-width:11ch;
  font-size:clamp(2.7rem, 5vw, 4.7rem);
  line-height:1.18;
  text-wrap:balance;
}

.hero__lead{
  max-width:40rem;
  margin:0;
  color:var(--muted);
  font-size:1.04rem;
  line-height:1.95;
}

.hero__actions{
  margin-top:0;
}

.hero__actions,
.hero-contact__actions,
.hero-panel__actions,
.trust-card__actions,
.live-copy__actions,
.donate-contact-card__actions{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:var(--space-3);
}

.hero-proof{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:var(--space-3);
  grid-auto-rows:1fr;
}

.hero-proof__item{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:.35rem;
  min-height:8.6rem;
  padding:1rem 1.05rem;
  border-radius:1.2rem;
  background:var(--surface-plain);
  border:1px solid var(--line);
}

.hero-proof__label{
  color:var(--muted);
  font-size:.74rem;
  font-weight:800;
}

.hero-proof__value{
  color:var(--text);
  font-size:1.05rem;
  line-height:1.5;
}

.hero-proof__text{
  color:var(--muted);
  font-size:.84rem;
  line-height:1.8;
}

.hero__side{
  grid-column:span 5;
}

.hero__main,
.hero-contact,
.hero-panel,
.hero-metrics-shell,
.office-map-sidebar,
.office-map-canvas{
  height:100%;
}

.hero-contact{
  display:flex;
  flex-direction:column;
  gap:var(--space-4);
  padding:var(--card-pad);
}

.hero-contact__intro,
.hero-contact__note{
  margin:0;
  color:var(--muted);
  font-size:.95rem;
  line-height:1.9;
  font-weight:700;
}

.hero-contact__list li{
  background:var(--surface-spot);
}

.hero-contact__actions,
.hero-panel__actions,
.trust-card__actions,
.live-copy__actions{
  margin-top:auto;
}

.hero-followup{
  padding-top:0;
}

.hero-panel{
  grid-column:span 6;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:var(--space-4);
  color:#fff;
  background:var(--surface-inverse);
}

.hero-panel__header{
  display:grid;
  gap:.75rem;
}

.hero-panel__steps{
  list-style:none;
  display:grid;
  gap:.8rem;
  counter-reset:flow;
}

.hero-panel__steps li{
  counter-increment:flow;
  display:grid;
  grid-template-columns:2.3rem minmax(0, 1fr);
  gap:.8rem;
}

.hero-panel__steps li::before{
  content:counter(flow);
  display:grid;
  place-items:center;
  width:2.3rem;
  height:2.3rem;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  color:#fff;
  font-weight:900;
}

.hero-metrics-shell{
  grid-column:span 6;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:var(--space-4);
}

.hero-metrics__head{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  align-items:start;
  gap:var(--space-3);
}

.hero-metrics__head h3{
  margin:0;
}

.hero-metrics{
  flex:1;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:var(--space-3);
  align-items:stretch;
  grid-auto-rows:1fr;
}

.metric-card{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:.35rem;
  min-height:9.75rem;
  padding:1.2rem;
}

.metric-card__label,
.metric-card__text{
  color:var(--muted);
}

.metric-card__value{
  color:var(--success);
}

.trust-section__grid{
  display:grid;
  grid-template-columns:repeat(12, minmax(0, 1fr));
  gap:var(--space-4);
  align-items:stretch;
}

.trust-card{
  grid-column:span 4;
  display:flex;
  flex-direction:column;
  gap:var(--space-4);
  height:100%;
  padding:var(--card-pad);
}

.trust-card--accent{
  background:
    radial-gradient(circle at top right, rgba(239,196,25,.16), transparent 26%),
    var(--surface-soft);
}

.trust-card__eyebrow{
  display:inline-flex;
  min-height:2rem;
  padding:.42rem .82rem;
  border-radius:999px;
  background:var(--success-soft);
  color:var(--success);
  font-size:.76rem;
  font-weight:900;
}

.trust-card__title{
  margin-top:0;
  color:var(--text);
  font-size:1.32rem;
  line-height:1.5;
}

.trust-card__text{
  margin-top:0;
  color:var(--muted);
  font-size:.95rem;
  line-height:1.9;
  font-weight:700;
}

.trust-card__list,
.paths-section__list,
.live-copy__list{
  display:grid;
  gap:.7rem;
  margin-top:0;
  padding-right:1.1rem;
}

.trust-card__list li,
.paths-section__list li{
  color:var(--text);
  font-size:.9rem;
  line-height:1.8;
  font-weight:800;
}

.trust-partners{
  display:flex;
  flex-wrap:wrap;
  gap:.55rem;
  margin-top:0;
}

.trust-partners span{
  display:inline-flex;
  align-items:center;
  min-height:2rem;
  padding:.35rem .75rem;
  border-radius:999px;
  background:var(--surface-spot);
  border:1px solid var(--line);
  color:var(--text);
  font-size:.78rem;
  font-weight:900;
}

.contact-number{
  display:inline-block;
  direction:ltr;
  unicode-bidi:isolate;
  white-space:nowrap;
  letter-spacing:.04em;
}

.story__panel--dark{
  grid-column:span 5;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:100%;
  padding:var(--space-6);
  border-radius:var(--radius-3);
  background:var(--surface-inverse);
}

.story__panel--dark h3,
.story__panel--dark p,
.story__panel--dark .story__label{
  color:#fff;
}

.story__timeline{
  grid-column:span 7;
  display:grid;
  gap:var(--space-4);
  grid-auto-rows:1fr;
}

.story-step{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:100%;
  padding:1.25rem 1.35rem;
  border-radius:1.35rem;
  border:1px solid var(--line);
  background:var(--surface-soft);
  box-shadow:var(--shadow-soft);
}

.story-cta{
  margin-top:var(--space-5);
  padding:1.2rem 1.35rem;
  border-radius:1.4rem;
  border:1px solid var(--line);
  background:var(--surface-plain);
  box-shadow:var(--shadow-soft);
}

.paths-section__intro{
  grid-column:span 5;
  display:flex;
  flex-direction:column;
  gap:var(--space-4);
  height:100%;
  padding:var(--card-pad);
}

.paths-section__intro h3{
  margin-top:0;
  color:var(--text);
  font-size:1.32rem;
  line-height:1.5;
}

.paths-section__intro p{
  margin-top:0;
  color:var(--muted);
  font-size:.95rem;
  line-height:1.9;
  font-weight:700;
}

.paths-section__note{
  color:var(--text);
  font-weight:900;
}

.support-tracks{
  grid-column:span 7;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:var(--space-4);
  grid-auto-rows:1fr;
}

.support-track{
  display:flex;
  flex-direction:column;
  gap:var(--space-3);
  height:100%;
  padding:1.3rem;
}

.support-track__meter{
  margin-top:auto;
}

.activities-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:var(--space-4);
  grid-auto-rows:1fr;
}

.activity-card{
  display:flex;
  flex-direction:column;
  gap:var(--space-3);
  height:100%;
  padding:1.3rem;
  border:1px solid var(--line);
  border-radius:var(--radius-2);
  background:var(--surface-soft);
  box-shadow:var(--shadow-card);
}

.activity-card__head,
.activity-card__text{
  color:var(--muted);
}

.activity-card__meta{
  background:var(--surface-spot);
  border-color:var(--line);
  color:var(--text);
}

.news-filters{
  margin-bottom:var(--space-4);
}

.filter-button{
  min-height:2.95rem;
  background:var(--surface-plain);
  border-color:var(--line);
  color:var(--text);
}

.filter-button:hover,
.filter-button.is-active{
  background:var(--text);
  color:#fff;
}

.news-featured{
  grid-column:span 5;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  min-height:100%;
  padding:var(--space-6);
  background:
    radial-gradient(circle at top right, rgba(239,196,25,.18), transparent 24%),
    linear-gradient(135deg, #0d3929, #14533b 100%);
  border-color:rgba(255,255,255,.08);
}

.news-featured__title,
.news-featured__text,
.news-featured__meta{
  color:#fff;
}

.news-featured__text{
  color:rgba(255,255,255,.8);
}

.news-grid{
  grid-column:span 7;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:var(--space-4);
  grid-auto-rows:1fr;
}

.news-card{
  display:flex;
  flex-direction:column;
  gap:var(--space-3);
  min-height:100%;
  padding:1.25rem;
}

.news-card__head,
.news-card__text,
.news-card__foot{
  color:var(--muted);
}

.news-card__foot{
  margin-top:auto;
}

.news-layout{
  align-items:stretch;
}

.live-shell{
  grid-template-columns:repeat(12, minmax(0, 1fr));
  padding:var(--space-5);
  border-radius:var(--radius-3);
  background:
    radial-gradient(circle at 88% 14%, rgba(239,196,25,.14), transparent 22%),
    radial-gradient(circle at 10% 84%, rgba(196,81,46,.12), transparent 24%),
    linear-gradient(145deg, rgba(6,31,23,.98), rgba(11,52,38,.98));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:var(--shadow-strong);
}

.live-copy{
  grid-column:span 5;
  display:flex;
  flex-direction:column;
  gap:var(--space-4);
  min-height:100%;
  padding:var(--card-pad);
  border-radius:var(--radius-2);
  background:rgba(255,255,255,.08);
}

.live-copy__text{
  margin-top:0;
  color:rgba(255,255,255,.8);
}

.live-copy__list li{
  color:rgba(255,255,255,.84);
  font-size:.9rem;
  line-height:1.85;
  font-weight:800;
}

.live-embed{
  grid-column:span 7;
  display:flex;
}

.live-player{
  display:flex;
  flex-direction:column;
  gap:var(--space-4);
  flex:1;
  min-height:100%;
  padding:1rem;
  border-radius:var(--radius-2);
}

.live-player__viewport{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:1;
  min-height:24rem;
  overflow:hidden;
}

.live-player__placeholder{
  position:absolute;
  inset:.8rem;
  z-index:2;
  display:grid;
  place-content:center;
  gap:.5rem;
  padding:1.2rem;
  text-align:center;
  border-radius:1.2rem;
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,240,230,.92));
  color:var(--text);
  transition:opacity .25s ease, visibility .25s ease;
}

.live-player__placeholder strong{
  font-size:1rem;
  line-height:1.7;
}

.live-player__placeholder span{
  color:var(--muted);
  font-size:.84rem;
  line-height:1.8;
  font-weight:700;
}

.live-player__frame{
  position:relative;
  z-index:1;
  opacity:0;
  transition:opacity .3s ease;
}

.live-player.is-ready .live-player__frame{
  opacity:1;
}

.live-player.is-ready .live-player__placeholder{
  opacity:0;
  visibility:hidden;
}

.offices-shell{
  gap:var(--space-4);
}

.office-map-studio{
  padding:var(--space-5);
  border-radius:var(--radius-3);
  background:var(--surface-soft);
}

.office-map-studio__top{
  gap:var(--space-4);
}

.office-map-studio__top h3{
  margin-top:0;
  color:var(--text);
}

.office-map-studio__top p{
  margin-top:0;
  color:var(--muted);
}

.office-map-stats--studio{
  min-width:min(23rem, 100%);
}

.office-map-studio__toolbar{
  gap:var(--space-4);
}

.office-map-studio__actions{
  grid-template-columns:minmax(0, 1fr) auto;
}

.office-map-canvas{
  grid-column:span 8;
  display:flex;
  flex-direction:column;
  gap:var(--space-4);
  min-height:100%;
}

.office-map-canvas__viewport{
  min-height:36rem;
}

.office-map-sidebar{
  grid-column:span 4;
  min-height:100%;
}

.donate__copy{
  grid-column:span 6;
  display:flex;
  flex-direction:column;
  gap:var(--space-4);
  min-height:100%;
}

.donate__journey{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:var(--space-3);
  margin:1.25rem 0 0;
}

.donate__journey-step{
  display:grid;
  gap:.25rem;
  padding:1rem;
  border-radius:1.2rem;
  background:var(--surface-plain);
  border:1px solid var(--line);
}

.donate__journey-step strong{
  display:grid;
  place-items:center;
  width:2rem;
  height:2rem;
  border-radius:999px;
  background:var(--success-soft);
  color:var(--success);
}

.donate__journey-step span{
  color:var(--text);
  font-size:.88rem;
  line-height:1.7;
  font-weight:800;
}

.donate__side{
  grid-column:span 6;
}

.donate-contact-card{
  display:flex;
  flex-direction:column;
  gap:var(--space-4);
  min-height:100%;
  padding:var(--space-5);
}

.donate-contact-card__actions{
  margin-top:auto;
}

.site-footer{
  margin-top:var(--space-7);
  padding:1.8rem 0 calc(2rem + env(safe-area-inset-bottom));
  background:linear-gradient(180deg, rgba(7,28,20,.98), rgba(9,37,27,.98));
}

.site-footer__inner{
  gap:var(--space-5);
}

.footer-nav{
  display:flex;
  align-items:center;
  gap:.85rem;
  flex-wrap:wrap;
}

.footer-nav a{
  color:rgba(255,255,255,.8);
  font-size:.9rem;
  font-weight:800;
}

.footer-nav a:hover,
.footer-nav a:focus-visible{
  color:#fff;
}

.mobile-cta-bar{
  display:none;
}

.toast{
  background:rgba(9,24,18,.96);
}

html[data-theme="dark"] .hero-contact h2,
html[data-theme="dark"] .hero-contact__list a,
html[data-theme="dark"] .hero-contact__list p,
html[data-theme="dark"] .hero-contact__list button,
html[data-theme="dark"] .donate__copy h2,
html[data-theme="dark"] .donate-contact-card h3,
html[data-theme="dark"] .activity-card__title,
html[data-theme="dark"] .news-card__title,
html[data-theme="dark"] .news-card__foot a,
html[data-theme="dark"] .office-map-studio__top h3,
html[data-theme="dark"] .office-map-studio__eyebrow,
html[data-theme="dark"] .office-filter-chip,
html[data-theme="dark"] .office-reset-button,
html[data-theme="dark"] .office-search-field--compact input,
html[data-theme="dark"] .office-map-sidebar__title,
html[data-theme="dark"] .office-map-sidebar__text,
html[data-theme="dark"] .office-map-sidebar__lead h4,
html[data-theme="dark"] .office-map-sidebar__section h4,
html[data-theme="dark"] .office-map-sidebar__row-copy strong,
html[data-theme="dark"] .office-map-sidebar__row-copy span,
html[data-theme="dark"] .office-map-sidebar__row-copy p{
  color:var(--text);
}

html[data-theme="dark"] .hero-contact__list li,
html[data-theme="dark"] .office-map-studio__top,
html[data-theme="dark"] .office-map-sidebar__lead,
html[data-theme="dark"] .office-map-sidebar__section,
html[data-theme="dark"] .office-map-sidebar__row,
html[data-theme="dark"] .office-map-sidebar__stats article,
html[data-theme="dark"] .office-map-stats--studio .office-map-stat{
  background:rgba(255,255,255,.04);
}

html[data-theme="dark"] .office-filter-chip,
html[data-theme="dark"] .office-reset-button,
html[data-theme="dark"] .office-search-field--compact input{
  background:rgba(255,255,255,.06);
  border-color:var(--line);
}

@media (max-width: 1100px){
  .section-heading{
    grid-template-columns:1fr;
    align-items:flex-start;
  }

  .hero__main,
  .hero__side,
  .hero-panel,
  .hero-metrics-shell,
  .story__panel--dark,
  .story__timeline,
  .paths-section__intro,
  .support-tracks,
  .live-copy,
  .live-embed,
  .office-map-canvas,
  .office-map-sidebar,
  .donate__copy,
  .donate__side{
    grid-column:span 12;
  }

  .trust-card{
    grid-column:span 6;
  }

  .news-featured,
  .news-grid{
    grid-column:span 12;
  }

  .news-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px){
  main{
    gap:clamp(2.75rem, 7vw, 3.5rem);
    padding-top:1rem;
  }

  .header-main{
    padding:.45rem 0 .35rem;
  }

  .header-main__shell{
    gap:.45rem;
  }

  .header-main__inner{
    gap:.55rem;
    padding:.55rem .7rem;
    border-radius:1.1rem;
    box-shadow:0 10px 26px rgba(8,37,26,.08);
  }

  .brand{
    flex:1;
    min-width:0;
    order:2;
  }

  .brand__logo-wrap--header{
    width:3rem;
    height:3.35rem;
    padding:.26rem .24rem .18rem;
    border-radius:.95rem;
  }

  .brand__text strong{
    font-size:.82rem;
    line-height:1.42;
  }

  .brand__text span{
    display:block;
    font-size:.64rem;
    line-height:1.45;
  }

  .nav-toggle{
    display:inline-grid;
    place-items:center;
    width:2.7rem;
    height:2.7rem;
    border-radius:.95rem;
    background:var(--surface-plain);
    border-color:var(--line);
    order:1;
  }

  .header-quick-action{
    display:inline-flex;
    order:3;
    min-height:2.65rem;
    padding:0 .85rem;
    border-radius:.95rem;
    font-size:.8rem;
  }

  .nav-panel{
    order:4;
  }

  .header-strip{
    display:none;
  }

  .nav-panel{
    position:absolute;
    top:calc(100% + .45rem);
    right:0;
    left:0;
    display:grid;
    gap:.75rem;
    padding:.85rem;
    border-radius:1.1rem;
    background:var(--surface-plain);
    border:1px solid var(--line);
    box-shadow:var(--shadow-card);
    opacity:0;
    transform:translateY(-.35rem);
    pointer-events:none;
    z-index:40;
  }

  .nav-panel.is-open{
    opacity:1;
    transform:none;
    pointer-events:auto;
  }

  .site-nav{
    flex-direction:column;
    align-items:stretch;
    padding:0;
    border:none;
    background:transparent;
  }

  .site-nav a{
    justify-content:flex-start;
    min-height:2.85rem;
    padding:.72rem .88rem;
    background:var(--surface-spot);
  }

  .header-main__actions{
    display:grid;
  }

  .header-main__actions .button{
    width:100%;
  }

  .theme-toggle{
    min-height:2.85rem;
  }

  .hero-proof,
  .support-tracks,
  .activities-grid,
  .news-grid,
  .donate__journey{
    grid-template-columns:1fr;
  }

  .trust-card{
    grid-column:span 12;
  }

  .hero-contact__actions,
  .hero-panel__actions,
  .trust-card__actions,
  .live-copy__actions,
  .donate-contact-card__actions{
    grid-template-columns:1fr;
  }

  .hero__actions{
    display:grid;
    grid-template-columns:1fr;
  }

  .office-map-stats--studio{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }

  .office-map-studio__actions{
    grid-template-columns:1fr;
  }

  .mobile-cta-bar{
    position:fixed;
    right:0;
    left:0;
    bottom:0;
    z-index:45;
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:.55rem;
    padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom));
    border-top:1px solid var(--line);
    background:rgba(255,249,242,.96);
    backdrop-filter:blur(18px);
  }

  html[data-theme="dark"] .mobile-cta-bar{
    background:rgba(8,20,15,.96);
  }

  .mobile-cta-bar__link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:3rem;
    border-radius:1rem;
    background:var(--surface-plain);
    border:1px solid var(--line);
    color:var(--text);
    font-size:.92rem;
    font-weight:900;
    box-shadow:var(--shadow-soft);
  }

  .mobile-cta-bar__link--primary{
    background:linear-gradient(135deg, var(--accent), var(--accent-strong));
    color:#fff;
    border-color:transparent;
  }

  body{
    padding-bottom:5.8rem;
  }

  .toast{
    bottom:5.9rem;
  }
}

@media (max-width: 640px){
  main{
    gap:2.5rem;
    padding-top:.85rem;
  }

  .brand__text span{
    display:none;
  }

  .brand__text strong{
    font-size:.8rem;
    line-height:1.35;
  }

  .hero__main,
  .hero-contact,
  .hero-panel,
  .hero-metrics-shell,
  .trust-card,
  .paths-section__intro,
  .live-copy,
  .live-player,
  .office-map-studio,
  .donate__copy,
  .donate-contact-card{
    padding:1.2rem;
    border-radius:1.35rem;
  }

  .hero__title{
    max-width:100%;
    font-size:clamp(2.05rem, 8vw, 3rem);
  }

  .hero__lead,
  .trust-card__text,
  .paths-section__intro p,
  .section-heading__text{
    font-size:.95rem;
  }

  .hero-contact__actions,
  .hero__actions{
    grid-template-columns:1fr;
  }

  .button,
  .hero-contact__actions .button,
  .hero-panel__actions .button,
  .live-copy__actions .button,
  .donate-contact-card__actions .button{
    width:100%;
  }

  .news-featured{
    padding:1.25rem;
  }

  .hero-proof__item,
  .metric-card,
  .support-track,
  .activity-card,
  .news-card{
    min-height:auto;
  }

  .office-map-stats--studio{
    grid-template-columns:1fr;
  }

  .live-player__viewport{
    min-height:19rem;
  }

  .office-map-canvas__viewport{
    min-height:24rem;
  }

  .mobile-cta-bar{
    grid-template-columns:1fr 1fr 1fr;
    padding:.7rem .75rem calc(.7rem + env(safe-area-inset-bottom));
  }
}

@media (hover: none){
  .card:hover,
  .button:hover,
  .header-strip__item:hover{
    transform:none;
  }
}
