:root{--night:#191329;--plum:#31243f;--paper:#fffaf1;--ink:#f6f1ed;--muted:#d7cddd;--gold:#f2d19b;--violet:#c9b5e8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 20% 8%,#7a5e8c32,transparent 30%),linear-gradient(180deg,var(--night),var(--plum));color:var(--ink);font-family:Figtree,system-ui,sans-serif;background-attachment:fixed}body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:radial-gradient(circle,#f2d19b88 0 1px,transparent 1.5px);background-size:137px 151px;opacity:.42}a{color:inherit}.top{height:72px;display:flex;align-items:center;justify-content:space-between;max-width:1160px;margin:auto;padding:0 24px}.brand{font:500 24px Literata,serif;text-decoration:none}.brand span{color:var(--gold)}.top nav{display:flex;gap:24px}.top nav a{text-decoration:none;color:var(--muted)}main{position:relative}.hero,.section{width:min(1140px,calc(100% - 48px));margin:auto}.hero{min-height:480px;display:flex;justify-content:space-between;align-items:center;gap:50px;padding:55px 7% 75px}.hero h1,h2,h3{font-family:Literata,Georgia,serif;font-weight:500}.hero h1{font-size:clamp(48px,7vw,78px);line-height:1;margin:.15em 0}.hero>div>p:last-child{font-size:20px;color:var(--muted)}.hero img{width:min(300px,30vw);height:auto;filter:drop-shadow(0 20px 30px #08051280)}.eyebrow{color:var(--gold)!important;font-size:13px!important;text-transform:uppercase;letter-spacing:.14em;font-weight:600}.section{padding:110px 0;border-top:1px solid #d2bdeb26;scroll-margin-top:20px}.section-copy h2,.privacy h2,.invite h2{font-size:clamp(34px,4.2vw,52px);line-height:1.08;margin:8px 0 20px}.section-copy>p:not(.eyebrow),.invite p{font-size:18px;line-height:1.65;color:var(--muted);max-width:650px}.centered{text-align:center}.centered .section-copy{max-width:770px;margin:auto}.centered .section-copy p{margin-inline:auto}.story{padding-top:75px}.story>.section-copy{text-align:center;margin-bottom:34px}.story>.section-copy p{margin-inline:auto}.story-shell{outline:none}.story-shell:focus-visible{outline:2px solid var(--gold);outline-offset:8px;border-radius:20px}.story-progress{display:grid;grid-template-columns:repeat(3,1fr);max-width:860px;margin:0 auto 24px;border-bottom:1px solid #bca9d548}.story-progress button{border:0;border-bottom:2px solid transparent;background:none;color:#bdb3c7;padding:14px 8px;font:500 14px Figtree;cursor:pointer}.story-progress button span{display:inline-grid;place-items:center;width:25px;height:25px;margin-right:8px;border:1px solid #c8b3df66;border-radius:50%}.story-progress button[aria-current]{color:#fff;border-color:var(--gold)}.story-window{overflow:hidden;border-radius:28px}.story-track{display:flex;transition:transform .65s cubic-bezier(.2,.75,.25,1)}.beat{flex:0 0 100%;min-width:0;padding:28px;display:grid;grid-template-columns:minmax(260px,.78fr) minmax(0,1.22fr);gap:30px;align-items:center;background:#211831d9;border:1px solid #dbc4ed34;border-radius:28px}.beat-head h3{font-size:clamp(24px,3vw,38px);line-height:1.25;margin:8px 0}.step-label,.person{color:var(--gold);font-weight:600;letter-spacing:.03em}.answer-card{display:grid;grid-template-columns:43% 1fr;min-width:0;overflow:hidden;border-radius:20px;background:#fff9ef;color:#302739;box-shadow:0 22px 50px #08051255}.answer-card img{width:100%;height:100%;max-height:410px;object-fit:cover}.answer-card>div{padding:24px}.answer-card p{line-height:1.52;margin:0}.answer-card .person{margin-bottom:10px}.shared{display:block}.shared .beat-head{text-align:center;max-width:760px;margin:0 auto 25px}.shared-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.shared .answer-card{grid-template-columns:1fr}.shared .answer-card img{height:220px}.story-arrows{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}.story-arrows button{min-height:44px;border:1px solid #cbb6df66;border-radius:999px;background:#281d3b;color:#fff;padding:0 18px;font:600 14px Figtree;cursor:pointer}.story-status{font-size:14px;color:var(--muted)}.around,.growth{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,340px) minmax(0,1fr);gap:38px;align-items:center}.art-card img,.export img{display:block;width:100%;height:auto;border-radius:22px;box-shadow:0 22px 50px #09061466}.around blockquote{margin:0;padding:27px;background:#fff9ef;color:#302739;border-radius:18px;transform:rotate(1.5deg);box-shadow:0 18px 44px #09061455;font-family:Literata,serif;line-height:1.6}.around blockquote footer{color:#756879;font:13px Figtree;margin-top:14px}.growth-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;align-items:end}.growth-strip figure,.export{margin:0}.growth-strip img{width:100%;height:auto;display:block;border-radius:12px}.growth-strip figure:nth-child(2){transform:translateY(18px)}.growth-strip figcaption,.export figcaption{text-align:center;color:var(--muted);font-size:12px;margin-top:8px}.sky{display:grid;grid-template-columns:330px 1fr;align-items:center;gap:80px}.sky svg{width:100%;overflow:visible}.sky svg>path{fill:none;stroke:#f2d19b66;stroke-width:2}.sky svg circle,.sky svg a path{fill:var(--gold);filter:drop-shadow(0 0 9px #f2d19bbb)}.sky svg text{fill:var(--muted);font:14px Figtree}.book>.section-copy{text-align:center;max-width:700px;margin:0 auto 46px}.book>.section-copy p{margin-inline:auto}.open-book{display:grid;grid-template-columns:1fr 1fr;max-width:980px;margin:auto;filter:drop-shadow(0 28px 34px #09061470);perspective:1000px}.open-book article{background:linear-gradient(90deg,#eee5d6,#fffaf1 8%,#fffaf1);color:#362d37;padding:34px;min-height:520px;font-family:Literata,serif;line-height:1.5}.open-book article:first-child{border-radius:16px 3px 3px 16px;transform:rotateY(3deg);transform-origin:right}.open-book article:last-child{border-radius:3px 16px 16px 3px;transform:rotateY(-3deg);transform-origin:left;background:linear-gradient(270deg,#eee5d6,#fffaf1 8%,#fffaf1)}.open-book img{width:100%;height:220px;object-fit:cover;border-radius:4px}.nicu{display:grid;grid-template-columns:1fr 1fr;gap:48px}.byline{color:var(--gold)!important;font-family:Literata,serif}.nicu-art{display:grid;grid-template-columns:2fr 1fr;gap:12px;align-self:center}.nicu-art img{width:100%;height:280px;object-fit:cover;border-radius:18px}.nicu ul{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0;padding:0;list-style:none}.nicu li{padding:24px;background:#ffffff0b;border:1px solid #cab8da35;border-radius:16px;color:var(--muted);line-height:1.55}.nicu li:before{content:"✦";color:var(--gold);display:block;margin-bottom:10px}.privacy{text-align:center}.privacy span{font-size:34px;color:var(--gold)}.privacy h2{max-width:820px;margin:18px auto}.invite{text-align:center}.invite p{margin-inline:auto}.invite>a{display:inline-flex;align-items:center;min-height:50px;margin-top:16px;padding:0 26px;border-radius:999px;background:var(--gold);color:#22192f;text-decoration:none;font-weight:600}.footer{width:min(1140px,calc(100% - 48px));margin:auto;padding:35px 0 55px;display:flex;gap:25px;justify-content:center;color:var(--muted);border-top:1px solid #d2bdeb26}.trail{display:none}
@media(min-width:1200px){.trail{position:fixed;display:block;z-index:5;right:10px;top:90px;width:70px;height:calc(100vh - 130px)}.trail>svg{position:absolute;inset:0;width:100%;height:100%}.trail>svg path{fill:none;stroke:#f2d19b42;stroke-width:1.5}.trail nav{position:absolute;inset:0}.trail nav a{position:absolute;left:23px;width:44px;height:44px;display:grid;place-items:center;color:#806d75;text-decoration:none;font-size:16px}.trail nav a:before{content:"✦"}.trail nav a.reached{color:var(--gold);filter:drop-shadow(0 0 6px #f2d19b99)}.trail img{position:absolute;z-index:2;left:4px;width:46px;height:46px;object-fit:contain;transform:translateY(-50%);transition:top .12s linear,transform .18s ease;filter:drop-shadow(0 5px 7px #080510)}}
@media(max-width:800px){.top{height:62px}.hero{min-height:400px;padding:40px 0}.hero img{width:120px}.section{padding:70px 0}.story-window{overflow-x:auto;scroll-snap-type:x mandatory;border-radius:20px}.story-track{transform:none!important;gap:14px}.beat{flex-basis:92%;scroll-snap-align:center;display:block;padding:20px}.beat-head{margin-bottom:20px}.answer-card{grid-template-columns:1fr}.answer-card img{height:240px}.shared-grid{grid-template-columns:1fr}.story-progress button{font-size:0}.story-progress button span{font-size:13px;margin:0}.around,.growth,.sky,.nicu{grid-template-columns:1fr;gap:28px}.around .section-copy,.growth .section-copy{grid-row:1}.around .art-card{max-width:370px}.growth-strip{max-width:520px}.export{max-width:380px}.open-book{display:block}.open-book article{min-height:0;transform:none!important;border-radius:10px!important}.nicu ul{grid-column:auto;grid-template-columns:1fr}.nicu-art img{height:220px}}
.compact .story-window{overflow-x:auto;scroll-snap-type:x mandatory;border-radius:20px;transition:height .25s ease}.compact .story-track{transform:none!important;gap:14px;align-items:flex-start}.compact .beat{flex-basis:92%;scroll-snap-align:center;display:block;padding:20px}.compact .beat-head{margin-bottom:20px}.compact .answer-card{grid-template-columns:1fr}.compact .answer-card img{height:220px}.compact .shared-grid{grid-template-columns:1fr 1fr}.compact .shared .answer-card img{height:160px}.compact .shared .answer-card p{font-size:13px}.compact .story-progress button{font-size:0}.compact .story-progress button span{font-size:13px;margin:0}
@media(max-width:420px){.hero,.section{width:calc(100% - 30px)}.hero h1{font-size:43px}.hero img{width:86px}.story-progress{margin-inline:10px}.beat{flex-basis:96%;padding:16px}.beat-head h3{font-size:22px}.answer-card>div{padding:18px}.answer-card p{font-size:15px}.shared .answer-card img{height:190px}.story-status{display:none}.growth-strip{gap:5px}.nicu-art{grid-template-columns:1.55fr 1fr}.nicu-art img{height:180px}.footer{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.story-track,.trail img{transition:none!important}.story-window{overflow:visible}.story-track{display:block!important}.beat{margin-bottom:18px}.story-progress,.story-arrows{display:none}}
html:not(.js) .story-window{overflow:visible}html:not(.js) .story-track{display:block}html:not(.js) .beat{margin-bottom:18px}html:not(.js) .story-progress,html:not(.js) .story-arrows{display:none}

/* Scroll-driven story behavior — appended override block. */
@media (min-width:1100px) and (min-height:700px) and (prefers-reduced-motion:no-preference){
  .story-desktop .story{padding-bottom:calc(110px + 140vh)}
  .story-desktop .story-shell{position:sticky;top:12px;z-index:2}
  .story-desktop .story-progress{margin-bottom:12px}
  .story-desktop .story-progress button{padding-block:10px}
  .story-desktop .story-window{max-height:600px;border-radius:24px}
  .story-desktop .beat{min-height:0;max-height:600px;padding:20px 24px;gap:24px}
  .story-desktop .beat-head h3{font-size:clamp(24px,2.5vw,34px)}
  .story-desktop .answer-card img{max-height:330px}
  .story-desktop .answer-card>div{padding:20px}
  .story-desktop .shared .beat-head{margin-bottom:14px}
  .story-desktop .shared .answer-card img{height:180px}
  .story-desktop .shared .answer-card>div{padding:16px 18px}
  .story-desktop .shared .answer-card p{font-size:14px;line-height:1.42}
  .story-desktop .story-arrows{margin-top:12px}
}
.story-compact .story-window{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;border-radius:20px;transition:height .25s ease}
.story-compact .story-track{transform:none!important;gap:14px;align-items:flex-start}
.story-compact .beat{flex-basis:92%;scroll-snap-align:start;display:block;padding:20px}
.story-compact .beat-head{margin-bottom:20px}
.story-compact .answer-card{grid-template-columns:1fr}
.story-compact .answer-card img{height:220px}
.story-compact .shared-grid{grid-template-columns:1fr 1fr}
.story-compact .shared .answer-card img{height:160px}
.story-compact .shared .answer-card p{font-size:13px}
.story-compact .story-progress button{font-size:0}
.story-compact .story-progress button span{font-size:13px;margin:0}
.trail img{pointer-events:none}
@media(max-width:420px){.story-compact .shared-grid{grid-template-columns:1fr}.story-compact .shared .answer-card p{font-size:15px}.story-compact .shared .answer-card img{height:190px}}
@media(prefers-reduced-motion:reduce){.trail img{display:none}.story-reduced .beat{max-height:none}}
