/* PRAY THEN ACT — WEB stylesheet · "Glory in the Light" (BRAND-FAMILY.md §2–§3, §9)
   Warm-white, airy canvas · deep warm ink · hairline borders · a fixed breathing
   "skylight" glow · one vivid door hue + the shared gold glory accent.
   This site's door hue = LIVING CORAL #F2624C (Pray Then Act — warmth, action).
   Type: Fraunces (display) + Hanken Grotesk (body), from Google Fonts in <head>.
   NOTE: this is the WEB theme only — the rendered poster brand (brand/*) is untouched. */

:root{
  /* Glory in the Light neutrals (shared family base) */
  --paper:#FBFBF6;         /* warm-white canvas (THE background) */
  --paper-2:#FFFFFF;       /* cards / raised surfaces */
  --mist:#F4F4EC;          /* soft tint band */
  --ink:#16221B;           /* deep warm ink */
  --ink-soft:#566057;      /* secondary text */
  --ink-faint:#8B928A;     /* tertiary / meta */
  --line:#E7E8DF;          /* hairline borders */
  --line-strong:#DADCCF;   /* stronger hairline */

  /* This door's hue — Living Coral — the confident accent */
  --coral:#F2624C;
  --coral-ink:#D9432C;     /* darker coral for text/links on warm-white (AA contrast) */
  --coral-soft:rgba(242,98,76,.14);
  --coral-line:rgba(242,98,76,.30);
  --site-hue:#F2624C;      /* feeds the Tithe.ly Donate pill (BRAND-FAMILY.md §9) */

  /* Shared GLORY GOLD accent (every site) — eyebrows, hairlines, numerals, glory band */
  --gold:#AC8324;
  --gold-2:#C99E3C;
  --gold-soft:#E8CF8B;
  --gold-line:rgba(172,131,36,.30);

  /* the skylight */
  --glow-warm:rgba(255,250,236,.95);
  --glow-gold:rgba(232,207,139,.55);

  --shadow:0 24px 60px -28px rgba(20,40,28,.26);
  --shadow-soft:0 14px 40px -24px rgba(20,40,28,.20);

  /* legacy token aliases so any older rule adopts Glory automatically */
  --bg:var(--paper);
  --bg-tint:var(--mist);
  --muted:var(--ink-soft);
  --black:var(--ink);
  --cream:var(--paper);
  --card:var(--mist);

  --serif:"Fraunces",Georgia,serif;                 /* display / headings */
  --sans:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;  /* body / UI */
  --accent-serif:"Fraunces",Georgia,serif;          /* Scripture = italic Fraunces */
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;
  -webkit-font-smoothing:antialiased;line-height:1.62;letter-spacing:.002em;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.wrap{max-width:1180px;margin:0 auto;padding:0 clamp(1.4rem,5vw,40px);position:relative;z-index:1}
.it{font-style:italic;color:var(--coral-ink)}
h1,h2,h3,.flegend,.name,.daytitle,.archtitle,.sh,.sh.light{font-family:var(--serif);font-weight:400;
  font-optical-sizing:auto;letter-spacing:-.018em}
.ic{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}

/* ---- the skylight: a fixed, gently-breathing radial glow from above (BRAND-FAMILY.md §2) ---- */
.skylight{position:fixed;inset:0 0 auto 0;height:88vh;z-index:0;pointer-events:none;
  background:
    radial-gradient(62% 60% at 50% -8%, var(--glow-warm), transparent 68%),
    radial-gradient(42% 46% at 68% -4%, var(--glow-gold), transparent 60%);
  animation:breathe 12s ease-in-out infinite}
@keyframes breathe{0%,100%{opacity:1}50%{opacity:.82}}

/* ---- restrained page-load motion (one orchestrated stagger) ---- */
@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.rise{animation:rise .95s cubic-bezier(.2,.7,.2,1) both}
@media (prefers-reduced-motion:reduce){
  .rise{animation:none}
  .skylight{animation:none}
}

/* ---- header (light, airy; the ONLY button is the Donate pill, top-right) ---- */
.topbar{position:sticky;top:0;z-index:50;background:transparent;border-bottom:1px solid transparent;
  transition:background .35s,backdrop-filter .35s,box-shadow .35s,border-color .35s}
.topbar.scrolled{background:rgba(251,251,246,.86);backdrop-filter:blur(14px) saturate(1.2);
  border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(0,0,0,.01)}
.topbar .wrap{display:flex;align-items:center;gap:34px;height:78px}
.lockup{display:flex;align-items:center;gap:12px}
.lockup .mark{width:30px;height:30px;color:var(--coral)}
.lockup .name{font-family:var(--serif);font-weight:500;font-size:20px;letter-spacing:-.01em;white-space:nowrap;color:var(--ink)}
.lockup .name .it{color:var(--coral-ink);font-style:italic}
.topbar .lockup .name{color:var(--ink)}
.nav{display:flex;gap:28px;margin:0 auto}
.nav a{font-size:14.5px;font-weight:500;letter-spacing:.1px;color:var(--ink-soft);position:relative;padding:6px 0;transition:color .2s}
.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1.5px;background:var(--coral);transition:right .3s ease}
.nav a:hover{color:var(--ink)}
.nav a:hover::after{right:0}
.topbar .right{display:flex;align-items:center;gap:16px}

/* generic button — coral pill primary / hairline ghost */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;background:var(--coral);color:#fff;
  font-family:var(--sans);font-weight:600;font-size:15px;letter-spacing:.1px;padding:.92rem 1.7rem;border-radius:999px;
  border:1px solid var(--coral);cursor:pointer;text-align:center;
  box-shadow:0 14px 30px -12px rgba(242,98,76,.55);transition:transform .16s,box-shadow .16s,background .2s,color .2s,border-color .2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 20px 38px -14px rgba(242,98,76,.62)}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line-strong);box-shadow:none}
.btn.ghost:hover{background:transparent;border-color:var(--coral);color:var(--coral-ink);transform:translateY(-2px)}
.btn.sm{padding:.72rem 1.3rem;font-size:13.5px}

/* ---- the Donate pill (BRAND-FAMILY.md §9) — overrides Tithe.ly inline defaults ---- */
.cba-give{background:var(--site-hue)!important;color:#fff!important;
  font:600 .95rem/1 var(--sans)!important;padding:.62rem 1.5rem!important;
  border-radius:999px!important;border:none!important;cursor:pointer;text-shadow:none!important;
  background-image:none!important;box-shadow:0 10px 24px -10px rgba(242,98,76,.55);transition:transform .15s,box-shadow .15s}
.cba-give:hover{transform:translateY(-2px);box-shadow:0 16px 30px -12px rgba(242,98,76,.6)}

/* ---- a gold letterspaced eyebrow with a short hairline (the glory whisper) ---- */
.kick{display:inline-flex;align-items:center;gap:.7rem;font-size:.74rem;font-weight:600;letter-spacing:.22em;
  color:var(--gold);text-transform:uppercase}
.kick::before{content:"";width:26px;height:1.5px;background:linear-gradient(90deg,var(--gold),transparent);flex:0 0 auto}
.kick.center{display:flex;justify-content:center}
.kick.center::before{background:linear-gradient(90deg,transparent,var(--gold))}
.kick.center::after{content:"";width:26px;height:1.5px;background:linear-gradient(90deg,var(--gold),transparent);flex:0 0 auto}
.kick .pill{background:var(--coral);color:#fff;border-radius:999px;padding:.34rem .8rem;letter-spacing:.12em;font-weight:600;
  font-size:.7rem;box-shadow:0 8px 18px -8px rgba(242,98,76,.5)}

/* ---- hero ---- */
.hero{position:relative;overflow:hidden;background:transparent}
.hero .glow{position:absolute;inset:0;z-index:0;background:radial-gradient(80% 66% at 90% -6%,var(--coral-soft) 0%,transparent 58%)}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;
  padding-top:clamp(3rem,7vh,5.5rem);padding-bottom:clamp(3.5rem,8vh,6rem);align-items:center}
.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(3rem,7vw,5.4rem);line-height:1;letter-spacing:-.022em;margin:1.5rem 0 0;color:var(--ink)}
.hero h1 .gold,.hero h1 .it{font-style:italic;color:var(--coral-ink);position:relative}
.hero h1 .gold::after,.hero h1 .it::after{content:"";position:absolute;left:0;right:0;bottom:.08em;height:.4em;z-index:-1;
  background:linear-gradient(180deg,transparent 40%,var(--gold-soft) 40%);opacity:.5}
.lede{margin-top:1.6rem;font-size:clamp(1.08rem,1.5vw,1.22rem);line-height:1.62;color:var(--ink-soft);max-width:34em}
.lede b{color:var(--ink);font-weight:600}
.sub{margin-top:2.2rem;display:flex;gap:.9rem;max-width:560px;flex-wrap:wrap}
.micro{margin-top:.85rem;font-size:.78rem;color:var(--ink-faint);letter-spacing:.02em;line-height:1.6}
.marks{display:flex;gap:1.5rem;margin-top:2.4rem;flex-wrap:wrap}
.marks span{font-size:.7rem;font-weight:600;letter-spacing:.14em;color:var(--ink-faint);display:flex;align-items:center;gap:.55rem;text-transform:uppercase}
.marks i{width:5px;height:5px;background:var(--gold-2);border-radius:50%}

.collage{position:relative;height:640px}
.collage .p{position:absolute;border-radius:18px;box-shadow:var(--shadow);overflow:hidden}
.collage .back{width:62%;left:-2%;top:9%;transform:rotate(-5deg);opacity:.6}
.collage .front{width:72%;right:0;top:0;transform:rotate(2.2deg);outline:4px solid var(--paper-2);outline-offset:0;box-shadow:0 30px 70px -24px rgba(20,40,28,.3)}
.collage .tag{position:absolute;right:6%;bottom:4%;background:var(--paper-2);border:1px solid var(--line);border-radius:14px;padding:.9rem 1.25rem;box-shadow:var(--shadow-soft);transform:rotate(-1.5deg);transition:transform .25s}
.collage .tag:hover{transform:rotate(0deg) translateY(-3px)}
.collage .tag .t1{display:block;font-size:.68rem;font-weight:600;letter-spacing:.16em;color:var(--gold);text-transform:uppercase}
.collage .tag .t2{display:block;font-family:var(--serif);font-style:italic;font-weight:400;font-size:1.1rem;margin-top:.25rem;color:var(--ink)}
.collage .tag .t2 .it{color:var(--coral-ink)}

/* ---- today's devotional — a soft mist band, the day's verse a glory moment ---- */
.today{position:relative;background:var(--mist);color:var(--ink);padding:clamp(3.5rem,7vw,5.5rem) 0;
  border-top:1px solid var(--gold-line);border-bottom:1px solid var(--gold-line)}
.today::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(48% 90% at 50% 0%, rgba(232,207,139,.22), transparent 70%)}
.today .head{display:flex;align-items:center;gap:1rem;justify-content:center}
.today .head .rule{height:1.5px;width:60px;background:linear-gradient(90deg,transparent,var(--gold))}
.today .head .rule:last-child{background:linear-gradient(90deg,var(--gold),transparent)}
.today .head .dot{width:5px;height:5px;background:var(--gold-2);border-radius:50%}
.today .head h2{font-family:var(--sans);font-weight:600;letter-spacing:.22em;font-size:.74rem;color:var(--gold);text-transform:uppercase}
.today .title{font-family:var(--serif);font-weight:400;font-size:clamp(2rem,4vw,3rem);line-height:1.06;text-align:center;margin-top:1.4rem;color:var(--ink)}
.today .title .it{color:var(--coral-ink)}
.today .verse{font-family:var(--accent-serif);font-style:italic;font-weight:300;font-size:clamp(1.4rem,2.4vw,1.7rem);line-height:1.4;text-align:center;max-width:20ch;margin:1.4rem auto 0;color:var(--coral-ink);letter-spacing:-.01em}
.today .ref{color:var(--gold);font-weight:600;letter-spacing:.18em;font-size:.78rem;text-align:center;margin-top:1.1rem;text-transform:uppercase}
.tri{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:880px;margin:48px auto 0}
.tri .card{position:relative;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-soft);transition:transform .3s,box-shadow .3s;border:1px solid var(--line);background:var(--paper-2)}
.tri .card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.tri .chip{position:absolute;top:12px;left:12px;background:var(--coral);color:#fff;font-size:.66rem;font-weight:600;letter-spacing:.12em;padding:.35rem .65rem;border-radius:999px;z-index:2}
.today .cta{display:flex;justify-content:center;margin-top:48px}

/* ---- how it works ---- */
.how{padding:clamp(3.5rem,7vw,6rem) 0 clamp(3rem,6vw,5rem);background:transparent}
.sechead{display:flex;align-items:center;gap:1rem;justify-content:center}
.sechead .rule{height:1.5px;width:60px;background:linear-gradient(90deg,transparent,var(--gold))}
.sechead .rule:last-child{background:linear-gradient(90deg,var(--gold),transparent)}
.sechead .dot{width:5px;height:5px;background:var(--gold-2);border-radius:50%}
.sechead h2{font-family:var(--sans);font-weight:600;letter-spacing:.22em;font-size:.74rem;color:var(--gold);text-transform:uppercase}
.how .sub2{font-family:var(--serif);font-weight:400;font-size:clamp(1.7rem,3vw,2.4rem);color:var(--ink);text-align:center;margin-top:1rem;letter-spacing:-.018em}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;margin-top:3.2rem}
.step{position:relative;background:var(--paper-2);border:1px solid var(--line);border-radius:20px;padding:2.2rem 2rem 2rem;
  transition:transform .22s,box-shadow .22s,border-color .22s;overflow:hidden}
.step::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--coral),var(--gold-2));transform:scaleX(0);transform-origin:left;transition:transform .35s}
.step:hover{box-shadow:var(--shadow-soft);transform:translateY(-6px);border-color:var(--line-strong)}
.step:hover::before{transform:scaleX(1)}
.step .n{font-family:var(--sans);font-weight:600;font-size:.74rem;color:var(--gold);letter-spacing:.14em;text-transform:uppercase}
.step .badge{width:54px;height:54px;border-radius:15px;background:var(--coral-soft);display:flex;align-items:center;justify-content:center;margin:1.1rem 0 1.3rem}
.step .badge .ic{width:25px;height:25px;color:var(--coral-ink)}
.step h3{font-family:var(--serif);font-weight:400;font-size:1.5rem;color:var(--ink);letter-spacing:-.018em}
.step p{font-size:.99rem;line-height:1.62;color:var(--ink-soft);margin-top:.7rem}

/* ---- daily bread / groups ---- */
.groups{background:var(--mist);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(3.5rem,7vw,6rem) 0}
.groups .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}
.phone{width:320px;margin:0 auto;background:var(--ink);border-radius:40px;padding:16px 14px 22px;box-shadow:0 30px 70px -28px rgba(20,40,28,.45)}
.phone .notch{width:110px;height:22px;background:#0b1410;border-radius:99px;margin:0 auto 14px}
.phone .scr{background:var(--paper-2);border-radius:26px;padding:18px 14px 20px;min-height:480px}
.phone .from{text-align:center;font-size:.72rem;font-weight:600;letter-spacing:.12em;color:var(--gold)}
.phone .time{text-align:center;font-size:.66rem;color:var(--ink-faint);margin-top:.25rem}
.bub{background:var(--mist);border-radius:16px;border-bottom-left-radius:5px;margin-top:14px;max-width:236px;overflow:hidden;box-shadow:0 4px 14px -8px rgba(20,40,28,.25)}
.bub.txt{padding:.85rem 1rem;font-size:.82rem;line-height:1.5;color:var(--ink)}
.bub.txt b{display:block;margin-bottom:.2rem;font-family:var(--serif);font-weight:500}
.bub.txt .lnk{color:var(--coral-ink);font-weight:600}
.groups h2{font-family:var(--serif);font-weight:400;font-size:clamp(2rem,4vw,3rem);line-height:1.06;color:var(--ink);letter-spacing:-.02em}
.groups h2 .it{color:var(--coral-ink)}
.groups .lede{margin-top:1.2rem}
.checks{margin-top:1.8rem;display:grid;gap:.9rem}
.checks div{display:flex;gap:.85rem;align-items:flex-start;font-size:1rem;color:var(--ink);line-height:1.5}
.checks .ic{color:var(--coral-ink);margin-top:2px}
.groups .cta{margin-top:2.3rem;display:flex;gap:.9rem;align-items:center;flex-wrap:wrap}

/* ---- archive cards (hairline + hover lift) ---- */
.agrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:1.5rem}
.acard{background:var(--paper-2);border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:transform .22s,box-shadow .22s,border-color .22s}
.acard:hover{transform:translateY(-6px);box-shadow:var(--shadow-soft);border-color:var(--line-strong)}
.acard img{width:100%;aspect-ratio:108/154;object-fit:cover;object-position:top;background:var(--mist)}
.acard .meta{padding:1.2rem 1.4rem 1.3rem;display:flex;align-items:baseline;gap:.85rem}
.acard .d{font-size:.68rem;font-weight:600;letter-spacing:.14em;color:var(--gold);text-transform:uppercase}
.acard h3{font-family:var(--serif);font-weight:400;font-size:1.25rem;color:var(--ink);letter-spacing:-.018em}
.acard h3 .it{color:var(--coral-ink)}
.acard .r{margin-left:auto;font-size:.68rem;font-weight:600;letter-spacing:.08em;color:var(--ink-faint)}

/* ---- day page ---- */
.daypage{padding:clamp(3rem,6vw,4.5rem) 0 clamp(4rem,7vw,5.5rem);background:transparent}
.daytitle{font-family:var(--serif);font-weight:400;font-size:clamp(2.6rem,5.5vw,4rem);line-height:1.02;letter-spacing:-.022em;text-align:center;margin-top:1.5rem;color:var(--ink)}
.daytitle .it{color:var(--coral-ink)}
.daypage .verse{font-family:var(--accent-serif);font-style:italic;font-weight:300;font-size:clamp(1.4rem,2.6vw,1.8rem);line-height:1.4;text-align:center;max-width:22ch;margin:1.5rem auto 0;color:var(--coral-ink);letter-spacing:-.01em}
.daypage .ref{font-weight:600;font-size:.78rem;letter-spacing:.18em;color:var(--gold);text-align:center;margin-top:1rem;text-transform:uppercase}
.daypage .tri{margin-top:46px}
.daypage .tri .card{box-shadow:var(--shadow-soft)}
.outline{max-width:880px;margin:62px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:1.8rem 2.8rem}
.opt{display:flex;gap:.9rem;align-items:flex-start}
.opt .n{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--gold);font-size:1.35rem;line-height:1.1}
.opt h3{font-family:var(--serif);font-size:1.2rem;font-weight:500;letter-spacing:-.01em;color:var(--ink)}
.opt p{font-size:.95rem;color:var(--ink-soft);line-height:1.55;margin-top:.35rem}
.pager{max-width:880px;margin:62px auto 0;display:flex;justify-content:space-between;align-items:center;gap:14px}

/* ---- footer (light, airy) ---- */
.footer{background:var(--paper);color:var(--ink-soft);padding:clamp(3rem,5vw,4.2rem) 0 2.75rem;margin-top:0;border-top:1px solid var(--line)}
.footer .grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:2.6rem}
.footer .lockup .name{color:var(--ink)}
.footer .lockup .mark{color:var(--coral)}
.footer p.mini{font-size:.92rem;line-height:1.7;color:var(--ink-soft);margin-top:1rem;max-width:30ch}
.footer h4{font-family:var(--sans);font-size:.72rem;font-weight:700;letter-spacing:.14em;color:var(--ink-faint);margin-bottom:1rem;text-transform:uppercase}
.footer .col a,.footer .col span{display:block;font-size:.95rem;color:var(--ink-soft);margin-bottom:.6rem}
.footer .col a:hover{color:var(--coral-ink)}
.footer .legal{border-top:1px solid var(--line);margin-top:2.6rem;padding-top:1.4rem;display:flex;justify-content:space-between;font-size:.8rem;color:var(--ink-faint);letter-spacing:.01em;flex-wrap:wrap;gap:.6rem}
.footer .legal .it{color:var(--coral-ink)}
.footer .legal a{color:var(--ink-soft);border-bottom:1px solid var(--gold-line)}
.footer .legal a:hover{color:var(--coral-ink);border-color:var(--coral)}

/* ---- CBA Orlando ministry family (shared brand spine — see BRAND-FAMILY.md §5–§7) ---- */
/* The cross-link bar sits on the light page, directly above the footer. */
.cba-family-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1.4rem;
  max-width:1180px;margin:0 auto;padding:1.05rem clamp(1.4rem,5vw,40px);
  border-top:1px solid var(--line);
  font:500 .92rem/1.5 var(--sans)}
.cba-family-bar .cba-family-eyebrow{font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  font-size:.7rem;color:var(--ink-faint);margin-right:.4rem}
.cba-family-bar a{display:inline-flex;align-items:center;gap:.45rem;color:var(--ink-soft);text-decoration:none;border-bottom:1px solid transparent}
.cba-family-bar a:hover{color:var(--ink);border-bottom-color:var(--gold-line)}
.cba-family-bar .dot{width:.55rem;height:.55rem;border-radius:50%;background:var(--c,var(--coral));flex:0 0 auto}
/* Colophon + shared legal line live inside the (now light) footer. */
.footer .cba-family{border-top:1px solid var(--line);margin-top:2.6rem;padding-top:1.4rem;
  display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1.4rem}
.cba-colophon{display:inline-flex;align-items:center;gap:.5rem;
  font:600 .82rem/1 var(--sans);color:var(--ink-soft);text-decoration:none}
.cba-colophon .cba-mark{flex:0 0 auto;border-radius:6px}
.cba-colophon strong{color:var(--ink);font-weight:700}
.cba-colophon:hover strong{text-decoration:underline}
.cba-legalline{font-size:.78rem;line-height:1.65;color:var(--ink-faint);letter-spacing:.01em}
.cba-legalline a{color:var(--ink-soft);border-bottom:1px solid var(--gold-line)}
.cba-legalline a:hover{color:var(--coral-ink);border-color:var(--coral)}

/* ---- legal pages ---- */
.legalpage{padding:clamp(3rem,6vw,4.5rem) 0 clamp(4rem,7vw,6rem);background:transparent}
.legalpage .wrap{max-width:840px}
.legalpage h1{font-family:var(--serif);font-weight:400;font-size:clamp(2.4rem,5vw,3.4rem);line-height:1.04;letter-spacing:-.02em;text-align:center;margin-top:1.5rem;color:var(--ink)}
.legalpage h1 .it{color:var(--coral-ink)}
.legalpage .prose{margin-top:3rem}
.prose h2{font-family:var(--serif);font-weight:500;font-size:1.55rem;margin-top:2.4rem;color:var(--ink);letter-spacing:-.014em}
.prose p{font-size:1rem;line-height:1.75;color:var(--ink);margin-top:.9rem}
.prose ul{margin:.9rem 0 0 1.4rem}
.prose li{font-size:1rem;line-height:1.7;color:var(--ink);margin-top:.55rem}
.prose b{color:var(--ink);font-weight:700}
.prose a{color:var(--coral-ink);font-weight:600;border-bottom:1px solid var(--gold-line)}
.prose a:hover{color:var(--ink);border-color:var(--ink)}
@media (max-width:980px){.legalpage h1{font-size:2.4rem}}

/* ---- language switcher = small flags (BRAND-FAMILY.md §11) ---- */
.langs{display:inline-flex;align-items:center;gap:.42rem}
.langs a,.langs .on{display:inline-flex;width:25px;height:18px;border-radius:3px;overflow:hidden;
  box-shadow:0 0 0 1px rgba(0,0,0,.12);opacity:.5;transition:opacity .15s,transform .15s}
.langs a:hover{opacity:1;transform:translateY(-1px)}
.langs .on{opacity:1;box-shadow:0 0 0 2px var(--site-hue,#1FA15B)}
.langs .flag{width:100%;height:100%;display:block}

/* ---- signup form (hairline card, generous padding) ---- */
.joinform{margin-top:2rem;background:var(--paper-2);border:1px solid var(--line);border-radius:20px;padding:1.8rem 1.9rem 1.4rem;max-width:560px;box-shadow:var(--shadow-soft)}
.joinform.compact{padding:1.4rem 1.5rem 1.1rem}
.flegend{font-family:var(--serif);font-weight:500;font-size:1.45rem;margin-bottom:1.1rem;color:var(--ink);letter-spacing:-.018em}
.ffields{display:grid;gap:.9rem}
.fphone{width:100%;background:var(--paper-2);border:1px solid var(--line);border-radius:12px;padding:.9rem 1rem;font-size:16px;font-family:var(--sans);color:var(--ink);outline:none;transition:.2s}
.fphone:focus{border-color:var(--coral);box-shadow:0 0 0 3px var(--coral-soft)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.frow{display:flex;align-items:center;gap:.9rem;flex-wrap:wrap}
.flab{font-size:.7rem;font-weight:700;letter-spacing:.1em;color:var(--ink-faint);text-transform:uppercase;flex:0 0 92px}
.fseg{display:flex;gap:.4rem;flex-wrap:wrap}
.fseg label{cursor:pointer;position:relative}
.fseg input{position:absolute;opacity:0;pointer-events:none}
.fseg span{display:inline-block;border:1px solid var(--line);background:var(--paper-2);border-radius:999px;padding:.5rem 1rem;font-size:.82rem;font-weight:600;color:var(--ink-soft);transition:.2s}
.fseg input:checked + span{background:var(--coral);border-color:var(--coral);color:#fff}
.fseg label:hover span{border-color:var(--coral)}
.joinform .btn{width:100%}
.fstatus{margin-top:.75rem;font-size:.92rem;line-height:1.55;display:none}
.fstatus:not(:empty){display:block}
.fstatus.ok{color:#1C7A4E;font-weight:600}
.fstatus.err{color:var(--coral-ink);font-weight:600}
.fstatus .btn.wa{margin-top:.65rem}
.joinform .micro{margin-top:.75rem}
.groups .joinform{max-width:none}

/* ---- archive series / topic headers ---- */
.sub2{font-family:var(--serif);font-weight:400;font-size:1.6rem;color:var(--ink);text-align:center;margin-top:1rem;letter-spacing:-.018em}
.serhead{display:flex;align-items:center;gap:1rem;margin:3.4rem 0 0}
.serhead .rule{height:1.5px;width:30px;background:linear-gradient(90deg,var(--gold),transparent);flex:0 0 auto}
.serhead .rule.grow{flex:1;width:auto;background:var(--line);opacity:1}
.serhead h3{font-family:var(--serif);font-weight:400;font-size:1.55rem;white-space:nowrap;color:var(--ink);letter-spacing:-.018em}
.serhead .dates{font-size:.7rem;font-weight:600;letter-spacing:.14em;color:var(--gold);text-transform:uppercase;flex:0 0 auto}
.serhead + .agrid{margin-top:1.5rem}

/* ---- archive page: hero, search, category chips, favorites ---- */
.archivehero{position:relative;overflow:hidden;padding:clamp(3rem,6vw,4rem) 0 2.6rem;text-align:center;border-bottom:1px solid var(--line);background:transparent}
.archivehero .glow{position:absolute;inset:0;z-index:0;background:radial-gradient(70% 62% at 50% -10%,var(--coral-soft) 0%,transparent 62%)}
.archtitle{font-family:var(--serif);font-weight:400;font-size:clamp(2.6rem,5vw,3.6rem);line-height:1.02;letter-spacing:-.022em;margin-top:1.25rem;color:var(--ink)}
.archtitle .it{color:var(--coral-ink)}
.archlede{margin:1rem auto 0;max-width:560px;font-size:1.05rem;line-height:1.6;color:var(--ink-soft)}
.searchbar{max-width:600px;margin:1.75rem auto 0;display:flex;align-items:center;gap:.75rem;background:var(--paper-2);border:1px solid var(--line);border-radius:999px;padding:5px 10px 5px 18px;box-shadow:var(--shadow-soft);transition:.2s}
.searchbar:focus-within{border-color:var(--coral);box-shadow:0 12px 34px -18px rgba(242,98,76,.5)}
.searchbar .ic{color:var(--coral-ink);width:22px;height:22px;flex:0 0 auto}
.searchbar input{flex:1;min-width:0;border:none;background:none;outline:none;font-family:var(--sans);font-size:16.5px;color:var(--ink);padding:14px 0}
.searchbar input::placeholder{color:var(--ink-faint)}
.searchbar input::-webkit-search-cancel-button{display:none}
.aclear{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;background:var(--mist);border-radius:50%;cursor:pointer;color:var(--ink-faint);flex:0 0 auto;transition:.2s}
.aclear:hover{background:var(--coral);color:#fff}
.aclear svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
.chips{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:center;margin:1.5rem auto 0;max-width:860px}
.catchip{font-family:var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.02em;color:var(--ink-soft);background:var(--paper-2);border:1px solid var(--line);border-radius:999px;padding:.55rem 1.05rem;cursor:pointer;transition:.2s;white-space:nowrap}
.catchip:hover{border-color:var(--coral);color:var(--ink)}
.catchip.on{background:var(--coral);border-color:var(--coral);color:#fff}
.archivebody{padding:1.6rem 0 clamp(4rem,7vw,6rem);background:transparent}
.archivebody .topic{display:none}
.archivebody .topic.favgroup{display:block}
.archivebody .serhead{margin-top:1.5rem}
.noresults{text-align:center;font-family:var(--accent-serif);font-style:italic;font-size:1.3rem;color:var(--ink-faint);margin-top:3.4rem}

@media (max-width:980px){
  .hero .wrap,.groups .wrap{grid-template-columns:1fr}
  .collage{height:520px;max-width:480px;margin:0 auto}
  .steps,.tri,.agrid,.outline{grid-template-columns:1fr}
  .footer .grid{grid-template-columns:1fr 1fr}
  .nav{display:none}
  .serhead h3{white-space:normal}
}
@media (max-width:560px){
  .flab{flex:0 0 100%}
  .joinform{padding:1.4rem 1.25rem 1.1rem}
  .cba-family-bar{padding:1rem 22px;gap:.4rem 1.1rem}
  .footer .cba-family{flex-direction:column;align-items:flex-start;gap:.9rem}
  .topbar .langs{display:none}
}

/* ---- listen / podcast player — a quiet hairline card ---- */
.listen{max-width:560px;margin:1.4rem auto .25rem;background:var(--paper-2);border:1px solid var(--line);
  border-radius:16px;padding:.9rem 1rem;box-shadow:var(--shadow-soft)}
.listen .lh{display:flex;align-items:center;gap:.55rem;margin-bottom:.65rem;
  color:var(--gold);font-weight:600;letter-spacing:.1em;font-size:.72rem;text-transform:uppercase}
.listen .lh .ic{width:18px;height:18px;fill:none;stroke:var(--coral-ink);stroke-width:2;
  stroke-linecap:round;stroke-linejoin:round}
.listen audio{width:100%;height:38px;display:block}
.today .listen{margin-top:1.1rem}

/* ===== Start / Baptism path (/start/) ===== */
.nav a.start-link{color:var(--coral-ink);font-weight:600}
.nav a.start-link::after{background:var(--coral)}
.startpage .wrap{max-width:920px}
.sh{font-family:var(--serif);font-weight:400;font-size:clamp(1.9rem,3.4vw,2.5rem);line-height:1.1;letter-spacing:-.02em;color:var(--ink);text-align:center}
.sh .it{color:var(--coral-ink)}
.sh.light{color:#fff}
.sh.light .it{color:var(--gold-soft)}
.ssub{text-align:center;color:var(--ink-soft);margin-top:.75rem;font-size:1rem;letter-spacing:.01em}
/* hero */
.shero{position:relative;overflow:hidden;text-align:center;background:transparent}
.shero .glow{position:absolute;inset:0;z-index:0;background:radial-gradient(72% 62% at 50% -8%,var(--coral-soft) 0%,transparent 62%)}
.shero .wrap{padding:clamp(3.5rem,7vw,5rem) clamp(1.4rem,5vw,40px) 1.5rem}
.shero .kick{justify-content:center}
.shero h1{font-family:var(--serif);font-weight:400;font-size:clamp(2.8rem,6vw,4.4rem);line-height:1.02;letter-spacing:-.022em;margin:1.5rem 0 0;color:var(--ink)}
.shero h1 .gold,.shero h1 .it{font-style:italic;color:var(--coral-ink)}
.shero .lede{margin:1.5rem auto 0;max-width:660px;text-align:center;font-size:clamp(1.05rem,1.6vw,1.2rem);line-height:1.62;color:var(--ink-soft)}
/* you */
.syou .wrap{padding:2.8rem clamp(1.4rem,5vw,40px)}
.youlist{list-style:none;margin:1.5rem auto 0;max-width:620px;display:grid;gap:.9rem}
.youlist li{position:relative;padding:1rem 1.25rem 1rem 2.9rem;background:var(--paper-2);border:1px solid var(--line);border-radius:14px;font-size:1rem;line-height:1.6;color:var(--ink)}
.youlist li::before{content:"";position:absolute;left:1.25rem;top:1.45rem;width:8px;height:8px;background:var(--coral);border-radius:50%}
/* gospel */
.sgospel .wrap{padding:1.1rem clamp(1.4rem,5vw,40px) 4rem}
.shead{display:flex;align-items:center;justify-content:center;gap:1.25rem;margin-bottom:0}
.shead .rule{height:1.5px;width:50px;background:linear-gradient(90deg,transparent,var(--gold))}
.shead .rule:last-child{background:linear-gradient(90deg,var(--gold),transparent)}
.shead h2{font-family:var(--serif);font-weight:400;font-size:clamp(1.7rem,3vw,2.2rem);color:var(--ink);letter-spacing:-.018em}
.gmoves{margin-top:2.5rem;display:grid;gap:1.4rem}
.gmove{display:grid;grid-template-columns:64px 1fr;gap:1.5rem;align-items:start;padding:1.7rem;background:var(--paper-2);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-soft);transition:transform .22s,box-shadow .22s}
.gmove:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.gtag{font-family:var(--serif);font-style:italic;font-weight:400;font-size:2.1rem;color:var(--gold-soft);line-height:1}
.gbody h3{font-family:var(--serif);font-weight:400;font-size:1.4rem;color:var(--ink);margin:0;letter-spacing:-.018em}
.gbody p{margin-top:.65rem;font-size:1rem;line-height:1.72;color:var(--ink-soft)}
.vcard{margin:1.1rem 0 0;padding:1.1rem 1.4rem;border-left:2px solid var(--gold-line);background:var(--mist);border-radius:0 12px 12px 0}
.vcard blockquote{margin:0;font-family:var(--accent-serif);font-style:italic;font-weight:300;font-size:1.15rem;line-height:1.5;color:var(--coral-ink)}
.vcard figcaption{margin-top:.65rem;font-size:.7rem;font-weight:600;letter-spacing:.14em;color:var(--gold);text-transform:uppercase}
.grefs{margin-top:1rem;display:flex;flex-wrap:wrap;gap:.65rem}
.grefs.center{justify-content:center;margin-top:1.5rem}
.vref{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .9rem;border:1px solid var(--line);border-radius:999px;font-size:.7rem;font-weight:600;letter-spacing:.06em;color:var(--ink);text-transform:uppercase;transition:.2s}
.vref span{color:var(--ink-faint);font-weight:600;letter-spacing:.02em;text-transform:none}
.vref:hover{border-color:var(--coral);color:var(--coral-ink)}
/* prayer (the one intentionally darker, divine section — keep deep-ink ground) */
.sprayer{position:relative;background:var(--ink);color:#fff;margin:0;overflow:hidden}
.sprayer::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(60% 90% at 50% 0%, rgba(232,207,139,.16), transparent 70%)}
.sprayer .wrap{padding:clamp(3rem,6vw,4.5rem) clamp(1.4rem,5vw,40px);text-align:center}
.psub{max-width:620px;margin:.9rem auto 0;color:#cfd6cb;font-size:1rem;line-height:1.6}
.prayer{margin:1.8rem auto 0;max-width:680px;font-family:var(--accent-serif);font-style:italic;font-weight:300;font-size:clamp(1.4rem,2.4vw,1.65rem);line-height:1.5;color:#fff}
.pafter{max-width:620px;margin:1.6rem auto 0;color:#cfd6cb;font-size:1rem;line-height:1.6}
/* decide */
.sdecide{background:transparent}
.sdecide .wrap{padding:clamp(3rem,6vw,4.5rem) clamp(1.4rem,5vw,40px)}
.dform{margin-top:2rem;max-width:680px;margin-inline:auto}
.dopts{display:grid;gap:.75rem}
.dopt{cursor:pointer}
.dopt input{position:absolute;opacity:0;pointer-events:none}
.dcard{display:flex;flex-direction:column;gap:.2rem;padding:1.1rem 1.25rem;border:1.5px solid var(--line);border-radius:14px;background:var(--paper-2);transition:.18s}
.dopt input:checked + .dcard{border-color:var(--coral);background:var(--coral-soft);box-shadow:0 0 0 3px var(--coral-soft)}
.dcard .dt{font-family:var(--serif);font-weight:500;font-size:1.05rem;color:var(--ink)}
.dcard .dd{font-size:.85rem;color:var(--ink-soft)}
.dfields{margin-top:1.4rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.dfield{display:flex;flex-direction:column;gap:.45rem}
.dfield.wide{grid-column:1/-1}
.dlab{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}
.dlab i{font-style:normal;font-weight:500;text-transform:none;letter-spacing:0;color:var(--ink-faint)}
.dfield input,.dfield textarea{font-family:var(--sans);font-size:15px;color:var(--ink);background:var(--paper-2);border:1px solid var(--line);border-radius:12px;padding:.85rem .9rem;width:100%}
.dfield textarea{resize:vertical}
.dfield input:focus,.dfield textarea:focus{outline:none;border-color:var(--coral);box-shadow:0 0 0 3px var(--coral-soft)}
.dform .fseg{display:flex;gap:.5rem;flex-wrap:wrap}
.dform .fseg label{flex:1;min-width:96px;cursor:pointer}
.dform .fseg input{position:absolute;opacity:0;pointer-events:none}
.dform .fseg span{display:block;text-align:center;padding:.7rem .5rem;border:1px solid var(--line);border-radius:10px;font-size:.85rem;font-weight:600;color:var(--ink);background:var(--paper-2);transition:.18s}
.dform .fseg input:checked + span{border-color:var(--coral);background:var(--coral-soft);color:var(--coral-ink)}
.dform .btn{grid-column:1/-1;margin-top:.25rem}
/* baptism */
.sbap{background:var(--mist);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sbap .wrap{padding:clamp(2.8rem,5vw,3.5rem) clamp(1.4rem,5vw,40px);text-align:center}
.sbap .sh{color:var(--ink)}
.bcopy{max-width:680px;margin:1.1rem auto 0;font-size:1.05rem;line-height:1.72;color:var(--ink)}
/* community + daily (a quiet deep-ink band, two-up) */
.scc{position:relative;background:var(--ink);color:#fff;overflow:hidden}
.scc::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(50% 80% at 50% 0%, rgba(232,207,139,.12), transparent 72%)}
.scc .two{display:grid;grid-template-columns:1fr 1fr;gap:3rem;padding:clamp(2.8rem,5vw,3.75rem) clamp(1.4rem,5vw,40px)}
.scc .sh{text-align:left}
.scc p{margin-top:.9rem;font-size:1rem;line-height:1.7;color:#cfd6cb}
.scc .btn{margin-top:1.25rem}
/* notice */
.snote{padding:1.4rem 0;background:transparent}
.snote .wrap{display:block;max-width:920px;font-size:.72rem;line-height:1.6;color:var(--ink-faint);text-align:center}
@media(max-width:760px){
  .gmove{grid-template-columns:44px 1fr;gap:1rem;padding:1.25rem}
  .gtag{font-size:1.6rem}
  .dfields{grid-template-columns:1fr}
  .scc .two{grid-template-columns:1fr;gap:2rem}
}
