/* Forma studio site — shared chrome + page styles. Prefix fz- keeps nav/footer safe inside legacy pages. */
:root{
  --bg:#faf8f4;--bg-warm:#fcf7ee;--panel:#ffffff;--ink:#1b1f24;--soft:#5b6169;--line:#e6e1d8;
  --accent:#0e5e4a;--accent-ink:#ffffff;--accent-soft:#e3efe9;--accent-glow:rgba(14,94,74,.16);--glow2:rgba(232,182,110,.16);--warn:#b7791f;--warn-soft:#fbf1dc;
  --muted-bg:#ece9e3;--hi:rgba(255,255,255,.75);
  --shadow:0 1px 2px rgba(27,31,36,.04),0 10px 28px -14px rgba(27,31,36,.14);
  --shadow-up:0 2px 4px rgba(27,31,36,.04),0 18px 40px -18px rgba(14,94,74,.28);
  --display:"Fraunces","Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  --radius:16px;--max:1040px;--ease:cubic-bezier(.2,.7,.2,1);
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root{
    --bg:#0f1a16;--bg-warm:#122019;--panel:#162420;--ink:#e9e6df;--soft:#a4ada6;--line:#26362f;
    --accent:#6cc9a0;--accent-ink:#08150f;--accent-soft:rgba(108,201,160,.13);--accent-glow:rgba(108,201,160,.2);--glow2:rgba(108,201,160,.07);--warn:#e2b268;--warn-soft:rgba(226,178,104,.14);
    --muted-bg:#1f2d27;--hi:rgba(255,255,255,.06);
    --shadow:0 1px 2px rgba(0,0,0,.3),0 12px 30px -14px rgba(0,0,0,.5);
    --shadow-up:0 2px 4px rgba(0,0,0,.3),0 18px 40px -16px rgba(108,201,160,.22);
    color-scheme:dark;
  }
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:72px}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 -apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;position:relative;isolation:isolate}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,var(--bg-warm),var(--bg) 640px)}
body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .9 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
::selection{background:var(--accent-glow);color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent)}
h1,h2,h3{line-height:1.15;letter-spacing:-.02em;margin:0 0 .5em;text-wrap:balance}
h1,h2{font-family:var(--display);font-weight:500;font-variation-settings:"opsz" 96,"SOFT" 40}
h1{font-size:clamp(36px,5.8vw,58px);line-height:1.04;letter-spacing:-.028em}
h2{font-size:clamp(27px,3.9vw,38px);line-height:1.1;letter-spacing:-.022em}
h3{font-size:18px;font-weight:650}
p{margin:0 0 1em;text-wrap:pretty}
.wrap{max-width:var(--max);margin:0 auto;padding:0 22px}
.wrap.narrow>*{max-width:62ch}

.fz-nav,.fz-footer{--fz-panel:#ffffff;--fz-ink:#1b1f24;--fz-soft:#5b6169;--fz-line:#e6e1d8;--fz-accent:#0e5e4a;--fz-accent-soft:#e3efe9;box-sizing:border-box;text-align:left}
.fz-nav *,.fz-footer *{box-sizing:border-box}
.fz-links>li{margin:0}
.fz-footer ul,.fz-footer li{padding:0;max-width:none}
.fz-footer p{max-width:none;margin:0 0 8px}
/* ---- shared nav ---- */
.fz-nav{background:color-mix(in srgb,var(--fz-panel) 86%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--fz-line);position:sticky;top:0;z-index:50;font:15px/1.4 -apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--fz-ink);transition:box-shadow .35s var(--ease,ease)}
.fz-nav.is-scrolled{box-shadow:0 1px 0 var(--fz-line),0 8px 24px -16px rgba(0,0,0,.25)}
.fz-nav .fz-in{max-width:1040px;margin:0 auto;padding:0 22px;display:flex;align-items:center;justify-content:space-between;min-height:58px;gap:16px}
.fz-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--fz-ink);font-weight:700;letter-spacing:-.01em}
/* The mark: a green tile carrying the F, drawn as a small ring around a still point. The dot is the reader; the ring is everything else. */
.fz-brand i{width:26px;height:26px;border-radius:8px;display:inline-block;transition:transform .3s var(--ease,ease);
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'><path d='M9.5 7.5h13.5v3.4h-9.7v4.4h8.2v3.4h-8.2V25H9.5z' fill='white' opacity='.96'/><circle cx='24.3' cy='24' r='2.1' fill='white' opacity='.95'/><circle cx='24.3' cy='24' r='4.6' fill='none' stroke='white' stroke-width='.9' opacity='.55'/></svg>") center/100% 100% no-repeat,linear-gradient(135deg,#1f8a5f,#0e5e4a);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 1px 2px rgba(14,94,74,.3)}
.fz-brand:hover i{transform:rotate(-6deg) scale(1.05)}
.fz-links{display:flex;align-items:center;gap:6px;margin:0;padding:0;list-style:none}
.fz-links>li{position:relative}
.fz-links a{display:block;padding:8px 12px;border-radius:10px;text-decoration:none;color:var(--fz-ink);font-weight:500;transition:background .2s,color .2s}
.fz-links a:hover,.fz-links a:focus-visible{background:var(--fz-accent-soft);color:var(--fz-accent)}
.fz-links .fz-dd{position:absolute;top:100%;left:0;min-width:230px;background:var(--fz-panel);border:1px solid var(--fz-line);border-radius:12px;padding:6px;margin:4px 0 0;list-style:none;box-shadow:0 12px 30px rgba(0,0,0,.08),0 1px 0 rgba(255,255,255,.5) inset;display:none}
.fz-links li:hover>.fz-dd,.fz-links li:focus-within>.fz-dd{display:block}
.fz-dd a{padding:8px 10px;font-weight:500;white-space:nowrap}
.fz-dd small{display:block;color:var(--fz-soft);font-weight:400;font-size:12px}
@media (max-width:560px){
  .fz-nav .fz-in{flex-wrap:wrap;padding-top:8px;padding-bottom:8px}
  .fz-links{width:100%;justify-content:flex-start;flex-wrap:wrap}
  .fz-links .fz-dd{position:static;display:none;box-shadow:none}
  .fz-links li:focus-within>.fz-dd{display:block}
}

/* ---- shared footer ---- */
.fz-footer{margin-top:72px;border-top:1px solid var(--fz-line);background:var(--fz-panel);font:14px/1.6 -apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--fz-soft)}
.fz-footer .fz-in{max-width:1040px;margin:0 auto;padding:36px 22px 40px;display:grid;grid-template-columns:1.2fr 1fr 1fr 1.1fr;gap:28px}
.fz-footer h4{margin:0 0 10px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--fz-ink)}
.fz-footer ul{list-style:none;margin:0;padding:0}
.fz-footer li{margin:4px 0}
.fz-footer a{color:var(--fz-soft);text-decoration:none;transition:color .2s}
.fz-footer a:hover{color:var(--fz-accent);text-decoration:underline}
.fz-footer .fz-tag{color:var(--fz-ink);font-weight:600;margin:0 0 6px}
.fz-footer .fz-legal{grid-column:1/-1;border-top:1px solid var(--fz-line);padding-top:16px;font-size:13px}
.fz-footer .fz-quiet{font-style:italic;color:var(--fz-soft);margin-top:6px}
@media (max-width:700px){.fz-footer .fz-in{grid-template-columns:1fr 1fr}.fz-footer .fz-in>div:first-child{grid-column:1/-1}}
@media (prefers-color-scheme:dark){
  .fz-nav,.fz-footer{--fz-panel:#121e19;--fz-ink:#e9e6df;--fz-soft:#a4ada6;--fz-line:#26362f;--fz-accent:#6cc9a0;--fz-accent-soft:rgba(108,201,160,.13)}
  .fz-nav.is-scrolled{box-shadow:0 1px 0 var(--fz-line),0 8px 24px -14px rgba(0,0,0,.6)}
  .fz-links .fz-dd{box-shadow:0 16px 40px rgba(0,0,0,.5)}
}


/* ---- page blocks ---- */
.hero{padding:72px 0 40px;position:relative;isolation:isolate;overflow:clip}
.hero::before,.hero::after{content:"";position:absolute;z-index:-1;pointer-events:none;bottom:0}
.hero::before{inset:-40% -10% 0;background:radial-gradient(ellipse 48% 62% at 40% 38%,var(--accent-glow),transparent 100%);animation:fz-breathe 9s ease-in-out infinite alternate}
.hero::after{inset:-30% -10% 0 45%;background:radial-gradient(ellipse 55% 58% at 62% 34%,var(--glow2),transparent 100%);animation:fz-breathe2 11s ease-in-out -4s infinite alternate}
@keyframes fz-breathe{from{opacity:.6;transform:translate(-2%,-1%)}to{opacity:1;transform:translate(2%,1%)}}
@keyframes fz-breathe2{from{opacity:.55;transform:translate(2%,0)}to{opacity:1;transform:translate(-2%,2%)}}
.hero .lede{font-size:clamp(18px,2.4vw,21px);color:var(--soft);max-width:62ch;line-height:1.55}
.eyebrow{display:inline-flex;align-items:center;gap:8px;background:var(--accent-soft);color:var(--accent);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding:6px 12px;border-radius:999px;margin-bottom:18px;box-shadow:inset 0 1px 0 var(--hi)}
.eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none;box-shadow:0 0 0 3px color-mix(in srgb,currentColor 18%,transparent)}
.eyebrow.review{background:var(--warn-soft);color:var(--warn)}
.eyebrow.soon{background:var(--muted-bg);color:var(--soft)}
.section{padding:40px 0}
.section h2{margin-bottom:20px}
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:22px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow),inset 0 1px 0 var(--hi);transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease)}
.card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:var(--shadow-up),inset 0 1px 0 var(--hi)}
.card p{margin:0;color:var(--soft)}
.card .meta{display:flex;align-items:center;gap:12px;position:relative}
.card .meta h3{margin:0}
.card .meta small{display:block;color:var(--soft);font-weight:400;font-size:13px}
.card .actions{margin-top:auto;display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding-top:6px}
.tile{width:56px;height:56px;border-radius:14px;flex:none;object-fit:cover;box-shadow:0 1px 2px rgba(0,0,0,.08),0 6px 14px -8px rgba(0,0,0,.25);background:var(--muted-bg);transition:transform .35s var(--ease)}
.card:hover .tile{transform:scale(1.04) rotate(-1.5deg)}
.card .meta::before,.app-hero::before{content:"";position:absolute;left:0;top:50%;translate:0 -50%;width:56px;height:56px;border-radius:14px;pointer-events:none;z-index:1;background:linear-gradient(135deg,rgba(255,255,255,.42),rgba(255,255,255,0) 55%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);transition:transform .35s var(--ease)}
.card:hover .meta::before{transform:scale(1.04) rotate(-1.5deg)}
.tile-txt{display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:26px;letter-spacing:-.02em}
.tile-lantern{background:linear-gradient(135deg,#f5c76a,#d9782b 70%,#b3541e)}
.tile-lg{width:96px;height:96px;border-radius:24px;font-size:44px}
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:var(--accent-ink);text-decoration:none;font-weight:700;padding:12px 20px;border-radius:12px;border:1px solid var(--accent);line-height:1.2;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 1px 2px rgba(14,94,74,.2);transition:transform .2s var(--ease),box-shadow .3s var(--ease),filter .2s,background .2s}
.btn:hover{filter:brightness(1.06);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 8px 20px -8px var(--accent-glow),0 1px 2px rgba(14,94,74,.2);transform:translateY(-1px)}
.btn:active{transform:translateY(1px) scale(.985);box-shadow:inset 0 1px 2px rgba(0,0,0,.15);transition-duration:.08s}
.btn.ghost{background:transparent;color:var(--accent);box-shadow:none}
.btn.ghost:hover{background:var(--accent-soft);box-shadow:none}
.btn.sm{padding:9px 14px;font-size:14px}
.btn.disabled{background:var(--muted-bg);border-color:var(--muted-bg);color:var(--soft);pointer-events:none;box-shadow:none}
.btn svg{width:18px;height:18px;fill:currentColor}
.app-hero{display:flex;gap:26px;align-items:flex-start;position:relative}
.app-hero .tile{width:96px;height:96px;border-radius:24px}
.app-hero::before{width:96px;height:96px;border-radius:24px;top:0;translate:none}
@media (max-width:600px){.app-hero{flex-direction:column}}
.features{list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.features li{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;box-shadow:var(--shadow),inset 0 1px 0 var(--hi);transition:transform .35s var(--ease),border-color .35s var(--ease)}
.features li:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}
.features b{display:block;margin-bottom:4px}
.features span{color:var(--soft)}
.shots{display:flex;gap:16px;overflow-x:auto;padding:4px 0 12px;scroll-snap-type:x mandatory}
.shots img{width:220px;flex:none;border-radius:22px;border:1px solid var(--line);scroll-snap-align:start;background:var(--panel);box-shadow:var(--shadow)}
.faq details{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin:10px 0;box-shadow:var(--shadow),inset 0 1px 0 var(--hi);transition:border-color .3s}
.faq details[open]{border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}
.faq summary{cursor:pointer;font-weight:600}
.faq p{margin:10px 0 0;color:var(--soft)}
.note{font-size:14px;color:var(--soft)}
.status-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:8px 0 20px}
.principles{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.principles div{border-left:3px solid var(--accent);padding:2px 0 2px 16px}
.principles b{display:block;margin-bottom:4px}
.principles p{margin:0;color:var(--soft)}
.social{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.social a{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px;text-decoration:none;color:var(--ink);font-weight:600;box-shadow:var(--shadow),inset 0 1px 0 var(--hi);transition:transform .3s var(--ease),border-color .3s,color .3s}
.social a:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}
.notes{list-style:none;margin:0;padding:0}
.notes li{display:grid;grid-template-columns:110px 1fr;gap:14px;padding:14px 0;border-top:1px solid var(--line)}
.notes li:last-child{border-bottom:1px solid var(--line)}
.notes time{color:var(--soft);font-size:14px;font-variant-numeric:tabular-nums}
.notes b{display:block}
.notes p{margin:2px 0 0;color:var(--soft)}
@media (max-width:480px){.notes li{grid-template-columns:1fr;gap:4px}}
.banner{background:linear-gradient(135deg,var(--accent-soft),color-mix(in srgb,var(--accent-soft) 60%,var(--panel)));border:1px solid color-mix(in srgb,var(--accent) 22%,var(--line));border-radius:var(--radius);padding:24px;display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap;box-shadow:var(--shadow),inset 0 1px 0 var(--hi)}
.banner p{margin:0;color:var(--ink)}
/* hub: small steps + message cards */
.steps{list-style:none;margin:0;padding:0;counter-reset:s}
.steps li{counter-increment:s;display:grid;grid-template-columns:44px 1fr;column-gap:14px;row-gap:0;align-items:start;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin:10px 0;box-shadow:var(--shadow),inset 0 1px 0 var(--hi)}
.steps li::before{grid-row:1/3;content:counter(s);width:34px;height:34px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-weight:700;display:flex;align-items:center;justify-content:center;font-size:15px;font-family:var(--display);font-variation-settings:"opsz" 14}
.steps b{display:block;grid-column:2}
.steps span{grid-column:2;margin-top:-10px}
.steps span{color:var(--soft);font-size:15px}
.msgs{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.msg p{color:var(--ink);font-size:15.5px;line-height:1.65}
.voice{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:700}
.voice.v1{color:var(--warn)}
.voice.v2{color:var(--accent)}
.voice.v3{color:var(--soft)}

footer.fz-footer{max-width:none;margin:72px 0 0;padding:0;border-top:1px solid var(--fz-line);font-size:14px}
.tile-stride{background:linear-gradient(135deg,#7fb7a0,#2f7d63 70%,#1d5a47)}
.tile-evensong{background:linear-gradient(135deg,#2b3449,#1c2233 70%,#141a28);color:#e6b655}
.tile-sesame{background:linear-gradient(135deg,#fffdf8,#fbf6ee 70%,#f2e7d3);color:#c99a3a}
.tile-kotatsu{background:linear-gradient(135deg,#2c261e,#1F1B16 70%,#15120e);color:#E0873A}
.tile-porchcats{background:linear-gradient(135deg,#d9ab7a,#C99A6B 70%,#a97f52);color:#2B1D14}
.tile-eastwind{background:linear-gradient(135deg,#2b2f45,#1F2233 70%,#15172a);color:#E8B04B}
.tile-bearing{background:linear-gradient(135deg,#3c424a,#2A2E33 70%,#1c1f23);color:#C08A4A}
.tile-trellis{background:linear-gradient(135deg,#5f8a6b,#3F6B4A 70%,#2C4F35);color:#EAF3EC}
.tile-undim{background:linear-gradient(135deg,#2a2521,#1C1A17 70%,#14120f);color:#E8A23B}
.beliefs{list-style:none;margin:0;padding:0}
.beliefs li{padding:10px 0 10px 18px;border-left:3px solid var(--accent);margin:8px 0;color:var(--ink);font-size:16.5px;text-wrap:pretty}
/* hope line under a path lede, and grouped path grids */
.hope{font-family:var(--display);font-weight:500;font-variation-settings:"opsz" 48,"SOFT" 40;font-size:clamp(19px,2.5vw,24px);line-height:1.3;letter-spacing:-.012em;color:var(--accent);max-width:40ch;margin:-6px 0 26px;text-wrap:balance}
.paths-intro{font-size:clamp(17px,2.1vw,19px);color:var(--soft);max-width:58ch;margin:-6px 0 6px;line-height:1.5}
.path-group{margin-top:28px}
.path-group>h3{font-family:var(--display);font-weight:500;font-variation-settings:"opsz" 48,"SOFT" 40;font-size:23px;letter-spacing:-.015em;margin:0 0 2px}
.path-group>.note{margin:0 0 14px}
/* path cards */
.grid.paths{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
a.card.path{text-decoration:none;color:inherit;gap:6px}
a.card.path h3{margin:0;font-size:17px}
a.card.path p{font-size:14.5px}
a.card.path .more{margin-top:auto;color:var(--accent);font-weight:600;font-size:14px;padding-top:6px}
a.card.path .more i{font-style:normal;display:inline-block;transition:transform .3s var(--ease)}
a.card.path:hover .more i{transform:translateX(4px)}
a.card.path:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--line))}
.fz-dd b{font-weight:700}
/* big statements (inline-styled in HTML) */
.section>.wrap>p[style*="clamp(26px"]{font-family:var(--display);font-weight:500;font-variation-settings:"opsz" 72,"SOFT" 40;text-wrap:balance;letter-spacing:-.024em!important}

/* ---- motion: reveal on enter (only when JS marks the page, so no-JS never hides anything) ---- */
.fz-js .fz-reveal{opacity:0;transform:translateY(14px);transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:var(--d,0ms)}
.fz-js .fz-reveal.is-in{opacity:1;transform:none}
.fz-js .hero>.wrap>*{animation:fz-rise .8s var(--ease) both}
.fz-js .hero>.wrap>:nth-child(2){animation-delay:.08s}
.fz-js .hero>.wrap>:nth-child(3){animation-delay:.18s}
.fz-js .hero>.wrap>:nth-child(4){animation-delay:.28s}
.fz-js .hero>.wrap>:nth-child(n+5){animation-delay:.38s}
@keyframes fz-rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .hero::before,.hero::after{animation:none}
  .fz-js .fz-reveal{opacity:1;transform:none;transition:none}
  .fz-js .hero>.wrap>*{animation:none}
  .card,.card .tile,.card .meta::before,.btn,.features li,.social a,a.card.path .more i,.fz-brand i{transition:none}
  .card:hover,.features li:hover,.social a:hover,.btn:hover{transform:none}
}

/* ---- site comments (assets/comments.js). Self-contained: safe inside legacy pages. ---- */
.cmt{--c-panel:#ffffff;--c-ink:#1b1f24;--c-soft:#5b6169;--c-line:#e6e1d8;--c-accent:#0e5e4a;--c-accent-ink:#fff;--c-accent-soft:#e3efe9;--c-warn:#b7791f;--c-warn-soft:#fbf1dc;--c-bg:#faf8f4;box-sizing:border-box;max-width:720px;text-align:left;font:16px/1.6 -apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--c-ink)}
.cmt *{box-sizing:border-box}
.cmt [hidden]{display:none!important}
.cmt .cmt-h{font-size:clamp(27px,3.9vw,38px);line-height:1.1;letter-spacing:-.022em;margin:0 0 14px;font-family:var(--display,inherit);font-weight:500;text-wrap:balance}
.cmt-form{display:flex;flex-direction:column;gap:10px;background:var(--c-panel);border:1px solid var(--c-line);border-radius:16px;padding:16px;margin:0;box-shadow:0 1px 2px rgba(0,0,0,.04),0 10px 28px -14px rgba(0,0,0,.14)}
.cmt-form-reply{margin:10px 0 0;padding:12px;border-radius:12px;background:var(--c-bg);box-shadow:none}
.cmt-input{width:100%;font:inherit;color:var(--c-ink);background:var(--c-panel);border:1px solid var(--c-line);border-radius:10px;padding:10px 12px;margin:0;transition:border-color .2s,box-shadow .2s}
.cmt-input:focus{outline:none;border-color:var(--c-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--c-accent) 22%,transparent)}
input.cmt-input{max-width:260px}
.cmt-textarea{resize:vertical;min-height:72px;line-height:1.5}
.cmt-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}
.cmt-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.cmt-btn{display:inline-flex;align-items:center;gap:8px;background:var(--c-accent);color:var(--c-accent-ink);font:inherit;font-weight:700;font-size:14px;padding:9px 16px;border-radius:12px;border:1px solid var(--c-accent);line-height:1.2;cursor:pointer;transition:transform .2s,filter .2s,box-shadow .3s}
.cmt-btn:hover{filter:brightness(1.06)}
.cmt-btn:active{transform:translateY(1px) scale(.985)}
.cmt-btn:disabled{opacity:.55;cursor:default;filter:none}
.cmt-btn.cmt-ghost{background:transparent;color:var(--c-accent)}
.cmt-btn.is-posted{animation:cmt-pulse 1.1s ease-out}
@keyframes cmt-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--c-accent) 45%,transparent)}100%{box-shadow:0 0 0 14px transparent}}
.cmt-msg{font-size:14px;color:var(--c-warn)}
.cmt-msg.is-ok{color:var(--c-accent)}
.cmt-counter{font-size:13px;color:var(--c-soft);margin-left:auto;font-variant-numeric:tabular-nums}
.cmt-note,.cmt-status{font-size:14px;color:var(--c-soft);margin:10px 0 0;max-width:none}
.cmt-status{margin-top:18px;font-style:italic}
.cmt-list{margin-top:18px}
.cmt-item{padding:14px 0;border-top:1px solid var(--c-line)}
.cmt-list>.cmt-item:last-child{border-bottom:1px solid var(--c-line)}
.cmt-item.is-pending{opacity:.55}
.cmt-item.is-held{background:var(--c-warn-soft);border-radius:12px;padding:12px 14px;margin:8px 0}
.cmt-meta{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:0 0 4px}
.cmt-name{font-weight:700;font-size:15px;color:var(--c-ink)}
.cmt-time{font-size:13px;color:var(--c-soft);font-variant-numeric:tabular-nums}
.cmt-held{font-size:12px;color:var(--c-warn);font-weight:600}
.cmt .cmt-text{margin:0;color:var(--c-ink);font-size:15.5px;line-height:1.6;white-space:pre-line;overflow-wrap:anywhere;max-width:none}
.cmt-actions{display:flex;align-items:center;gap:6px;margin-top:6px}
.cmt-like,.cmt-replybtn{font:inherit;font-size:13px;color:var(--c-soft);background:transparent;border:1px solid transparent;border-radius:999px;padding:4px 10px;cursor:pointer;display:inline-flex;align-items:center;gap:5px;line-height:1.2;transition:background .2s,color .2s}
.cmt-like:hover,.cmt-replybtn:hover{background:var(--c-accent-soft);color:var(--c-accent)}
.cmt-like.is-liked{color:var(--c-accent);background:var(--c-accent-soft);cursor:default}
.cmt-like:disabled{opacity:.6}
.cmt-heart{font-size:15px;line-height:1}
.cmt-like.is-liked .cmt-heart{font-weight:700}
.cmt-replies{margin:6px 0 0 18px;padding-left:14px;border-left:2px solid var(--c-line)}
.cmt-replies .cmt-item{padding:10px 0;border-top:none;border-bottom:none}
.cmt-replies .cmt-item+.cmt-item{border-top:1px dashed var(--c-line)}
.cmt-more{margin-top:14px}
@media (max-width:480px){input.cmt-input{max-width:none}}
@media (prefers-color-scheme:dark){
  .cmt{--c-panel:#162420;--c-ink:#e9e6df;--c-soft:#a4ada6;--c-line:#26362f;--c-accent:#6cc9a0;--c-accent-ink:#08150f;--c-accent-soft:rgba(108,201,160,.13);--c-warn:#e2b268;--c-warn-soft:rgba(226,178,104,.14);--c-bg:#0f1a16}
  .cmt-form{box-shadow:0 1px 2px rgba(0,0,0,.3),0 12px 30px -14px rgba(0,0,0,.5)}
}

.sub{font-family:"Fraunces","Iowan Old Style",Palatino,Georgia,serif;font-style:italic;font-size:clamp(18px,2.2vw,22px);color:var(--soft);max-width:52ch;margin:-8px 0 18px;line-height:1.45;text-wrap:pretty}

/* ---- home: cadence (stats strip, ship log, status pills, how we work) ---- */
.stats{display:flex;flex-wrap:wrap;margin:6px 0 0;padding:0;list-style:none}
.stats li{display:flex;flex-direction:column;gap:2px;padding:6px 28px 6px 0;margin-right:28px;border-right:1px solid var(--line)}
.stats li:last-child{border-right:0;margin-right:0;padding-right:0}
.stats b{font-family:var(--display);font-weight:500;font-variation-settings:"opsz" 96,"SOFT" 40;font-size:clamp(34px,4.6vw,46px);line-height:1;letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums}
.stats span{font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--soft)}
@media (max-width:480px){.stats li{padding-right:18px;margin-right:18px}}

.pill{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;line-height:1;padding:5px 9px;border-radius:999px;background:var(--muted-bg);color:var(--soft);white-space:nowrap;box-shadow:inset 0 1px 0 var(--hi)}
.pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}
.pill time{font-weight:600;letter-spacing:.02em;text-transform:none;font-size:12px;color:inherit;opacity:.8;font-variant-numeric:tabular-nums}
.pill.live{background:var(--accent-soft);color:var(--accent)}
.pill.review{background:var(--warn-soft);color:var(--warn)}
.pill.submitted{background:color-mix(in srgb,var(--warn-soft) 55%,var(--panel));color:var(--warn)}
.pill.building{background:color-mix(in srgb,var(--accent-soft) 55%,var(--panel));color:var(--accent)}
.pill.soon{background:var(--muted-bg);color:var(--soft)}
.pill.shipped{background:var(--accent-soft);color:var(--accent)}

.log-intro{color:var(--soft);margin:-8px 0 14px}
.log{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.log li{display:grid;grid-template-columns:72px 1fr auto;gap:16px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line)}
.log time{font-family:var(--display);font-weight:500;font-variation-settings:"opsz" 14,"SOFT" 40;font-size:15px;color:var(--soft);font-variant-numeric:tabular-nums;white-space:nowrap}
.log b{font-weight:600;color:var(--ink)}
.log-follow{margin-top:14px;font-size:15px}
.log-follow a{font-weight:600;text-decoration:none}
.log-follow a:hover{text-decoration:underline}
@media (max-width:480px){.log li{grid-template-columns:64px 1fr;gap:6px 12px}.log li .pill{grid-column:2}}

.how{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.how .card{gap:6px}
.how h3{font-family:var(--display);font-weight:500;font-variation-settings:"opsz" 48,"SOFT" 40;font-size:21px;letter-spacing:-.015em;margin:0}
.how p{font-size:15px}
.cadence{font-family:var(--display);font-style:italic;font-weight:500;font-size:clamp(17px,2.1vw,20px);color:var(--soft);margin:0 0 6px}

/* ---- YC: hero line, get-in cards, callout, honesty line, /yc/ page ---- */
.yc-line{font-family:var(--display);font-weight:600;font-variation-settings:"opsz" 72,"SOFT" 40;font-size:clamp(22px,3.2vw,31px);line-height:1.15;letter-spacing:-.02em;color:var(--accent);max-width:30ch;margin:-8px 0 18px;text-wrap:balance}
.yc-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.yc-grid .card{gap:8px;padding:26px}
.yc-grid h3{font-family:var(--display);font-weight:500;font-variation-settings:"opsz" 48,"SOFT" 40;font-size:24px;letter-spacing:-.018em;margin:0}
.yc-grid p{font-size:15.5px}
.yc-grid .n{font-family:var(--display);font-variation-settings:"opsz" 14;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.callout{font-family:var(--display);font-weight:600;font-variation-settings:"opsz" 96,"SOFT" 40;font-size:clamp(26px,4.2vw,40px);line-height:1.1;letter-spacing:-.024em;margin:34px 0 10px;max-width:24ch;text-wrap:balance}
.honest{font-size:14px;color:var(--soft);max-width:62ch;margin:0;padding:10px 0 0;border-top:1px solid var(--line)}
.hero .honest{margin-top:8px;max-width:62ch}
.qs{list-style:none;margin:0;padding:0;counter-reset:q}
.qs li{counter-increment:q;position:relative;padding:20px 0 20px 58px;border-top:1px solid var(--line)}
.qs li:last-child{border-bottom:1px solid var(--line)}
.qs li::before{content:counter(q,decimal-leading-zero);position:absolute;left:0;top:22px;font-family:var(--display);font-weight:500;font-variation-settings:"opsz" 96,"SOFT" 40;font-size:26px;line-height:1;letter-spacing:-.02em;color:var(--accent);font-variant-numeric:tabular-nums}
.qs h3{font-family:var(--display);font-weight:500;font-variation-settings:"opsz" 48,"SOFT" 40;font-size:22px;letter-spacing:-.015em;margin:0 0 8px}
.qs p{margin:0 0 6px;font-size:15.5px;color:var(--ink)}
.qs p b{color:var(--accent)}
.qs p.miss{color:var(--soft)}
.qs p.miss b{color:var(--warn)}
.week{list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.week li{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow),inset 0 1px 0 var(--hi);display:flex;flex-direction:column;gap:4px}
.week span{font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--accent)}
.week b{font-family:var(--display);font-weight:500;font-variation-settings:"opsz" 48,"SOFT" 40;font-size:21px;letter-spacing:-.015em}
.week p{margin:0;font-size:14.5px;color:var(--soft)}
/* whisper: the quiet builders card on the umbrella. Hairline border, thin warm rule on the left. */
.whisper{padding:28px 0}
.whisper-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:26px 28px 22px;box-shadow:var(--shadow),inset 0 1px 0 var(--hi),inset 3px 0 0 var(--warn);position:relative}
.whisper .eyebrow{margin-bottom:14px}
.whisper-line{font-family:var(--display);font-weight:500;font-variation-settings:"opsz" 72,"SOFT" 40;font-size:clamp(24px,3.4vw,32px);line-height:1.15;letter-spacing:-.02em;color:var(--ink);margin:0 0 10px;max-width:30ch;text-wrap:balance}
.whisper-sub{color:var(--soft);margin:0 0 4px;font-size:16px;max-width:52ch}
.whisper .status-row{margin:12px 0 14px}
.whisper .btn.ghost{padding:10px 16px;font-size:15px}
.whisper .honest{font-size:13px;max-width:none}
@media (max-width:480px){.whisper-card{padding:20px 18px 18px}}

/* ---- prestige pass: masthead, journal numbers, ledger, house rules, batch pill ---- */
.masthead{display:block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--soft);margin:-6px 0 16px;font-variant-numeric:tabular-nums}
.fz-js .hero>.wrap>.masthead{animation-delay:.04s}
.no{font-family:var(--display);font-weight:600;font-variation-settings:"opsz" 14,"SOFT" 40;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-variant-numeric:tabular-nums;line-height:1;margin-bottom:4px}
a.card.path .no{opacity:.85}
.est{color:var(--fz-ink)}
.eyebrow.batch{background:var(--warn-soft);color:var(--warn)}
.ledger-head{display:grid;grid-template-columns:72px 1fr auto;gap:16px;padding:0 0 8px}
.ledger-head span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--soft);line-height:1.4}
.ledger-head span:last-child{text-align:right}
.log.ledger{border-top:1px solid var(--ink)}
.log.ledger time{font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:13px;letter-spacing:.02em;color:var(--soft);font-variant-numeric:tabular-nums}
.log.ledger li{padding:12px 0}
.log.ledger .pill{justify-self:end}
@media (max-width:480px){.ledger-head{grid-template-columns:64px 1fr;gap:6px 12px}.ledger-head span:last-child{display:none}.log.ledger .pill{justify-self:start;grid-column:2}}
.rules{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:-4px 0 6px;padding:0;font-size:14px;color:var(--soft)}
.rules-h{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--accent)}
.rules ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0}
.rules li{padding:0 12px;border-left:1px solid var(--line);color:var(--ink)}
.rules li:first-child{padding-left:0;border-left:0}

/* ---- hero aim line: the destination, held out like a promise ---- */
.hero .aim{max-width:56ch;margin:16px 0 6px;padding-left:16px;border-left:2px solid var(--accent);font-size:clamp(17px,2.2vw,20px);line-height:1.5;color:var(--ink)}
.hero .aim b{font-weight:700;color:var(--accent)}
@media (max-width:480px){.hero .aim{padding-left:12px}}

/* ---- hero figure: the lit room. Blended as light, not as paint, so the window glows
       on dark and only the shadows land on light. Must never out-read the h1. ---- */
.hero-figure{position:absolute;z-index:-1;top:0;right:0;bottom:0;width:min(52%,640px);pointer-events:none;
  background:url(/assets/hero-figure.webp) right bottom/auto 100% no-repeat;
  opacity:.20;mix-blend-mode:multiply;
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 64%),linear-gradient(to bottom,transparent 0,#000 22%),linear-gradient(to top,transparent 0,#000 12%);
  mask-image:linear-gradient(to right,transparent 0,#000 64%),linear-gradient(to bottom,transparent 0,#000 22%),linear-gradient(to top,transparent 0,#000 12%);
  -webkit-mask-composite:source-in;mask-composite:intersect}
@media (prefers-color-scheme:dark){.hero-figure{opacity:.38;mix-blend-mode:screen}}
@media (max-width:820px){.hero-figure{width:80%;opacity:.10}}
@media (prefers-color-scheme:dark) and (max-width:820px){.hero-figure{opacity:.22}}

/* ---- room plates: photographs bled to the card edge ---- */
.card .plate{display:block;width:calc(100% + 44px);max-width:none;margin:-22px -22px 8px;border-radius:15px 15px 0 0;aspect-ratio:800/484;object-fit:cover;background:var(--muted-bg)}

/* ---- closing plate: the door standing open at first light ---- */
#way-back{position:relative;isolation:isolate;overflow:clip;padding:66px 0}
.plate-door{position:absolute;z-index:-1;inset:0;pointer-events:none;
  background:url(/assets/plate-open-door.webp) right center/auto 116% no-repeat;
  opacity:.18;mix-blend-mode:multiply;
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 76%),linear-gradient(to bottom,transparent 0,#000 14%),linear-gradient(to top,transparent 0,#000 10%);
  mask-image:linear-gradient(to right,transparent 0,#000 76%),linear-gradient(to bottom,transparent 0,#000 14%),linear-gradient(to top,transparent 0,#000 10%);
  -webkit-mask-composite:source-in;mask-composite:intersect}
@media (prefers-color-scheme:dark){.plate-door{opacity:.30;mix-blend-mode:screen}}
@media (max-width:820px){.plate-door{opacity:.08}}
@media (prefers-color-scheme:dark) and (max-width:820px){.plate-door{opacity:.16}}

/* ---- the enemy: the things we are told, set as a ledger of claims ---- */
.told{list-style:none;margin:6px 0 0;padding:0;border-top:1px solid var(--ink)}
.told li{padding:16px 0 16px 44px;border-bottom:1px solid var(--line);position:relative;font-size:clamp(17px,2.1vw,20px);line-height:1.45;color:var(--ink)}
.told li::before{content:counter(told,decimal-leading-zero);counter-increment:told;position:absolute;left:0;top:19px;font-family:var(--display);font-weight:600;font-variation-settings:"opsz" 14,"SOFT" 40;font-size:12px;letter-spacing:.12em;color:var(--soft);font-variant-numeric:tabular-nums}
.told{counter-reset:told}
.wrap.narrow>.told-turn,.told-turn{margin:22px 0 0;font-family:var(--display);font-weight:500;font-variation-settings:"opsz" 96,"SOFT" 40;font-size:clamp(24px,3.4vw,34px);line-height:1.18;letter-spacing:-.02em;color:var(--ink);max-width:22ch}
/* ---- the closing question ---- */
.ask{font-size:clamp(19px,2.5vw,23px);line-height:1.4;color:var(--ink);max-width:34ch;margin:0 0 14px;font-weight:500}

/* ---- chips (shared by the app sorter and the world legend) ---- */
.chip{display:inline-flex;align-items:center;gap:8px;font:600 13px/1.2 -apple-system,BlinkMacSystemFont,"SF Pro Text",Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:8px 13px;cursor:pointer;transition:border-color .2s,background .2s,transform .2s var(--ease);box-shadow:inset 0 1px 0 var(--hi)}
.chip:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));transform:translateY(-1px)}
.chip.is-on{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 45%,var(--line));color:var(--accent)}
.chip i{width:9px;height:9px;border-radius:50%;background:var(--sw,var(--accent));flex:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--sw,var(--accent)) 22%,transparent)}

/* ---- home: app sorter ---- */
.sorter{display:flex;flex-direction:column;gap:10px;margin:0 0 18px}
.sorter .chips{display:flex;flex-wrap:wrap;gap:8px}
.search{font:inherit;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:11px 14px;max-width:420px;width:100%;box-shadow:inset 0 1px 0 var(--hi);transition:border-color .2s,box-shadow .2s}
.search:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}
#app-grid .card[hidden]{display:none}
/* ---- home: make your own ---- */
.make{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px;align-items:start}
@media (max-width:820px){.make{grid-template-columns:1fr}}
.make-form{display:flex;flex-direction:column;gap:12px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow),inset 0 1px 0 var(--hi)}
.make-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--soft)}
.make-form input,.make-form textarea{font:16px/1.5 -apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px 12px;text-transform:none;letter-spacing:0;font-weight:400}
.make-form input:focus,.make-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}
.make-form textarea{resize:vertical}
.make-out{background:var(--bg-warm);border:1px dashed color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:var(--radius);padding:16px 18px;min-height:100%}
.make-out-h{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.make-out-h .no{margin:0}
.make-out pre{margin:0;white-space:pre-wrap;font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:13px;line-height:1.6;color:var(--ink)}
.sub-h{font-family:var(--display);font-weight:500;font-variation-settings:"opsz" 48,"SOFT" 40;font-size:23px;letter-spacing:-.015em;margin:34px 0 10px}
/* ---- home: world teaser ---- */
.teaser{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:32px;align-items:center}
.teaser .globe-wrap{max-width:360px}
.teaser h2{margin-bottom:12px}
@media (max-width:760px){.teaser{grid-template-columns:1fr}.teaser .globe-wrap{max-width:260px;margin:0}}
/* ---- home: paths, each with its own colour so nine do not read as one ---- */
a.card.path{border-top:3px solid var(--pc,var(--accent))}
a.card.path .no{color:var(--pc,var(--accent))}
.paths-rest{margin:18px 0 0;font-size:15px;color:var(--soft);line-height:1.8}
.paths-rest a{text-decoration:none;font-weight:500;color:var(--ink)}
.paths-rest a:hover{color:var(--accent);text-decoration:underline}
/* guidebook pager (MedVi playbook) */
.gb-pager{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 0 30px}
.gb-pager .gb-count{font-size:13px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--soft);white-space:nowrap}
.gb-pager ol{list-style:none;margin:0;padding:0;display:flex;gap:8px;flex-wrap:wrap}
.gb-pager ol a{display:inline-flex;align-items:center;gap:9px;padding:7px 12px 7px 7px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--ink);text-decoration:none;font-size:14px;font-weight:600;line-height:1.1;box-shadow:inset 0 1px 0 var(--hi);transition:border-color .2s,background .2s,transform .2s var(--ease)}
.gb-pager ol a i{font-style:normal;width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent);font-family:var(--display);font-variation-settings:"opsz" 14;font-size:13px;font-weight:700;flex:none}
.gb-pager ol a:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));transform:translateY(-1px)}
.gb-pager ol a[aria-current="page"]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.gb-pager ol a[aria-current="page"] i{background:rgba(255,255,255,.18);color:var(--accent-ink)}
.gb-next{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:8px 0 10px}
.gb-next a{display:flex;flex-direction:column;gap:6px;padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);text-decoration:none;color:var(--ink);box-shadow:var(--shadow),inset 0 1px 0 var(--hi);transition:transform .3s var(--ease),border-color .3s var(--ease)}
.gb-next a:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}
.gb-next a small{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--soft)}
.gb-next a b{font-family:var(--display);font-weight:500;font-variation-settings:"opsz" 48,"SOFT" 40;font-size:20px;letter-spacing:-.015em;line-height:1.2}
.gb-next a.next{text-align:right;align-items:flex-end;grid-column:2}
.gb-next a.prev{grid-column:1}
.gb-next a:only-child.next{grid-column:2}
@media (max-width:600px){.gb-next{grid-template-columns:1fr}.gb-next a.next,.gb-next a.prev,.gb-next a:only-child.next{grid-column:1}}
.verses{list-style:none;margin:0;padding:0;columns:1;font-size:16px;line-height:1.65;max-width:62ch}
.verses li{padding:4px 0 4px 40px;position:relative;text-wrap:pretty}
.verses li::before{content:attr(data-v);position:absolute;left:0;top:6px;width:30px;text-align:right;font-family:var(--display);font-variation-settings:"opsz" 14;font-size:12px;font-weight:700;color:var(--accent);letter-spacing:.02em}
.verses li.k{background:var(--accent-soft);border-radius:8px;padding-right:10px}
.ad-quote{margin:14px 0 6px;padding:14px 18px;border-left:3px solid var(--accent);background:var(--panel);border-radius:0 12px 12px 0;font-size:15px;color:var(--ink);white-space:pre-line;box-shadow:var(--shadow),inset 0 1px 0 var(--hi)}
.ad-quote small{display:block;margin-top:8px;color:var(--soft);font-size:12.5px;white-space:normal}
.scripture-foot{border-top:1px solid var(--line);margin-top:10px}
.scripture{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.scripture li{padding:12px 16px;background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow),inset 0 1px 0 var(--hi)}
.scripture li small{display:block;margin-top:6px;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;color:var(--accent)}
.scripture .verses li{padding:2px 0 2px 34px;background:none;border:0;box-shadow:none}
.scripture .verses li::before{top:4px;width:26px}
