body{margin:0}
.qm{display:inline-block;vertical-align:middle;flex:none;background-color:currentColor;-webkit-mask:url(assets/quill-mark.png) center/contain no-repeat;mask:url(assets/quill-mark.png) center/contain no-repeat}
.site{--page:#FBF7EF;--paperc:#FFFDF8;--well:#F2ECE1;--edge:#E6DDCD;--ink:#26201F;--quiet:#5E5651;--shadow:rgba(70,50,30,.14);--rule:transparent;background-color:var(--page);color:var(--ink);font-family:-apple-system,'SF Pro Text',system-ui,'Segoe UI',sans-serif;font-size:17px;line-height:1.55;overflow:clip;transition:background-color .6s ease,color .6s ease}
.site.p-white{--page:#FFFFFF;--paperc:#FFFFFF;--well:#F3F1EE;--edge:#E5E1DA}
.site.p-ruled{--page:#FFFFFF;--paperc:#FFFFFF;--well:#F3F1EE;--edge:#E2E4EA;background-image:repeating-linear-gradient(to bottom,transparent 0 33px,#D3DBEA 33px 34px)}
.site.p-dotted{--page:#FFFFFF;--paperc:#FFFFFF;--well:#F3F1EE;--edge:#E2E4EA;background-image:radial-gradient(#B7BAC4 1.2px,transparent 1.4px);background-size:24px 24px}
.site.p-squared{--page:#FFFFFF;--paperc:#FFFFFF;--well:#F3F1EE;--edge:#E2E4EA;background-image:linear-gradient(#E1E5EC 1px,transparent 1px),linear-gradient(90deg,#E1E5EC 1px,transparent 1px);background-size:26px 26px}
.site.p-cream{--page:#FBF6EA}
.site.p-night{--page:#17171A;--paperc:#222226;--well:#2A2A2F;--edge:#36363D;--ink:#F3EEE8;--quiet:#BDB5AD;--shadow:rgba(0,0,0,.5)}
.serif{font-family:ui-serif,'New York',Georgia,serif}
.wrap{max-width:1180px;margin:0 auto;padding:0 32px;box-sizing:border-box}
a{color:var(--accedge)}
.xbtn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 22px;border-radius:16px;border:0;background:var(--acc);color:#FFFFFF;font:inherit;font-size:16px;font-weight:650;text-decoration:none;box-shadow:0 4px 0 var(--accedge);cursor:pointer;white-space:nowrap;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background-color .6s ease}
.xbtn:hover{color:#FFFFFF;transform:translateY(-2px)}
.xbtn.ghost{background:var(--paperc);color:var(--ink);box-shadow:0 3px 0 var(--edge);border:1px solid var(--edge)}
.appstore{background:#111113;box-shadow:0 3px 0 #000000;min-height:56px;padding:0 20px;border-radius:14px;color:#FFFFFF;text-decoration:none;display:inline-flex;align-items:center;gap:10px;font-weight:650;line-height:1.15}
.appstore:hover{color:#FFFFFF}
.appstore small{display:block;font-size:11px;font-weight:500;opacity:.8}
/* the nav: a tinted pill with the mark hanging out of it, tucked in once you scroll (PigeonPicPick) */
.navwrap{position:sticky;top:0;height:0;z-index:40}
.nav{position:relative;top:14px;margin:0 auto;width:min(1260px,calc(100% - 28px));height:72px;display:flex;align-items:center;gap:16px;padding:0 12px 0 0;border-radius:999px;background:color-mix(in srgb,var(--tint) 84%,transparent);-webkit-backdrop-filter:blur(16px) saturate(1.4);backdrop-filter:blur(16px) saturate(1.4);border:1.5px solid color-mix(in srgb,var(--acc) 22%,transparent);box-shadow:0 12px 40px -26px rgba(40,20,40,.5);box-sizing:border-box;transition:background-color .6s ease}
.brand{position:relative;align-self:stretch;display:flex;align-items:center;flex:none;width:300px;text-decoration:none;color:var(--ink)}
.lg{position:absolute;left:-10px;top:6px;width:128px;height:128px;border-radius:23%;overflow:hidden;box-shadow:0 18px 30px -14px rgba(40,20,40,.5);transform:rotate(-8deg);transition:all .5s cubic-bezier(.3,1.4,.5,1)}
.lg img{width:100%;height:100%;display:block}
.wm{margin-left:132px;font-family:ui-serif,'New York',Georgia,serif;font-size:26px;font-weight:600;letter-spacing:-.3px;transition:margin .5s cubic-bezier(.3,1.4,.5,1)}
.nav.tucked .lg{left:11px;top:11px;width:48px;height:48px;transform:none;box-shadow:none}
.nav.tucked .wm{margin-left:70px}
@supports (animation-timeline: scroll()){
}
@keyframes tucklg{to{left:11px;top:11px;width:48px;height:48px;transform:none;box-shadow:none}}
@keyframes tuckwm{to{margin-left:70px}}
.links{display:flex;gap:2px;margin-left:auto}
.links a{white-space:nowrap;padding:9px 10px;border-radius:999px;font-weight:650;font-size:15px;color:var(--ink);text-decoration:none;transition:background-color .2s}
.links a:hover{background:color-mix(in srgb,var(--acc) 12%,transparent)}
.dots{display:flex;align-items:center;gap:6px;padding:6px 6px 6px 12px;border-radius:999px;background:var(--paperc);flex:none}
.dots>span{font-size:13px;font-weight:750;margin-right:2px;white-space:nowrap}
.dot{width:20px;height:20px;border-radius:50%;border:0;padding:0;cursor:pointer;background:var(--c);box-shadow:0 0 0 2px var(--paperc),0 0 0 3px transparent;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .2s}
.dot:hover{transform:scale(1.2)}
.dot[aria-pressed="true"]{box-shadow:0 0 0 2px var(--paperc),0 0 0 4px var(--c)}
.round{width:30px;height:30px;border-radius:50%;border:0;padding:0;cursor:pointer;display:grid;place-items:center;background:conic-gradient(from 20deg,#BE123C,#A94B27,#8A5A00,#2D6B4E,#0D9488,#1F5F8B,#4A5A9C,#6E3F72,#BE123C);transition:transform .4s cubic-bezier(.34,1.56,.64,1)}
.round:hover{transform:rotate(90deg)}
.paperbtn{position:relative}
.pbtn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:999px;border:0;background:var(--paperc);color:var(--ink);font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.pbtn .sw{width:20px;height:20px;border-radius:6px;border:1.5px solid var(--edge);background:var(--pg)}
.ppop{position:absolute;right:0;top:56px;width:300px;padding:14px;border-radius:22px;background:var(--paperc);border:1px solid var(--edge);box-shadow:0 24px 50px -24px rgba(40,20,40,.5);display:grid;grid-template-columns:repeat(3,1fr);gap:10px;animation:drop .45s cubic-bezier(.22,1,.36,1)}
.ppop button{border:2px solid var(--edge);border-radius:14px;padding:0 0 6px;background:var(--paperc);color:var(--ink);font:inherit;font-size:13px;font-weight:700;cursor:pointer;overflow:hidden}
.ppop button[aria-pressed="true"]{border-color:var(--acc);box-shadow:0 2px 0 var(--accedge)}
.ppop i{display:block;height:46px;margin-bottom:6px;background:var(--pg);background-size:var(--ps,auto)}
.ppop .ttl{grid-column:1/-1;font-size:13px;font-weight:750;color:var(--quiet);padding:0 2px}
@keyframes drop{from{opacity:0;transform:translateY(-8px) scale(.98)}}
/* hero: the whole top is the writer's picture */
.hero{position:relative;min-height:900px;display:flex;align-items:center}
.hero .bg{position:absolute;inset:0;overflow:hidden}
.hero .bg img,.wbtn img,.mat img,.closing img,.scr img{object-position:88% 62%}
.hero .bg img{object-position:0% 60%!important}
.hero .bg img{width:100%;height:100%;object-fit:cover;display:block;animation:settle 2.4s cubic-bezier(.22,1,.36,1) both,kb 26s ease-in-out 2.4s infinite alternate}
.hero .bg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),transparent 22%,transparent 70%,var(--page) 100%)}
.hero .wrap{position:relative;width:100%;padding-top:150px;padding-bottom:110px}
.glass{background:color-mix(in srgb,var(--paperc) 88%,transparent);-webkit-backdrop-filter:blur(18px) saturate(1.3);backdrop-filter:blur(18px) saturate(1.3);border:1px solid color-mix(in srgb,#FFFFFF 50%,transparent);border-radius:30px;box-shadow:0 30px 60px -34px rgba(30,20,30,.55)}
.hero .copy{max-width:500px;box-sizing:border-box;padding:36px 36px 32px}
.eyebrow{font-size:12.5px;font-weight:750;letter-spacing:.16em;text-transform:uppercase;color:var(--accedge);transition:color .6s ease}
.p-night .eyebrow{color:var(--accdark)}
.h1{font-family:ui-serif,'New York',Georgia,serif;font-weight:600;font-size:70px;line-height:1.02;letter-spacing:-1.5px;margin:14px 0 0}
.h2{font-family:ui-serif,'New York',Georgia,serif;font-weight:600;font-size:54px;line-height:1.06;letter-spacing:-1px;margin:10px 0 0}
.h3{font-family:ui-serif,'New York',Georgia,serif;font-weight:600;font-size:22px;line-height:1.2;margin:0}
.lede{font-size:20px;line-height:1.5;color:var(--quiet);max-width:560px}
.quiet{color:var(--quiet)}
.w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.w>span{display:inline-block;animation:wordup 1.1s cubic-bezier(.22,1,.36,1) both}
.rise{animation:rise 1s cubic-bezier(.22,1,.36,1) both}
.d1{animation-delay:.1s}.d2{animation-delay:.2s}.d3{animation-delay:.3s}.d4{animation-delay:.4s}.d5{animation-delay:.5s}.d6{animation-delay:.6s}.d7{animation-delay:.75s}.d8{animation-delay:.9s}.d9{animation-delay:1.05s}.d10{animation-delay:1.2s}
.hero .phones{position:absolute;left:calc(50% - 64px);bottom:60px;width:410px;height:600px;z-index:3}
.hero .phones .ph{width:258px;height:544px}.hero .phones .ph .frame{transform:scale(.63)}
.hero .phones .ph:nth-child(1){position:absolute;left:0;bottom:46px;rotate:-5deg;animation:bob 8s ease-in-out infinite}
.hero .phones .ph:nth-child(2){position:absolute;left:148px;bottom:0;rotate:4deg;animation:bob 7s ease-in-out infinite}
.tagline{display:flex;align-items:center;gap:10px;margin-top:22px;font-size:14px;font-weight:650;color:var(--quiet)}
/* phones */
.ph{width:303px;height:639px;flex:none;rotate:4deg;filter:drop-shadow(0 30px 34px rgba(30,20,10,.28))}
.ph .frame{transform:scale(.74);transform-origin:0 0;width:390px}
.ph .scr{font-size:15px;line-height:1.35}
.ph .isl{position:absolute;left:50%;top:11px;width:120px;height:34px;border-radius:20px;background:#1C1C1E;transform:translateX(-50%);z-index:9}
.paper-ruled{background-color:var(--card)!important;background-image:repeating-linear-gradient(to bottom,transparent 0 29px,#D3DBEA 29px 30px);background-position:0 12px}
.paper-dotted{background-color:var(--card)!important;background-image:radial-gradient(#B7BAC4 1.3px,transparent 1.5px);background-size:22px 22px}
.paper-squared{background-color:var(--card)!important;background-image:linear-gradient(#E1E5EC 1px,transparent 1px),linear-gradient(90deg,#E1E5EC 1px,transparent 1px);background-size:22px 22px}
.paper-cream{background-color:#FBF6EA!important}
.paper-night{background-color:#17171A!important;color:#F3EEE8}
.pcaret{display:inline-block;width:2px;height:22px;background:var(--pri);vertical-align:-4px;margin-left:2px;animation:blink 1.1s steps(1) infinite}
.fw{animation:fadeword 9s ease-in-out infinite}.fw2{animation-delay:.3s}
.popin{animation:popin 1s cubic-bezier(.34,1.56,.64,1) .6s both}
/* chapters */
section{padding:44px 0 0}
.center{text-align:center;display:flex;flex-direction:column;align-items:center}
.chap{display:flex;align-items:center;gap:14px;font-family:ui-serif,'New York',Georgia,serif;font-style:italic;font-weight:700;font-size:20px;color:var(--ink)}
.chap:before,.chap:after{content:"";height:1px;width:56px;background:var(--edge)}
.chap.left{justify-content:flex-start}.chap.left:before{display:none}
.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;margin-top:10px}
.split.flip>:first-child{order:2}
.xcard{background:var(--paperc);border:1px solid var(--edge);border-radius:22px;box-shadow:0 3px 0 var(--edge),0 16px 30px -22px var(--shadow)}
.tagx{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;background:var(--tint);color:var(--accedge);font-size:12.5px;font-weight:700}
.xtile{flex:none;width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--acc);color:#FFFFFF;box-shadow:0 3px 0 var(--accedge);transition:background-color .6s ease}
.xrow{display:flex;gap:16px;align-items:flex-start}
.xrows{display:flex;flex-direction:column;gap:22px;margin-top:30px}
.stagegroup{display:flex;justify-content:center;align-items:center;gap:0}
.stagegroup>div{position:relative;z-index:1;margin:0 -6px;transition:z-index 0s .2s}
.stagegroup>div:nth-child(2){z-index:2}
.stagegroup>div:nth-child(2) .ph{rotate:-4deg}
.stagegroup .ph{transition:scale .45s cubic-bezier(.34,1.56,.64,1),filter .45s}
.stagegroup>div:hover{z-index:6;transition:z-index 0s}
.stagegroup>div:hover .ph{scale:1.1;filter:drop-shadow(0 40px 44px rgba(30,20,10,.38))}
.capt{font-family:ui-serif,'New York',Georgia,serif;font-style:italic;font-size:15.5px;color:var(--quiet);text-align:center;margin-top:12px}
.scroll{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-top:56px;position:relative}
.scroll:before{content:"";position:absolute;left:4%;right:4%;top:-26px;height:2px;background:repeating-linear-gradient(90deg,var(--edge) 0 10px,transparent 10px 18px)}
.scene{display:flex;flex-direction:column;gap:14px}
.mat{position:relative;background:var(--paperc);padding:9px;border-radius:18px;border:1px solid var(--edge);box-shadow:0 4px 0 var(--edge),0 24px 40px -28px var(--shadow)}
.mat .in{position:relative;overflow:hidden;border-radius:10px;aspect-ratio:3/4}
.mat img{display:block;width:100%;height:100%;object-fit:cover}
.kb{animation:kb 22s ease-in-out infinite alternate}
.time{position:absolute;left:12px;top:12px;padding:4px 10px;border-radius:999px;background:rgba(255,253,248,.92);font-size:12.5px;font-weight:750;color:#26201F}
.dotm{position:absolute;top:-34px;left:50%;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:var(--acc);box-shadow:0 0 0 5px var(--page)}
.levels{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:30px}
.level{padding:20px;display:flex;flex-direction:column;gap:7px}
.level .n{font-family:ui-serif,'New York',Georgia,serif;font-size:15px;font-style:italic;color:var(--quiet)}
.bars{display:flex;gap:4px}.bars i{display:block;width:22px;height:6px;border-radius:3px;background:var(--edge)}.bars i.on{background:var(--acc)}
.cert{position:relative;padding:40px 36px 30px;border-radius:8px;background:#FFFDF8;color:#26201F;border:1px solid #E6DDCD;box-shadow:0 3px 0 #E6DDCD,0 30px 60px -30px var(--shadow);transform:rotate(2deg);max-width:360px}
.cert:before{content:"";position:absolute;inset:10px;border:1px solid #E6DDCD;border-radius:4px;pointer-events:none}
.cert .grid{display:grid;grid-template-columns:1fr auto;gap:8px 14px;font-size:14.5px;font-weight:650;margin-top:18px;padding-top:16px;border-top:1px solid #E6DDCD}
.stamp{position:absolute;right:-24px;top:-28px;width:112px;height:112px;border-radius:50%;border:3px solid var(--acc);color:var(--acc);background:rgba(255,253,248,.9);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:11.5px;font-weight:800;letter-spacing:.14em;line-height:1.25;animation:stamp 1.2s cubic-bezier(.34,1.56,.64,1) .9s both}
.humanstage{display:flex;align-items:center;justify-content:center;gap:0}
.humanstage .ph{position:relative;z-index:2}
.certpin{position:absolute;right:36px;top:50%;width:270px;max-width:none;padding:30px 24px 22px;translate:0 -50%;rotate:3deg;transform:none}
#human .xrows>.xrow,#human .lede,#human .h2{max-width:450px}
.wgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.wbtn{position:relative;border:0;padding:0;background:transparent;cursor:pointer;border-radius:14px;overflow:hidden;aspect-ratio:1/1;box-shadow:0 0 0 3px var(--ring);transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease}
.wbtn:hover{transform:translateY(-3px)}
.wbtn img{width:100%;height:100%;object-fit:cover;display:block}
.wbtn span{position:absolute;left:0;right:0;bottom:0;padding:5px 4px;font-size:12.5px;font-weight:700;color:#FFFFFF;text-align:center;background:var(--strip)}
.writers{display:grid;grid-template-columns:1fr 1.15fr;gap:44px;align-items:center;margin-top:8px}
.quote{font-family:ui-serif,'New York',Georgia,serif;font-style:italic;font-size:24px;line-height:1.35;margin:0}
.formats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px}
.fmt{padding:14px 16px;display:flex;gap:12px;align-items:center}
.fmt .xtile{width:40px;height:40px;border-radius:12px}
.pv{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:30px}
.pv .xcard{padding:20px;display:flex;flex-direction:column;gap:8px}
.price{display:grid;grid-template-columns:300px 1fr 1fr;gap:0;margin-top:48px;overflow:visible;align-items:stretch}
.price .side{padding:40px 40px;display:flex;flex-direction:column;gap:14px}
.price .side.alt{background:var(--tint);border-left:1px solid var(--edge);border-radius:0 22px 22px 0}
.price .phcol{display:flex;align-items:center;justify-content:center;padding:30px 0 30px 30px}
.ticks{list-style:none;padding:0;margin:6px 0 0;display:flex;flex-direction:column;gap:10px;font-weight:600}
.ticks li{display:flex;gap:10px;align-items:center}.ticks svg{color:var(--acc);flex:none}
.qlogo{display:inline-flex;align-items:center;justify-content:center;border-radius:28%;box-shadow:0 6px 14px -6px rgba(0,0,0,.35);flex:none}
.qname{display:inline-flex;align-items:center;gap:10px;vertical-align:middle}
.closing{position:relative;margin-top:60px;border-radius:30px;overflow:hidden;min-height:560px;display:flex;align-items:flex-end}
.closing img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.closing .txt{position:relative;margin:40px;padding:34px 40px;display:flex;flex-direction:column;gap:12px;align-items:flex-start;max-width:640px}
.foot{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:48px 0 60px;font-size:14.5px;color:var(--quiet)}
.foot nav{display:flex;gap:22px;flex-wrap:wrap}.foot a{color:var(--quiet)}
.same{display:inline-flex;align-items:center;gap:8px;margin-top:22px;padding:8px 14px;border-radius:999px;background:var(--tint);color:var(--accedge);font-size:14px;font-weight:700}

/* each chapter: its words in a see-through panel, joined to a taller phone */
.split{grid-template-columns:minmax(0,1fr) auto;gap:0}
.split.flip{grid-template-columns:auto minmax(0,1fr)}
.panel{position:relative;background:color-mix(in srgb,var(--paperc) 58%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid color-mix(in srgb,var(--edge) 85%,transparent);border-radius:34px;padding:44px 130px 44px 48px;box-shadow:0 30px 60px -40px var(--shadow)}
.split.flip .panel{padding:44px 48px 44px 130px}
.phonecol{position:relative;z-index:2;margin-left:-96px}
.split.flip .phonecol{margin-left:0;margin-right:-96px}
.split.flip .ph,.price .ph{rotate:-4deg}
.joined{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}
.joined .panel{padding:40px 120px 40px 40px}
.panel .levels{margin-top:24px}.panel .xrows{margin-top:24px}.panel .formats{margin-top:22px}.panel .pv{margin-top:24px}
.panel .h2{font-size:48px}
.panel .level{padding:16px 18px;gap:5px}
.humanstage.phonecol{margin-right:-96px}
@media (max-width:980px){.split,.split.flip,.joined{grid-template-columns:1fr}.phonecol,.split.flip .phonecol,.humanstage.phonecol{margin:-30px 0 0}.panel,.split.flip .panel,.joined .panel{padding:30px 26px 60px}}
@keyframes wordup{from{transform:translateY(108%)}to{transform:none}}
@keyframes rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes settle{from{transform:scale(1.12)}to{transform:scale(1.06)}}
@keyframes kb{from{transform:scale(1.06) translate(0,0)}to{transform:scale(1.0) translate(1%,-1%)}}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes bobtilt{0%,100%{transform:rotate(-6deg) translateY(0)}50%{transform:rotate(-5deg) translateY(-8px)}}
@keyframes fadeword{0%,50%{opacity:1;filter:none}78%,92%{opacity:.08;filter:blur(1.5px)}100%{opacity:1;filter:none}}
@keyframes blink{50%{opacity:0}}
@keyframes stamp{from{opacity:0;transform:scale(1.7) rotate(-30deg)}to{opacity:1;transform:scale(1) rotate(-12deg)}}
@keyframes popin{from{opacity:0;transform:scale(.4)}to{opacity:1;transform:none}}
@keyframes ring{from{stroke-dashoffset:125.7}}
.ringarc{animation:ring 2.4s cubic-bezier(.22,1,.36,1) .8s both}
/* as you scroll, things settle into place with a little spring, and phones drift (nabbleit.app) */
@supports (animation-timeline: view()){
 section .rise,section .w>span,.closing.rise{animation-timeline:view();animation-delay:0s;animation-range:entry 5% cover 28%;animation-timing-function:cubic-bezier(.34,1.45,.64,1)}
 section .d1,section .d2{animation-range:entry 8% cover 30%}
 section .d3,section .d4{animation-range:entry 12% cover 33%}
 section .d5,section .d6{animation-range:entry 16% cover 36%}
 section .d7,section .d8{animation-range:entry 20% cover 39%}
 section .d9,section .d10{animation-range:entry 24% cover 42%}
 section .ph{animation:drift linear both;animation-timeline:view();animation-range:cover}
 section .stagegroup>div:nth-child(2) .ph,section .split.flip .ph,section .price .ph{animation-name:driftL}
 .hero .phones .ph{animation:heroDrift linear both;animation-timeline:scroll(nearest);animation-range:0 700px}
}
@keyframes drift{from{translate:0 50px;rotate:8deg}50%{rotate:4deg}to{translate:0 -50px;rotate:1.5deg}}
@keyframes driftL{from{translate:0 50px;rotate:-8deg}50%{rotate:-4deg}to{translate:0 -50px;rotate:-1.5deg}}
@keyframes drift2{from{translate:0 -30px;rotate:1.5deg}50%{rotate:4deg}to{translate:0 44px;rotate:7deg}}
@keyframes heroDrift{to{translate:0 -80px}}
@media (max-width:440px){.wm{display:none}.brand{width:96px}.nav{justify-content:space-between}}
@media (prefers-reduced-motion:reduce){.w>span,.rise,.kb,.ph,.fw,.stamp,.ringarc,.pcaret,.popin,.hero .bg img,.lg,.wm,section .ph{animation:none!important}}
@media (max-width:1560px){.dots>span{display:none}}
@media (max-width:1100px){.links{display:none}}
@media (max-width:980px){
.split,.writers{grid-template-columns:1fr}.split.flip>:first-child{order:0}
.h1{font-size:50px}.h2{font-size:40px}
.scroll{grid-template-columns:1fr 1fr}.scroll:before,.dotm{display:none}
.price{grid-template-columns:1fr}.price .side.alt{border-left:0;border-top:1px solid var(--edge);border-radius:0 0 22px 22px}.price .phcol{padding:30px 0}
.hero .phones{position:relative;right:auto;bottom:auto;margin:30px auto -60px;transform:scale(.85)}
.hero{display:block}.stagegroup>div:not(:nth-child(2)){display:none}
.hero .phones{position:relative;left:auto;bottom:auto;margin:10px auto -30px;width:410px;height:600px;transform:none}
.humanstage{flex-direction:column;gap:30px}.humanstage .cert{margin-right:0}
}
@media (max-width:620px){.pbtn{font-size:0;gap:0;padding:0 12px}.dots .dot:nth-child(n+4){display:none}.hero .phones{width:258px;height:560px;margin:16px auto -20px}.hero .phones .ph:nth-child(2){left:0;bottom:auto;top:0}.wrap{padding:0 16px}.nav{height:60px}.brand{width:auto}.lg{width:92px;height:92px;left:-8px;top:-14px}.wm{margin-left:90px;font-size:21px}.dots .dot:nth-child(n+5){display:none}.nav .xbtn{display:none}.levels,.formats,.pv{grid-template-columns:1fr}.scroll{grid-template-columns:1fr 1fr;gap:14px}.hero .copy{padding:26px 22px}.h1{font-size:42px}.closing .txt{margin:16px;padding:24px}.hero .phones{width:300px;height:520px}.hero .phones .ph:nth-child(1){display:none}}

.lt{--page:#FBF7EF;--glow:#FFFDF8;--card:#FFFFFF;--well:#F2ECE1;--edge:#E6DDCD;--pri:#6E3F72;--priedge:#4B274F;--onpri:#FFF6FF;--sec:#EFE3F2;--secedge:#CDB5D3;--secink:#4B274F;--ink:#26201F;--quiet:#6A615C;--link:#6E3F72;--goodbg:#DDF1E5;--good:#136B42;--warmbg:#F6EBD3;--warm:#8A5F0E;--shadow:rgba(70,50,30,.10)}
.lt.white{--page:#FFFFFF;--glow:#FFFFFF;--well:#F3F1EE;--edge:#E5E1DA}
.dk{--page:#171118;--glow:#251A27;--card:#2A1F2C;--well:#221A24;--edge:#45354B;--pri:#C597CB;--priedge:#7E5784;--onpri:#1A101B;--sec:#36293A;--secedge:#4F3D55;--secink:#E6D3EA;--ink:#F7EDF8;--quiet:#C2B1C6;--link:#D9B2DE;--goodbg:#1D4A38;--good:#4BD08F;--warmbg:#3E3220;--warm:#E8C27A;--shadow:rgba(0,0,0,.35)}
.frame{padding:10px;background:#1C1C1E;border-radius:58px;box-shadow:0 12px 30px rgba(60,40,60,.18);width:390px}
.scr{width:390px;height:844px;border-radius:48px;overflow:hidden;position:relative;background:var(--page);color:var(--ink);font-family:-apple-system,'SF Pro Text',system-ui,sans-serif;box-sizing:border-box}
.scr .glow{position:absolute;left:0;right:0;top:0;height:520px;background:radial-gradient(ellipse 520px 520px at 50% 0%,var(--glow),transparent);pointer-events:none}
.scr .fr{font-family:ui-serif,'New York',Georgia,serif}
.scr .serif{font-family:ui-serif,'New York',Georgia,serif}
.scr .btn{display:flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;height:52px;padding:0 24px;border-radius:16px;font-family:-apple-system,'SF Pro Text',system-ui,sans-serif;font-size:17px;font-weight:600;border:0;margin:0 0 5px;white-space:nowrap;cursor:pointer;transition:transform 80ms ease-out,box-shadow 80ms ease-out}
.scr .btn-p{background:var(--pri);color:var(--onpri);box-shadow:0 5px 0 var(--priedge),0 10px 12px rgba(0,0,0,.14)}
.scr .btn-s{background:var(--sec);color:var(--secink);box-shadow:0 5px 0 var(--secedge),0 10px 12px rgba(0,0,0,.14)}
.scr .btn-p:active{transform:translateY(4px);box-shadow:0 1px 0 var(--priedge)}
.scr .btn-s:active{transform:translateY(4px);box-shadow:0 1px 0 var(--secedge)}
.scr .btn-o{background:transparent;color:var(--ink);border:2px solid var(--edge);margin-bottom:0}
.scr .btn-d{background:#B93A30;color:#fff;box-shadow:0 5px 0 #8A2A22,0 10px 12px rgba(0,0,0,.14)}
.scr .btn-sm{height:44px;padding:0 18px;border-radius:14px;font-size:16px}
.scr .block{width:100%}
.scr .card{box-sizing:border-box;background:var(--card);border:1px solid var(--edge);border-radius:24px;padding:14px;box-shadow:0 3px 0 var(--edge),0 8px 14px var(--shadow)}
.scr .sec{font-size:14px;font-weight:650;letter-spacing:.11em;text-transform:uppercase;color:var(--quiet);padding:0 4px;margin:20px 0 10px}
.scr .row{display:flex;align-items:center;gap:12px;padding:10px 0}
.scr .tile{width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.scr .t1{background:var(--sec);color:var(--secink)}
.scr .t2{background:var(--warmbg);color:var(--warm)}
.scr .t3{background:var(--goodbg);color:var(--good)}
.scr .rt{font-size:16px;font-weight:650}
.scr .rs{font-size:13px;color:var(--quiet);line-height:1.3;margin-top:1px}
.scr .grow{flex:1;min-width:0}
.scr .sep{height:1px;background:var(--edge)}
.scr .link{font-size:15px;font-weight:650;color:var(--link);background:none;border:0;padding:0;font-family:-apple-system,'SF Pro Text',system-ui,sans-serif}
.scr .sw{width:58px;height:34px;border-radius:17px;background:var(--pri);position:relative;flex-shrink:0;border:0;padding:0}
.scr .sw i{position:absolute;top:4px;left:28px;width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 2px 0 rgba(0,0,0,.2)}
.scr .sw.off{background:var(--well);box-shadow:inset 0 0 0 2px var(--edge)}
.scr .sw.off i{left:4px}
.scr .chip{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:650;padding:5px 12px;border-radius:999px;white-space:nowrap;background:var(--sec);color:var(--secink)}
.scr .chip.comp{background:var(--warmbg);color:var(--warm)}
.scr .chip.good{background:var(--goodbg);color:var(--good)}
.scr .chip.n{background:var(--well);color:var(--ink)}
.scr .seg{display:flex;gap:4px;background:var(--well);border-radius:16px;padding:4px}
.scr .seg button{flex:1;min-height:40px;border-radius:12px;border:0;background:transparent;font-family:-apple-system,'SF Pro Text',system-ui,sans-serif;font-size:15px;font-weight:700;color:var(--quiet)}
.scr .seg button.on{background:var(--card);box-shadow:0 2px 0 var(--edge);color:var(--ink)}
.scr .opt{box-sizing:border-box;padding:10px 12px;border-radius:16px;border:2px solid var(--edge);background:var(--page);display:flex;flex-direction:column;gap:1px;text-align:left;font-family:-apple-system,'SF Pro Text',system-ui,sans-serif;color:var(--ink)}
.scr .opt.on{background:var(--card);border-color:var(--pri);box-shadow:0 2px 0 var(--priedge)}
.scr .opt b{font-family:ui-serif,'New York',Georgia,serif;font-size:17px;font-weight:600}
.scr .opt span{font-size:12.5px;color:var(--quiet);font-weight:600}
.scr .opt.dim{opacity:.55}
.scr .tabbar{position:absolute;left:14px;right:14px;bottom:26px;display:flex;gap:4px;padding:7px;border-radius:26px;background:var(--card);border:1px solid var(--edge);box-shadow:0 3px 0 var(--edge),0 10px 14px rgba(0,0,0,.2)}
.scr .tab{flex:1;min-height:56px;border-radius:19px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:11px;font-weight:650;color:var(--quiet);border:0;background:transparent;font-family:-apple-system,'SF Pro Text',system-ui,sans-serif}
.scr .tab.on{background:var(--pri);box-shadow:0 3px 0 var(--priedge);color:var(--onpri)}
.scr .rb{width:42px;height:42px;border-radius:50%;background:var(--sec);color:var(--secink);box-shadow:0 3px 0 var(--secedge);display:flex;align-items:center;justify-content:center;border:0;flex-shrink:0}
.scr .title{font-family:ui-serif,'New York',Georgia,serif;font-size:30px;font-weight:600;line-height:1.1}
.scr .bar{height:10px;border-radius:5px;background:var(--well);box-shadow:inset 0 0 0 1.5px var(--edge);overflow:hidden}
.scr .bar i{display:block;height:10px;border-radius:5px;background:var(--pri)}
.scr .dots{display:flex;gap:6px;justify-content:center}
.scr .dots i{width:7px;height:7px;border-radius:4px;background:var(--edge)}
.scr .dots i.on{width:18px;background:var(--pri)}
.scr .cap{display:flex;flex-direction:column;gap:4px;margin-top:16px}
.scr .cap b{font-family:ui-serif,'New York',Georgia,serif;font-size:18px;font-weight:600;color:#1D1B1E}
.scr .cap span{font-size:14px;color:#6B666B;font-family:-apple-system,'SF Pro Text',system-ui,sans-serif}
.scr .sheet{position:absolute;left:0;right:0;bottom:0;background:var(--page);border-radius:34px 34px 0 0;box-shadow:0 -6px 30px rgba(0,0,0,.25);padding:10px 20px 0;box-sizing:border-box}
.scr .grab{width:40px;height:5px;border-radius:3px;background:var(--edge);margin:0 auto 14px}
.scrim{position:absolute;inset:0;background:rgba(30,15,30,.35)}
.scr svg.i{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}
.scr{--pri:var(--acc);--priedge:var(--accedge);--sec:var(--tint);--secedge:var(--tintedge);--secink:var(--accedge);--link:var(--acc)}
.dk .scr,.scr.dk{--pri:var(--accdark);--priedge:var(--accedge);--onpri:#141016;--sec:#2E2A33;--secedge:#45404C;--secink:#F2EEF4;--link:var(--accdark)}

/* live site only */
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
section,#top{scroll-margin-top:100px}
[hidden]{display:none!important}
.skip{position:absolute;left:12px;top:-60px;z-index:99;padding:10px 16px;border-radius:12px;background:var(--acc);color:#fff;font-weight:700;text-decoration:none}
.skip:focus{top:12px}
a:focus-visible,button:focus-visible{outline:3px solid var(--acc);outline-offset:3px}
.io section .rise,.io section .w>span,.io .closing.rise{animation-play-state:paused}
.io section.seen .rise,.io section.seen .w>span,.io .closing.rise.seen{animation-play-state:running}
.spring section .ph{animation:none!important}
.doc{max-width:760px;margin:0 auto;padding:150px 32px 40px}
.doc .panel{padding:40px 44px}
.doc h1{margin:8px 0 6px}
.doc h2{font-family:ui-serif,'New York',Georgia,serif;font-size:22px;margin:26px 0 6px}
.doc p{margin:0;color:var(--quiet)}
@media (max-width:620px){.doc{padding:120px 16px 30px}.doc .panel{padding:28px 22px}}
