/* Zen landing page (zen.carreh.com). No scripts, no inline styles, system fonts only, nothing from other hosts. */
:root{
  --bg:#FAF9F6;--bg2:#F3F1EC;--ink:#1D1C24;--say:#3A3843;--mute:#64626E;--line:rgba(29,28,36,.09);
  --card:#fff;--acc:#4F4BD8;--acc-ink:#fff;--ok:#1F7A52;--bad:#C93C3C;
  --shadow:0 1px 0 rgba(29,28,36,.03),0 18px 40px -20px rgba(29,28,36,.18);
  --aura1:#E6E1FF;--aura2:#FFE6DA;--aura3:#DDF3E8;--aura4:#FFE3EE;
  /* phone screen tokens */
  --s-bg:#FAF9F6;--s-ink:#1D1C24;--s-say:#3A3843;--s-mute:#8C8A96;--s-card:#fff;--s-line:rgba(29,28,36,.06);--s-acc:#5B57E8;
  --s-nav:rgba(255,255,255,.78);--s-orb:rgba(255,255,255,.92);--s-ib:rgba(255,255,255,.75);--s-k:#1D1C24;--s-k-ink:#fff;--s-t:rgba(29,28,36,.05);
  --frame:#1D1C24;
  --g-peach:#FFEDE3;--g-violet:#EEEBFF;--g-green:#E3F4EB;--g-pink:#FCE9F1;--g-blue:#E4EFFB;--g-yellow:#FFF5D6;--g-red:#FDE9E8;
  --c-peach:#C9602A;--c-violet:#5B57E8;--c-green:#23845A;--c-pink:#C2457A;--c-blue:#2F6DB5;--c-yellow:#A77A06;--c-red:#D64545;
  color-scheme:light dark;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#0F0E14;--bg2:#15141C;--ink:#F2F1F6;--say:#D0CEDA;--mute:#A3A1AE;--line:rgba(255,255,255,.1);
  --card:#1A1922;--acc:#A8A4FF;--acc-ink:#0F0E14;--ok:#5CC995;--bad:#FF8A80;
  --shadow:0 0 0 1px rgba(255,255,255,.06);
  --aura1:#2A2550;--aura2:#3A2420;--aura3:#123326;--aura4:#3A1A2A;
  --s-bg:#0F0E14;--s-ink:#F2F1F6;--s-say:#C9C7D3;--s-mute:#8C8A96;--s-card:#1A1922;--s-line:rgba(255,255,255,.07);--s-acc:#A8A4FF;
  --s-nav:rgba(32,31,42,.78);--s-orb:rgba(26,25,34,.94);--s-ib:rgba(255,255,255,.07);--s-k:#F2F1F6;--s-k-ink:#0F0E14;--s-t:rgba(255,255,255,.07);
  --frame:#3A3946;
  --g-peach:#3A261C;--g-violet:#26244A;--g-green:#16301F;--g-pink:#3A1E2B;--g-blue:#172A40;--g-yellow:#352C12;--g-red:#3D1D1D;
  --c-peach:#FFB089;--c-violet:#B9B5FF;--c-green:#7FD9AA;--c-pink:#FF9CC5;--c-blue:#8CC0FF;--c-yellow:#F2CB5B;--c-red:#FF8A80;
}}
:root[data-theme="dark"]{
  --bg:#0F0E14;--bg2:#15141C;--ink:#F2F1F6;--say:#D0CEDA;--mute:#A3A1AE;--line:rgba(255,255,255,.1);
  --card:#1A1922;--acc:#A8A4FF;--acc-ink:#0F0E14;--ok:#5CC995;--bad:#FF8A80;
  --shadow:0 0 0 1px rgba(255,255,255,.06);
  --aura1:#2A2550;--aura2:#3A2420;--aura3:#123326;--aura4:#3A1A2A;
  --s-bg:#0F0E14;--s-ink:#F2F1F6;--s-say:#C9C7D3;--s-mute:#8C8A96;--s-card:#1A1922;--s-line:rgba(255,255,255,.07);--s-acc:#A8A4FF;
  --s-nav:rgba(32,31,42,.78);--s-orb:rgba(26,25,34,.94);--s-ib:rgba(255,255,255,.07);--s-k:#F2F1F6;--s-k-ink:#0F0E14;--s-t:rgba(255,255,255,.07);
  --frame:#3A3946;
  --g-peach:#3A261C;--g-violet:#26244A;--g-green:#16301F;--g-pink:#3A1E2B;--g-blue:#172A40;--g-yellow:#352C12;--g-red:#3D1D1D;
  --c-peach:#FFB089;--c-violet:#B9B5FF;--c-green:#7FD9AA;--c-pink:#FF9CC5;--c-blue:#8CC0FF;--c-yellow:#F2CB5B;--c-red:#FF8A80;
}

*,*:before,*:after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,system-ui,sans-serif;font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;letter-spacing:-.005em;overflow-x:hidden}
img{max-width:100%;height:auto}
a{color:var(--acc)}
a:focus-visible{outline:2px solid var(--acc);outline-offset:3px;border-radius:6px}
.skip{position:absolute;left:-999px;top:8px;background:var(--card);color:var(--ink);padding:8px 14px;border-radius:12px;z-index:9}
.skip:focus{left:16px}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}
@media (min-width:720px){.wrap{padding:0 32px}}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.icons{display:none}

/* header */
.top{position:sticky;top:0;z-index:5;background:color-mix(in srgb,var(--bg) 82%,transparent);-webkit-backdrop-filter:blur(16px) saturate(1.4);backdrop-filter:blur(16px) saturate(1.4);border-bottom:1px solid transparent}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:60px}
.brand{display:flex;align-items:center;gap:9px;color:var(--ink);text-decoration:none;font-weight:600;font-size:19px;letter-spacing:-.02em}
.brand img{width:30px;height:31px}
.signin{color:var(--ink);text-decoration:none;font-size:15px;font-weight:500;padding:8px 14px;border-radius:18px;box-shadow:inset 0 0 0 1px var(--line)}
.signin:hover{background:var(--card)}

/* type */
h1,h2,h3{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,system-ui,sans-serif;letter-spacing:-.03em;margin:0;font-weight:600}
h1{font-size:clamp(40px,7vw,68px);line-height:1.02}
h2{font-size:clamp(30px,4.4vw,44px);line-height:1.08}
h3{font-size:19px;letter-spacing:-.015em;line-height:1.3}
p{margin:0}
.lede{font-size:clamp(18px,2.1vw,21px);color:var(--say);line-height:1.5;max-width:34em}
.soon{display:block;font-size:15px;font-weight:600;color:var(--acc);letter-spacing:.01em;margin-bottom:14px}
.kick{display:block;font-size:14px;font-weight:600;color:var(--mute);letter-spacing:.02em;margin-bottom:12px}
.note{font-size:15px;color:var(--mute)}

/* sections */
section{position:relative;padding:72px 0}
@media (min-width:960px){section{padding:104px 0}}
.aura{position:absolute;inset:-80px -10% auto;height:520px;pointer-events:none;filter:blur(40px);opacity:.9;z-index:-1;animation:drift 16s ease-in-out infinite alternate}
.a-hero{background:radial-gradient(40% 50% at 70% 40%,var(--aura1) 0%,transparent 70%),radial-gradient(35% 45% at 88% 25%,var(--aura2) 0%,transparent 70%)}
.a-green{background:radial-gradient(35% 50% at 25% 50%,var(--aura3) 0%,transparent 70%)}
.a-pink{background:radial-gradient(35% 50% at 75% 50%,var(--aura4) 0%,transparent 70%)}
.a-violet{background:radial-gradient(35% 50% at 25% 50%,var(--aura1) 0%,transparent 70%)}
@keyframes drift{from{transform:translate3d(-14px,0,0)}to{transform:translate3d(14px,10px,0) scale(1.05)}}
main{position:relative;isolation:isolate}
.feat{display:grid;gap:40px;align-items:center}
@media (min-width:860px){.feat{grid-template-columns:1.05fr .95fr;gap:64px}.feat.rev .copy{order:2}}
.copy{display:flex;flex-direction:column;gap:18px;max-width:560px}
.copy .lede{max-width:none}
.facts{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}
.facts li{display:flex;gap:14px;align-items:flex-start;color:var(--say)}
.facts li b{color:var(--ink);font-weight:600}
.facts .gl{margin-top:1px}

/* hero */
.hero{padding-top:40px}
@media (min-width:960px){.hero{padding-top:64px}}
.hero .feat{gap:48px}
.hero h1 span{color:var(--mute);font-weight:500}
.hero .copy{gap:22px}
.hero-meta{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:15px;color:var(--mute)}
.stage{position:relative;display:flex;justify-content:center}
.float{position:absolute;z-index:2;max-width:270px}
.float.f1{left:-8px;bottom:9%}
.pw{position:relative}
.float.f2{left:-110px;bottom:22%}
@media (max-width:1099px){.stage .float{display:none}}

/* glyphs used on the page and in the phones */
.gl{flex:none;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px}
.gl svg{width:19px;height:19px}
.gl.l{width:44px;height:44px}.gl.sm{width:36px;height:36px}.gl.sm svg{width:17px;height:17px}
.peach{background:var(--g-peach);color:var(--c-peach)}.violet{background:var(--g-violet);color:var(--c-violet)}.green{background:var(--g-green);color:var(--c-green)}
.pink{background:var(--g-pink);color:var(--c-pink)}.blue{background:var(--g-blue);color:var(--c-blue)}.yellow{background:var(--g-yellow);color:var(--c-yellow)}.red{background:var(--g-red);color:var(--c-red)}
svg.i{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* page cards */
.pcard{background:var(--card);border-radius:26px;box-shadow:var(--shadow)}
.toast{display:flex;align-items:center;gap:12px;background:#1D1C24;color:#fff;border-radius:22px;padding:12px 14px 12px 16px;font-size:14.5px;box-shadow:0 16px 36px -12px rgba(29,28,36,.45)}
.toast svg{width:18px;height:18px;flex:none}
.toast em{font-style:normal;font-weight:600;color:#BDB8FF;margin-left:auto;padding-left:10px}
.ask{display:flex;flex-direction:column;gap:10px;padding:16px;font-size:14.5px}
.ask p{color:var(--say);line-height:1.4}
.ask b{color:var(--ink)}
.ask .who{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--mute);font-weight:500}
.ask .who img{width:22px;height:23px}
.btns{display:flex;gap:8px}
.cap{height:36px;border-radius:18px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:500;background:var(--s-t);color:var(--ink)}
.cap.k{background:var(--ink);color:var(--bg)}

/* email flow */
.flow{display:grid;gap:12px;margin:40px 0 0;padding:0;list-style:none}
@media (min-width:860px){.flow{grid-template-columns:1fr 1fr;gap:16px 24px}}
.mail{display:flex;gap:14px;align-items:center;padding:16px 18px}
.mail .tx{flex:1;min-width:0}
.mail .from{font-size:13px;color:var(--mute);display:block}
.mail .subj{font-weight:600;font-size:16px;display:block;letter-spacing:-.01em}
.mail .to{display:block;font-size:14.5px;color:var(--say);margin-top:6px}
.mail .to b{color:var(--acc);font-weight:600}

/* team */
.team{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:48px 0 0;padding:0;list-style:none}
@media (min-width:640px){.team{grid-template-columns:repeat(4,1fr);gap:16px}}
.zen{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:18px}
.zen img{width:64px;height:66px;margin-bottom:4px}
.zen b{font-size:16px;letter-spacing:-.01em}
.zen span{font-size:14px;color:var(--mute);line-height:1.35}
.zen.main{background:linear-gradient(160deg,var(--g-violet),var(--card) 70%)}

/* everywhere */
.devices{display:grid;gap:16px;margin-top:40px}
@media (min-width:720px){.devices{grid-template-columns:repeat(3,1fr)}}
.dev{padding:20px;display:flex;flex-direction:column;gap:14px}
.dev h3{font-size:17px}
.dev p{font-size:15px;color:var(--mute);line-height:1.45}
.widget{border-radius:22px;background:var(--bg2);padding:14px;display:flex;flex-direction:column;gap:8px;font-size:13.5px}
.widget .wh{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--mute)}
.widget .wh img{width:16px;height:17px}
.widget .wr{display:flex;justify-content:space-between;gap:8px}
.widget .wr span:last-child{color:var(--mute);white-space:nowrap}
.live{border-radius:28px;background:#111016;color:#fff;padding:14px 16px;display:flex;flex-direction:column;gap:10px;font-size:13.5px}
.live .lr{display:flex;align-items:center;gap:10px}
.live .lr img{width:26px;height:27px}
.live .lr b{font-weight:600}
.live .lr span{margin-left:auto;color:#BDB8FF;font-weight:600}
.live .track{height:6px;border-radius:3px;background:rgba(255,255,255,.14);overflow:hidden}
.live .track i{display:block;height:100%;width:78%;border-radius:3px;background:linear-gradient(90deg,#8F87FF,#BDB8FF)}
.live small{color:rgba(255,255,255,.62)}
.siri{display:flex;flex-direction:column;gap:8px;font-size:14px}
.siri .q{align-self:flex-end;background:var(--acc);color:var(--acc-ink);padding:9px 14px;border-radius:18px 18px 6px 18px;max-width:90%}
.siri .a{align-self:flex-start;background:var(--bg2);padding:9px 14px;border-radius:18px 18px 18px 6px;max-width:92%;color:var(--say)}
.ipad-row{margin-top:16px;padding:20px;display:grid;gap:20px;align-items:center}
@media (min-width:720px){.ipad-row{grid-template-columns:1fr 1.4fr}}

/* closing */
.end{text-align:center}
.end .copy{margin:0 auto;align-items:center}
.end img.mascot{width:96px;height:99px;animation:bob 4s ease-in-out infinite}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
footer{border-top:1px solid var(--line);padding:32px 0 48px;font-size:15px;color:var(--mute)}
footer .wrap{display:flex;flex-wrap:wrap;gap:10px 28px;justify-content:space-between}
footer a{color:var(--ink)}

/* ------------------------------------------------------------ phone mockups (390 x 844 screens, scaled with --k) */
.phone{--k:.74;position:relative;flex:none;width:calc(390px * var(--k) + 22px);height:calc(844px * var(--k) + 22px);border-radius:calc(56px * var(--k) + 11px);background:var(--frame);padding:11px;box-shadow:0 40px 80px -36px rgba(29,28,36,.45),inset 0 0 0 1px rgba(255,255,255,.08);margin:0 auto}
.phone .sc{width:calc(390px * var(--k));height:calc(844px * var(--k));border-radius:calc(56px * var(--k));overflow:hidden;position:relative}
.phone .s{transform:scale(var(--k));transform-origin:0 0}
.phone:after{content:"";position:absolute;top:calc(11px + 11px * var(--k));left:50%;width:calc(120px * var(--k));height:calc(34px * var(--k));margin-left:calc(-60px * var(--k));border-radius:20px;background:#000}
@media (max-width:420px){.phone{--k:.7}}
@media (max-width:360px){.phone{--k:.64}}
@media (min-width:860px) and (max-width:1023px){.phone{--k:.66}}
.hero .phone{--k:.8}
@media (max-width:420px){.hero .phone{--k:.74}}
@media (max-width:360px){.hero .phone{--k:.66}}
@media (min-width:860px) and (max-width:1023px){.hero .phone{--k:.7}}

.s{width:390px;height:844px;position:relative;overflow:hidden;background:var(--s-bg);color:var(--s-ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text",system-ui,sans-serif;letter-spacing:-.01em;line-height:1.25;font-size:15px;text-align:left}
.s .aura{inset:-120px -30% auto;height:520px;filter:blur(30px);z-index:0;opacity:1}
.s .pg{position:relative;padding:62px 20px 124px;display:flex;flex-direction:column;gap:16px}
.s .status{position:absolute;top:18px;left:34px;right:30px;display:flex;justify-content:space-between;font-size:16px;font-weight:600;z-index:3}
.s .status i{font-style:normal;letter-spacing:1px;font-size:12px}
.s .date{font-size:13px;font-weight:500;color:var(--s-mute)}
.s .lt{margin:0;font-family:-apple-system,"SF Pro Display",system-ui,sans-serif;font-size:32px;font-weight:600;letter-spacing:-.035em;line-height:1.05;color:var(--s-ink)}
.s .say{font-family:-apple-system,"SF Pro Display",system-ui,sans-serif;font-size:20px;line-height:1.32;letter-spacing:-.02em;color:var(--s-say)}
.s .say b{font-weight:600;color:var(--s-ink)}
.s .h{margin:4px 0 0;font-size:15px;font-weight:600;display:flex;justify-content:space-between;align-items:baseline;letter-spacing:-.01em;font-family:inherit}
.s .h span{font-size:14px;font-weight:500;color:var(--s-acc)}
.s .stack{display:flex;flex-direction:column;gap:6px;margin-top:6px}
.s .bar-top{display:flex;justify-content:space-between;align-items:center}
.s .who{display:flex;align-items:center;gap:6px;font-size:16px;font-weight:600}
.s .who svg{width:14px;height:14px}
.s .ibs{display:flex;gap:8px}
.s .ib{width:42px;height:42px;border-radius:21px;background:var(--s-ib);display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px var(--s-line);position:relative}
.s .ib svg{width:19px;height:19px}
.s .ib.av{background:linear-gradient(140deg,#8F87FF,#5B57E8);color:#fff;font-weight:600;font-size:16px;box-shadow:none}
.s .ib.biz{background:linear-gradient(140deg,#3CC1A9,#0E6C5E)}
.s .ib .dot{position:absolute;top:10px;right:11px;width:7px;height:7px;border-radius:4px;background:#D64545}
.s .askbar{height:54px;border-radius:27px;background:var(--s-card);display:flex;align-items:center;gap:10px;padding:0 8px 0 10px;box-shadow:0 10px 28px -14px rgba(91,87,232,.35),inset 0 0 0 1px rgba(91,87,232,.14)}
.s .askbar img{width:30px;height:31px}
.s .askbar span{flex:1;font-size:15.5px;color:var(--s-mute)}
.s .askbar i{width:38px;height:38px;border-radius:19px;background:var(--s-k);color:var(--s-k-ink);display:flex;align-items:center;justify-content:center}
.s .askbar i svg{width:18px;height:18px;stroke-width:2}
.s .card{background:var(--s-card);border-radius:26px;box-shadow:0 1px 0 rgba(29,28,36,.03),0 14px 34px -16px rgba(29,28,36,.14);overflow:hidden}
.s .row{display:flex;align-items:center;gap:13px;padding:13px 16px;position:relative}
.s .row+.row:before{content:"";position:absolute;top:0;left:66px;right:0;height:1px;background:var(--s-line)}
.s .card.nl .row+.row:before{left:16px}
.s .tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.s .tx b{font-size:15.5px;font-weight:500;letter-spacing:-.015em}
.s .tx small{font-size:13px;color:var(--s-mute);line-height:1.3}
.s .amt,.s .big{font-family:ui-rounded,"SF Pro Rounded",-apple-system,system-ui,sans-serif;font-variant-numeric:tabular-nums}
.s .amt{font-size:15.5px;font-weight:500;white-space:nowrap}
.s .big{font-weight:500;letter-spacing:-.04em;font-size:24px}
.s .xl{font-size:44px}
.s .when{font-size:13px;color:var(--s-mute);white-space:nowrap}
.s .bad{color:#D64545}.s .ok{color:#23845A}.s .acc{color:var(--s-acc)}
.s .pill{height:32px;border-radius:16px;padding:0 13px;display:inline-flex;align-items:center;font-size:13.5px;font-weight:500;background:var(--g-red);color:var(--c-red)}
.s .pill.k{background:var(--s-k);color:var(--s-k-ink)}
.s .tiles{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.s .tile{background:var(--s-card);border-radius:26px;padding:16px;display:flex;flex-direction:column;gap:8px;box-shadow:0 1px 0 rgba(29,28,36,.03),0 14px 34px -16px rgba(29,28,36,.14)}
.s .tile.tall{min-height:118px;justify-content:space-between}
.s .tile.tall b{font-size:16px}
.s .tile small{font-size:13px;color:var(--s-mute)}
.s .ship{display:flex;gap:12px}
.s .ship .tile{width:156px;flex:none;padding:10px;gap:8px}
.s .ship .pic{height:88px;border-radius:18px;display:flex;align-items:center;justify-content:center}
.s .ship .pic svg{width:66px;height:66px}
.s .ship .tx{padding:0 4px 4px}
.s .ship .tx b{font-size:14.5px}
.s .pic.sand{background:#F5EEE6}.s .pic.sky{background:#E9EFF7}
.s .seg{display:flex;gap:4px;padding:4px;border-radius:22px;background:var(--s-t)}
.s .seg span{flex:1;height:34px;border-radius:17px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:500;color:var(--s-mute)}
.s .seg span.on{background:var(--s-card);color:var(--s-ink);box-shadow:0 2px 8px rgba(29,28,36,.08)}
.s .meter{height:8px;border-radius:4px;background:var(--s-line);overflow:hidden}
.s .meter i{display:block;height:100%;border-radius:4px;background:var(--s-acc)}
.s .meter i.g{background:#34A874}
.s .w60{width:60%}.s .w67{width:67%}.s .w75{width:75%}.s .w40{width:40%}
.s .chips{display:flex;gap:8px;overflow:hidden}
.s .chip{height:36px;border-radius:18px;padding:0 14px;display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:500;background:var(--s-card);box-shadow:inset 0 0 0 1px var(--s-line);white-space:nowrap}
.s .chip svg{width:16px;height:16px}
.s .week{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}
.s .week span{display:flex;flex-direction:column;align-items:center;gap:6px;font-size:12px;color:var(--s-mute);font-weight:500}
.s .week span b{width:38px;height:38px;border-radius:19px;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--s-ink);font-weight:500}
.s .week span.on b{background:var(--s-k);color:var(--s-k-ink)}
.s .week span.dt b{box-shadow:inset 0 0 0 1.5px var(--s-line)}
.s .ev{display:flex;gap:12px;padding:12px 16px;align-items:stretch;position:relative}
.s .ev+.ev:before{content:"";position:absolute;top:0;left:16px;right:0;height:1px;background:var(--s-line)}
.s .ev .t{width:48px;flex:none;font-size:13px;color:var(--s-mute);font-variant-numeric:tabular-nums;padding-top:2px}
.s .ev .t b{display:block;font-size:15px;color:var(--s-ink);font-weight:500}
.s .ev .stripe{width:4px;border-radius:2px;flex:none}
.s .st-v{background:#8F87FF}.s .st-p{background:#F28DB2}.s .st-g{background:#5CC995}.s .st-b{background:#6FA8EC}
.s .dock{position:absolute;left:16px;right:16px;bottom:28px;display:flex;gap:10px;align-items:center;z-index:3}
.s .nav{flex:1;height:64px;border-radius:32px;background:var(--s-nav);-webkit-backdrop-filter:blur(22px) saturate(1.6);backdrop-filter:blur(22px) saturate(1.6);box-shadow:0 12px 32px -10px rgba(29,28,36,.22),inset 0 0 0 1px var(--s-line);display:grid;grid-template-columns:repeat(5,1fr);align-items:center;padding:0 4px}
.s .nav span{height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--s-mute);font-size:10px;font-weight:500;position:relative}
.s .nav span svg{width:24px;height:24px;stroke-width:1.6}
.s .nav span.on{color:var(--s-acc);font-weight:600}
.s .nav .bd{position:absolute;top:6px;left:calc(50% + 6px);min-width:17px;height:17px;padding:0 5px;border-radius:9px;background:#D64545;color:#fff;font-size:10.5px;font-weight:600;display:flex;align-items:center;justify-content:center}
.s .orb{width:64px;height:64px;border-radius:32px;position:relative;flex:none;display:flex;align-items:center;justify-content:center}
.s .orb:before{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,#B9B2FF,#FFC9DF,#FFE0B8,#B8E8D4,#B9B2FF);animation:spin 9s linear infinite}
.s .orb:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--s-orb)}
.s .orb img{position:relative;z-index:1;width:44px;height:45px;animation:bob 4s ease-in-out infinite}
@keyframes spin{to{transform:rotate(360deg)}}
/* chat screen */
.s .chathead{display:flex;align-items:center;gap:10px;padding:56px 20px 10px;position:relative}
.s .chathead img{width:36px;height:37px}
.s .chathead b{font-size:17px;font-weight:600}
.s .chathead small{display:block;font-size:12.5px;color:var(--s-mute)}
.s .thread{position:relative;padding:8px 16px;display:flex;flex-direction:column;gap:12px}
.s .me{align-self:flex-end;max-width:78%;background:var(--s-acc);color:#fff;padding:10px 14px;border-radius:20px 20px 6px 20px;font-size:15px;line-height:1.35}
.s .zl{display:flex;gap:10px;align-items:flex-start}
.s .zl img{width:26px;height:27px;flex:none;margin-top:2px}
.s .zl p{font-size:15px;line-height:1.45;color:var(--s-say)}
.s .zl p b{color:var(--s-ink);font-weight:600}
.s .prop{padding:14px 16px;display:flex;flex-direction:column;gap:10px}
.s .prop .ph{display:flex;align-items:center;gap:12px}
.s .prop .btns{display:flex;gap:8px}
.s .prop .cap{height:38px;flex:1;border-radius:19px;font-size:14.5px;background:var(--s-t);color:var(--s-ink)}
.s .prop .cap.k{background:var(--s-k);color:var(--s-k-ink)}
.s .fine{font-size:11.5px;color:var(--s-mute);text-align:center}
.s .composer{position:absolute;left:16px;right:16px;bottom:30px;z-index:3;display:flex;flex-direction:column;gap:8px}
.s .stoast{display:flex;align-items:center;gap:12px;background:#1D1C24;color:#fff;border-radius:22px;padding:12px 14px 12px 16px;font-size:14.5px}
.s .stoast svg{width:18px;height:18px;color:#7FD9AA}
.s .stoast em{font-style:normal;font-weight:600;color:#BDB8FF;margin-left:auto}
/* task screen */
.s .task{padding:14px 16px;display:flex;flex-direction:column;gap:10px}
.s .task .th{display:flex;align-items:center;gap:12px}
.s .task .th img{width:40px;height:41px}
.s .task .st{font-size:13px;font-weight:500}
.s .task .log{font-size:13px;color:var(--s-mute);display:flex;flex-direction:column;gap:4px;padding-left:52px}
.s .task .q{font-size:14.5px;color:var(--s-say);padding-left:52px}

@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
/* steps, streak, health, learning */
.s .steps{list-style:none;margin:0;padding:0 0 0 52px;display:flex;flex-direction:column;gap:9px}
.s .steps li{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--s-say);line-height:1.35}
.s .steps li svg{width:18px;height:18px;flex:none;color:#23845A;stroke-width:2.2;margin-top:0}
.s .steps li.now svg{color:var(--s-acc)}
.s .steps li b{color:var(--s-ink);font-weight:600}
.s .hero-card{padding:18px;display:flex;flex-direction:column;gap:12px;background:linear-gradient(160deg,var(--g-violet),var(--s-card) 75%)}
.s .hero-card .row{padding:0}
.s .streak{display:flex;gap:6px}
.s .streak i{flex:1;height:8px;border-radius:4px;background:var(--s-acc);opacity:.85}
.s .streak i.off{background:var(--s-line);opacity:1}
.s .startbtn{height:48px;border-radius:24px;background:var(--s-k);color:var(--s-k-ink);display:flex;align-items:center;justify-content:center;gap:8px;font-size:16px;font-weight:500}
.s .startbtn svg{width:18px;height:18px}
.s .word{display:flex;justify-content:space-between;align-items:baseline;padding:12px 16px;position:relative}
.s .word+.word:before{content:"";position:absolute;top:0;left:16px;right:0;height:1px;background:var(--s-line)}
.s .word b{font-size:16px;font-weight:600}
.s .word span{font-size:13.5px;color:var(--s-mute)}
.s .vit{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.s .vit .tile{padding:14px;gap:4px}
.s .vit .tile .big{font-size:22px}
.s .vit .tile small{font-size:12px}
.s .foot{font-size:12px;color:var(--s-mute);text-align:center;padding:0 10px}
.fineprint{font-size:14px;color:var(--mute)}
.team+.note{margin-top:16px}
.later{padding:24px 0}
.laterbox{display:flex;gap:16px;align-items:flex-start;padding:22px 24px}
.laterbox h2{font-size:19px;letter-spacing:-.015em;margin-bottom:4px}
.laterbox p{color:var(--say);font-size:16px}
.s .pg.tight{gap:12px}

/* ------------------------------------------------------------ v2: screen-led layout, motion */
@media (min-width:860px){.phone{--k:.8}}
@media (min-width:1200px){.phone{--k:.86}.hero .phone{--k:.92}}
.copy h2{max-width:14em}
.copy .lede{font-size:clamp(18px,2vw,21px)}
.hero h1{font-size:clamp(40px,6.2vw,64px)}
/* hero phone cycles through four screens (pure CSS; first screen only with reduced motion) */
.cycle .cyc{position:absolute;inset:0;opacity:0;animation:cyc 20s infinite}
.cycle .c1{animation-delay:-1s}.cycle .c2{animation-delay:4s}.cycle .c3{animation-delay:9s}.cycle .c4{animation-delay:14s}
@keyframes cyc{0%{opacity:0;transform:translateX(18px)}4%,23%{opacity:1;transform:none}27%,100%{opacity:0;transform:translateX(-18px)}}
/* what Zen does */
.does-sec{padding:24px 0 40px}
.does-sec h2{font-size:clamp(24px,3vw,30px);margin-bottom:20px}
.does{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
@media (min-width:640px){.does{grid-template-columns:repeat(3,1fr)}}
@media (min-width:1000px){.does{grid-template-columns:repeat(5,1fr);gap:12px}}
.does li{display:flex;align-items:center;gap:12px;background:var(--card);border-radius:20px;padding:12px 14px;box-shadow:var(--shadow);font-size:15.5px;font-weight:500;line-height:1.25;letter-spacing:-.01em}
.does .gl{width:38px;height:38px}
/* Zennies bob softly, each on its own beat */
.zen img{animation:bob 4.2s ease-in-out infinite}
.team li:nth-child(2) img{animation-delay:-.6s}.team li:nth-child(3) img{animation-delay:-1.2s}.team li:nth-child(4) img{animation-delay:-1.8s}
.team li:nth-child(5) img{animation-delay:-2.4s}.team li:nth-child(6) img{animation-delay:-3s}.team li:nth-child(7) img{animation-delay:-3.6s}.team li:nth-child(8) img{animation-delay:-.3s}
.team{margin-top:40px}
.zen span{font-size:14.5px}
/* scroll reveal: landing.js adds .pre only to things below the fold, so nothing hides without JS */
.reveal{transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal.pre{opacity:0;transform:translateY(32px)}
.phone.reveal.pre{transform:translateY(48px) scale(.97)}
/* waitlist (hidden until configured) */
.wl{display:flex;flex-wrap:wrap;gap:10px;max-width:460px}
.wl[hidden]{display:none}
.wl input{flex:1 1 220px;height:50px;border-radius:25px;border:0;padding:0 20px;font:inherit;font-size:16px;background:var(--card);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
.wl input:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.wl button{height:50px;border-radius:25px;border:0;padding:0 22px;font:inherit;font-size:16px;font-weight:500;background:var(--ink);color:var(--bg);cursor:pointer}
.wl button:focus-visible{outline:2px solid var(--acc);outline-offset:3px}
.wl-msg{flex-basis:100%;font-size:15px;color:var(--mute);min-height:1px}
/* coming later */
.laterline{display:flex;gap:14px;align-items:center;background:var(--card);border-radius:22px;padding:16px 20px;box-shadow:var(--shadow);font-size:16px;color:var(--say)}
.laterline b{color:var(--ink)}
.end h2{max-width:none}
section{padding:56px 0}
@media (min-width:960px){section{padding:80px 0}}
.hero{padding-top:32px}
@media (prefers-reduced-motion:reduce){
  .cycle .cyc{opacity:0}.cycle .c1{opacity:1}
  .reveal.pre{opacity:1;transform:none}
}
/* nav */
.topnav{display:flex;align-items:center;gap:6px}
.topnav a{color:var(--mute);text-decoration:none;font-size:15px;font-weight:500;padding:8px 10px;border-radius:16px}
.topnav a:hover{color:var(--ink)}
.topnav a.signin{color:var(--ink);padding:8px 14px}
@media (max-width:560px){.topnav a:not(.signin){display:none}}
.footnav{display:flex;flex-wrap:wrap;gap:6px 16px}
.footnav a{color:var(--mute)}
