@font-face{font-family:Gilda;src:url(/fonts/gilda.woff2) format("woff2");font-display:swap}
@font-face{font-family:Rethink;src:url(/fonts/rethink.woff2) format("woff2");font-weight:400 800;font-display:swap}
:root{--paper:#F6F2EA;--tint:#F6F2EA;--olive:#3F4A2A;--moss:#6E7A4C;--sage:#B7BD9C;--clay:#B9785A;--ink:#22261A;--mut:#5E6352;--rule:#D9D3C4;--serif:Gilda,Georgia,serif;--sans:Rethink,system-ui,sans-serif;--slow:cubic-bezier(.25,.1,.25,1)}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--tint);color:var(--ink);font:400 17px/1.65 var(--sans);padding-bottom:96px;transition:background 1.6s var(--slow)}
body[data-feel=wired]{--tint:#F3E6DA}body[data-feel=tense]{--tint:#F4ECE0}body[data-feel=restless]{--tint:#F2EFE2}body[data-feel=low]{--tint:#ECEDE4}body[data-feel=okay]{--tint:#EEF0E6}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}a:hover{color:var(--clay)}button{font:inherit;color:inherit;cursor:pointer}
img{display:block;max-width:100%;height:auto}:focus-visible{outline:2px solid var(--clay);outline-offset:3px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip{position:absolute;left:-999px;top:8px;background:var(--olive);color:var(--paper);padding:8px 12px;z-index:99}.skip:focus{left:8px}
.w{width:min(1180px,100% - 40px);margin:0 auto}.nar{width:min(720px,100% - 40px)}
em{font-style:italic;color:var(--moss)}
/* header: centred mark between two text navs */
.hd{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding:22px max(20px,calc((100% - 1180px)/2));border-bottom:1px solid var(--rule)}
.hd nav{display:flex;gap:26px;font-size:14.5px;letter-spacing:.02em}.hd-r{justify-content:flex-end}.hd nav a{text-decoration:none;padding:6px 0;border-bottom:1px solid transparent}.hd nav a:hover,.hd nav a[aria-current]{border-color:currentColor}
.mark{display:flex;align-items:center;gap:10px;text-decoration:none;font:400 26px/1 var(--serif);letter-spacing:.01em}.lg{width:30px;height:30px}
@media(max-width:720px){.hd{grid-template-columns:auto 1fr;grid-template-areas:"m r" "l l";row-gap:10px;padding:14px 20px}.mark{grid-area:m}.hd-r{grid-area:r}.hd-l{grid-area:l;justify-content:center;border-top:1px solid var(--rule);padding-top:10px}.hd nav{gap:18px;font-size:14px}}
/* type */
.eyebrow{font:500 12.5px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mut);margin:0 0 22px}
.h1{font:400 clamp(64px,11vw,176px)/.92 var(--serif);letter-spacing:-.02em;margin:0 0 28px}.h1 span{display:inline-block}
.h1.rv span{opacity:0;transform:translateY(24px);animation:rise 1.6s var(--slow) forwards}.h1.rv span+span{animation-delay:.5s}@keyframes rise{to{opacity:1;transform:none}}
.h1.sm{font-size:clamp(48px,7vw,104px)}
.h2{font:400 clamp(36px,4.6vw,64px)/1.02 var(--serif);margin:0 0 14px;letter-spacing:-.01em}
.lede{font-size:clamp(18px,1.6vw,22px);line-height:1.55;max-width:44ch;color:#383D2C;margin:0}.sub{color:var(--mut);margin:0 0 30px}
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--olive);color:var(--paper);border:0;border-radius:2px;padding:16px 26px;font:600 15px/1 var(--sans);letter-spacing:.03em;text-decoration:none;transition:background .4s}
.btn:hover{background:var(--ink);color:var(--paper)}.btn.ln{background:none;color:var(--ink);padding:16px 4px;border-bottom:1px solid var(--ink);border-radius:0}.btn.ln:hover{color:var(--clay);border-color:var(--clay)}.btn.sm{padding:10px 4px;font-size:14px}
.acts{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin-top:30px}
/* hero + tide */
.hero{padding:clamp(60px,10vw,140px) 0 0;position:relative;overflow:hidden}
.tide{display:block;width:100vw;margin-left:calc(50% - 50vw);height:110px;margin-top:70px;fill:var(--sage);opacity:.55}
.tide path{animation:tide 10s ease-in-out infinite;transform-origin:50% 100%}@keyframes tide{0%,100%{transform:scaleY(.6) translateX(0)}40%{transform:scaleY(1.15) translateX(-30px)}}
/* scale */
.scale{padding:clamp(60px,8vw,110px) 0;background:var(--paper)}
.sc-l{list-style:none;margin:0 0 50px;padding:0;display:grid;grid-template-columns:repeat(5,1fr);position:relative}
.sc-l::before{content:"";position:absolute;left:10%;right:10%;top:15px;height:1px;background:var(--ink)}
.sc-o{position:relative;display:grid;justify-items:center;text-align:center;gap:8px;padding:0 10px;cursor:pointer}
.sc-o input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.sc-dot{width:31px;height:31px;border-radius:50%;background:var(--paper);border:1px solid var(--ink);position:relative;transition:transform .6s var(--slow)}
.sc-dot::after{content:"";position:absolute;inset:6px;border-radius:50%;background:var(--olive);transform:scale(0);transition:transform .6s var(--slow)}
.sc-o input:checked+.sc-dot::after{transform:scale(1)}.sc-o input:focus-visible+.sc-dot{outline:2px solid var(--clay);outline-offset:4px}
.sc-o b{font:400 26px/1.1 var(--serif)}.sc-o small{font-size:13.5px;color:var(--mut);line-height:1.4;max-width:20ch}
.sc-o:hover .sc-dot{transform:scale(1.12)}
@media(max-width:760px){.sc-l{grid-template-columns:1fr;gap:4px}.sc-l::before{left:15px;right:auto;top:15px;bottom:15px;width:1px;height:auto}.sc-o{grid-template-columns:31px 1fr;justify-items:start;text-align:left;column-gap:16px;padding:8px 0}.sc-o small{grid-column:2}.sc-o b{font-size:22px}}
.set{border-top:1px solid var(--ink);padding-top:22px}.set-h{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:22px}.set-k{margin:0;font:400 26px/1.2 var(--serif)}.set-n{margin:0;color:var(--mut)}
/* timeline: segment height = energy, so the set visibly steps down */
.tl-s{list-style:none;margin:0;padding:0;display:flex;gap:14px;align-items:flex-end}
.st{flex:var(--w) 1 0;min-width:0}.st-h{display:flex;justify-content:space-between;gap:8px;margin:0 0 10px;font-size:13.5px;color:var(--mut)}.st-h b{font:400 20px/1 var(--serif);color:var(--ink)}
.st-l{list-style:none;margin:0;padding:0;display:flex;gap:3px;align-items:flex-end;height:180px}
.st-l li{flex:var(--w) 1 0;min-width:0;height:calc(28% + var(--e)*72%)}
.st-l button{width:100%;height:100%;border:0;padding:10px 8px;background:var(--sage);text-align:left;display:flex;align-items:flex-end;overflow:hidden;transition:background .5s,filter .5s}
.st:nth-child(1) .st-l button{background:#C8A68E}.st:nth-child(2) .st-l button{background:#B7BD9C}.st:nth-child(3) .st-l button{background:#8E9A72}
.st-l button span{font-size:12.5px;line-height:1.25;color:var(--ink);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.st-l button:hover{filter:brightness(.92)}.st-l button.on{background:var(--olive)!important}.st-l button.on span{color:var(--paper)}
.tl-f{display:flex;justify-content:space-between;margin:12px 0 0;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);border-top:1px solid var(--rule);padding-top:10px}
.tl.in .st-l li{animation:grow .9s var(--slow) both}@keyframes grow{from{transform:scaleY(.2);transform-origin:bottom;opacity:.2}}
@media(max-width:760px){.tl-s{flex-direction:column;align-items:stretch;gap:20px}.st-l{flex-direction:column;height:auto;align-items:stretch;gap:3px}.st-l li{height:auto;width:calc(40% + var(--e)*60%)}.st-l button{height:44px;align-items:center}}
/* why */
.why{padding:clamp(60px,8vw,110px) 0}.why-g{display:grid;grid-template-columns:1fr 1.4fr;gap:40px}@media(max-width:860px){.why-g{grid-template-columns:1fr}}
.why-l{list-style:none;margin:0;padding:0;counter-reset:w}.why-l li{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:22px 0;border-top:1px solid var(--rule)}.why-l b{font:400 30px/1 var(--serif)}.why-l p{margin:0;color:#383D2C}
/* sets list */
.sets{padding:clamp(50px,7vw,100px) 0;background:var(--olive);color:var(--paper)}.sets em{color:var(--sage)}.sets a:hover{color:var(--paper)}
.sets-l{list-style:none;margin:30px 0 0;padding:0}.sets-l a{display:grid;grid-template-columns:60px 1.1fr 1.4fr auto;gap:20px;align-items:baseline;padding:26px 0;border-top:1px solid rgba(246,242,234,.25);text-decoration:none;transition:padding .6s var(--slow)}
.sets-l li:last-child a{border-bottom:1px solid rgba(246,242,234,.25)}.sets-l a:hover{padding-left:16px}
.sets-n{font-size:13px;opacity:.6}.sets-l b{font:400 clamp(26px,3vw,40px)/1.05 var(--serif)}.sets-d{opacity:.8}.sets-m{font-size:14px;opacity:.75}
@media(max-width:760px){.sets-l a{grid-template-columns:36px 1fr;row-gap:6px}.sets-d,.sets-m{grid-column:2}}
/* faq */
.qa{padding:clamp(50px,7vw,100px) 0}.qa-g{display:grid;grid-template-columns:1fr 1.6fr;gap:40px}@media(max-width:860px){.qa-g{grid-template-columns:1fr}}
.faq{margin:0}.faq div{padding:20px 0;border-top:1px solid var(--rule)}.faq dt{font:400 22px/1.3 var(--serif);margin-bottom:6px}.faq dd{margin:0;color:#383D2C}
.prose-s p{margin:0 0 14px}
/* pages */
.ph{padding:clamp(50px,8vw,110px) 0 40px}.prose{padding:10px 0 90px}.prose h2{font:400 34px/1.1 var(--serif);margin:42px 0 10px}.prose p{color:#383D2C}
.lib{padding:20px 0 80px}
.ef{border:0;padding:0;margin:30px 0 0;display:flex;flex-wrap:wrap;gap:6px 26px;align-items:center}.ef legend{float:left;margin-right:20px;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut)}
.ef label{position:relative;cursor:pointer}.ef input{position:absolute;opacity:0}.ef span{display:block;padding:6px 0;border-bottom:1px solid transparent}.ef input:checked+span{border-color:var(--ink)}.ef input:focus-visible+span{outline:2px solid var(--clay)}
.ef-n{color:var(--mut);margin:10px 0 0}
.al{margin:0 0 50px}.al[hidden],.r[hidden]{display:none}.al-h{display:flex;align-items:center;gap:18px;padding-bottom:14px;border-bottom:1px solid var(--ink)}.al-h img{width:64px;height:64px;object-fit:cover;aspect-ratio:1/1;flex:none}.al-h h2{margin:0;font:400 28px/1.1 var(--serif)}.al-h p{margin:2px 0 0;font-size:13.5px;color:var(--mut)}.al-h .btn{margin-left:auto}
.rs{list-style:none;margin:0;padding:0}
.r{display:grid;grid-template-columns:minmax(0,1fr) 70px 50px 50px;gap:14px;align-items:center;border-bottom:1px solid var(--rule)}
.r-p{display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px;align-items:center;background:none;border:0;padding:10px 0;text-align:left;min-width:0}
.r-p img{width:40px;height:40px;object-fit:cover;aspect-ratio:1/1}.r-t{display:grid;min-width:0;line-height:1.3}.r-t b{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.r-t span{font-size:13px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.r.on .r-t b,.r-p.now .r-t b{color:var(--clay)}.r-e{display:flex;gap:3px;align-items:flex-end;height:16px}.r-e i{width:8px;height:100%;background:var(--rule)}.r-e i:nth-child(1){height:30%}.r-e i:nth-child(2){height:45%}.r-e i:nth-child(3){height:60%}.r-e i:nth-child(4){height:80%}.r-e i.on{background:var(--moss)}
.r-d{font-size:13px;color:var(--mut);font-variant-numeric:tabular-nums}.r-dl{font-size:12.5px;letter-spacing:.06em;text-decoration:none;border-bottom:1px solid var(--ink);justify-self:start}
@media(max-width:600px){.r{grid-template-columns:minmax(0,1fr) 50px 40px}.r-d{display:none}}
/* footer */
.ft{background:var(--ink);color:#E6E2D6;padding:70px 0 40px}.ft a:hover{color:#fff}.ft-big{font:400 clamp(46px,7vw,100px)/1 var(--serif);margin:0 0 40px}.ft-big em{color:var(--sage)}
.ft-g{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.ft h2{font:600 12.5px var(--sans);letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px;color:var(--sage)}.ft ul{list-style:none;margin:0;padding:0}.ft li{margin:6px 0}
.fine{font-size:13px;opacity:.7;margin:40px 0 0;max-width:110ch}@media(max-width:640px){.ft-g{grid-template-columns:1fr 1fr}}
/* player */
.pb{position:fixed;left:0;right:0;bottom:0;z-index:40;background:rgba(246,242,234,.94);backdrop-filter:blur(10px);border-top:1px solid var(--ink)}
.pb-tide{position:absolute;left:0;right:0;top:-1px;height:3px;overflow:hidden}.pb-tide i{position:absolute;inset:0;background:var(--olive);transform-origin:left;transform:scaleX(0)}
.pb-seek{position:absolute;left:0;right:0;top:-8px;height:16px;width:100%;margin:0;opacity:0;cursor:pointer}
.pb-in{display:grid;grid-template-columns:40px minmax(0,1.3fr) minmax(0,1fr) auto auto auto auto auto auto;gap:16px;align-items:center;padding:12px max(20px,env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}
.pb-c{width:40px;height:40px;object-fit:cover;aspect-ratio:1/1}.pb-t{margin:0;display:grid;min-width:0;line-height:1.25}.pb-t b{font:400 18px var(--serif);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pb-t span{font-size:12.5px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pb-st{margin:0;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--moss);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pb-b{width:40px;height:40px;border:0;background:none;display:grid;place-items:center}.pb-b svg{width:18px;height:18px;fill:var(--ink);stroke:var(--ink);stroke-width:1.5}
.pb-pp{width:52px;height:52px;border-radius:50%;border:1px solid var(--ink);background:var(--olive);color:var(--paper);display:grid;place-items:center}.pb-pp svg{width:16px;height:16px;fill:currentColor}
.pb-tm{font-size:13px;color:var(--mut);font-variant-numeric:tabular-nums;white-space:nowrap}
.pb-br{border:0;background:none;padding:8px 2px;border-bottom:1px solid var(--ink);font-size:14px;white-space:nowrap}.pb-br[aria-pressed=true]{color:var(--clay);border-color:var(--clay)}
.pb-dl{font-size:13px;text-decoration:none;border-bottom:1px solid var(--ink)}
@media(max-width:860px){.pb-in{grid-template-columns:40px minmax(0,1fr) auto auto auto;gap:10px}.pb-st,.pb-tm,.pb-dl,.pb-b[data-pc=prev]{display:none}.pb-pp{width:46px;height:46px}.pb-br{font-size:13px}}
/* breathing orb */
.orb{position:fixed;right:24px;bottom:110px;z-index:39;width:120px;height:120px;display:grid;place-items:center;pointer-events:none;opacity:0;transition:opacity 1s}
.orb.on{opacity:1}.orb i{position:absolute;inset:0;border-radius:50%;border:1px solid var(--olive);background:rgba(183,189,156,.35);animation:breathe 10s ease-in-out infinite}
.orb span{position:relative;font:400 20px var(--serif);color:var(--olive)}@keyframes breathe{0%{transform:scale(.45)}40%{transform:scale(1)}100%{transform:scale(.45)}}
@media(max-width:860px){.orb{right:14px;bottom:86px;width:90px;height:90px}}
.toast{position:fixed;left:50%;bottom:100px;transform:translate(-50%,12px);background:var(--ink);color:var(--paper);padding:12px 18px;border-radius:2px;font-size:14px;opacity:0;pointer-events:none;transition:.5s var(--slow);z-index:60;max-width:calc(100% - 32px)}.toast.show{opacity:1;transform:translate(-50%,0)}
.nf{min-height:60vh}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}html{scroll-behavior:auto}.orb i{transform:scale(.8)}}
