:root{--bg:#07070d;--surface:#12121b;--surface-2:#1a1a26;--line:#ffffff17;--text:#f4f4f8;--muted:#a3a3b8;--blue:#3b82f6;--purple:#8b5cf6;--accent:linear-gradient(135deg, var(--blue), var(--purple));--radius:24px;--wrap:1080px;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:72px}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font:400 1.0625rem/1.6 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:inherit}h1,h2,h3{letter-spacing:-.03em;margin:0;line-height:1.05}h1{font-size:clamp(2.75rem,9vw,5.5rem);font-weight:800}h2{font-size:clamp(2rem,5.5vw,3.25rem);font-weight:750}h3{letter-spacing:-.01em;font-size:1.25rem;line-height:1.25}p{margin:0}:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:8px}.skip{background:var(--text);color:var(--bg);z-index:20;border-radius:999px;padding:8px 14px;position:absolute;top:8px;left:-999px}.skip:focus{left:8px}.wrap{width:min(100% - 40px, var(--wrap));margin-inline:auto}section{padding:clamp(64px,11vw,120px) 0}.eyebrow{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px;font-size:.8rem;font-weight:600}.lead{color:var(--muted);max-width:34ch;margin-top:22px;font-size:clamp(1.1rem,2.6vw,1.35rem)}.grad{background:var(--accent);color:#0000;-webkit-background-clip:text;background-clip:text}.btn{border:1px solid var(--line);background:var(--surface);border-radius:999px;justify-content:center;align-items:center;min-height:52px;padding:0 28px;font-weight:650;text-decoration:none;transition:transform .2s,background .2s;display:inline-flex}.btn:hover{background:var(--surface-2);transform:translateY(-2px)}.btn-primary{background:var(--accent);color:#fff;border-color:#0000}.btn-primary:hover{background:var(--accent);filter:brightness(1.1)}.btn[aria-disabled=true]{cursor:default}.btn-row{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.note{color:var(--muted);margin-top:14px;font-size:.9rem}.nav{z-index:10;backdrop-filter:blur(16px);border-bottom:1px solid var(--line);background:#07070d99;position:sticky;top:0}.nav .wrap{justify-content:space-between;align-items:center;min-height:60px;display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:10px;font-weight:750;text-decoration:none;display:flex}.brand img{border-radius:8px;width:28px;height:28px}.nav ul{gap:24px;margin:0;padding:0;list-style:none;display:none}.nav ul a{color:var(--muted);font-size:.95rem;text-decoration:none}.nav ul a:hover{color:var(--text)}@media (width>=720px){.nav ul{display:flex}}.hero{padding-top:clamp(40px,8vw,96px)}.hero .wrap{align-items:center;gap:56px;display:grid}@media (width>=900px){.hero .wrap{grid-template-columns:1.15fr .85fr}}.phone{aspect-ratio:9/18.5;border:1px solid var(--line);background:#0d0d14;border-radius:44px;width:min(300px,80vw);margin-inline:auto;padding:10px;box-shadow:0 40px 120px -20px #6366f173}.phone-screen{background:var(--bg);border-radius:34px;height:100%;overflow:hidden}.phone-screen img{object-fit:cover;object-position:top;width:100%;height:100%;display:block}.gallery{scroll-snap-type:x mandatory;padding:40px max(20px, calc((100vw - var(--wrap)) / 2)) 24px;scroll-padding-inline:max(20px, calc((100vw - var(--wrap)) / 2));gap:28px;display:flex;overflow-x:auto}.gallery figure{scroll-snap-align:start;flex:none;width:240px;margin:0}.gallery .phone{width:100%;box-shadow:0 30px 80px -30px #6366f166}.gallery figcaption{gap:4px;margin-top:18px;display:grid}.gallery figcaption span{color:var(--muted);font-size:.95rem;line-height:1.4}#screens .note{margin-top:8px}.cards{gap:16px;margin-top:48px;display:grid}@media (width>=800px){.cards{grid-template-columns:repeat(3,1fr)}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:28px}.card p{color:var(--muted);margin-top:10px}.num{background:var(--accent);border-radius:50%;place-items:center;width:44px;height:44px;margin-bottom:20px;font-weight:750;display:inline-grid}.tag{border:1px solid var(--line);color:var(--muted);border-radius:999px;margin-top:18px;padding:4px 12px;font-size:.8rem;display:inline-block}.free-banner{margin-top:20px;font-size:1.15rem}.faq{gap:10px;max-width:760px;margin-top:40px;display:grid}.faq details{background:var(--surface);border:1px solid var(--line);border-radius:20px}.faq summary{cursor:pointer;justify-content:space-between;gap:16px;min-height:56px;padding:20px 24px;font-weight:650;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--muted);font-size:1.4rem;line-height:1}.faq details[open] summary:after{content:"–"}.faq details p{color:var(--muted);padding:0 24px 22px}footer{border-top:1px solid var(--line);color:var(--muted);padding:40px 0 56px;font-size:.95rem}footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:12px 28px;display:flex}footer nav{flex-wrap:wrap;gap:8px 24px;display:flex}footer a{text-decoration:none}footer a:hover{color:var(--text)}.page{padding:clamp(48px,9vw,96px) 0}.page .wrap{max-width:760px}.page h1{margin-bottom:12px;font-size:clamp(2.25rem,7vw,3.5rem)}.prose h2{letter-spacing:-.02em;margin:40px 0 10px;font-size:1.4rem}.prose p,.prose li{color:var(--muted)}.prose ul{padding-left:1.2em}.prose li{margin-bottom:8px}.todo{color:#fcd34d;background:#f59e0b14;border:1px dashed #f59e0b;border-radius:16px;margin:24px 0;padding:18px 20px}.bg{z-index:-1;background:var(--bg);position:fixed;inset:0;overflow:hidden}.bg i{filter:blur(90px);opacity:.5;will-change:transform;border-radius:50%;width:70vmax;height:70vmax;position:absolute}.bg i:first-child{background:#2563eb;animation:38s ease-in-out infinite alternate drift1;top:-25vmax;left:-20vmax}.bg i:nth-child(2){background:#7c3aed;animation:46s ease-in-out infinite alternate drift2;bottom:-30vmax;right:-25vmax}.bg i:nth-child(3){opacity:.3;background:#4338ca;width:45vmax;height:45vmax;animation:54s ease-in-out infinite alternate drift3;top:35%;left:40%}.bg:after{content:"";background:radial-gradient(at 50% 0,#0000 0%,#07070d8c 70%);position:absolute;inset:0}@keyframes drift1{to{transform:translate(30vmax,18vmax)scale(1.15)}}@keyframes drift2{to{transform:translate(-28vmax,-20vmax)scale(.9)}}@keyframes drift3{to{transform:translate(-20vmax,22vmax)scale(1.2)}}@media (prefers-reduced-motion:reduce){.bg i{animation:none}html{scroll-behavior:auto}.btn{transition:none}}
