:root{--paper:#f3f4f2;--paper-2:#e9ebe7;--card:#fbfbfa;--ink:#0e1116;--ink-2:#353b46;--muted:#626977;--rule:#d5d8d2;--rule-strong:#b9bdb5;--grid:#0e111612;--signal:#e5531a;--signal-text:#b23f0f;--signal-wash:#e5531a1a;--invert-bg:#0e1116;--invert-ink:#eeefeb;--invert-muted:#9aa0aa;--invert-rule:#2a303b;--shadow:0 1px 0 #0e11160a, 0 12px 32px -18px #0e111647;--font-sans:var(--font-schibsted), ui-sans-serif, system-ui, sans-serif;--font-mono:var(--font-plex-mono), ui-monospace, "SFMono-Regular", Menlo, monospace;--fs-display:clamp(2.55rem, 1.35rem + 5.1vw, 5.4rem);--fs-h1:clamp(2.2rem, 1.3rem + 3.6vw, 4rem);--fs-h2:clamp(1.85rem, 1.25rem + 2.4vw, 3.05rem);--fs-h3:clamp(1.22rem, 1.1rem + .45vw, 1.45rem);--fs-lead:clamp(1.1rem, 1.03rem + .32vw, 1.28rem);--fs-body:1.0625rem;--fs-small:.9375rem;--fs-mono:.78rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4.5rem;--space-9:clamp(4.5rem, 3rem + 6vw, 8rem);--container:1240px;--gutter:clamp(1rem, .6rem + 2vw, 2.5rem);--radius:10px;--radius-lg:16px;--ease:cubic-bezier(.2, .7, .1, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--paper:#0e1116;--paper-2:#141820;--card:#151a22;--ink:#eceeea;--ink-2:#c4c8c3;--muted:#8f95a0;--rule:#262c37;--rule-strong:#384050;--grid:#eceeea0b;--signal:#ff6a33;--signal-text:#ff8a5c;--signal-wash:#ff6a331f;--invert-bg:#eceeea;--invert-ink:#0e1116;--invert-muted:#555c68;--invert-rule:#cfd2cc;--shadow:0 1px 0 #0000004d, 0 16px 40px -20px #000000b3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:var(--fs-body);font-feature-settings:"ss01", "cv11";-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.6;overflow-x:hidden}img,svg{max-width:100%;display:block}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}h1,h2,h3,h4{letter-spacing:-.025em;text-wrap:balance;margin:0;font-weight:750;line-height:1.08}p{text-wrap:pretty;margin:0}ul,ol{margin:0;padding:0}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--signal);outline-offset:3px;border-radius:4px}::selection{background:var(--signal);color:#fff}.skip{left:var(--gutter);z-index:100;padding:var(--space-3) var(--space-4);background:var(--ink);color:var(--paper);border-radius:var(--radius);position:absolute;top:-100px}.skip:focus{top:var(--space-3)}.container{width:100%;max-width:calc(var(--container) + 2 * var(--gutter));padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--space-9)}.section+.section{border-top:1px solid var(--rule)}.section--tight{padding-block:var(--space-8)}.label{font-family:var(--font-mono);font-size:var(--fs-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:500}.label--signal{color:var(--signal-text)}.head{gap:var(--space-4);max-width:46rem;margin-bottom:var(--space-7);display:grid}.head h2{font-size:var(--fs-h2)}.head p{color:var(--ink-2);font-size:var(--fs-lead);line-height:1.5}.head--split{grid-template-columns:minmax(0,1fr);max-width:none}@media (min-width:900px){.head--split{align-items:end;gap:var(--space-7);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}}.page-head{padding-top:clamp(3rem,2rem + 4vw,6rem);padding-bottom:var(--space-8);border-bottom:1px solid var(--rule)}.page-head h1{font-size:var(--fs-h1);letter-spacing:-.035em;max-width:18ch;margin-top:var(--space-4);font-weight:800}.page-head p:not(.label){margin-top:var(--space-5);max-width:44rem;font-size:var(--fs-lead);color:var(--ink-2);line-height:1.5}.btn{border:1px solid var(--ink);background:var(--ink);min-height:48px;color:var(--paper);cursor:pointer;transition:background-color .18s var(--ease), color .18s var(--ease), border-color .18s var(--ease);border-radius:999px;justify-content:center;align-items:center;gap:.6em;padding:.75rem 1.35rem;font-size:1rem;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.btn:hover{background:var(--ink-2);border-color:var(--ink-2)}.btn--ghost{color:var(--ink);border-color:var(--rule-strong);background:0 0}.btn--ghost:hover{background:var(--paper-2);border-color:var(--ink)}.btn[disabled]{opacity:.6;cursor:progress}.btn .arrow{transition:transform .18s var(--ease)}.btn:hover .arrow{transform:translate(3px)}.link{border-bottom:1px solid var(--rule-strong);transition:border-color .18s var(--ease);align-items:center;gap:.45em;padding-bottom:2px;font-weight:600;text-decoration:none;display:inline-flex}.link:hover{border-color:var(--signal)}.chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{font-family:var(--font-mono);border:1px solid var(--rule);color:var(--ink-2);background:var(--card);border-radius:6px;padding:.3rem .6rem;font-size:.74rem}.header{z-index:50;background:color-mix(in srgb, var(--paper) 88%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(10px);border-bottom:1px solid var(--rule);position:sticky;top:0}.header__bar{align-items:center;gap:var(--space-5);height:68px;display:flex}.header__brand{color:var(--ink);margin-right:auto;display:inline-flex}.header__brand svg{width:auto;height:26px}.nav{gap:var(--space-1);display:none}.nav a{color:var(--ink-2);transition:background-color .15s var(--ease), color .15s var(--ease);border-radius:999px;padding:.5rem .8rem;font-size:.97rem;font-weight:500;text-decoration:none}.nav a:hover{background:var(--paper-2);color:var(--ink)}.nav a[aria-current=page]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--signal);border-radius:0}.header__tools{align-items:center;gap:var(--space-2);display:flex}.header__cta{display:none}.iconbtn{border:1px solid var(--rule);width:44px;height:44px;color:var(--ink);cursor:pointer;font-family:var(--font-mono);letter-spacing:.04em;transition:border-color .15s var(--ease), background-color .15s var(--ease);background:0 0;border-radius:999px;place-items:center;font-size:.78rem;font-weight:500;text-decoration:none;display:inline-grid}.iconbtn:hover{border-color:var(--ink);background:var(--paper-2)}.iconbtn svg{width:18px;height:18px}.theme-icon--sun{display:none}:root[data-theme=dark] .theme-icon--sun{display:block}:root[data-theme=dark] .theme-icon--moon{display:none}.menu-btn{display:inline-grid}@media (min-width:1000px){.nav{display:flex}.header__cta{min-height:44px;padding-inline:1.1rem;font-size:.95rem;display:inline-flex}.menu-btn{display:none}.header__brand{margin-right:var(--space-4)}.nav{margin-right:auto}}.drawer{z-index:49;background:var(--paper);padding:var(--space-6) var(--gutter);align-content:start;gap:var(--space-2);display:grid;position:fixed;inset:68px 0 0;overflow-y:auto}.drawer a:not(.btn){letter-spacing:-.02em;padding:var(--space-3) 0;border-bottom:1px solid var(--rule);font-size:1.6rem;font-weight:700;text-decoration:none}.drawer .btn{margin-top:var(--space-5)}@media (min-width:1000px){.drawer{display:none}}.hero{border-bottom:1px solid var(--rule);padding-top:clamp(3rem,2rem + 5vw,7rem);padding-bottom:var(--space-8);position:relative}.blueprint{background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-position:-1px -1px;background-size:32px 32px}.hero h1{font-size:var(--fs-display);letter-spacing:-.042em;max-width:15ch;margin-top:var(--space-5);font-weight:800;line-height:.98}.hero__lead{margin-top:var(--space-6);max-width:40rem;font-size:var(--fs-lead);color:var(--ink-2);line-height:1.55}.hero__actions{gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.xsec{border:1px solid var(--rule-strong);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow);position:relative;overflow:hidden}.xsec__top{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--rule);display:flex}.xsec__status{align-items:center;gap:var(--space-2);display:inline-flex}.xsec__dot{background:var(--muted);border-radius:50%;width:8px;height:8px}.xsec[data-running=true] .xsec__dot{background:var(--signal);box-shadow:0 0 0 4px var(--signal-wash)}.xsec__toggle{align-items:center;gap:var(--space-2);border:1px solid var(--rule);cursor:pointer;min-height:36px;font-family:var(--font-mono);color:var(--ink-2);white-space:nowrap;background:0 0;border-radius:999px;flex:none;padding:0 .85rem;font-size:.74rem;display:inline-flex}.xsec__toggle:hover{border-color:var(--ink)}.xsec__rows{position:relative}.xsec__list{margin:0;padding:0;list-style:none}.xsec__row{gap:var(--space-3) var(--space-4);padding:var(--space-5) var(--space-5) var(--space-5) var(--space-4);border-bottom:1px solid var(--rule);transition:background-color .4s var(--ease);grid-template-columns:2.25rem minmax(0,1fr);display:grid;position:relative}.xsec__row:last-child{border-bottom:0}.xsec__row[data-active=true]{background:var(--signal-wash)}.xsec__node{z-index:1;border:1px solid var(--rule-strong);background:var(--card);width:2.25rem;height:2.25rem;transition:border-color .3s var(--ease), background-color .3s var(--ease);border-radius:50%;place-items:center;display:grid;position:relative}.xsec__node:after{content:"";background:var(--rule-strong);width:8px;height:8px;transition:background-color .3s var(--ease), transform .3s var(--ease);border-radius:2px}.xsec__row[data-active=true] .xsec__node{border-color:var(--signal)}.xsec__row[data-active=true] .xsec__node:after{background:var(--signal);transform:rotate(45deg)scale(1.15)}.xsec__bus{left:calc(var(--space-4) + 1.125rem - 1px);background:repeating-linear-gradient(to bottom, var(--rule-strong) 0 4px, transparent 4px 9px);pointer-events:none;width:2px;position:absolute;top:0;bottom:0}.xsec__packet{z-index:3;left:calc(var(--space-4) + 1.125rem - 4px);background:var(--signal);width:8px;height:22px;box-shadow:0 0 0 4px var(--signal-wash);pointer-events:none;opacity:0;border-radius:4px;position:absolute}.xsec__name{align-items:baseline;gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.xsec__name h3{font-size:var(--fs-h3);letter-spacing:-.02em}.xsec__build{color:var(--ink-2);font-size:var(--fs-small)}.xsec__body{gap:var(--space-3);min-width:0;display:grid}.xsec__event{align-items:center;gap:var(--space-3);min-height:1.6rem;font-family:var(--font-mono);color:var(--muted);grid-column:2;font-size:.8rem;display:flex;overflow:hidden}.xsec__event span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.xsec__event time{color:var(--muted);opacity:.8;flex:none}.xsec__row[data-active=true] .xsec__event span{color:var(--ink)}.xsec__caption{padding:var(--space-4) var(--space-5);border-top:1px solid var(--rule);font-size:var(--fs-small);color:var(--muted)}@media (min-width:860px){.xsec__event{grid-column:auto}.xsec__row{padding-left:var(--space-5);grid-template-columns:2.25rem minmax(0,.9fr) minmax(0,1.1fr);align-items:center}.xsec__bus{left:calc(var(--space-5) + 1.125rem - 1px)}.xsec__packet{left:calc(var(--space-5) + 1.125rem - 4px)}.xsec__event{justify-content:flex-end}}.product{gap:var(--space-6);padding-block:var(--space-7);border-top:1px solid var(--rule);display:grid}.product:first-of-type{border-top:0;padding-top:0}.product:last-child{padding-bottom:0}.product__copy{align-content:start;gap:var(--space-4);display:grid}.product__copy h3{letter-spacing:-.035em;font-size:clamp(1.9rem,1.4rem + 1.8vw,2.6rem);font-weight:800}.product__tagline{font-size:var(--fs-lead);color:var(--ink);font-weight:600;line-height:1.35}.product__copy p:not(.product__tagline):not(.label){color:var(--ink-2)}@media (min-width:960px){.product{align-items:center;gap:var(--space-8);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.product--flip{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.product--flip .product__copy{order:2}}.browser{border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);overflow:hidden}.browser__bar{align-items:center;gap:var(--space-3);height:34px;padding:0 var(--space-3);border-bottom:1px solid var(--rule);background:var(--paper-2);display:flex}.browser__dots{gap:5px;display:flex}.browser__dots i{background:var(--rule-strong);border-radius:50%;width:9px;height:9px}.browser__url{background:var(--card);max-width:22rem;font-family:var(--font-mono);color:var(--muted);text-align:center;white-space:nowrap;text-overflow:ellipsis;border-radius:6px;flex:1;margin-inline:auto;padding:3px 10px;font-size:.7rem;overflow:hidden}.browser img{width:100%;height:auto}.phone-wrap{container-type:inline-size}.phone{background:#0b0d11;border-radius:15cqw;margin:0;padding:3.6cqw;position:relative;box-shadow:inset 0 0 0 1px #3b414b,inset 0 0 0 2.4cqw #14171d,0 1px #0e111614,0 24px 40px -24px #0e11168c}.phone:before{content:"";z-index:2;background:#050608;border-radius:999px;width:28cqw;height:7.6cqw;position:absolute;top:6.4cqw;left:50%;transform:translate(-50%)}.phone__screen{background:#000;border-radius:11.6cqw;overflow:hidden}.phone__screen img{width:100%;height:auto;display:block}.phone__bar{height:12.5cqw;font-family:-apple-system, "SF Pro Text", var(--font-sans);letter-spacing:-.01em;justify-content:space-between;align-items:center;padding:1.6cqw 8cqw 0 10cqw;font-size:4.6cqw;font-weight:600;display:flex}.phone__bar svg{width:17cqw;height:auto}.store-shot{box-shadow:var(--shadow);border-radius:18px;overflow:hidden}.store-shot img{width:100%;height:auto}.media-stack{position:relative}.media-stack__phone{width:21%;min-width:92px;position:absolute;bottom:-9%;right:-1.5%}@media (max-width:640px){.media-stack{margin-bottom:14%}.media-stack__phone{width:27%;min-width:0;bottom:-16%;right:3%}}.phones{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:clamp(.6rem,2vw,1.5rem);display:grid}.phones>:nth-child(2){transform:translateY(-6%)}.tf{border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--paper-2);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:clamp(.5rem,2vw,1.5rem);padding:clamp(1rem,3vw,2.5rem);display:grid}.tf__doc{background:var(--card);border:1px solid var(--rule);box-shadow:var(--shadow);font-family:var(--font-mono);color:var(--ink-2);border-radius:6px;gap:8px;padding:clamp(.75rem,2vw,1.25rem);font-size:clamp(.55rem,.45rem + .4vw,.72rem);display:grid}.tf__doc b{font-family:var(--font-sans);color:var(--ink);font-size:1.15em}.tf__line{background:var(--rule);border-radius:3px;height:6px}.tf__table{border:1px solid var(--rule-strong);border-radius:3px;grid-template-columns:1.4fr 1fr 1fr;display:grid;overflow:hidden}.tf__table span{border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);white-space:nowrap;text-overflow:ellipsis;padding:4px 6px;overflow:hidden}.tf__table span:nth-child(3n){border-right:0}.tf__table span:nth-child(-n+3){background:var(--paper-2);color:var(--ink);font-weight:500}.tf__arrow{font-family:var(--font-mono);color:var(--signal-text);justify-items:center;gap:6px;font-size:.7rem;display:grid}.tf__arrow svg{width:28px;height:28px;color:var(--signal)}.tf__tag{background:var(--paper-2);border-radius:4px;justify-self:start;padding:2px 6px;font-size:.9em}.works{gap:var(--space-9);display:grid}.case{gap:var(--space-6);display:grid}.case__copy{align-content:start;gap:var(--space-4);display:grid}.case__copy h3{letter-spacing:-.03em;font-size:clamp(1.6rem,1.3rem + 1.2vw,2.15rem);font-weight:800}.case__client{color:var(--muted);font-size:var(--fs-small);margin-top:calc(-1 * var(--space-2))}.case__copy>p:not(.label):not(.case__client){color:var(--ink-2)}.ticks{gap:var(--space-2);font-size:var(--fs-small);list-style:none;display:grid}.ticks li{color:var(--ink-2);padding-left:1.4rem;position:relative}.ticks li:before{content:"";background:var(--signal);width:.7rem;height:2px;position:absolute;top:.62em;left:0}.case__media--narrow{max-width:560px}@media (min-width:960px){.case{gap:var(--space-8);grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);align-items:center}.case--flip{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}.case--flip .case__media{order:2}.case__media--narrow{max-width:none}}.work-grid{gap:var(--space-7);display:grid}.work-card{gap:var(--space-4);text-decoration:none;display:grid}.work-card h3{font-size:1.35rem}.work-card p{color:var(--ink-2);font-size:var(--fs-small)}@media (min-width:760px){.work-grid{gap:var(--space-7) var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr))}}.steps{counter-reset:step;border-top:1px solid var(--rule);gap:0;list-style:none;display:grid}.steps li{counter-increment:step;align-content:start;gap:var(--space-4);padding:var(--space-5) 0;border-bottom:1px solid var(--rule);grid-template-columns:3.5rem minmax(0,1fr);display:grid}.steps li:before{content:counter(step, decimal-leading-zero);font-family:var(--font-mono);color:var(--signal-text);padding-top:.2rem;font-size:.85rem}.steps h3{font-size:var(--fs-h3);margin-bottom:var(--space-2)}.steps p{color:var(--ink-2)}@media (min-width:900px){.steps{border-top:0;grid-template-columns:repeat(4,minmax(0,1fr))}.steps li{gap:var(--space-4);padding:var(--space-5) var(--space-5) 0 0;border-bottom:0;border-top:2px solid var(--ink);grid-template-columns:1fr}.steps li+li{padding-left:0}}.closing{background:var(--invert-bg);color:var(--invert-ink)}.closing .container{gap:var(--space-6);padding-block:var(--space-9);display:grid}.closing h2{font-size:var(--fs-h2);max-width:18ch;font-weight:800}.closing p{color:var(--invert-muted);font-size:var(--fs-lead);max-width:40rem;line-height:1.5}.closing .btn{background:var(--invert-ink);color:var(--invert-bg);border-color:var(--invert-ink)}.closing .btn:hover{background:var(--signal);border-color:var(--signal);color:#fff}.closing .btn--ghost{color:var(--invert-ink);border-color:var(--invert-rule);background:0 0}.closing .btn--ghost:hover{color:var(--invert-ink);border-color:var(--invert-ink);background:0 0}.closing__actions{gap:var(--space-3);flex-wrap:wrap;display:flex}@media (min-width:900px){.closing .container{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:end}}.facts{border:1px solid var(--rule);border-radius:var(--radius);background:var(--card);margin-top:var(--space-7);grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));display:grid}.facts div{gap:var(--space-2);padding:var(--space-4) var(--space-5);border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);margin:0 -1px -1px 0;display:grid}.facts dt{font-family:var(--font-mono);font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.facts dd{font-weight:500;font-size:var(--fs-small);margin:0}.feature{gap:var(--space-6);padding-block:var(--space-8);border-top:1px solid var(--rule);display:grid}.feature__copy{align-content:start;gap:var(--space-4);display:grid}.feature__copy h2{letter-spacing:-.03em;font-size:clamp(1.5rem,1.2rem + 1.2vw,2.1rem);font-weight:800}.feature__copy p{color:var(--ink-2)}.feature--text .feature__copy{max-width:44rem}@media (min-width:960px){.feature{gap:var(--space-8);grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);align-items:center}.feature--flip .feature__copy{order:2}.feature--text{grid-template-columns:1fr}}.feature-grid{gap:var(--space-6);display:grid}.feature-grid article{gap:var(--space-3);padding-top:var(--space-5);border-top:2px solid var(--ink);display:grid}.feature-grid h2{font-size:var(--fs-h3)}.feature-grid p{color:var(--ink-2)}@media (min-width:760px){.feature-grid{gap:var(--space-7) var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr))}}.services{list-style:none;display:grid}.service{gap:var(--space-4);padding-block:var(--space-7);border-top:1px solid var(--rule);display:grid}.service h2{letter-spacing:-.03em;font-size:clamp(1.5rem,1.25rem + 1vw,2rem);font-weight:800}.service__summary{color:var(--ink-2);max-width:34rem}.service__deliver{gap:var(--space-3);display:grid}@media (min-width:900px){.service{gap:var(--space-6);grid-template-columns:11rem minmax(0,1fr) minmax(0,1fr)}}.prose{gap:var(--space-5);max-width:42rem;color:var(--ink-2);font-size:1.12rem;line-height:1.7;display:grid}.prose h2{font-size:var(--fs-h3);color:var(--ink);margin-top:var(--space-5)}.registry{border-top:1px solid var(--rule);gap:0;margin:0;display:grid}.registry div{gap:var(--space-1);padding:var(--space-4) 0;border-bottom:1px solid var(--rule);display:grid}.registry dt{font-family:var(--font-mono);font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.registry dd{margin:0}@media (min-width:700px){.registry div{grid-template-columns:10rem minmax(0,1fr)}}.two-col{gap:var(--space-8);display:grid}@media (min-width:960px){.two-col{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}}.contact{gap:var(--space-8);display:grid}@media (min-width:960px){.contact{gap:var(--space-9);grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr)}}.form,.form__row{gap:var(--space-5);display:grid}@media (min-width:640px){.form__row{grid-template-columns:1fr 1fr}}.field{gap:var(--space-2);display:grid}.field label{font-size:.95rem;font-weight:600}.field label small{color:var(--muted);margin-left:.35em;font-weight:400}.field input,.field select,.field textarea{border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--card);width:100%;min-height:50px;transition:border-color .15s var(--ease), box-shadow .15s var(--ease);padding:.75rem .9rem;font-size:1rem}.field textarea{resize:vertical;min-height:160px;line-height:1.5}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px var(--signal-wash);outline:none}.field [aria-invalid=true]{border-color:var(--signal)}.field__hint{color:var(--muted);font-size:.85rem}.field__error{color:var(--signal-text);font-size:.88rem;font-weight:500}.check{gap:var(--space-3);font-size:var(--fs-small);color:var(--ink-2);align-items:flex-start;display:flex}.check input{width:20px;height:20px;accent-color:var(--ink);flex:none;margin-top:2px}.hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.notice{padding:var(--space-4) var(--space-5);border-radius:var(--radius);border:1px solid var(--rule-strong);background:var(--card)}.notice--error{border-color:var(--signal);background:var(--signal-wash)}.notice strong{display:block}.direct{align-content:start;gap:var(--space-5);display:grid}.direct dl{gap:var(--space-5);margin:0;display:grid}.direct dt{font-family:var(--font-mono);font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:var(--space-1)}.direct dd{margin:0;font-size:1.05rem}.direct dd a{font-weight:600}.direct__phone{letter-spacing:-.02em;font-weight:800;font-size:clamp(1.5rem,1.2rem + 1vw,2rem)!important}.footer{border-top:1px solid var(--rule);padding-block:var(--space-8) var(--space-6);font-size:var(--fs-small)}.footer__grid{gap:var(--space-7);display:grid}.footer__brand{gap:var(--space-4);align-content:start;max-width:22rem;display:grid}.footer__brand svg{width:auto;height:28px}.footer__brand p{color:var(--ink-2)}.footer__cols{gap:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.footer__cols h2{font-family:var(--font-mono);font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:var(--space-3);font-weight:500}.footer__cols ul{gap:var(--space-2);list-style:none;display:grid}.footer__cols a{color:var(--ink-2);text-decoration:none}.footer__cols a:hover{color:var(--ink);text-decoration:underline}.footer__contact address{color:var(--ink-2);gap:var(--space-2);font-style:normal;display:grid}.footer__legal{justify-content:space-between;gap:var(--space-3);margin-top:var(--space-8);padding-top:var(--space-5);border-top:1px solid var(--rule);color:var(--muted);flex-wrap:wrap;font-size:.85rem;display:flex}@media (min-width:900px){.footer__grid{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.footer__cols{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hero__grid{gap:var(--space-8);align-items:center;display:grid}.hero__grid h1{font-size:clamp(2.5rem,1.3rem + 4.4vw,4.6rem)}@media (min-width:1000px){.hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(3rem,1rem + 4vw,6rem)}.hero__grid h1{max-width:none;font-size:clamp(2.5rem,1rem + 2.75vw,3.85rem)}.hero__grid .hero__lead{max-width:33rem}}.clg{--mx:0;--my:0;aspect-ratio:10/9;width:100%;position:relative}.clg__card{left:var(--l);top:var(--t);width:var(--w);color:inherit;transform:translate3d(calc(var(--mx) * var(--d) * -9px), calc(var(--my) * var(--d) * -7px), 0) rotate(var(--r));transition:transform .5s var(--ease), filter .3s var(--ease);animation:clg-in .9s var(--ease) both;animation-delay:calc(.12s + var(--i) * 90ms);text-decoration:none;display:block;position:absolute}.clg__frame{background:var(--card);border:1px solid var(--rule-strong);border-radius:9px;display:block;overflow:hidden;box-shadow:0 1px #0e11160d,0 22px 44px -22px #0e111673}:root[data-theme=dark] .clg__frame{box-shadow:0 1px #0006,0 22px 44px -18px #000000d9}.clg__bar{background:var(--paper-2);border-bottom:1px solid var(--rule);align-items:center;gap:4px;height:18px;padding:0 8px;display:flex}.clg__bar i{background:var(--rule-strong);border-radius:50%;width:6px;height:6px}.clg__frame img{width:100%;height:auto}.clg__card--phone .clg__frame{background:#0b0d11;border-color:#2a2f38;border-radius:20px;padding:4px}.clg__card--phone .clg__frame img{border-radius:16px}.clg__card--store .clg__frame{border:0;border-radius:14px}.clg__tag{z-index:2;border:1px solid var(--rule-strong);background:var(--card);max-width:calc(100% + 40px);font-family:var(--font-mono);letter-spacing:.02em;white-space:nowrap;color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:4px 9px;font-size:.68rem;display:inline-flex;position:absolute;top:0;left:10px;transform:translateY(-55%);box-shadow:0 6px 14px -10px #0e111680}.clg__tag i{background:var(--signal);border-radius:50%;flex:none;width:6px;height:6px}.clg__tag b{color:var(--muted);font-weight:400}.clg__card--phone .clg__tag,.clg__card--store .clg__tag{left:50%;transform:translate(-50%,-55%)}.clg__card--phone .clg__tag b,.clg__card--store .clg__tag b{display:none}.clg__card--end .clg__tag{left:auto;right:0;transform:translateY(-55%)}.clg__card:hover,.clg__card:focus-visible{transform:translateY(-6px)rotate(0)scale(1.03);z-index:10!important}.clg:hover .clg__card:not(:hover){filter:saturate(.75)brightness(.97)}@keyframes clg-in{0%{opacity:0;translate:0 24px;rotate:calc(var(--r) * -1)}}@media (max-width:640px){.clg{margin-top:var(--space-4)}.clg__tag{padding:3px 7px;font-size:.6rem}.clg__tag b{display:none}}@media (prefers-reduced-motion:reduce){.clg__card{transform:rotate(var(--r));animation:none}}.hs{--hs-stroke:var(--ink);--hs-top:var(--card);--hs-side-l:var(--paper-2);--hs-side-r:color-mix(in srgb, var(--paper-2) 70%, var(--rule-strong));width:100%;height:auto;overflow:visible}.hs polygon,.hs path,.hs ellipse,.hs rect,.hs line,.hs circle{vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round}.hs-top,.hs-side-l,.hs-side-r{stroke:var(--hs-stroke);stroke-width:1.15px}.hs-top{fill:var(--hs-top)}.hs-side-l{fill:var(--hs-side-l)}.hs-side-r{fill:var(--hs-side-r)}.hs-plate .hs-top{fill:color-mix(in srgb, var(--hs-top) 92%, transparent)}.hs-box--accent .hs-top{fill:var(--signal)}.hs-box--accent .hs-side-l{fill:color-mix(in srgb, var(--signal) 82%, #000)}.hs-box--accent .hs-side-r{fill:color-mix(in srgb, var(--signal) 68%, #000)}.hs-line{fill:none;stroke:var(--hs-stroke);stroke-width:1.15px}.hs-wave{stroke:var(--signal);stroke-width:1.4px}.hs-trace{fill:none;stroke:var(--rule-strong);stroke-width:1.6px;stroke-dasharray:2 4}.hs-dot{fill:var(--rule-strong)}.hs-screen{fill:var(--card);stroke:var(--hs-stroke);stroke-width:1.15px}.hs-chrome{fill:var(--paper-2);stroke:var(--hs-stroke);stroke-width:1.15px}.hs-phone{fill:var(--ink)}.hs-bar{fill:var(--paper-2)}.hs-media{fill:color-mix(in srgb, var(--rule) 70%, var(--paper-2))}.hs-ink-fill{fill:var(--ink)}.hs-accent-fill{fill:var(--signal)}.hs-shadow{filter:drop-shadow(0 6px 8px #0e11161f)}.hs-content--quiet{opacity:.85}.hs-riser{stroke:var(--signal);stroke-width:1.2px;stroke-dasharray:1 5;opacity:.7}.hs-packet{fill:var(--signal);opacity:0}.hs-leader{stroke:var(--rule-strong);stroke-width:1px}.hs-leader-dot{fill:var(--signal)}.hs-label{font-family:var(--font-mono);letter-spacing:.02em;fill:var(--ink-2);font-size:12.5px}.hs-layer,.hs-layer-label{animation:1.3s cubic-bezier(.2,.75,.15,1) .15s both hs-explode}.hs-layer-label{animation-name:hs-label-in;animation-duration:.6s;animation-delay:calc(.9s + (4 - var(--k)) * 80ms)}@keyframes hs-explode{0%{transform:translateY(calc(var(--k) * 92px))}}@keyframes hs-label-in{0%{opacity:0;transform:translate(-8px)}}.hs-packet{animation:3.6s linear infinite hs-rise;animation-delay:calc(1.6s + var(--k) * .72s + var(--r) * 1.8s)}@keyframes hs-rise{0%{opacity:0;transform:translateY(0)}3%{opacity:1}17%{opacity:1}20%{opacity:0;transform:translateY(var(--gap))}to{opacity:0;transform:translateY(var(--gap))}}@media (prefers-reduced-motion:reduce){.hs-layer,.hs-layer-label,.hs-packet{animation:none}}.hero:has(.hero__grid){padding-top:clamp(2rem,1rem + 3vw,3.5rem);padding-bottom:clamp(2rem,1rem + 3vw,3.5rem)}.hero__art{margin-right:calc(-1 * var(--space-4));justify-content:flex-end;display:flex}.hero__art .hs{width:auto;max-width:100%;min-height:420px;max-height:calc(100svh - 140px)}@media (max-width:999px){.hero__art .hs{width:100%;min-height:0;max-height:none}}@media (max-width:640px){.hs-label{font-size:16px}.hero__grid{gap:var(--space-6)}}.hs-lift{transition:transform .35s var(--ease)}:is(.hs:has(.hs-layer-label[data-l="0"]:is(:hover,:focus-visible)) .hs-layer[data-l="0"] .hs-lift,.hs:has(.hs-layer-label[data-l="1"]:is(:hover,:focus-visible)) .hs-layer[data-l="1"] .hs-lift,.hs:has(.hs-layer-label[data-l="2"]:is(:hover,:focus-visible)) .hs-layer[data-l="2"] .hs-lift,.hs:has(.hs-layer-label[data-l="3"]:is(:hover,:focus-visible)) .hs-layer[data-l="3"] .hs-lift,.hs:has(.hs-layer-label[data-l="4"]:is(:hover,:focus-visible)) .hs-layer[data-l="4"] .hs-lift){transform:translateY(-10px)}.hs-layer-label{cursor:pointer;outline:none}.hs-hit{fill:#0000}.hs-label,.hs-leader,.hs-desc{transition:fill .2s var(--ease), stroke .2s var(--ease), opacity .25s var(--ease)}.hs-desc{font-family:var(--font-sans);fill:var(--muted);opacity:0;font-size:12.5px}.hs-layer-label:is(:hover,:focus-visible) .hs-label{fill:var(--signal-text);font-weight:500}.hs-layer-label:is(:hover,:focus-visible) .hs-leader{stroke:var(--signal)}.hs-layer-label:is(:hover,:focus-visible) .hs-desc{opacity:1}.hs-layer-label:focus-visible .hs-hit{stroke:var(--signal);stroke-width:1.5px;stroke-dasharray:3 3}@media (hover:none){.hs-desc{display:none}}.hs-notify{opacity:0;animation:hs-notify 3.6s var(--ease) infinite;animation-delay:4.48s}.hs-notify__bg{fill:var(--ink);filter:drop-shadow(0 6px 10px #0e111640)}.hs-notify__text{font-family:var(--font-sans);fill:var(--paper);font-size:9.5px;font-weight:600}@keyframes hs-notify{0%{opacity:0;transform:translateY(6px)}6%{opacity:1;transform:translateY(0)}38%{opacity:1;transform:translateY(0)}46%,to{opacity:0;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.hs-notify{opacity:1;animation:none}}.js [data-reveal]{opacity:0;transition:opacity .7s var(--ease), transform .8s var(--ease);transform:translateY(22px)}.js [data-reveal][data-shown]{opacity:1;transform:none}.js .steps li[data-reveal]:nth-child(2),.js .feature-grid article[data-reveal]:nth-child(2),.js .closing .container>[data-reveal]:nth-child(2){transition-delay:80ms}.js .steps li[data-reveal]:nth-child(3),.js .feature-grid article[data-reveal]:nth-child(3){transition-delay:.16s}.js .steps li[data-reveal]:nth-child(4),.js .feature-grid article[data-reveal]:nth-child(4){transition-delay:.24s}.js .product[data-reveal] .browser,.js .product[data-reveal] .tf{transform-origin:50% 70%;transition:transform 1.1s var(--ease) .1s;transform:scale(.94)}.js .product[data-reveal][data-shown] .browser,.js .product[data-reveal][data-shown] .tf{transform:none}@media (prefers-reduced-motion:reduce){.js [data-reveal],.js .product[data-reveal] .browser,.js .product[data-reveal] .tf{opacity:1;transition:none;transform:none}}.phones--framed img{filter:drop-shadow(0 18px 24px #0e111638);width:100%;height:auto}.hero>.container{z-index:1;position:relative}.hero__lamp{--lx:50%;--ly:50%;--lamp:230px;z-index:0;pointer-events:none;opacity:0;transition:opacity .45s var(--ease);background-image:radial-gradient(circle at var(--lx) var(--ly), #e5531a12, transparent 70%), linear-gradient(#0e111629 1px, transparent 1px), linear-gradient(90deg, #0e111629 1px, transparent 1px);-webkit-mask-image:radial-gradient(var(--lamp) circle at var(--lx) var(--ly), #000 0%, #0000008c 45%, transparent 100%);-webkit-mask-image:radial-gradient(var(--lamp) circle at var(--lx) var(--ly), #000 0%, #0000008c 45%, transparent 100%);mask-image:radial-gradient(var(--lamp) circle at var(--lx) var(--ly), #000 0%, #0000008c 45%, transparent 100%);background-position:0 0,-1px -1px,-1px -1px;background-size:100% 100%,32px 32px,32px 32px;position:absolute;inset:0}.hero__lamp[data-on=true]{opacity:1}:root[data-theme=dark] .hero__lamp{background-image:radial-gradient(circle at var(--lx) var(--ly), #ff6a3314, transparent 70%), linear-gradient(#eceeea24 1px, transparent 1px), linear-gradient(90deg, #eceeea24 1px, transparent 1px)}.wa-float{right:max(16px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));z-index:45;background:var(--ink);min-height:52px;color:var(--paper);transition:transform .2s var(--ease), box-shadow .2s var(--ease);border-radius:999px;align-items:center;gap:.55rem;padding:0 1.15rem 0 .95rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex;position:fixed;box-shadow:0 10px 28px -10px #0e11168c}.wa-float svg{color:#25d366;width:24px;height:24px}.wa-float:hover{transform:translateY(-2px);box-shadow:0 14px 32px -10px #0e111699}@media (max-width:640px){.wa-float{justify-content:center;width:56px;height:56px;padding:0}.wa-float span{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.wa-float svg{width:28px;height:28px}}.btn svg:not(.arrow){width:18px;height:18px}.situations{gap:var(--space-4);list-style:none;display:grid}@media (min-width:640px){.situations{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1100px){.situations{grid-template-columns:repeat(4,minmax(0,1fr))}}.situation{gap:var(--space-3);height:100%;padding:var(--space-5);border:1px solid var(--rule);border-radius:var(--radius);background:var(--card);transition:border-color .2s var(--ease), transform .2s var(--ease), box-shadow .2s var(--ease);grid-template-rows:auto 1fr auto;text-decoration:none;display:grid}.situation:hover{border-color:var(--ink);box-shadow:var(--shadow);transform:translateY(-2px)}.situation__problem{letter-spacing:-.015em;font-size:1.15rem;font-weight:700;line-height:1.3}.situation__answer{color:var(--ink-2);font-size:var(--fs-small)}.situation__more{font-family:var(--font-mono);font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--signal-text);align-items:center;gap:.4em;display:inline-flex}.situation:hover .arrow{transform:translate(3px)}.faq{border-top:1px solid var(--rule)}.faq__item{border-bottom:1px solid var(--rule)}.faq__item summary{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-5) 0;cursor:pointer;font-size:1.08rem;font-weight:650;list-style:none;display:flex}.faq__item summary::-webkit-details-marker{display:none}.faq__item summary i{flex:none;width:14px;height:14px;position:relative}.faq__item summary i:before,.faq__item summary i:after{content:"";background:var(--ink);width:14px;height:2px;transition:transform .25s var(--ease);position:absolute;top:6px;left:0}.faq__item summary i:after{transform:rotate(90deg)}.faq__item[open] summary i:after{transform:rotate(0)}.faq__item p{padding-bottom:var(--space-5);max-width:46rem;color:var(--ink-2)}.faq-wrap{gap:var(--space-6);display:grid}@media (min-width:960px){.faq-wrap{gap:var(--space-8);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.faq-wrap .head{margin-bottom:0}}.crumbs{gap:var(--space-2);font-family:var(--font-mono);font-size:var(--fs-mono);color:var(--muted);flex-wrap:wrap;display:flex}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--ink);text-decoration:underline}.crumbs [aria-current]{color:var(--ink)}.svc{gap:var(--space-7);display:grid}@media (min-width:960px){.svc{gap:var(--space-8);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}}.svc__block h2{font-size:var(--fs-h3);margin-bottom:var(--space-4)}.ticks--cols{font-size:1rem}@media (min-width:640px){.ticks--cols{gap:var(--space-3) var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr))}}.svc__facts{gap:var(--space-5);margin-top:var(--space-7);padding:var(--space-6);border:1px solid var(--rule);border-radius:var(--radius);background:var(--card);display:grid}.svc__facts h3{margin-bottom:var(--space-2);font-size:1.05rem}.svc__facts p{color:var(--ink-2)}.svc__examples{gap:var(--space-3) var(--space-5);flex-wrap:wrap;display:flex}@media (min-width:900px){.svc__facts{gap:var(--space-6);grid-template-columns:repeat(3,minmax(0,1fr))}}.svc__others{align-content:start;gap:var(--space-4);display:grid}.svc__others ul{border-top:1px solid var(--rule);list-style:none}.svc__others li a{padding:var(--space-4) 0;border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;font-weight:600;text-decoration:none;display:flex}.svc__others li a:hover{color:var(--signal-text)}.page-head .hero__actions{margin-top:var(--space-6)}.js .situations li[data-reveal]:nth-child(4n+2){transition-delay:60ms}.js .situations li[data-reveal]:nth-child(4n+3){transition-delay:.12s}.js .situations li[data-reveal]:nth-child(4n+4){transition-delay:.18s}.blog-empty{max-width:40rem;font-size:var(--fs-lead);color:var(--ink-2)}.posts{gap:var(--space-7) var(--space-6);margin:0;padding:0;list-style:none;display:grid}@media (min-width:760px){.posts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1100px){.posts{grid-template-columns:repeat(3,minmax(0,1fr))}}.post-card{gap:var(--space-4);align-content:start;display:grid;position:relative}.post-card__media{border:1px solid var(--rule);border-radius:var(--radius);aspect-ratio:16/9;background:var(--paper-2);overflow:hidden}.post-card__media img{object-fit:cover;width:100%;height:100%;transition:transform .5s var(--ease)}.post-card__body{gap:var(--space-3);display:grid}.post-card time,.post__meta{font-family:var(--font-mono);font-size:var(--fs-mono);color:var(--muted)}.post-card h2{font-size:var(--fs-h3);line-height:1.25}.post-card h2 a{text-decoration:none}.post-card h2 a:after{content:"";position:absolute;inset:0}.post-card p{color:var(--ink-2);-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.post-card__more{color:var(--signal-text);align-items:center;gap:.5em;font-weight:600;display:inline-flex}.post-card:hover h2 a{text-decoration:underline}.post-card:hover .post-card__media img{transform:scale(1.025)}.post-card h2 a:focus-visible{outline:none}.post-card:has(h2 a:focus-visible){outline:2px solid var(--signal);outline-offset:6px;border-radius:var(--radius)}.post__head h1{max-width:24ch}.post__meta{gap:var(--space-2);margin-top:var(--space-5);display:flex}.page-head .post__meta{font-size:var(--fs-mono);color:var(--muted)}.post__body{gap:var(--space-6);max-width:calc(46rem + 2 * var(--gutter));padding-top:var(--space-7);padding-bottom:var(--space-8);display:grid}.post__hero{border:1px solid var(--rule);border-radius:var(--radius-lg);margin:0;overflow:hidden}.post__hero img{width:100%;height:auto}.post__prose{max-width:none}.post__prose>*{margin:0}.post__prose h2{margin-top:var(--space-6);letter-spacing:-.02em;font-size:clamp(1.45rem,1.2rem + 1vw,1.9rem)}.post__prose h3{margin-top:var(--space-4);font-size:var(--fs-h3);color:var(--ink)}.post__prose h4{color:var(--ink);font-size:1.05rem}.post__prose ul,.post__prose ol{gap:var(--space-2);padding-left:1.3em;display:grid}.post__prose li::marker{color:var(--signal)}.post__prose a{color:var(--ink);-webkit-text-decoration-color:var(--signal);text-decoration-color:var(--signal);text-decoration-thickness:2px}.post__prose a:hover{color:var(--signal-text)}.post__prose strong,.post__prose b{color:var(--ink)}.post__prose blockquote{padding-left:var(--space-5);border-left:3px solid var(--signal);color:var(--ink)}.post__prose figure{gap:var(--space-2);display:grid}.post__prose img{border:1px solid var(--rule);border-radius:var(--radius);width:100%;height:auto}.post__prose figcaption{font-size:var(--fs-small);color:var(--muted)}.post__prose table{border-collapse:collapse;width:100%;font-size:var(--fs-small);display:block;overflow-x:auto}.post__prose th,.post__prose td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--rule);text-align:left;vertical-align:top}.post__prose th{color:var(--ink);font-weight:600}.post__prose hr{border:0;border-top:1px solid var(--rule)}.post__prose code{font-family:var(--font-mono);background:var(--paper-2);border-radius:4px;padding:.1em .35em;font-size:.9em}.post-callout{gap:var(--space-3);padding:var(--space-6);background:var(--card);border:1px solid var(--rule);border-left:3px solid var(--signal);border-radius:var(--radius);display:grid}.post-callout .label{color:var(--signal-text)}.post-callout h2{font-size:var(--fs-h3)}.post-callout p:not(.label){color:var(--ink-2)}.post-callout__actions{gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;display:flex}@media (prefers-reduced-motion:reduce){.post-card__media img{transition:none}}.showreel{--paper:#07080a;--paper-2:#12151b;--card:#0d1015;--ink:#eeefeb;--ink-2:#b6bbc3;--muted:#8a909a;--rule:#1f242c;--rule-strong:#2d333d;--signal-text:#ff8a5c;padding-block:var(--space-9);background:var(--paper);color:var(--ink);border-top:1px solid var(--rule);position:relative;overflow:hidden}.showreel__grid{gap:var(--space-7);align-items:center;display:grid}@media (min-width:1000px){.showreel__grid{gap:var(--space-8);grid-template-columns:minmax(0,.78fr) minmax(0,1.5fr)}}.showreel__text{gap:var(--space-5);align-content:start;max-width:34rem;display:grid}.showreel__text .label{color:var(--signal-text)}.showreel__text h2,.showreel__text h3{font-size:var(--fs-h2);letter-spacing:-.03em;font-weight:800;line-height:1.05}.showreel__text>p:not(.label){font-size:var(--fs-lead);color:var(--ink-2);line-height:1.55}.showreel__actions{gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.showreel .btn:not(.btn--ghost):hover{background:var(--signal);border-color:var(--signal);color:#fff}.showreel__frame{border-color:var(--rule-strong);background:#000;position:relative;box-shadow:0 50px 120px -50px #e8964661,inset 0 1px #ffffff0a}.showreel__frame .browser__bar{background:#101318;border-bottom-color:#1b1f26}.showreel__frame .browser__url{color:var(--muted);background:#191d24}.showreel__frame .browser__dots i{background:#2d333d}.showreel__screen{line-height:0;position:relative}.showreel__screen video{aspect-ratio:1600/896;background:#000;width:100%;height:auto;display:block}.showreel__toggle{right:var(--space-3);bottom:var(--space-3);align-items:center;gap:var(--space-2);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#eeefeb;min-height:36px;font-family:var(--font-mono);font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;background:#0000008c;border:1px solid #ffffff2e;border-radius:999px;padding:0 .85rem;line-height:1;display:inline-flex;position:absolute}.showreel__toggle:hover{border-color:#ffffff80}.showreel__toggle svg{width:14px;height:14px}@media (max-width:999px){.showreel__frame{order:-1}}@media (max-width:600px){.showreel__toggle{right:var(--space-2);bottom:var(--space-2);justify-content:center;width:32px;min-height:32px;padding:0}.showreel__toggle span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.showreel+.closing{border-top:1px solid #1f242c}.cs{gap:var(--space-4);display:grid;container:cs/inline-size}.cs__stage{aspect-ratio:16/10;border:1px solid var(--rule);border-radius:var(--radius-lg);isolation:isolate;background:radial-gradient(120% 90% at 70% 10%,#f7f3ec 0%,#0000 60%),linear-gradient(160deg,#ece8e1 0%,#e2ddd5 100%);position:relative;overflow:hidden}:root[data-theme=dark] .cs__stage{background:radial-gradient(120% 90% at 70% 10%,#232019 0%,#0000 60%),linear-gradient(160deg,#17181b 0%,#101114 100%)}.cs__device{z-index:10;color:var(--muted);position:absolute;top:4.5%;left:3.5%}.cs-tab{left:var(--x);top:var(--y);width:var(--w);opacity:var(--o,1);transition:left .9s var(--ease), top .9s var(--ease), width .9s var(--ease), opacity .6s var(--ease), filter .6s var(--ease);background:#15171b;border-radius:4.2%/6.4%;padding:1.1%;position:absolute;transform:translateZ(0);box-shadow:inset 0 1px #ffffff14,0 30px 60px -28px #14100a8c}.cs-tab__screen{aspect-ratio:16/10;background:#f4f4f6;border-radius:2.4%/3.8%;position:relative;overflow:hidden}.cs-scr{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.cs-kiosk{--x:21%;--y:12.5%;--w:58%;z-index:2}.cs-kds{--x:104%;--y:15%;--w:56%;--o:0;z-index:3}.cs-admin{--x:17%;--y:13%;--w:66%;--o:0;z-index:5}[data-step="1"] .cs-kiosk{--x:7%;--y:20%;--w:52%}[data-step="2"] .cs-kiosk,[data-step="3"] .cs-kiosk{--x:-6%;--y:35%;--w:40%;--o:.35;filter:blur(1px)}[data-step="2"] .cs-kds,[data-step="3"] .cs-kds{--x:36%;--y:15%;--w:56%;--o:1}[data-step="3"] .cs-kds{--o:.45;filter:blur(1.5px)}[data-step="4"] .cs-kiosk,[data-step="4"] .cs-kds{--o:0}[data-step="4"] .cs-admin{--o:1}.cs-kiosk .cs-scr{opacity:0}[data-step="0"] .cs-scr--menu{opacity:1}[data-step="0"] .cs-scr--product{animation:cs-in .45s var(--ease) 1.9s both}[data-step="1"] .cs-scr--pay,[data-step="2"] .cs-scr--done,[data-step="3"] .cs-scr--done{opacity:1}[data-step="1"] .cs-scr--done{animation:cs-in .45s var(--ease) 3.1s both}@keyframes cs-in{0%{opacity:0}to{opacity:1}}.cs-tap{aspect-ratio:1;opacity:0;pointer-events:none;background:#ffffff8c;border-radius:50%;width:7%;margin:-3.5% 0 0 -3.5%;position:absolute;top:81%;left:46.3%;box-shadow:0 0 0 2px #14141440}[data-step="0"] .cs-tap{animation:cs-tap 3.6s var(--ease) .6s both}@keyframes cs-tap{0%{opacity:0;transform:scale(1.6)}10%{opacity:1;transform:scale(1)}16%{transform:scale(.8)}24%{opacity:0;top:81%;left:46.3%}60%{opacity:0;top:81%;left:65.5%;transform:scale(1.6)}70%{opacity:1;top:81%;left:65.5%;transform:scale(1)}76%{transform:scale(.8)}86%,to{opacity:0;top:81%;left:65.5%}}.cs-pos{aspect-ratio:9/15.5;opacity:0;z-index:4;width:17%;transition:left .9s var(--ease), opacity .6s var(--ease);background:linear-gradient(170deg,#26292f,#15171b);border-radius:14%/8%;grid-template-rows:1fr auto;gap:6%;padding:3.2% 2.6%;display:grid;position:absolute;top:37%;left:104%;box-shadow:inset 0 1px #ffffff1a,0 30px 50px -24px #14100a99;container-type:inline-size}[data-step="1"] .cs-pos{opacity:1;left:67%}.cs-pos__screen{color:#f2f2ef;font-family:var(--font-sans);text-align:center;background:#0b0c0e;border-radius:7cqw;align-content:center;justify-items:center;gap:4cqw;padding:8cqw 6cqw;display:grid;position:relative;overflow:hidden}.cs-pos__label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:#8b9099;font-size:6cqw}.cs-pos__amount{letter-spacing:-.02em;font-size:15cqw;font-weight:700}.cs-pos__nfc{aspect-ratio:1;width:34cqw;margin-top:4cqw;position:relative}.cs-pos__nfc i{opacity:0;border:1.2cqw solid #6fd39a;border-radius:50%;position:absolute;inset:0}[data-step="1"] .cs-pos__nfc i{animation:1.4s ease-out infinite cs-wave}[data-step="1"] .cs-pos__nfc i:nth-child(2){animation-delay:.45s}[data-step="1"] .cs-pos__nfc i:nth-child(3){animation-delay:.9s}@keyframes cs-wave{0%{opacity:.9;transform:scale(.3)}to{opacity:0;transform:scale(1.15)}}.cs-pos__hint{color:#b9bdc4;font-size:6.4cqw}.cs-pos__ok{color:#fff;opacity:0;background:#12a150;place-content:center;justify-items:center;gap:4cqw;font-size:9cqw;font-weight:700;display:grid;position:absolute;inset:0}.cs-pos__ok svg{fill:none;stroke:#fff;stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24px;width:36cqw}[data-step="1"] .cs-pos__ok{animation:.35s 2.3s both cs-in}[data-step="1"] .cs-pos__ok svg{animation:cs-draw .5s var(--ease) 2.5s both}@keyframes cs-draw{to{stroke-dashoffset:0}}.cs-pos__keys{grid-template-columns:repeat(3,1fr);gap:5cqw;padding:0 4cqw;display:grid}.cs-pos__keys i{background:#343841;border-radius:3cqw;height:6cqw}.cs-card{aspect-ratio:1.586;background:radial-gradient(60% 80% at 80% 0%, #ffffff59, transparent 60%), linear-gradient(135deg, var(--signal) 0%, #8a2d0b 100%);opacity:0;z-index:6;border-radius:7%/11%;width:13%;position:absolute;top:66%;left:86%;box-shadow:0 18px 30px -14px #00000080}[data-step="1"] .cs-card{animation:cs-card 2.6s var(--ease) .6s both}@keyframes cs-card{0%{opacity:0;transform:translate(40%,60%)rotate(18deg)}30%{opacity:1}55%,70%{opacity:1;transform:translate(-60%,-95%)rotate(-8deg)}to{opacity:0;transform:translate(10%,40%)rotate(10deg)}}.cs-kds__flash{width:23.3%;height:38.4%;box-shadow:0 0 0 3px var(--signal);opacity:0;border-radius:3%/5%;position:absolute;top:33%;left:75.2%}[data-step="2"] .cs-kds__flash{animation:1.6s .9s 2 both cs-flash}@keyframes cs-flash{0%,to{opacity:0}30%,60%{opacity:1}}.cs-toast{z-index:7;color:#f2f2ef;opacity:0;background:#15171b;border-radius:999px;align-items:center;gap:.5em;padding:.55em 1em;font-size:clamp(.62rem,.5rem + .6vw,.9rem);font-weight:600;display:inline-flex;position:absolute;top:5%;right:4%;box-shadow:0 14px 30px -14px #0009}.cs-toast svg{fill:none;width:1.2em;stroke:var(--signal);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}[data-step="2"] .cs-toast{animation:cs-toast 3.4s var(--ease) .7s both}[data-step="2"] .cs-toast svg{transform-origin:50% 10%;animation:.9s .9s 2 cs-ring}@keyframes cs-toast{0%{opacity:0;transform:translateY(-40%)scale(.9)}14%,86%{opacity:1;transform:none}to{opacity:0}}@keyframes cs-ring{0%,to{transform:rotate(0)}20%{transform:rotate(16deg)}40%{transform:rotate(-14deg)}60%{transform:rotate(8deg)}80%{transform:rotate(-4deg)}}.cs-ready{z-index:8;border-radius:var(--radius-lg);color:#15171b;text-align:center;opacity:0;background:#fffdf9;justify-items:center;gap:.35em;width:min(46%,22rem);padding:5% 4% 4.5%;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.85);box-shadow:0 40px 80px -30px #281a0a8c;container-type:inline-size}[data-step="3"] .cs-ready{animation:.7s cubic-bezier(.34,1.56,.64,1) .25s both cs-pop}@keyframes cs-pop{0%{opacity:0;transform:translate(-50%,-42%)scale(.85)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.cs-cup{width:34cqw;overflow:visible}.cs-cup__body{fill:#15171b}.cs-cup__handle{fill:none;stroke:#15171b;stroke-width:6px}.cs-cup__plate{fill:#e7e1d7}.cs-cup__steam{fill:none;stroke:#c9a27a;stroke-width:3.5px;stroke-linecap:round;opacity:0}[data-step="3"] .cs-cup__steam{animation:2.2s ease-in-out .6s infinite cs-steam}[data-step="3"] .cs-cup__steam:nth-child(2){animation-delay:.95s}[data-step="3"] .cs-cup__steam:nth-child(3){animation-delay:1.3s}@keyframes cs-steam{0%{opacity:0;transform:translateY(8px)}35%{opacity:.9}to{opacity:0;transform:translateY(-14px)}}.cs-ready__no{letter-spacing:-.04em;color:var(--signal);font-size:22cqw;font-weight:800;line-height:1}.cs-ready__title{font-size:9cqw;font-weight:700}.cs-ready__body{color:#5b606a;font-size:5.6cqw}.cs__bar{align-items:start;gap:var(--space-4);display:flex}.cs__steps{gap:var(--space-2);flex:1;grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.cs__steps button{gap:var(--space-2);width:100%;color:var(--muted);font:inherit;font-size:var(--fs-small);text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:grid}.cs__steps button[aria-current]{color:var(--ink);font-weight:600}.cs__steps button:focus-visible{outline:2px solid var(--signal);outline-offset:4px;border-radius:4px}.cs__progress{background:var(--rule);border-radius:3px;height:3px;display:block;overflow:hidden}.cs__progress span{background:var(--signal);width:0;height:100%;display:block}[aria-current] .cs__progress span{width:100%;animation:linear both cs-progress}.cs[data-playing=false] [aria-current] .cs__progress span{animation:none}@keyframes cs-progress{0%{width:0}to{width:100%}}.cs__toggle{align-items:center;gap:var(--space-2);border:1px solid var(--rule);min-height:36px;color:var(--ink);font-family:var(--font-mono);font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;background:0 0;border-radius:999px;flex:none;padding:0 .85rem;display:inline-flex}.cs__toggle:hover{border-color:var(--ink)}.cs__toggle svg{width:14px;height:14px}.cs__body{min-height:3em;color:var(--ink-2)}@container cs (max-width:760px){.cs__steps .cs__name{display:none}.cs__toggle span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.cs__toggle{justify-content:center;width:36px;padding:0}}@media (prefers-reduced-motion:reduce){.cs-tab,.cs-pos{transition:none}}.cs__bodyname{color:var(--ink);display:none}@container cs (max-width:760px){.cs__bodyname{display:inline}}@media (max-width:700px){.cs__stage{aspect-ratio:4/3}.cs__counter{top:86%}.cs-kiosk{--x:11%;--y:6%;--w:78%}[data-step="1"] .cs-kiosk{--x:2%;--y:25%;--w:60%}[data-step="2"] .cs-kiosk,[data-step="3"] .cs-kiosk{--o:0}.cs-kds{--y:4%;--w:80%}[data-step="2"] .cs-kds,[data-step="3"] .cs-kds{--x:10%;--y:4%;--w:80%}.cs-admin{--x:5%;--y:12%;--w:90%}.cs-pos{width:26%;top:26%}[data-step="1"] .cs-pos{left:70%}.cs-card{width:20%;top:66%}.cs-ready{width:62%}.cs__device{display:none}}.cs__counter{z-index:1;background:linear-gradient(#d9d2c6 0%,#cfc7ba 100%);position:absolute;inset:84% 0 0;box-shadow:inset 0 -1px #ffffffb3,0 1px #0000000f}:root[data-theme=dark] .cs__counter{background:linear-gradient(#24221e 0%,#1c1a17 100%);box-shadow:inset 0 1px #ffffff0f}.cs-tab:before{content:"";aspect-ratio:1;background:#2c3038;border-radius:50%;width:.7%;margin-left:-.35%;position:absolute;top:.45%;left:50%}.cs-stand{z-index:-1;justify-items:center;width:36%;display:grid;position:absolute;top:100%;left:50%;transform:translate(-50%)}.cs-stand i{aspect-ratio:1/1.9;background:linear-gradient(90deg,#8f949c 0%,#d8dbe0 45%,#a9adb4 70%,#7d828a 100%);width:16%;margin-top:-2%}.cs-stand b{aspect-ratio:13;background:linear-gradient(#e2e4e8 0%,#a7abb2 100%);border-radius:999px 999px 40% 40%/100% 100% 60% 60%;width:100%;box-shadow:0 10px 18px -8px #1e181080}.cs-admin .cs-stand{display:none}.cs__counter{transition:opacity .6s var(--ease)}[data-step="4"] .cs__counter{opacity:0}@media (max-width:700px){.cs__counter{top:86%}}
