/* Tokens and type follow the app (ManiculeApp/Manicule/Theme/Theme.swift): cream/charcoal, one neon-pink accent, IBM Plex Sans + Mono. */
@font-face{font-family:"IBM Plex Sans";font-weight:400;src:url(fonts/IBMPlexSans-Regular.ttf) format("truetype");font-display:swap}
@font-face{font-family:"IBM Plex Sans";font-weight:600;src:url(fonts/IBMPlexSans-SemiBold.ttf) format("truetype");font-display:swap}
@font-face{font-family:"IBM Plex Sans";font-weight:700;src:url(fonts/IBMPlexSans-Bold.ttf) format("truetype");font-display:swap}
@font-face{font-family:"IBM Plex Mono";font-weight:400;src:url(fonts/IBMPlexMono-Regular.ttf) format("truetype");font-display:swap}
@font-face{font-family:"IBM Plex Mono";font-weight:500;src:url(fonts/IBMPlexMono-Medium.ttf) format("truetype");font-display:swap}
:root{--bg:#FFF8E7;--fg:#2D2D2D;--muted:rgba(45,45,45,.6);--faint:rgba(45,45,45,.42);--rule:rgba(45,45,45,.12);--card:#fff;--accent:#FE0170;--accent-fg:#fff;--shadow:0 24px 60px rgba(45,45,45,.16);color-scheme:light}
@media (prefers-color-scheme:dark){:root{--bg:#1A1A1A;--fg:#FFF8E7;--muted:rgba(255,248,231,.62);--faint:rgba(255,248,231,.45);--rule:rgba(255,255,255,.14);--card:#1C1C1E;--shadow:0 24px 60px rgba(0,0,0,.5);color-scheme:dark}}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--fg);font:400 17px/1.6 "IBM Plex Sans",-apple-system,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--accent)}
.wrap{max-width:68rem;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}
.narrow{max-width:42rem}
.eyebrow{font:500 12px/1 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);margin:0 0 14px}
h1,h2,h3{font-weight:700;line-height:1.08;letter-spacing:-.02em;text-wrap:balance;margin:0}
h1{font-size:clamp(2.5rem,6.4vw,4.4rem)}
h2{font-size:clamp(1.8rem,4vw,2.6rem)}
h3{font-size:1.15rem;letter-spacing:-.01em;line-height:1.25}
p{margin:0 0 1em;max-width:60ch}
.lede{font-size:1.2rem;color:var(--muted);margin:1.2rem 0 1.8rem}
/* nav */
.nav{display:flex;align-items:center;justify-content:space-between;padding-block:18px}
.brand{display:flex;align-items:center;gap:10px;color:var(--fg);text-decoration:none;font-weight:700;letter-spacing:-.01em}
.brand img{width:34px;height:34px;border-radius:8px}
.nav nav a{font:500 13px "IBM Plex Mono",monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-decoration:none;margin-left:22px}
.nav nav a:hover{color:var(--accent)}
/* hero */
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;padding-block:40px 64px}
.cta{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.btn{display:inline-block;background:var(--accent);color:var(--accent-fg);font-weight:600;padding:15px 26px;border-radius:14px;text-decoration:none}
.btn[aria-disabled=true]{cursor:default}
.link{font-weight:600;color:var(--fg)}
.small{font-size:14px;color:var(--faint);margin-top:14px}
/* phones */
.phone{margin:0;justify-self:center;width:min(100%,300px);border-radius:44px;background:var(--card);padding:9px;box-shadow:var(--shadow),0 0 0 1px var(--rule)}
.phone img{display:block;width:100%;height:auto;border-radius:36px;aspect-ratio:640/1382;object-fit:cover;object-position:top}
.phone.crop img{aspect-ratio:640/860}
/* proof strip */
.strip{border-block:1px solid var(--rule);padding-block:20px}
.strip ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:14px 28px}
.strip li{font:500 13px/1.4 "IBM Plex Mono",monospace;letter-spacing:.04em;text-transform:uppercase}
.strip li::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--accent);margin-right:10px}
/* feature rows */
.row{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;padding-block:72px}
.row.flip .phone{order:-1}
.num{font:500 13px "IBM Plex Mono",monospace;color:var(--accent);letter-spacing:.1em}
.row h2{margin:10px 0 18px}
.row ul{padding-left:1.1rem;margin:0;color:var(--muted)}.row li{margin-bottom:.4rem}
/* grid */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:18px;padding-bottom:72px}
.card{background:var(--card);border-radius:12px;padding:24px;box-shadow:0 0 0 1px var(--rule)}
.card p{margin:.5rem 0 0;color:var(--muted);font-size:15.5px}
/* limits */
.limits{background:var(--card);border-radius:24px;padding:40px;box-shadow:0 0 0 1px var(--rule);margin-bottom:72px}
.limits h2{margin-bottom:16px}
.limits p{color:var(--muted)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:40px}
/* closing */
.closing{text-align:center;padding-block:40px 80px}
.closing p{margin-inline:auto;color:var(--muted)}
.closing .cta{justify-content:center}
.closing img{width:84px;height:84px;border-radius:19px;margin-bottom:22px}
footer{border-top:1px solid var(--rule);padding-block:24px 48px;font:400 13px "IBM Plex Mono",monospace;color:var(--faint)}
footer a{color:var(--faint)}
/* doc pages (support, privacy) */
.doc{padding-block:40px 40px}
.doc h1{font-size:clamp(2rem,5vw,3rem);margin-bottom:1.4rem}
.doc h2{font-size:1.3rem;letter-spacing:-.01em;margin:2.2rem 0 .5rem}
.doc ul,.doc ol{padding-left:1.2rem;max-width:60ch}
.note{border-left:3px solid var(--accent);padding-left:14px;color:var(--muted)}
@media(max-width:820px){.hero,.row,.two{grid-template-columns:1fr;gap:32px}.row{padding-block:48px}.row.flip .phone{order:0}.limits{padding:26px}.phone{width:min(100%,270px)}}
/* ---- mocks ---- */
/* App mocks, drawn to scale. --pt is one iOS point; every size below is the app's own
   (Theme.swift, ReaderContentView, PaperRowView, ReaderTopBar, TTSExpandedSheetView). {n} = n points. */
.app{--c-bg:#FFF8E7;--c-fg:#2D2D2D;--c-2:rgba(45,45,45,.55);--c-3:rgba(45,45,45,.42);--c-sep:rgba(45,45,45,.1);--c-card:#fff;--c-dark:#1A1A1A;font-family:"IBM Plex Sans",-apple-system,sans-serif;color:var(--c-fg);background:var(--c-bg);text-align:left;line-height:1.2;font-size:calc(var(--pt)*17);-webkit-font-smoothing:antialiased}
.app *{box-sizing:border-box}
.app .eb{font:500 calc(var(--pt)*12)/1.2 "IBM Plex Mono",monospace;letter-spacing:calc(var(--pt)*1.2);text-transform:uppercase;color:var(--c-3);display:block}
.app .ttl{font:700 calc(var(--pt)*28)/1.18 "IBM Plex Sans",sans-serif;margin:calc(var(--pt)*8) 0;display:block}
.app .by{font:400 calc(var(--pt)*15)/1.3 "IBM Plex Sans",sans-serif;color:var(--c-2);display:block;margin:0 0 calc(var(--pt)*20)}
.app .bd{font:400 calc(var(--pt)*17)/calc(var(--pt)*28.4) "IBM Plex Sans",sans-serif;margin:0 0 calc(var(--pt)*18);display:block}
.app .hd{font:600 calc(var(--pt)*20)/1.25 "IBM Plex Sans",sans-serif;margin:calc(var(--pt)*28) 0 calc(var(--pt)*12);display:block}
.app .ct{font-weight:600;font-size:calc(var(--pt)*13);color:var(--c-2)}
.app .drop::first-letter{float:left;font:700 calc(var(--pt)*52)/.8 "IBM Plex Sans",sans-serif;color:#FE0170;margin:calc(var(--pt)*4) calc(var(--pt)*8) 0 0}
.app .cap{font:italic 400 calc(var(--pt)*13)/1.35 "IBM Plex Sans",sans-serif;color:var(--c-2);text-align:center;display:block;padding:calc(var(--pt)*14) 0 calc(var(--pt)*20)}
.app .figbox{background:#fff;border-radius:calc(var(--pt)*10);padding:calc(var(--pt)*12);box-shadow:0 0 0 1px var(--c-sep)}
.app .figbox svg{display:block;width:100%;height:auto}
.app .tbl{background:#fff;border-radius:calc(var(--pt)*10);overflow:hidden;box-shadow:0 0 0 1px var(--c-sep)}
.app .tbl .r{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;border-top:1px solid var(--c-sep);font:400 calc(var(--pt)*14)/1.3 "IBM Plex Sans",sans-serif}
.app .tbl .r:first-child{border-top:0;font-weight:600}
.app .tbl .r span{padding:calc(var(--pt)*8) calc(var(--pt)*12)}
.app .glass{width:calc(var(--pt)*40);height:calc(var(--pt)*40);border-radius:50%;border:calc(var(--pt)*1) solid var(--c-sep);background:rgba(255,255,255,.62);display:grid;place-items:center;flex:none}
.app .glass svg,.app .ic{width:calc(var(--pt)*18);height:calc(var(--pt)*18);stroke:var(--c-fg);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.app .topbar{position:absolute;left:calc(var(--pt)*16);right:calc(var(--pt)*16);display:flex;gap:calc(var(--pt)*12);justify-content:space-between;z-index:3}
.app .topbar .grp{display:flex;gap:calc(var(--pt)*12)}
.app .dot8{width:calc(var(--pt)*8);height:calc(var(--pt)*8);border-radius:50%;background:#FE0170;display:inline-block}
.app .spin{width:calc(var(--pt)*12);height:calc(var(--pt)*12);border-radius:50%;border:calc(var(--pt)*2) solid var(--c-sep);border-top-color:var(--c-2);display:inline-block;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.app .lrow{display:flex;align-items:center;gap:calc(var(--pt)*12);padding:calc(var(--pt)*10) calc(var(--pt)*16);border-bottom:1px solid var(--c-sep)}
.app .lrow .t{font:600 calc(var(--pt)*16)/1.25 "IBM Plex Sans",sans-serif;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.app .lrow .a{font:400 calc(var(--pt)*13)/1.3 "IBM Plex Sans",sans-serif;color:var(--c-2);margin-top:calc(var(--pt)*4)}
.app .lrow .tr{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:calc(var(--pt)*4);font:400 calc(var(--pt)*12) "IBM Plex Sans",sans-serif;color:var(--c-2);flex:none}
.app .lrow .tr span{display:flex;align-items:center;gap:calc(var(--pt)*6)}
.app .nav2{display:flex;align-items:center;justify-content:space-between;padding:calc(var(--pt)*10) calc(var(--pt)*16) calc(var(--pt)*14)}
.app .nav2 b{font:600 calc(var(--pt)*17) "IBM Plex Sans",sans-serif}
.app .stack{display:grid}.app .stack>*{grid-area:1/1}
.app .capsule{position:absolute;right:calc(var(--pt)*16);bottom:calc(var(--pt)*16);z-index:4;background:var(--c-dark);color:#FFF8E7;font:500 calc(var(--pt)*14) "IBM Plex Sans",sans-serif;border-radius:999px;padding:calc(var(--pt)*10) calc(var(--pt)*16);display:flex;gap:calc(var(--pt)*8);align-items:center}
.app .capsule .spin{border-color:rgba(255,248,231,.3);border-top-color:#FFF8E7}
/* devices */
.dev{--pt:.42px;position:relative;flex:none;width:calc(var(--pt)*var(--w));height:calc(var(--pt)*var(--h));background:#161616;border-radius:calc(var(--pt)*var(--r));padding:calc(var(--pt)*8);box-shadow:var(--shadow),0 0 0 1px var(--rule)}
.dev .scr{position:relative;width:100%;height:100%;border-radius:calc(var(--pt)*(var(--r) - 8));overflow:hidden}
.dev .island{position:absolute;top:calc(var(--pt)*11);left:50%;transform:translateX(-50%);width:calc(var(--pt)*120);height:calc(var(--pt)*35);border-radius:999px;background:#000;z-index:6}
.dev .notch{position:absolute;top:0;left:50%;transform:translateX(-50%);width:calc(var(--pt)*170);height:calc(var(--pt)*30);border-radius:0 0 calc(var(--pt)*18) calc(var(--pt)*18);background:#000;z-index:6}
.dev .cam{position:absolute;top:calc(var(--pt)*14);left:50%;width:calc(var(--pt)*8);height:calc(var(--pt)*8);border-radius:50%;background:#000;z-index:6}
.dev .sb{position:absolute;top:calc(var(--pt)*18);left:calc(var(--pt)*36);right:calc(var(--pt)*36);display:flex;justify-content:space-between;font:700 calc(var(--pt)*16) "IBM Plex Sans",sans-serif;z-index:5}
.dev .sb i{display:inline-block;width:calc(var(--pt)*26);height:calc(var(--pt)*12);border-radius:calc(var(--pt)*4);background:#2D2D2D}
.dev.ipad .sb{top:calc(var(--pt)*12);left:calc(var(--pt)*24);right:calc(var(--pt)*24);font-size:calc(var(--pt)*14)}
.dev .read{position:absolute;inset:0;padding:calc(var(--pt)*108) calc(var(--pt)*24) 0;overflow:hidden}
.dev.ipad .read{padding:calc(var(--pt)*86) calc((100% - var(--pt)*560)/2) 0}
.devs{display:flex;align-items:flex-end;gap:36px;overflow-x:auto;scroll-snap-type:x proximity;padding:20px max(20px,calc((100vw - 68rem)/2 + 20px)) 28px;margin-inline:calc(50% - 50vw);scrollbar-width:thin}
.devs figure{margin:0;flex:none;scroll-snap-align:center;text-align:center}
.devs figcaption{font:500 12px "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:16px}
.devs figcaption small{display:block;color:var(--faint);font-size:11px;margin-top:3px;letter-spacing:.04em}
.scrollhint{font:500 12px "IBM Plex Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);margin:24px 0 0}
/* phone in a feature row */
.fphone{--pt:.7px;margin:0;justify-self:center}
/* foldable, open */
.fold-wrap{width:min(100%,64rem);margin:48px 0 0;container-type:inline-size}
.fold{--pt:.1235cqw;width:100%;aspect-ratio:7.4/5.6;border-radius:calc(var(--pt)*40);padding:calc(var(--pt)*9);background:#161616;box-shadow:var(--shadow),0 0 0 1px var(--rule)}
.fold .scr{position:relative;height:100%;border-radius:calc(var(--pt)*32);overflow:hidden;display:grid;grid-template-columns:calc(var(--pt)*300) 1fr}
.fold .side{border-right:1px solid var(--c-sep);overflow:hidden;padding-top:calc(var(--pt)*18)}
.fold .detail{position:relative;overflow:hidden}
.fold .empty{display:grid;place-items:center;height:100%;text-align:center;color:var(--c-3);font:400 calc(var(--pt)*15) "IBM Plex Sans",sans-serif}
.fold .empty svg{display:block;margin:0 auto calc(var(--pt)*10);width:calc(var(--pt)*30);height:calc(var(--pt)*30);stroke:var(--c-3);fill:none;stroke-width:1.4}
.fold .flipper{position:absolute;inset:0;perspective:calc(var(--pt)*1600)}
.fold .card3{position:absolute;inset:0;transform-style:preserve-3d;animation:flip 12s infinite ease-in-out}
.fold .face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}
.fold .face.back{transform:rotateY(180deg)}
.fold .readpane{padding:calc(var(--pt)*86) calc(var(--pt)*24) 0}
.fold .paper{background:#e9e6df;padding:calc(var(--pt)*22) calc(var(--pt)*40) 0}
.fold .sheetp{background:#fff;color:#1a1a1a;font-family:Georgia,"Times New Roman",serif;height:100%;padding:calc(var(--pt)*34) calc(var(--pt)*40) 0;box-shadow:0 0 0 1px rgba(0,0,0,.08);line-height:1.34}
.fold .sheetp .run{display:flex;justify-content:space-between;font:calc(var(--pt)*9.5) "IBM Plex Mono",monospace;color:#777;margin-bottom:calc(var(--pt)*26)}
.fold .sheetp .pt{font:700 calc(var(--pt)*25)/1.15 Georgia,serif;text-align:center;margin:0 0 calc(var(--pt)*10)}
.fold .sheetp .au{text-align:center;font-size:calc(var(--pt)*13);margin:0 0 calc(var(--pt)*16)}
.fold .sheetp .abs{font-size:calc(var(--pt)*11.5);margin:0 calc(var(--pt)*20) calc(var(--pt)*16);text-align:justify}
.fold .sheetp .cols{columns:2;column-gap:calc(var(--pt)*24);font-size:calc(var(--pt)*11.5);text-align:justify;hyphens:auto}
.fold .sheetp .cols p{margin:0 0 calc(var(--pt)*8)}.fold .sheetp .cols b.h{display:block;margin:calc(var(--pt)*8) 0 calc(var(--pt)*3)}
@keyframes p1{0%,24%{opacity:1}27%,97%{opacity:0}100%{opacity:1}}
@keyframes p2{0%,25%{opacity:0}28%,52%{opacity:1}55%,100%{opacity:0}}
@keyframes p23{0%,25%{opacity:0}28%,95%{opacity:1}98%,100%{opacity:0}}
@keyframes p3{0%,53%{opacity:0}56%,94%{opacity:1}97%,100%{opacity:0}}
@keyframes flip{0%,50%{transform:rotateY(0)}58%,94%{transform:rotateY(180deg)}100%{transform:rotateY(360deg)}}
@keyframes pulse{0%,16%{box-shadow:0 0 0 1px var(--c-sep)}20%{box-shadow:0 0 0 calc(var(--pt)*6) rgba(254,1,112,.35)}26%,100%{box-shadow:0 0 0 1px var(--c-sep)}}
.a1{animation:p1 12s infinite}.a2{animation:p2 12s infinite}.a3{animation:p3 12s infinite}.a23{animation:p23 12s infinite}
.fold .pulse{animation:pulse 12s infinite}
@media(prefers-reduced-motion:reduce){.a1,.a2,.a23,.fold .pulse,.fold .card3,.app .spin{animation:none}.a1,.a2{opacity:0}.a3,.a23{opacity:1}.fold .card3{transform:rotateY(180deg)}}
/* listening sheet */
.app .tts{position:absolute;left:0;right:0;bottom:0;background:var(--c-bg);border-radius:calc(var(--pt)*24) calc(var(--pt)*24) 0 0;padding:calc(var(--pt)*10) calc(var(--pt)*24) calc(var(--pt)*28);box-shadow:0 calc(var(--pt)*-8) calc(var(--pt)*40) rgba(0,0,0,.18);z-index:4}
.app .tts .grab{width:calc(var(--pt)*36);height:calc(var(--pt)*5);border-radius:9px;background:var(--c-sep);margin:0 auto calc(var(--pt)*14)}
.app .tts .tt{font:600 calc(var(--pt)*17)/1.25 "IBM Plex Sans",sans-serif;text-align:center}
.app .tts .tb{font:400 calc(var(--pt)*13) "IBM Plex Sans",sans-serif;color:var(--c-2);text-align:center;margin-top:calc(var(--pt)*2)}
.app .tts .scrub{height:calc(var(--pt)*4);border-radius:9px;background:var(--c-sep);margin:calc(var(--pt)*22) 0 calc(var(--pt)*6);position:relative}
.app .tts .scrub::before{content:"";position:absolute;left:0;top:0;bottom:0;width:calc(var(--pt)*22);background:#FE0170;border-radius:9px}
.app .tts .scrub::after{content:"";position:absolute;left:calc(var(--pt)*14);top:calc(var(--pt)*-8);width:calc(var(--pt)*20);height:calc(var(--pt)*20);border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.25)}
.app .tts .times{display:flex;justify-content:space-between;font:400 calc(var(--pt)*12) "IBM Plex Mono",monospace;color:var(--c-3)}
.app .tts .ctl{display:flex;justify-content:center;align-items:center;gap:calc(var(--pt)*44);margin:calc(var(--pt)*18) 0}
.app .tts .play{width:calc(var(--pt)*68);height:calc(var(--pt)*68);border-radius:50%;background:#FE0170;display:grid;place-items:center}
.app .tts .play svg{width:calc(var(--pt)*26);height:calc(var(--pt)*26);fill:#fff;stroke:none}
.app .tts .skip svg{width:calc(var(--pt)*30);height:calc(var(--pt)*30)}
.app .tts .lab{display:flex;justify-content:space-between;align-items:center;font:400 calc(var(--pt)*13) "IBM Plex Sans",sans-serif;color:var(--c-2);margin-top:calc(var(--pt)*12)}
.app .tts .lab b{font:500 calc(var(--pt)*15) "IBM Plex Mono",monospace;color:var(--c-fg)}
.app .tts .slider{height:calc(var(--pt)*4);border-radius:9px;background:var(--c-sep);position:relative;margin:calc(var(--pt)*12) 0}
.app .tts .slider::before{content:"";position:absolute;left:0;top:0;bottom:0;width:40%;background:#FE0170;border-radius:9px}
.app .tts .slider::after{content:"";position:absolute;left:calc(40% - var(--pt)*10);top:calc(var(--pt)*-8);width:calc(var(--pt)*20);height:calc(var(--pt)*20);border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.25)}
.app .tts .pick{font:400 calc(var(--pt)*17) "IBM Plex Sans",sans-serif;display:flex;justify-content:space-between;margin:calc(var(--pt)*6) 0 calc(var(--pt)*10)}
.app .tts .tog{display:flex;justify-content:space-between;align-items:center;font:400 calc(var(--pt)*17) "IBM Plex Sans",sans-serif;padding-top:calc(var(--pt)*10)}
.app .tts .sw{width:calc(var(--pt)*51);height:calc(var(--pt)*31);border-radius:999px;background:#FE0170;position:relative}.app .tts .sw::after{content:"";position:absolute;right:calc(var(--pt)*2);top:calc(var(--pt)*2);width:calc(var(--pt)*27);height:calc(var(--pt)*27);border-radius:50%;background:#fff}
.app mark{background:rgba(254,1,112,.2);color:inherit;border-radius:calc(var(--pt)*3);padding:0 calc(var(--pt)*1)}
.app .dim{opacity:.55}
@media(max-width:820px){.fold-wrap{margin-top:32px}}

.exp{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:start;background:var(--card);border-radius:24px;padding:36px;box-shadow:0 0 0 1px var(--rule)}
.exp img{width:56px;height:56px;border-radius:13px}.exp p{color:var(--muted)}
.beta{display:inline-block;margin-left:10px;padding:3px 8px;border-radius:999px;border:1px solid var(--accent);color:var(--accent);font:500 10.5px/1 "IBM Plex Mono",monospace;letter-spacing:.12em;text-transform:uppercase;vertical-align:2px}
/* one vertical rhythm for every section: eyebrow 14 -> heading 20 -> body; sections 88 apart */
.sec{padding-block:88px}
.sec>.eyebrow,.sec .sec-head .eyebrow,.hero2>.eyebrow{margin:0 0 14px}
.sec h2{margin:0 0 20px}
.sec .sec-head{margin-bottom:40px}.sec .sec-head h2{margin-bottom:0}
.row{padding-block:0;gap:64px}.row h2{margin:0 0 20px}
.row+.row{margin-top:88px}
.limits,.exp{margin:0}
.hero2{padding-block:44px 0}.hero2 h1{margin-bottom:0}
.hero2 .lede{margin:20px auto 28px}
.hero2 p{margin-inline:auto}.fold{text-align:left}
.strip{margin-top:88px}
.need{padding:0}.need p{margin:0}
.reel{padding-top:56px;padding-bottom:0}
.closing{padding-block:88px}.closing h2{margin-bottom:20px}
.act{padding-block:88px 0}
@media(max-width:820px){.sec{padding-block:56px}.row+.row{margin-top:56px}.strip{margin-top:56px}.act{padding-top:56px}.closing{padding-block:56px}.steps{grid-template-columns:1fr;gap:16px}.fold .side{padding:1.6em}.exp{grid-template-columns:1fr;padding:24px}}


.hero2{text-align:left;padding-block:44px 0}.hero2 h1{max-width:18ch;margin:0}.hero2 .cta{justify-content:flex-start}
.hero2 .lede{margin:20px 0 28px}.hero2 .small{margin:16px 0 0}
.fold-wrap{margin-inline:0}
.fold .scr{background:var(--c-bg)}
.fold-wrap{width:100%}
.need .scrollhint{margin-top:24px}
.fold2 .scr{display:grid;grid-template-columns:calc(var(--pt)*300) 1fr}
.fold2 .side{border-right:1px solid var(--c-sep);overflow:hidden;padding-top:calc(var(--pt)*18)}
.fold2 .readpane2{position:relative;overflow:hidden;padding:calc(var(--pt)*86) calc(var(--pt)*24) 0}
.roles{list-style:none;margin:0 0 20px;padding:0;color:var(--fg);font-weight:600}.roles li{margin:0 0 4px}
.row.flip .fphone{order:-1}
@media(max-width:820px){.row.flip .fphone{order:0}}
