@font-face{font-family:'Space Grotesk';src:url(../fonts/SpaceGrotesk-latin.woff2) format('woff2');font-weight:300 700;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url(../fonts/IBMPlexSans-latin.woff2) format('woff2');font-weight:400 600;font-display:swap}
:root{--btn:#942021;--accent:#942021;--accent-ink:#942021;--on-accent:#fff;--tint:#F6EDED;--paper:#F6F6F8;--surface:#fff;--ink:#0F1A33;--muted:#5B6170;--rule:#E3E5EA;--tile-a:#A63834;--tile-b:#840912}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--accent:#FFABA2;--accent-ink:#FFABA2;--on-accent:#3A0607;--tint:#2A1B1C;--paper:#0C0E12;--surface:#151821;--ink:#EEF0F5;--muted:#A3A9B8;--rule:#262B36}}
:root[data-theme=dark]{--accent:#FFABA2;--accent-ink:#FFABA2;--on-accent:#3A0607;--tint:#2A1B1C;--paper:#0C0E12;--surface:#151821;--ink:#EEF0F5;--muted:#A3A9B8;--rule:#262B36}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.55 'IBM Plex Sans',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
h1,h2,h3{font-family:'Space Grotesk',sans-serif;letter-spacing:-.015em;margin:0}
.i{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:12px;z-index:50;background:var(--surface);padding:8px 12px;border-radius:8px}
.btn{display:inline-flex;align-items:center;justify-content:center;height:46px;padding:0 20px;border-radius:12px;font-weight:600;text-decoration:none;color:var(--ink);background:var(--surface);border:1px solid var(--rule)}
.btn.primary{background:var(--btn);border-color:var(--btn);color:#fff}
.tlink{display:inline-flex;align-items:center;height:46px;padding:0 6px;color:#fff;font-weight:600;text-underline-offset:4px}
.btn.light{background:#fff;border-color:#fff;color:#942021}
.btn.outline{background:transparent;border-color:rgba(255,255,255,.6);color:#fff}
a:focus-visible,.btn:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

.nav{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--paper) 90%,transparent);backdrop-filter:blur(8px)}
.nav .wrap{display:flex;align-items:center;height:68px}
.brand{display:flex;align-items:center;gap:10px;margin-right:auto}
.brand .mk{width:32px;height:32px}.brand .wm{height:20px}
.wm-dark{display:none}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .wm-ink{display:none}:root:not([data-theme=light]) .wm-dark{display:block}}
:root[data-theme=dark] .wm-ink{display:none}:root[data-theme=dark] .wm-dark{display:block}
.nav nav{display:flex;align-items:center;gap:24px}
.nav nav a:not(.btn){color:var(--ink);text-decoration:none;font-weight:500}
.nav .btn{height:40px;padding:0 16px}

/* hero band: the only large colour field */
.band{background:linear-gradient(180deg,var(--tile-a),var(--tile-b));color:#fff}
.band .wrap{display:grid;grid-template-columns:1fr 280px;align-items:center;gap:48px;padding-top:56px;padding-bottom:56px}
.band h1{font-size:clamp(2.4rem,5.2vw,4.1rem);line-height:1.04;font-weight:700;max-width:13ch}
.lede{font-size:1.25rem;line-height:1.45;margin:20px 0 30px;max-width:34ch;color:#fff}
.ctas{display:flex;gap:12px;flex-wrap:wrap}
.hero-stash{display:grid;place-items:center}
.hero-stash{justify-content:end}.hero-stash svg{width:240px;height:auto}

.stash-g{overflow:visible}
.st-w{fill:#fff}.st-core{fill:#FFB74D}.st-pupil{fill:#0F1A33}
.st-part{transform-box:fill-box;transform-origin:50% 50%}
.build .st-tab{animation:pop .5s cubic-bezier(.34,1.7,.5,1) .15s both}
.build .st-bd{animation:pop .5s cubic-bezier(.34,1.7,.5,1) .35s both}
.build .st-eye{animation:pop .5s cubic-bezier(.34,1.9,.5,1) .57s both}
@keyframes pop{from{transform:scale(0)}to{transform:scale(1)}}
.blink .st-eye{animation:blink .45s ease-in-out}
@keyframes blink{0%,100%{transform:scaleY(1)}45%,55%{transform:scaleY(.08)}}
.asleep .st-eye{transform:scaleY(.24)}
.asleep.wake .st-eye{animation:wake .9s ease-in-out}
@keyframes wake{0%,100%{transform:scaleY(.24)}35%,65%{transform:scaleY(1)}}

/* signature */
.try{padding:72px 0 24px}
.try h2,.pricing h2,.faq h2{font-size:clamp(1.8rem,3.4vw,2.5rem);margin-bottom:22px}
.frame{background:var(--surface);border:1px solid var(--rule);border-radius:16px;overflow:hidden;box-shadow:0 18px 50px rgba(15,26,51,.10)}
.chrome{position:relative;display:flex;align-items:center;gap:14px;height:44px;padding:0 14px;border-bottom:1px solid var(--rule)}
.dots{display:flex;gap:6px}.dots i{width:10px;height:10px;border-radius:50%;background:var(--rule)}
.url{flex:1;max-width:420px;height:28px;display:flex;align-items:center;padding:0 12px;border-radius:8px;background:var(--paper);color:var(--muted);font-size:14px}
.payoff{position:absolute;right:12px;top:6px}
.ptile{display:grid;place-items:center;width:32px;height:32px;border-radius:22%;background:linear-gradient(180deg,var(--tile-a),var(--tile-b))}
.ptile svg{width:72%;height:72%}
#demo{display:block;width:100%;height:560px;border:0;background:var(--paper)}
.cap{color:var(--muted);margin:16px 0 0;text-align:center;font-size:1.05rem}.cap b{color:var(--ink)}

/* rows */
.rows{padding:56px 0 8px}
.rows .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.row{display:flex;gap:14px}
.row .i{color:var(--accent-ink);margin-top:3px}
.row h3{font-size:1.2rem;margin-bottom:6px}
.row p{margin:0;color:var(--muted)}

.where{padding:56px 0}
.wcard{display:flex;gap:20px;align-items:center;padding:28px;border-radius:18px;background:var(--tint)}
.wcard .big{width:40px;height:40px;color:var(--accent-ink)}
.wcard h2{font-size:1.5rem;margin-bottom:4px}.wcard p{margin:0;color:var(--muted);max-width:60ch}

.pricing{padding:40px 0 56px}
.pricing .sub{color:var(--muted);margin:-10px 0 24px}
.plans{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.plan{display:flex;flex-direction:column;padding:24px;border-radius:18px;background:var(--surface);border:1px solid var(--rule)}
.plan.main{border:2px solid var(--accent)}
.plan h3{font-size:1.5rem}
.pr{margin:14px 0 2px;color:var(--muted)}.pr b{font:700 2rem/1 'Space Grotesk',sans-serif;color:var(--ink);letter-spacing:-.02em}
.bill{margin:0 0 20px;color:var(--muted);font-size:15px;flex:1}
.note{color:var(--muted);margin:18px 0 0;font-size:15px}

.faq{padding:24px 0 56px}
details{border-top:1px solid var(--rule);padding:18px 0}
details:last-of-type{border-bottom:1px solid var(--rule)}
summary{cursor:pointer;font-weight:600;font-size:1.1rem;list-style:none;display:flex;justify-content:space-between}
summary::after{content:"+";color:var(--muted);font-weight:400}
details[open] summary::after{content:"\2212"}
details p,details ol{color:var(--muted);margin:12px 0 0;max-width:65ch}
details li{margin:4px 0}

.close{padding:64px 0 88px;text-align:center}
.ctile{display:grid;place-items:center;width:84px;height:84px;margin:0 auto 22px;border-radius:22%;background:linear-gradient(180deg,var(--tile-a),var(--tile-b))}
.ctile svg{width:72%;height:72%}
.close h2{font-size:clamp(1.8rem,3.4vw,2.6rem);margin-bottom:22px}

.foot{border-top:1px solid var(--rule);padding:28px 0;color:var(--muted);font-size:14px}
.foot .wrap{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between}
.foot a{color:inherit}.foot nav{display:flex;gap:18px}

@media (prefers-reduced-motion:reduce){.build .st-part,.blink .st-eye,.asleep.wake .st-eye{animation:none}}
@media (max-width:900px){
  .band .wrap{grid-template-columns:1fr;padding-top:48px;padding-bottom:48px}
  .band .wrap{grid-template-columns:1fr auto;gap:16px}.hero-stash{order:0;align-self:start}.hero-stash svg{width:72px}
  .rows .wrap{grid-template-columns:1fr}
  .plans{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .wrap{padding:0 16px}
  .nav nav a:not(.btn){display:none}
  .lede{font-size:1.1rem}
  .plans{grid-template-columns:1fr}
  #demo{height:620px}
  .wcard{flex-direction:column;align-items:flex-start}
}

/* public launch set: four features in a 2 by 2 grid plus one quiet storage line */
.launch .rows .wrap{grid-template-columns:repeat(2,1fr);gap:28px 48px}
.stored{color:var(--muted);margin-top:28px!important;font-size:15px}
@media (max-width:900px){.launch .rows .wrap{grid-template-columns:1fr}}
[hidden]{display:none!important}

.preview-flag{background:#FFB74D;color:#0F1A33;text-align:center;padding:6px 12px;font:600 14px/1.3 'IBM Plex Sans',system-ui,sans-serif}
