/* Guided Chaos. Chrome seance: near-black, liquid chrome from the logo, a warm rose-champagne for emphasis.
   Fonts: Cormorant (display), Unbounded (prices, buttons, small labels), Onest (body). All cover Cyrillic. */

:root{
  --ink:#09080b;
  --ink-2:#100e13;
  --ink-3:#18151c;
  --ink-4:#231f28;
  --pearl:#efebf3;
  --pearl-2:#b9b2c2;
  --pearl-3:#8c8596;
  --rose:#e6bcab;
  --rose-2:#c9998a;
  --line:rgba(239,235,243,.12);
  --line-2:rgba(239,235,243,.24);
  --chrome:linear-gradient(180deg,#ffffff 0%,#dddce2 30%,#a3a1aa 50%,#ecebf0 68%,#bebcc5 100%);
  --chrome-edge:linear-gradient(150deg,#ffffff 0%,#6c6a74 34%,#e7e6ec 56%,#4e4c55 80%,#d9d8de 100%);
  --f-display:"Cormorant","Cormorant Garamond",Georgia,serif;
  --f-accent:"Unbounded","Onest",sans-serif;
  --f-body:"Onest","Segoe UI",sans-serif;
  --f-glyph:"Apple Symbols","Segoe UI Symbol","Noto Sans Symbols 2","Noto Sans Symbols",serif;
  --nav-h:72px;
  --gut:clamp(16px,4vw,48px);
  --max:1240px;
  --ease:cubic-bezier(.2,.7,.2,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 12px)}
html,body{overflow-x:clip}
body{margin:0;background:var(--ink);color:var(--pearl);font-family:var(--f-body);font-size:1.0625rem;line-height:1.65;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
img,video,canvas,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--pearl);outline-offset:3px;border-radius:2px}
::selection{background:var(--rose);color:var(--ink)}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:12px;top:-60px;z-index:200;background:var(--pearl);color:var(--ink);padding:10px 16px;border-radius:999px;font-size:.9rem}
.skip:focus{top:12px}

.wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
.section{padding:clamp(88px,12vw,168px) 0}
.section--tight{padding:clamp(64px,8vw,112px) 0}

/* ---------- type ---------- */
.display,.h2,.h3{font-family:var(--f-display);font-weight:300;letter-spacing:-.01em;margin:0;text-wrap:balance}
.display{font-size:clamp(3.1rem,8.4vw,7.6rem);line-height:.92}
.h2{font-size:clamp(2.5rem,5.6vw,4.9rem);line-height:.98}
.h3{font-size:clamp(1.7rem,2.6vw,2.3rem);line-height:1.08;font-weight:400}
.display em,.h2 em,.h3 em{font-style:italic;color:var(--rose)}
.lead{font-size:clamp(1.08rem,1.4vw,1.25rem);line-height:1.6;color:var(--pearl-2);max-width:36em}
.muted{color:var(--pearl-2)}
.small{font-size:.875rem;line-height:1.55;color:var(--pearl-3)}
.label{font-family:var(--f-accent);font-size:.7rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--pearl-2)}
p{margin:0 0 1em}
.prose p{max-width:34em}

/* ---------- buttons ---------- */
.btn{--h:54px;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.6em;height:var(--h);padding:0 30px;border-radius:999px;
  font-family:var(--f-accent);font-size:.78rem;font-weight:500;letter-spacing:.09em;text-transform:uppercase;text-decoration:none;cursor:pointer;
  border:0;white-space:nowrap;transition:transform .15s var(--ease),filter .18s var(--ease),background-color .18s,color .18s,border-color .18s}
.btn-chrome{background:var(--chrome);color:#0b0a0d;box-shadow:inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(0,0,0,.28);overflow:hidden;isolation:isolate}
.btn-chrome::after{content:"";position:absolute;inset:-40% auto -40% -30%;width:32%;transform:translateX(-120%) skewX(-18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.85),transparent);z-index:-1;transition:transform .6s var(--ease)}
.btn-chrome:hover{filter:brightness(1.06)}
.btn-chrome:hover::after{transform:translateX(420%) skewX(-18deg)}
.btn-chrome:active{transform:scale(.98)}
.btn-line{background:transparent;color:var(--pearl);border:1px solid var(--line-2)}
.btn-line:hover{border-color:var(--pearl);background:rgba(239,235,243,.04)}
.btn-sm{--h:42px;padding:0 20px;font-size:.68rem}
.btn-block{width:100%}
.link{color:var(--pearl);text-decoration:underline;text-decoration-color:var(--line-2);text-underline-offset:.3em;transition:text-decoration-color .16s}
.link:hover{text-decoration-color:var(--pearl)}

/* ---------- nav ---------- */
.nav{position:fixed;inset:0 0 auto 0;height:var(--nav-h);z-index:50;transition:background-color .25s,border-color .25s;border-bottom:1px solid transparent}
.nav.is-solid{background:rgba(9,8,11,.94);border-bottom-color:var(--line)}
.nav-in{height:100%;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;margin-right:auto}
.brand img{height:34px;width:auto}
.brand span{font-family:var(--f-accent);font-size:.72rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase}
.nav-links{display:flex;gap:26px;list-style:none;margin:0;padding:0}
.nav-links a{font-size:.92rem;color:var(--pearl-2);text-decoration:none;transition:color .16s}
.nav-links a:hover{color:var(--pearl)}
.lang{font-family:var(--f-accent);font-size:.66rem;letter-spacing:.14em;color:var(--pearl-2);text-decoration:none;border:1px solid var(--line-2);border-radius:999px;padding:8px 12px;transition:color .16s,border-color .16s}
.lang:hover{color:var(--pearl);border-color:var(--pearl)}
.menu-btn{display:none;width:44px;height:44px;border:1px solid var(--line-2);border-radius:999px;background:transparent;cursor:pointer;position:relative}
.menu-btn span{position:absolute;left:13px;right:13px;height:1px;background:var(--pearl);transition:transform .2s var(--ease),top .2s var(--ease)}
.menu-btn span:first-child{top:18px}.menu-btn span:last-child{top:25px}
.menu-open .menu-btn span:first-child{top:21px;transform:rotate(45deg)}
.menu-open .menu-btn span:last-child{top:21px;transform:rotate(-45deg)}
.mmenu{position:fixed;inset:var(--nav-h) 0 0 0;z-index:49;background:var(--ink);padding:32px var(--gut);display:none;flex-direction:column;gap:6px}
.menu-open .mmenu{display:flex}
.mmenu a:not(.btn){font-family:var(--f-display);font-size:2.3rem;line-height:1.3;text-decoration:none;font-weight:300}
.mmenu .btn{margin-top:24px}
@media(max-width:960px){
  .nav-links,.nav .nav-cta{display:none}
  .menu-btn{display:block}
  .brand span{display:none}
}

/* ---------- hero scroll film ---------- */
.hs{position:relative;height:320vh}
.hs-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;background:var(--ink)}
.hs-media,.hs-media canvas,.hs-media video,.hs-media img.hs-poster{position:absolute;inset:0;width:100%;height:100%}
.hs-media video,.hs-media img.hs-poster{object-fit:cover}
.hs-seq,.hs-loop{opacity:0}
.hs-logo{position:absolute;height:auto;opacity:0;pointer-events:none;will-change:opacity,transform}
.hs-flare{position:absolute;width:220px;height:220px;margin:-110px 0 0 -110px;pointer-events:none;opacity:0;
  background:radial-gradient(circle,rgba(255,255,255,.95) 0,rgba(255,255,255,.35) 6%,transparent 22%),
             linear-gradient(90deg,transparent 0,rgba(255,255,255,.7) 50%,transparent 100%) center/100% 1px no-repeat,
             linear-gradient(0deg,transparent 0,rgba(255,255,255,.55) 50%,transparent 100%) center/1px 70% no-repeat;mix-blend-mode:screen}
.hs-copy{position:absolute;z-index:3;left:0;right:0;top:0;bottom:0;display:flex;align-items:center;pointer-events:none}
.hs-copy .wrap{pointer-events:auto}
.hs-copy-in{max-width:620px}
.hs-kicker{display:block;margin-bottom:26px}
.hs-copy .display{margin-bottom:26px}
.hs-copy .lead{margin-bottom:34px;max-width:30em}
.hs-actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px 28px}
.hs-cue{position:absolute;z-index:3;left:50%;bottom:28px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--pearl-3);font-size:.8rem;letter-spacing:.04em;white-space:nowrap}
.hs-cue i{display:block;width:1px;height:46px;background:linear-gradient(var(--pearl-2),transparent);transform-origin:top;animation:cue 2.4s var(--ease) infinite}
@keyframes cue{0%{transform:scaleY(0);opacity:1}60%{transform:scaleY(1);opacity:1}100%{transform:scaleY(1);opacity:0}}
.hs-caps{position:absolute;z-index:3;left:0;right:0;bottom:12vh;text-align:center;pointer-events:none}
.hs-cap{position:absolute;left:0;right:0;bottom:0;margin:0;padding:0 var(--gut);font-family:var(--f-display);font-weight:300;font-style:italic;
  font-size:clamp(2rem,4.4vw,3.6rem);line-height:1.05;opacity:0;transform:translateY(14px)}
.hs-cap strong{font-weight:400;font-style:normal;color:var(--rose)}
.hs-scrim{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(9,8,11,.88) 0%,rgba(9,8,11,.55) 38%,rgba(9,8,11,0) 62%)}
@media(max-width:760px){
  .hs{height:300vh}
  .hs-copy{align-items:flex-start;padding-top:calc(var(--nav-h) + 4vh)}
  .hs-copy .display{font-size:clamp(2.7rem,12.4vw,4rem);margin-bottom:16px}
  .hs-kicker{margin-bottom:16px}
  .hs-copy .lead{font-size:1rem;margin-bottom:22px}
  .hs-actions{gap:14px 22px}
  .hs-scrim{background:linear-gradient(180deg,rgba(9,8,11,.92) 0%,rgba(9,8,11,.82) 50%,rgba(9,8,11,.55) 72%,rgba(9,8,11,0) 92%)}
  .hs-cue{bottom:18px}
  .hs-caps{bottom:16vh}
}
/* reduced motion or no JS: no pinning, the formed logo behind the copy */
.hs.is-static{height:auto}
.hs.is-static .hs-stage{position:relative;height:100svh}
.hs.is-static .hs-cue,.hs.is-static .hs-caps{display:none}

.hs-kicker{display:inline-flex!important;align-items:center;gap:12px}
.kav{width:38px;height:38px;border-radius:50%;object-fit:cover;border:1px solid var(--line-2)}
.hs-micro{margin:22px 0 0}
@media(max-width:760px){.kav{width:32px;height:32px}.hs-micro{margin-top:14px;font-size:.8rem}}

/* ---------- marquee ---------- */
.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;padding:22px 0;background:var(--ink)}
.marquee-track{display:flex;width:max-content;animation:mq 46s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee-track span{font-family:var(--f-display);font-style:italic;font-weight:300;font-size:clamp(1.6rem,2.6vw,2.3rem);padding:0 .6em;white-space:nowrap;color:var(--pearl-2)}
.marquee-track span:nth-child(odd){font-style:normal;color:var(--pearl)}
.marquee-track b{font-weight:400;color:var(--rose-2);align-self:center;font-family:var(--f-body);font-size:.9rem}
@keyframes mq{to{transform:translateX(-50%)}}

/* ---------- mirror (pain) ---------- */
.mirror-grid{display:grid;grid-template-columns:5fr 7fr;gap:clamp(40px,6vw,96px);align-items:start}
.mirror-head{position:sticky;top:calc(var(--nav-h) + 40px)}
.mirror-head .h2{margin-bottom:24px}
.mirror-list{list-style:none;margin:0;padding:0;counter-reset:m}
.mirror-list li{border-top:1px solid var(--line);padding:26px 0 26px 64px;position:relative;font-family:var(--f-display);font-size:clamp(1.45rem,2.3vw,2rem);line-height:1.22;font-weight:400}
.mirror-list li::before{counter-increment:m;content:counter(m,upper-roman);position:absolute;left:0;top:32px;font-family:var(--f-accent);font-size:.68rem;letter-spacing:.12em;color:var(--pearl-3)}
.mirror-list li:last-child{border-bottom:1px solid var(--line)}
.mirror-turn{margin-top:40px;font-size:1.12rem;color:var(--pearl-2);max-width:32em}
.mirror-turn strong{color:var(--pearl);font-weight:500}
@media(max-width:860px){
  .mirror-grid{grid-template-columns:1fr;gap:28px}
  .mirror-head{position:static}
  .mirror-list li{padding:16px 0 16px 40px;font-size:1.3rem}
  .mirror-list li::before{top:22px}
  .mirror-turn{margin-top:24px;font-size:1.02rem}
}

/* ---------- about ---------- */
.about{background:var(--ink)}
.about-grid{display:grid;grid-template-columns:5fr 6fr;gap:clamp(40px,7vw,120px);align-items:center}
.arch{position:relative;max-width:460px;justify-self:center;width:100%}
.arch-frame{position:relative;border-radius:999px 999px 6px 6px;overflow:hidden;aspect-ratio:3/4;background:var(--ink-3)}
.arch-frame img{width:100%;height:100%;object-fit:cover;object-position:50% 22%}
.arch::before{content:"";position:absolute;inset:-14px -14px 26px 14px;border-radius:999px 999px 6px 6px;padding:1px;background:var(--chrome-edge);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.55;pointer-events:none}
.arch figcaption{margin-top:18px;text-align:center}
.about-text .h2{margin-bottom:30px}
.about-text p{color:var(--pearl-2);max-width:33em}
.about-text p.strong{color:var(--pearl);font-size:1.15rem}
.pull{font-family:var(--f-display);font-style:italic;font-size:clamp(1.6rem,2.6vw,2.2rem);line-height:1.18;color:var(--pearl);margin:34px 0;max-width:20em;font-weight:300}
.sign{font-family:var(--f-display);font-style:italic;font-size:2.6rem;line-height:1;margin-top:26px;color:var(--rose)}
@media(max-width:860px){
  .about-grid{grid-template-columns:1fr;gap:36px}
  .arch{max-width:300px}
}

/* ---------- manifesto ---------- */
.manifesto-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,96px);align-items:end}
.manifesto .h2{margin-bottom:28px}
.manifesto .h2 small{display:block;font-size:.42em;font-style:italic;color:var(--pearl-3);margin-top:14px;letter-spacing:0}
.values{list-style:none;margin:0;padding:0;font-family:var(--f-display);font-weight:300;font-size:clamp(2.4rem,5.4vw,4.8rem);line-height:1.02}
.values li{transition:color .2s}
.values li:nth-child(even){font-style:italic;color:var(--pearl-2);padding-left:.8em}
.values li:hover{color:var(--rose)}
.belief{margin-top:clamp(56px,7vw,96px);padding-top:36px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,80px)}
.belief p{font-family:var(--f-display);font-size:clamp(1.4rem,2.2vw,1.9rem);line-height:1.25;margin:0;font-weight:400}
.belief p+p{font-family:var(--f-body);font-size:1rem;line-height:1.65;color:var(--pearl-2)}
@media(max-width:860px){
  .manifesto-grid,.belief{grid-template-columns:1fr}
  .values{font-size:2.5rem}
}

/* ---------- method ---------- */
.method{background:var(--ink)}
.method-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:clamp(48px,6vw,80px)}
.method-head .lead{margin:0;max-width:26em}
.steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);list-style:none;margin:0;padding:0}
.step{padding:34px clamp(20px,3vw,40px) 10px 0}
.step+.step{border-left:1px solid var(--line);padding-left:clamp(20px,3vw,40px)}
.step-n{font-family:var(--f-display);font-style:italic;font-weight:300;font-size:clamp(4rem,7vw,6.4rem);line-height:.9;color:var(--rose);display:block;margin-bottom:18px}
.step h3{font-family:var(--f-accent);font-size:.82rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px}
.step p{color:var(--pearl-2);margin:0;max-width:22em}
.compare{margin-top:clamp(64px,8vw,112px)}
.compare .h3{margin-bottom:26px}
.ctable{width:100%;border-collapse:collapse;table-layout:fixed}
.ctable th,.ctable td{text-align:left;vertical-align:top;padding:18px 18px 18px 0;border-bottom:1px solid var(--line);font-size:1rem;line-height:1.45}
.ctable thead th{font-family:var(--f-accent);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--pearl-3);font-weight:500;padding-bottom:14px}
.ctable thead th:last-child{color:var(--pearl)}
.ctable td:first-child{color:var(--pearl-3);font-size:.9rem}
.ctable td:nth-child(2){color:var(--pearl-3)}
.ctable td:last-child{color:var(--pearl)}
.ctable col.c1{width:22%}
@media(max-width:860px){
  .method-head{flex-direction:column;align-items:start;gap:16px;margin-bottom:28px}
  .steps{grid-template-columns:1fr;border-top:0}
  .step,.step+.step{border-left:0;padding:16px 0 16px 72px;border-top:1px solid var(--line);position:relative}
  .step-n{position:absolute;left:0;top:10px;font-size:3.4rem;margin:0}
  .step h3{margin-bottom:6px}
  .step p{font-size:.98rem}
  .ctable th,.ctable td{padding:12px 10px 12px 0;font-size:.88rem}
  .ctable td:first-child{font-size:.8rem}
  .ctable col.c1{width:26%}
}

/* ---------- offers ---------- */
.offers-head{display:grid;grid-template-columns:7fr 5fr;gap:40px;align-items:end;margin-bottom:clamp(44px,6vw,72px)}
.offers-head .lead{margin:0}
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
.tier{position:relative;display:flex;flex-direction:column;padding:34px 30px 30px;border:1px solid var(--line);border-radius:4px;background:var(--ink)}
.tier.is-featured{border-color:transparent;background:linear-gradient(var(--ink-2),var(--ink-2)) padding-box,var(--chrome-edge) border-box}
.tier-flag{position:absolute;top:-12px;left:30px;background:var(--pearl);color:var(--ink);font-family:var(--f-accent);font-size:.62rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;padding:6px 12px;border-radius:999px}
.tier-for{font-size:.86rem;line-height:1.4;color:var(--rose);margin:0 0 14px}
.tier-guar{font-size:.84rem;line-height:1.45;color:var(--pearl-2);font-style:italic;margin:0 0 18px}
.offers-help{margin:28px 0 0;color:var(--pearl-2);font-size:.98rem}
.tier-name{font-family:var(--f-display);font-size:2.3rem;line-height:1;font-weight:400;margin:0 0 6px}
.tier-name em{color:var(--rose)}
.tier-en{display:block;font-family:var(--f-accent);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--pearl-3);margin-bottom:18px}
.tier-promise{color:var(--pearl-2);margin:0 0 24px;min-height:3.3em}
.price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-bottom:6px}
.price b{white-space:nowrap}
.price b{font-family:var(--f-accent);font-weight:500;font-size:2.4rem;letter-spacing:-.02em;line-height:1}
.price span{font-size:.86rem;line-height:1.3;color:var(--pearl-3)}
.price s{color:var(--pearl-3);font-size:1rem}
.tier-meta{font-size:.85rem;color:var(--pearl-3);margin-bottom:24px}
.tier ul{list-style:none;margin:0 0 30px;padding:0;flex:1}
.tier li{position:relative;padding:9px 0 9px 26px;border-top:1px solid var(--line);font-size:.96rem;line-height:1.45}
.tier li::before{content:"";position:absolute;left:2px;top:15px;width:10px;height:6px;border-left:1px solid var(--rose);border-bottom:1px solid var(--rose);transform:rotate(-45deg)}
.tier li.bonus{color:var(--pearl)}
.tier li.bonus em{font-style:normal;font-family:var(--f-accent);font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rose);margin-right:6px}
.tier .btn{width:100%}
.tier-note{margin-top:14px;font-size:.82rem;color:var(--pearl-3);text-align:center}
.tier-dots{display:none}
.tier-more{display:none}
.entry{margin-top:20px;display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;padding:24px 30px;border:1px solid var(--line);border-radius:4px}
.entry .tier-name{font-size:1.8rem;margin:0}
.entry p{margin:0;color:var(--pearl-2)}
.entry .price b{font-size:1.7rem}
.entry-r{display:flex;align-items:center;gap:22px}
.trust-row{display:grid;grid-template-columns:auto 1fr;gap:clamp(28px,5vw,72px);align-items:center;margin-top:clamp(56px,7vw,96px);padding:clamp(28px,4vw,48px);background:var(--ink-2);border-radius:4px}
.seal{position:relative;width:150px;height:150px;flex:none}
.seal svg{width:100%;height:100%;animation:spin 40s linear infinite}
.seal text{font-family:var(--f-accent);font-size:9.6px;letter-spacing:2.6px;fill:var(--pearl-2);text-transform:uppercase}
.seal img{position:absolute;left:50%;top:50%;width:70px;transform:translate(-50%,-50%)}
@keyframes spin{to{transform:rotate(360deg)}}
.trust-row .h3{margin-bottom:12px}
.trust-row p{color:var(--pearl-2);margin:0 0 .6em;max-width:44em}
.scarcity{display:flex;align-items:center;gap:12px;margin-top:14px;font-size:.92rem;color:var(--pearl)}
.scarcity i{width:8px;height:8px;border-radius:50%;background:var(--rose);flex:none}
.circle{margin-top:20px;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;padding:28px 30px;border:1px dashed var(--line-2);border-radius:4px}
.circle .h3{margin-bottom:8px}
.wait-form{display:grid;gap:10px;min-width:300px}
.wait-form .err{min-height:0}
.circle p{margin:0;color:var(--pearl-2);max-width:42em}
@media(max-width:1020px){
  .offers-head{grid-template-columns:1fr;gap:16px;margin-bottom:36px}
  .tiers{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:0 calc(-1 * var(--gut));padding:14px var(--gut) 6px;scrollbar-width:none}
  .tiers::-webkit-scrollbar{display:none}
  .tier{flex:0 0 min(86vw,360px);scroll-snap-align:center;padding:28px 22px 22px}
  .tier-promise{min-height:0;margin-bottom:16px}
  .tier ul{margin-bottom:20px}
  .tier li{padding:7px 0 7px 24px;font-size:.92rem}
  .tier li::before{top:13px}
  .tier.is-short li:nth-child(n+4){display:none}
  .tier-more{display:block!important;background:none;border:0;color:var(--pearl);text-decoration:underline;text-decoration-color:var(--line-2);text-underline-offset:.3em;font-size:.88rem;padding:6px 0 14px;cursor:pointer;margin-top:-14px}
  .tier-dots{display:flex;justify-content:center;gap:8px;margin-top:16px}
  .tier-dots button{width:28px;height:28px;border:0;background:transparent;padding:0;cursor:pointer;display:grid;place-items:center}
  .tier-dots button::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--line-2);transition:background .2s,transform .2s}
  .tier-dots button[aria-current="true"]::before{background:var(--pearl);transform:scale(1.25)}
  .entry{grid-template-columns:1fr;gap:12px;padding:20px 22px}
  .entry-r{justify-content:space-between;flex-wrap:wrap;gap:14px}
  .entry-r .btn{flex:1 1 100%}
  .trust-row{grid-template-columns:1fr;gap:18px;padding:24px 22px}
  .seal{width:104px;height:104px}
  .seal img{width:48px}
  .circle{grid-template-columns:1fr;gap:16px;padding:22px}
  .wait-form{min-width:0}
}

/* ---------- ritual (free tools) ---------- */
.ritual-head{text-align:center;max-width:720px;margin:0 auto clamp(36px,5vw,56px)}
.ritual-head .h2{margin-bottom:18px}
.ritual-head .lead{margin:0 auto}
.tabs{display:flex;justify-content:center;gap:8px;margin-bottom:clamp(36px,5vw,56px)}
.tab{height:46px;padding:0 22px;border-radius:999px;border:1px solid var(--line-2);background:transparent;cursor:pointer;font-family:var(--f-accent);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--pearl-2);white-space:nowrap;transition:background .18s,color .18s,border-color .18s}
.tab:hover{color:var(--pearl);border-color:var(--pearl)}
.tab[aria-selected="true"]{background:var(--pearl);color:var(--ink);border-color:var(--pearl)}
.panel[hidden]{display:none}
.ritual-stage{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,80px);align-items:center;min-height:440px}
.ritual-out{max-width:30em}
.ritual-out .h3{margin-bottom:14px}
.ritual-out .keys{font-family:var(--f-accent);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--rose);margin-bottom:18px;display:block}
.ritual-out p{color:var(--pearl-2)}
.ritual-out .msg{font-family:var(--f-display);font-size:clamp(1.5rem,2.3vw,1.95rem);line-height:1.25;color:var(--pearl);font-weight:400}
.ritual-out .after{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.ritual-out .after p{font-size:.98rem}
.ritual-note{text-align:center;margin-top:36px}

/* the fan of card backs */
.fan{position:relative;height:420px}
.fan .tcard{position:absolute;left:50%;top:50%;width:190px;margin:-163px 0 0 -95px;cursor:pointer;transition:transform .5s var(--ease)}
.fan .tcard:hover{z-index:20}
.fan.is-drawn .tcard{pointer-events:none}
.fan-hint{position:absolute;left:0;right:0;bottom:-6px;text-align:center}

/* tarot card */
.tcard{aspect-ratio:7/12;perspective:1200px;border:0;padding:0;background:none;display:block}
.tcard-in{display:block;position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .9s var(--ease)}
.tcard.is-flipped .tcard-in{transform:rotateY(180deg)}
.tcard-back,.tcard-face{position:absolute;inset:0;border-radius:14px;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}
.tcard-back{background:radial-gradient(120% 80% at 50% 0%,#221e28 0%,#141118 60%);border:1px solid rgba(239,235,243,.2);box-shadow:0 18px 40px -18px rgba(0,0,0,.9)}
.tcard-back::before{content:"";position:absolute;inset:9px;border-radius:9px;border:1px solid rgba(239,235,243,.22)}
.tcard-back::after{content:"";position:absolute;left:50%;top:50%;width:62%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(239,235,243,.14)}
.tcard-back img{position:absolute;left:50%;top:50%;width:58%;transform:translate(-50%,-50%)}
.tcard-face{transform:rotateY(180deg);background:var(--pearl);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:18px 14px 20px;text-align:center}
.tcard-face::before{content:"";position:absolute;inset:8px;border-radius:9px;border:1px solid rgba(9,8,11,.25);pointer-events:none}
.tf-num{font-family:var(--f-display);font-style:italic;font-weight:400;font-size:1.5rem;line-height:1}
.tf-glyph{font-family:var(--f-glyph);font-size:3.6rem;line-height:1;color:#8a5a4b}
.tf-name{font-family:var(--f-display);font-size:1.2rem;line-height:1.1;font-weight:500}
.tcard.big{width:min(240px,62vw);margin:0 auto}
.tcard.big .tf-num{font-size:1.9rem}
.tcard.big .tf-glyph{font-size:4.6rem}
.tcard.big .tf-name{font-size:1.45rem}

/* soul card form */
.soul-form{display:flex;flex-direction:column;gap:14px;max-width:420px}
.soul-form label{font-size:.9rem;color:var(--pearl-2)}
.date-row{display:grid;grid-template-columns:1fr 1.4fr 1.2fr;gap:10px}
.field{height:54px;width:100%;border-radius:4px;border:1px solid var(--line-2);background:var(--ink-2);color:var(--pearl);padding:0 14px;font:inherit;font-size:1rem;transition:border-color .16s}
.field:focus{outline:none;border-color:var(--pearl)}
select.field{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--pearl-2) 50%),linear-gradient(135deg,var(--pearl-2) 50%,transparent 50%);
  background-position:calc(100% - 18px) 24px,calc(100% - 13px) 24px;background-size:5px 5px;background-repeat:no-repeat;padding-right:32px}
textarea.field{height:auto;min-height:110px;padding:12px 14px;resize:vertical;line-height:1.5}
.err{color:var(--rose);font-size:.85rem;min-height:1.2em;margin:0}
.soul-cards{display:flex;justify-content:center;gap:clamp(14px,3vw,32px)}
.soul-cards .tcard{width:min(200px,40vw)}
.soul-cards .tcard.solo{width:min(240px,62vw)}
.soul-cap{text-align:center;margin-top:12px}
@media(max-width:860px){
  .ritual-stage{grid-template-columns:1fr;gap:28px;min-height:0}
  .tab{padding:0 14px;font-size:.6rem;letter-spacing:.08em}
  .fan{height:300px}
  .fan .tcard{width:128px;margin:-110px 0 0 -64px}
  .ritual-out{max-width:none}
}

/* ---------- voices (testimonials) ---------- */
.voices-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:clamp(36px,5vw,56px)}
.voice{padding:30px;border:1px solid var(--line);border-radius:4px;display:flex;flex-direction:column;gap:20px;margin:0}
.voice blockquote{margin:0;font-family:var(--f-display);font-size:1.45rem;line-height:1.25;font-weight:400}
.voice figcaption{font-size:.88rem;color:var(--pearl-3);margin-top:auto}
.voice.is-placeholder{border-style:dashed}
.voice.is-placeholder blockquote{color:var(--pearl-3);font-style:italic}
.ph{display:inline-block;font-family:var(--f-accent);font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);background:var(--rose);padding:4px 8px;border-radius:999px}
@media(max-width:860px){
  .voices-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin:28px calc(-1 * var(--gut)) 0;padding:0 var(--gut);gap:12px;scrollbar-width:none}
  .voices-grid::-webkit-scrollbar{display:none}
  .voice{flex:0 0 82vw;scroll-snap-align:center;padding:22px}
  .voice blockquote{font-size:1.25rem}
}

/* ---------- faq ---------- */
.faq{background:var(--ink-2)}
.faq-grid{display:grid;grid-template-columns:4fr 7fr;gap:clamp(40px,6vw,96px);align-items:start}
.faq-head{position:sticky;top:calc(var(--nav-h) + 40px)}
.faq-head .h2{margin-bottom:22px}
.qa{border-top:1px solid var(--line)}
.qa:last-child{border-bottom:1px solid var(--line)}
.qa summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:24px;align-items:center;padding:22px 0;font-family:var(--f-display);font-size:clamp(1.3rem,1.9vw,1.6rem);line-height:1.2;font-weight:400}
.qa summary::-webkit-details-marker{display:none}
.qa summary::after{content:"";flex:none;width:12px;height:12px;border-right:1px solid var(--pearl-2);border-bottom:1px solid var(--pearl-2);transform:rotate(45deg) translateY(-4px);transition:transform .2s var(--ease)}
.qa[open] summary::after{transform:rotate(-135deg) translateY(-2px)}
.qa summary:hover{color:var(--rose)}
.qa div{padding:0 0 24px;color:var(--pearl-2);max-width:40em}
.qa div p:last-child{margin:0}
@media(max-width:860px){
  .faq-grid{grid-template-columns:1fr;gap:24px}
  .faq-head{position:static}
  .qa summary{padding:16px 0;font-size:1.22rem}
}

/* ---------- final ---------- */
.final{text-align:center;position:relative;overflow:hidden}
.final-logo{width:min(420px,72vw);margin:0 auto 40px;opacity:.95}
.final .h2{margin-bottom:22px}
.final .lead{margin:0 auto 36px}
.final-actions{display:flex;flex-direction:column;align-items:center;gap:20px}

/* ---------- footer ---------- */
.foot{border-top:1px solid var(--line);padding:56px 0 calc(40px + env(safe-area-inset-bottom))}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px}
.foot img{height:42px;width:auto;margin-bottom:18px}
.foot h4{font-family:var(--f-accent);font-size:.66rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--pearl-3);margin:0 0 14px}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.foot a{color:var(--pearl-2);text-decoration:none;font-size:.94rem}
.foot a:hover{color:var(--pearl)}
.foot-legal{margin-top:44px;padding-top:24px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 32px}
.foot-legal p{margin:0;max-width:60em}
@media(max-width:860px){
  .foot-grid{grid-template-columns:1fr 1fr}
  .foot-grid>div:first-child{grid-column:1/-1}
  .foot{padding-bottom:calc(110px + env(safe-area-inset-bottom))}
}

/* ---------- mobile bottom bar ---------- */
.mbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:none;gap:10px;align-items:center;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:rgba(9,8,11,.96);border-top:1px solid var(--line);
  transform:translateY(110%);transition:transform .3s var(--ease)}
.mbar.is-on{transform:none}
.mbar .btn{flex:1}
.mbar-txt{font-size:.8rem;line-height:1.3;color:var(--pearl-2);flex:0 1 auto}
.mbar-txt b{display:block;color:var(--pearl);font-weight:500}
@media(max-width:860px){.mbar{display:flex}}

/* ---------- booking dialog ---------- */
.book{width:min(640px,calc(100vw - 24px));max-height:calc(100svh - 24px);padding:0;border:1px solid var(--line-2);border-radius:6px;background:var(--ink-2);color:var(--pearl);overflow:auto;overscroll-behavior:contain}
.book::backdrop{background:rgba(5,4,7,.82)}
.book-in{padding:clamp(24px,4vw,40px)}
.book-x{position:absolute;top:14px;right:14px;width:44px;height:44px;border-radius:50%;border:1px solid var(--line-2);background:var(--ink-2);cursor:pointer;display:grid;place-items:center}
.book-x::before,.book-x::after{content:"";position:absolute;width:14px;height:1px;background:var(--pearl)}
.book-x::before{transform:rotate(45deg)}.book-x::after{transform:rotate(-45deg)}
.book-x:hover{border-color:var(--pearl)}
.book .h3{margin:0 50px 6px 0}
.book form{display:grid;gap:16px;margin-top:22px}
.book .row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fl{display:grid;gap:6px}
.fl>span{font-size:.86rem;color:var(--pearl-2)}
.fl>span i{font-style:normal;color:var(--pearl-3)}
.chips{display:flex;flex-wrap:wrap;gap:8px;border:0;padding:0;margin:0}
.chips legend{font-size:.86rem;color:var(--pearl-2);margin-bottom:8px;padding:0}
.chips label{position:relative}
.chips input{position:absolute;opacity:0;inset:0;cursor:pointer}
.chips span{display:inline-flex;align-items:center;height:42px;padding:0 16px;border-radius:999px;border:1px solid var(--line-2);font-size:.9rem;color:var(--pearl-2);transition:background .16s,color .16s,border-color .16s}
.chips input:checked+span{background:var(--pearl);color:var(--ink);border-color:var(--pearl)}
.chips input:focus-visible+span{outline:2px solid var(--pearl);outline-offset:2px}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:.86rem;color:var(--pearl-2);line-height:1.45}
.consent input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--pearl);flex:none}
.book-sum{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:4px;font-size:.92rem}
.book-sum b{font-family:var(--f-accent);font-weight:500}
.book .btn[disabled]{opacity:.6;cursor:progress}
.book-done{text-align:left}
.book-done .h3{margin-bottom:14px}
.book-done ol{padding-left:1.2em;color:var(--pearl-2);margin:16px 0 26px}
.book-done li{margin-bottom:6px}
@media(max-width:560px){.book .row2{grid-template-columns:1fr}}

/* ---------- v2 (Tori's notes, 2026-11-10) ---------- */
.different,.manifesto,.index,.archive{background:var(--ink-2)}
.hs-sub{font-family:var(--f-display);font-style:italic;font-weight:300;font-size:clamp(1.5rem,2.4vw,2.1rem);line-height:1.15;color:var(--rose);margin:-8px 0 18px}
@media(max-width:760px){.hs-sub{font-size:1.35rem;margin:-4px 0 10px}.hs-copy .lead{font-size:.95rem;line-height:1.5}}

/* different */
.diff-grid{display:grid;grid-template-columns:5fr 6fr;gap:clamp(32px,6vw,96px);align-items:start;margin-bottom:clamp(48px,6vw,80px)}
.diff-lead{font-family:var(--f-display);font-size:clamp(1.5rem,2.3vw,2rem);line-height:1.25;color:var(--pearl);font-weight:400}
.different .prose p:not(.diff-lead){color:var(--pearl-2)}
.different .compare{margin-top:0}
@media(max-width:860px){.diff-grid{grid-template-columns:1fr;gap:20px;margin-bottom:40px}}

/* worked example inside the method */
.example{margin-top:clamp(64px,8vw,112px);border:1px solid var(--line);border-radius:4px;padding:clamp(24px,4vw,48px)}
.example-head{max-width:46em;margin-bottom:clamp(28px,4vw,44px)}
.example-head .h3{margin:12px 0 18px}
.example-q{margin:0;font-family:var(--f-display);font-style:italic;font-weight:300;font-size:clamp(1.6rem,2.8vw,2.4rem);line-height:1.15;color:var(--pearl)}
.example-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,40px)}
.example-steps>li{border-top:1px solid var(--line-2);padding-top:20px}
.example-n{display:block;font-family:var(--f-accent);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--rose);margin-bottom:14px}
.example-lead{color:var(--pearl-3);font-size:.9rem;margin-bottom:10px}
.example-steps ul{list-style:none;margin:0;padding:0}
.example-steps ul li{padding:8px 0;border-bottom:1px solid var(--line);color:var(--pearl-2);font-size:.96rem;line-height:1.5}
.example-steps ul li b{color:var(--pearl);font-weight:500}
.example-cards li b{display:block;font-family:var(--f-display);font-size:1.3rem;font-weight:500;margin-bottom:2px}
.example-read{margin:16px 0 0;color:var(--pearl);font-size:.98rem}
@media(max-width:860px){.example-steps{grid-template-columns:1fr}}

/* Chaos Index */
.index-box{max-width:820px;margin:0 auto;text-align:center}
.index-start .h2{margin:14px 0 20px}
.index-start .lead{margin:0 auto 30px}
.index-start .small{margin-top:16px}
.index-q{text-align:left}
.index-progress{height:2px;background:var(--line);margin-bottom:24px;border-radius:2px;overflow:hidden}
.index-progress i{display:block;height:100%;background:var(--rose);transition:width .4s var(--ease)}
.index-title{margin:10px 0 26px;outline:none}
.index-answers{display:grid;gap:10px}
.index-a{text-align:left;width:100%;min-height:64px;padding:16px 22px;border:1px solid var(--line-2);border-radius:4px;background:var(--ink);color:var(--pearl);font:inherit;font-size:1.04rem;line-height:1.4;cursor:pointer;transition:border-color .16s,background .16s,transform .15s var(--ease)}
.index-a:hover{border-color:var(--pearl);background:var(--ink-3)}
.index-a:active{transform:scale(.99)}
.index-back{margin-top:18px;background:none;border:0;padding:6px 0;cursor:pointer;font-size:.9rem;color:var(--pearl-2)}
.index-result{text-align:left;animation:rise .5s var(--ease)}
.index-result .h2{margin:14px 0 20px;font-size:clamp(2.2rem,4.6vw,3.8rem);outline:none}
.index-rec{margin:26px 0 22px;color:var(--pearl);font-size:1.05rem;max-width:40em}
.index-actions{display:flex;flex-wrap:wrap;gap:12px}
.index-more{margin:18px 0 10px;color:var(--pearl-3)}
.index-more .link{background:none;border:0;padding:0;cursor:pointer;font:inherit}
@keyframes rise{from{opacity:0;transform:translateY(12px)}}

/* question box (daily card, soul card, quiz, gift) */
.qbox{margin:20px 0 6px;padding:16px 20px;border-left:1px solid var(--rose);background:rgba(230,188,171,.05)}
.qbox .label{display:block;color:var(--rose);margin-bottom:8px}
.qbox .qtext,.qtext{font-family:var(--f-display);font-style:italic;font-size:clamp(1.3rem,2vw,1.6rem);line-height:1.25;color:var(--pearl);margin:0}
.share-btn{margin-top:18px}
.pair{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}
.pair>.label{display:block;margin-bottom:10px}
.pair-t{font-family:var(--f-display);font-size:clamp(1.45rem,2.2vw,1.85rem);line-height:1.2;color:var(--pearl)!important;margin-bottom:10px}
.soul-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;margin-top:22px}
.soul-actions .link{background:none;border:0;padding:0;cursor:pointer;font-size:.9rem}
.upsell{margin-top:26px;padding:22px 24px;border:1px dashed var(--line-2);border-radius:4px}
.upsell .label{color:var(--rose)}
.upsell h4{font-family:var(--f-display);font-size:1.7rem;font-weight:400;margin:6px 0 8px}
.upsell p{font-size:.95rem;margin-bottom:16px}
.ritual-gift{text-align:center;margin-top:40px;color:var(--pearl-2)}
.ritual-gift .link{background:none;border:0;padding:0;cursor:pointer;font:inherit;color:var(--rose);text-decoration-color:rgba(230,188,171,.4)}
#soulText p{color:var(--pearl-2)}
#soulText p strong{color:var(--pearl);font-weight:500}

/* offers: who it is not for, archetype list */
.notfor{margin-top:20px;display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center;padding:24px 30px;border-left:1px solid var(--rose);background:var(--ink-2)}
.notfor .h3{margin:0;white-space:nowrap}
.notfor p{margin:0;color:var(--pearl-2);max-width:52em}
.entry-list{list-style:none;margin:0 0 10px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 22px}
.entry-list li{position:relative;padding-left:22px;font-size:.94rem;color:var(--pearl);line-height:1.4}
.entry-list li::before{content:"";position:absolute;left:2px;top:7px;width:9px;height:5px;border-left:1px solid var(--rose);border-bottom:1px solid var(--rose);transform:rotate(-45deg)}
.entry .small{margin:0}
.wait-note{margin:0}
@media(max-width:1020px){.notfor{grid-template-columns:1fr;gap:10px;padding:20px 22px}.entry-list{grid-template-columns:1fr}}

/* archive */
.archive-head{max-width:760px;margin-bottom:clamp(36px,5vw,56px)}
.archive-head .h2{margin:14px 0 20px}
.quotes{position:relative;margin:0 0 clamp(44px,6vw,72px);padding:clamp(28px,4vw,48px) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:210px;display:grid}
.quotes blockquote{grid-area:1/1;margin:0;font-family:var(--f-display);font-style:italic;font-weight:300;font-size:clamp(1.8rem,3.6vw,3.1rem);line-height:1.14;max-width:22em;opacity:0;transform:translateY(8px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.quotes blockquote.is-on{opacity:1;transform:none}
.quotes figcaption{grid-area:2/1;margin-top:18px}
.files{display:grid;gap:12px}
.file{border:1px solid var(--line);border-radius:4px;background:var(--ink);transition:border-color .2s}
.file[open]{border-color:var(--line-2)}
.file summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:220px 1fr auto;gap:24px;align-items:center;padding:24px 28px}
.file summary::-webkit-details-marker{display:none}
.file-no{font-family:var(--f-accent);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--pearl-3)}
.file-q{font-family:var(--f-display);font-size:clamp(1.3rem,2vw,1.65rem);line-height:1.22}
.file-open{font-family:var(--f-accent);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rose);white-space:nowrap}
.file[open] .file-open{opacity:.4}
.file summary:hover .file-q{color:var(--rose)}
.file-note{padding:0 28px 26px calc(220px + 52px);animation:rise .4s var(--ease)}
.file-note .label{display:block;color:var(--rose);margin-bottom:10px}
.file-note p{color:var(--pearl-2);max-width:40em}
.file-ask{font-family:var(--f-display);font-style:italic;font-size:1.45rem;line-height:1.25;color:var(--pearl)!important}
.files-note{margin:16px 0 0}
.tell{margin-top:clamp(44px,6vw,72px);display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;padding:clamp(24px,4vw,40px);border:1px solid var(--line);border-radius:4px;background:var(--ink)}
.tell .h3{margin-bottom:10px}
.tell p{margin:0;color:var(--pearl-2)}
@media(max-width:860px){
  .file summary{grid-template-columns:1fr;gap:8px;padding:20px}
  .file-note{padding:0 20px 22px}
  .tell{grid-template-columns:1fr}
  .quotes{min-height:240px}
}

/* gift + story dialogs */
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.gift .book-in{padding-top:clamp(28px,4vw,40px)}
.gift .h3{margin:10px 50px 10px 0}
.gift-intro{margin:0}
.gift-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(10px,2.4vw,22px);margin:26px 0 22px}
.gift-slot{display:flex;flex-direction:column;align-items:center;gap:10px}
.gift-slot .tcard{width:100%;max-width:150px;cursor:pointer;transition:transform .25s var(--ease)}
.gift-slot .tcard:not(.is-flipped):hover{transform:translateY(-8px)}
.gift-slot .tcard:not(.is-flipped){animation:breathe 3s ease-in-out infinite}
.gift-slot:nth-child(2) .tcard:not(.is-flipped){animation-delay:.5s}
.gift-slot:nth-child(3) .tcard:not(.is-flipped){animation-delay:1s}
@keyframes breathe{50%{box-shadow:0 0 0 1px rgba(230,188,171,.0),0 0 36px -6px rgba(230,188,171,.45);border-radius:14px}}
.gift-slot .tf-glyph{font-size:2.4rem}
.gift-slot .tf-name{font-size:.95rem}
.gift-slot .tf-num{font-size:1.1rem}
.gift-cards.is-done{margin:16px 0 14px;justify-content:start;grid-template-columns:repeat(3,auto);gap:14px}
.gift-cards.is-done .tcard{cursor:default;width:86px;max-width:86px}
.gift-cards.is-done .tf-glyph{font-size:1.5rem}
.gift-cards.is-done .tf-name{font-size:.62rem;line-height:1.1}
.gift-cards.is-done .tf-num{font-size:.8rem}
.gift-cards.is-done .tcard-face{padding:8px 4px 10px}
.gift-cards.is-done .label{font-size:.56rem}
#p-soul .ritual-stage{align-items:start}
#p-soul .ritual-stage>div:first-child{position:sticky;top:calc(var(--nav-h) + 32px)}
@media(max-width:860px){#p-soul .ritual-stage>div:first-child{position:static}}
.gift-names{font-family:var(--f-display);font-size:1.5rem;line-height:1.2;color:var(--pearl);margin-bottom:10px}
.gift form{margin-top:16px}
.gift-pos{padding:16px 0;border-top:1px solid var(--line)}
.gift-pos .label{color:var(--rose)}
.gift-pos h4{font-family:var(--f-display);font-size:1.6rem;font-weight:400;margin:6px 0 6px}
.gift-pos p{margin:0;color:var(--pearl-2)}
.gift-pos .qtext{display:block;font-size:1.35rem}
.gift-code{margin:10px 0 18px;padding:16px 18px;border:1px dashed var(--rose-2);border-radius:4px}
.gift-code p{margin:6px 0 0;color:var(--pearl-2);font-size:.94rem}
.gift-code b{font-family:var(--f-accent);font-weight:500;color:var(--pearl);letter-spacing:.08em}
.gift-next{margin:14px 0 0;text-align:center}
.gift-slot.is-off{opacity:.18;pointer-events:none;transition:opacity .5s}
.gift-prize{display:flex;align-items:center;gap:16px;margin:12px 0 14px;padding:14px 18px;border:1px solid var(--rose-2);border-radius:4px;background:rgba(230,188,171,.06)}
.gift-prize b{font-family:var(--f-accent);font-weight:500;font-size:2.2rem;line-height:1;color:var(--rose)}
.gift-prize span{color:var(--pearl);font-size:.98rem;line-height:1.35}
.gift-names em{display:block;font-size:.8em;color:var(--pearl-2);margin-top:6px}
.index-gate{margin-top:24px;padding:24px;border:1px solid var(--line-2);border-radius:4px;background:var(--ink)}
.index-hook{color:var(--pearl);font-size:1.04rem;margin-bottom:16px}
.index-gate form{display:grid;gap:14px}
.index-gate .row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.index-trio{margin:28px 0 8px}
.index-trio h4{font-family:var(--f-display);font-size:1.8rem;font-weight:400;margin:0 0 4px}
.trio-cards{grid-template-columns:repeat(3,minmax(0,150px));justify-content:start;margin:18px 0 8px}
.trio-read{display:flex;flex-direction:column}
@media(max-width:560px){.index-gate{padding:18px}.index-gate .row2{grid-template-columns:1fr}.trio-cards{grid-template-columns:repeat(3,1fr)}}
.story-crisis{margin:0;padding:10px 14px;border-left:1px solid var(--rose);background:rgba(230,188,171,.05)}
.consent i{font-style:normal;color:var(--pearl-3)}
@media(max-width:560px){.gift-slot .tf-glyph{font-size:1.8rem}.gift-slot .tf-name{font-size:.68rem;line-height:1.1}.gift-slot .tcard-face{padding:10px 4px 12px}.gift-names{font-size:1.25rem}.gift-cards{margin:20px 0 16px}}

/* gift popup v2: one screen, no scrolling; gift card face instead of a tarot card */
.book.gift{width:min(540px,calc(100vw - 24px));max-height:calc(100svh - 16px)}
.gift .book-in{padding:22px 26px 22px}
.gift .h3{font-size:clamp(1.4rem,2.3vw,1.85rem);margin:6px 46px 4px 0}
.gift-intro{font-size:.92rem}
#giftCards{grid-template-columns:repeat(3,minmax(0,112px));justify-content:center;gap:14px;margin:16px 0 12px}
#giftCards.is-done{grid-template-columns:repeat(3,auto);justify-content:center;margin:10px 0 12px}
#giftCards.is-done .tcard{width:78px;max-width:78px}
.tcard.is-gift .tcard-face{background:linear-gradient(160deg,#fff 0%,#f7eef4 55%,#efe2ec 100%);justify-content:center;gap:6px;padding:10px 6px}
.gf-star{color:#c9998a;font-size:.9rem;line-height:1}
.gf-num{font-family:var(--f-accent);font-weight:500;font-size:1.55rem;letter-spacing:-.02em;color:#1a1218;line-height:1}
.gf-txt{font-size:.62rem;line-height:1.25;color:#6b5a66}
#giftCards.is-done .gf-num{font-size:1.1rem}
#giftCards.is-done .gf-txt{font-size:.48rem}
#giftCards.is-done .gf-star{font-size:.7rem}
.gift-won{margin:0 0 12px;font-size:.98rem;line-height:1.5;color:var(--pearl)}
.gift-won b{color:var(--rose);font-weight:600}
.gift form{margin-top:0;gap:12px}
.gift .field{height:50px}
.gift .consent{font-size:.8rem;line-height:1.4}
.gift .btn-block{--h:52px}
.gift .gift-code{margin:6px 0 14px}
@media(max-width:560px){
  .gift .book-in{padding:18px 16px 16px}
  .gift .h3{font-size:1.32rem}
  #giftCards{grid-template-columns:repeat(3,minmax(0,92px));gap:10px;margin:12px 0 10px}
  .gift-won{font-size:.93rem}
}

/* short screens (small phones, landscape laptops): tighter so the gift popup never scrolls */
@media(max-height:700px){
  .gift .book-in{padding:14px 16px 14px}
  .gift .label{display:none}
  .gift .h3{font-size:1.18rem;margin:0 46px 2px 0}
  .gift-intro{display:none}
  #giftCards{margin:10px 0 8px}
  #giftCards.is-done{margin:6px 0 8px}
  #giftCards.is-done .tcard{width:54px;max-width:54px}
  #giftCards.is-done .gf-num{font-size:.8rem}
  #giftCards.is-done .gf-txt{display:none}
  .gift-won{font-size:.88rem;margin-bottom:10px}
  .gift form{gap:9px}
  .gift .field{height:44px}
  .gift .consent{font-size:.74rem}
  .gift .btn-block{--h:46px}
  .gift .gift-code{margin:4px 0 10px}
  .gift .gift-code p{font-size:.85rem}
}

/* real card faces (Rider-Waite-Smith, toned) */
.tcard.has-img .tcard-face{padding:0;background:#efe6e4}
.tcard.has-img .tcard-face::before{inset:0;border-radius:inherit;border:1px solid rgba(255,255,255,.55);box-shadow:inset 0 0 0 4px rgba(239,230,228,.9);z-index:1}
.tf-img{width:100%;height:100%;object-fit:cover;display:block}
.tcard.is-flipped.has-img{filter:drop-shadow(0 0 22px rgba(230,188,171,.28))}

/* sky windows: a soft dark veil behind every text block, so the moon and its glow stay visible but never sit behind the words */
.ritual.is-window .ritual-head,.ritual.is-window .ritual-stage>:last-child,.ritual.is-window .ritual-gift,.final.is-window .final .h2,.final.is-window .wrap{position:relative;isolation:isolate}
.ritual.is-window .ritual-head::before,.ritual.is-window .ritual-stage>:last-child::before,.ritual.is-window .ritual-gift::before{content:"";position:absolute;inset:-30px -40px;z-index:-1;border-radius:40px;background:rgba(9,8,11,.74);filter:blur(24px);pointer-events:none}
@media(max-width:760px){
  .ritual.is-window .ritual-head::before,.ritual.is-window .ritual-stage>:last-child::before,.ritual.is-window .ritual-gift::before{inset:-26px calc(-1 * var(--gut));border-radius:0;filter:none;
    background:linear-gradient(180deg,rgba(9,8,11,0),rgba(9,8,11,.8) 26px,rgba(9,8,11,.8) calc(100% - 26px),rgba(9,8,11,0))}
}

/* toast */
.toast{position:fixed;left:50%;bottom:calc(96px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:300;padding:12px 20px;border-radius:999px;background:var(--pearl);color:var(--ink);font-size:.92rem;box-shadow:0 12px 30px rgba(0,0,0,.5);transition:opacity .4s;max-width:calc(100vw - 32px);text-align:center}
.toast.out{opacity:0}

/* ================= v3 (2026-11-11): sky, silk, light sections, luminous buttons, motion, compact mobile ================= */
:root{--plum:#1c1426;--plum-2:#2a1d38;--midnight:#0d1020;--moon:#f4eee8;--moon-2:#ece4de;--lilac:#c8c0ff;--glow-rose:rgba(255,196,214,.55);--glow-lilac:rgba(196,186,255,.4)}
.hs{height:220vh}
@media(max-width:760px){.hs{height:190vh}}
main{position:relative}
main>.section,main>.marquee,.foot{position:relative;z-index:1}

/* the sky (sky.js): fixed behind the page, windows let it through */
.sky{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:0;transition:opacity .6s;background:radial-gradient(90% 70% at 70% 20%,#151120 0%,#09080b 70%)}
.sky.is-on{opacity:1}
.sky canvas{position:absolute;inset:0;width:100%;height:100%}
.is-window{background:transparent!important}
/* one soft dark veil behind the list and the closing line (blurred edges), so the moon shows through without lighting up the text */
.mirror.is-window .mirror-grid>div:last-child{position:relative;isolation:isolate}
.mirror.is-window .mirror-grid>div:last-child::before{content:"";position:absolute;inset:-34px -40px;z-index:-1;border-radius:40px;background:rgba(9,8,11,.8);filter:blur(22px);pointer-events:none}
.final-sky{height:min(44vh,420px)}
.final .lead{max-width:30em;color:var(--pearl);text-shadow:0 1px 2px rgba(9,8,11,.85),0 0 22px rgba(9,8,11,.75)}
.final .final-actions .link{text-shadow:0 1px 2px rgba(9,8,11,.9),0 0 18px rgba(9,8,11,.8)}

/* buttons. Primary = pearl neon (B), secondary = moonglow rim light (A) */
@property --rim{syntax:"<angle>";inherits:false;initial-value:0deg}
.btn-chrome{color:#1a1218;overflow:visible;isolation:isolate;
  background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.95) 47%,rgba(255,214,230,.6) 52%,transparent 62%) -160% 0/55% 100% no-repeat,linear-gradient(180deg,#fff 0%,#f6eef4 55%,#efe4ee 100%);
  box-shadow:0 0 0 1px rgba(255,255,255,.9),0 0 16px var(--glow-rose),0 0 40px var(--glow-lilac),0 0 90px rgba(230,188,171,.2);animation:sweep 3.6s var(--ease) infinite}
@keyframes sweep{0%{background-position:-160% 0,0 0}55%,100%{background-position:260% 0,0 0}}
.btn-chrome::after{content:"✦";position:absolute;inset:-9px -5px auto auto;width:auto;height:auto;transform:none;background:none;z-index:2;font-size:13px;line-height:1;color:#fff;
  text-shadow:0 0 8px #fff,0 0 16px var(--rose);animation:twinkle 2.6s ease-in-out infinite;transition:none}
.btn-chrome:hover::after{transform:none}
@keyframes twinkle{0%,100%{opacity:.25;transform:scale(.6) rotate(0)}50%{opacity:1;transform:scale(1.15) rotate(25deg)}}
.btn-chrome:hover{filter:none;box-shadow:0 0 0 1px #fff,0 0 22px rgba(255,190,215,.85),0 0 60px rgba(196,186,255,.6),0 0 120px rgba(230,188,171,.35);transform:translateY(-1px)}
.btn-line{color:var(--pearl);border:0;background:radial-gradient(120% 140% at 50% 0%,rgba(255,255,255,.13),rgba(255,255,255,.03) 60%),rgba(20,16,26,.55);
  box-shadow:inset 0 0 0 1px rgba(239,235,243,.28),0 0 20px rgba(230,188,171,.16),0 0 50px rgba(200,192,255,.08);isolation:isolate}
.btn-line::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1.5px;z-index:-1;pointer-events:none;
  background:conic-gradient(from var(--rim),transparent 0 72%,rgba(255,255,255,.95) 81%,var(--rose) 86%,transparent 92%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:rim 4s linear infinite}
@keyframes rim{to{--rim:360deg}}
.btn-line:hover{border-color:transparent;background:radial-gradient(120% 140% at 50% 0%,rgba(255,255,255,.18),rgba(255,255,255,.05) 60%),rgba(20,16,26,.6);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.5),0 0 28px rgba(255,200,215,.4),0 0 70px rgba(200,192,255,.24);text-shadow:0 0 12px rgba(255,255,255,.6)}

/* light sections: same components, the colour tokens flip */
.is-light{--pearl:#231c28;--pearl-2:#4d4150;--pearl-3:#7b6c78;--line:rgba(35,28,40,.12);--line-2:rgba(35,28,40,.24);--ink:#fbf7f3;--ink-2:#f1e9e3;--ink-3:#e7ddd6;--rose:#a5607a;--rose-2:#b07a8c;
  color:var(--pearl);z-index:2!important;
  background:radial-gradient(50% 45% at 88% 42%,rgba(255,212,226,.6),transparent 70%),radial-gradient(45% 45% at 6% 72%,rgba(210,200,255,.4),transparent 70%),var(--moon)!important}
.is-light ::selection{background:#a5607a;color:#fff}
:root{--wave-h:clamp(30px,4.2vw,64px)}
.wave{position:absolute;left:0;width:100%;height:var(--wave-h);display:block;fill:var(--moon);pointer-events:none}
.wave-top{top:1px;transform:translateY(-100%)}
.wave-bot{bottom:1px;transform:translateY(100%)}
.is-light .btn-line{color:#231c28;background:rgba(255,255,255,.6);box-shadow:inset 0 0 0 1px rgba(35,28,40,.16),0 8px 26px rgba(176,122,140,.22)}
.is-light .btn-line:hover{box-shadow:inset 0 0 0 1px rgba(35,28,40,.3),0 10px 32px rgba(176,122,140,.35),0 0 40px rgba(255,200,220,.5);text-shadow:none}
.is-light .btn-chrome{box-shadow:0 0 0 1px rgba(176,122,140,.35),0 10px 28px rgba(176,122,140,.35),0 0 40px rgba(255,200,220,.55)}
.is-light .tier{background:rgba(255,255,255,.72);box-shadow:0 24px 60px -30px rgba(120,80,100,.45);backdrop-filter:blur(6px)}
.is-light .tier.is-featured{background:linear-gradient(#fff,#fff) padding-box,linear-gradient(150deg,#e6bcab,#c8c0ff,#e6bcab) border-box;box-shadow:0 30px 70px -30px rgba(165,96,122,.55)}
.is-light .tier-flag{background:#231c28;color:#fff}
.is-light .arch::before{opacity:.8}
.is-light .notfor{background:rgba(255,255,255,.55)}
.is-light .trust-row{background:rgba(255,255,255,.55)}
.is-light .entry,.is-light .circle{background:rgba(255,255,255,.4)}
.is-light .seal text{fill:#7b6c78}
.is-light .field{background:#fff}
.about.is-light{padding-top:clamp(96px,11vw,150px)}

/* about: short text + the rest behind "read the whole story" */
.more{margin-top:8px}
.more summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;font-family:var(--f-accent);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rose);padding:8px 0}
.more summary::-webkit-details-marker{display:none}
.more summary::after{content:"";width:8px;height:8px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg) translateY(-3px);transition:transform .2s}
.more[open] summary::after{transform:rotate(-135deg)}
.more[open] summary{margin-bottom:14px}
.more-mani{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.more-mani .h3{margin-bottom:14px}
.belief-p{font-family:var(--f-display);font-size:1.35rem;line-height:1.3;color:var(--pearl)!important}

/* different: silk behind, glass card */
.different{background:var(--plum)!important;overflow:hidden;z-index:2!important;margin-bottom:calc(-1 * var(--wave-h));padding-bottom:calc(clamp(88px,12vw,168px) + var(--wave-h));
  /* the light About wave covers the silk's top edge; the silk's bottom edge is a gentle wave into the dark method section */
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90' preserveAspectRatio='none'><path d='M0,0 L1440,0 L1440,40 C1180,66 820,74 480,58 C280,48 120,44 0,50 Z'/></svg>") bottom/100% var(--wave-h) no-repeat,linear-gradient(#000,#000) 0 0/100% calc(100% - var(--wave-h) + 1px) no-repeat;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90' preserveAspectRatio='none'><path d='M0,0 L1440,0 L1440,40 C1180,66 820,74 480,58 C280,48 120,44 0,50 Z'/></svg>") bottom/100% var(--wave-h) no-repeat,linear-gradient(#000,#000) 0 0/100% calc(100% - var(--wave-h) + 1px) no-repeat}
.about.is-light{z-index:3!important}
@media(max-width:760px){.different{padding-bottom:calc(64px + var(--wave-h))}}
.silk{position:absolute;inset:0;width:100%;height:100%;z-index:0}
.different::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(18,12,26,.35),rgba(18,12,26,.1) 40%,rgba(18,12,26,.55))}
.different .wrap{position:relative;z-index:1}
.different .prose{padding:clamp(22px,3vw,36px);border-radius:22px;background:rgba(20,13,28,.5);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.different .compare{padding:clamp(18px,3vw,32px);border-radius:22px;background:rgba(14,9,20,.62);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.different .h2{text-shadow:0 2px 30px rgba(0,0,0,.4)}
.words .w,[data-words] .w{opacity:.18;transition:opacity .35s}
[data-words] .w.on{opacity:1}

/* method: soft rose light from below */
.method{background:radial-gradient(60% 40% at 50% 100%,rgba(165,96,122,.16),transparent 70%),var(--ink)!important;padding-top:clamp(110px,13vw,180px)}

/* index: lamp light */
.index{background:var(--midnight)!important;overflow:hidden}
.lamp{position:absolute;left:50%;top:0;transform:translateX(-50%);width:min(1100px,150vw);height:82%;pointer-events:none;z-index:0}
.lamp::before{content:"";position:absolute;inset:0;background:conic-gradient(from 0deg at 50% 0%,transparent 0 43%,rgba(230,188,171,.3) 47%,rgba(200,192,255,.3) 53%,transparent 57% 100%);filter:blur(22px);
  -webkit-mask:linear-gradient(#000 25%,transparent 95%);mask:linear-gradient(#000 25%,transparent 95%)}
.lamp::after{content:"";position:absolute;left:28%;right:28%;top:0;height:2px;background:linear-gradient(90deg,transparent,#fff,transparent);box-shadow:0 0 18px #fff,0 0 50px var(--rose)}
.index .wrap{position:relative;z-index:1}
.index .index-a{background:rgba(13,16,32,.7)}

/* offers */
.offers.is-light{padding-top:clamp(100px,11vw,150px)}
.extras{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:clamp(36px,5vw,56px)}
.extras>div{margin:0!important}
.extras .trust-row{grid-column:1/-1}
.extras .entry{grid-template-columns:1fr;gap:14px;align-content:start}
.extras .notfor{grid-template-columns:1fr;gap:10px;align-content:start;border-left:0;border-radius:4px}
.extras .circle{grid-column:1/-1}
.tier{position:relative;transition:transform .25s var(--ease),box-shadow .3s}
.glare{position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at var(--gx,50%) var(--gy,50%),rgba(255,255,255,.55),transparent 45%);opacity:0;transition:opacity .25s;mix-blend-mode:soft-light}
.tier:hover .glare,.entry:hover .glare{opacity:1}

/* ritual over the sky */
.ritual .tcard-back{box-shadow:0 0 30px rgba(200,192,255,.16),0 18px 40px -18px rgba(0,0,0,.9)}
.ritual .fan .tcard:hover .tcard-back{box-shadow:0 0 40px rgba(255,200,220,.45),0 0 90px rgba(200,192,255,.3)}
.ritual .panel,.ritual .tabs{position:relative}

/* archive: warm dossier dark */
.archive{background:radial-gradient(70% 50% at 10% 0%,rgba(165,96,122,.14),transparent 60%),radial-gradient(50% 40% at 100% 100%,rgba(200,192,255,.08),transparent 60%),#0f0b10!important}
.file{background:rgba(255,255,255,.02)}
.file:hover{border-color:rgba(230,188,171,.35);box-shadow:0 0 40px -10px rgba(230,188,171,.25)}
.faq{background:linear-gradient(180deg,var(--plum),var(--ink))!important}

/* reveal on scroll (fx.js adds .rv) */
.rv{opacity:0;transform:translateY(24px);filter:blur(6px);transition:opacity .9s var(--ease) var(--d,0ms),transform .9s var(--ease) var(--d,0ms),filter .9s var(--ease) var(--d,0ms)}
.rv.in{opacity:1;transform:none;filter:none}
.tier.rv.in{transition:transform .25s var(--ease),box-shadow .3s,opacity .9s var(--ease) var(--d,0ms),filter .9s var(--ease) var(--d,0ms)}
.credit{opacity:.85}
/* footer: solid night under the final sky window, so the eclipse light never sits behind its text */
.foot{background:linear-gradient(180deg,rgba(9,8,11,.6) 0,#09080b 90px)!important;border-top-color:rgba(239,235,243,.08)}
.foot .small{color:var(--pearl-2)}
.foot h4{color:var(--pearl-2)}
.foot a{color:var(--pearl)}

/* ---------- compact mobile: about one screen per section ---------- */
@media(max-width:760px){
  .section{padding:64px 0}
  .about.is-light,.offers.is-light,.method{padding-top:84px}
  .mirror-head .h2{margin-bottom:10px}
  .mirror-list li{padding:11px 0 11px 34px;font-size:1.12rem}
  .mirror-list li::before{top:16px}
  .mirror-turn{margin-top:16px;font-size:.95rem}
  .diff-grid{gap:14px;margin-bottom:22px}
  .different .prose{padding:18px}
  .different .prose p{font-size:.95rem;margin-bottom:.7em}
  .diff-lead{font-size:1.3rem!important}
  .different .compare{padding:14px}
  .different .compare .h3{font-size:1.35rem;margin-bottom:10px}
  .ctable th,.ctable td{padding:8px 8px 8px 0;font-size:.82rem}
  /* about: photo and heading side by side, text below */
  .about-grid{grid-template-columns:118px 1fr;gap:14px 18px;align-items:center}
  .about-text{display:contents}
  .arch{grid-column:1;grid-row:1;max-width:118px}
  .arch::before{inset:-6px -6px 10px 6px}
  .arch figcaption{display:none}
  .about-text>.h2{grid-column:2;grid-row:1;margin:0;font-size:2.1rem}
  .about-text>*:not(.h2){grid-column:1/-1;margin-bottom:.6em}
  .about-text p{font-size:.97rem}
  .pull{margin:10px 0!important;font-size:1.45rem}
  .sign{margin-top:6px!important;font-size:2rem}
  /* method: steps and the sample case swipe sideways */
  .steps,.example-steps{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0 calc(-1 * var(--gut));padding:0 var(--gut) 8px;scrollbar-width:none}
  .steps::-webkit-scrollbar,.example-steps::-webkit-scrollbar{display:none}
  .step,.step+.step{flex:0 0 78vw;scroll-snap-align:start;border:1px solid var(--line);border-radius:14px;padding:18px 18px 18px 74px;min-height:0}
  .step-n{left:16px;top:12px}
  .example{margin-top:28px;padding:18px 0 16px;border:0}
  .example-head{margin-bottom:14px;padding:0}
  .example-q{font-size:1.4rem}
  .example-steps>li{flex:0 0 82vw;scroll-snap-align:start;border:1px solid var(--line);border-radius:14px;padding:16px}
  .example-steps ul li{padding:6px 0;font-size:.9rem}
  .example-cards li b{font-size:1.15rem}
  /* offers extras swipe sideways */
  .extras{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:28px calc(-1 * var(--gut)) 0;padding:0 var(--gut) 8px;scrollbar-width:none}
  .extras::-webkit-scrollbar{display:none}
  .extras>div{flex:0 0 84vw;scroll-snap-align:start}
  .extras .trust-row{grid-template-columns:1fr;padding:20px}
  .extras .trust-row .seal{display:none}
  .extras .trust-row p{font-size:.9rem}
  .extras .circle{padding:20px}
  .offers-head{margin-bottom:20px}
  .offers-head .lead{font-size:.98rem}
  /* archive: dossiers swipe sideways */
  .quotes{min-height:170px;padding:18px 0;margin-bottom:22px}
  .quotes blockquote{font-size:1.5rem}
  .archive-head{margin-bottom:20px}
  .archive-head .lead{font-size:.98rem}
  .files{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0 calc(-1 * var(--gut));padding:0 var(--gut) 8px;scrollbar-width:none;align-items:flex-start}
  .files::-webkit-scrollbar{display:none}
  .file{flex:0 0 84vw;scroll-snap-align:start}
  .tell{margin-top:22px;padding:20px;gap:14px}
  .tell .h3{font-size:1.45rem}
  .faq-head .h2{margin-bottom:8px}
  .qa summary{padding:13px 0;font-size:1.12rem}
  .final-sky{height:34vh}
  .ritual-head{margin-bottom:20px}
  .tabs{margin-bottom:18px}
  .fan{height:260px}
}
@media(max-width:760px){
  .mirror.is-window .mirror-grid>div:last-child::before{inset:-34px calc(-1 * var(--gut));border-radius:0;filter:none;background:linear-gradient(180deg,rgba(9,8,11,0),rgba(9,8,11,.84) 34px,rgba(9,8,11,.84) calc(100% - 34px),rgba(9,8,11,0))}
  .mirror-head,.ritual-head{text-shadow:0 2px 18px rgba(9,8,11,.9)}
  .method-head .lead,.example-head .h3,.offers-head .lead,.files-note,.tier-note,.tier-meta{display:none}
  .method-head{margin-bottom:18px}
  .tier.is-short li:nth-child(n+3){display:none}
  .tier-promise{font-size:.95rem}
  .tier-for{margin-bottom:8px}
  .tier .price{margin-bottom:12px}
  .tier-guar{margin-bottom:12px;font-size:.8rem}
}
/* phones: the three offers stacked and compact, details behind "what's included" (main.js adds .tier-toggle) */
@media(max-width:760px){
  .tiers{display:flex;flex-direction:column;overflow:visible;margin:0;padding:0;gap:10px;scroll-snap-type:none}
  .tier,.tier.rv{flex:none;display:grid;grid-template-columns:1fr auto;column-gap:12px;align-items:center;padding:13px 16px 10px}
  .tier.is-featured{order:-1;margin-top:8px}
  .tier-flag{top:-10px;left:14px;font-size:.54rem;padding:5px 10px}
  .tier .tier-for{grid-column:1/-1;grid-row:1;margin:0 0 2px;font-size:.76rem;line-height:1.35}
  .tier .tier-name{grid-column:1;grid-row:2;font-size:1.55rem;margin:0}
  .tier .price{grid-column:2;grid-row:2;margin:0;justify-self:end;flex-direction:row-reverse;flex-wrap:nowrap;gap:8px}
  .tier .price b{font-size:1.4rem}
  .tier .price span{display:none}
  .tier .price s{font-size:.76rem}
  .tier .tier-promise{grid-column:1/-1;grid-row:3;font-size:.86rem;line-height:1.4;margin:3px 0 6px;min-height:0}
  .tier-toggle{grid-column:1;grid-row:4;justify-self:start;background:none;border:0;padding:8px 0;font:inherit;font-size:.84rem;color:var(--pearl);cursor:pointer;
    text-decoration:underline;text-decoration-color:var(--line-2);text-underline-offset:.3em;display:inline-flex;align-items:center;gap:6px}
  .tier-toggle::after{content:"";width:6px;height:6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s}
  .tier.is-open .tier-toggle::after{transform:rotate(-135deg)}
  .tier .btn{grid-column:2;grid-row:4;width:auto;--h:38px;padding:0 16px;font-size:.58rem}
  .tier .tier-meta,.tier ul,.tier .tier-guar,.tier .tier-note,.tier-more{display:none}
  .tier.is-open .tier-meta{display:block;grid-column:1/-1;grid-row:5;margin:10px 0 6px;font-size:.8rem}
  .tier.is-open ul{display:block;grid-column:1/-1;grid-row:6;margin:0 0 10px}
  .tier.is-open .tier-guar{display:block;grid-column:1/-1;grid-row:7;margin:0 0 6px}
  .tier.is-open .tier-note{display:block;grid-column:1/-1;grid-row:8;margin:0 0 4px;text-align:left}
  .tier.is-open li:nth-child(n){display:block}
  .tier-dots{display:none}
  .offers-head{margin-bottom:12px}
}
/* the swipe rows show a hint that there is more */
@media(max-width:760px){.steps,.example-steps,.extras,.files{mask:linear-gradient(90deg,#000 88%,transparent);-webkit-mask:linear-gradient(90deg,#000 88%,transparent)}}

/* ---------- reduced motion ---------- */
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .marquee-track{animation:none;flex-wrap:wrap;width:auto;justify-content:center}
  .tcard.is-flipped .tcard-in{transform:none}
  .tcard.is-flipped .tcard-back{opacity:0}
  .tcard.is-flipped .tcard-face{transform:none}
  .btn-chrome,.btn-line::before,.btn-chrome::after{animation:none!important}
  .rv{opacity:1;transform:none;filter:none}
}
