:root{
  --bg:#100d0a; --bg-2:#16120d; --panel:#1a140d; --panel-2:#1f1810;
  --line:#3a2e1b; --line-soft:#28201400; --hair:rgba(199,154,84,.22);
  --gold:#C79A54; --gold-bright:#E2BC72; --paper:#FBF6EC; --gold-dim:rgba(199,154,84,.5);
  --ink:#F2EFE7; --body:#E8E5DD; --muted:#B9B6AE; --bad:#c07a5a;
  --display:'Cinzel',serif; --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'Montserrat','Inter',system-ui,sans-serif; --maxw:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
html,body{overflow-x:clip;max-width:100%}
body{margin:0;background:var(--bg);color:var(--body);font-family:var(--sans);
  font-size:18px;line-height:1.7;font-weight:400;-webkit-font-smoothing:antialiased}
a{color:var(--gold);text-decoration:none}
img{max-width:100%;display:block}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.skip-link{position:absolute;left:-9999px;top:0;z-index:300;background:var(--gold);color:#15100a;
  padding:.6rem 1.2rem;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase}
.skip-link:focus{left:0}
[id]{scroll-margin-top:5.5rem}
[id]:target{box-shadow:-14px 0 0 -12px var(--gold)}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
.mark{width:1em;height:1em;display:inline-block;vertical-align:middle}

/* ---- CHART ORNAMENT LAYER ---- */
.nav,main,.site-footer{position:relative;z-index:1}
.band-dark,.band-cta,.feature,.sect{position:relative}
.band-dark::after,.band-cta::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:url('../ornaments/rhumb.svg') center/1300px no-repeat;opacity:.35}
.band-dark>*,.band-cta>*{position:relative;z-index:1}
.hero-inner,.lhero-inner,.wcol,.rcol{position:relative;z-index:1}
.site-footer{background:#0b0906 url('../ornaments/compass.svg') right -180px bottom -180px/460px no-repeat}

/* ---- NAV ---- */
.nav{position:sticky;top:0;z-index:60;background:rgba(16,13,10,.82);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--hair)}
.nav-inner{max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;
  justify-content:space-between;padding:1rem 1.6rem;gap:1rem}
.brand{display:flex;align-items:center;gap:.7rem;color:var(--ink)}
.brand-mark{color:var(--gold);font-size:2.3rem;line-height:0}
.brand-word{font-family:var(--display);font-weight:600;font-size:1.1rem;letter-spacing:.28em;
  text-transform:uppercase;white-space:nowrap}
.nav-links{display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap}
.nav-links a{font-size:.8rem;font-weight:400;letter-spacing:.08em;color:var(--body);
  padding:.3rem 0;position:relative}
.nav-links a:hover,.nav-links a.active{color:var(--gold-bright)}
.nav-links a.active::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;
  background:var(--gold)}
.nav-cta{border:1px solid var(--gold);color:var(--gold-bright)!important;padding:.5rem 1.15rem!important;
  border-radius:2px;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem!important;
  transition:.2s}
.nav-cta:hover{background:var(--gold);color:#1a140d!important}

/* ---- HERO ---- */
.hero{position:relative;padding:6rem 1.6rem 4.5rem;text-align:center;overflow:hidden;
  border-bottom:1px solid var(--hair)}
.hero::before{content:"";position:absolute;inset:0;z-index:0;
  background:
    radial-gradient(120% 90% at 50% -10%, rgba(200,162,78,.14), transparent 55%),
    radial-gradient(80% 60% at 50% 120%, rgba(200,162,78,.06), transparent 60%),
    linear-gradient(180deg,#0c0a07,#14100b)}
.hero[style*="--hero-img"]::after{content:"";position:absolute;inset:0;z-index:0;
  background-image:var(--hero-img);background-size:cover;background-position:center;
  opacity:.5;filter:grayscale(.2) contrast(1.05);
  -webkit-mask-image:linear-gradient(180deg,#000 30%,transparent 100%);mask-image:linear-gradient(180deg,#000 30%,transparent 100%)}
.hero-inner{text-shadow:0 2px 18px rgba(0,0,0,.7)}
.hero-inner{max-width:820px;margin:0 auto;position:relative;z-index:2}
.hero-home{min-height:82vh;display:flex;align-items:center;justify-content:center}
.eyebrow{font-family:var(--display);font-size:.74rem;letter-spacing:.34em;text-transform:uppercase;
  color:var(--gold);font-weight:500;margin:0 0 1.5rem}
.hero h1{font-family:var(--display);font-weight:600;font-size:clamp(2.4rem,6vw,4.4rem);
  line-height:1.08;margin:0;color:var(--ink);letter-spacing:.04em;text-transform:uppercase}
.hero .subtitle{font-family:var(--serif);font-style:italic;font-size:1.55rem;color:var(--gold-bright);
  margin:1rem 0 0;font-weight:500}
.hero-verse{font-family:var(--serif);font-size:1.3rem;font-style:italic;color:var(--body);
  max-width:640px;margin:2.2rem auto 0;line-height:1.55;border:0}
.hero-verse cite{display:block;font-style:normal;font-size:.72rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--gold);margin-top:.9rem}

/* ---- LAYOUT ---- */
.sect{width:100%}
.rcol{max-width:760px;margin:0 auto;padding:2.8rem 1.6rem}
.wcol{max-width:var(--maxw);margin:0 auto;padding:3.4rem 1.6rem}
.block{border-bottom:1px solid var(--hair);padding-bottom:.2rem}
.sect-title{font-family:var(--display);font-size:1.85rem;letter-spacing:.06em;text-transform:none;
  color:var(--gold);text-align:center;font-weight:500;margin:0 0 2.4rem}

/* ---- BUTTONS ---- */
.btns{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2rem}
.lhero-center .btns{justify-content:center}
.btn{display:inline-block;padding:.85rem 1.8rem;border-radius:2px;font-size:.76rem;font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;transition:.2s}
.btn-primary{background:var(--gold);color:#15100a}
.btn-primary:hover{background:var(--gold-bright)}
.btn-ghost{border:1px solid var(--gold-dim);color:var(--gold-bright)}
.btn-ghost:hover{border-color:var(--gold);background:rgba(200,162,78,.08)}

/* ---- LANDING HERO ---- */
.lhero{position:relative;overflow:hidden;padding:6rem 1.6rem;border-bottom:1px solid var(--hair);
  background:linear-gradient(180deg,#0c0a07,#14100b)}
.lhero::before{content:"";position:absolute;inset:0;z-index:0;
  background:
    url('../ornaments/rhumb.svg') 84% 50%/1100px no-repeat,
    radial-gradient(90% 80% at 78% 40%,rgba(199,154,84,.16),transparent 55%);
  opacity:.5;-webkit-mask-image:linear-gradient(90deg,transparent 48%,#000 72%);mask-image:linear-gradient(90deg,transparent 48%,#000 72%)}
.lhero[style*="--hero-img"]::after{content:"";position:absolute;inset:0;z-index:0;
  background-image:var(--hero-img);background-size:cover;background-position:center right;
  opacity:.5;mask-image:linear-gradient(90deg,transparent 24%,#000 62%);
  -webkit-mask-image:linear-gradient(90deg,transparent 24%,#000 62%);filter:grayscale(.2) contrast(1.05)}
.lhero-inner{position:relative;z-index:2;max-width:var(--maxw);margin:0 auto}
.lhero h1{font-family:var(--display);font-weight:600;font-size:clamp(2.2rem,5.2vw,3.9rem);
  line-height:1.1;color:var(--ink);letter-spacing:.03em;text-transform:uppercase;margin:1rem 0 0;max-width:16em}
.lhero h1::after{content:"◆";display:block;width:220px;margin-top:1.2rem;font-size:.55rem;
  line-height:0;color:var(--gold);text-align:center;
  background:linear-gradient(90deg,transparent,var(--gold-dim) 12%,var(--gold-dim) 88%,transparent) center/100% 1px no-repeat}
.lhero-center h1::after{margin-left:auto;margin-right:auto}
.lhero-lead{font-size:1.08rem;color:var(--body);max-width:34em;margin:1.6rem 0 0}
.lhero-center{text-align:center}
.lhero-center .lhero-inner{max-width:760px}
.lhero-center h1,.lhero-center .lhero-lead{margin-left:auto;margin-right:auto}

/* ---- ICON ROW ---- */
.ico{width:2.4rem;height:2.4rem;color:var(--gold)}
.band-dark{background:#0c0a07;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.iconrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.4rem;align-items:start}
.iconitem{text-align:center;padding:0 .5rem}
.iconitem-num{display:block;font-family:var(--display);color:var(--gold);font-size:.8rem;margin-bottom:.6rem}
.iconitem-ico{display:inline-flex;color:var(--gold);margin-bottom:.9rem}
.iconitem h3{font-family:var(--display);font-size:.86rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink);margin:0 0 .5rem}
.iconitem p{font-size:.86rem;color:var(--muted);margin:0;line-height:1.5}
.iconrow-path{grid-template-columns:none;display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start}
.iconrow-path .iconitem{flex:1;min-width:120px;max-width:180px}
.iconarrow{color:var(--gold-dim);align-self:center;font-size:1.3rem;padding-top:1.4rem}

/* ---- FEATURE SPLIT ---- */
.feature{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.feature-rev .feature-media{order:2}
.feature-media img{width:100%;border-radius:4px;border:1px solid var(--line);
  box-shadow:0 20px 50px rgba(0,0,0,.55);filter:brightness(.92)}
.feature-body h2{font-family:var(--display);font-size:clamp(1.8rem,3.4vw,2.6rem);text-transform:none;
  letter-spacing:.04em;color:var(--ink);margin:.4rem 0 1rem}
.feature-list{list-style:none;padding:0;margin:1.4rem 0;display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.feature-list li{display:flex;align-items:center;gap:.5rem;font-size:.92rem;color:var(--body)}
.feature-list .ico{width:1rem;height:1rem}

/* ---- MARKETING CARDS ---- */
.mcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.2rem}
.mcard{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:1.7rem;
  display:flex;flex-direction:column;color:var(--body);transition:.2s}
.mcard:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 16px 36px rgba(0,0,0,.5)}
.mcard-ico{color:var(--gold);margin-bottom:1rem}
.mcard h3{font-family:var(--display);font-size:.86rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink);margin:0 0 .6rem}
.mcard p{font-size:.95rem;color:var(--body);flex:1;margin:0 0 1rem}
.mcard-go{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}

/* ---- TWO COLUMN ---- */
.twocol{display:grid;grid-template-columns:1fr 1fr;gap:3rem}
.eyebrow-h{font-family:var(--display);font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--gold);margin:0 0 .8rem}
.twocol-item p{color:var(--body);font-size:1.02rem}

/* ---- CTA BAND ---- */
.band-cta{background:linear-gradient(180deg,#0c0a07,#161009);border-top:1px solid var(--hair)}
.band-inner{text-align:center}
.band-inner h2{font-family:var(--serif);font-weight:600;font-size:clamp(1.8rem,3.6vw,2.7rem);
  text-transform:uppercase;letter-spacing:.08em;color:var(--ink);margin:.6rem 0}
.band-sentence .band-inner h2{text-transform:none;letter-spacing:.02em}
.band-split .band-inner{display:grid;grid-template-columns:1.2fr auto;text-align:left;
  align-items:center;column-gap:2.4rem}
.band-split .band-inner h2{margin:.2rem 0}
.band-split .band-body{margin:.4rem 0 0;max-width:none}
.band-split .btns{grid-column:2;grid-row:1;justify-content:flex-end;margin-top:0}
.band-body{color:var(--body);max-width:40em;margin:.4rem auto 0}
.band-inner .btns{justify-content:center}
.block h2{font-family:var(--serif);font-weight:600;font-size:2.3rem;color:var(--ink);
  margin:0 0 1.2rem;line-height:1.12}
.block h2.center,.center{text-align:center}
.center-rich{max-width:700px;margin:0 auto}
.lead{font-size:1.12rem;color:var(--body);max-width:740px;margin:.4rem auto 2rem}
.rich{font-size:1.06rem}
.rich p{margin:0 0 1.1rem}
.rich em{color:var(--gold-bright);font-style:italic}
.rich strong{color:var(--ink);font-weight:500}
.rich blockquote{margin:1.2rem 0;padding:.4rem 0 .4rem 1.3rem;border-left:2px solid var(--gold-dim);
  font-family:var(--serif);font-style:italic;font-size:1.2rem;color:var(--gold-bright)}
.subhead{font-family:var(--serif);font-style:italic;font-size:1.3rem;color:var(--gold-bright);
  margin:-.6rem 0 1rem}
.ref{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}

/* ---- SCRIPTURE / PULL QUOTE ---- */
.scripture-block blockquote,.pullquote blockquote{font-family:var(--serif);font-style:italic;
  font-size:clamp(1.5rem,3.4vw,2.1rem);line-height:1.4;color:var(--gold-bright);text-align:center;
  max-width:840px;margin:0 auto;border:0}
.pullquote{text-align:center;border:0}
.scripture-block cite,.pullquote cite{display:block;font-style:normal;font-size:.74rem;
  letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-top:1.1rem}

/* ---- SUPPORTING ESV VERSE ---- */
.esv-support{margin:1.6rem auto 0;max-width:740px}
.esv-support blockquote{margin:.7rem 0;padding:.7rem 0 .7rem 1.4rem;border-left:2px solid var(--gold-dim);
  font-family:var(--serif);font-style:italic;font-size:1.2rem;line-height:1.65;color:var(--gold-bright);
  max-width:68ch}
.esv-support blockquote + blockquote{margin-top:1.5rem}
.esv-support cite{display:block;font-style:normal;font-size:.72rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--muted);margin-top:.5rem}
.esv-support .esvtag{color:var(--gold);font-weight:600;letter-spacing:.06em}

/* ---- CALLOUT / NOTE ---- */
.callout{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--gold);
  border-radius:3px;padding:1.8rem 2rem;margin:2.4rem 0}
.callout h3{font-family:var(--serif);font-size:1.7rem;color:var(--gold-bright);margin:0 0 .6rem}
.note{background:var(--bg-2);border:1px solid var(--line);border-radius:3px;padding:1.1rem 1.5rem;
  margin:1.6rem 0}
.note h3.h4,.note-h{font-family:var(--serif);font-size:1.25rem;color:var(--gold-bright);margin:0 0 .4rem}
.srcnote{font-size:.78rem;color:var(--muted);font-style:italic;opacity:.8;padding:.5rem 0 0}
.srcnote p{margin:0}
.co-h{font-family:var(--serif);font-size:1.7rem;color:var(--gold-bright);margin:0 0 .6rem}
.ir-badge{display:inline-block;font-style:normal;font-family:var(--sans);font-size:.5rem;
  letter-spacing:.12em;text-transform:uppercase;color:var(--gold);border:1px solid var(--gold-dim);
  border-radius:2px;padding:.1rem .4rem;margin:.25rem 0 .1rem}
.mcard-badge{display:inline-block;font-family:var(--sans);font-size:.55rem;letter-spacing:.12em;
  text-transform:uppercase;color:var(--gold);border:1px solid var(--gold-dim);border-radius:2px;
  padding:.12rem .45rem;margin-left:.5rem;vertical-align:middle}
.crumbs{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);
  padding:1.1rem 0 0}
.crumbs a{color:var(--body)}
.crumbs a:hover{color:var(--gold-bright)}
.crumbs span[aria-current]{color:var(--gold)}
.portnav{display:flex;gap:.5rem;justify-content:center;padding:.4rem 0 0}
.portnav a{width:2.1rem;height:2.1rem;display:flex;align-items:center;justify-content:center;
  border:1px solid var(--hair);border-radius:50%;font-family:var(--display);font-size:.8rem;
  color:var(--body)}
.portnav a:hover{border-color:var(--gold);color:var(--gold-bright)}
.portnav a.pn-cur{background:var(--gold);border-color:var(--gold);color:#15100a}
.note .rich{font-size:.94rem;color:var(--muted);font-style:italic}
.note .rich p{margin:0 0 .5rem}

/* ---- CARDS ---- */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem;margin-top:1.6rem}
.card{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:1.8rem;
  display:flex;flex-direction:column;transition:.2s;color:var(--body)}
.card:hover{transform:translateY(-4px);border-color:var(--gold);
  box-shadow:0 18px 40px rgba(0,0,0,.5)}
.card-label{font-family:var(--display);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--gold)}
.card h3{font-family:var(--serif);font-size:1.75rem;color:var(--ink);margin:.6rem 0 .6rem}
.card p{font-size:.96rem;color:var(--muted);flex:1;margin:0 0 1.1rem}
.card-go{font-size:.72rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}

/* ---- PILLARS ---- */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.pillar{background:var(--panel);border:1px solid var(--line);border-top:2px solid var(--gold);
  border-radius:4px;padding:1.7rem}
.pillar-heb{font-family:var(--serif);font-size:1.3rem;color:var(--gold-bright);margin:0}
.pillar h3{font-family:var(--serif);font-size:1.7rem;color:var(--ink);margin:.2rem 0 0}
.pillar-part{font-family:var(--display);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gold);margin:.3rem 0 .8rem}
.pillar-text{font-size:.96rem;color:var(--muted);margin:0 0 .9rem}

/* ---- GRID ---- */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.2rem;margin-top:1.5rem}
.gcell{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:1.5rem;
  border-top:2px solid var(--gold-dim)}
.gcell-label{font-family:var(--display);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gold)}
.gcell h3{font-family:var(--serif);font-size:1.5rem;color:var(--ink);margin:.3rem 0 .15rem}
.gcell-tag{font-size:.82rem;font-style:italic;color:var(--gold-bright);margin:0 0 .6rem}
.gcell-text{font-size:.94rem;color:var(--muted);margin:0 0 .7rem}

/* ---- DUO ---- */
.duo{display:grid;grid-template-columns:1fr 1fr;gap:1.7rem;margin-top:1.5rem;max-width:800px;
  margin-left:auto;margin-right:auto}
.duo figure{margin:0;text-align:center}
.duo img{width:100%;border-radius:4px;border:1px solid var(--line);
  box-shadow:0 14px 34px rgba(0,0,0,.5)}
.duo figcaption{font-size:.9rem;color:var(--muted);margin-top:.7rem;font-style:italic}
.duo figcaption strong{color:var(--gold-bright);font-style:normal}

/* ---- FIGURE ---- */
.figure figure{margin:1.7rem 0 0;text-align:center}
.figure img{width:100%;max-width:700px;margin:0 auto;border-radius:4px;
  box-shadow:0 18px 44px rgba(0,0,0,.55);border:1px solid var(--line)}
.figure figcaption{font-size:.92rem;color:var(--muted);max-width:640px;margin:1rem auto 0;font-style:italic}

/* ---- LAYERS ---- */
.layers{list-style:none;padding:0;margin:1.6rem auto 0;border-left:1px solid var(--line);max-width:800px}
.layer{display:flex;gap:1.2rem;padding:1.2rem 0 1.2rem 1.5rem;position:relative}
.layer-n{flex:none;width:2.5rem;height:2.5rem;border-radius:50%;border:1px solid var(--gold);
  background:var(--bg);color:var(--gold-bright);font-family:var(--display);font-size:1.1rem;
  display:flex;align-items:center;justify-content:center;margin-left:-2.75rem;box-shadow:0 0 0 6px var(--bg)}
.layer-body h3.h4{font-family:var(--serif);font-size:1.45rem;color:var(--ink);margin:.1rem 0 .3rem}
.layer-body h3.h4 em{color:var(--gold);font-size:1rem;font-style:italic}
.layer-body p{margin:0 0 .35rem;color:var(--muted)}
.layer-goal{font-size:.92rem;color:var(--gold-bright)}
.layer-goal strong{color:var(--gold-bright)}

/* ---- TRACE ---- */
.trace{max-width:800px;margin:0 auto}
.trace-row{display:flex;gap:1.2rem;padding:1.2rem 0;border-bottom:1px dashed var(--line)}
.trace-n{flex:none;width:2.3rem;height:2.3rem;border-radius:50%;border:1px solid var(--bad);
  color:var(--bad);font-family:var(--display);font-size:1rem;display:flex;align-items:center;
  justify-content:center}
.trace-flow{font-family:var(--serif);font-size:1.35rem;margin:.1rem 0 .5rem}
.trace-flow .bad{color:var(--bad)}
.trace-flow .good{color:var(--gold-bright)}
.trace-flow .arrow{color:var(--gold);margin:0 .35rem}
.trace-body blockquote{margin:0;font-style:italic;color:var(--muted);font-size:.98rem}
.trace-body cite{font-style:normal;color:var(--gold);font-size:.78rem;letter-spacing:.08em}

/* ---- REFLECTION ---- */
.reflect{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.2rem;margin-top:1.5rem}
.reflect-group{background:var(--panel);border:1px solid var(--line);border-top:2px solid var(--gold);
  border-radius:4px;padding:1.5rem}
.reflect-group h3.h4{font-family:var(--serif);font-size:1.4rem;color:var(--gold-bright);margin:0 0 .7rem}
.reflect-group ul{margin:0;padding-left:1.1rem}
.reflect-group li{margin:.45rem 0;color:var(--muted);font-size:.97rem}

/* ---- DOC META / TOC ---- */
.docmeta{display:flex;align-items:flex-start;gap:1.6rem;flex-wrap:wrap;padding:1.5rem 0 .4rem;
  border-bottom:1px solid var(--hair)}
.readtime{font-family:var(--display);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold);margin:.2rem 0;white-space:nowrap}
.toc{flex:1;min-width:240px}
.toc summary{font-family:var(--serif);font-size:1.2rem;color:var(--gold-bright);cursor:pointer;
  list-style:none;font-weight:600}
.toc summary::-webkit-details-marker{display:none}
.toc summary::before{content:"☰ ";color:var(--gold)}
.toc ul{columns:2;column-gap:2rem;margin:.7rem 0 0;padding-left:0;list-style:none;font-size:.92rem}
.toc li{margin:.25rem 0}
.toc a{color:var(--body)}
.toc a:hover{color:var(--gold-bright)}

/* ---- PREV / NEXT ---- */
.prevnext{display:flex;justify-content:space-between;gap:1rem;padding:2.6rem 0 1rem;
  border-top:1px solid var(--hair);margin-top:1rem}
.pn{display:flex;flex-direction:column;gap:.25rem;padding:1.1rem 1.4rem;border:1px solid var(--line);
  border-radius:4px;background:var(--panel);max-width:48%;transition:.2s}
.pn:hover{border-color:var(--gold);transform:translateY(-2px)}
.pn span{font-family:var(--display);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.pn strong{font-family:var(--serif);font-size:1.25rem;color:var(--ink);font-weight:600}
.pn-next{text-align:right;margin-left:auto}

/* ---- FOOTER ---- */
.site-footer{background:#0b0906;border-top:1px solid var(--hair);padding:3.5rem 1.6rem 2.5rem;
  text-align:center}
.foot-top{max-width:var(--maxw);margin:0 auto 2rem;display:flex;justify-content:space-between;
  align-items:center;gap:1.5rem;flex-wrap:wrap;padding-bottom:2rem;border-bottom:1px solid var(--hair)}
.foot-brand{display:flex;align-items:center;gap:.8rem;text-align:left}
.foot-mark{color:var(--gold);font-size:2.2rem;line-height:0}
.foot-name{font-family:var(--display);font-size:1rem;letter-spacing:.24em;text-transform:uppercase;
  color:var(--ink);margin:0}
.foot-tag{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:.2rem 0 0}
.foot-links{display:flex;gap:1.3rem;flex-wrap:wrap;justify-content:center;flex:1}
.foot-links a{font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:var(--body)}
.foot-links a:hover{color:var(--gold-bright)}
.foot-social{display:flex;gap:1rem;align-items:center}
.foot-social a{color:var(--body);line-height:0}
.foot-social svg{width:1.25rem;height:1.25rem;display:block}
.foot-social a:hover{color:var(--gold-bright)}
.foot-verse{font-family:var(--serif);font-style:italic;font-size:1.35rem;color:var(--gold-bright);
  max-width:700px;margin:0 auto .8rem;line-height:1.5}
.foot-verse span{display:block;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold);margin-top:.6rem}
.foot-meta{font-size:.8rem;color:var(--muted);margin:1.2rem 0 0}
.foot-esv{font-size:.7rem;color:rgba(176,167,148,.4);max-width:760px;margin:1.2rem auto 0;line-height:1.5}

/* ======================================================================
   MOCKUP FORMAT COMPONENTS (spheres, paths, diagrams, resources)
   ====================================================================== */

/* section header "N — TITLE" with flanking hairlines */
.secnum{display:flex;align-items:center;justify-content:center;gap:.7rem;margin:0 0 2.4rem;
  font-family:var(--display);font-size:.95rem;letter-spacing:.16em;text-transform:uppercase}
.secnum::before,.secnum::after{content:"";flex:1;height:1px;background:var(--hair);max-width:150px}
.secnum-n{color:var(--gold-bright)}
.secnum-t{color:var(--gold)}
.secnum-t::before{content:"— "}
.sect-title.left{text-align:left}
.lhero-sub{font-family:var(--serif);font-style:italic;font-size:1.4rem;color:var(--gold-bright);margin:1.2rem 0 0}
.photo-todo{font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);opacity:.55;margin:1.6rem 0 0}

/* framed icon (circle / hexagon / diamond outline behind an icon) */
.iri{position:relative;display:inline-flex;align-items:center;justify-content:center;
  width:4.6rem;height:4.6rem;color:var(--gold)}
.frm{position:absolute;inset:0;width:100%;height:100%;color:var(--gold-dim)}
.iri .ico{width:1.9rem;height:1.9rem}
.iri-ico{display:inline-flex;position:relative;z-index:1}
.iri-num{position:absolute;top:-1.6rem;left:50%;transform:translateX(-50%);font-family:var(--display);
  color:var(--gold);font-size:.78rem;letter-spacing:.05em}

/* bordered container that wraps band / path / ports / flow rows */
.panelbox{border:1px solid var(--hair);border-radius:8px;background:#0b0906;padding:1.8rem 1.4rem}

/* shared icon-item typography */
.iritem h3{font-family:var(--display);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink);margin:.9rem 0 .4rem}
.iritem p{font-size:.9rem;color:var(--body);margin:0;line-height:1.5}
.iri-go{display:inline-block;margin-top:.8rem;font-size:.68rem;letter-spacing:.12em;
  text-transform:uppercase;color:var(--gold)}

/* band — 5 spheres w/ vertical dividers */
.ir-band{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.ir-band .iritem{text-align:center;padding:1.4rem 1rem;border-left:1px solid var(--hair)}
.ir-band .iritem:first-child{border-left:0}

/* path — circle-framed nodes with arrows */
.ir-path{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:center;gap:.2rem}
.ir-path .iritem{flex:1;min-width:110px;max-width:165px;text-align:center;padding:.4rem}
.ir-arrow{align-self:center;color:var(--gold-dim);font-size:1.2rem;padding-top:1.4rem}

/* ports — numbered framed nodes with dividers */
.ir-ports{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}
.ir-ports .iritem{text-align:center;padding:1.2rem .7rem;border-left:1px solid var(--hair)}
.ir-ports .iritem:first-child{border-left:0}

/* flow — steps + a highlighted result box */
.ir-flow{display:flex;flex-wrap:wrap;align-items:stretch;gap:.3rem}
.ir-flow .iritem{flex:1;min-width:145px}
.iritem-left{text-align:left}
.iritem-left .iri{margin-bottom:.2rem}
.iritem-result{flex:1;min-width:165px;border:1px solid var(--gold-dim);border-radius:4px;
  padding:1.1rem 1.2rem;background:var(--panel)}
.iri-label{font-family:var(--display);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold);display:block;margin-bottom:.5rem}
.iritem-result p{font-size:.86rem;color:var(--body)}

/* tiles — bordered icon boxes */
.ir-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}
.iritem-box{border:1px solid var(--line);border-radius:4px;padding:1.5rem 1rem;text-align:center;
  background:var(--panel)}

/* plain — icon-top row with hairline separators (per mockups) */
.ir-plain{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:0}
.ir-plain .iritem{text-align:center;padding:.3rem .85rem;border-left:1px solid var(--hair)}
.ir-plain .iritem:first-child{border-left:0}

/* acc — desktop: identical to plain; mobile: expandable accordion rows */
.ir-acc{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:0}
.ir-acc .iritem{text-align:center;padding:.3rem .85rem;border-left:1px solid var(--hair)}
.ir-acc .iritem:first-child{border-left:0}

/* nav — resources sphere row */
.ir-nav{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0}
.ir-nav .iritem{text-align:center;flex:1;min-width:90px;border-left:1px solid var(--hair)}
.ir-nav .iritem:first-child{border-left:0}
.ir-nav .iri{width:3.6rem;height:3.6rem}
.ir-nav .iri .ico{width:1.5rem;height:1.5rem}
.ir-nav h3{font-size:.66rem;margin:.6rem 0 0;color:var(--body)}

/* left heading rail + right grid */
.railrow{display:grid;grid-template-columns:minmax(190px,.75fr) 2fr;gap:2.6rem;align-items:start}
.rail-num{font-family:var(--display);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--gold);margin:0 0 .9rem}
.rail-title{font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.3rem);color:var(--ink);
  line-height:1.12;margin:0;font-weight:600}
.rail-text{color:var(--body);margin:1rem 0 0;font-size:.98rem}
.railrow .ir-tiles{gap:.8rem}

/* side list — icon-left rows */
.sidelist{display:grid;gap:1.6rem}
.sidelist-tight{gap:1.2rem}
.sideitem{display:flex;gap:1.1rem;align-items:flex-start}
.sideitem .iri{flex:none;width:3.4rem;height:3.4rem}
.sideitem .iri .ico{width:1.4rem;height:1.4rem}
.sideitem h3.h4{font-family:var(--display);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink);margin:.4rem 0 .35rem}
.sideitem p{margin:0;font-size:.92rem;color:var(--body)}

/* compass radial diagram */
.compass-diagram{display:grid;grid-template-columns:1fr auto 1fr;gap:1.6rem;align-items:center;margin-top:2.2rem}
.cd-hub{width:clamp(120px,17vw,185px);color:var(--gold);justify-self:center}
.cd-col{display:grid;gap:2.2rem}
.cd-node{display:flex;gap:1rem;align-items:center}
.cd-right .cd-node{flex-direction:row-reverse;text-align:right}
.cd-node .iri{flex:none;width:3.2rem;height:3.2rem}
.cd-node .iri .ico{width:1.3rem;height:1.3rem}
.cd-node h3.h4{font-family:var(--display);font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink);margin:0 0 .3rem}
.cd-node p{margin:0;font-size:.9rem;color:var(--body)}
.cd-num{font-family:var(--display);color:var(--gold);font-weight:500;margin-right:.6em}

/* brand architecture */
.brandarch{margin-top:1.6rem}
.ba-vertical{display:grid;gap:1.4rem;justify-items:center;max-width:440px;margin-left:auto;margin-right:auto}
.ba-horizontal{display:flex;align-items:center;justify-content:center;gap:0;flex-wrap:wrap}
.ba-node{position:relative;text-align:center}
.ba-box{border:1px solid var(--gold-dim);border-radius:6px;padding:1.4rem 1.9rem;background:var(--panel-2)}
.ba-vertical .ba-box{min-width:320px}
.ba-name{font-family:var(--display);font-size:1.15rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink);margin:.4rem 0 .2rem}
.ba-role{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:0}
.ba-note{font-size:.85rem;color:var(--muted);margin:.5rem 0 0}
.ba-side{position:absolute;right:calc(100% + 1rem);top:50%;transform:translateY(-50%);width:6rem;
  font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:right;line-height:1.4}
.ba-vertical .ba-link{width:1px;height:1.8rem;background:var(--gold-dim);position:relative}
.ba-vertical .ba-link::after{content:"▾";position:absolute;left:50%;bottom:-.5rem;transform:translateX(-50%);
  color:var(--gold);font-size:.8rem}
.ba-horizontal .ba-box{border:0;background:none;padding:0}
.ba-horizontal .iri{width:6.2rem;height:6.2rem}
.ba-horizontal .iri .ico{width:2.4rem;height:2.4rem}
.ba-horizontal .ba-link{width:5rem;height:1px;background:var(--gold-dim);position:relative;margin-top:-2.2rem}
.ba-horizontal .ba-link::after{content:"▸";position:absolute;right:-4px;top:-.7rem;color:var(--gold)}

/* framework models: design list + annotated tree + annotated ship */
.framemodels{display:grid;grid-template-columns:repeat(3,1fr);gap:2.2rem;margin-top:1rem}
.fm-title{font-family:var(--display);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold);text-align:center;margin:0 0 1.4rem}
.fm-figure{margin:0 0 1.1rem}
.fm-figure img{width:100%;border-radius:4px;filter:brightness(.9) sepia(.2);border:1px solid var(--line)}
.fm-notes{list-style:none;padding:0;margin:0;display:grid;gap:.75rem}
.fm-notes li{border-left:1px solid var(--gold-dim);padding-left:.85rem}
.fm-note-label{display:block;font-family:var(--display);font-size:.68rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--ink)}
.fm-note-text{font-size:.86rem;color:var(--body)}
.fm-foot{margin-top:1.1rem;font-size:.82rem;color:var(--gold-bright);line-height:1.5}
.fm-foot strong{color:var(--gold-bright);display:block;font-family:var(--display);font-size:.68rem;
  letter-spacing:.1em;text-transform:uppercase;margin-bottom:.2rem}

/* resources search bar */
.searchbar{display:flex;align-items:center;gap:.8rem;border:1px solid var(--line);border-radius:3px;
  background:var(--panel);padding:.95rem 1.2rem}
.search-ico{color:var(--gold);display:inline-flex}
.search-ico .ico{width:1.2rem;height:1.2rem}
.searchbar input{flex:1;background:none;border:0;color:var(--ink);font-family:var(--sans);
  font-size:.95rem;outline:none}
.searchbar input::placeholder{color:var(--muted)}

/* photo cards (featured resources / downloadable tools) */
.photocards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.2rem}
.photocard{border:1px solid var(--line);border-radius:4px;overflow:hidden;background:var(--panel);
  display:flex;flex-direction:column;color:var(--body);transition:.2s}
.photocard:hover{border-color:var(--gold);transform:translateY(-3px);box-shadow:0 14px 32px rgba(0,0,0,.5)}
.pc-media{aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;overflow:hidden;
  position:relative;background:#0c0a07}
.pc-media img{width:100%;height:100%;object-fit:cover;filter:brightness(.82) grayscale(.15)}
.pc-ph{background:radial-gradient(120% 90% at 50% 30%,rgba(200,162,78,.12),transparent 60%),#0c0a07}
.pc-ph-ico{color:var(--gold-dim)}
.pc-ph-ico .ico{width:2.6rem;height:2.6rem}
.pc-ph::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:url('../ornaments/grid.svg') 0 0/120px repeat;opacity:.5}
.pc-body{padding:1.2rem;display:flex;flex-direction:column;flex:1}
.pc-title{font-family:var(--display);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink);margin-bottom:.55rem}
.pc-text{font-size:.9rem;color:var(--body);flex:1;line-height:1.5}
.pc-go{margin-top:.95rem;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.photocard{text-align:center}
.pc-over{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--gold)}
.pc-over .ico{width:2.4rem;height:2.4rem;filter:drop-shadow(0 2px 10px rgba(0,0,0,.85))}

/* downloadable tools — horizontal rows (thumb left · text mid · download right) */
.photocards-rows .photocard{flex-direction:row;align-items:stretch;text-align:left}
.photocards-rows .pc-media{flex:0 0 42%;aspect-ratio:auto;min-height:120px}
.photocards-rows .pc-body{justify-content:center}
.photocards-rows .pc-text{flex:0 0 auto}

/* brand architecture + "why this exists" side pair */
.ba-pair{display:grid;grid-template-columns:1.05fr 1fr;gap:2.8rem;align-items:start}
.ba-pair .ba-vertical{margin-left:0;margin-right:auto}
.ba-aside-h{font-family:var(--display);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--gold);margin:.4rem 0 1rem}
.ba-aside .rich{font-size:.95rem}

/* framework model art + annotations side by side */
.fm-split{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);gap:.9rem;align-items:center}
.fm-split .fm-figure{margin:0}

/* marketing cards — 4-up + row layout variants */
.mcards-4{grid-template-columns:repeat(4,1fr)}

/* photo CTA card that ends a marketing-card row (home resources, per mockup) */
.mcard-photo{position:relative;overflow:hidden;padding:1.2rem;justify-content:center;align-items:center;
  text-align:center;gap:.55rem;border-color:var(--gold-dim)}
.mcard-photo::before{content:"";position:absolute;inset:0;background:var(--mp) center/cover;
  opacity:.55;filter:grayscale(.2) contrast(1.05)}
.mcard-photo::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(11,9,6,.25),rgba(11,9,6,.72))}
.mp-line1,.mp-line2{position:relative;z-index:1;font-family:var(--display);text-transform:uppercase;
  letter-spacing:.16em;font-size:.66rem;line-height:1.7}
.mp-line1{color:var(--ink)}
.mp-line2{color:var(--gold-bright)}
.mcard-tb{display:flex;flex-direction:column;flex:1}
.mcard-row{flex-direction:row;gap:1rem;align-items:flex-start}
.mcard-row .mcard-ico{margin-bottom:0}

/* CTA band decorations */
.band-cta{position:relative;overflow:hidden}
.band-inner{position:relative;z-index:2}
.band-deco{position:absolute;left:2.5rem;top:50%;transform:translateY(-50%);width:120px;
  color:var(--gold);opacity:.28;z-index:0;line-height:0}
.band-photo::after{content:"";position:absolute;right:0;top:0;bottom:0;width:40%;
  background-image:var(--band-img);background-size:cover;background-position:center;opacity:.28;
  mask-image:linear-gradient(90deg,transparent,#000 75%);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 75%);z-index:0}

@media(max-width:900px){
  .framemodels{grid-template-columns:1fr;gap:2.6rem}
  .photocards{grid-template-columns:1fr 1fr}
  .mcards-4{grid-template-columns:1fr 1fr}
}
@media(max-width:820px){
  .railrow{grid-template-columns:1fr;gap:1.4rem}
  .compass-diagram{grid-template-columns:1fr;gap:1.4rem}
  .cd-hub{order:-1;width:130px}
  .cd-right .cd-node{flex-direction:row;text-align:left}
  .ba-horizontal{flex-direction:column}
  .ba-horizontal .ba-link{width:1px;height:2rem;margin:0}
  .ba-horizontal .ba-link::after{content:"▾";right:auto;left:-.4rem;top:auto;bottom:-.5rem}
  .ba-side{position:static;transform:none;width:auto;text-align:center;margin-bottom:.5rem}
  .ir-band .iritem,.ir-ports .iritem{border-left:0}
  .ir-nav{justify-content:center}
  .photocards{grid-template-columns:1fr}
  .mcards-4{grid-template-columns:1fr}
  .band-deco{display:none}
  .band-photo::after{width:100%;opacity:.14;mask-image:none;-webkit-mask-image:none}
  .secnum::before,.secnum::after{max-width:40px}
}

/* ---- PRINT ---- */
@media print{
  body{background:#fff;color:#000}
  .nav,.docmeta,.prevnext,.site-footer{display:none}
  .hero::before,.hero::after{display:none}
  .block{break-inside:avoid;border-bottom:0}
  a{color:#000}
}

/* ---- RESPONSIVE ---- */
@media(max-width:820px){
  .cards,.pillars,.grid,.duo,.reflect,.twocol,.feature,.mcards{grid-template-columns:1fr}
  .feature{gap:1.6rem}.feature-rev .feature-media{order:0}
  .feature-list{grid-template-columns:1fr}
  .lhero{padding:3.4rem 1.2rem}
  .lhero[style*="--hero-img"]::after{mask-image:none;-webkit-mask-image:none;opacity:.18}
  .iconarrow{display:none}
  .iconrow-path .iconitem{max-width:none}
  .brand-word{font-size:.95rem;letter-spacing:.2em}
  .hero{padding:3.6rem 1.2rem 2.8rem}
  .hero-home{min-height:auto}
  .toc ul{columns:1}
  .prevnext{flex-direction:column}
  .pn,.pn-next{max-width:100%;text-align:left;margin-left:0}
  .foot-top{flex-direction:column;text-align:center}
  .foot-brand{flex-direction:column;text-align:center}
}

/* ======================================================================
   MOBILE (matched to the phone mockups): full-screen hamburger overlay,
   hero keeps photo-right/copy-left, multi-tile rows STAY single-row
   (compressed, never stacked or scrolled).
   ====================================================================== */
.nav-toggle{display:none;background:none;border:0;cursor:pointer;padding:.4rem;z-index:210;
  position:relative;flex-direction:column;gap:5px}
.nav-toggle span{display:block;width:26px;height:2px;background:var(--gold);
  transition:.28s;transform-origin:center}

@media(max-width:900px){
  /* ---- header: wordmark left + hamburger right ONLY ---- */
  .nav-toggle{display:flex}
  /* NB: hidden state stays at inset:0 (x 0→viewport) and fades — it must NEVER be
     parked off-canvas (translateX) or the box overhangs the right edge and iOS
     Safari lets you pan into the empty gap ("page goes off the right side"). */
  .nav-links{position:fixed;inset:0;height:100vh;z-index:200;background:rgba(9,8,6,.98);
    backdrop-filter:blur(10px);display:flex;flex-direction:column;flex-wrap:nowrap;
    align-items:center;justify-content:center;gap:0;padding:4rem 1.5rem;max-width:100vw;
    opacity:0;visibility:hidden;transform:translateY(-10px);
    transition:opacity .28s ease,transform .28s ease,visibility 0s linear .28s}
  .nav-links.open{opacity:1;visibility:visible;transform:translateY(0);
    transition:opacity .28s ease,transform .28s ease}
  .nav-links a{font-family:var(--display);font-size:1.35rem;letter-spacing:.16em;
    text-transform:uppercase;color:var(--ink);padding:.95rem 0;width:auto;border:0}
  .nav-links a:hover,.nav-links a.active{color:var(--gold-bright)}
  .nav-links a.active::after{display:none}
  .nav-cta{margin-top:1.5rem;font-size:.85rem!important;padding:.85rem 2.6rem!important;border-radius:2px}
  .nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav-toggle.open span:nth-child(2){opacity:0}
  .nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  body.nav-open{overflow:hidden}

  /* ---- hero: photo right, copy left in a CONSTRAINED column (per mockups) ---- */
  .lhero{padding:3.2rem 1.2rem 3rem}
  .lhero h1{font-size:clamp(1.05rem,4.9vw,2.3rem);max-width:80%}
  .lhero .eyebrow{font-size:.52rem;letter-spacing:.16em;margin-bottom:.9rem;max-width:none}
  .lhero-lead{font-size:.9rem;margin-top:1rem;max-width:62%}
  .lhero-sub{font-size:1.05rem;max-width:64%}
  .lhero h1,.lhero-lead,.lhero-sub{text-shadow:0 1px 14px rgba(9,8,6,.85)}
  .lhero[style*="--hero-img"]::after{opacity:.52;background-position:center right;
    filter:grayscale(.15) contrast(1.05);
    -webkit-mask-image:linear-gradient(90deg,transparent 32%,#000 62%);
    mask-image:linear-gradient(90deg,transparent 32%,#000 62%)}
  .lhero .btns{flex-direction:column;gap:.7rem;align-items:flex-start}
  .lhero .btn{text-align:center;min-width:62%}
  .lhero-center h1,.lhero-center .lhero-lead,.lhero-center .lhero-sub{max-width:none}
  .lhero-center .btns{align-items:center}

  /* ---- multi-tile rows STAY one compressed row (never stack / scroll) ---- */
  .ir-band,.ir-tiles,.ir-plain,.ir-path,.ir-ports,.ir-flow,.ir-nav{
    display:flex;flex-wrap:nowrap;gap:0;align-items:stretch;justify-content:space-between}
  .ir-band>.iritem,.ir-tiles>.iritem,.ir-plain>.iritem,.ir-path>.iritem,
  .ir-ports>.iritem,.ir-flow>.iritem,.ir-nav>.iritem,.iritem-result{
    flex:1 1 0;min-width:0;padding:.55rem .16rem;max-width:none}
  /* hairline separators, as in the mockups (band / ports / plain / nav) */
  .ir-band>.iritem,.ir-ports>.iritem,.ir-plain>.iritem,.ir-nav>.iritem{
    border-left:1px solid var(--hair)}
  .ir-band>.iritem:first-child,.ir-ports>.iritem:first-child,
  .ir-plain>.iritem:first-child,.ir-nav>.iritem:first-child{border-left:0}
  .ir-arrow{flex:0 0 auto;align-self:center;padding-top:.85rem;font-size:.55rem}
  .panelbox{padding:1.35rem .4rem .9rem}       /* extra top so number badges never clip */
  .ir .iri{width:2.3rem;height:2.3rem}
  .ir .iri .ico{width:.95rem;height:.95rem}
  .ir .iri-num{top:-.8rem;font-size:.5rem}
  .ir .iritem h3{font-size:.5rem;letter-spacing:.01em;margin:.45rem 0 .2rem;line-height:1.25;
    overflow-wrap:normal;word-break:normal;hyphens:auto;-webkit-hyphens:auto}
  .ir .iritem p{font-size:.47rem;line-height:1.3}
  /* densest rows (6 path / 7 ports / 8-icon nav) get smaller frames + type so long
     single words ("UNDERSTANDING", "COMMISSION") hold ONE line instead of breaking */
  .ir-path .iritem h3,.ir-ports .iritem h3,.ir-nav .iritem h3{font-size:.43rem;letter-spacing:0}
  .ir-ports .iri,.ir-nav .iri{width:1.95rem;height:1.95rem}
  .ir-ports .iri .ico,.ir-nav .iri .ico{width:.8rem;height:.8rem}
  .ir-ports .iritem p{font-size:.42rem}
  .iritem-box{padding:.55rem .2rem;border-width:1px}
  .ir-tiles{gap:.3rem}
  .ir-tiles>.iritem{border-left:0}
  .iri-label{font-size:.48rem;letter-spacing:.08em;margin-bottom:.3rem}
  .iritem-result{flex:1.35 1 0;padding:.6rem .55rem}
  .iritem-result p{font-size:.46rem;line-height:1.35}

  /* ---- new desktop constructs, compressed for mobile ---- */
  .lhero h1::after{width:130px;margin-top:.8rem;font-size:.45rem}
  .ba-pair{grid-template-columns:1fr 1fr;gap:.8rem}
  .ba-pair .ba-vertical{max-width:none}
  .ba-vertical .ba-box{min-width:0;width:100%;padding:.75rem .6rem}
  .ba-name{font-size:.6rem;letter-spacing:.1em}
  .ba-role{font-size:.42rem}
  .ba-note{font-size:.45rem;line-height:1.4}
  .ba-aside-h{font-size:.5rem;margin:.2rem 0 .5rem}
  .ba-aside .rich{font-size:.55rem;line-height:1.55}
  .ba-aside .rich p{margin:0 0 .5rem}
  .band-split .band-inner{display:block;text-align:center}
  .band-split .btns{justify-content:center;margin-top:1.2rem}

  /* ---- HOME flagship (feature): keep photo-left / text-right (per mobile mockup) ---- */
  .feature{grid-template-columns:.82fr 1.18fr;gap:.9rem;align-items:center}
  .feature-rev .feature-media{order:0}
  .feature-media img{box-shadow:0 10px 24px rgba(0,0,0,.5)}
  .feature-body h2{font-size:clamp(1.4rem,6vw,2rem);margin:.2rem 0 .5rem}
  .feature-body .rich{font-size:.72rem;line-height:1.5}
  .feature-list{grid-template-columns:1fr 1fr;gap:.35rem .6rem;margin:.9rem 0}
  .feature-list li{font-size:.6rem;gap:.35rem}
  .feature-body .btn{padding:.7rem 1.3rem;font-size:.66rem}

  /* ---- THE PATRIARK §1: two hexes stay side-by-side with a horizontal link ---- */
  .ba-horizontal{flex-direction:row;justify-content:center;gap:.2rem}
  .ba-horizontal .ba-box{border:0;background:none;padding:0}
  .ba-horizontal .iri{width:3rem;height:3rem}
  .ba-horizontal .iri .ico{width:1.2rem;height:1.2rem}
  .ba-horizontal .ba-name{font-size:.6rem;letter-spacing:.08em;margin:.4rem 0 .15rem}
  .ba-horizontal .ba-role{font-size:.44rem}
  .ba-horizontal .ba-note{font-size:.44rem;margin-top:.25rem}
  .ba-horizontal .ba-link{width:2.2rem;height:1px;margin:0 0 2.6rem 0;flex:0 0 auto}
  .ba-horizontal .ba-link::after{content:"▸";right:-4px;left:auto;top:-.7rem;bottom:auto}

  /* ---- ABOUT: mission/vision stack full-width, readable (per mobile mockup) ---- */
  .twocol{grid-template-columns:1fr;gap:.9rem}
  .twocol-item{border:1px solid var(--hair);border-radius:4px;padding:1.1rem 1.2rem}
  .twocol-item .eyebrow-h{font-size:.78rem;letter-spacing:.16em;margin-bottom:.6rem}
  .twocol-item p{font-size:.9rem;line-height:1.6}

  /* ---- rails compress to their gold number label (as mocked) ---- */
  .railrow .ir-band,.railrow .ir-plain,.railrow .ir-ports,.railrow .ir-flow{gap:0}
  .railrow .ir-tiles{gap:.3rem}
  .rail-num{font-size:.6rem;margin:0 0 .8rem}
  .rail-title,.rail-text{display:none}
  .railrow{gap:.4rem}

  /* ---- THE FRAMEWORK: three-column diagram stays 3-up ---- */
  .framemodels{grid-template-columns:.92fr 1.06fr 1.1fr;gap:.6rem}
  .fm-title{font-size:.48rem;letter-spacing:.06em;margin:0 0 .7rem}
  .framemodels .sideitem{gap:.4rem}
  .framemodels .sideitem .iri{width:1.9rem;height:1.9rem}
  .framemodels .sideitem .iri .ico{width:.75rem;height:.75rem}
  .framemodels .sideitem h3.h4{font-size:.45rem;margin:.1rem 0 .15rem;letter-spacing:.05em}
  .framemodels .sideitem p{font-size:.42rem;line-height:1.35}
  .sidelist-tight{gap:.7rem}
  .fm-notes{gap:.4rem}
  .fm-notes li{padding-left:.45rem}
  .fm-note-label{font-size:.42rem;letter-spacing:.05em}
  .fm-note-text{font-size:.4rem;line-height:1.3}
  .fm-foot{font-size:.42rem;margin-top:.6rem}
  .fm-foot strong{font-size:.42rem}

  /* ---- THE ORDER: compass keeps its two flanking columns ---- */
  .compass-diagram{grid-template-columns:1fr auto 1fr;gap:.55rem;margin-top:1.6rem}
  .cd-hub{order:0;width:74px}
  .cd-col{gap:1rem}
  .cd-node{gap:.4rem;align-items:flex-start}
  .cd-right .cd-node{flex-direction:row;text-align:left}
  .cd-node .iri{width:1.8rem;height:1.8rem}
  .cd-node .iri .ico{width:.72rem;height:.72rem}
  .cd-node h3.h4{font-size:.46rem;margin:0 0 .15rem;letter-spacing:.05em}
  .cd-node p{font-size:.43rem;line-height:1.3}
  .cd-node .iri-num{top:-.62rem;font-size:.44rem}

  /* ---- THE PATRIARK: "What You Will Practice" becomes an accordion ---- */
  .ir-acc{display:flex;flex-direction:column;gap:.5rem}
  .ir-acc .iritem{display:grid;grid-template-columns:auto 1fr auto;align-items:center;
    column-gap:.7rem;border:1px solid var(--hair);border-radius:4px;background:var(--panel);
    padding:.55rem .8rem;text-align:left;cursor:pointer}
  .ir-acc .iri{width:1.7rem;height:1.7rem;grid-row:1}
  .ir-acc .iri .ico{width:.7rem;height:.7rem}
  .ir-acc .iritem h3{margin:0;font-size:.58rem;letter-spacing:.08em}
  .ir-acc .iritem::after{content:"⌄";grid-column:3;grid-row:1;color:var(--gold);
    font-size:.85rem;line-height:1;transition:transform .2s}
  .ir-acc .iritem.open::after{transform:rotate(180deg)}
  .ir-acc .iritem p{grid-column:1/-1;display:none;font-size:.56rem;line-height:1.45;margin:.45rem 0 0}
  .ir-acc .iritem.open p{display:block}

  /* ---- RESOURCES: featured 4-in-row · library 2×N · downloadables stacked rows ---- */
  .photocards{grid-template-columns:repeat(4,1fr);gap:.45rem}
  /* THE ORDER "Resources by Sphere" is 5 cards — keep them one row (per mockup) */
  .photocards-5{grid-template-columns:repeat(5,1fr);gap:.32rem}
  .photocards-5 .pc-title{font-size:.42rem;letter-spacing:.03em}
  .photocards-5 .pc-text{font-size:.4rem;line-height:1.3}
  .photocards-5 .pc-go{font-size:.36rem}
  .photocards-5 .pc-over .ico{width:1.5rem;height:1.5rem}
  .pc-body{padding:.5rem .4rem}
  .pc-title{font-size:.45rem;letter-spacing:.05em;margin-bottom:.3rem}
  .pc-text{font-size:.42rem;line-height:1.35}
  .pc-go{font-size:.38rem;margin-top:.45rem;letter-spacing:.06em}
  .photocards-rows{display:flex;flex-direction:column;gap:.55rem}
  .photocards-rows .photocard{flex-direction:row;align-items:stretch}
  .photocards-rows .pc-media{flex:0 0 92px;aspect-ratio:auto;min-height:60px}
  .photocards-rows .pc-body{flex:1;display:grid;grid-template-columns:1fr auto;
    align-items:center;column-gap:.7rem;padding:.55rem .7rem}
  .photocards-rows .pc-title{grid-column:1;margin:0 0 .15rem;font-size:.5rem}
  .photocards-rows .pc-text{grid-column:1;font-size:.44rem}
  .photocards-rows .pc-go{grid-column:2;grid-row:1/3;margin:0;white-space:nowrap;font-size:.42rem}
  .mcards,.mcards-4{grid-template-columns:1fr}
  .mcards-4{grid-template-columns:1fr 1fr;gap:.5rem}
  .mcards-4 .mcard{padding:.7rem .8rem}
  .mcards-4 .mcard h3{font-size:.5rem;margin-bottom:.25rem;letter-spacing:.06em}
  .mcards-4 .mcard p{font-size:.44rem;margin-bottom:.45rem;line-height:1.4}
  .mcards-4 .mcard-go{font-size:.4rem}
  .mcards-4 .mcard-ico .ico{width:1.1rem;height:1.1rem}
  .mcard-photo{min-height:110px}
  .fm-notes{gap:.4rem}

  /* ---- type + spacing scale ---- */
  .wcol{padding:2.2rem 1rem}.rcol{padding:2rem 1.1rem}
  .sect-title{font-size:1.1rem;margin-bottom:1.4rem}
  .secnum{font-size:.72rem}
  .hero h1{font-size:clamp(1.9rem,8vw,2.8rem)}
  .band-inner h2{font-size:clamp(1.4rem,6vw,2rem)}
}

@media(max-width:480px){
  .foot-links{gap:.6rem 1rem}
  .foot-top{text-align:center}
}


/* ---- EMBEDDED DOCUMENT PAGES (Gamma PDF exports shown exactly as designed) ---- */
.docpages{background:#EFE9DD}
.docpages-bar{background:#0D1117;border-bottom:1px solid var(--hair)}
.docpages-bar-inner{max-width:1080px;margin:0 auto;padding:.9rem 1.2rem;display:flex;
  align-items:center;justify-content:space-between;gap:1rem}
.docpages-title{font-family:var(--display);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold-bright)}
.docpages-dl{padding:.6rem 1.2rem;font-size:.68rem;white-space:nowrap}
.docpages-tag{font-style:normal;margin-left:.8rem;padding:.2rem .55rem;border:1px solid var(--gold-dim);border-radius:2px;font-size:.6rem;letter-spacing:.1em;color:var(--gold)}
.docpages-stack{max-width:1080px;margin:0 auto;padding:1.6rem 1.2rem 2.4rem;display:grid;gap:1.2rem}
.doc-page{width:100%;height:auto;display:block;background:#FBF6EC;
  box-shadow:0 10px 30px rgba(0,0,0,.18),0 1px 0 rgba(0,0,0,.06)}
.docpages + .sect .note{max-width:1080px}
@media(max-width:900px){
  .docpages-stack{padding:.8rem .6rem 1.6rem;gap:.7rem}
  .docpages-bar-inner{padding:.7rem .8rem}
}

/* ---- LINE-ART INTEGRATION (placed last to win the cascade) ----
   The nautical chart & ship are black-on-white line drawings; invert + screen-blend
   drops the white ground and floats them as brass linework on the dark page.
   Scoped by filename so the full-colour tree/diamond illustrations are untouched. */
img[src*="/patriark/ship"],
img[src*="/patriark/chart"]{
  border:0;box-shadow:none;background:transparent;border-radius:0;
  filter:invert(1) sepia(.55) saturate(1.7) hue-rotate(2deg) brightness(1.03) contrast(.94);
  mix-blend-mode:screen}

/* gold artwork lifted from the mockups — already gold-on-black; screen-blend
   drops the black ground so it floats on the page */
img[src*="/assets/art/"]{
  border:0;box-shadow:none;background:transparent;border-radius:0;
  filter:none;mix-blend-mode:screen}

/* ---- CENTERING ---- */
.sect-title.left{text-align:center}
.secnum{justify-content:center}
.note{margin-left:auto;margin-right:auto}
.docmeta{text-align:center}

/* ---- EMBEDDED DOCUMENT PAGES (Gamma PDF exports shown exactly as designed) ---- */
.docpages{background:var(--bg-2)}
.docpages-bar{background:var(--panel);border-bottom:1px solid var(--line)}
.docpages-bar-inner{max-width:1080px;margin:0 auto;padding:.9rem 1.2rem;display:flex;
  align-items:center;justify-content:space-between;gap:1rem}
.docpages-title{font-family:var(--display);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink)}
.docpages-dl{padding:.6rem 1.2rem;font-size:.68rem;white-space:nowrap}
.docpages-tag{font-style:normal;margin-left:.8rem;padding:.2rem .55rem;border:1px solid var(--gold-dim);border-radius:2px;font-size:.6rem;letter-spacing:.1em;color:var(--gold)}
.docpages-stack{max-width:1080px;margin:0 auto;padding:1.6rem 1.2rem 2.4rem;display:grid;gap:1.2rem}
.doc-page{width:100%;height:auto;display:block;background:#FBF6EC;
  box-shadow:0 10px 30px rgba(0,0,0,.18),0 1px 0 rgba(0,0,0,.06)}
.docpages + .sect .note{max-width:1080px}
@media(max-width:900px){
  .docpages-stack{padding:.8rem .6rem 1.6rem;gap:.7rem}
  .docpages-bar-inner{padding:.7rem .8rem}
}


/* ======================================================================
   PAPER — article pages reproduce the Gamma document look:
   cream paper, green serif headings, clean sans body, beige cards,
   green-filled vs outlined contrast boxes, ruled verse blocks.
   ====================================================================== */
.paper{background:var(--paper);--pg:#3D5A3C;--pg-ink:#2A2A2A;--pg-tint:#EDE7D9;--pg-line:#D8D0C0}
.paper .sect{background:transparent}
.paper .rcol{max-width:860px;padding:1.4rem 1.6rem}
.paper .wcol{max-width:860px;padding:1.2rem 1.6rem}
.paper .block{border-bottom:0;padding-bottom:0}
.paper .block h2{font-family:'Lora',var(--serif);font-weight:400;font-size:clamp(1.9rem,3.4vw,2.6rem);
  color:var(--pg);line-height:1.18;margin:2.2rem 0 1rem;letter-spacing:0;text-transform:none}
.paper .prose:first-of-type h2{margin-top:.6rem}
.paper .rich,.paper .rich p,.paper .gcell-text,.paper .pillar-text,.paper .note .rich{
  font-family:'Source Sans 3',var(--sans);font-size:1.08rem;line-height:1.65;color:var(--pg-ink)}
.paper .rich p{margin:0 0 1rem}
.paper .rich strong{color:var(--pg-ink);font-weight:600}
.paper .rich em{color:var(--pg-ink);font-style:italic}
.paper .rich blockquote{margin:1.2rem 0;padding:.35rem 0 .35rem 1.2rem;border-left:3px solid var(--pg);
  font-family:'Source Sans 3',var(--sans);font-style:italic;font-size:1.04rem;color:var(--pg-ink)}
.paper .rich ol{padding-left:0;list-style:none;counter-reset:q}
.paper .rich ol li{counter-increment:q;position:relative;padding:.45rem 0 .45rem 2.9rem;font-family:'Source Sans 3',var(--sans);font-size:1.05rem;color:var(--pg-ink)}
.paper .rich ol li::before{content:counter(q);position:absolute;left:0;top:.2rem;width:2rem;height:2rem;border-radius:50%;
  border:1.5px solid var(--pg);color:var(--pg);font-family:'Lora',serif;display:flex;align-items:center;justify-content:center;font-size:.95rem}
/* three-column beige cards (Knowledge / Understanding / Wisdom) */
.paper .pillars{grid-template-columns:repeat(3,1fr);gap:1rem;margin:.4rem 0 1.2rem}
.paper .pillar{background:var(--pg-tint);border:0;border-radius:3px;padding:1.3rem 1.2rem}
.paper .pillar h3{font-family:'Lora',serif;font-weight:400;font-size:1.35rem;color:var(--pg-ink);margin:0 0 .35rem}
.paper .pillar-heb{font-family:'Source Sans 3',var(--sans);font-style:italic;font-size:.98rem;color:var(--pg-ink);margin:0}
.paper .pillar-part{font-family:'Source Sans 3',var(--sans);font-style:italic;font-size:.98rem;letter-spacing:0;text-transform:none;color:var(--pg-ink);margin:0 0 .7rem}
.paper .pillar .ref{display:none}
/* side-by-side boxes: first cell filled green (as the document does), rest outlined/beige */
.paper .grid{gap:1rem;margin:.4rem 0 1.2rem}
.paper .gcell{background:var(--pg-tint);border:0;border-top:0;border-radius:3px;padding:1.2rem 1.25rem}
.paper .gcell h3{font-family:'Lora',serif;font-weight:400;font-size:1.3rem;color:var(--pg-ink);margin:0 0 .5rem}
.paper .gcell-label{font-family:'Source Sans 3',var(--sans);font-weight:600;letter-spacing:0;text-transform:none;font-size:1rem;color:var(--pg-ink)}
.paper .grid-contrast .gcell:first-child{background:var(--pg);color:#fff}
.paper .grid-contrast .gcell:first-child h3,.paper .grid-contrast .gcell:first-child .gcell-text,
.paper .grid-contrast .gcell:first-child .gcell-label{color:#fff}
.paper .grid-contrast .gcell:not(:first-child){background:transparent;padding-left:.2rem}
.paper .grid-contrast .gcell:not(:first-child) h3{color:var(--pg)}
.paper .grid-cards .gcell{background:var(--paper);border:1px solid var(--pg-line);border-left:4px solid var(--pg)}
.paper .grid-steps .gcell{background:transparent;padding:0}
.paper .grid-steps .gcell-label{display:block;background:var(--pg-tint);text-align:center;font-family:'Lora',serif;font-size:1.4rem;font-weight:400;
  padding:.5rem;margin-bottom:.9rem;clip-path:polygon(0 0,96% 0,100% 50%,96% 100%,0 100%,3% 50%)}
.paper .grid-quotes .gcell{background:transparent;border:1px solid var(--pg-line);position:relative;padding:1.4rem 1.4rem 1.2rem}
.paper .grid-quotes .gcell::before{content:"\201C";position:absolute;left:.6rem;top:-.9rem;font-family:'Lora',serif;font-size:2.6rem;color:var(--pg);background:var(--paper);padding:0 .2rem;line-height:1}
.paper .grid-quotes .gcell-text{font-style:italic}
.paper .scripture-block blockquote{font-family:'Source Sans 3',var(--sans);font-style:italic;font-size:1.1rem;color:var(--pg-ink);
  text-align:left;border-left:3px solid var(--pg);padding:.4rem 0 .4rem 1.2rem;max-width:none}
.paper .scripture-block cite{text-align:left;font-family:'Source Sans 3',var(--sans);font-weight:600;letter-spacing:0;text-transform:none;font-size:.98rem;color:var(--pg-ink);margin-top:.4rem}
.paper .docbar{background:var(--panel);border-bottom:1px solid var(--line)}
.paper .docbar .docpages-bar-inner{max-width:860px}
.paper .band-cta{margin-top:2rem}
/* the document's own title */
.paper .doc-title{font-family:'Lora',serif;font-weight:400;font-size:clamp(2.1rem,4vw,3rem);color:var(--pg);line-height:1.15;margin:1.2rem 0 1.2rem;letter-spacing:0}

/* ---- CENTERING / RHYTHM FIXES ---- */
.sect-title{max-width:var(--maxw);margin-left:auto;margin-right:auto}
.secnum{justify-content:center}
.lead.center{margin-left:auto;margin-right:auto}
.note{margin-left:auto;margin-right:auto}
.docmeta{text-align:center}
.mcards,.photocards,.cards{justify-content:center}
.band-inner .btns{justify-content:center}
@media(max-width:900px){
  .paper .pillars,.paper .grid{grid-template-columns:1fr}
  .paper .rcol,.paper .wcol{padding:1rem 1.1rem}
  .paper .block h2{font-size:1.7rem}
  .paper .rich,.paper .rich p,.paper .gcell-text,.paper .pillar-text{font-size:1.02rem}
}

.paper .pillar{display:flex;flex-direction:column}
.paper .pillar h3{order:-1}
.docpages-tag{margin-left:.6rem;white-space:nowrap}
.docpages-title{display:flex;align-items:center;flex-wrap:wrap;gap:.3rem}

.sect-title.left{text-align:center}
.fm-figure{background:transparent}
.fm-figure img{border:0;filter:none;background:transparent}

/* paper pages sit under the dark nav: give them a light doc bar and normal line-art */
.paper .docbar{background:#fff;border-bottom:1px solid #D9D2C4}
.paper .docpages-title{color:#0D1117}
.paper .docpages-tag{color:#3D5A3C;border-color:#3D5A3C}
.paper .btn-ghost{border-color:#3D5A3C;color:#3D5A3C}
.paper .band-cta{background:linear-gradient(180deg,#0D1117,#161B22)}
.paper .block h2,.paper .rich,.paper .rich p,.paper .gcell-text,.paper .pillar-text{color:#2A2A2A}
.paper .block h2{color:#3D5A3C}
.docpages-bar-inner{flex-wrap:wrap;row-gap:.6rem}
.docpages-dl{flex:0 0 auto}
@media(max-width:480px){.docpages-bar-inner{flex-direction:column;align-items:flex-start}.docpages-dl{width:100%;text-align:center}}

/* ---- PAPER (book) variant for reading documents & lessons: ink headings, gold accents ---- */
.paper-book{--pg:#0D1117;--pg-ink:#22272E;--pg-tint:#EFEAE0;--pg-line:#D9D2C4}
.paper-book .block h2{font-family:var(--serif);font-weight:600;font-size:clamp(1.9rem,3.4vw,2.5rem);color:#0D1117}
.paper-book .rich,.paper-book .rich p,.paper-book .gcell-text,.paper-book .pillar-text{font-family:var(--sans);font-size:1.05rem;line-height:1.7;color:#22272E}
.paper-book .rich blockquote,.paper-book .scripture-block blockquote,.paper-book .esv-support blockquote{border-left-color:var(--gold);color:#22272E;font-family:var(--serif);font-style:italic;font-size:1.2rem}
.paper-book .esv-support cite,.paper-book .scripture-block cite{color:#5B646E}
.paper-book .esv-support .esvtag{color:var(--gold-bright)}
.paper-book .callout{background:#fff;border:1px solid #D9D2C4;border-left:3px solid var(--gold)}
.paper-book .callout h3{color:#0D1117}
.paper-book .note,.paper .note{background:#EFEAE0;border-color:#D9D2C4}
.paper .note h3.h4,.paper .note-h{color:#8a6d2f}
.paper .note .rich,.paper .note .rich p{color:#5c574b}
.paper-book .note h3.h4,.paper-book .note .rich{color:#22272E}
.paper-book .pullquote blockquote{color:#0D1117}
.paper-book .pullquote cite,.paper-book .card-label,.paper-book .gcell-label,.paper-book .pillar-part,.paper-book .ref{color:var(--gold-bright)}
.paper-book .card,.paper-book .pillar,.paper-book .gcell,.paper-book .layer-n{background:#fff;border-color:#D9D2C4;color:#22272E}
.paper-book .card h3,.paper-book .pillar h3,.paper-book .gcell h3,.paper-book .layer-body h3.h4,.paper-book .reflect-group h3.h4,.paper-book .trace-body .good{color:#0D1117}
.paper-book .card p,.paper-book .layer-body p,.paper-book .reflect li,.paper-book .gcell-tag{color:#22272E}
.paper-book .layer-n{box-shadow:0 0 0 6px var(--paper)}
.paper-book .layers{border-left-color:#D9D2C4}
.paper-book .figure img,.paper-book .duo img{border-color:#D9D2C4;box-shadow:0 12px 30px rgba(0,0,0,.12)}
.paper-book .docmeta,.paper-book .toc a,.paper-book .readtime{color:#22272E}
.paper-book .toc summary{color:#0D1117}
.paper-book .prevnext .pn{border-color:#D9D2C4;background:#fff;color:#22272E}
.paper-book .prevnext .pn strong{color:#0D1117}
.paper-book .block{border-bottom:1px solid #E6E0D3;padding-bottom:1rem}
.paper-book .rcol{max-width:780px;padding:2.2rem 1.6rem}
.paper-book .wcol{max-width:1080px}
.paper-book .trace blockquote{color:#22272E}
.paper-book .trace .bad{color:#9c4a2c}
.paper-book .grid-steps .gcell-label{background:#EFEAE0}

/* ======================================================================
   THE PATRIARK — "chart room" theme: deep navy chrome, ivory reading,
   gold bearing markers. Distinct from Created Order's warm onyx.
   ====================================================================== */
.theme-ark{--bg:#0B1320;--bg-2:#101A2B;--panel:#111C2E;--panel-2:#15213A;--line:#26344B;--hair:rgba(199,154,84,.25)}
.theme-ark .nav{background:rgba(11,19,32,.94);border-bottom:1px solid rgba(199,154,84,.3)}
.theme-ark .site-footer{background:#070D17}
.theme-ark .lhero{background:linear-gradient(180deg,#0B1320,#101A2B)}
.theme-ark .band-dark{background:#0E1828}
.theme-ark .band-cta{background:linear-gradient(180deg,#0B1320,#101A2B)}
.theme-ark .panelbox{background:#0E1828;border-color:#26344B}
.theme-ark .nav-links.open{background:rgba(11,19,32,.98)}

/* port navigation strip (dark navy, persistent at top of a lesson) */
.voynav{background:#0B1320;border-bottom:1px solid rgba(199,154,84,.3);color:#E8E5DD;position:sticky;top:0;z-index:50}
.voynav-inner{max-width:1080px;margin:0 auto;padding:.7rem 1.2rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem}
.voynav a{color:#E8E5DD;font-size:.8rem;letter-spacing:.04em}
.voynav a:hover{color:var(--gold)}
.ptn-prev{text-align:left}.ptn-next{text-align:right}
.pn-mid{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--display);color:var(--gold);font-size:.85rem;letter-spacing:.12em;white-space:nowrap}
.pn-label{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:#B9B6AE}
.pn-rule{display:inline-block;width:140px;height:2px;background:rgba(199,154,84,.25);position:relative}
.pn-rule i{position:absolute;left:0;top:0;bottom:0;background:var(--gold)}
.pn-rule i::after{content:"";position:absolute;right:-5px;top:-4px;width:10px;height:10px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px #0B1320}
.theme-ark .nav{position:relative}

/* lesson head (ivory) */
.lessonhead{background:var(--paper)}
.lessonhead .rcol{padding:3.2rem 1.6rem 1rem;max-width:780px}
.lessonhead .eyebrow{color:var(--gold-bright);margin-bottom:.9rem}
.lh-time{color:#5B646E;letter-spacing:.14em}
.lessonhead h1{font-family:var(--display);font-size:clamp(2rem,4.4vw,3.2rem);color:#0D1117;letter-spacing:.03em;margin:0;line-height:1.1}
.lh-thesis{font-family:var(--serif);font-style:italic;font-size:1.45rem;color:#3A424B;margin:1rem 0 0}
.paper-book .callout h3,.paper-book .sect-title{font-family:var(--display);font-size:1.1rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-bright)}
.paper-book .sect-title{text-align:left;font-size:.95rem;margin-bottom:1.2rem}
.paper-book .mcard{background:#fff;border-color:#D9D2C4;color:#22272E}
.paper-book .mcard h3{color:#0D1117}.paper-book .mcard p{color:#22272E}
.mcard-badge{display:inline-block;font-family:var(--display);font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-bright);border:1px solid var(--gold-dim);border-radius:2px;padding:.15rem .45rem;margin-bottom:.6rem;font-style:normal}

/* practice / mark complete */
.portdone{background:#EFEAE0;border-top:1px solid #D9D2C4;margin-top:2rem}
.portdone .rcol{padding:2.4rem 1.6rem}
.pd-text{color:#22272E;max-width:40em;margin:.4rem 0 0}
.pd-mark.is-done{background:#3D5A3C;color:#fff}
.portdone .btn-ghost{border-color:#0D1117;color:#0D1117}

/* voyage dashboard (ivory) */
.voyage{background:var(--paper)}
.voyage .wcol{max-width:980px}
.voyage-head{text-align:center;margin-bottom:2rem}
.voyage-title{font-family:var(--display);font-size:clamp(2.2rem,5vw,3.4rem);color:#0D1117;margin:.2rem 0;letter-spacing:.04em}
.voyage-sub{font-family:var(--serif);font-style:italic;font-size:1.35rem;color:#3A424B;margin:0 0 1.2rem}
.voyage-progress{font-family:var(--display);font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-bright);margin:0 0 .5rem}
.vp-bar{height:3px;background:#D9D2C4;max-width:420px;margin:0 auto;position:relative}
.vp-fill{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--gold);transition:width .4s}
.voyage-current{background:#0B1320;color:#E8E5DD;border-radius:6px;padding:1.6rem 1.8rem;margin:0 auto 2rem;max-width:720px;text-align:center;
  border:1px solid rgba(199,154,84,.35)}
.voyage-current .eyebrow{color:var(--gold);margin-bottom:.5rem}
.vc-title{font-family:var(--display);font-size:1.5rem;color:#F2EFE7;margin:0 0 .4rem;letter-spacing:.04em}
.vc-text{color:#CFC9BC;margin:0 0 1.1rem}
.voyage-list{list-style:none;padding:0;margin:0;border:1px solid #D9D2C4;background:#fff;border-radius:6px;overflow:hidden}
.vl-row{display:grid;grid-template-columns:2.2rem 2.6rem 1.3fr 2fr auto;align-items:center;gap:.8rem;padding:1rem 1.2rem;border-top:1px solid #E6E0D3;color:#22272E}
.vl-row:first-child{border-top:0}
.vl-state{font-family:var(--display);color:#B9B6AE;font-size:1rem;text-align:center}
.vl-num{font-family:var(--display);color:var(--gold-bright);letter-spacing:.1em}
.vl-title{font-family:var(--display);color:#0D1117;font-size:.95rem;letter-spacing:.04em}
.vl-text{color:#5B646E;font-size:.92rem}
.vl-go{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-bright);white-space:nowrap}
.vl-row.is-done .vl-state{color:#3D5A3C}
.vl-row.is-done .vl-title{color:#5B646E}
.vl-row.is-next{background:#FBF6EC}
.vl-row.is-next .vl-state{color:var(--gold-bright)}
.voyage-note{text-align:center;color:#5B646E;font-size:.9rem;margin:1.2rem auto 0;max-width:48em}
@media(max-width:900px){
  .voynav-inner{grid-template-columns:1fr;justify-items:center;gap:.35rem;padding:.6rem 1rem}
  .ptn-prev,.ptn-next{display:none}
  .pn-rule{width:110px}
  .vl-row{grid-template-columns:1.6rem 2rem 1fr auto;grid-template-areas:"s n t g" "s n x g";row-gap:.15rem;padding:.8rem .9rem}
  .vl-state{grid-area:s}.vl-num{grid-area:n}.vl-title{grid-area:t}.vl-text{grid-area:x;font-size:.82rem}.vl-go{grid-area:g}
  .lessonhead .rcol{padding:2rem 1.1rem .6rem}
  .voyage-current{padding:1.2rem}
}

/* reading-column boxes must stay centered (their own margin rules were overriding the column) */
.rcol.callout,.rcol.note,.rcol.pullquote,.rcol.scripture-block{margin-left:auto;margin-right:auto}

/* ---- PAPER v2 (ChatGPT article review applied): 720px measure, 920px wide components, real hierarchy ---- */
.paper .rcol{max-width:760px;padding:1.2rem 1.25rem}          /* 720 reading + padding */
.paper .wcol{max-width:960px;padding:1rem 1.25rem}            /* 920 wide components */
.paper .rich,.paper .rich p,.paper .gcell-text,.paper .pillar-text,.paper .note .rich{font-size:18px;line-height:1.72}
.paper .rich p{margin:0 0 1.15em}
.paper .block h2{font-size:32px;line-height:1.2;font-weight:600;margin:3.25rem 0 1rem;text-wrap:balance}
.paper-gamma .docbar + .sect .block h2{font-size:clamp(2.25rem,4.5vw,3.5rem);line-height:1.08;letter-spacing:-.02em;margin:1rem 0 1.25rem}
.paper .gcell h3,.paper .pillar h3{font-size:21px;line-height:1.35;font-weight:600;color:#2A2A2A;font-family:'Lora',serif}
.paper .gcell-label{font-size:.95rem}
.paper .pillar-heb,.paper .pillar-part{font-size:.92rem;color:#4B5056}
/* only three box treatments: concept (beige) · key insight (green) · scripture (rule, no card) */
.paper .gcell,.paper .grid-cards .gcell,.paper .grid-quotes .gcell{background:var(--pg-tint);border:0;border-left:0;padding:24px 22px;border-radius:2px}
.paper .grid-quotes .gcell::before{display:none}
.paper .grid-contrast .gcell:first-child{background:var(--pg);color:#fff}
.paper .grid-contrast .gcell:not(:first-child){background:var(--pg-tint);padding:24px 22px}
.paper .grid-contrast .gcell:not(:first-child) h3{color:#2A2A2A}
.paper .grid-steps .gcell{background:transparent;padding:0;display:grid;grid-template-columns:36px 1fr;column-gap:16px;align-items:start}
.paper .grid-steps .gcell-label{grid-row:1/3;width:32px;height:32px;border:1px solid var(--pg);color:var(--pg);border-radius:50%;
  display:grid;place-items:center;font-family:'Source Sans 3',var(--sans);font-size:14px;font-weight:600;background:transparent;
  padding:0;margin:.15em 0 0;clip-path:none}
.paper .grid-steps .gcell h3{grid-column:2;margin:0 0 .35rem}
.paper .grid-steps .gcell-text{grid-column:2}
.paper .grid-steps{gap:1.4rem 1.6rem}
.paper .rich ol li::before{width:32px;height:32px;font-family:'Source Sans 3',var(--sans);font-size:14px;font-weight:600}
.paper .rich ol li{padding-left:3rem}
.paper .rich blockquote,.paper .scripture-block blockquote{font-family:'Lora',serif;font-size:17px;line-height:1.65;color:var(--pg);margin:2.2rem 0;padding:.25rem 0 .25rem 1.5rem}
.paper .scripture-block cite{font-family:'Source Sans 3',var(--sans);font-size:.8rem;font-style:normal;letter-spacing:.04em;color:#4B5056}
/* quieter metadata bar */
.paper .docbar .docpages-bar-inner{max-width:960px;padding:.7rem 1.25rem}
.paper .docpages-title{font-family:'Source Sans 3',var(--sans);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#667064}
.paper .docpages-tag{font-size:11px;letter-spacing:.06em;border:0;padding:0;margin-left:.5rem;color:#667064;text-transform:none;letter-spacing:.02em}
.paper .docpages-dl{padding:9px 14px;font-size:13px;letter-spacing:.06em}
.paper h1,.paper h2,.paper h3{text-wrap:balance}
@media(max-width:900px){
  .paper .rcol,.paper .wcol{padding:.9rem 20px}
  .paper .rich,.paper .rich p,.paper .gcell-text,.paper .pillar-text{font-size:17px;line-height:1.68}
  .paper .block h2{font-size:28px;margin-top:2.75rem}
  .paper-gamma .docbar + .sect .block h2{font-size:36px;line-height:1.1}
  .paper .gcell h3,.paper .pillar h3{font-size:20px}
  .paper .gcell,.paper .pillar,.paper .grid-contrast .gcell:not(:first-child){padding:20px}
  .paper .grid-steps .gcell{padding:0}
}

/* ======================================================================
   ESSAY (paper-gamma) — editorial pacing per the reading-experience review.
   One type scale: H1 52/36 · chapter 34/29 · H3 21/19 · body 18/17 ·
   standfirst 20/18 · pull 24/21 · scripture 18/17 · meta 12/11 · eyebrow 11/10
   ====================================================================== */
.read-progress{position:fixed;left:0;top:0;height:2px;width:0;background:#C79A54;z-index:400;
  box-shadow:0 0 0 1px rgba(61,90,60,.15)}
.essayhead .rcol{padding:3.2rem 1.25rem 1rem}
.essay-eyebrow{font-family:'Source Sans 3',var(--sans);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#3D5A3C;margin:0 0 1rem}
.essay-title{font-family:'Lora',serif;font-weight:600;font-size:52px;line-height:1.08;letter-spacing:-.02em;color:#3D5A3C;margin:0 0 1.25rem;text-wrap:balance}
.essay-standfirst{font-family:'Lora',serif;font-size:20px;line-height:1.5;color:#586057;max-width:520px;margin:0 0 1rem}
.essay-meta{font-family:'Source Sans 3',var(--sans);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#667064;margin:0 0 1.6rem}
.essay-contents{border-top:1px solid #D8D0C0;border-bottom:1px solid #D8D0C0;padding:.7rem 0;margin:0 0 1rem}
.essay-contents summary{font-family:'Source Sans 3',var(--sans);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#3D5A3C;cursor:pointer;list-style:none}
.essay-contents summary::after{content:" +";color:#3D5A3C}
.essay-contents[open] summary::after{content:" –"}
.essay-contents ol{list-style:none;padding:0;margin:.8rem 0 .2rem;display:grid;gap:.45rem}
.essay-contents a,.essay-index a{font-family:'Source Sans 3',var(--sans);font-size:15px;color:#2A2A2A;display:flex;gap:.7rem;align-items:baseline}
.essay-contents a span,.essay-index a span{font-size:11px;letter-spacing:.08em;color:#3D5A3C;min-width:1.4rem}
.essay-index{display:none}
@media(min-width:1200px){
  .essay-index{display:block;position:fixed;top:130px;width:200px}
  .essay-index p{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#667064;margin:0 0 .7rem;font-family:'Source Sans 3',var(--sans)}
  .essay-index ol{list-style:none;padding:0;margin:0;display:grid;gap:.5rem}
  .essay-index a{font-size:13px;color:#667064;line-height:1.3}
  .essay-index a.is-active{color:#3D5A3C;font-weight:600}
  .essay-contents{display:none}
}
/* laptop widths: shift the whole essay right so the index has its own lane (no overlap with 920px components) */
@media(min-width:1200px) and (max-width:1479px){
  .paper-gamma{padding-left:236px}
  .essay-index{left:24px}
}
/* wide screens: the index lives in the free margin left of the 920px wide column */
@media(min-width:1480px){
  .essay-index{left:calc(50% - 720px)}
}
}
.chapter .rcol{padding:96px 1.25rem 0}
.chapter-num{font-family:'Source Sans 3',var(--sans);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#3D5A3C;margin:0 0 .6rem}
.chapter-title{font-family:'Lora',serif;font-weight:600;font-size:34px;line-height:1.15;color:#3D5A3C;margin:0 0 .8rem;text-wrap:balance}
.chapter-deck{font-family:'Source Sans 3',var(--sans);font-size:19px;line-height:1.5;color:#586057;margin:0 0 48px;max-width:600px}
.chapter + .sect .rcol{padding-top:0}
.paper .prose-h3{font-family:'Lora',serif;font-weight:600;font-size:21px;line-height:1.35;color:#2A2A2A;margin:48px 0 12px;text-wrap:balance}
.paper .block h2{margin-top:3rem}
/* pull quotes: space, not boxes */
.paper .pullquote{padding:0;border:0}
.paper .pullquote blockquote{font-family:'Lora',serif;font-weight:500;font-style:normal;font-size:24px;line-height:1.35;color:#3D5A3C;
  max-width:620px;margin:56px auto;text-align:left;border:0;padding:0}
.paper .pullquote cite{display:none}
/* scripture: generous */
.paper .scripture-block blockquote,.paper .rich blockquote{font-size:18px;line-height:1.65;margin:40px 0}
/* definitions as typeset entries, not UI cards */
.paper .pillars{grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid #3D5A3C;border-bottom:1px solid #D8D0C0;margin:1.2rem 0 2rem}
.paper .pillar{background:transparent;border-radius:0;padding:22px 20px 22px 0;border-right:1px solid #D8D0C0}
.paper .pillar:last-child{border-right:0}
.paper .pillar:not(:first-child){padding-left:20px}
.paper .pillar h3{font-family:'Source Sans 3',var(--sans);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#3D5A3C;margin:0 0 .5rem}
.paper .pillar-heb{font-family:'Lora',serif;font-style:normal;font-size:18px;color:#2A2A2A}
.paper .pillar-part{font-size:14px;color:#586057;margin:0 0 .8rem}
.paper .pillar-text{font-size:16px;line-height:1.6}
.paper .docbar .docpages-dl{border:0;padding:0;text-decoration:underline;text-underline-offset:3px;color:#3D5A3C;font-size:12px;letter-spacing:.08em}
@media(max-width:900px){
  .essayhead .rcol{padding:2.2rem 20px .6rem}
  .essay-title{font-size:36px;line-height:1.1}
  .essay-standfirst{font-size:18px}
  .chapter .rcol{padding:72px 20px 0}
  .chapter-title{font-size:29px}
  .chapter-deck{font-size:17px;margin-bottom:36px}
  .paper .prose-h3{font-size:19px;margin-top:40px}
  .paper .pullquote blockquote{font-size:21px;margin:40px 0}
  .paper .pillars{grid-template-columns:1fr}
  .paper .pillar{border-right:0;border-bottom:1px solid #D8D0C0;padding:18px 0}
  .paper .pillar:not(:first-child){padding-left:0}
  .paper .pillar:last-child{border-bottom:0}
}

.rich-inline p{margin:0 0 .6em}.rich-inline p:last-child{margin:0}
.paper .rich em,.paper .rich-inline em{font-style:italic}

/* ---- ESSAY punch list (round 4) ---- */
.essay-standfirst{max-width:600px;margin:24px 0 36px}
.essay-meta{margin-bottom:1.2rem}
.essayhead + .chapter .rcol{padding-top:48px}
/* question pairs: label + question, not H3-scale */
.paper .grid-contrast .gcell-label{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;margin-bottom:.5rem}
.paper .grid-contrast .gcell h3{font-size:20px;line-height:1.3;font-weight:600}
.paper .grid-contrast .gcell:first-child .gcell-label{color:#E6EEDF}
.paper .grid-contrast .gcell:not(:first-child) .gcell-label{color:#3D5A3C}
/* grouped steps: one unit with hairline rules */
.paper .grid-steps{grid-template-columns:1fr;gap:0;margin:2rem 0 2.4rem}
.paper .grid-steps .gcell{padding:22px 0;border-bottom:1px solid #D8D0C2;grid-template-columns:32px 1fr;column-gap:20px}
.paper .grid-steps .gcell:last-child{border-bottom:0}
/* the Complete Movement: four connected steps */
.paper .grid-flow{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:0 12px;max-width:800px;margin:40px auto;position:relative;padding-top:18px}
.paper .grid-flow::before{content:"";position:absolute;left:16px;right:16px;top:34px;height:1px;background:#3D5A3C;opacity:.45}
.paper .grid-flow .gcell{background:transparent;padding:0;display:block;text-align:left}
.paper .grid-flow .gcell-label{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;border:1px solid #3D5A3C;background:var(--paper);
  color:#3D5A3C;font-family:'Source Sans 3',var(--sans);font-size:14px;font-weight:600;margin:0 0 14px;position:relative;clip-path:none;padding:0}
.paper .grid-flow .gcell h3{font-size:19px;margin:0 0 .35rem}
.paper .grid-flow .gcell-text,.paper .grid-flow .gcell-text p{font-size:17px;line-height:1.55}
@media(max-width:900px){
  .paper .grid-flow{grid-template-columns:1fr;gap:22px;margin:40px 0;padding-top:0;padding-left:0}
  .paper .grid-flow::before{left:15px;right:auto;top:8px;bottom:8px;width:1px;height:auto}
  .paper .grid-flow .gcell{display:grid;grid-template-columns:32px 1fr;column-gap:18px}
  .paper .grid-flow .gcell-label{margin:0;grid-row:1/3}
  .paper .pullquote blockquote{max-width:100%;margin:40px 0}
}
/* index lane: marginalia, not a sidebar */
@media(min-width:1200px) and (max-width:1479px){
  .paper-gamma.has-rail{padding-left:216px}
  .essay-index{left:24px;width:168px}
}
@media(min-width:1200px) and (max-width:1479px){
  .paper-gamma .band-cta,.paper-gamma .docbar{margin-left:-216px}
  .paper-gamma .docbar .docpages-bar-inner{padding-left:calc(1.25rem + 216px)}
}

/* ======================================================================
   AUDIT PASS (ChatGPT full-site audit + Claude audit, 2026-08-23)
   ====================================================================== */
/* focus + motion */
:focus-visible{outline:2px solid #C79A54;outline-offset:3px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
/* tap targets ≥44px for small links */
.foot-links a,.foot-social a,.mcard-go,.iri-go,.pc-go,.card-go,.vl-go,.essay-contents a,.toc a{display:inline-flex;align-items:center;min-height:44px}
.foot-social a{width:44px;justify-content:center}
.nav-toggle{min-width:44px;min-height:44px;justify-content:center}
/* headings that are visually labels */
h2.secnum{font-size:inherit;font-weight:inherit;margin:0 0 2.2rem}
h2.eyebrow-h{font-family:var(--display);font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:0 0 .8rem;font-weight:500}
.note-h{font-family:var(--serif);font-size:1.25rem;color:var(--gold-bright);margin:0 0 .4rem}
.iritem-t{display:block;font-family:var(--display);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--body);margin:.6rem 0 0}
/* coming-soon states */
.mcard-soon,.pc-soon{opacity:.7;cursor:default}
.mcard-soon:hover,.pc-soon:hover{transform:none;box-shadow:none;border-color:var(--line)}
.iri-soon{color:var(--muted)}
.pc-soon .pc-go{color:var(--muted)}
/* mobile: dense rows wrap to readable sizes (no more 7–8px labels) */
@media(max-width:900px){
  .ir-band,.ir-ports,.ir-plain,.ir-nav,.ir-tiles,.ir-path,.ir-flow{flex-wrap:wrap;justify-content:center;row-gap:.9rem}
  .ir-band>.iritem,.ir-plain>.iritem,.ir-tiles>.iritem{flex:1 1 30%;min-width:30%;border-left:0!important}
  .ir-ports>.iritem,.ir-nav>.iritem{flex:1 1 22%;min-width:22%;border-left:0!important}
  .ir-path>.iritem,.ir-flow>.iritem{flex:1 1 30%;min-width:30%}
  .ir-flow>.iritem-result{flex:1 1 100%}
  .ir-arrow{display:none}
  .ir .iri{width:2.6rem;height:2.6rem}
  .ir .iri .ico{width:1.05rem;height:1.05rem}
  .ir .iritem h3,.ir-nav .iritem h3,.ir-ports .iritem h3,.iritem-t{font-size:.72rem;letter-spacing:.05em}
  .ir .iritem p,.ir-ports .iritem p{font-size:.8rem;line-height:1.4}
  .iri-label{font-size:.66rem}.iritem-result p{font-size:.8rem}
  .ir-ports .iri,.ir-nav .iri{width:2.4rem;height:2.4rem}
  .ir-ports .iri .ico,.ir-nav .iri .ico{width:1rem;height:1rem}
  /* framework 3-col + compass keep columns but readable */
  .framemodels .sideitem h3.h4,.fm-note-label{font-size:.6rem}
  .framemodels .sideitem p,.fm-note-text,.fm-foot{font-size:.66rem}
  .cd-node h3.h4{font-size:.62rem}.cd-node p{font-size:.66rem}
  /* hero: get to content faster */
  .lhero{padding:2.6rem 1.2rem 2.4rem}
  .hero{padding:2.8rem 1.2rem 2.2rem}
}

h3.h4{font-size:inherit}

/* ---- interactive feelings wheel ---- */
.wheel-tool{margin:1.6rem 0 0;text-align:center}
.wheel-stage{max-width:720px;margin:0 auto;touch-action:none}
.wheel-spin{cursor:grab;transition:transform .05s linear;will-change:transform}
.wheel-spin:active{cursor:grabbing}
.wheel-spin svg{width:100%;height:auto;display:block}
.wheel-spin [data-w]{cursor:pointer}
.wheel-readout{font-family:'Source Sans 3',var(--sans);font-size:1.15rem;color:#2A2A2A;margin:1rem 0 0;min-height:1.6em}
.wheel-readout b{color:#3D5A3C;font-size:1.35rem}
.wr-fam{color:#5B646E;font-size:1rem}
.wr-hint{font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;color:#8a8577}
.wheel-block figcaption{font-size:.92rem;color:#5B646E;max-width:560px;margin:0.8rem auto 0;font-style:italic}

/* ---- feelings explorer (staged wheel) ---- */
.fw{max-width:680px;margin:1.4rem auto 0;text-align:center}
.fw-prompt{font-family:'Source Sans 3',var(--sans);font-size:1.25rem;color:#2A2A2A;margin:0 0 1rem}
.fw-prompt b{color:#3D5A3C}
.fw-stage{position:relative}
.fw-svg{width:100%;height:auto;display:block}
.fw-wedge{cursor:pointer;transition:opacity .15s, transform .15s;transform-origin:450px 450px;outline-offset:4px}
.fw-wedge:hover,.fw-wedge:focus-visible{opacity:.85}
.fw-pop{animation:fwpop .28s ease}
@keyframes fwpop{from{opacity:.3;transform:scale(.94)}to{opacity:1;transform:none}}
.fw-crumb{font-family:'Source Sans 3',var(--sans);font-size:1.1rem;color:#5B646E;margin:1rem 0 0;min-height:1.5em}
.fw-crumb b{color:#3D5A3C}
.fw-reset{margin:.8rem 0 0}
.fw-again{border-color:#3D5A3C;color:#3D5A3C;padding:.5rem 1.2rem;font-size:.72rem}
.fw-cap{font-size:.92rem;color:#5B646E;max-width:560px;margin:1rem auto 0;font-style:italic;text-align:center}
@media(prefers-reduced-motion:reduce){.fw-pop{animation:none}}

/* ---- feelings explorer: instructions + truth check ---- */
.fw-lead{font-family:'Source Sans 3',var(--sans);font-size:1.1rem;color:#5B646E;margin:0 0 .3rem}
.fw-truth{max-width:620px;margin:1.6rem auto 0;text-align:left;background:#EDE7D9;border-radius:3px;padding:24px 26px}
.fw-truth-h{font-family:'Lora',serif;font-weight:600;font-size:21px;color:#3D5A3C;margin:0 0 .8rem;text-align:center}
.fw-truth-list{list-style:none;padding:0;margin:0;counter-reset:ft}
.fw-truth-list li{counter-increment:ft;position:relative;padding:.5rem 0 .5rem 2.9rem;font-family:'Source Sans 3',var(--sans);font-size:16px;line-height:1.55;color:#2A2A2A}
.fw-truth-list li::before{content:counter(ft);position:absolute;left:0;top:.55rem;width:30px;height:30px;border-radius:50%;
  border:1px solid #3D5A3C;color:#3D5A3C;display:grid;place-items:center;font-size:13px;font-weight:600}
.fw-truth-list b{color:#3D5A3C}
.fw-truth-verse{margin:1rem 0 0;padding:.3rem 0 .3rem 1.2rem;border-left:3px solid #3D5A3C;
  font-family:'Lora',serif;font-style:italic;font-size:16px;line-height:1.6;color:#2A2A2A}
.fw-truth-verse cite{display:block;font-family:'Source Sans 3',var(--sans);font-style:normal;font-size:.78rem;letter-spacing:.04em;color:#5B646E;margin-top:.4rem}
.fw-ex{max-width:620px;margin:0 auto 1.4rem;text-align:left;border:1px solid #D8CFBB;border-radius:3px;padding:16px 20px}
.fw-ex-t{font-family:'Source Sans 3',var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#3D5A3C;margin:0 0 .35rem}
.fw-ex-b{font-family:'Source Sans 3',var(--sans);font-size:16px;line-height:1.55;color:#2A2A2A;margin:0}
.fw-ex-b b{color:#3D5A3C}
.fw-lead{font-weight:600;color:#3D5A3C}
.fw-nextwrap{text-align:center;margin:1.3rem 0 0}
.fw-done{font-family:'Lora',serif;font-style:italic;font-size:16.5px;line-height:1.6;color:#3D5A3C;text-align:center;margin:1.2rem 0 0}

/* ---- Draw Out the Deep Water: guided wizard ---- */
.dw-standfirst{font-family:'Source Sans 3',var(--sans);font-size:1.08rem;color:#5B646E;max-width:600px;margin:.4rem auto 1.4rem;text-align:center}
.dw{max-width:640px;margin:0 auto;text-align:left}
.dw-card{background:#EDE7D9;border-radius:4px;padding:26px 28px;box-shadow:0 1px 2px rgba(51,50,44,.06)}
.dw-head{margin:0 0 1rem}
.dw-steplab{font-family:'Source Sans 3',var(--sans);font-size:.74rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#5B646E;margin:0 0 .45rem}
.dw-bar{height:3px;background:#DBD2BF;border-radius:2px;overflow:hidden}
.dw-bar i{display:block;height:100%;background:#3D5A3C;transition:width .3s}
.dw-h{font-family:'Lora',serif;font-weight:600;font-size:25px;line-height:1.25;color:#3D5A3C;margin:0 0 .5rem;outline:none}
.dw-sub{font-family:'Source Sans 3',var(--sans);font-size:16.5px;line-height:1.55;color:#2A2A2A;margin:0 0 1.1rem}
.dw-sub b{color:#3D5A3C}
.dw-q{font-family:'Source Sans 3',var(--sans);font-size:15.5px;font-weight:600;color:#3D5A3C;margin:1.3rem 0 .45rem}
.dw-note{font-family:'Source Sans 3',var(--sans);font-size:14.5px;line-height:1.55;color:#5B646E;margin:.9rem 0 0}
.dw-input{width:100%;box-sizing:border-box;background:#FBF6EC;border:1px solid #D8CFBB;border-radius:3px;
  padding:.65rem .8rem;font-family:'Source Sans 3',var(--sans);font-size:16px;color:#2A2A2A;line-height:1.5;resize:vertical}
.dw-input:focus-visible{outline:2px solid #3D5A3C;outline-offset:1px}
.dw-input::placeholder{color:#9A937F;font-style:italic}
.dw-line{margin:.1rem 0}
.dw-chips{display:flex;flex-wrap:wrap;gap:8px;margin:.3rem 0 0}
.dw-chip{font-family:'Source Sans 3',var(--sans);font-size:14.5px;line-height:1.3;color:#2A2A2A;background:#FBF6EC;
  border:1px solid #C9BFA8;border-radius:999px;padding:.45rem .95rem;cursor:pointer;text-align:left;transition:background .12s,border-color .12s}
.dw-chip:hover{border-color:#3D5A3C}
.dw-chip:focus-visible{outline:2px solid #C79A54;outline-offset:2px}
.dw-chip.on{background:#3D5A3C;border-color:#3D5A3C;color:#FBF6EC}
.dw-verse{margin:1.1rem 0 0;padding:.25rem 0 .25rem 1.1rem;border-left:3px solid #3D5A3C;
  font-family:'Lora',serif;font-style:italic;font-size:15.5px;line-height:1.6;color:#2A2A2A}
.dw-verse cite{display:block;font-family:'Source Sans 3',var(--sans);font-style:normal;font-size:.76rem;letter-spacing:.04em;color:#5B646E;margin-top:.35rem}
.dw-nav{display:flex;flex-wrap:wrap;gap:10px;margin:1.6rem 0 0;align-items:center}
.dw-nav .btn{font-size:.74rem;padding:.7rem 1.35rem}
.dw-nav .btn-ghost,.dw-nav .dw-back{border-color:#3D5A3C;color:#3D5A3C}
.dw-picks{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 .6rem;min-height:1.9rem}
.dw-pick{display:inline-flex;align-items:center;gap:.45rem;background:#3D5A3C;color:#FBF6EC;border-radius:999px;
  padding:.35rem .5rem .35rem .9rem;font-family:'Source Sans 3',var(--sans);font-size:14.5px}
.dw-pick i{font-style:normal;opacity:.75;font-size:12.5px}
.dw-pick-x{background:none;border:0;color:#FBF6EC;font-size:17px;line-height:1;cursor:pointer;padding:.1rem .3rem;border-radius:50%}
.dw-pick-x:hover{background:rgba(251,246,236,.2)}
.dw-pick-empty{font-family:'Source Sans 3',var(--sans);font-size:14px;color:#8a8577;font-style:italic;align-self:center}
.dw-wheel{margin:.4rem 0 0}
.dw-slider{display:flex;align-items:center;gap:14px}
.dw-slider input[type=range]{flex:1;accent-color:#3D5A3C}
.dw-slider-v{font-family:'Lora',serif;font-weight:600;font-size:21px;color:#3D5A3C;min-width:2ch;text-align:center}
.dw-sum{margin:.4rem 0 0;font-family:'Source Sans 3',var(--sans)}
.dw-sum dt{font-size:.74rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#5B646E;margin:.9rem 0 .15rem}
.dw-sum dd{margin:0;font-size:16px;line-height:1.5;color:#2A2A2A}
.dw-pat{font-family:'Lora',serif;font-size:16.5px;color:#2A2A2A;margin:.1rem 0 0}
@media(max-width:640px){.dw-card{padding:20px 16px}.dw-h{font-size:22px}}

/* ---- essay mobile orientation: TOC rows, sticky chapter bar, next links ---- */
.essay-contents ol{gap:0}
.essay-contents li{border-bottom:1px solid rgba(61,90,60,.12)}
.essay-contents li:last-child{border-bottom:0}
.essay-contents a{display:flex;align-items:flex-start;gap:.85rem;min-height:44px;padding:.6rem 0;line-height:1.35}
.essay-contents a span{font-size:11px;font-weight:600;letter-spacing:.06em;color:#8a8577;min-width:1.7rem;text-align:right;font-variant-numeric:tabular-nums;padding-top:.2rem}
.ch-bar{display:none;position:fixed;top:2px;left:0;right:0;z-index:390;background:#FBF6EC;border:0;border-bottom:1px solid #D8D0C0;
  padding:.55rem 1rem;cursor:pointer;text-align:left;align-items:baseline;gap:.7rem;width:100%;
  font-family:'Source Sans 3',var(--sans);box-shadow:0 1px 4px rgba(51,50,44,.07)}
.ch-bar.show{display:flex}
.ch-bar-num{font-size:11px;font-weight:600;letter-spacing:.08em;color:#3D5A3C;font-variant-numeric:tabular-nums;white-space:nowrap}
.ch-bar-t{font-size:13.5px;color:#2A2A2A;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
.ch-bar-o{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#8a8577;white-space:nowrap}
.ch-sheet{position:fixed;inset:0;z-index:500;background:#FBF6EC;overflow-y:auto;padding:1.4rem 1.4rem 2rem}
.ch-sheet-h{font-family:'Source Sans 3',var(--sans);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#3D5A3C;margin:0 0 .6rem}
.ch-sheet ol{list-style:none;padding:0;margin:0}
.ch-sheet li{border-bottom:1px solid rgba(61,90,60,.12)}
.ch-sheet a{display:flex;align-items:flex-start;gap:.85rem;min-height:44px;padding:.65rem 0;line-height:1.35;
  font-family:'Source Sans 3',var(--sans);font-size:15.5px;color:#2A2A2A}
.ch-sheet a span{font-size:11px;font-weight:600;letter-spacing:.06em;color:#8a8577;min-width:1.7rem;text-align:right;font-variant-numeric:tabular-nums;padding-top:.25rem}
.ch-sheet a.is-active{color:#3D5A3C;font-weight:600}
.ch-sheet a.is-active span{color:#3D5A3C}
.ch-sheet-x{margin:1.2rem 0 0;background:none;border:1px solid #3D5A3C;color:#3D5A3C;border-radius:999px;
  padding:.6rem 1.6rem;font-family:'Source Sans 3',var(--sans);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.ch-next{max-width:720px;margin:2.6rem auto 0;padding:0 var(--pad,24px)}
.ch-next a{display:inline-flex;align-items:center;min-height:44px;font-family:'Source Sans 3',var(--sans);
  font-size:14.5px;font-weight:600;color:#3D5A3C;border-top:1px solid rgba(61,90,60,.25);padding-top:.7rem;width:100%}
@media(min-width:1200px){.ch-bar,.ch-sheet,.ch-next{display:none !important}}

/* ---- keybox: highlighted principle card (Gamma-PDF style bite) ---- */
.keybox{background:#EFE9DB;border-radius:4px;padding:22px 26px;border-top:3px solid #3D5A3C}
.keybox-label{font-family:'Source Sans 3',var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#3D5A3C;margin:0 0 .5rem}
.keybox-body{font-family:'Lora',serif;font-size:19px;line-height:1.55;color:#2A2A2A}
.keybox-body p{margin:0 0 .6rem}.keybox-body p:last-child{margin:0}
.keybox-body ol,.keybox-body ul{margin:.4rem 0 0;padding-left:1.3rem}
.keybox-body li{margin:.35rem 0}
@media(max-width:640px){.keybox{padding:18px 18px}.keybox-body{font-size:17.5px}}

/* ---- wizard v2: overlay, groups, sliders, share cards ---- */
.dw-saved{float:right;font-size:11.5px;letter-spacing:.04em;color:#8a8577;text-transform:none;font-weight:400}
.dw-saving{color:#B08D3E}
.dw-opt{font-weight:400;font-size:.85em;color:#8a8577;text-transform:none;letter-spacing:0}
.dw-center{text-align:center}
.dw-prompt-line{font-family:'Source Sans 3',var(--sans);font-size:1.2rem;color:#2A2A2A;margin:0 0 .8rem;text-align:center}
.dw-prompt-line b{color:#3D5A3C}
.dw-named{font-family:'Source Sans 3',var(--sans);font-size:15.5px;line-height:1.5;color:#3D5A3C;text-align:center;margin:.6rem auto;max-width:480px;min-height:1.4em}
.dw-group{border:1px solid #D8CFBB;border-radius:3px;margin:.6rem 0;padding:.65rem .9rem;background:#F5EFE1}
.dw-group summary{font-family:'Source Sans 3',var(--sans);font-size:15px;font-weight:600;color:#3D5A3C;cursor:pointer}
.dw-group summary b{color:#B08D3E}
.dw-group .dw-chips{margin-top:.6rem}
.dw-motive-list{font-family:'Source Sans 3',var(--sans);font-size:15px;line-height:1.6;color:#2A2A2A;margin:.6rem 0;padding-left:1.2rem}
.dw-slider-name{font-family:'Source Sans 3',var(--sans);font-size:14.5px;color:#2A2A2A;min-width:9ch}
.dw-sliders .dw-slider{margin:.35rem 0}
.dw-addcustom{margin-top:.5rem;border-color:#3D5A3C;color:#3D5A3C;font-size:.7rem;padding:.5rem 1.1rem}
.dw-sh{font-family:'Lora',serif;font-weight:600;font-size:19px;color:#3D5A3C;margin:1.4rem 0 .5rem}
.dw-passage{border:1px solid #D8CFBB;border-radius:3px;background:#F5EFE1;padding:14px 18px;margin:.6rem 0}
.dw-passage .dw-verse{margin:.2rem 0 .3rem}
.dw-passage .dw-note{margin:.3rem 0 .5rem}
.dw-saveref{font-size:.68rem;padding:.45rem 1rem;border-color:#3D5A3C;color:#3D5A3C}
.dw-saveref.on{background:#3D5A3C;color:#FBF6EC}
.dw-compare{font-family:'Source Sans 3',var(--sans);font-size:16px;color:#5B646E}
.dw-compare b{color:#3D5A3C}
.dw-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:1rem 0}
.dw-compare-grid>div{background:#F5EFE1;border-radius:3px;padding:12px 16px}
.dw-compare-grid h4{font-family:'Source Sans 3',var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#5B646E;margin:0 0 .3rem}
.dw-compare-grid p{font-family:'Source Sans 3',var(--sans);font-size:14.5px;color:#2A2A2A;margin:0}
.dw-sharecards{display:grid;gap:12px;margin:.6rem 0}
.dw-sharecard{border:1px solid #D8CFBB;border-radius:3px;padding:16px 18px;background:#F5EFE1}
.dw-sharecard h4{font-family:'Lora',serif;font-size:17.5px;font-weight:600;color:#3D5A3C;margin:0 0 .3rem}
.dw-sharecard p{font-family:'Source Sans 3',var(--sans);font-size:14.5px;line-height:1.5;color:#2A2A2A;margin:0 0 .7rem}
.dw-consent{border-top:2px solid #3D5A3C;background:#EDE7D9;border-radius:3px;padding:16px 18px;margin:1rem 0 0}
.dw-when{margin:.2rem 0}
.dw-overlay{position:fixed;inset:0;z-index:600;background:#FBF6EC;overflow-y:auto}
.dw-overlay-bar{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;
  background:#3D5A3C;color:#FBF6EC;padding:.7rem 1.2rem;font-family:'Source Sans 3',var(--sans);font-size:14px;letter-spacing:.06em}
.dw-overlay-x{background:none;border:1px solid rgba(251,246,236,.5);color:#FBF6EC;border-radius:999px;
  padding:.4rem 1rem;font-family:'Source Sans 3',var(--sans);font-size:.72rem;letter-spacing:.08em;cursor:pointer}
.dw-overlay-x:hover{background:rgba(251,246,236,.15)}
.dw-overlay-body{max-width:680px;margin:1.6rem auto 4rem;padding:0 16px}

/* ---- account ---- */
.acct-card{border:1px solid #D8CFBB;border-radius:3px;background:#F5EFE1;padding:14px 18px;margin:.7rem 0}
.acct-card-head{font-family:'Source Sans 3',var(--sans);font-size:15.5px;color:#2A2A2A}
.acct-meta{display:block;font-size:13px;color:#8a8577;margin-top:.25rem}
.acct-badge{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
  border:1px solid #8a8577;color:#5B646E;border-radius:999px;padding:.15rem .6rem;margin-left:.4rem}
.acct-badge.acct-sh{border-color:#3D5A3C;color:#3D5A3C}
.acct-badge.acct-fu{border-color:#B08D3E;color:#B08D3E}
.acct-checkline{display:flex;gap:.6rem;align-items:flex-start;font-family:'Source Sans 3',var(--sans);
  font-size:15px;color:#2A2A2A;margin:.4rem 0;cursor:pointer}
.acct-checkline input{accent-color:#3D5A3C;margin-top:.25rem}
.acct-danger{border-color:#9B4A38 !important;color:#9B4A38 !important}
#acct .dw-card,#admin .dw-card{margin:0 0 1.2rem}

/* ---- admin ---- */
.adm-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 1.2rem}
.adm-tab{font-family:'Source Sans 3',var(--sans);font-size:13.5px;font-weight:600;letter-spacing:.04em;
  background:#F5EFE1;border:1px solid #C9BFA8;border-radius:999px;color:#2A2A2A;padding:.5rem 1.1rem;cursor:pointer}
.adm-tab.on{background:#3D5A3C;border-color:#3D5A3C;color:#FBF6EC}
.adm-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin:.8rem 0}
.adm-stat{background:#F5EFE1;border-radius:3px;padding:14px;text-align:center}
.adm-stat b{display:block;font-family:'Lora',serif;font-size:30px;color:#3D5A3C}
.adm-stat span{font-family:'Source Sans 3',var(--sans);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#5B646E}
.adm-table{width:100%;border-collapse:collapse;font-family:'Source Sans 3',var(--sans);font-size:14px;margin:.8rem 0}
.adm-table th{text-align:left;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:#5B646E;
  border-bottom:2px solid #3D5A3C;padding:.5rem .6rem}
.adm-table td{border-bottom:1px solid #E2DAC6;padding:.55rem .6rem;color:#2A2A2A;vertical-align:top}
.adm-dim{color:#8a8577;font-size:.9em}
.adm-open{font-size:.66rem;padding:.4rem .9rem;border-color:#3D5A3C;color:#3D5A3C}
.adm-ctrl{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:.8rem 0}
.adm-sel{width:auto;padding:.5rem .8rem}
.adm-asg{flex:1;min-width:160px;margin:0}
.adm-note{font-family:'Source Sans 3',var(--sans);font-size:14.5px;line-height:1.5;color:#2A2A2A;
  background:#F5EFE1;border-left:3px solid #B08D3E;border-radius:2px;padding:.6rem .9rem;margin:.5rem 0}
@media(max-width:700px){.adm-table{display:block;overflow-x:auto}.dw-compare-grid{grid-template-columns:1fr}}

/* ---- header Account link ---- */
.nav-account{font-family:var(--display);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#b0a794;white-space:nowrap}
.nav-account:hover{color:#E2BC72}
.dw-count{font-family:'Source Sans 3',var(--sans);font-size:14px;color:#5B646E;margin:.2rem 0 .4rem}
.dw-count b{color:#3D5A3C}
.dw-fb{font-family:'Source Sans 3',var(--sans);font-size:14px;line-height:1.45;margin:.35rem 0 .5rem;min-height:1.3em}
.dw-fb-good{color:#3D5A3C}
.dw-fb-warn{color:#8C5A28}
.dw-fb-pop{animation:dwfb .3s ease}
@keyframes dwfb{from{opacity:.2;transform:translateY(2px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.dw-fb-pop{animation:none}}

/* ---- end-of-article tool CTA ---- */
.toolcta{background:#EDE7D9;border-radius:4px;border-top:3px solid #3D5A3C;padding:30px 28px;text-align:center}
.toolcta-body{font-family:'Source Sans 3',var(--sans);font-size:16.5px;line-height:1.55;color:#2A2A2A;max-width:540px;margin:.6rem auto 1.1rem}
.toolcta-btn{margin:0}
.toolcta-alt{font-family:'Source Sans 3',var(--sans);font-size:13px;color:#8a8577;margin:.8rem 0 0}

/* ---- practices index ---- */
.prax-card{padding:26px 28px}
.prax-eyebrow{font-family:'Source Sans 3',var(--sans);font-size:.74rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#3D5A3C;margin:0 0 .5rem}
.prax-title{font-family:'Lora',serif;font-weight:600;font-size:27px;color:#3D5A3C;margin:0 0 .6rem}
.prax-body{font-family:'Source Sans 3',var(--sans);font-size:16px;line-height:1.6;color:#2A2A2A;margin:0 0 .8rem}
.prax-meta{font-family:'Source Sans 3',var(--sans);font-size:13.5px;color:#8a8577;margin:0 0 1.1rem}

/* ---- canonical article: collapsible passages + movement transitions ---- */
.scripture-collapse summary{cursor:pointer;list-style:none;font-family:'Lora',serif;font-style:italic;font-size:17px;line-height:1.6;color:#2A2A2A}
.scripture-collapse summary::-webkit-details-marker{display:none}
.scripture-collapse .sc-more{display:block;font-family:'Source Sans 3',var(--sans);font-style:normal;font-size:.78rem;font-weight:600;letter-spacing:.06em;color:#3D5A3C;margin-top:.5rem}
.scripture-collapse[open] summary{display:none}
.mv-transition{font-family:'Lora',serif;font-style:italic;font-size:17.5px;line-height:1.6;color:#5B646E;text-align:center;max-width:520px;margin:0 auto;padding:1.2rem 0;border-top:1px solid rgba(61,90,60,.2)}

/* ---- Understanding Practice module ---- */
.pr-list{list-style:none;padding:0;margin:.8rem 0 0}
.pr-li{display:flex;align-items:baseline;gap:.8rem;padding:.6rem 0;border-bottom:1px solid rgba(61,90,60,.14);
  font-family:'Source Sans 3',var(--sans);font-size:15.5px;color:#2A2A2A;cursor:pointer}
.pr-li:hover{color:#3D5A3C}
.pr-n{font-size:11px;font-weight:600;letter-spacing:.06em;color:#8a8577;min-width:1.7rem;text-align:right;font-variant-numeric:tabular-nums}
.pr-st{margin-left:auto;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#8a8577}
.pr-li.done .pr-st{color:#3D5A3C}
.pr-li.cur{font-weight:600}
.pr-li.cur .pr-st{color:#B08D3E}
.pr-head{margin-bottom:1.4rem}

/* ---- mobile movement bar + resume ---- */
.ch-bot{display:none;position:fixed;left:0;right:0;bottom:0;z-index:390;background:#FBF6EC;border-top:1px solid #D8D0C0;
  padding:.5rem 1rem calc(.5rem + env(safe-area-inset-bottom));box-shadow:0 -1px 4px rgba(51,50,44,.07);
  justify-content:space-between;align-items:center;gap:.8rem}
.ch-bot.show{display:flex}
.ch-bot button{background:none;border:1px solid #3D5A3C;color:#3D5A3C;border-radius:999px;padding:.45rem 1rem;
  font-family:'Source Sans 3',var(--sans);font-size:13px;font-weight:600;cursor:pointer;min-height:38px}
.ch-bot button:disabled{opacity:.35;cursor:default}
.ch-bot-pos{font-family:'Source Sans 3',var(--sans);font-size:12px;font-weight:600;letter-spacing:.08em;color:#5B646E;font-variant-numeric:tabular-nums}
.resume-bar{position:fixed;left:12px;right:12px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:395;
  background:#3D5A3C;color:#FBF6EC;border-radius:6px;padding:.7rem 1rem;display:flex;align-items:center;gap:.7rem;
  font-family:'Source Sans 3',var(--sans);font-size:13.5px;box-shadow:0 4px 14px rgba(0,0,0,.25);flex-wrap:wrap}
.resume-bar span{flex:1;min-width:150px}
.resume-bar button{background:none;border:1px solid rgba(251,246,236,.6);color:#FBF6EC;border-radius:999px;
  padding:.4rem .95rem;font-family:'Source Sans 3',var(--sans);font-size:12px;font-weight:600;cursor:pointer}
.resume-bar .rb-go{background:#FBF6EC;color:#3D5A3C;border-color:#FBF6EC}
@media(min-width:1200px){.ch-bot,.resume-bar{display:none !important}}

/* ---- reading mode: site header scrolls away; reading chrome owns the top ---- */
body.reading .nav{position:static}
/* header fits on one line with Practices + Account present */
@media(min-width:900px) and (max-width:1560px){
  .nav-links a{font-size:.66rem;letter-spacing:.1em}
  .nav-links{gap:1.1rem}
}

/* ---- left rail: a reading companion, not a page fixture ----
   hidden until the reader is inside the movements; fades in aligned to the text */
@media(min-width:1200px){
  .essay-index{opacity:0;pointer-events:none;transition:opacity .35s ease;top:96px}
  .essay-index.show{opacity:1;pointer-events:auto}
  .essay-index p{color:#8a8577}
  .essay-index ol{gap:.55rem}
  .essay-index a{display:flex;gap:.6rem;align-items:baseline}
  .essay-index a span{min-width:1.5rem;text-align:right;font-variant-numeric:tabular-nums;color:#8a8577}
  .essay-index a.is-active span{color:#3D5A3C}
}
.pillar-process{font-family:'Source Sans 3',var(--sans);font-size:.72rem;font-weight:700;letter-spacing:.22em;
  text-transform:uppercase;color:#B08D3E;margin:0 0 .5rem;padding-bottom:.4rem;border-bottom:1px solid rgba(176,141,62,.35)}

/* ---- their-words echo cards ---- */
.dw-echo{display:block;background:#F5EFE1;border-left:3px solid #B08D3E;border-radius:2px;padding:.55rem .9rem;margin:0 0 .55rem}
.dw-echo-l{display:block;font-family:'Source Sans 3',var(--sans);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#8a8577;margin-bottom:.15rem}
.dw-echo-t{font-family:'Lora',serif;font-style:italic;font-size:15.5px;line-height:1.5;color:#2A2A2A}
.dw-nudge{margin:1.1rem 0}

/* ---- signed-in account chip (header, top right) ---- */
.nav-account.acct-chip{display:inline-flex;align-items:center;gap:.5rem;border:1px solid rgba(226,188,114,.45);
  border-radius:999px;padding:.3rem .85rem .3rem .3rem;color:#E2BC72;transition:border-color .15s}
.nav-account.acct-chip:hover{border-color:#E2BC72;color:#E2BC72}
.acct-avatar{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;
  background:#3D5A3C;color:#FBF6EC;font-family:'Source Sans 3',var(--sans);font-size:13px;font-weight:700}

/* ---- practice app shell: permanent outline + compact steps ---- */
.pr-app{max-width:1180px;margin:1.5rem auto 3rem;padding:0 20px}
@media(min-width:1000px){
  .pr-app{display:grid;grid-template-columns:250px minmax(0,1fr);gap:2.4rem;align-items:start}
  .pr-side{position:sticky;top:18px}
}
.pr-side{background:#F5EFE1;border:1px solid #D8CFBB;border-radius:4px;padding:16px 18px;font-family:'Source Sans 3',var(--sans)}
.pr-side-eyebrow{font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#B08D3E;margin:0 0 .15rem}
.pr-side-title{font-family:'Lora',serif;font-weight:600;font-size:21px;color:#3D5A3C;margin:0 0 .55rem}
.pr-side-meta{font-size:12.5px;color:#8a8577;margin:.45rem 0 .8rem}
.pr-side-list{list-style:none;padding:0;margin:0}
.pr-side-li{display:flex;flex-wrap:wrap;align-items:baseline;gap:.55rem;padding:.45rem 0;border-bottom:1px solid rgba(61,90,60,.12);
  font-size:13.5px;line-height:1.35;color:#2A2A2A;cursor:pointer}
.pr-side-li:hover{color:#3D5A3C}
.pr-side-li .pr-n{font-size:10.5px;font-weight:700;color:#8a8577;min-width:1.1rem;text-align:right;font-variant-numeric:tabular-nums}
.pr-side-li .pr-side-t{flex:1;min-width:0}
.pr-side-li .pr-st{font-size:11px;color:#3D5A3C}
.pr-side-li.done{color:#8a8577}
.pr-side-li.cur{font-weight:700;color:#3D5A3C}
.pr-dots{flex-basis:100%;display:flex;gap:5px;padding:.3rem 0 .1rem 1.65rem}
.pr-dot{width:9px;height:9px;border-radius:50%;background:#DBD2BF;cursor:pointer}
.pr-dot.done{background:#9DB49B}
.pr-dot.cur{background:#3D5A3C;outline:2px solid rgba(61,90,60,.3);outline-offset:1px}
.pr-side-foot{margin-top:.7rem}
.pr-side-foot a{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#8a8577;font-weight:600}
.pr-side-foot a:hover{color:#3D5A3C}
/* mobile: collapsed sticky strip; tap to open the full outline */
@media(max-width:999px){
  .pr-side{position:sticky;top:0;z-index:120;margin:0 -20px 1rem;border-radius:0;border-left:0;border-right:0;
    padding:10px 20px;box-shadow:0 1px 4px rgba(51,50,44,.08)}
  .pr-side:not(.open) .pr-side-list,.pr-side:not(.open) .pr-side-foot,.pr-side:not(.open) .pr-side-label,.pr-side:not(.open) .px-prog{display:none}
  .pr-side:not(.open) .pr-side-head{cursor:pointer}
  .pr-side:not(.open) .pr-side-title::after{content:" ▾";font-size:13px;color:#8a8577}
  .pr-side-title{font-size:16px;margin:0 0 .3rem;display:inline}
  .pr-side-eyebrow{display:inline;margin-right:.5rem}
  .pr-side-meta{margin:.3rem 0 0}
}
/* compact reading rhythm inside the practice */
.pr-maincol .sect{padding:0}
.pr-maincol section.sect{margin:1.1rem auto}
.pr-maincol .scripture-block{margin:.9rem auto}
.pr-maincol .keybox{padding:16px 20px}
.pr-maincol .mv-transition{padding:.6rem 0;margin-top:.4rem}
.pr-pager{display:flex;justify-content:space-between;gap:12px;margin-top:1.2rem}
.pr-pager .btn-primary{margin-left:auto}
.pr-head{margin-bottom:1rem;padding:16px 20px}
.pr-step-title{font-size:21px}
.pr-li-div{font-family:'Source Sans 3',var(--sans);font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#B08D3E;padding:.7rem 0 .2rem;border-bottom:0 !important;list-style:none}

/* ---- practices: life-sector sections ---- */
.prax-sector{font-family:'Lora',serif;font-weight:600;font-size:22px;color:#3D5A3C;margin:2.2rem 0 .3rem;
  display:flex;align-items:baseline;gap:.7rem;border-top:1px solid rgba(61,90,60,.2);padding-top:1.6rem}
.prax-sector:first-of-type{border-top:0;padding-top:0;margin-top:.5rem}
.prax-sector-n{font-family:'Source Sans 3',var(--sans);font-size:12px;font-weight:700;letter-spacing:.1em;
  color:#B08D3E;border:1px solid rgba(176,141,62,.5);border-radius:999px;padding:.15rem .6rem;white-space:nowrap}
.prax-sector-sub{font-family:'Source Sans 3',var(--sans);font-size:14.5px;line-height:1.5;color:#8a8577;margin:0 0 .9rem}

/* ---- practices v2: sector headers with icons, pill meta, ghost cards ---- */
.prax-intro{font-family:'Source Sans 3',var(--sans);font-size:16px;line-height:1.6;color:#5B646E;max-width:620px;margin:1rem auto 0}
.prax-wrap{max-width:760px}
.prax-sector-head{display:flex;gap:1rem;align-items:flex-start;margin:2.6rem 0 1rem}
.prax-sector-head:first-child{margin-top:.6rem}
.prax-ico{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;flex:none;
  border:1px solid rgba(176,141,62,.5);border-radius:50%;color:#B08D3E}
.prax-ico svg{width:24px;height:24px}
.prax-sector-t{font-family:'Lora',serif;font-weight:600;font-size:23px;color:#3D5A3C;margin:0 0 .2rem}
.prax-sector-sub{font-family:'Source Sans 3',var(--sans);font-size:14.5px;line-height:1.5;color:#8a8577;margin:0}
.prax-card2{background:#F5EFE1;border:1px solid #D8CFBB;border-left:3px solid #3D5A3C;border-radius:4px;
  margin:0 0 1rem 3.9rem;transition:box-shadow .18s, transform .18s}
.prax-card2:hover{box-shadow:0 4px 16px rgba(51,50,44,.1);transform:translateY(-1px)}
.prax-card2-body{padding:22px 26px}
.prax-card2 .prax-title{margin:.1rem 0 .5rem}
.prax-pills{display:flex;flex-wrap:wrap;gap:6px;margin:.8rem 0 1rem}
.prax-pills span{font-family:'Source Sans 3',var(--sans);font-size:12px;font-weight:600;color:#5B646E;
  background:#FBF6EC;border:1px solid #D8CFBB;border-radius:999px;padding:.25rem .7rem}
.prax-soon{border-left-color:#C9BFA8;opacity:.85}
.prax-soon:hover{transform:none;box-shadow:none}
.prax-sub{border:1px dashed rgba(176,141,62,.5);border-radius:3px;padding:.8rem 1rem;margin:.8rem 0}
.prax-sub-t{font-family:'Lora',serif;font-weight:600;font-size:16.5px;color:#3D5A3C;margin:0 0 .25rem}
.prax-sub-b{font-family:'Source Sans 3',var(--sans);font-size:14px;line-height:1.5;color:#2A2A2A;margin:0}
@media(max-width:640px){.prax-card2{margin-left:0}.prax-sector-head{gap:.8rem}}

/* ---- lesson view: tight editorial rhythm (kills the dead air) ---- */
.pr-maincol .rcol,.pr-maincol .wcol{padding-top:.35rem;padding-bottom:.35rem}
.pr-maincol section.sect{margin:.4rem auto}
.pr-maincol .scripture-block{margin:.5rem auto}
.pr-maincol .scripture-block blockquote{margin:.2rem 0}
.pr-maincol .rich p{margin:.6rem 0}
.pr-maincol .keybox{margin:.4rem 0}
.pr-maincol .mv-transition{padding:.5rem 0;margin:.3rem auto 0}
.pr-maincol .prose-h3{margin-top:.6rem}
.pr-head{margin-bottom:.6rem}
.pr-maincol .dw-card.pr-head .dw-h{margin-bottom:.25rem}
.pr-maincol .note,.pr-maincol .rcol.note{margin:.5rem auto}

/* ---- practices index v3: editorial, hairline-ruled, quiet ---- */
.paper .rcol.px-wrap,.px-wrap{max-width:1000px}
.px-sector{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);column-gap:64px;
  align-items:start;border-top:1px solid rgba(61,90,60,.15);padding:44px 0 52px}
.px-sector:first-child{border-top:0;padding-top:.6rem}
.px-head{margin:0 0 .1rem}
.paper .block .px-sphere{font-family:'Lora',serif;font-size:34px;line-height:1.1;font-weight:500;
  color:#3D5A3C;margin:0;letter-spacing:-.02em;display:grid;
  grid-template-columns:52px minmax(0,1fr);column-gap:14px;align-items:baseline}
.px-num{font-family:'Lora',serif;font-size:inherit;font-weight:400;letter-spacing:0;
  color:#B08D3E;text-align:right}
.px-name{min-width:0}
.px-ico{display:inline-flex;color:#B08D3E;opacity:.7;margin-left:.15rem}
.px-ico svg{width:17px;height:17px;transform:translateY(1px)}
.px-tag{font-family:'Lora',serif;font-style:italic;font-size:17px;line-height:1.5;color:rgba(61,90,60,.72);
  margin:12px 0 0 66px;max-width:30ch}
.px-row{display:flex;align-items:baseline;gap:1.4rem;padding:0 0 26px}
.px-row + .px-row{padding-top:26px;border-top:1px solid rgba(61,90,60,.14)}
.px-row:last-child{padding-bottom:0}
.px-main{flex:1;min-width:0}
.px-title{font-family:'Lora',serif;font-weight:500;font-size:24px;margin:0 0 .45rem;color:#5B646E;letter-spacing:-.01em}
.px-live .px-title,.px-title a{color:#3D5A3C}
.px-title a:hover{text-decoration:underline;text-underline-offset:3px}
.px-desc{font-family:'Source Sans 3',var(--sans);font-size:16px;line-height:1.65;color:#2A2A2A;margin:0;max-width:62ch}
.px-row:not(.px-live) .px-desc{color:#8a8577}
.px-meta{font-family:'Source Sans 3',var(--sans);font-size:13px;font-weight:600;letter-spacing:.02em;
  color:rgba(61,90,60,.58);margin:.6rem 0 0}
.px-go{font-family:'Source Sans 3',var(--sans);font-size:13.5px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:#B08D3E;white-space:nowrap;align-self:center}
.px-go:hover{color:#3D5A3C}
.px-soon{font-family:'Source Sans 3',var(--sans);font-size:11px;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:#8a8577;border:1px solid rgba(138,133,119,.4);border-radius:999px;
  padding:.2rem .65rem;white-space:nowrap;align-self:center}
.px-empty{font-family:'Source Sans 3',var(--sans);font-size:16px;line-height:1.6;color:rgba(61,90,60,.62);
  border-left:2px solid #B08D3E;padding:2px 0 2px 18px;margin:0}
.px-coda{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);column-gap:64px;
  border-top:1px solid rgba(61,90,60,.15);padding:34px 0 8px}
.px-coda-label{font-family:'Source Sans 3',var(--sans);font-size:13px;font-weight:650;
  letter-spacing:.12em;text-transform:uppercase;color:#8a6d2f;margin:0}
.px-coda-copy{font-family:'Source Sans 3',var(--sans);font-size:15.5px;line-height:1.7;color:#2A2A2A;
  margin:0;max-width:62ch}
.px-coda-copy a{color:#3D5A3C;text-underline-offset:4px}
/* px overrides vs paper theme heading scale */
.paper .block .px-title{font-size:24px;margin:0 0 .45rem;font-weight:500}
.paper .block .px-title a{color:#3D5A3C}
@media(max-width:820px){
  .px-sector{grid-template-columns:1fr;row-gap:22px;padding:34px 0 40px}
  .paper .block .px-sphere{font-size:29px}
  .px-tag{margin:8px 0 0 0;font-size:16px}
  .paper .block .px-sphere{grid-template-columns:40px minmax(0,1fr);column-gap:10px}
  .px-coda{grid-template-columns:1fr;row-gap:10px;padding:28px 0 8px}
  .paper .block .px-title{font-size:21px}
  .px-desc{font-size:15px}
  .px-row{flex-wrap:wrap}.px-go,.px-soon{align-self:flex-start}
}

/* ---- Follow Me ---- */
.fm-q{font-size:26px;line-height:1.3}
.fm-body{margin-top:.6rem}
.fm-ans{font-family:'Source Sans 3',var(--sans);font-size:16.5px;line-height:1.6;color:#2A2A2A;margin:.2rem 0 .8rem}
.fm-talk,.fm-words{font-family:'Source Sans 3',var(--sans);font-size:15px;line-height:1.6;color:#2A2A2A;margin:.2rem 0 .6rem}
.fm-fu{margin:.2rem 0 .6rem;padding-left:1.2rem;font-family:'Source Sans 3',var(--sans);font-size:15px;line-height:1.7;color:#2A2A2A}
.fm-pn{margin-top:1rem}
.fm-body .dw-verse{margin:.7rem 0}
/* lesson reading pass (design review): two widths, calmer rhythm, distinct callouts */
.pr-maincol .rich p,.pr-maincol .rich li{font-size:18px;line-height:1.66}
.pr-maincol .rich p{margin:0 0 18px}
.pr-maincol .rich ul,.pr-maincol .rich ol{margin:0 0 18px;padding-left:1.35rem}
.pr-maincol .rich li{margin:0 0 8px}
.pr-maincol .block h3{font-size:25px;line-height:1.25;margin:2.4rem 0 .8rem}
.pr-maincol .block h2.center{text-align:left;font-size:28px;line-height:1.2;margin:2.2rem 0 .4rem;color:#2A2A2A}
.pr-maincol .block h3{color:#707046}
.pr-maincol .keybox{background:rgba(112,112,70,.10);border-top:0;border-left:3px solid #B08D3E;
  border-radius:0;padding:20px 24px}
.pr-maincol .scripture-block blockquote,.pr-maincol .rich blockquote{border-left:2px solid #B08D3E;
  background:transparent;font-size:19px;line-height:1.6;margin:28px 0;padding:3px 0 3px 22px}
.pr-maincol .scripture-block cite{display:block;margin-top:10px;font-family:'Source Sans 3',var(--sans);
  font-size:12px;font-style:normal;letter-spacing:.08em;text-transform:uppercase;color:#5B646E}
.pr-maincol .grid-flow{margin:26px auto 40px}
.pr-maincol .grid-flow::before{display:none}
.pr-maincol .grid-flow .gcell{position:relative}
.pr-maincol .grid-flow .gcell::after{content:"";position:absolute;top:16px;left:44px;right:-12px;height:1px;
  background:rgba(61,90,60,.4)}
.pr-maincol .grid-flow .gcell:last-child::after{display:none}
.paper .grid-flow .gcell h3{font-size:21px;margin:0 0 .35rem}
@media(max-width:700px){
  .pr-maincol .rich p,.pr-maincol .rich li{font-size:16.5px}
  .pr-maincol .block h3{font-size:22px}
  .pr-maincol .block h2.center{font-size:24px}
  .pr-maincol .grid-flow .gcell::after{display:none}
}
.dw-chip-sug{border-color:#B08D3E;color:#8a6d2f;background:rgba(176,141,62,.08)}
.dw-chip-sug:hover{background:rgba(176,141,62,.16)}
.dw-guide{border-left:3px solid #B08D3E;background:rgba(176,141,62,.07);border-radius:0 4px 4px 0;
  padding:14px 18px;margin:18px 0}
.dw-guide-ack{font-family:'Lora',serif;font-style:italic;font-size:15px;color:#8a6d2f;margin:0 0 .3rem}
.dw-guide .dw-q{margin-top:.2rem}
.px-thumb{width:44px;height:44px;border-radius:8px;object-fit:cover;flex:none;align-self:center;
  border:1px solid rgba(176,141,62,.55);background:#111}
img.px-thumb[src*="bambinator"]{object-position:46% 38%}
@media(max-width:820px){.px-thumb{width:40px;height:40px}}
.bam-hero{margin:0 0 1.4rem;border-radius:6px;overflow:hidden;aspect-ratio:16/7;background:#0b1020}
.bam-hero img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;display:block}
.bam-lead{font-family:'Source Sans 3',var(--sans);font-size:17px;line-height:1.7;color:#2A2A2A;max-width:62ch}
.bam-note{font-family:'Source Sans 3',var(--sans);font-size:14.5px;color:#8a8577;margin-top:1rem}
/* Follow Me app views */
.fm-themes{display:grid;gap:8px;margin:14px 0}
.fm-theme{display:flex;align-items:center;gap:14px;text-align:left;width:100%;
  background:#FBF7EE;border:1px solid rgba(61,90,60,.18);border-radius:6px;padding:12px 16px;cursor:pointer;
  font-family:'Source Sans 3',var(--sans)}
.fm-theme:hover{border-color:rgba(61,90,60,.45)}
.fm-theme.fm-done{background:#F2EFE4}
.fm-tn{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;
  border:1px solid #B08D3E;color:#8a6d2f;font-size:12.5px;font-weight:700}
.fm-tt{flex:1;font-size:16px;font-weight:600;color:#3D5A3C}
.fm-tt i{display:block;font-style:italic;font-family:'Lora',serif;font-weight:400;font-size:13.5px;color:#8a8577}
.fm-tc{flex:none;font-size:13px;font-weight:700;color:#8a6d2f}
.fm-qlist{list-style:none;margin:12px 0;padding:0;display:grid;gap:6px}
.fm-qrow{display:flex;align-items:center;gap:12px;background:#FBF7EE;border:1px solid rgba(61,90,60,.15);
  border-radius:6px;padding:10px 14px;cursor:pointer;font-family:'Source Sans 3',var(--sans)}
.fm-qrow:hover{border-color:rgba(61,90,60,.45)}
.fm-qrow.fm-done{background:#F2EFE4}
.fm-qn{flex:none;min-width:26px;font-size:12.5px;font-weight:700;color:#B08D3E}
.fm-qx{flex:1;font-size:15px;line-height:1.4;color:#2A2A2A}
.fm-qrow.fm-done .fm-qx{color:#5c574b}
.fm-qs{flex:none;display:flex;align-items:center;gap:8px}
.fm-ck{text-decoration:none;color:#3D5A3C;font-weight:700}
.fm-g{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;
  font-size:12px;font-weight:700;font-style:normal}
.fm-gA{background:rgba(61,90,60,.14);color:#3D5A3C}
.fm-gB{background:rgba(176,141,62,.16);color:#8a6d2f}
.fm-gC{background:rgba(155,74,58,.14);color:#9B4A3A}
.fm-grades{display:flex;gap:8px;flex-wrap:wrap;margin:.3rem 0 .6rem}
.fm-gbtn{font-family:'Source Sans 3',var(--sans);font-size:14px;font-weight:600;
  border:1px solid rgba(61,90,60,.3);background:transparent;border-radius:999px;
  padding:.45rem .9rem;cursor:pointer;color:#4B5056}
.fm-gbtn.on{background:#3D5A3C;border-color:#3D5A3C;color:#F7F3E8}
.fm-crumb{color:inherit;text-decoration:underline;text-underline-offset:2px}
@media(max-width:700px){
  .fm-qrow{padding:12px 12px}
  .fm-gbtn{padding:.55rem .8rem}
}
/* the tree / heart figure */
.treefig{border:1px solid rgba(61,90,60,.2);border-radius:8px;padding:26px 30px;background:#FBF7EE;max-width:720px}
.treefig-label{font-family:'Source Sans 3',var(--sans);font-size:12px;font-weight:650;letter-spacing:.14em;
  text-transform:uppercase;color:#8a6d2f;margin:0 0 14px}
.treefig-name{font-family:'Lora',serif;font-size:20px;color:#3D5A3C;margin:0 0 4px}
.treefig-name span{font-size:15px;color:#8a8577;font-style:italic}
.treefig-items{font-family:'Source Sans 3',var(--sans);font-size:14px;line-height:1.6;color:#5c574b;margin:0}
.treefig-surface{display:flex;align-items:center;gap:12px;margin:16px 0;
  font-family:'Source Sans 3',var(--sans);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:#9a9483}
.treefig-surface::before,.treefig-surface::after{content:"";flex:1;height:1px;background:rgba(61,90,60,.3)}
.treefig-below{background:#F2EDE0;border-radius:6px;padding:14px 18px;margin:0 -6px}
.treefig-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:20px;padding-top:18px;
  border-top:1px solid rgba(61,90,60,.14)}
.treefig-flow div{text-align:center}
.treefig-flow b{display:block;font-family:'Lora',serif;font-weight:600;font-size:15.5px;color:#3D5A3C}
.treefig-flow i{display:block;font-family:'Source Sans 3',var(--sans);font-style:normal;font-size:12.5px;color:#8a8577}
.treefig-flow div:not(:last-child){position:relative}
.treefig-flow div:not(:last-child)::after{content:"→";position:absolute;right:-9px;top:2px;color:#B08D3E;font-size:14px}
@media(max-width:640px){.treefig{padding:20px 18px}
  .treefig-flow{grid-template-columns:repeat(2,1fr);gap:14px}
  .treefig-flow div:not(:last-child)::after{display:none}}
/* ===== practice app shell v2 — the mockup system ===== */
.pr-band{max-width:1280px;margin:0 auto;background:#2D4A39;color:#EDE7D8;
  display:flex;align-items:center;gap:24px;padding:12px 22px;border-radius:0 0 6px 6px;
  font-family:'Source Sans 3',var(--sans);font-size:14px}
.pr-band b{font-weight:700}
.pr-band-l{color:#CFE0CF}
.pr-band-l b{color:#D9B662}
.pr-band-m{flex:1;text-align:center;font-weight:600;letter-spacing:.01em}
.pr-band-r{display:flex;align-items:center;gap:10px;color:#CFE0CF}
.pr-band-bar{display:inline-block;width:110px;height:4px;border-radius:99px;background:rgba(237,231,216,.25);overflow:hidden}
.pr-band-bar u{display:block;height:100%;background:#D9B662;border-radius:99px}
.pr-band-saved{font-style:normal;color:#9CC3A0;border-left:1px solid rgba(237,231,216,.25);padding-left:12px}
@media(max-width:760px){.pr-band{border-radius:0;gap:12px;font-size:12.5px;padding:10px 14px}
  .pr-band-l{display:none}.pr-band-bar{width:64px}}

.pr-app3{max-width:1280px}
@media(min-width:1360px){
  .pr-app3{display:grid;grid-template-columns:252px minmax(0,1fr) 272px;gap:2rem;align-items:start}
  .pr-rail{position:sticky;top:18px}
}
@media(max-width:1359px){.pr-rail{margin-top:1.4rem}}

/* dark sidebar (applies to Understanding + Follow Me) */
.pr-side{background:#17251D;border:0;border-radius:8px;padding:20px 0 10px;color:#D8D2C2}
.pr-side-head{padding:0 20px}
.pr-side-title{font-family:'Lora',serif;font-size:23px;font-weight:600;color:#F3EEE1;margin:0 0 2px}
.pr-side-eyebrow{display:none}
.pr-side-meta{font-size:12.5px;color:#A9A493;margin:2px 0}
.pr-side-bar{background:rgba(237,231,216,.18);height:4px;border-radius:99px;margin:10px 0 6px}
.pr-side .dw-bar i{background:#D9B662}
.pr-side-label{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:#8F8A79;margin:16px 20px 6px;font-family:'Source Sans 3',var(--sans)}
.pr-side-list{list-style:none;margin:0;padding:0}
.pr-side-li{display:flex;align-items:center;gap:10px;padding:10px 20px;border:0;cursor:pointer;
  font-size:14px;color:#C9C3B2;line-height:1.35;flex-wrap:wrap}
.pr-side-li:hover{background:rgba(237,231,216,.06);color:#F3EEE1}
.pr-side-li.cur{background:#243528;color:#F3EEE1;box-shadow:inset 3px 0 0 #D9B662}
.pr-side-li.done{color:#8F8A79}
.pr-side-li .pr-n{font-size:12px;font-weight:700;color:#8F8A79;min-width:20px;text-align:left;
  font-variant-numeric:tabular-nums}
.pr-side-li.cur .pr-n{color:#D9B662}
.pr-side-li .pr-side-t{flex:1;min-width:0}
.pr-side-li .pr-st{font-size:11.5px;color:#8F8A79;font-variant-numeric:tabular-nums}
.pr-cir{width:18px;height:18px;border-radius:50%;border:1.5px solid rgba(237,231,216,.35);flex:none;
  display:grid;place-items:center;font-size:11px;color:#17251D}
.pr-cir-done{background:#4C7A57;border-color:#4C7A57;color:#F3EEE1}
.pr-cir-cur{background:#D9B662;border-color:#D9B662}
.pr-li-ex .pr-cir{border:0;color:#D9B662;font-size:13px}
.pr-side-foot{padding:12px 20px 8px;border-top:1px solid rgba(237,231,216,.12);margin-top:10px}
.pr-side-foot a{color:#A9A493;font-size:13px}
.pr-dots{width:100%;padding-left:48px}

/* open editorial movement header */
.pr-mhead{margin:6px 0 2px}
.pr-ovl{font-family:'Source Sans 3',var(--sans);font-size:12.5px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:#8a6d2f;margin:0 0 10px}
.pr-mtitle{font-family:'Lora',serif;font-size:40px;line-height:1.1;font-weight:600;color:#2D4A39;
  margin:0 0 6px;letter-spacing:-.01em}
.pr-msub{font-family:'Lora',serif;font-size:20px;font-style:italic;color:#7a7466;margin:0 0 8px}
.pr-deck{font-family:'Source Sans 3',var(--sans);font-size:16.5px;line-height:1.6;color:#4B5056;
  margin:0 0 6px;max-width:60ch}
@media(max-width:760px){.pr-mtitle{font-size:30px}.pr-msub{font-size:17px}}

/* right rail */
/* below the 3-col breakpoint the rail stacks under the article — keep only Notes there;
   a second movement list at the bottom reads as a confusing duplicate table of contents */
@media(max-width:999px){.pr-rail .pr-rail-card:not(.pr-rail-notes-card){display:none}}
.pr-rail-card{background:#FCF9F1;border:1px solid rgba(61,90,60,.16);border-radius:8px;
  padding:18px 20px;margin-bottom:14px;font-family:'Source Sans 3',var(--sans)}
.pr-rail-h{font-family:'Lora',serif;font-size:17px;font-weight:600;color:#2D4A39;margin:0 0 8px}
.pr-rail-p{font-size:14px;line-height:1.6;color:#4B5056;margin:0}
.pr-rail-list{list-style:none;margin:0;padding:0}
.pr-rail-list li{display:flex;gap:8px;align-items:baseline;font-size:13.5px;line-height:1.45;
  color:#4B5056;padding:5px 0;cursor:pointer}
.pr-rail-list li:hover{color:#2D4A39}
.pr-rail-list li.done{color:#8a8577}
.pr-rail-list li.cur{font-weight:600;color:#2D4A39}
.pr-rail-ck{color:#4C7A57;font-size:12px;flex:none}
.pr-rail-notes{width:100%;border:1px solid rgba(61,90,60,.22);border-radius:6px;background:#fff;
  font-family:'Source Sans 3',var(--sans);font-size:14px;padding:10px 12px;resize:vertical;min-height:96px}
.pr-rail-priv{font-size:11.5px;color:#8a8577;margin:8px 0 0}

/* labeled prev/next cards */
.pr-pgcard{flex:1;max-width:47%;text-align:left;background:#FCF9F1;border:1px solid rgba(61,90,60,.2);
  border-radius:8px;padding:12px 16px;cursor:pointer;font-family:'Source Sans 3',var(--sans)}
.pr-pgcard i{display:block;font-style:normal;font-size:12px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:#8a6d2f;margin-bottom:3px}
.pr-pgcard b{font-size:14.5px;font-weight:600;color:#2D4A39;line-height:1.3}
.pr-pgcard:hover{border-color:#2D4A39}
.pr-pgnext{text-align:right;margin-left:auto}
@media(max-width:640px){.pr-pgcard{max-width:100%}}
/* practices index in the app shell */
.px-appwrap{margin-top:1.5rem}
@media(min-width:1360px){.px-appwrap{grid-template-columns:252px minmax(0,1fr)}}
@media(min-width:1000px) and (max-width:1279px){.px-appwrap{display:grid;grid-template-columns:232px minmax(0,1fr);gap:1.6rem;align-items:start}}
.px-sidenav{position:sticky;top:18px}
.px-sidenav .pr-side-li{padding:10px 20px;cursor:pointer}
.px-sidenav .pr-side-li:focus-visible{outline:2px solid #D9B662;outline-offset:-2px}
.px-sidenav .pr-side-li a{display:flex;align-items:center;gap:10px;flex:1;padding:10px 20px;color:inherit;text-decoration:none}
.px-sidenav .pr-st{max-width:112px;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10.5px;letter-spacing:.05em;text-transform:uppercase}
.px-appwrap .essayhead .rcol{padding-top:1rem}
.px-appwrap .px-sector{scroll-margin-top:80px}
@media(max-width:999px){.px-sidenav{display:none}}
.bam-crewh{font-family:'Lora',serif;font-size:24px;font-weight:600;color:#2D4A39;margin:1.8rem 0 .8rem}
.bam-crew{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.bam-char figcaption{padding:10px 12px 12px;font-family:'Source Sans 3',var(--sans)}
.bam-char figcaption b{font-family:'Lora',serif;font-size:17px;color:#2D4A39;display:block}
.bam-role{display:block;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#B08D3E;margin:.15rem 0 .35rem}
.bam-char figcaption p{font-size:13.5px;line-height:1.55;color:#4B5056;margin:0}
.bam-ep{border:1px solid rgba(61,90,60,.18);border-radius:10px;background:#FCF9F1;padding:18px 20px;margin:0 0 16px}
.bam-ep-k{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#B08D3E;margin:0 0 .2rem;font-family:'Source Sans 3',var(--sans)}
.bam-ep h3{font-family:'Lora',serif;font-size:21px;font-weight:600;color:#2D4A39;margin:0 0 .35rem}
.bam-ep-sub{font-family:'Source Sans 3',var(--sans);font-size:14.5px;line-height:1.6;color:#4B5056;margin:0 0 .7rem;max-width:60ch}
.bam-ep-art{margin:.2rem 0 .8rem;border-radius:8px;overflow:hidden;max-height:280px}
.bam-ep-art img{width:100%;height:100%;max-height:280px;object-fit:cover;display:block}
.bam-tracks{display:grid;gap:8px}
.bam-track{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#F5EFE1;border:1px solid rgba(61,90,60,.12);border-radius:8px;padding:8px 12px}
.bam-track span{font-family:'Source Sans 3',var(--sans);font-size:14px;color:#2A2A2A;flex:1;min-width:180px}
.bam-track.bam-story{background:#EFE9DB;border-left:3px solid #B08D3E}
.bam-track.bam-story span{font-weight:600}
.bam-track audio{height:36px;flex:2;min-width:220px;max-width:420px}
.bam-gallery{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.bam-shot{margin:0;border-radius:8px;overflow:hidden}
.bam-shot img{width:100%;display:block}
@media(max-width:700px){.bam-gallery{grid-template-columns:1fr}.bam-ep{padding:14px 14px}}
.bam-char{margin:0;border-radius:8px;overflow:hidden;background:#0b1020;
  border:1px solid rgba(176,141,62,.4)}
.bam-char img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:50% 18%;display:block}
.bam-char{background:#FCF9F1;border:1px solid rgba(61,90,60,.18)}
@media(max-width:900px){.bam-crew{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.bam-crew{grid-template-columns:1fr}}
.bam-lb{position:fixed;inset:0;z-index:200;background:rgba(10,10,8,.94);display:flex;
  align-items:center;justify-content:center}
.bam-lb[hidden]{display:none}
.bam-lb img{max-width:min(92vw,1100px);max-height:88vh;border-radius:6px;
  box-shadow:0 20px 60px rgba(0,0,0,.6)}
.bam-lb-x{position:absolute;top:14px;right:18px;background:none;border:0;color:#EDE7D8;
  font-size:38px;line-height:1;cursor:pointer;padding:6px 10px}
.bam-lb-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(237,231,216,.1);
  border:1px solid rgba(237,231,216,.3);color:#EDE7D8;font-size:34px;line-height:1;cursor:pointer;
  width:52px;height:52px;border-radius:50%;display:grid;place-items:center;padding-bottom:6px}
.bam-lb-nav:hover{background:rgba(237,231,216,.22)}
.bam-lb-prev{left:18px}
.bam-lb-next{right:18px}
@media(max-width:640px){.bam-lb-nav{width:42px;height:42px;font-size:28px}
  .bam-lb-prev{left:8px}.bam-lb-next{right:8px}}
/* practices index — mockup layout */
.px-hero{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:40px;align-items:center;
  padding:1.6rem 0 2.2rem}
.px-hero-eyebrow{font-family:'Source Sans 3',var(--sans);font-size:12.5px;font-weight:700;
  letter-spacing:.16em;text-transform:uppercase;color:#8a6d2f;margin:0 0 12px}
.px-hero-title{font-family:'Lora',serif;font-size:46px;line-height:1.08;font-weight:600;
  color:#2D4A39;margin:0 0 14px;letter-spacing:-.015em}
.px-hero-sub{font-family:'Source Sans 3',var(--sans);font-size:17.5px;line-height:1.6;color:#4B5056;
  margin:0 0 14px;max-width:44ch}
.px-hero-verse{font-family:'Lora',serif;font-style:italic;font-size:14.5px;line-height:1.6;
  color:#8a8577;margin:0;max-width:52ch}
.px-hero-verse span{font-style:normal;font-size:12.5px}
.px-ring{width:100%;height:auto;display:block}
.px-feature{display:flex;align-items:center;gap:26px;background:#FBF7EE;
  border:1px solid rgba(61,90,60,.18);border-radius:10px;padding:26px 30px;margin:0 0 14px}
.px-feat-icon{flex:none;width:84px;height:84px;border-radius:50%;border:1px solid rgba(176,141,62,.5);
  display:grid;place-items:center;color:#B08D3E}
.px-feat-icon svg{width:44px;height:44px}
.px-feat-main{flex:1;min-width:0;border-left:1px solid rgba(61,90,60,.12);padding-left:26px}
.px-feat-k{font-family:'Source Sans 3',var(--sans);font-size:12.5px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:#8a6d2f;margin:0 0 6px}
.px-feat-title{font-family:'Lora',serif;font-size:30px;font-weight:600;margin:0 0 6px;letter-spacing:-.01em}
.px-feat-title a{color:#2D4A39}
.px-feat-sub{font-family:'Source Sans 3',var(--sans);font-size:15.5px;line-height:1.55;
  color:#4B5056;margin:0 0 12px;max-width:52ch}
.px-feat-meta{display:flex;gap:0;margin:0;font-family:'Source Sans 3',var(--sans);font-size:14px;color:#5c574b}
.px-feat-meta span{padding:0 16px;border-left:1px solid rgba(61,90,60,.15)}
.px-feat-meta span:first-child{padding-left:0;border-left:0}
.px-feat-cta{flex:none;white-space:nowrap}
.px-rows{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.px-rrow{display:flex;align-items:center;gap:18px;background:#F6F1E5;border:1px solid rgba(61,90,60,.12);
  border-radius:10px;padding:16px 24px}
.px-rn{flex:none;width:40px;height:40px;border-radius:50%;border:1px solid rgba(61,90,60,.35);
  display:grid;place-items:center;font-family:'Source Sans 3',var(--sans);font-size:14px;
  font-weight:700;color:#2D4A39}
.px-rname{flex:1;font-family:'Lora',serif;font-size:21px;font-weight:600;color:#2D4A39}
.px-rgo{font-family:'Lora',serif;font-size:17px;color:#2D4A39;white-space:nowrap}
.px-rgo b{color:#B08D3E;font-weight:700;margin-left:6px}
.px-rgo:hover{text-decoration:underline;text-underline-offset:3px}
.px-rmulti{display:flex;gap:26px;align-items:center}
.px-rlocked .px-rname{color:#7a7466}
.px-rsoon{display:flex;align-items:center;gap:8px;font-family:'Source Sans 3',var(--sans);
  font-size:14px;color:#8a8577;white-space:nowrap}
.px-rsoon svg{width:16px;height:16px}
.px-rvision img{width:26px;height:26px;border-radius:50%;object-fit:cover}
.px-prog{padding:0 20px 6px}
@media(max-width:900px){
  .px-hero{grid-template-columns:1fr;gap:18px;padding-top:.6rem}
  .px-hero-r{max-width:300px;margin:0 auto}
  .px-hero-title{font-size:34px}
  .px-feature{flex-wrap:wrap;padding:20px}
  .px-feat-main{border-left:0;padding-left:0;flex-basis:100%}
  .px-feat-cta{width:100%;text-align:center}
  .px-rrow{flex-wrap:wrap;padding:14px 16px}
  .px-rmulti{gap:16px;flex-wrap:wrap}
}
.px-feat-cta.btn-primary{background:#2D4A39;border-color:#2D4A39;color:#F3EEE1}
.px-feat-cta.btn-primary:hover{background:#24513b;border-color:#24513b}

.pr-maincol .essay-contents{display:none}
.dw-name{border:1px solid rgba(61,90,60,.25);border-left:4px solid #2D4A39;border-radius:0 8px 8px 0;
  background:#FCF9F1;padding:18px 22px;margin:14px 0 18px}
.dw-name-h{font-family:'Lora',serif;font-size:19px;font-weight:600;color:#2D4A39;margin:0 0 10px}
.dw-name-row{font-family:'Source Sans 3',var(--sans);font-size:15.5px;line-height:1.6;color:#2A2A2A;margin:0 0 8px}
.dw-name-row b{color:#8a6d2f;font-weight:700}
/* one-sphere-per-view panes */
.px-hero-compact{padding:1.2rem 0 1.4rem;grid-template-columns:1fr}
.px-pane-k{font-family:'Source Sans 3',var(--sans);font-size:12.5px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:#8a6d2f;margin:0 0 6px}
.px-pane-title{font-family:'Lora',serif;font-size:38px;line-height:1.08;font-weight:600;
  color:#2D4A39;margin:0 0 6px;letter-spacing:-.015em}
.px-pane-tag{font-family:'Lora',serif;font-style:italic;font-size:17px;color:rgba(61,90,60,.72);
  margin:0 0 18px}
.px-pane .px-card{display:block;margin-top:14px;background:#F6F1E5;border:1px solid rgba(61,90,60,.14);
  border-radius:10px;padding:18px 22px;text-decoration:none}
.px-pane .px-card:hover{border-color:rgba(61,90,60,.4)}
.px-card-k{font-family:'Source Sans 3',var(--sans);font-size:11.5px;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;color:#8a8577;margin:0 0 6px}
.px-pager{margin:22px 0 10px;display:flex;gap:12px}
@media(max-width:900px){.px-pane-title{font-size:30px}}
/* stability: no layout jumps, no mobile rail overlap */
.pr-band[hidden]{display:flex;visibility:hidden}
@media(min-width:1360px){.pr-app3 .pr-side{min-height:72vh}}
@media(max-width:1359px){.pr-rail{display:none}}
.dw-name-k{font-family:'Source Sans 3',var(--sans);font-size:11.5px;font-weight:700;
  letter-spacing:.16em;text-transform:uppercase;color:#8a6d2f;margin:0 0 2px}
.dw-name-edit{width:100%;border:1px solid rgba(61,90,60,.25);border-radius:6px;background:#fff;
  font-family:'Source Sans 3',var(--sans);font-size:15px;line-height:1.5;padding:8px 12px;
  margin-top:4px;resize:vertical}
.dw-name-row{display:block}
/* ===== app frame: nothing moves except the reading column ===== */
:root{--app-nav-h:71px;--app-band-h:41px;--app-gap:14px}
@media(min-width:1000px){
  .app-page .nav{position:sticky;top:0;z-index:120}
  .app-page .pr-band{position:sticky;top:var(--app-nav-h);z-index:110;border-radius:0}
  /* the panels REST exactly at their pin line, so they never move at all */
  .app-page .pr-app{margin-top:var(--app-gap)}
  .app-page .pr-app .pr-side,.app-page .pr-app3 .pr-side{
    position:sticky;top:calc(var(--app-nav-h) + var(--app-band-h) + var(--app-gap));
    max-height:calc(100vh - var(--app-nav-h) - var(--app-band-h) - 2*var(--app-gap));
    overflow-y:auto;overscroll-behavior:contain;min-height:0}
  .app-page .pr-rail{position:sticky;top:calc(var(--app-nav-h) + var(--app-band-h) + var(--app-gap));
    max-height:calc(100vh - var(--app-nav-h) - var(--app-band-h) - 2*var(--app-gap));overflow-y:auto;
    overscroll-behavior:contain}
  /* pages without a band (practices index, follow me): panels sit right under the nav */
  .app-page .px-appwrap,.app-page .pr-app:not(.pr-app3){margin-top:var(--app-gap)}
  .app-page .px-appwrap .pr-side,.app-page .pr-app:not(.pr-app3) .pr-side{
    top:calc(var(--app-nav-h) + var(--app-gap));
    max-height:calc(100vh - var(--app-nav-h) - 2*var(--app-gap))}
  .app-page .pr-side::-webkit-scrollbar{width:6px}
  .app-page .pr-side::-webkit-scrollbar-thumb{background:rgba(237,231,216,.25);border-radius:99px}
}
/* ===== density pass — kill the dead air in the reading column ===== */
.pr-maincol .rcol,.pr-maincol .wcol{padding-top:.15rem;padding-bottom:.15rem}
.pr-maincol .rich p{margin:0 0 14px}
.pr-maincol .rich p:last-child{margin-bottom:0}
.pr-maincol .scripture-block blockquote,.pr-maincol .rich blockquote{margin:16px 0;padding:2px 0 2px 20px}
.pr-maincol .keybox{margin:16px 0;padding:16px 20px}
.pr-maincol .block h3{margin:1.5rem 0 .55rem}
.pr-maincol .block h2.center{margin:1.4rem 0 .3rem}
.pr-maincol .grid-flow{margin:16px auto 22px}
.pr-maincol .treefig{padding:20px 24px;margin:14px 0}
.pr-maincol .pr-mhead{margin:2px 0 0}
.pr-maincol .pr-deck{margin-bottom:2px}
.pr-maincol .rich ul,.pr-maincol .rich ol{margin:0 0 14px;padding-left:1.25rem}
.pr-maincol .rich li{margin:0 0 5px}
.pr-maincol .dw-card{padding:18px 22px;margin-bottom:12px}
#pr-reflect .dw-card{margin-top:6px}
.pr-rail-card{padding:14px 18px;margin-bottom:10px}
.pr-rail-h{margin-bottom:6px}
.pr-side-li{padding:8px 20px}
.pr-side-head{padding:0 20px 2px}
.pr-side{padding:16px 0 8px}
.pr-pager{margin-top:14px}
.pr-band{padding:10px 22px}
:root{--app-band-h:37px}
.pr-side-nextwrap{padding:12px 20px 4px}
.pr-side-next{width:100%;background:#D9B662;border-color:#D9B662;color:#17251D;
  font-weight:700;text-align:left;display:block;padding:.7rem .9rem;border-radius:8px}
.pr-side-next span{display:block;font-weight:600;font-size:12.5px;margin-top:2px;
  color:rgba(23,37,29,.75);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pr-side-next:hover{background:#c9a552;border-color:#c9a552}
@media(max-width:999px){.pr-side:not(.open) .pr-side-nextwrap{display:none}}
/* ===== full-bleed app frame: the dark rail anchors to the screen edge ===== */
@media(min-width:1000px){
  .app-page .pr-app,.app-page .pr-app3,.app-page .px-appwrap{
    max-width:none;margin:0;padding:0;column-gap:0}
  .app-page .pr-app{grid-template-columns:264px minmax(0,1fr)}
  .app-page .pr-band{max-width:none;border-radius:0}
  .app-page .pr-side{border-radius:0;margin-top:0 !important;
    top:calc(var(--app-nav-h) + var(--app-band-h));
    max-height:calc(100vh - var(--app-nav-h) - var(--app-band-h));min-height:calc(100vh - var(--app-nav-h) - var(--app-band-h))}
  .app-page .px-appwrap .pr-side,.app-page .pr-app:not(.pr-app3) .pr-side{
    top:var(--app-nav-h);
    max-height:calc(100vh - var(--app-nav-h));min-height:calc(100vh - var(--app-nav-h))}
  .app-page .pr-app,.app-page .px-appwrap{margin-top:0}
  .app-page .pr-maincol{max-width:860px;margin:0 auto;padding:22px 30px 48px;width:100%}
  .app-page .pr-rail{padding:22px 22px 0 0}
}
@media(min-width:1360px){
  .app-page .pr-app3{grid-template-columns:264px minmax(0,1fr) 300px;gap:0}
  .app-page .px-appwrap{grid-template-columns:264px minmax(0,1fr)}
}
@media(min-width:1000px) and (max-width:1359px){
  .app-page .pr-app3,.app-page .px-appwrap{display:grid;grid-template-columns:264px minmax(0,1fr);gap:0}
}
@media(min-width:1000px){
  .app-page main.paper{padding-left:0 !important;padding-right:0 !important}
}
.pr-crumb{display:none;font-family:'Source Sans 3',var(--sans);font-size:14px;font-weight:600;
  color:#2D4A39;margin:0 0 10px;text-decoration:none}
@media(max-width:999px){.pr-crumb{display:inline-block;padding:10px 0 0}}
@media(min-width:1000px){.px-overview,.px-starthint,.px-backover{display:none !important}}
.px-starthint{font-family:'Source Sans 3',var(--sans);font-size:15.5px;line-height:1.6;
  color:#4B5056;margin:0 0 16px;max-width:60ch}
.px-overview{display:grid;gap:10px;margin:0 0 18px}
@media(min-width:1000px){.px-overview{grid-template-columns:1fr 1fr;gap:12px}}
.px-backover{display:inline-block;background:none;border:0;font-family:'Source Sans 3',var(--sans);
  font-size:14px;font-weight:700;color:#8a6d2f;cursor:pointer;padding:0 0 12px;letter-spacing:.02em}
.px-backover:hover{color:#2D4A39}
.fm-ageband{font-family:'Source Sans 3',var(--sans);font-size:12px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:#8a6d2f;margin:12px 0 4px}

.dw-wounds{display:grid;gap:8px;margin:.4rem 0 .6rem}
@media(min-width:700px){.dw-wounds{grid-template-columns:1fr 1fr}}
.dw-wound{text-align:left;line-height:1.35;padding:10px 12px;white-space:normal}
.dw-wound span{font-size:12.5px;opacity:.75;font-weight:400}

.dw-safety{font-size:12px;color:#8a8577;border-top:1px solid rgba(61,90,60,.14);margin-top:1.1rem;padding-top:.55rem;line-height:1.5}

.dw-sum-g{font-family:'Source Sans 3',var(--sans);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#8C6A2F;border-top:3px solid #B08D3E;padding-top:.6rem;margin:1.2rem 0 .5rem}
.dw-sum-g:first-child{margin-top:.4rem}
.dw-sum-row{border-top:1px solid rgba(61,90,60,.14);padding:8px 2px;margin:0}
.dw-sum-row:first-of-type{border-top:0}
.dw-sum-row b{display:block;font-family:'Source Sans 3',var(--sans);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#8C6A2F;margin:0 0 .15rem}
.dw-sum-row p{margin:0;font-size:14.5px;line-height:1.55;color:#2A2A2A}
