
/* Rooted in Christ — own system. Navy ground, gold rules, cream light sections. */
@font-face{font-family:"Cormorant";src:url("fonts/cormorant-upright.woff2") format("woff2");
  font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:"Cormorant";src:url("fonts/cormorant-italic.woff2") format("woff2");
  font-weight:300 700;font-style:italic;font-display:swap}

:root{
  --navy:#001C35; --harbor:#002B4D; --gold:#C9A45B; --gold-b:#D8B166;
  --cream:#F8F1E7; --linen:#FDFBF7; --ink:#12293F; --gold-ink:#89651F;
  --rule:rgba(201,164,91,.42); --rule-soft:rgba(201,164,91,.22);
  --serif:"Cormorant",Cormorant Garamond,"Iowan Old Style",Georgia,serif;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --pad:clamp(20px,5.2vw,56px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--cream);color:var(--ink);
  font-family:var(--sans);font-size:17px;line-height:1.62;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
.wrap{max-width:1080px;margin-inline:auto;padding-inline:var(--pad)}
.skip{position:absolute;left:-9999px}
.skip:focus{left:12px;top:12px;z-index:99;background:var(--gold);color:var(--navy);
  padding:10px 16px;text-decoration:none;font-size:.8rem}

/* ── header ─────────────────────────────────────────────────────────────── */
.hd{background:var(--navy)}
.hd .wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding-block:15px}
.hd a.brand{display:block;line-height:0}
.hd a.brand img{width:clamp(124px,25vw,176px)}
.hd .hd-cta{font-size:.63rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
  color:var(--cream);text-decoration:none;border:1px solid var(--rule);
  padding:11px 15px;white-space:nowrap;transition:border-color .2s,background .2s}
.hd .hd-cta:hover{border-color:var(--gold);background:rgba(201,164,91,.1)}

/* ── type ───────────────────────────────────────────────────────────────── */
.eyebrow{font-family:var(--sans);font-size:.66rem;font-weight:600;letter-spacing:.22em;
  text-transform:uppercase;color:var(--gold-ink);margin:0 0 18px}
.sec--navy .eyebrow,.hero .eyebrow{color:var(--gold)}
h1,h2,h3{font-family:var(--serif);font-weight:700;text-transform:uppercase;
  letter-spacing:.045em;line-height:1.05;margin:0}
h1{font-size:clamp(1.9rem,6.4vw,3.6rem)}
h2{font-size:clamp(1.45rem,4.2vw,2.5rem)}
h3{font-size:clamp(1.05rem,2.6vw,1.42rem);letter-spacing:.06em}
.promise{font-family:var(--serif);font-style:italic;font-weight:400;
  font-size:clamp(1.28rem,3.4vw,1.78rem);line-height:1.3;letter-spacing:.01em;margin:0}
.lede{font-size:clamp(1rem,2.4vw,1.09rem);max-width:56ch}
.gold-rule{width:58px;height:1px;background:var(--gold);border:0;margin:26px 0}
.sec{padding-block:clamp(52px,8.5vw,100px)}
.sec--cream{background:var(--cream)}
.sec--linen{background:var(--linen)}
.sec--navy{background:var(--navy);color:var(--cream)}
.sec--navy .lede,.sec--navy p{color:rgba(248,241,231,.8)}

/* ── hero ───────────────────────────────────────────────────────────────── */
.hero{position:relative;background:var(--navy);color:var(--cream);overflow:hidden;
  display:flex;align-items:flex-end;min-height:clamp(500px,80svh,720px)}
.hero-art{position:absolute;inset:0}
.hero-art img{width:100%;height:100%;object-fit:cover;object-position:50% 62%}
.hero-art::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,28,53,.30) 0%,rgba(0,28,53,.48) 30%,
    rgba(0,28,53,.82) 68%,var(--navy) 100%)}
.hero .wrap{position:relative;z-index:2;width:100%;padding-block:clamp(56px,14vw,80px)}
.hero h1{text-shadow:0 1px 28px rgba(0,20,38,.5)}
.hero .promise{max-width:24ch;margin-top:26px;color:var(--cream)}
.hero .promise::before{content:"";display:block;width:64px;height:1px;
  background:var(--gold);margin-bottom:22px}
.hero-go{display:inline-block;margin-top:38px;font-size:.68rem;font-weight:600;
  letter-spacing:.22em;text-transform:uppercase;color:var(--gold);text-decoration:none;
  border-bottom:1px solid var(--rule);padding-bottom:8px}
.hero-go:hover{color:var(--gold-b);border-bottom-color:var(--gold)}

@media(max-width:859px){
  .hero{display:block;min-height:0}
  .hero-art{position:relative;inset:auto;height:min(44svh,340px)}
  .hero-art img{object-position:50% 58%}
  .hero-art::after{background:linear-gradient(180deg,rgba(0,28,53,.28) 0%,rgba(0,28,53,.2) 52%,
    rgba(0,28,53,.62) 84%,var(--navy) 100%)}
  .hero .wrap{padding-block:34px 52px}
}
@media(min-width:860px){
  .hero{align-items:center;min-height:clamp(560px,84svh,760px)}
  .hero-art{left:auto;right:0;width:56%}
  .hero-art img{object-position:50% 52%}
  .hero-art::after{background:linear-gradient(90deg,var(--navy) 0%,rgba(0,28,53,.92) 16%,
    rgba(0,28,53,.55) 46%,rgba(0,28,53,.12) 82%,rgba(0,28,53,.04) 100%)}
  .hero .wrap{padding-block:clamp(72px,9vw,104px)}
  .hero-copy{max-width:min(56%,620px)}
}

/* ── capture ────────────────────────────────────────────────────────────── */
.cap{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px;max-width:520px}
.cap .field{flex:1 1 240px;min-width:0}
.cap label{display:block;font-size:.62rem;font-weight:600;letter-spacing:.22em;
  text-transform:uppercase;color:var(--gold-ink);margin-bottom:9px}
.cap input{width:100%;font:inherit;font-size:16px;color:var(--ink);
  background:var(--linen);border:1px solid rgba(18,41,63,.22);padding:15px 16px;
  border-radius:0;-webkit-appearance:none}
.cap input:focus{outline:2px solid var(--gold);outline-offset:1px}
.cap button{font-family:var(--sans);font-size:.68rem;font-weight:700;letter-spacing:.2em;
  text-transform:uppercase;color:var(--navy);background:var(--gold);border:1px solid var(--gold);
  padding:16px 26px;cursor:pointer;transition:background .2s,color .2s;flex:0 0 auto}
.cap button:hover{background:var(--gold-b);border-color:var(--gold-b)}
.cap-note{flex:1 0 100%;margin:2px 0 0;font-size:.86rem;color:#7b3f2f;display:none}
.cap-note[data-show]{display:block}
.cap-note a{color:inherit;font-weight:600}
.sec--navy .cap label{color:var(--gold)}
.sec--navy .cap input{background:rgba(248,241,231,.06);border-color:rgba(201,164,91,.45);
  color:var(--cream)}
.sec--navy .cap input::placeholder{color:rgba(248,241,231,.45)}
.sec--navy .cap-note{color:var(--gold-b)}

/* ── offer ──────────────────────────────────────────────────────────────── */
.offer-grid{display:grid;grid-template-columns:1fr;gap:34px;align-items:center}
.offer-art{width:min(62%,238px)}
.offer-art img{width:100%;box-shadow:0 26px 54px -28px rgba(18,41,63,.55)}
.offer-sub{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gold-ink);margin:16px 0 0}
@media(min-width:860px){
  .offer-grid{grid-template-columns:238px minmax(0,1fr);gap:56px}
  .offer-art{width:100%}
}

/* ── the seven days ─────────────────────────────────────────────────────── */
.days{list-style:none;margin:34px 0 0;padding:0;border-top:1px solid var(--rule-soft)}
.days li{display:grid;grid-template-columns:auto 1fr;gap:4px 18px;
  padding:20px 0;border-bottom:1px solid var(--rule-soft)}
.days .n{font-size:.63rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gold-ink);padding-top:6px;white-space:nowrap}
.days .ref{font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(18,41,63,.55);grid-column:2;order:3;padding-top:6px}
.days h3{grid-column:2;letter-spacing:.04em}
@media(max-width:759px){
  .days li{grid-template-columns:1fr;gap:3px;padding:18px 0}
  .days .n{order:1;padding-top:0}
  .days .ref{order:2;grid-column:1;padding-top:0}
  .days h3{order:3;grid-column:1;margin-top:7px}
}
@media(min-width:760px){
  .days li{grid-template-columns:112px 210px minmax(0,1fr);align-items:baseline}
  .days .n,.days .ref{padding-top:0}
  .days .ref{grid-column:2;order:2}
  .days h3{grid-column:3;order:3}
}

/* ── what's inside ──────────────────────────────────────────────────────── */
.panels{display:grid;grid-template-columns:1fr;gap:16px;margin-top:36px}
.panel{background:var(--harbor);border:1px solid rgba(201,164,91,.24);
  padding:26px 24px 28px}
.panel .lab{font-size:.6rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gold);margin:0 0 14px}
.panel h3{color:var(--cream);margin-bottom:14px}
.panel p{font-family:var(--serif);font-style:italic;font-size:1.02rem;line-height:1.5;
  margin:0;color:rgba(248,241,231,.76)}
.panel ul{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 14px}
.panel ul li{font-size:.63rem;letter-spacing:.18em;text-transform:uppercase;
  color:rgba(248,241,231,.86);border-bottom:1px solid rgba(201,164,91,.3);padding-bottom:4px}
@media(min-width:860px){.panels{grid-template-columns:repeat(3,1fr);gap:18px}}

/* ── closing capture ────────────────────────────────────────────────────── */
.close-cap{text-align:center}
.close-cap .cap{margin-inline:auto;justify-content:center}
.close-cap .promise{max-width:26ch;margin:0 auto;text-wrap:balance}
.close-cap .gold-rule{margin:26px auto 30px}

/* ── guide page ─────────────────────────────────────────────────────────── */
.page-head{background:var(--navy);color:var(--cream);
  padding-block:clamp(48px,9vw,92px);border-bottom:1px solid rgba(201,164,91,.28)}
.page-head .promise{color:rgba(248,241,231,.82);margin-top:20px}
.page-head h1{max-width:22ch}
.prose{max-width:64ch}
.guide-grid{display:grid;grid-template-columns:1fr;gap:44px}
.guide-aside{background:var(--linen);border:1px solid var(--rule-soft);padding:24px 22px 26px}
.guide-aside img{width:min(58%,190px);box-shadow:0 20px 40px -26px rgba(18,41,63,.5);margin-bottom:20px}
.guide-aside .promise{font-size:1.18rem;color:var(--ink);margin:14px 0 0}
.guide-aside .facts{margin:16px 0 0}
.guide-aside .cap{margin-top:18px}
.guide-aside .cap button{flex:1 1 100%;padding:15px 18px}
@media(max-width:979px){
  .guide-aside .cap{display:none}
}
@media(min-width:980px){
  .guide-grid{grid-template-columns:minmax(0,1fr) 320px;gap:60px;align-items:start}
  .prose{max-width:none}
  .guide-aside{position:sticky;top:28px}
}
.prose p{margin:0 0 1.15em}
.prose p:last-child{margin-bottom:0}
.block{margin-top:44px;padding-top:34px;border-top:1px solid var(--rule-soft)}
.block:first-of-type{margin-top:34px}
.block .lab{font-size:.62rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gold-ink);margin:0 0 12px}
.block h2{margin-bottom:16px}
blockquote{margin:22px 0;padding-left:20px;border-left:1px solid var(--gold);
  font-family:var(--serif);font-style:italic;font-size:clamp(1.12rem,2.8vw,1.32rem);
  line-height:1.45;color:var(--ink)}
blockquote cite{display:block;font-family:var(--sans);font-style:normal;font-size:.6rem;
  letter-spacing:.2em;text-transform:uppercase;color:rgba(18,41,63,.5);margin-top:12px}
.habit-list{list-style:none;margin:18px 0 0;padding:0;border-top:1px solid var(--rule-soft)}
.habit-list li{display:flex;gap:16px;align-items:baseline;padding:14px 0;
  border-bottom:1px solid var(--rule-soft)}
.habit-list .idx{font-family:var(--serif);font-size:1.1rem;color:var(--gold);min-width:1.6em}
.habit-list .nm{font-family:var(--serif);text-transform:uppercase;letter-spacing:.1em;
  font-size:1rem}
.habit-list .ds{font-size:.86rem;color:rgba(18,41,63,.62);margin-left:auto;text-align:right}
.facts{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:26px;padding:0;list-style:none}
.facts li{font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--gold-ink)}

/* ── thank you ──────────────────────────────────────────────────────────── */
.ty{background:var(--navy);color:var(--cream);min-height:62svh;display:flex;
  align-items:center;padding-block:clamp(56px,10vw,104px)}
.ty .wrap{width:100%}
.ty .brand{width:clamp(150px,34vw,214px);margin-bottom:38px}
.ty h1{max-width:16ch;text-wrap:balance}
.ty .promise{color:rgba(248,241,231,.8);margin-top:22px;max-width:28ch}
.dl{display:inline-flex;align-items:center;gap:12px;margin-top:36px;
  background:var(--gold);color:var(--navy);text-decoration:none;
  font-size:.7rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;
  padding:18px 30px;transition:background .2s}
.dl:hover{background:var(--gold-b)}
.ty-note{font-size:.88rem;color:rgba(248,241,231,.62);margin:20px 0 0}
.ty-back{margin-top:44px;font-size:.66rem;letter-spacing:.2em;text-transform:uppercase}
.ty-back a{color:var(--gold);text-decoration:none;border-bottom:1px solid var(--rule);
  padding-bottom:6px}

/* ── footer ─────────────────────────────────────────────────────────────── */
.foot{background:var(--navy);color:rgba(248,241,231,.6);padding-block:44px 38px}
.foot-strip{font-family:var(--serif);text-transform:uppercase;letter-spacing:.34em;
  font-size:.7rem;color:var(--gold);text-align:center;padding-bottom:26px;
  border-bottom:1px solid rgba(201,164,91,.26);margin:0 0 24px}
.foot .row{display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;
  align-items:center;font-size:.72rem}
.foot nav ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px 20px;margin:0;padding:0}
.foot nav a{text-decoration:none;color:rgba(248,241,231,.72)}
.foot nav a:hover{color:var(--gold)}

@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important}}
