/* Vetly marketing site · Direction A "Switchboard" (flavors.design Risograph × Fambly), restraint pass applied.
   Rules: pink = one priority per viewport; stickers welcome, ≤1 large scene per viewport; 160px section rhythm desktop;
   motion = transform/opacity, ease-out cubic-bezier(.23,1,.32,1), press 0.96 @150ms; reduced motion honoured. */
:root{--f-disp:'Fraunces',Georgia,serif;--f-ui:'Work Sans',system-ui,sans-serif;--f-mono:'Geist Mono',ui-monospace,monospace;
 --stock:#f3eee2;--bg2:#e9e0cc;--card:#fbf8f0;--ink:#1e1b2e;--mut:#5b5566;--rule:rgba(30,27,46,.16);--rule2:rgba(30,27,46,.28);
 --pink:#ff48b0;--pink-ink:#b3156f;--pink-wash:#ffd6ec;--teal:#00787f;--teal-ink:#00646a;--teal-wash:#cfe7e3;--yel:#f6b73c;--yel-wash:#fbe7b8;--red:#e8452c;--red-ink:#b42a14;--red-wash:#fbd5cb;
 --out:cubic-bezier(.23,1,.32,1);--drawer:cubic-bezier(.32,.72,0,1);--sw:1.75;--sec:160px}
html.dark{--stock:#16141d;--bg2:#1f1c28;--card:#211e2b;--ink:#f1ece2;--mut:#aaa3b3;--rule:rgba(241,236,226,.14);--rule2:rgba(241,236,226,.26);--pink-ink:#ff8fd0;--pink-wash:rgba(255,72,176,.16);--teal:#2fb3ab;--teal-ink:#5fd0c6;--teal-wash:rgba(47,179,171,.16);--yel-wash:rgba(246,183,60,.16);--red-wash:rgba(232,69,44,.18);--red-ink:#ff8a72}
body{background:var(--stock);color:var(--ink);font:400 18px/1.55 var(--f-ui);overflow-x:hidden;-webkit-font-smoothing:antialiased}
a{color:inherit}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--stock);padding:10px 14px;z-index:99}.skip:focus{left:8px}
:focus-visible{outline:2.5px solid var(--teal);outline-offset:3px}
.grain{position:fixed;inset:0;pointer-events:none;z-index:50;opacity:.45;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 .12 0 0 0 0 .1 0 0 0 0 .18 0 0 0 .1 0'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E")}
html.dark .grain{mix-blend-mode:screen;opacity:.18}
.disp{font-family:var(--f-disp);font-weight:900;font-variation-settings:'SOFT' 100,'WONK' 0,'opsz' 144;letter-spacing:-.035em;line-height:.92}
.wrap{max-width:1180px;margin:0 auto;padding:0 32px}
.eyebrow{font:600 13px var(--f-mono);letter-spacing:.08em;text-transform:uppercase;display:inline-flex;gap:8px;align-items:center;color:var(--teal-ink)}
.eyebrow.pk{color:var(--pink-ink)}
.label-ill{font:500 12px var(--f-mono);color:var(--mut);letter-spacing:.02em}
.lede{font-size:21px;line-height:1.5;max-width:620px;color:var(--ink)}
.muted{color:var(--mut)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 26px;border-radius:99px;font:600 17px var(--f-ui);letter-spacing:-.01em;transition:transform 150ms var(--out),background-color 150ms var(--out);white-space:nowrap;cursor:pointer;border:0}
.btn:active{transform:scale(.96)}
.btn-ink{background:var(--ink);color:var(--stock)}
.btn-hero{box-shadow:4px 4px 0 var(--teal)}
.btn-line{box-shadow:inset 0 0 0 2px var(--ink);background:var(--card);color:var(--ink)}
.btn-sm{height:42px;font-size:15px;padding:0 18px}
.btn[disabled],.btn[aria-disabled=true]{opacity:.5;pointer-events:none}
.chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:99px;font:600 12px var(--f-mono);letter-spacing:.02em;white-space:nowrap}
.chip.ok{background:var(--teal-wash);color:var(--teal-ink)}.chip.beta{background:var(--yel-wash);color:#7a5200}.chip.plan{box-shadow:inset 0 0 0 1px var(--rule2);color:var(--mut)}.chip.warn{background:var(--red-wash);color:var(--red-ink)}.chip.pk{background:var(--pink-wash);color:var(--pink-ink)}
html.dark .chip.beta{color:var(--yel)}
.hi{flex:none;stroke-width:var(--sw)}
/* ticker */
.ticker{background:#1e1b2e;color:#f3eee2;height:38px;overflow:hidden;display:flex;align-items:center;font:500 13px var(--f-mono);white-space:nowrap}
.ticker .tk{display:flex;gap:44px;padding-left:24px;animation:tk 70s linear infinite}
.ticker b{color:#ff8fd0;font-weight:600}.ticker i{font-style:normal;color:#8de0d6}
@keyframes tk{to{transform:translateX(-50%)}}
/* nav */
.nav{display:flex;align-items:center;gap:30px;padding:20px 40px;position:relative;z-index:5}
.nav .wm{width:112px;color:var(--ink);display:block}.nav .wm svg{width:100%;height:auto;display:block}
.nav nav{display:flex;gap:26px;font-weight:500;font-size:16px;margin-left:14px}
.nav nav a{text-decoration:none;padding:6px 0;border-bottom:2px solid transparent}.nav nav a[aria-current=page]{border-color:var(--ink)}
.nav .sp{flex:1}.nav .signin{font-weight:500;font-size:16px;text-decoration:none}
.nav .menu{display:none}
.icon-btn{width:40px;height:40px;display:inline-grid;place-items:center;border-radius:99px;color:var(--ink);transition:transform 150ms var(--out)}.icon-btn:active{transform:scale(.96)}
/* page hero (inner pages) */
.phero{position:relative;padding:96px 0 120px;overflow:hidden}
.phero h1{font-size:112px;max-width:1000px;margin-top:18px}
.phero .lede{margin-top:28px}
.phero .ctas{display:flex;gap:14px;margin-top:36px;flex-wrap:wrap}
.phero .cl{position:absolute}
.crumb{font:500 13px var(--f-mono);color:var(--mut)}.crumb a{text-decoration:none}.crumb a:hover{text-decoration:underline}
/* generic sections */
.sec{padding:var(--sec) 0}
.sec.tint{background:var(--bg2)}
.sec.dark{background:#1e1b2e;color:#f3eee2}.sec.dark .eyebrow{color:#8de0d6}.sec.dark .muted{color:#cfc8d6}
.h2{font-size:84px;margin-top:14px;max-width:980px}
.h3{font:800 30px/1.1 var(--f-disp);font-variation-settings:'SOFT' 100,'opsz' 48;letter-spacing:-.01em}
.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.split.r>:first-child{order:2}
.prose{max-width:720px}.prose h2{font:800 36px/1.1 var(--f-disp);font-variation-settings:'SOFT' 100;margin:48px 0 14px}.prose h3{font:700 22px var(--f-ui);margin:32px 0 10px}
.prose p,.prose li{margin:0 0 14px;color:var(--ink)}.prose ul,.prose ol{padding-left:22px}.prose a{color:var(--teal-ink)}
.rows{border-top:1.5px solid var(--ink)}
.rows>li{display:grid;grid-template-columns:56px 1fr auto;gap:18px;padding:20px 0;border-bottom:1px solid var(--rule2);align-items:baseline;list-style:none}
.rows .k{font:600 13px var(--f-mono);color:var(--mut)}
.rows b{font-weight:600}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{background:var(--card);border-radius:14px;box-shadow:0 0 0 1px var(--rule);padding:26px}
.card h3{font:800 24px/1.15 var(--f-disp);font-variation-settings:'SOFT' 100;margin:12px 0 8px}.card p{font-size:16px;color:var(--mut)}
.anchors{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.anchors a{padding:8px 14px;border-radius:99px;box-shadow:inset 0 0 0 1.5px var(--rule2);font:500 14px var(--f-ui);text-decoration:none}
.anchors a:hover{box-shadow:inset 0 0 0 1.5px var(--ink)}
.art img,picture.art img{display:block;width:100%;height:auto}
.scene{border-radius:20px;overflow:hidden;box-shadow:0 0 0 1px var(--rule)}.scene img{display:block;width:100%;height:auto}
.stk-slot{display:block}.stk-slot svg{width:100%;height:auto;display:block}
.cl{position:absolute;z-index:1}
/* hero (home) */
.hero{position:relative;padding:56px 0 0;text-align:center;overflow:hidden}
.hero h1{font-size:128px;position:relative;z-index:2}
.hero h1 .l2{display:block}
.reg{position:relative;display:inline-block;color:var(--ink);isolation:isolate}
.reg:before{content:attr(data-t);position:absolute;inset:0;z-index:-1;color:var(--pink);transform:translate(7px,5px)}
.reg.t:before{color:var(--teal);opacity:.55}
.hero .sub{max-width:640px;margin:40px auto 0;font-size:21px;line-height:1.45;position:relative;z-index:2}
.hero .sub b{font-weight:600}
.hero .ctas{display:flex;gap:16px;justify-content:center;margin-top:40px;position:relative;z-index:2}
.c-clock{width:160px;left:36px;top:56px;transform:rotate(-10deg)}
.c-bell{width:170px;right:24px;top:14px;transform:rotate(9deg)}
.c-bubble{width:250px;left:60px;top:350px;transform:rotate(-6deg)}
.c-bed{width:220px;left:-20px;top:430px;transform:rotate(6deg)}
.c-mug{width:96px;left:300px;top:430px;transform:rotate(-8deg)}
.c-house{width:170px;right:60px;top:300px;transform:rotate(5deg)}
.c-carer{width:160px;right:6px;top:480px;transform:rotate(-5deg)}
.c-yes{width:116px;right:250px;top:440px;transform:rotate(8deg)}
.c-spark1{left:240px;top:36px;width:40px}.c-spark2{right:270px;top:60px;width:30px}
.board{max-width:1240px;margin:110px auto 0;padding:0 32px;position:relative;z-index:2}
.board-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px}
.board-top .eyebrow{color:var(--pink-ink)}
.tickets{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;text-align:left}
.tix{background:var(--card);padding:16px 16px 14px;position:relative;box-shadow:inset 0 0 0 1.5px var(--ink);min-height:170px;display:flex;flex-direction:column;gap:2px}
.tix:before{content:"";position:absolute;left:0;right:0;top:50px;border-top:1.5px dashed var(--rule2)}
.tix .t{font:600 22px var(--f-mono);letter-spacing:-.02em;margin-bottom:14px}.tix .t small{font-size:12px;color:var(--mut);margin-left:6px}
.tix .n{font:800 20px/1.1 var(--f-disp);font-variation-settings:'SOFT' 100,'opsz' 30}
.tix .s{font-size:13.5px;color:var(--mut);line-height:1.35}
.tix .st{margin-top:auto;display:inline-flex;align-items:center;gap:6px;font:600 12px var(--f-ui);padding:5px 8px;align-self:flex-start}
.tix.cov .st{background:var(--teal);color:#fff}.tix.con .st{background:var(--yel-wash);color:var(--ink)}.tix.app .st{background:var(--ink);color:var(--stock)}
.tix .stampmini{display:none;position:absolute;right:-14px;top:-22px;width:84px;transform:rotate(14deg)}
.hero-foot{display:flex;justify-content:space-between;max-width:1240px;margin:22px auto 0;padding:0 32px 100px}
/* pinned story */
.story{background:#1e1b2e;color:#f3eee2;position:relative}
.story .head{padding:var(--sec) 0 40px}
.story .eyebrow{color:#8de0d6}
.story h2{font-size:104px;max-width:1000px;margin-top:18px}
.story h2 em{font-style:italic;font-weight:400;color:var(--pink)}
.story .intro{max-width:560px;margin-top:22px;color:#cfc8d6;font-size:20px}
.pin{height:calc(var(--steps,5) * 85vh);position:relative}
.pin-in{position:sticky;top:0;height:100vh;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;max-width:1180px;margin:0 auto;padding:0 32px}
.p-steps{position:relative;height:420px}
.p-step{position:absolute;inset:0;opacity:0;transform:translateY(16px);transition:opacity 260ms var(--out),transform 260ms var(--out)}
.p-step.on{opacity:1;transform:none}
.p-time{font:500 112px/1 var(--f-mono);letter-spacing:-.05em;color:#f3eee2}.p-time small{font-size:24px;color:#8de0d6;margin-left:6px}
.p-step h3{font:800 44px/1.05 var(--f-disp);font-variation-settings:'SOFT' 100,'opsz' 72;margin-top:16px}
.p-step p{color:#cfc8d6;font-size:19px;margin-top:12px;max-width:470px}
.p-step .who{display:inline-flex;gap:8px;align-items:center;margin-top:18px;font:500 13px var(--f-mono);color:#8de0d6}
.p-vis{position:relative;height:560px}
.p-vis .pv{position:absolute;inset:0;display:grid;place-items:center;opacity:0;transform:scale(.97);transition:opacity 300ms var(--out),transform 300ms var(--out)}
.p-vis .pv.on{opacity:1;transform:none}
.p-vis .panel{width:300px;border-radius:16px;overflow:hidden;box-shadow:0 0 0 2px #f3eee2,0 30px 60px -20px rgba(0,0,0,.6);transform:rotate(-2deg)}
.p-vis .frag{position:absolute;right:0;bottom:40px;width:300px;background:#fbf8f0;color:#1e1b2e;border-radius:14px;padding:16px 18px;font-size:14.5px;box-shadow:0 20px 40px -18px rgba(0,0,0,.6)}
.p-vis .frag .fh{display:flex;justify-content:space-between;font:500 12px var(--f-mono);color:#5b5566;margin-bottom:6px}
.p-vis .frag b{display:block;font:800 19px var(--f-disp);font-variation-settings:'SOFT' 100;margin-bottom:4px}
.p-prog{position:absolute;left:32px;bottom:48px;display:flex;gap:8px}
.p-prog i{width:34px;height:4px;border-radius:2px;background:rgba(243,238,226,.2);overflow:hidden;position:relative}
.p-prog i:after{content:"";position:absolute;inset:0;background:#8de0d6;transform:scaleX(0);transform-origin:left;transition:transform 260ms var(--out)}
.p-prog i.on:after{transform:none}
/* static/reduced-motion story: compact filmstrip */
.strip5{display:none;grid-template-columns:repeat(5,1fr);gap:18px;max-width:1180px;margin:0 auto;padding:0 32px var(--sec)}
.strip5 .sc .panel{border-radius:12px;overflow:hidden;box-shadow:0 0 0 1.5px #f3eee2}
.strip5 .sc b{display:block;font:500 30px var(--f-mono);margin-top:14px;letter-spacing:-.03em}.strip5 .sc h4{font:800 19px/1.15 var(--f-disp);font-variation-settings:'SOFT' 100;margin-top:4px}.strip5 .sc p{font-size:14px;color:#cfc8d6;margin-top:6px}
.static .pin,.no-pin .pin{display:none}.static .strip5,.no-pin .strip5{display:grid}
@media (prefers-reduced-motion:reduce){.pin{display:none}.strip5{display:grid}}
/* live demo */
.demo{padding:var(--sec) 0;background:var(--bg2);overflow:hidden}
.demo h2{font-size:104px}
.demo-grid{display:grid;grid-template-columns:420px 1fr;gap:56px;margin-top:56px;align-items:start}
.composer{background:var(--card);border-radius:18px;box-shadow:0 0 0 1.5px var(--ink);padding:22px}
.composer label{font:500 13px var(--f-mono);color:var(--mut);display:block;border-bottom:1.5px dashed var(--rule2);padding-bottom:10px}
.composer textarea{width:100%;border:0;background:transparent;font:500 28px/1.25 var(--f-ui);color:var(--ink);resize:none;padding:18px 0 12px;min-height:116px;letter-spacing:-.01em}
.composer textarea:focus{outline:none}
.composer .chips{display:flex;flex-wrap:wrap;gap:8px}
.composer .chips button{padding:7px 13px;border-radius:99px;box-shadow:inset 0 0 0 1.5px var(--rule2);font:500 14px var(--f-ui);background:transparent;color:var(--ink);transition:transform 150ms var(--out)}
.composer .chips button:active{transform:scale(.96)}
.composer .send{margin-top:18px;width:100%}
.composer .err{color:var(--red-ink);font-size:14px;margin-top:8px}
.sw{background:#1e1b2e;color:#f3eee2;padding:24px 26px;border-radius:18px}
.sw-h{display:flex;justify-content:space-between;font:500 13px var(--f-mono);color:#cfc8d6;margin-bottom:12px}
.sw-log{font:500 13px/1.6 var(--f-mono);color:#8de0d6;min-height:44px;border-bottom:1px solid rgba(243,238,226,.14);padding-bottom:10px;margin-bottom:4px}
.sw-row{display:grid;grid-template-columns:84px 1fr 200px;align-items:center;gap:16px;padding:13px 0;border-top:1px solid rgba(243,238,226,.1);opacity:.35;transform:translateX(-8px);transition:opacity 240ms var(--out),transform 240ms var(--out)}
.sw-row.in{opacity:1;transform:none}
.sw-row .t{font:600 18px var(--f-mono)}.sw-row .n{font:800 20px var(--f-disp);font-variation-settings:'SOFT' 100,'opsz' 30}.sw-row .n small{display:block;font:400 13px var(--f-ui);color:#aaa3b3}
.lamp{display:inline-flex;align-items:center;gap:8px;font:600 13px var(--f-ui);padding:6px 11px;justify-self:start;border-radius:6px;transition:background-color 200ms var(--out),color 200ms var(--out)}
.lamp i{width:9px;height:9px;border-radius:50%}
.l-idle{box-shadow:inset 0 0 0 1px rgba(243,238,226,.25);color:#aaa3b3}.l-idle i{box-shadow:inset 0 0 0 1.5px #aaa3b3}
.l-con{background:rgba(246,183,60,.16);color:#f6b73c}.l-con i{background:#f6b73c;animation:pulse 1.2s ease-in-out infinite}
.l-app{background:#ff48b0;color:#1e1b2e}.l-app i{background:#1e1b2e}
.l-cov{background:#00787f;color:#fff}.l-cov i{background:#bff3ec}
@keyframes pulse{50%{opacity:.35}}
.sw-foot{display:flex;justify-content:space-between;margin-top:14px;font:500 12px var(--f-mono);color:#aaa3b3}
.sw .approve{display:none;margin-top:14px;background:#fbf8f0;color:#1e1b2e;border-radius:12px;padding:14px 16px;align-items:center;gap:14px}
.sw .approve.show{display:flex}
.sw .approve .stp{width:84px;flex:none}
.sw .approve p{flex:1;font-size:14.5px}
.sw .approve .btn{height:42px;font-size:15px}
/* decide */
.decide{display:grid;grid-template-columns:1fr 1fr}
.dz{padding:120px 64px 100px;position:relative}
.dz.v{background:var(--stock);border-right:1px solid var(--rule2)}.dz.u{background:var(--bg2)}
.dz h2{font-size:84px;margin:14px 0 36px;max-width:72%}
.dz ul{list-style:none;border-top:1.5px solid var(--ink)}
.dz li{display:flex;gap:16px;padding:15px 0;border-bottom:1px solid var(--rule2);font-size:18px}
.dz li .k{font:600 14px var(--f-mono);min-width:34px;color:var(--mut)}
.dz .stk-w{position:absolute;width:150px;right:40px;top:50px}
/* peek */
.peek{padding:var(--sec) 0;overflow:hidden}
.peek h2{font-size:92px;max-width:980px}
.peek .shot{margin:120px auto 0;max-width:1240px;position:relative;padding:0 32px}
.peek .shot img{width:100%;display:block;border-radius:14px;box-shadow:0 0 0 1.5px var(--ink),14px 14px 0 var(--teal)}
.note{position:absolute;font:italic 400 23px/1.15 var(--f-disp);font-variation-settings:'SOFT' 100,'opsz' 36;max-width:240px}
.note:before{content:"";position:absolute;width:11px;height:11px;border-radius:50%;background:var(--ink)}
.n1{left:24px;top:-84px}.n1:before{left:120px;top:90px}
.n2{right:140px;top:-86px;text-align:right}.n2:before{right:20px;top:92px}
.n3{right:0;bottom:-70px}.n3:before{left:-22px;top:8px}
/* marquee + numbers */
.mq{border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);overflow:hidden;padding:22px 0;background:var(--card)}
.mq .row{display:flex;gap:40px;white-space:nowrap;animation:tk 50s linear infinite;font-size:84px;align-items:center;width:max-content}
.mq .row span:nth-child(4n+1){color:transparent;-webkit-text-stroke:2px var(--ink)}
.mq .row .dot{width:22px;height:22px;border-radius:50%;background:var(--teal);flex:none}
.nums{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:2px solid var(--ink)}
.num{padding:48px 32px 40px;border-right:1px solid var(--rule2)}.num:last-child{border-right:0}
.num b{display:block;font-size:140px}.num p{font-size:17px;margin-top:10px;max-width:240px}.num small{display:block;margin-top:10px;font:500 12px var(--f-mono);color:var(--mut)}
.num:nth-child(2) b{color:var(--teal)}.num:nth-child(4) b{color:var(--pink)}
/* phone mock */
.phone{width:300px;height:620px;border-radius:52px;background:#141414;padding:11px;box-shadow:0 0 0 2px #2a2733;position:relative;flex:none}
.phone .scr{width:100%;height:100%;border-radius:42px;background:#f6f3ec;overflow:hidden;display:flex;flex-direction:column;color:#1e1b2e;font-size:14px}
.phone .notch{position:absolute;top:22px;left:50%;width:96px;height:28px;margin-left:-48px;border-radius:20px;background:#141414;z-index:3}
.sms-h{padding:54px 16px 10px;text-align:center;border-bottom:1px solid #e3ddd0;font-size:12px;color:#5b5566}.sms-h b{display:block;color:#1e1b2e;font-size:14px}
.sms{padding:12px 12px;display:flex;flex-direction:column;gap:8px;overflow:hidden}
.sms .ts{text-align:center;font-size:11px;color:#8a8494;margin:4px 0}
.b{max-width:82%;padding:9px 12px;border-radius:18px;line-height:1.35}
.b.them{background:#e7e2d8;align-self:flex-start;border-bottom-left-radius:6px}
.b.me{background:#2f7cf6;color:#fff;align-self:flex-end;border-bottom-right-radius:6px}
.b.sys{background:#fff;box-shadow:inset 0 0 0 1.5px #1e1b2e;align-self:flex-start;border-bottom-left-radius:6px}
/* caregivers */
.cgsec{padding:var(--sec) 0}
.cgsec .grid{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:center}
.cgsec h2{font-size:84px}.cgsec p{font-size:20px;margin-top:22px;max-width:520px}
.ticks{list-style:none;margin-top:26px;display:flex;flex-direction:column;gap:12px;font-weight:500;font-size:18px;color:var(--teal-ink)}
.ticks li{display:flex;gap:12px;align-items:center;--sw:2.4}
.cgsec .vis{position:relative}
.cgsec .vis .scene{transform:rotate(1.2deg)}
.cgsec .vis .phone{position:absolute;left:-60px;bottom:-60px;transform:rotate(-4deg) scale(.82);transform-origin:left bottom}
/* receipt pricing teaser */
.price{background:var(--bg2);padding:var(--sec) 0;overflow:hidden}
.price-grid{display:grid;grid-template-columns:1fr 470px;gap:70px;align-items:center}
.price h2{font-size:92px}
.stubs{display:flex;gap:14px;margin-top:40px}
.stub{flex:1;padding:16px 18px;background:var(--card);border-radius:12px;box-shadow:0 0 0 1px var(--rule2);text-decoration:none}
.stub b{font:900 40px var(--f-disp);font-variation-settings:'SOFT' 100,'opsz' 72;display:block}.stub span{font:500 12px var(--f-mono);color:var(--mut)}.stub h5{font:600 15px var(--f-ui);margin-bottom:6px}
.rcpt{position:relative;width:470px;aspect-ratio:483/663;color:#1e1b2e}
.rcpt picture{position:absolute;inset:0}.rcpt picture img{width:100%;height:100%;object-fit:contain}
.rcpt .txt{position:absolute;left:14%;right:14%;top:30%;bottom:15%;font:400 13.5px/1.55 var(--f-mono);transform:rotate(-1deg)}
.rcpt .c{text-align:center;font-size:12px}
.rcpt .ln{display:flex;justify-content:space-between;border-bottom:1px dashed rgba(30,27,46,.25);padding:3px 0}
.rcpt .tot{display:flex;justify-content:space-between;font:900 30px var(--f-disp);font-variation-settings:'SOFT' 100,'opsz' 72;padding:10px 0 2px;border-top:3px double #1e1b2e;margin-top:8px}
/* faq */
.faq{padding:var(--sec) 0;display:grid;grid-template-columns:380px 1fr;gap:80px}
.faq h2{font-size:80px}
details.qa{border-top:2px solid var(--ink);padding:20px 0}details.qa:last-child{border-bottom:2px solid var(--ink)}
details.qa summary{display:flex;justify-content:space-between;gap:20px;font:700 21px var(--f-ui);letter-spacing:-.01em;cursor:pointer;list-style:none}
details.qa summary::-webkit-details-marker{display:none}
details.qa summary:after{content:"+";color:var(--pink-ink);font:300 32px/0.8 var(--f-ui)}details.qa[open] summary:after{content:"–"}
details.qa p{margin-top:10px;color:var(--mut);max-width:660px}
/* final scene CTA */
.final{position:relative;overflow:hidden;background:#f6e9e3}
.final .scene-bg img{display:block;width:100%;height:auto}
.final .copy{position:absolute;right:4%;top:24%;width:38%;text-align:left;color:#1e1b2e}
.final h2{font-size:124px}
.final p{font-size:21px;margin-top:20px;max-width:440px}
.final .ctas{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}
.final .btn-line{background:#fbf8f0;color:#1e1b2e;box-shadow:inset 0 0 0 2px #1e1b2e}.final .btn-ink{background:#1e1b2e;color:#f3eee2}
/* footer */
.foot{background:#1e1b2e;color:#f3eee2;padding:90px 0 40px}
.foot .big{color:#f3eee2;display:block}.foot .big svg{width:100%;height:auto;display:block}
.foot .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:30px;margin-top:60px;font-size:15px}
.foot .cols b{display:block;font:600 12px var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:#8de0d6;margin-bottom:12px}.foot .cols a{display:block;color:#cfc8d6;margin:6px 0;text-decoration:none}.foot .cols a:hover{color:#fff}
.foot .legal{display:flex;justify-content:space-between;gap:20px;margin-top:60px;font:500 12px var(--f-mono);color:#8b8496;border-top:1px solid rgba(243,238,226,.15);padding-top:20px}
.foot .theme{color:#cfc8d6;display:inline-flex;gap:8px;align-items:center;font:500 12px var(--f-mono)}
/* forms */
.form{display:grid;gap:18px;max-width:560px}
.form .two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fld label{display:block;font:600 14px var(--f-ui);margin-bottom:6px}.fld .hint{font-size:13px;color:var(--mut);margin-top:5px}
.fld input,.fld select,.fld textarea{width:100%;height:48px;border-radius:10px;border:1.5px solid var(--rule2);background:var(--card);padding:0 14px;font:400 16px var(--f-ui);color:var(--ink);transition:border-color 120ms var(--out)}
.fld textarea{height:auto;min-height:110px;padding:12px 14px}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;border-color:var(--ink)}
.fld.bad input,.fld.bad select{border-color:var(--red-ink)}.fld .msg{display:none;color:var(--red-ink);font-size:13.5px;margin-top:5px}.fld.bad .msg{display:flex;gap:6px;align-items:center}
.errsum{border-radius:12px;background:var(--red-wash);color:var(--red-ink);padding:14px 16px;font-size:15px}
.okbox{border-radius:16px;background:var(--teal-wash);padding:22px;display:flex;gap:18px;align-items:center}
.okbox .bellw{width:110px;flex:none}
.check{display:flex;gap:10px;align-items:flex-start;font-size:15px}.check input{width:18px;height:18px;margin-top:3px;accent-color:var(--ink)}
.seg{display:inline-flex;border-radius:99px;box-shadow:inset 0 0 0 1.5px var(--ink);padding:3px}
.seg button{height:38px;padding:0 18px;border-radius:99px;font:600 14px var(--f-ui);color:var(--ink);background:transparent;transition:background-color 150ms var(--out)}
.seg button.on{background:var(--ink);color:var(--stock)}
/* tables */
.tbl{width:100%;border-collapse:collapse;font-size:15.5px}
.tbl th{font:600 12px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mut);text-align:left;padding:10px 12px;border-bottom:1.5px solid var(--ink)}
.tbl td{padding:14px 12px;border-bottom:1px solid var(--rule);vertical-align:top}
.tbl td.num,.tbl th.num{text-align:right;font-family:var(--f-mono)}
.tbl tr.hl td{background:var(--card)}
/* pricing page */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1.5px solid var(--ink);border-radius:18px;overflow:hidden;background:var(--card)}
.plan{padding:30px 28px;border-right:1px solid var(--rule2)}.plan:last-child{border-right:0}
.plan.feat{background:var(--stock)}
.plan h3{font:800 30px var(--f-disp);font-variation-settings:'SOFT' 100}.plan .p{font:900 64px/1 var(--f-disp);font-variation-settings:'SOFT' 100,'opsz' 144;margin:18px 0 4px;letter-spacing:-.03em}
.plan .p small{font:500 14px var(--f-mono);letter-spacing:0;color:var(--mut)}
.plan ul{list-style:none;margin:20px 0 24px;border-top:1px solid var(--rule2)}.plan li{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--rule);font-size:15px}.plan li b{font-family:var(--f-mono);font-weight:500}
[data-bill=annual] .m-only,[data-bill=monthly] .a-only{display:none}
.est{background:var(--card);border-radius:18px;box-shadow:0 0 0 1px var(--rule2);padding:28px;display:grid;grid-template-columns:1fr 340px;gap:40px}
.est input[type=range]{width:100%;accent-color:var(--ink)}
.est .out{background:var(--stock);border-radius:14px;padding:22px;font-family:var(--f-mono);font-size:14px}
.est .out .big{font:900 56px var(--f-disp);font-variation-settings:'SOFT' 100;display:block;margin:6px 0}
/* integrations */
.conn{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.conn .card{display:flex;flex-direction:column;gap:10px;min-height:190px}
.conn .lg{height:30px;display:flex;align-items:center}.conn .lg svg{height:28px;width:auto;max-width:150px}
.conn .tx{font:800 22px var(--f-disp);font-variation-settings:'SOFT' 100;height:30px;display:flex;align-items:center}
/* status */
.comp{display:grid;grid-template-columns:1fr auto;padding:16px 0;border-bottom:1px solid var(--rule)}
.bars{display:flex;gap:2px;margin-top:8px}.bars i{flex:1;height:26px;border-radius:2px;background:var(--teal)}.bars i.d{background:var(--yel)}.bars i.o{background:var(--red)}
/* help */
.search{display:flex;gap:10px;align-items:center;background:var(--card);border-radius:99px;box-shadow:0 0 0 1.5px var(--ink);padding:0 20px;height:60px;max-width:640px}
.search input{flex:1;border:0;background:transparent;font:400 19px var(--f-ui);color:var(--ink)}.search input:focus{outline:none}
.toc{position:sticky;top:24px;font-size:15px}.toc a{display:block;padding:6px 0;color:var(--mut);text-decoration:none}.toc a.on{color:var(--ink);font-weight:600}
.doc-meta{display:flex;gap:18px;flex-wrap:wrap;font:500 13px var(--f-mono);color:var(--mut);padding:14px 0;border-top:1px solid var(--rule2);border-bottom:1px solid var(--rule2);margin:24px 0 10px}
/* mobile menu drawer */
.layer{position:fixed;inset:0;z-index:80;background:rgba(20,18,28,.36);opacity:0;transition:opacity 200ms var(--out)}
.layer.open{opacity:1}
.layer .sheet{position:absolute;right:0;top:0;bottom:0;width:min(420px,92vw);background:var(--stock);padding:24px;transform:translateX(100%);transition:transform 320ms var(--drawer);overflow:auto}
.layer.open .sheet{transform:none}
.layer .sheet nav a{display:block;font:800 30px var(--f-disp);font-variation-settings:'SOFT' 100;padding:10px 0;text-decoration:none;border-bottom:1px solid var(--rule)}
/* state switcher (prototype only) */
.state-sw{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);z-index:90;display:flex;gap:2px;align-items:center;background:#1e1b2e;color:#f3eee2;border-radius:99px;padding:4px;font:500 11.5px var(--f-mono);box-shadow:0 10px 30px -10px rgba(0,0,0,.5);max-width:96vw;overflow:auto}
.state-sw span{display:inline-flex;gap:6px;align-items:center;padding:0 10px;color:#8de0d6}
.state-sw a{padding:6px 10px;border-radius:99px;text-decoration:none;white-space:nowrap;color:#cfc8d6}.state-sw a.on{background:#f3eee2;color:#1e1b2e}
.shotmode .state-sw{display:none}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
/* ---------- mobile ---------- */
@media (max-width:760px){
 :root{--sec:88px}
 body{font-size:16px}.wrap{padding:0 20px}
 .nav{padding:14px 20px;gap:10px}.nav nav,.nav .signin{display:none}.nav .wm{width:90px}.nav .btn{height:40px;font-size:14px;padding:0 16px}.nav .menu{display:inline-grid}
 .ticker{height:32px;font-size:11.5px}
 .phero{padding:48px 0 70px}.phero h1{font-size:54px}.phero .lede{font-size:18px}.phero .cl{display:none}
 .h2{font-size:46px}.lede{font-size:18px}
 .split,.split.r{grid-template-columns:1fr;gap:40px}.split.r>:first-child{order:0}
 .cards,.conn{grid-template-columns:1fr}
 .hero{padding:20px 0 0}.hero h1{font-size:60px}.hero h1 .reg{display:inline-block}.hero .sub{font-size:17px;margin:20px 20px 0}.hero .ctas{flex-direction:column;padding:0 20px;gap:12px}
 .c-clock{width:84px;left:-10px;top:auto;bottom:20px}.c-bubble,.c-bed,.c-mug,.c-house,.c-carer,.c-yes,.c-spark1,.c-spark2{display:none}
 .c-bell{position:relative;display:block;width:150px;right:auto;top:auto;margin:0 auto 4px;transform:rotate(6deg)}
 .board{margin-top:44px;padding:0 20px}.board-top{flex-direction:column;gap:6px}.tickets{grid-template-columns:1fr 1fr;gap:10px}.tix{min-height:140px;padding:12px}.tix .t{font-size:18px}.tix .n{font-size:17px}.tix:nth-child(5){display:none}
 .hero-foot{flex-direction:column;gap:6px;padding:0 20px 50px}
 .story h2{font-size:50px}.story .intro{font-size:17px}
 .pin{display:none}.strip5{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:0 20px var(--sec)}.strip5 .sc:last-child{grid-column:1/3}
 .demo h2{font-size:52px}.demo-grid{grid-template-columns:1fr;gap:26px;margin-top:30px}.composer textarea{font-size:22px;min-height:80px}.sw{padding:18px}.sw-row{grid-template-columns:56px 1fr;gap:10px}.sw-row .lamp{grid-column:2}
 .decide{grid-template-columns:1fr}.dz{padding:70px 22px}.dz h2{font-size:46px;max-width:70%}.dz li{font-size:16px}.dz .stk-w{width:100px;right:14px;top:34px}
 .peek h2{font-size:46px}.peek .shot{margin-top:36px;padding:0 20px}.note{display:none}
 .mq .row{font-size:46px}.nums{grid-template-columns:1fr 1fr}.num{padding:26px 18px;border-bottom:1px solid var(--rule2)}.num b{font-size:76px}.num p{font-size:14.5px}
 .cgsec .grid{grid-template-columns:1fr;gap:40px}.cgsec h2{font-size:46px}.cgsec .vis .phone{display:none}
 .price-grid{grid-template-columns:1fr;gap:30px}.price h2{font-size:46px}.stubs{flex-direction:column}.rcpt{width:100%}
 .faq{grid-template-columns:1fr;gap:20px}.faq h2{font-size:46px}
 .final .copy{position:static;width:auto;padding:40px 20px 50px}.final h2{font-size:64px}
 .foot{padding:60px 0 30px}.foot .cols{grid-template-columns:1fr 1fr}.foot .cols>div:first-child{grid-column:1/3}.foot .legal{flex-direction:column}
 .form .two{grid-template-columns:1fr}
 .plans{grid-template-columns:1fr}.plan{border-right:0;border-bottom:1px solid var(--rule2)}
 .est{grid-template-columns:1fr}
 .tbl{font-size:14px}.tbl-wrap{overflow-x:auto}
}
/* ================= inner pages (site.py v2) ================= */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.sec.alt{background:var(--bg2)}
.sec .h2{margin-bottom:48px}.sec .split .h2{margin-bottom:18px}
.phero .wrap{position:relative;z-index:1}
.phero-art{position:absolute;right:6%;top:50%;transform:translateY(-46%) rotate(5deg);width:250px;z-index:0}
.phero-art picture,.phero-art img{width:100%;height:auto;display:block}
.phero-scene{max-width:1180px;margin:56px auto 0;padding:0 32px}.phero-scene img{width:100%;height:auto;border-radius:18px;display:block}
.phero h1{max-width:860px}
.ci{width:44px;height:44px;border-radius:12px;display:inline-grid;place-items:center;background:var(--stock);box-shadow:inset 0 0 0 1px var(--rule2);flex:none}
.cards .card .ci{background:var(--stock)}
.cards.three{grid-template-columns:repeat(3,1fr)}
.cards:has(> .card:nth-child(4):last-child){grid-template-columns:repeat(4,1fr)}
/* tabs */
.tabbar{display:flex;gap:6px;border-bottom:1.5px solid var(--ink);margin-bottom:48px;overflow-x:auto}
.tabbar button{display:inline-flex;gap:8px;align-items:center;height:48px;padding:0 18px;font:600 16px var(--f-ui);color:var(--mut);background:none;border:0;border-bottom:3px solid transparent;margin-bottom:-1.5px;cursor:pointer;white-space:nowrap}
.tabbar button.on{color:var(--ink);border-color:var(--ink)}
.shot{position:relative}.shot img{width:100%;height:auto;display:block;border-radius:14px;box-shadow:0 0 0 1px var(--rule2),0 30px 60px -30px rgba(30,27,46,.35)}
.split .btn{margin-top:26px}
/* how */
.hsteps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1.5px solid var(--ink)}
.hstep{padding:34px 30px 40px 0;border-bottom:1px solid var(--rule2);position:relative}
.hstep .hn{font:600 13px var(--f-mono);color:var(--mut);display:block;margin-bottom:16px}
.hstep h3{margin:14px 0 8px}.hstep p{color:var(--mut);font-size:16.5px;max-width:330px}
.hstep:nth-child(5) .ci{background:var(--pink-wash);box-shadow:none;color:var(--pink-ink)}
.transcript{background:var(--card);border-radius:14px;box-shadow:0 0 0 1px var(--rule2);padding:8px 24px;font-size:15.5px}
.transcript .ln{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--rule)}.transcript .ln:last-child{border:0}
.transcript b{font:500 12.5px var(--f-mono);color:var(--mut);padding-top:3px}
.scene-sec{padding:var(--sec) 0}.scene img{width:100%;height:auto;display:block;border-radius:18px}
.ticks{list-style:none;margin-top:24px}.ticks li{display:flex;gap:12px;align-items:flex-start;padding:7px 0}.ticks .hi{color:var(--teal);margin-top:3px}
/* pricing */
.plans{margin-top:34px}
.plan{position:relative;display:flex;flex-direction:column}.plan .btn{margin-top:auto}
.plan .badge{position:absolute;top:22px;right:22px;font:600 11.5px var(--f-mono);text-transform:uppercase;letter-spacing:.06em;background:var(--pink);color:#1e1b2e;padding:4px 10px;border-radius:99px}
.plan .pr{margin:18px 0 6px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.plan .pr b{font-size:64px;line-height:1}
.plan .pr>span{font:500 14px var(--f-mono);color:var(--mut)}
.plan li{justify-content:flex-start;gap:10px;align-items:center}.plan li .hi{color:var(--teal)}
[data-bill=m] .y,[data-bill=y] .m{display:none}
.est{display:grid;grid-template-columns:1fr;gap:22px;margin-top:30px;max-width:520px}
.est label{display:grid;gap:8px;font:600 15px var(--f-ui)}.est label b{font:500 14px var(--f-mono);justify-self:end;margin-top:-28px}
.est select{height:46px;border-radius:10px;border:1.5px solid var(--rule2);background:var(--stock);padding:0 12px;font:500 16px var(--f-ui);color:var(--ink)}
.rcpt.big{width:470px;justify-self:end}
.tbl{width:100%;border-collapse:collapse;font-size:16px}.tbl th{text-align:left;font:600 12px var(--f-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--mut);padding:10px 0;border-bottom:1.5px solid var(--ink)}
.tbl td{padding:14px 12px 14px 0;border-bottom:1px solid var(--rule2);vertical-align:top}.tbl td:last-child{font-family:var(--f-mono);font-size:14.5px}
/* integrations */
.search{margin-bottom:36px}.search.big{max-width:760px}
.conns{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.conn{display:block;background:var(--card);border-radius:14px;box-shadow:0 0 0 1px var(--rule);padding:22px}
.conn .ch{display:flex;gap:14px;align-items:center;margin-bottom:12px}.conn h3{font:700 18px var(--f-ui)}.conn small{font:500 12px var(--f-mono);color:var(--mut)}
.conn .ch .bdg{margin-left:auto}.conn p{font-size:15px;color:var(--mut)}
.lgo{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#fff;box-shadow:inset 0 0 0 1px var(--rule);flex:none}.lgo svg{width:26px;height:26px}
.lgo.own{background:var(--teal-wash);color:var(--teal-ink);box-shadow:none}.lgo.txt{font:700 15px var(--f-mono);color:var(--mut);background:var(--stock)}
.bdg{font:600 11.5px var(--f-mono);padding:3px 9px;border-radius:99px;white-space:nowrap}.bdg.ok{background:var(--teal-wash);color:var(--teal-ink)}.bdg.beta{background:var(--yel-wash);color:#7a5200}.bdg.plan{box-shadow:inset 0 0 0 1px var(--rule2);color:var(--mut)}
html.dark .bdg.beta{color:var(--yel)}
.infras{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.infra{background:var(--card);border-radius:14px;box-shadow:0 0 0 1px var(--rule);height:130px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:20px}
.infra>span{height:34px;display:flex;align-items:center}.infra svg{height:30px;width:auto;max-width:150px}.infra small{font:500 12px var(--f-mono);color:var(--mut)}
html.dark .infra>span{filter:grayscale(1) invert(1) brightness(1.4)}
.empty{text-align:center;padding:60px 20px;max-width:560px;margin:0 auto}.empty picture{width:150px;display:block;margin:0 auto 16px}.empty picture img{width:100%;height:auto}
.empty p{color:var(--mut);margin-top:8px}.empty a{color:var(--teal-ink)}
/* forms page */
.form-split{align-items:start}
.side-note{background:var(--card);border-radius:18px;box-shadow:0 0 0 1px var(--rule);padding:30px;position:relative}
.side-note>picture{width:120px;display:block;margin:-80px 0 10px auto}.side-note>picture img{width:100%;height:auto}
.side-note p{margin-top:10px;display:flex;gap:8px;align-items:center}.side-note a{color:var(--teal-ink)}
.ol{padding-left:20px;margin-top:14px}.ol li{margin:8px 0}
.fld label i{font-style:normal;color:var(--mut);font-weight:400}
.errsum{display:flex;gap:10px;align-items:center}.errsum[hidden]{display:none}
.okbox picture{width:120px;flex:none}.okbox picture img{width:100%;height:auto}.okbox .btn{margin-top:14px}.okbox p{margin-top:6px}
.okbox.warn{background:var(--yel-wash)}
/* help + docs */
.rows>a.row{display:grid;grid-template-columns:56px 1fr auto;gap:16px;align-items:center;padding:20px 0;border-bottom:1px solid var(--rule2);text-decoration:none}
.rows>a.row small{display:block;font:600 11.5px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--teal-ink)}
.rows>a.row b{display:block;font:700 19px var(--f-ui);margin:2px 0}.rows>a.row .muted{font-size:15px}
.rows>a.row:hover b{text-decoration:underline}
.doc{padding-top:64px}.doc .h2{font-size:64px;margin-top:20px}
.doc-grid{display:grid;grid-template-columns:220px 1fr;gap:60px;margin-top:30px}
.toc b{display:block;font:600 12px var(--f-mono);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}
.callout{display:flex;gap:12px;background:var(--teal-wash);border-radius:12px;padding:16px 18px;margin:24px 0;font-size:16px;max-width:720px}.callout .hi{color:var(--teal-ink);margin-top:3px}.callout p{margin:0!important}
.prose blockquote{border-left:3px solid var(--pink);padding:6px 0 6px 18px;font:400 16px/1.6 var(--f-mono);color:var(--ink);margin:12px 0 18px}
.helpful{display:flex;gap:10px;align-items:center;margin-top:48px;padding-top:24px;border-top:1px solid var(--rule2)}
.pill{display:inline-flex;gap:6px;align-items:center;padding:3px 10px;border-radius:99px;font:600 12px var(--f-mono)}.pill.warn{background:var(--yel-wash);color:#7a5200}
.linkbtn{background:none;border:0;font:inherit;color:inherit;display:inline-flex;gap:6px;align-items:center;cursor:pointer;text-decoration:underline}
.narrow{max-width:780px}
/* status */
.stcs{display:grid;gap:10px}.stc{background:var(--card);border-radius:14px;box-shadow:0 0 0 1px var(--rule);padding:20px 22px}
.sth{display:flex;justify-content:space-between;align-items:center}.stf{display:flex;justify-content:space-between;font:500 11.5px var(--f-mono);color:var(--mut);margin-top:8px}
.bars i.ok{background:var(--teal)}.bars i.deg{background:var(--yel)}.bars i{height:30px}
.incs{display:grid;gap:0;border-top:1.5px solid var(--ink)}.inc{display:grid;grid-template-columns:220px 1fr;column-gap:30px;padding:22px 0;border-bottom:1px solid var(--rule2)}
.inc b{font:500 13px var(--f-mono);color:var(--mut);grid-row:span 2}.inc h3{font:700 19px var(--f-ui)}.inc p{color:var(--mut);font-size:16px;margin-top:4px}
.incs+.btn{margin-top:30px}
/* updates */
.posts{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.post{display:block;background:var(--card);border-radius:16px;box-shadow:0 0 0 1px var(--rule);padding:30px;text-decoration:none;transition:transform 200ms var(--out)}
.post:hover{transform:translateY(-2px)}.post small{font:500 12.5px var(--f-mono);color:var(--mut)}.post h3{margin:10px 0}.post p{color:var(--mut);font-size:16px}
.stampmini{display:none;position:absolute;right:-14px;top:-18px;width:96px;transform:rotate(10deg);pointer-events:none}
.doc .prose{margin-top:20px}
@media (max-width:1100px){.phero-art{display:none}.cards:has(> .card:nth-child(4):last-child){grid-template-columns:1fr 1fr}.conns{grid-template-columns:1fr 1fr}}
@media (max-width:760px){
 .doc .h2{font-size:42px}.doc-grid{grid-template-columns:1fr;gap:20px}.toc{position:static}
 .hsteps,.conns,.infras,.posts,.cards.three,.cards:has(> .card:nth-child(4):last-child){grid-template-columns:1fr}
 .transcript .ln{grid-template-columns:1fr;gap:2px}.inc{grid-template-columns:1fr}.inc b{grid-row:auto}
 .rcpt.big{width:100%;justify-self:stretch}.phero-scene{padding:0 20px;margin-top:36px}
 .side-note>picture{margin:-60px 0 10px auto;width:90px}.okbox{flex-direction:column;align-items:flex-start}
 .tabbar{margin-bottom:28px}
}
picture.bell{display:block}picture.bell img{display:block;width:100%;height:auto}
[hidden]{display:none!important}
.foot .big{max-width:760px}
/* light CTA band for inner pages (only home + how-it-works carry the porch scene) */
.cta-lite{padding:120px 0;border-top:1.5px solid var(--ink)}
.cta-lite .wrap{display:grid;grid-template-columns:180px 1fr auto;gap:48px;align-items:center}
.cta-lite picture{width:170px;transform:rotate(-6deg)}.cta-lite h2{font-size:72px}.cta-lite p{color:var(--mut);margin-top:12px;max-width:560px}
.cta-lite .ctas{display:flex;flex-direction:column;gap:12px}
@media (max-width:760px){.cta-lite{padding:70px 0}.cta-lite .wrap{grid-template-columns:1fr;gap:20px}.cta-lite picture{width:110px}.cta-lite h2{font-size:44px}}
.frames{position:relative}.frames .fr{position:absolute;width:12.8%;height:22.9%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;color:#1e1b2e;padding:4px}
.frames .fr b{font:700 clamp(9px,1.15vw,15px)/1.15 var(--f-ui)}.frames .fr small{font:500 clamp(8px,.85vw,11px) var(--f-mono);color:#5b5566}
.frames .fr .hi{width:clamp(14px,2vw,26px);height:auto;color:#00646a}.frames .lg3 svg{width:clamp(14px,2vw,26px);height:auto;display:block}
/* ===== iPhone / iMessage demo (PUB-01) ===== */
.imsg-wrap{display:grid;grid-template-columns:1fr 360px 300px;gap:48px;align-items:center}
.imsg-copy h2{font-size:84px}.imsg-copy .lede{margin-top:20px;font-size:19px}
.imsg-legend{list-style:none;margin:28px 0;border-top:1.5px solid var(--ink)}
.imsg-legend li{display:grid;grid-template-columns:56px 1fr;padding:10px 0;border-bottom:1px solid var(--rule2);font-size:15.5px}.imsg-legend b{font:600 13px var(--f-mono);padding-top:2px}
.imsg-try{display:grid;gap:10px;margin-bottom:18px}.imsg-try .chips{display:flex;flex-wrap:wrap;gap:8px}
.imsg-try .chips button{height:34px;padding:0 14px;border-radius:99px;box-shadow:inset 0 0 0 1.5px var(--rule2);background:var(--card);font:500 14px var(--f-ui);transition:transform 150ms var(--out)}
.imsg-try .chips button:active,.imsg-replay:active{transform:scale(.96)}.imsg-replay{justify-self:start}
.imsg-stage{display:contents}
/* device */
.iph{position:relative;width:360px;aspect-ratio:9/19.3;border-radius:58px;padding:12px;background:linear-gradient(145deg,#3a3740,#141318 40%,#2b2930);box-shadow:inset 0 0 0 1.5px #55525c,0 0 0 1px rgba(0,0,0,.4),0 40px 70px -30px rgba(30,27,46,.55)}
.iph:before{content:"";position:absolute;left:-3px;top:150px;width:3px;height:60px;border-radius:2px 0 0 2px;background:#2b2930;box-shadow:0 80px 0 #2b2930}
.iph-scr{position:relative;height:100%;border-radius:47px;overflow:hidden;background:#fff;color:#000;display:flex;flex-direction:column;font-family:-apple-system,'SF Pro Text','Inter','Work Sans',system-ui,sans-serif}
.iph-island{position:absolute;top:11px;left:50%;width:112px;height:33px;margin-left:-56px;border-radius:20px;background:#000;z-index:4}
.iph-sb{height:52px;flex:none;display:flex;justify-content:space-between;align-items:center;padding:6px 30px 0 40px;font-weight:600;font-size:16px;letter-spacing:-.01em}
.iph-ic{display:flex;align-items:center}
.iph-home{position:absolute;bottom:8px;left:50%;width:128px;height:5px;margin-left:-64px;border-radius:3px;background:#000;opacity:.85}
.imsg-h{flex:none;display:grid;grid-template-columns:44px 1fr 44px;align-items:start;padding:2px 10px 10px;background:rgba(246,246,248,.94);border-bottom:.5px solid #d8d8dc}
.imsg-back,.imsg-vid{color:#0a7cff;padding-top:12px;display:grid;place-items:center}
.imsg-who{display:flex;flex-direction:column;align-items:center;gap:4px}.imsg-who b{font-size:11.5px;font-weight:500;color:#111;display:flex;align-items:center;gap:2px}.imsg-who b .hi{color:#8e8e93}
.imsg-av{width:46px;height:46px;border-radius:50%;background:linear-gradient(#a3a3ad,#85858f);color:#fff;display:grid;place-items:center;font-weight:600;font-size:17px}
.imsg-thread{flex:1;overflow-y:auto;padding:10px 14px 8px;display:flex;flex-direction:column;gap:3px;scrollbar-width:none}
.imsg-thread::-webkit-scrollbar{display:none}
.imsg-day{text-align:center;font-size:11px;color:#8e8e93;margin:4px 0 10px;line-height:1.35}.imsg-day b{font-weight:500}
.ib{position:relative;max-width:76%;padding:8px 13px;border-radius:19px;font-size:15.5px;line-height:1.3;letter-spacing:-.01em;transform-origin:bottom right;transition:transform 260ms cubic-bezier(.23,1,.32,1),opacity 200ms cubic-bezier(.23,1,.32,1)}
.ib.b-out{align-self:flex-end;background:#0a7cff;color:#fff;margin-left:auto}
.ib.b-in{align-self:flex-start;background:#e9e9eb;color:#000;transform-origin:bottom left}
.ib.tail{margin-bottom:6px}
.ib.tail:after{content:"";position:absolute;bottom:0;width:17px;height:21px;background:no-repeat bottom/17px 21px}
.ib.b-out.tail:after{right:-6px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='21' viewBox='0 0 17 21'%3E%3Cpath d='M0 0v12c0 5 4 8 7 9 3 .6 7 .2 10-1-4-1-6-4-6-9V0z' fill='%230a7cff'/%3E%3C/svg%3E")}
.ib.b-in.tail:after{left:-6px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='21' viewBox='0 0 17 21'%3E%3Cpath d='M17 0v12c0 5-4 8-7 9-3 .6-7 .2-10-1 4-1 6-4 6-9V0z' fill='%23e9e9eb'/%3E%3C/svg%3E")}
.ib.pop{opacity:0;transform:translateY(10px) scale(.92)}
.ib .ref{font-family:var(--f-mono);font-weight:600;font-size:14px}
.ib.typing{display:flex;gap:4px;padding:12px 14px}.ib.typing i{width:8px;height:8px;border-radius:50%;background:#9a9aa0;animation:dot 1.2s infinite ease-in-out}
.ib.typing i:nth-child(2){animation-delay:.15s}.ib.typing i:nth-child(3){animation-delay:.3s}
@keyframes dot{0%,60%,100%{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
.rcpt-l{align-self:flex-end;font-size:11px;color:#8e8e93;font-weight:500;margin:-2px 2px 6px}
.imsg-in{flex:none;display:flex;align-items:center;gap:8px;padding:6px 10px 28px}
.imsg-plus{width:32px;height:32px;border-radius:50%;background:#e9e9eb;color:#7a7a80;display:grid;place-items:center;flex:none}
.imsg-in input{flex:1;min-width:0;height:34px;border-radius:18px;border:1px solid #c8c8cc;padding:0 40px 0 13px;font:400 15.5px -apple-system,'Inter','Work Sans',sans-serif;color:#000;background:#fff;outline:none}
.imsg-in input:focus-visible{border-color:#0a7cff}
.imsg-send{width:28px;height:28px;border-radius:50%;background:#0a7cff;color:#fff;display:grid;place-items:center;margin-left:-44px;transition:transform 150ms var(--out),opacity 150ms var(--out)}
.imsg-send:disabled{opacity:0;transform:scale(.6)}.imsg-send:active{transform:scale(.96)}
/* coordinator lock screen */
.iph-co{width:300px;border-radius:50px;padding:10px;transform:translateY(40px)}
.iph-co .iph-scr{border-radius:41px}
.lock{background:radial-gradient(120% 80% at 30% 0%,#2f6f73 0%,#1d3c46 45%,#16141d 100%);color:#fff}
.lock .iph-island{width:96px;height:28px;margin-left:-48px;top:10px}.lock .iph-sb{padding:4px 24px 0 34px;font-size:14px}.lock .iph-home{background:#fff;opacity:.7}
.lock-date{text-align:center;font-size:15px;font-weight:500;opacity:.85;margin-top:10px}
.lock-time{text-align:center;font:600 76px/1 'Work Sans',sans-serif;letter-spacing:-.03em;margin-top:2px}
.lock-who{text-align:center;font-size:11px;opacity:.6;margin-top:4px}
.lock-notes{display:flex;flex-direction:column;gap:8px;padding:0 10px;margin-top:auto;margin-bottom:46px}
.lnote{background:rgba(245,245,247,.82);color:#111;border-radius:18px;padding:10px 12px;font-size:12.5px;line-height:1.3;transition:transform 280ms cubic-bezier(.23,1,.32,1),opacity 220ms cubic-bezier(.23,1,.32,1);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.lnote.pop{opacity:0;transform:translateY(-12px) scale(.96)}
.ln-h{display:flex;align-items:center;gap:6px;font-size:10.5px;color:#555;margin-bottom:4px}.ln-h b{font-weight:600;letter-spacing:.03em;flex:1}
.ln-ic{width:18px;height:18px;border-radius:5px;background:#fff;overflow:hidden;display:grid;place-items:center}.ln-ic img{width:18px;height:18px;display:block}
.ln-t{display:block;font-size:13px;font-weight:600}.lnote p{margin-top:2px;color:#333}
.ln-a{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.ln-a span{text-align:center;padding:6px 0;border-radius:10px;background:rgba(0,0,0,.07);font-weight:600;font-size:12px}.ln-a .pri{background:#ff48b0;color:#1e1b2e}
@media (max-width:1180px){.imsg-wrap{grid-template-columns:1fr 360px}.iph-co{display:none}}
@media (max-width:760px){.imsg-wrap{grid-template-columns:1fr;gap:30px}.imsg-copy h2{font-size:50px}.iph-main{width:min(340px,100%);margin:0 auto}.imsg-legend{margin:20px 0}}
@media (prefers-reduced-motion:reduce){.ib.typing i{animation:none;opacity:.6}}
@media (max-width:760px){.imsg-copy{display:contents}.imsg-copy>*{order:0}.iph-main{order:1}.imsg-legend,.imsg-try,.imsg-copy>.label-ill{order:2}}
/* overflow pass (overflow.mjs) */
@media (min-width:901px){.faq{grid-template-columns:440px 1fr}}
.split>*,.wrap>*{min-width:0}
.doc h1,.doc .disp{overflow-wrap:break-word;hyphens:auto}
@media (max-width:600px){
 .doc .disp.h2{font-size:34px;line-height:38px}
 .sec table.tbl thead{display:none}
 .sec table.tbl,.sec table.tbl tbody,.sec table.tbl tr,.sec table.tbl td{display:block;width:100%}
 .sec table.tbl tr{padding:12px 0;border-bottom:1px solid var(--rule)}
 .sec table.tbl td{padding:2px 0;border:0}
 .sec table.tbl td:first-child{font-weight:600}
 .phone,.iph{max-width:100%}
}
.cgsec .vis{padding:0 4px}
.imsg-wrap>*{min-width:0}
@media (max-width:760px){.imsg-wrap{grid-template-columns:minmax(0,1fr)}}
/* Partner marks stay off the public site until each partner approves. Set html.partner-logos to show them. */
html:not(.partner-logos) .lg3,
html:not(.partner-logos) .infra>span[aria-hidden],
html:not(.partner-logos) .lgo:not(.own):not(.txt){display:none}
