:root{--bg:#07070a;--bg2:#0f0f14;--ink:#f5f5f7;--mut:#8e8e99;--line:rgba(255,255,255,.09);--acc:#886070;--e:cubic-bezier(.4,0,.2,1);--spring:cubic-bezier(.2,.9,.25,1.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{overflow-x:clip}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.55 -apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Inter,Roboto,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
.nav{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:14px 22px;background:rgba(7,7,10,.7);backdrop-filter:saturate(1.6) blur(16px);border-bottom:1px solid var(--line)}
.logo{font-weight:700;letter-spacing:.12em;font-size:14px}.logo i{font-style:normal;font-weight:400;letter-spacing:0;color:var(--mut)}
.pill{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:20px;padding:15px 26px;font:600 16px/1 inherit;font-family:inherit;background:var(--acc);color:#fff;text-decoration:none;cursor:pointer;transition:transform .25s var(--e),background .25s}
.pill:active{transform:scale(.97)}.pill[disabled]{cursor:not-allowed;background:#2a2a31;color:#c9c9d1;box-shadow:inset 0 0 0 1px rgba(240,216,216,.45)}
.pill.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}.pill.small{padding:9px 16px;font-size:14px}
.eyebrow{font:600 12px/1 ui-monospace,Menlo,monospace;letter-spacing:.18em;color:var(--acc);margin:0 0 18px;display:flex;align-items:center;gap:10px}
.rec{width:9px;height:9px;border-radius:50%;background:var(--acc);box-shadow:0 0 12px var(--acc);animation:blink 1.6s steps(1) infinite}@keyframes blink{50%{opacity:.25}}
h1{font-size:clamp(64px,10.5vw,148px);line-height:.92;letter-spacing:-.055em;margin:0 0 24px;font-weight:750}
h1 em{font-style:normal;background:linear-gradient(90deg,var(--acc),#F0D8D8);-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{font-size:clamp(17px,1.5vw,20px);color:var(--mut);max-width:30em;margin:0 0 28px}.lead,.copy p,.copy li{color:var(--mut)}
.ctas{display:flex;gap:12px;flex-wrap:wrap}.fine{font-size:13.5px;color:var(--mut);margin-top:14px}.center{text-align:center}
section{position:relative;padding:120px 22px}
/* hero */
.hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:40px;max-width:1240px;margin:0 auto;min-height:calc(100svh - 60px);padding-top:60px}
.glow{position:absolute;inset:-10% -20% auto auto;width:70%;height:90%;background:radial-gradient(closest-side,rgba(136,96,112,.28),transparent 70%);filter:blur(30px);pointer-events:none;z-index:-1}
.hero-stage{perspective:1600px;height:min(640px,80vh);display:grid;place-items:center}
.rig{position:relative;width:min(290px,58vw);aspect-ratio:9/19.5;transform-style:preserve-3d;transform:rotateX(var(--rx,8deg)) rotateY(var(--ry,-22deg)) translateZ(var(--tz,0px));will-change:transform}
.phone{width:min(290px,58vw)}
.rig .phone{position:absolute;inset:0;width:100%}
.rig .back{opacity:.75;filter:brightness(.6) blur(.6px)}
.rig .l{transform:translate3d(-62%,4%,-260px) rotateY(18deg)}.rig .r{transform:translate3d(62%,-4%,-260px) rotateY(-18deg)}
.rig .front{transform:translateZ(60px)}
.bezel{position:relative;aspect-ratio:9/19.5;border-radius:42px;padding:10px;background:linear-gradient(145deg,#3a3a42,#121216 40%,#26262c);box-shadow:0 0 0 1px rgba(255,255,255,.08),0 50px 90px -30px rgba(0,0,0,.9),0 30px 120px -40px rgba(136,96,112,.35)}
.bezel video{display:block;width:100%;height:100%;object-fit:cover;border-radius:33px;background:#000}
.notch{position:absolute;top:18px;left:50%;width:30%;height:22px;border-radius:12px;background:#000;transform:translateX(-50%)}
/* statement */
.statement{padding:140px 22px;text-align:center}
.big-type{font-size:clamp(44px,8vw,112px);line-height:.98;letter-spacing:-.05em;font-weight:720;margin:0 auto;max-width:12em;background:linear-gradient(180deg,#fff 20%,#5c5c66);-webkit-background-clip:text;background-clip:text;color:transparent}
.big-type span{background:linear-gradient(90deg,var(--acc),#F0D8D8);-webkit-background-clip:text;background-clip:text}
.sec{font-size:clamp(34px,5vw,60px);letter-spacing:-.04em;line-height:1.02;text-align:center;margin:0 0 70px}
/* templates */
.templates{max-width:1120px;margin:0 auto}
.tpl{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;min-height:88vh;padding:30px 0}
.tpl.alt .stage3d{order:2}
.stage3d{perspective:1500px;display:grid;place-items:center}
.stage3d .phone{transform:rotateY(calc(var(--d,1)*var(--k,1)*24deg)) rotateX(calc(var(--k,1)*10deg)) translateZ(calc(var(--k,1)*-120px)) scale(calc(1 - var(--k,1)*.08));transform-style:preserve-3d;will-change:transform}
.tpl.alt .stage3d .phone{--d:-1}
.copy .num{font:600 13px ui-monospace,Menlo,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}.copy .num b{color:var(--acc);margin-right:8px}
.copy h3{font-size:clamp(28px,3.4vw,44px);line-height:1.08;letter-spacing:-.035em;margin:12px 0 18px;font-weight:700}
.copy ul{padding:0;margin:0;list-style:none}.copy li{padding:10px 0;border-top:1px solid var(--line)}.copy li:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--acc);margin-right:12px;vertical-align:2px}
.reveal-up{opacity:0;transform:translateY(40px);transition:opacity .6s var(--e),transform .7s var(--spring)}.reveal-up.on{opacity:1;transform:none}
/* how */
.how{max-width:1000px;margin:0 auto}
.steps{display:grid;grid-template-columns:1fr 1fr;gap:20px;perspective:1200px}
.step{background:var(--bg2);border:1px solid var(--line);border-radius:24px;padding:32px;transform:rotateX(var(--sx,0deg));transform-origin:50% 100%}
.step span{font:600 13px ui-monospace,monospace;color:var(--acc)}.step h3{font-size:26px;margin:10px 0 8px;letter-spacing:-.02em}.step p{color:var(--mut);margin:0 0 18px}
code{display:block;font:13px/1.5 ui-monospace,Menlo,monospace;background:#000;border:1px solid var(--line);border-radius:14px;padding:14px;color:#ffb39f;overflow-x:auto;white-space:pre}
/* price */
.price{display:grid;place-items:center}
.card{width:min(520px,100%);text-align:center;padding:48px 32px;border-radius:28px;background:radial-gradient(120% 80% at 50% 0%,rgba(136,96,112,.18),transparent 60%),var(--bg2);border:1px solid rgba(136,96,112,.3)}
.card .eyebrow{justify-content:center}.card .big{font-size:clamp(72px,12vw,120px);font-weight:750;letter-spacing:-.05em;margin:0;line-height:1}.card p{color:var(--mut)}
/* faq */
.faq{max-width:760px;margin:0 auto}
details{border-top:1px solid var(--line);padding:20px 0}details:last-child{border-bottom:1px solid var(--line)}
summary{cursor:pointer;font-size:19px;font-weight:600;list-style:none;display:flex;justify-content:space-between}summary::-webkit-details-marker{display:none}
summary:after{content:"+";color:var(--acc);transition:transform .25s var(--e)}details[open] summary:after{transform:rotate(45deg)}
details p{color:var(--mut);margin:12px 0 0}details a{color:var(--acc)}
footer{display:flex;justify-content:space-between;padding:30px 22px;border-top:1px solid var(--line);color:var(--mut);font-size:14px;max-width:1120px;margin:0 auto}
@media (max-width:860px){
 .hero{grid-template-columns:1fr;text-align:left;gap:20px;min-height:0}
 .hero-stage{height:520px}.rig{width:210px}.phone{width:min(230px,62vw)}
 .tpl,.tpl.alt{grid-template-columns:1fr;gap:34px;min-height:0;padding:40px 0}.tpl.alt .stage3d{order:0}
 .steps{grid-template-columns:1fr}section{padding:80px 20px}.statement{padding:90px 20px}.sec{margin-bottom:40px}
 .ctas .pill{flex:1 1 100%}}
.lite .rig{transform:rotateY(-12deg) rotateX(4deg)}.lite .stage3d .phone{transform:none}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal-up{opacity:1;transform:none}}
.sheet{position:fixed;inset:0;z-index:50;background:rgba(7,7,10,.6);display:grid;place-items:center;padding:16px}
.sheet[hidden]{display:none}
.sheet-card{position:relative;background:#F0D8D8;color:#2a1f24;border-radius:20px;padding:28px 22px;max-width:420px;width:100%}
.sheet-card h2{margin:0 0 8px}.sheet-card .x{position:absolute;top:10px;right:12px;background:none;border:0;font-size:20px;cursor:pointer;color:#886070}
.sheet-card form{display:flex;flex-direction:column;gap:10px;margin-top:12px}
.sheet-card input{padding:14px;border-radius:999px;border:1px solid #886070;font-size:16px}
.sheet-card .fine{color:#5a4650}.sheet-card a{color:#886070}
