/* ============================================================
   scottream.com
   Built on the Total Ministry Health design system so the two
   sites read as siblings: same palette, type, spacing, motion.
   Base tokens/components mirror the TMH stylesheet; the
   SCOTTREAM ADDITIONS block at the bottom adds the
   story wall, wordmark, and a few personal-site touches.
   ============================================================ */

:root{
  --t:#345A86;   /* steel blue (mid) — replaces sage */
  --tl:#E7ECF3;
  --o:#C4A265;   /* gold accent */
  --ol:#F5F0E8;
  --l:#9DB4D2;   /* light steel */
  --grn:#5E7E6B; /* green — He Makes Me Lie Down (green pastures) */
  --vb:#8B6F5E;  /* book accent: brown */
  --vt:#5B8A8A;  /* book accent: teal */
  --vp:#7A6F8B;  /* book accent: purple (Still True) */
  --vg:#C4A265;
  --nv:#1B2A4A;  /* deep navy — primary heading color */
  --dk:#2D2D2D;
  --warm:#FAFAF7;
  --cr:#F3EFE8;
  --w:#fff;
  --cd:#FFFFFF;
  --bd:#E0DDD6;
  --tx:#2D2D2D;
  --tx2:#6B6560;
  --tx3:#9A958E;
  --hd:'Playfair Display',Georgia,serif;
  --bd2:'Source Sans 3',-apple-system,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--bd2);background:var(--warm);color:var(--tx);font-size:17px;line-height:1.7;overflow-x:hidden}

.rv{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}
.rv.v{opacity:1;transform:translateY(0)}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}.d4{transition-delay:.4s}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(250,250,247,.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--bd)}
.cs{height:2px;display:flex}.cs div{flex:1}
.ni{max-width:1280px;margin:0 auto;padding:12px 32px;display:flex;align-items:center;justify-content:space-between}
.nav-logo{text-decoration:none;display:flex;flex-direction:column;line-height:1}
.nav-logo .wm{font-family:var(--hd);font-size:21px;font-weight:700;color:var(--nv);letter-spacing:.3px}
.nav-logo .wms{font-size:9px;letter-spacing:2.5px;text-transform:uppercase;color:var(--t);font-weight:600;margin-top:3px}
.nl{display:flex;gap:20px;align-items:center}
.nl a{color:#6B6B6B;text-decoration:none;font-size:13px;font-weight:500;cursor:pointer;transition:color .3s;letter-spacing:.2px}
.nl a:hover,.nl a.on{color:var(--nv)}
.nl .cta{background:var(--o);color:var(--w)!important;padding:8px 18px;border-radius:100px;font-weight:600;font-size:12px;letter-spacing:.5px}
.nl .cta:hover{background:#b8965a}
.hm{display:none;cursor:pointer;flex-direction:column;gap:4px}.hm span{width:20px;height:1.5px;background:var(--nv)}

/* BTNS */
.b{display:inline-flex;align-items:center;gap:6px;padding:12px 26px;border-radius:100px;font-family:var(--bd2);font-size:13.5px;font-weight:600;text-decoration:none;cursor:pointer;border:none;letter-spacing:.2px;transition:all .3s}
.bo{background:var(--o);color:#fff}.bo:hover{background:#b8965a;transform:translateY(-2px);box-shadow:0 8px 20px rgba(196,162,101,.18)}
.bn{background:var(--nv);color:#fff}.bn:hover{background:#13203b;transform:translateY(-2px)}
.bt{background:var(--t);color:#fff}.bt:hover{background:#28486e;transform:translateY(-2px)}
.bgrn{background:var(--grn);color:#fff}.bgrn:hover{background:#4d6a59;transform:translateY(-2px)}
.bb{background:var(--vb);color:#fff}.bb:hover{background:#7a6151;transform:translateY(-2px)}
.bp{background:var(--vp);color:#fff}.bp:hover{background:#6a6079;transform:translateY(-2px)}
.bg{background:0;color:var(--nv);border:1.5px solid var(--bd)}.bg:hover{border-color:var(--nv);transform:translateY(-2px)}
.bw{background:0;color:var(--nv);border:1.5px solid var(--t)}.bw:hover{border-color:var(--nv);transform:translateY(-2px)}
.bs{padding:10px 20px;font-size:12.5px}.bf{width:100%;justify-content:center}

/* SECTIONS */
.s{padding:80px 32px;max-width:1240px;margin:0 auto}.sf{padding:80px 32px}
.sw{background:var(--w)}.sc{background:var(--cr)}.sd{background:var(--cr)}.sn{background:#E7ECF3}
.sh{margin-bottom:48px}.sh.c{text-align:center;max-width:620px;margin-left:auto;margin-right:auto;margin-bottom:48px}
.sh h2{font-family:var(--hd);font-size:clamp(25px,3.8vw,40px);font-weight:700;color:var(--nv);line-height:1.12;margin-bottom:10px}
.sh p{font-size:16px;color:var(--tx2);line-height:1.7}
.lb{font-size:10px;letter-spacing:3px;text-transform:uppercase;font-weight:600;margin-bottom:8px;display:block}

/* HERO */
.hero{background:var(--warm);padding:140px 32px 84px;position:relative;overflow:hidden;text-align:center}
.hero .hg1{position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(52,90,134,.07) 0%,transparent 60%);top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}
.hero .hg2{position:absolute;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(196,162,101,.05) 0%,transparent 60%);top:35%;left:60%;pointer-events:none}
.hero .h-scene{position:absolute;bottom:0;left:0;right:0;height:180px;overflow:hidden;pointer-events:none}
.hero .h-hill1{position:absolute;bottom:-40px;left:-10%;width:55%;height:180px;border-radius:50%;background:rgba(52,90,134,.05)}
.hero .h-hill2{position:absolute;bottom:-55px;right:-8%;width:48%;height:160px;border-radius:50%;background:rgba(157,180,210,.03)}
.hero .h-path{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:2px;height:100px;background:linear-gradient(to top,rgba(196,162,101,.12),transparent)}
.hero .hc{position:relative;max-width:720px;margin:0 auto}
.hero .hl{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--t);margin-bottom:18px;font-weight:600}
.hero h1{font-family:var(--hd);font-size:clamp(32px,5vw,58px);font-weight:700;color:var(--nv);line-height:1.08;margin-bottom:18px}
.hero h1 em{font-style:italic;color:var(--o)}
.hero .hsub{font-size:clamp(15px,1.7vw,18px);color:#6B6B6B;margin-bottom:32px;max-width:560px;margin-left:auto;margin-right:auto;line-height:1.7}
.hbtns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}

/* PAGE HEADER (interior pages) */
.ph{padding:128px 32px 16px;text-align:center;max-width:760px;margin:0 auto}
.ph .hl{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--t);margin-bottom:14px;font-weight:600}
.ph h1{font-family:var(--hd);font-size:clamp(30px,4.4vw,48px);font-weight:700;color:var(--nv);line-height:1.1;margin-bottom:14px}
.ph h1 em{font-style:italic;color:var(--o)}
.ph p{font-size:16px;color:var(--tx2);line-height:1.7;max-width:580px;margin:0 auto}

/* PULL QUOTE BAND */
.cq-s{background:var(--cr);padding:56px 32px}.cq{max-width:720px;margin:0 auto;text-align:center}
.cq blockquote{font-family:var(--hd);font-size:clamp(16px,1.9vw,20px);font-style:italic;color:var(--tx);line-height:1.7;margin-bottom:14px;position:relative;padding:0 16px}
.cq blockquote::before{content:'\201C';font-size:50px;color:var(--t);position:absolute;top:-14px;left:-6px;font-family:var(--hd);opacity:.3}
.cq cite{font-family:var(--bd2);font-size:13px;color:var(--tx2);font-style:normal;font-weight:600}
.cq cite span{font-weight:400;color:var(--tx3)}

/* TRUST BAR */
.tr{background:var(--nv);padding:34px 32px;display:flex;justify-content:center;gap:44px;flex-wrap:wrap}
.ti{text-align:center}.ti-n{font-family:var(--hd);font-size:28px;font-weight:700;color:var(--l)}.ti-l{font-size:10px;color:#c2cee0;letter-spacing:.5px;margin-top:2px}

/* BOOK CARDS */
.bkg{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1060px;margin:0 auto}
.bk{background:var(--w);border:1px solid var(--bd);border-radius:14px;overflow:hidden;transition:transform .3s;display:flex;flex-direction:column}
.bk:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.04)}
.bk-cv{aspect-ratio:3/2;display:flex;align-items:center;justify-content:center;padding:20px}
.bmk{width:96px;aspect-ratio:2/3;border-radius:3px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 7px;text-align:center;box-shadow:5px 6px 16px rgba(0,0,0,.28)}
.bmk .bt2{font-family:var(--hd);font-size:12px;font-weight:700;color:#fff;line-height:1.2;margin-bottom:2px}.bmk .bt2 em{font-style:italic}
.bmk .bss{font-size:6.5px;color:rgba(255,255,255,.72);font-style:italic;line-height:1.3}.bmk .ba{font-size:6px;color:rgba(255,255,255,.4);letter-spacing:1px;text-transform:uppercase;margin-top:8px}
.bk-bd{padding:22px 18px;display:flex;flex-direction:column;flex-grow:1}
.bk-bd .bklb{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;font-weight:700;margin-bottom:6px}
.bk-bd h3{font-family:var(--hd);font-size:18px;font-weight:700;color:var(--nv);margin-bottom:3px;line-height:1.2}
.bk-bd .bksub{font-size:12px;color:var(--tx2);font-style:italic;margin-bottom:10px}
.bk-bd p{font-size:13px;color:var(--tx2);line-height:1.6;margin-bottom:14px;flex-grow:1}

/* ABOUT */
.abg{display:grid;grid-template-columns:280px 1fr;gap:44px;max-width:980px;margin:0 auto;align-items:start}
.abi{width:100%;aspect-ratio:3/4;border-radius:14px;overflow:hidden;border:1px solid var(--bd);background:linear-gradient(135deg,var(--cr),var(--bd));display:flex;align-items:center;justify-content:center}
.abi img{width:100%;height:100%;object-fit:cover}
.abi .mono{font-family:var(--hd);font-size:46px;font-weight:700;color:var(--w);letter-spacing:2px}
.abt h2{font-family:var(--hd);font-size:30px;color:var(--nv);font-weight:700;margin-bottom:12px}
.abt p{font-size:15.5px;color:var(--tx);line-height:1.8;margin-bottom:12px}
.abcr{border-left:3px solid var(--t);padding-left:16px;margin:20px 0;font-size:13px;color:var(--tx2);line-height:1.75}

/* CONTACT / SHARE FORM */
.cf{max-width:560px;margin:0 auto}
.fg{margin-bottom:16px}.fg label{display:block;font-size:12px;font-weight:600;color:var(--nv);margin-bottom:5px}
.fg label .opt{font-weight:400;color:var(--tx3);text-transform:none;letter-spacing:0}
.fg input,.fg textarea,.fg select{width:100%;padding:12px 14px;border:1px solid var(--bd);border-radius:10px;background:var(--w);color:var(--tx);font-family:var(--bd2);font-size:14px;outline:none;transition:border-color .3s}
.fg input:focus,.fg textarea:focus,.fg select:focus{border-color:var(--t)}
.fg textarea{min-height:150px;resize:vertical}
.fr2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.chk{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--tx2);line-height:1.5;cursor:pointer;margin-bottom:8px}
.chk input{width:18px;height:18px;margin-top:1px;accent-color:var(--t);flex-shrink:0}

/* EMAIL / CTA BAND */
.em{text-align:center;padding:76px 32px;background:var(--cr)}
.em h3{font-family:var(--hd);font-size:clamp(20px,3vw,30px);color:var(--nv);font-weight:700;margin-bottom:8px}
.em p{font-size:15px;color:#6B6B6B;margin-bottom:22px;max-width:480px;margin-left:auto;margin-right:auto}

/* ENDORSEMENT QUOTE */
.eq{border-left:3px solid var(--t);padding:12px 18px;background:rgba(52,90,134,.05);border-radius:0 10px 10px 0;margin-bottom:14px}
.eq p{font-family:var(--hd);font-style:italic;font-size:14.5px;color:var(--tx);margin-bottom:4px;line-height:1.7}
.eq cite{font-size:11px;color:var(--tx3);font-style:normal;font-weight:600}

/* FOOTER */
.ft{background:var(--cr);padding:54px 32px 18px;color:#6B6B6B;border-top:1px solid var(--bd)}
.ftg{max-width:1020px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px}
.ft h4{font-family:var(--hd);color:var(--nv);font-size:14px;font-weight:600;margin-bottom:12px}
.ft p{font-size:12px;line-height:1.6}.ft a{color:#6B6B6B;text-decoration:none;font-size:12px;display:block;margin-bottom:6px;cursor:pointer;transition:color .3s}.ft a:hover{color:var(--nv)}
.ftb{max-width:1020px;margin:32px auto 0;padding-top:12px;border-top:1px solid var(--bd);display:flex;justify-content:space-between;font-size:10px;flex-wrap:wrap;gap:4px}
.fts{display:flex;height:3px;margin-top:12px}.fts div{flex:1}

/* ============================================================
   SCOTTREAM ADDITIONS — STORY WALL
   ============================================================ */

/* Featured story */
.fst{max-width:760px;margin:0 auto 8px;background:var(--w);border:1px solid var(--bd);border-radius:16px;padding:40px 38px;position:relative;text-align:center}
.fst::before{content:'\201C';font-family:var(--hd);font-size:72px;color:var(--t);opacity:.22;position:absolute;top:6px;left:24px;line-height:1}
.fst .fst-q{font-family:var(--hd);font-size:clamp(17px,2.1vw,22px);font-style:italic;color:var(--tx);line-height:1.65;margin-bottom:18px}
.fst .fst-m{font-size:13px;color:var(--tx2);font-weight:600}
.fst .fst-m span{color:var(--tx3);font-weight:400}

/* Filter chips */
.sfilt{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:34px}
.sfilt button{font-family:var(--bd2);font-size:12px;font-weight:600;color:var(--tx2);background:var(--w);border:1px solid var(--bd);border-radius:100px;padding:7px 16px;cursor:pointer;transition:all .25s;letter-spacing:.2px}
.sfilt button:hover{border-color:var(--t);color:var(--nv)}
.sfilt button.on{background:var(--nv);color:#fff;border-color:var(--nv)}

/* Masonry wall */
.wall{column-count:3;column-gap:18px;max-width:1080px;margin:0 auto}
.tc{break-inside:avoid;background:var(--w);border:1px solid var(--bd);border-radius:14px;padding:24px 22px;margin-bottom:18px;transition:transform .3s,box-shadow .3s}
.tc:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.05)}
.tc .tc-q{font-size:14.5px;color:var(--tx);line-height:1.72;margin-bottom:16px}
.tc .tc-q .lead{font-family:var(--hd);color:var(--t);font-size:30px;line-height:0;position:relative;top:10px;margin-right:3px}
.tc .tc-ft{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.tc .tc-who{font-size:12.5px;font-weight:600;color:var(--nv)}
.tc .tc-who span{display:block;font-weight:400;font-size:11px;color:var(--tx3);margin-top:1px}
.tag{font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:4px 10px;border-radius:100px;white-space:nowrap}
.tag-mic{background:rgba(196,162,101,.14);color:#9a7d3f}
.tag-st{background:rgba(122,111,139,.14);color:#5f5571}
.tag-hml{background:rgba(122,139,111,.16);color:#566b4d}
.tag-other{background:rgba(94,111,84,.12);color:var(--nv)}
.tag-sample{background:var(--dk);color:#fff;opacity:.55}

/* Thank-you confirmation */
.ty{max-width:560px;margin:0 auto;text-align:center;background:var(--w);border:1px solid var(--bd);border-radius:16px;padding:48px 40px;display:none}
.ty.show{display:block}
.ty .tyk{width:60px;height:60px;border-radius:50%;background:var(--tl);display:flex;align-items:center;justify-content:center;margin:0 auto 18px;font-size:28px;color:var(--nv)}
.ty h3{font-family:var(--hd);font-size:24px;color:var(--nv);font-weight:700;margin-bottom:10px}
.ty p{font-size:14.5px;color:var(--tx2);line-height:1.7;margin-bottom:6px}

.note{max-width:560px;margin:14px auto 0;font-size:11.5px;color:var(--tx3);text-align:center;line-height:1.6}

/* Curated testimonials grid */
.tgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:980px;margin:0 auto}
@media(max-width:760px){.tgrid{grid-template-columns:1fr}}

/* RESPONSIVE */
@media(max-width:900px){
  .nl{display:none}.hm{display:flex}
  .nl.opn{display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:var(--warm);padding:14px 32px;gap:12px;border-bottom:1px solid var(--bd)}
  .abg{grid-template-columns:1fr}.abi{max-width:250px;margin:0 auto}
  .bkg{grid-template-columns:1fr}
  .ftg{grid-template-columns:1fr 1fr}
  .wall{column-count:2}
  .s{padding:60px 18px}.sf{padding:60px 18px}
}
@media(max-width:600px){
  .wall{column-count:1}
  .fr2{grid-template-columns:1fr}
  .ftg{grid-template-columns:1fr}
  .tr{gap:28px}
}
