/* ============================================================
   GOEIE MÔRE — Variant B "Eerste Lig / Cinematic"
   Strictly cool pre-dawn palette. No yellow/gold/amber.
   ============================================================ */

:root{
  /* colour */
  --gm-ink:#1B2A3A; --gm-ink-soft:#202632; --gm-parchment:#F7F4EF;
  --gm-accent:#4A6B7A; --gm-accent-2:#6E8B7B; --gm-dawn:#9FB8C8;
  --gm-grey:#8A857C; --gm-text:#23303B; --gm-line:#E3DDD3;

  /* cinematic dark-mode derivatives */
  --gm-ink-deep:#121C27;        /* deepest pre-dawn */
  --gm-ink-2:#16222F;
  --gm-dawn-soft:#7E9BB0;
  --gm-on-dark:#DCE6EC;         /* readable cool-white on ink */
  --gm-on-dark-mute:#9DB0BE;

  /* type */
  --font-display:"Fraunces","Spectral",Georgia,serif;
  --font-body:"Hanken Grotesk",system-ui,sans-serif;
  --t-display:clamp(3rem,9vw,7rem);
  --t-h1:clamp(2rem,4.5vw,3.4rem);
  --t-h2:clamp(1.5rem,2.6vw,2.1rem);
  --t-h3:1.25rem;
  --t-body:1.0625rem; --t-meta:.875rem;

  /* space + shape */
  --s1:8px; --s2:16px; --s3:24px; --s4:32px; --s6:48px; --s8:64px; --s12:96px;
  --r:10px;
  --shadow:0 6px 24px rgba(27,42,58,.08);
  --shadow-dark:0 20px 60px rgba(8,14,20,.55);
  --shell:1180px;
  --nav-h:68px;
  --ease:cubic-bezier(.22,.61,.36,1);
}

/* ---------- reset ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
html.lenis{height:auto}
body{
  font-family:var(--font-body);
  font-size:var(--t-body);
  line-height:1.7;
  color:var(--gm-text);
  background:var(--gm-parchment);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
ul{list-style:none}

/* ---------- a11y helpers ---------- */
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{
  position:absolute;left:var(--s2);top:-60px;z-index:200;
  background:var(--gm-ink);color:var(--gm-on-dark);
  padding:10px 16px;border-radius:var(--r);transition:top .2s var(--ease);
}
.skip-link:focus{top:var(--s2)}

:focus-visible{outline:2px solid var(--gm-accent);outline-offset:3px;border-radius:4px}

/* ---------- layout ---------- */
.shell{width:min(var(--shell),100% - var(--s4)*2);margin-inline:auto}
@media (max-width:640px){.shell{width:calc(100% - var(--s4))}}

.kicker{
  font-size:var(--t-meta);font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  color:var(--gm-accent-2);margin-bottom:var(--s3);
}
.kicker--center{text-align:center}
.kicker::before{content:"";display:inline-block;width:26px;height:1px;background:var(--gm-accent);
  vertical-align:middle;margin-right:12px;transform:translateY(-2px)}
.kicker--center::before{display:none}

.scripture{
  font-family:var(--font-display);font-style:italic;font-weight:400;
  font-variant:small-caps;letter-spacing:.02em;color:var(--gm-accent);
}
.scripture--sm{font-size:.95rem}
.flag{color:var(--gm-grey)}

.section-head{max-width:60ch;margin-bottom:var(--s8)}
.section-head__title{font-family:var(--font-display);font-weight:400;font-size:var(--t-h1);line-height:1.08;letter-spacing:-.01em}
.section-head__sub{color:var(--gm-grey);margin-top:var(--s2);max-width:54ch}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:13px 24px;border-radius:var(--r);font-weight:600;font-size:.97rem;
  letter-spacing:.01em;transition:transform .25s var(--ease),background .25s var(--ease),
    border-color .25s var(--ease),color .25s var(--ease),box-shadow .25s var(--ease);
  white-space:nowrap;
}
.btn--lg{padding:16px 30px;font-size:1.02rem}
.btn--accent{background:var(--gm-accent);color:var(--gm-parchment)}
.btn--accent:hover{background:#3d5a67;transform:translateY(-2px)}
.btn--ghost{border:1px solid var(--gm-line);color:var(--gm-ink)}
.btn--ghost:hover{border-color:var(--gm-accent);color:var(--gm-accent);transform:translateY(-2px)}
/* ghost on dark */
.latest .btn--ghost{border-color:rgba(220,230,236,.28);color:var(--gm-on-dark)}
.latest .btn--ghost:hover{border-color:var(--gm-dawn);color:var(--gm-dawn)}

/* ============================================================
   NAV
   ============================================================ */
.nav{
  position:fixed;inset:0 0 auto 0;z-index:100;height:var(--nav-h);
  display:flex;align-items:center;
  transition:background .4s var(--ease),border-color .4s var(--ease),backdrop-filter .4s var(--ease);
  border-bottom:1px solid transparent;
}
.nav.is-stuck{
  background:rgba(247,244,239,.86);backdrop-filter:blur(12px);
  border-bottom-color:var(--gm-line);
}
/* over the dark hero, nav text is light until stuck */
.nav__inner{
  width:min(var(--shell),100% - var(--s4)*2);margin-inline:auto;
  display:flex;align-items:center;justify-content:space-between;gap:var(--s4);
}
.nav__brand-mark{
  font-family:var(--font-display);font-size:1.28rem;font-weight:500;letter-spacing:.01em;
  color:var(--gm-on-dark);transition:color .4s var(--ease);
}
.nav.is-stuck .nav__brand-mark{color:var(--gm-ink)}
.nav__links{display:flex;gap:var(--s4)}
.nav__links a{
  font-size:.95rem;font-weight:500;color:var(--gm-on-dark);position:relative;
  padding:6px 0;transition:color .4s var(--ease);
}
.nav.is-stuck .nav__links a{color:var(--gm-text)}
.nav__links a::after{
  content:"";position:absolute;left:0;bottom:0;height:1.5px;width:0;
  background:var(--gm-accent);transition:width .3s var(--ease);
}
.nav__links a:hover::after,.nav__links a:focus-visible::after{width:100%}
.nav__cta{display:flex;align-items:center;gap:var(--s2)}

.nav__toggle{display:none;flex-direction:column;gap:5px;padding:8px}
.nav__toggle span{display:block;width:24px;height:2px;background:var(--gm-on-dark);transition:.3s var(--ease)}
.nav.is-stuck .nav__toggle span{background:var(--gm-ink)}

.nav__mobile{
  position:fixed;top:var(--nav-h);left:0;right:0;z-index:99;
  background:var(--gm-ink);padding:var(--s4) var(--s4) var(--s6);
  display:flex;flex-direction:column;gap:var(--s2);
  transform:translateY(-12px);opacity:0;
}
.nav__mobile a{color:var(--gm-on-dark);font-size:1.1rem;padding:10px 0;border-bottom:1px solid rgba(220,230,236,.1)}
.nav__mobile .btn{margin-top:var(--s2);border-bottom:0}

@media (max-width:860px){
  .nav__links{display:none}
  .nav__cta .btn--accent{display:none}
  .nav__toggle{display:flex}
}

/* ============================================================
   1. HERO — EERSTE LIG
   ============================================================ */
.hero{
  position:relative;min-height:100svh;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;overflow:hidden;
  background:
    radial-gradient(120% 90% at 50% 118%, #2a4358 0%, transparent 55%),
    linear-gradient(180deg, var(--gm-ink-deep) 0%, #15212e 45%, var(--gm-ink) 100%);
  color:var(--gm-on-dark);
  padding:var(--nav-h) var(--s4) var(--s8);
  isolation:isolate;
}
.hero__sky{position:absolute;inset:0;z-index:-1;pointer-events:none}

/* cool light bloom rising from horizon */
.hero__glow{
  position:absolute;left:50%;bottom:-30%;width:140vw;height:90vh;transform:translateX(-50%);
  background:radial-gradient(closest-side,
     rgba(159,184,200,.42) 0%, rgba(126,155,176,.22) 38%, rgba(74,107,122,.07) 65%, transparent 80%);
  filter:blur(8px);opacity:.7;
}
/* faint cool light rays (SVG data-uri, blue only) */
.hero__rays{
  position:absolute;left:50%;bottom:-10%;width:120vw;height:120vh;transform:translateX(-50%);
  background:center bottom / cover no-repeat url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 1200'>\
<defs><linearGradient id='r' x1='0' y1='1' x2='0' y2='0'>\
<stop offset='0' stop-color='%239FB8C8' stop-opacity='.30'/>\
<stop offset='1' stop-color='%239FB8C8' stop-opacity='0'/></linearGradient></defs>\
<g fill='url(%23r)'>\
<polygon points='600,1200 470,0 540,0'/>\
<polygon points='600,1200 590,0 640,0'/>\
<polygon points='600,1200 700,0 760,0'/>\
<polygon points='600,1200 360,0 400,0'/>\
<polygon points='600,1200 820,0 880,0'/>\
</g></svg>");
  mix-blend-mode:screen;opacity:.5;
}
.hero__fog{position:absolute;left:-10%;right:-10%;height:50vh;filter:blur(26px)}
.hero__fog--a{bottom:8%;background:radial-gradient(60% 100% at 30% 100%,rgba(159,184,200,.16),transparent 70%)}
.hero__fog--b{bottom:-4%;background:radial-gradient(70% 100% at 72% 100%,rgba(110,139,123,.14),transparent 70%)}
.hero__ridge{
  position:absolute;left:0;right:0;bottom:0;height:26vh;
  background:linear-gradient(180deg,transparent,rgba(15,23,33,.85) 70%,#10191f 100%);
}
/* subtle film grain */
.hero::after{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.045;
  background-image:url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'>\
<filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/>\
<feColorMatrix type='saturate' values='0'/></filter>\
<rect width='100%' height='100%' filter='url(%23n)'/></svg>");
}

.hero__content{position:relative;z-index:2;max-width:min(92vw,760px);margin-inline:auto}
.hero__eyebrow{
  font-size:var(--t-meta);letter-spacing:.34em;text-transform:uppercase;
  color:var(--gm-dawn);margin-bottom:var(--s4);
}
.hero__title{
  font-family:var(--font-display);font-weight:400;
  font-size:var(--t-display);line-height:.94;letter-spacing:-.015em;
  margin-bottom:var(--s4);display:flex;flex-direction:column;
  overflow:visible;
}
.hero__word{
  display:block;
  color:#EAF1F5; /* solid, legible fallback */
  background:linear-gradient(180deg,#F4F8FA 0%,#D4E2EC 55%,var(--gm-dawn) 100%);
  -webkit-background-clip:text;background-clip:text;
}
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  .hero__word{color:transparent}
}
.hero__tagline{
  font-family:var(--font-display);font-style:italic;font-size:clamp(1.1rem,2.4vw,1.5rem);
  color:var(--gm-on-dark);margin-bottom:var(--s6);line-height:1.5;font-weight:300;
}
.hero__actions{display:flex;justify-content:center}

.hero__cue{
  position:absolute;bottom:var(--s6);left:50%;transform:translateX(-50%);
  z-index:2;display:flex;flex-direction:column;align-items:center;gap:12px;
  color:var(--gm-on-dark-mute);font-size:var(--t-meta);letter-spacing:.22em;text-transform:uppercase;
}
.hero__cue-line{width:1px;height:48px;background:linear-gradient(var(--gm-dawn),transparent);position:relative;overflow:hidden}
.hero__cue-line::after{
  content:"";position:absolute;top:0;left:0;width:100%;height:40%;
  background:var(--gm-dawn);animation:cueDrop 2.2s var(--ease) infinite;
}
@keyframes cueDrop{0%{transform:translateY(-100%)}60%,100%{transform:translateY(260%)}}

/* ============================================================
   2. NUUTSTE BOODSKAP  (dark cinematic)
   ============================================================ */
.latest{
  position:relative;background:var(--gm-ink);color:var(--gm-on-dark);
  padding:var(--s12) 0;overflow:hidden;
}
.latest__bg{
  position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(70% 60% at 80% -10%, rgba(74,107,122,.28), transparent 60%),
    radial-gradient(50% 50% at 5% 110%, rgba(159,184,200,.12), transparent 60%);
}
.latest__grid{
  position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:var(--s12);align-items:center;
}
.latest .kicker{color:var(--gm-dawn)}
.latest__title{font-family:var(--font-display);font-weight:400;font-size:var(--t-h1);line-height:1.06;letter-spacing:-.01em;margin-bottom:var(--s3)}
.latest .scripture{color:var(--gm-dawn);font-size:1.1rem}
.latest__meta{color:var(--gm-on-dark-mute);font-size:var(--t-meta);margin:var(--s2) 0 var(--s4);display:flex;gap:10px;align-items:center}
.latest__meta .dot{opacity:.5}
.latest__lead{color:var(--gm-on-dark-mute);max-width:50ch;margin-bottom:var(--s6);line-height:1.75}
.latest__actions{display:flex;gap:var(--s2);flex-wrap:wrap}

/* ---------- clip cards ---------- */
.clip{margin:0}
.clip__media,.clip__link .clip__media{
  position:relative;display:block;width:100%;aspect-ratio:9/16;border-radius:var(--r);
  overflow:hidden;background:var(--gm-ink-deep);border:1px solid rgba(159,184,200,.14);
}
.clip--feature{max-width:360px;margin-inline:auto;width:100%}
.clip--feature .clip__media{box-shadow:var(--shadow-dark)}
.clip__poster{position:absolute;inset:0}
/* cool duotone "posters" — all blue/teal/sage gradients, NO gold */
.clip__poster--feature{background:
  radial-gradient(120% 80% at 50% 0%, rgba(159,184,200,.5), transparent 55%),
  linear-gradient(160deg,#243a4c 0%,#1a2b3a 55%,#12202c 100%);}
.clip__poster--1{background:linear-gradient(155deg,#28414f,#16242f)}
.clip__poster--2{background:linear-gradient(155deg,#2c4a4a,#172a2c)}
.clip__poster--3{background:linear-gradient(155deg,#34495a,#1a2733)}
.clip__poster--4{background:linear-gradient(155deg,#1f3242,#101b25)}
.clip__poster--5{background:linear-gradient(155deg,#3a5060,#1d2c38)}
.clip__poster--6{background:linear-gradient(155deg,#2a4339,#15241d)}
.clip__poster::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 40%,rgba(10,16,22,.65) 100%)}

.clip__caption-strip{
  position:absolute;left:50%;bottom:18%;transform:translateX(-50%);z-index:2;
  font-family:var(--font-display);font-style:italic;font-size:1.05rem;color:var(--gm-on-dark);
  text-align:center;width:84%;text-shadow:0 1px 8px rgba(0,0,0,.6);
}
.clip__play{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3;
  width:64px;height:64px;border-radius:50%;display:grid;place-items:center;
  background:rgba(247,244,239,.92);color:var(--gm-ink);padding-left:4px;
  transition:transform .3s var(--ease),background .3s var(--ease);
}
.clip__ratio{
  position:absolute;top:10px;right:10px;z-index:3;font-size:.7rem;letter-spacing:.1em;
  color:var(--gm-on-dark-mute);background:rgba(15,23,33,.55);padding:3px 7px;border-radius:6px;
}
.clip__flag{margin-top:var(--s2);text-align:center;font-size:var(--t-meta);color:var(--gm-on-dark-mute);
  display:flex;align-items:center;justify-content:center;gap:8px}
.cc{border:1px solid currentColor;border-radius:4px;padding:1px 5px;font-size:.7rem;font-weight:600;letter-spacing:.05em}

.clip--feature .clip__media:hover .clip__play{transform:translate(-50%,-50%) scale(1.08);background:#fff}

/* archive grid cards (light section) */
.clip__link{display:block;transition:transform .3s var(--ease)}
.clip__body{display:block;padding:var(--s2) 2px 0}
.clip__title{font-family:var(--font-display);font-weight:400;font-size:var(--t-h3);color:var(--gm-ink);display:block;margin-bottom:4px;line-height:1.25}
.clip__meta{display:block;font-size:var(--t-meta);color:var(--gm-grey);margin-top:6px}
.clip__link:hover{transform:translateY(-4px)}
.clip__link:hover .clip__media{border-color:var(--gm-accent)}

/* ============================================================
   3. PITKOS VIR VANDAG
   ============================================================ */
.pitkos{
  position:relative;background:var(--gm-ink-deep);color:var(--gm-on-dark);
  padding:var(--s12) 0;text-align:center;overflow:hidden;
}
.pitkos__light{
  position:absolute;left:50%;top:-30%;width:90vw;height:90vh;transform:translateX(-50%);
  background:radial-gradient(closest-side,rgba(159,184,200,.22),transparent 70%);pointer-events:none;
}
.pitkos__inner{position:relative;max-width:min(92vw,820px);margin-inline:auto}
.pitkos__verse{
  font-family:var(--font-display);font-weight:400;
  font-size:clamp(1.35rem,3.2vw,2.3rem);line-height:1.38;letter-spacing:-.005em;
  margin:var(--s4) 0 var(--s4);color:var(--gm-on-dark);max-width:none;margin-inline:auto;
  text-wrap:balance;
}
.pitkos__verse em{color:var(--gm-dawn);font-style:italic}
.pitkos__verse span{display:block}
.pitkos__ref{font-style:normal;font-family:var(--font-display);font-variant:small-caps;
  letter-spacing:.08em;color:var(--gm-accent-2);font-size:1.05rem}

/* ============================================================
   4. OOR LEN
   ============================================================ */
.about{background:var(--gm-parchment);padding:var(--s12) 0}
.about__grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:var(--s12);align-items:center}
.about__portrait{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:4/5;box-shadow:var(--shadow)}
.about__photo{
  position:absolute;inset:0;
  background:
    radial-gradient(80% 60% at 50% 0%, rgba(159,184,200,.4), transparent 60%),
    linear-gradient(165deg,#3a526180 0%,#1f3140 100%),
    linear-gradient(160deg,#2c4150,#16242f);
}
.about__photo-grade{position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 55%,rgba(27,42,58,.35) 100%);
  mix-blend-mode:multiply}
.about__copy{max-width:60ch}
.about__title{font-family:var(--font-display);font-weight:400;font-size:var(--t-h1);line-height:1.12;letter-spacing:-.01em;margin-bottom:var(--s4)}
.about__copy p{margin-bottom:var(--s3);color:var(--gm-text)}
.about__sign{font-family:var(--font-display);font-style:italic;font-size:1.3rem;color:var(--gm-accent);margin-top:var(--s4)!important}

/* ============================================================
   5. ARCHIVE
   ============================================================ */
.archive{background:var(--gm-ink);color:var(--gm-on-dark);padding:var(--s12) 0}
.archive .kicker{color:var(--gm-dawn)}
.archive .section-head__title{color:var(--gm-on-dark)}
.archive .section-head__sub{color:var(--gm-on-dark-mute)}
.archive__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s4)}
.archive__more{text-align:center;margin-top:var(--s8)}
.archive .btn--ghost{border-color:rgba(220,230,236,.3);color:var(--gm-on-dark)}
.archive .btn--ghost:hover{border-color:var(--gm-dawn);color:var(--gm-dawn)}

/* ============================================================
   6. TESTIMONIALS
   ============================================================ */
.testimonials{background:var(--gm-parchment);padding:var(--s12) 0}
.testimonials__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s4)}
.testimonial{
  background:#fff;border:1px solid var(--gm-line);border-radius:var(--r);
  padding:var(--s6) var(--s4) var(--s4);box-shadow:var(--shadow);
}
.testimonial blockquote{font-family:var(--font-display);font-size:1.18rem;line-height:1.5;color:var(--gm-ink);margin-bottom:var(--s3)}
.testimonial blockquote::before{content:"\201C";color:var(--gm-accent);font-size:1.4em;line-height:0;vertical-align:-.2em;margin-right:2px}
.testimonial__by{font-size:var(--t-meta);color:var(--gm-grey);font-weight:600;letter-spacing:.02em}

/* ============================================================
   7. NEWSLETTER
   ============================================================ */
.newsletter{position:relative;background:var(--gm-ink-soft);color:var(--gm-on-dark);padding:var(--s12) 0;text-align:center;overflow:hidden}
.newsletter__light{position:absolute;left:50%;bottom:-40%;width:80vw;height:80vh;transform:translateX(-50%);
  background:radial-gradient(closest-side,rgba(110,139,123,.2),transparent 70%);pointer-events:none}
.newsletter__inner{position:relative;max-width:42ch;margin-inline:auto}
.newsletter__title{font-family:var(--font-display);font-weight:400;font-size:var(--t-h1);line-height:1.12;margin-bottom:var(--s2)}
.newsletter__sub{color:var(--gm-on-dark-mute);margin-bottom:var(--s6)}
.newsletter__form .field{display:flex;gap:10px;max-width:480px;margin-inline:auto}
.field__input{
  flex:1;padding:14px 18px;border-radius:var(--r);border:1px solid rgba(220,230,236,.25);
  background:rgba(247,244,239,.06);color:var(--gm-on-dark);font:inherit;
}
.field__input::placeholder{color:var(--gm-on-dark-mute)}
.field__input:focus-visible{outline-color:var(--gm-dawn);border-color:var(--gm-dawn)}
.newsletter__status{min-height:1.4em;margin-top:var(--s3);font-size:var(--t-meta)}
.newsletter__status.is-ok{color:var(--gm-dawn)}
.newsletter__status.is-err{color:#d99}

/* ============================================================
   8. GIVE
   ============================================================ */
.give{background:var(--gm-parchment);padding:var(--s12) 0}
.give__inner{display:grid;grid-template-columns:1.3fr .7fr;gap:var(--s12);align-items:center;
  border:1px solid var(--gm-line);border-radius:var(--r);padding:var(--s8);background:#fff;box-shadow:var(--shadow)}
.give__title{font-family:var(--font-display);font-weight:400;font-size:var(--t-h1);line-height:1.1;margin-bottom:var(--s4)}
.give__copy p{color:var(--gm-text);max-width:52ch;margin-bottom:var(--s6)}
.give__actions{display:flex;gap:var(--s2);flex-wrap:wrap}
.give__verse{border-left:2px solid var(--gm-accent);padding-left:var(--s4)}
.give__verse .scripture{display:block;margin-bottom:var(--s2)}
.give__verse-text{font-family:var(--font-display);font-style:italic;font-size:1.4rem;line-height:1.4;color:var(--gm-ink)}

/* ============================================================
   FOOTER
   ============================================================ */
.footer{background:var(--gm-ink);color:var(--gm-on-dark-mute);padding:var(--s12) 0 var(--s6)}
.footer__grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:var(--s8);padding-bottom:var(--s8);
  border-bottom:1px solid rgba(220,230,236,.12)}
.footer__mark{font-family:var(--font-display);font-size:1.5rem;color:var(--gm-on-dark);margin-bottom:8px}
.footer__tag{font-family:var(--font-display);font-style:italic;color:var(--gm-dawn);margin-bottom:var(--s4)}
.footer__social{display:flex;gap:12px}
.footer__social a{width:38px;height:38px;border:1px solid rgba(220,230,236,.2);border-radius:50%;
  display:grid;place-items:center;color:var(--gm-on-dark-mute);transition:.25s var(--ease)}
.footer__social a:hover{color:var(--gm-ink);background:var(--gm-dawn);border-color:var(--gm-dawn)}
.footer__head{font-size:var(--t-meta);text-transform:uppercase;letter-spacing:.14em;color:var(--gm-on-dark);margin-bottom:var(--s3);font-weight:600}
.footer__col{display:flex;flex-direction:column;gap:10px}
.footer__col a{color:var(--gm-on-dark-mute);font-size:.95rem;transition:color .2s var(--ease);width:fit-content}
.footer__col a:hover{color:var(--gm-dawn)}
.footer__note{font-size:.9rem;color:var(--gm-grey)}
.footer__legal{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--s2);
  padding-top:var(--s4);font-size:var(--t-meta);color:var(--gm-grey)}
.footer__legal-links a:hover{color:var(--gm-dawn)}

/* ============================================================
   SCROLL REVEAL  (default state; JS adds .is-in)
   ============================================================ */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.reveal.is-in{opacity:1;transform:none}
.reveal-word{opacity:0;transform:translateY(20px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.is-loaded .reveal-word{opacity:1;transform:none}
.is-loaded .reveal-word:nth-child(2){transition-delay:.14s}
.reveal-line{opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.reveal-line.is-in{opacity:1;transform:none}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:980px){
  .latest__grid,.about__grid,.give__inner{grid-template-columns:1fr;gap:var(--s8)}
  .archive__grid{grid-template-columns:repeat(2,1fr)}
  .testimonials__grid{grid-template-columns:1fr;gap:var(--s4)}
  .about__portrait{max-width:420px}
  .give__verse{border-left:0;border-top:2px solid var(--gm-accent);padding-left:0;padding-top:var(--s4)}
}
@media (max-width:560px){
  .archive__grid{grid-template-columns:1fr;max-width:320px;margin-inline:auto}
  .newsletter__form .field{flex-direction:column}
  .give__inner{padding:var(--s6) var(--s4)}
  .footer__grid{grid-template-columns:1fr 1fr;gap:var(--s6)}
  .footer__brand{grid-column:1 / -1}
}

/* ============================================================
   REDUCED MOTION — disable light-anim & parallax, keep static
   ============================================================ */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal,.reveal-word,.reveal-line{opacity:1!important;transform:none!important}
  .hero__cue-line::after{display:none}
  [data-parallax]{transform:none!important}
  .hero__rays{opacity:.35}
}
/* bd-accordion (homepage month archive) */
.bd-list{margin-top:8px}
.bd-acc{border-bottom:1px solid rgba(220,230,236,.14)}.bd-acc:first-of-type{border-top:1px solid rgba(220,230,236,.14)}
.bd-month{cursor:pointer;list-style:none;display:flex;align-items:center;gap:12px;font-family:"Fraunces",serif;font-weight:400;font-size:1.5rem;color:#DCE6EC;padding:22px 4px}
.bd-month::-webkit-details-marker{display:none}.bd-count{font-family:"Hanken Grotesk",sans-serif;font-size:.85rem;color:#9DB0BE}
.bd-month::after{content:'+';margin-left:auto;font-size:1.6rem;color:#4A6B7A;line-height:1}.bd-acc[open] .bd-month::after{content:'\2013'}
.bd-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:4px 0 32px}
@media(max-width:900px){.bd-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:540px){.bd-grid{grid-template-columns:1fr}}
.bd-card{display:block;background:#16222F;border:1px solid rgba(220,230,236,.14);border-radius:12px;overflow:hidden;transition:transform .25s,border-color .25s}
.bd-card:hover{transform:translateY(-4px);border-color:#4A6B7A}
.bd-thumb{display:block;aspect-ratio:9/16;background:#0e151d center/cover no-repeat;position:relative}
.bd-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:50px;height:50px;border-radius:50%;background:rgba(245,242,238,.92);color:#1B2A3A;display:grid;place-items:center;padding-left:3px}
.bd-b{display:block;padding:12px 14px}.bd-ttl{display:block;font-family:"Fraunces",serif;font-size:1.02rem;color:#DCE6EC}.bd-cc{display:block;font-size:.72rem;color:#9DB0BE;margin-top:4px}