:root{--bg:#0E111B;--bg2:#161A28;--line:#262B3D;--tx:#EEF0F5;--mu:#9AA1B5;--c1:#FF6D5A;--c2:#EA4B71}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--tx);font:16px/1.6 Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
a{color:var(--c1)}.wrap{max-width:1120px;margin:0 auto;padding:0 20px}.narrow{max-width:760px}.center{text-align:center}
h1,h2,h3{line-height:1.15;letter-spacing:-.02em;margin:0 0 .5em}h1{font-size:clamp(2.1rem,6vw,3.6rem)}h1 em{font-style:normal;background:linear-gradient(90deg,var(--c1),var(--c2));-webkit-background-clip:text;background-clip:text;color:transparent}
h2{font-size:clamp(1.6rem,4vw,2.3rem)}h3{font-size:1.1rem}
section{padding:72px 0}.band{background:var(--bg2);border-block:1px solid var(--line)}
.top{position:sticky;top:0;z-index:9;background:rgba(14,17,27,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{display:flex;justify-content:space-between;align-items:center;height:64px}.brand img{display:block;height:34px;width:auto}
.btn{display:inline-block;background:linear-gradient(90deg,var(--c1),var(--c2));color:#fff;font-weight:700;padding:14px 24px;border-radius:12px;text-decoration:none;border:0;cursor:pointer;font-size:1rem}
.btn:hover{filter:brightness(1.08)}.btn-sm{padding:9px 16px;font-size:.9rem}.btn-ghost{background:none;border:1px solid var(--line);color:var(--tx)}.full{width:100%}
.eyebrow{color:var(--c1);font-weight:700;text-transform:uppercase;font-size:.8rem;letter-spacing:.08em}
.lead{font-size:1.15rem;color:var(--mu);max-width:560px}.small{color:var(--mu);font-size:.9rem}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 10px}
.hero-grid{display:grid;gap:40px;align-items:center}@media(min-width:900px){.hero-grid{grid-template-columns:1.2fr .8fr}}
.phone{background:#0A0C14;border:1px solid var(--line);border-radius:28px;padding:20px;display:flex;flex-direction:column;gap:10px;box-shadow:0 30px 80px -30px rgba(234,75,113,.45);max-width:360px;width:100%;justify-self:center}
.ph-head{font-size:.8rem;color:var(--mu);text-align:center;padding-bottom:8px;border-bottom:1px solid var(--line)}
.msg{padding:10px 14px;border-radius:16px;font-size:.92rem;max-width:85%}.out{background:linear-gradient(90deg,var(--c1),var(--c2));align-self:flex-end;border-bottom-right-radius:4px}.in{background:#232839;align-self:flex-start;border-bottom-left-radius:4px}
.alert{font-size:.82rem;font-weight:700;color:#FFB4A8;text-align:center;border:1px dashed var(--c2);border-radius:10px;padding:8px}
.steps{list-style:none;padding:0;display:grid;gap:20px}@media(min-width:800px){.steps{grid-template-columns:repeat(3,1fr)}}
.steps li{background:var(--bg2);border:1px solid var(--line);border-radius:16px;padding:24px}.steps b{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:10px;background:rgba(255,109,90,.15);color:var(--c1);margin-bottom:12px}
.steps p,.card p{color:var(--mu);margin:0}
.cards{display:grid;gap:16px}@media(min-width:640px){.cards{grid-template-columns:1fr 1fr}}@media(min-width:960px){.cards{grid-template-columns:repeat(3,1fr)}}
.card{background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:22px}.card.up{border-color:var(--c2)}.tag{font-size:.72rem;font-weight:700;color:var(--c1);text-transform:uppercase;letter-spacing:.08em}
details{border-bottom:1px solid var(--line);padding:16px 0}summary{cursor:pointer;font-weight:700}details p{color:var(--mu);margin:.6em 0 0}
.form-wrap{display:grid;gap:32px}@media(min-width:900px){.form-wrap{grid-template-columns:.9fr 1.1fr}}
form{background:var(--bg);border:1px solid var(--line);border-radius:18px;padding:24px}
label{display:block;font-size:.88rem;font-weight:600;margin-bottom:14px}input,select{display:block;width:100%;margin-top:6px;padding:12px;border-radius:10px;border:1px solid var(--line);background:#0A0C14;color:var(--tx);font:inherit}
input:focus,select:focus{outline:2px solid var(--c1);border-color:transparent}.invalid{border-color:#ff4d4d}.err{color:#ff8a8a;font-size:.9rem;min-height:1.2em}.hp{position:absolute;left:-9999px}
footer{padding:32px 0;border-top:1px solid var(--line)}.foot{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;color:var(--mu);font-size:.9rem}
.hero{position:relative;overflow:hidden;padding-top:56px}.glow{position:absolute;inset:-20% -10% auto auto;width:700px;height:700px;background:radial-gradient(circle,rgba(234,75,113,.35),transparent 65%);filter:blur(20px);pointer-events:none}
@media(min-width:900px){.hero-grid{grid-template-columns:1fr 1.15fr}}
.toggle{display:flex;gap:6px;justify-content:center;margin:24px auto 40px;background:var(--bg2);border:1px solid var(--line);border-radius:999px;padding:5px;width:max-content;max-width:100%}
.toggle button{border:0;background:none;color:var(--mu);font:600 .92rem inherit;font-family:inherit;padding:10px 16px;border-radius:999px;cursor:pointer}
.toggle button[aria-selected=true]{background:linear-gradient(90deg,var(--c1),var(--c2));color:#fff}.toggle small{opacity:.8}
.flow{list-style:none;margin:0;padding:0;display:grid;gap:28px;position:relative;counter-reset:n}
.flow::before{content:"";position:absolute;left:27px;top:0;bottom:0;width:3px;background:linear-gradient(var(--c1),var(--c2));transform-origin:top;transform:scaleY(var(--p,0));transition:transform .2s linear}
.node{position:relative;padding:20px 20px 20px 76px;background:var(--bg2);border:1px solid var(--line);border-radius:18px;opacity:.35;transform:translateY(16px);transition:opacity .5s,transform .5s,border-color .5s,box-shadow .5s}
.node.on{opacity:1;transform:none}.node .ic{position:absolute;left:8px;top:18px;width:42px;height:42px;display:grid;place-items:center;background:var(--bg);border:2px solid var(--line);border-radius:12px;font-size:1.2rem}
.node.on .ic{border-color:var(--c1)}.node p{color:var(--mu);margin:0}.node.miss.on{border-color:#ff4d4d}
.node.brand.on{background:linear-gradient(135deg,var(--c1),var(--c2));border-color:transparent;box-shadow:0 20px 60px -20px var(--c2)}.node.brand p{color:#fff}
.node.brand.on .ic{animation:ring 1.6s ease-in-out infinite}@keyframes ring{50%{transform:scale(1.12)}}
.flow[data-mode=text] .m-ai,.flow[data-mode=ai] .m-text{display:none}
@media(min-width:900px){.flow{grid-template-columns:repeat(3,1fr);gap:24px}.flow::before{left:0;right:0;top:50%;bottom:auto;height:3px;width:auto;transform-origin:left;transform:scaleX(var(--p,0))}.node{padding:64px 22px 22px}.node .ic{left:22px;top:16px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.node{opacity:1;transform:none}html{scroll-behavior:auto}}

body{background-image:radial-gradient(rgba(255,255,255,.045) 1px,transparent 1.4px);background-size:28px 28px;animation:drift 60s linear infinite}
@keyframes drift{to{background-position:28px 280px}}
main{position:relative}.spine{position:absolute;left:max(6px,calc(50% - 600px));top:0;bottom:0;width:2px;background:var(--line);pointer-events:none;z-index:0}
.spine span{position:absolute;inset:0;background:linear-gradient(var(--c1),var(--c2));transform-origin:top;transform:scaleY(var(--sp,0))}
.spine span::after{content:"";position:absolute;left:-5px;bottom:-6px;width:12px;height:12px;border-radius:50%;background:var(--c1);box-shadow:0 0 18px var(--c1)}
section,.band{position:relative;z-index:1}.band{background:rgba(22,26,40,.85)}
.viz{position:relative;display:grid;gap:18px 22px;grid-template-columns:1fr;grid-template-areas:"call" "brand" "chat" "alert" "sheet" "booked";padding:8px 0}
@media(min-width:620px){.viz{grid-template-columns:1fr 1fr;grid-template-areas:"call brand" "chat chat" "alert sheet" "booked booked"}}
.wires{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}
.wires path{fill:none;stroke-width:2.5}.wires .base{stroke:var(--line)}.wires .lit{stroke:url(#wg);stroke-linecap:round;filter:drop-shadow(0 0 6px rgba(255,109,90,.8));transition:stroke-dashoffset .7s ease}
.v-node,.v-chat{position:relative;z-index:1;background:rgba(22,26,40,.92);border:1px solid var(--line);border-radius:16px;padding:14px 16px;display:flex;gap:12px;align-items:center;transition:border-color .4s,box-shadow .4s,opacity .4s,transform .4s}
.v-node b{display:block;font-size:.98rem}.v-node small{color:var(--mu);font-size:.82rem}.v-ic{font-size:1.3rem;width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:var(--bg)}
.v-call{grid-area:call}.v-brand{grid-area:brand}.v-chat{grid-area:chat;flex-direction:column;align-items:stretch;gap:8px;min-height:190px}.v-alert{grid-area:alert}.v-sheet{grid-area:sheet}.v-booked{grid-area:booked;justify-self:center;min-width:220px}
.viz .v-node:not(.v-call),.viz .v-chat{opacity:.35}
.viz.s2 .v-brand,.viz.s3 .v-chat,.viz.s5 .v-alert,.viz.s5 .v-sheet,.viz.s6 .v-booked{opacity:1}
.st .b{display:none}.viz.s1 .st .a{display:none}.viz.s1 .st .b{display:inline;color:#ff8a8a}
.ring{position:absolute;left:16px;top:50%;width:40px;height:40px;margin-top:-20px;border-radius:12px;border:2px solid var(--c1);animation:ringp 1.1s ease-out infinite}
.viz.s1 .ring{display:none}.viz.s1 .v-call{border-color:#ff4d4d}@keyframes ringp{to{transform:scale(1.7);opacity:0}}
.v-call .v-ic{animation:shake .5s ease-in-out infinite}.viz.s1 .v-call .v-ic{animation:none}@keyframes shake{25%{transform:rotate(-12deg)}75%{transform:rotate(12deg)}}
.viz.s2 .v-brand{border-color:transparent;background:linear-gradient(135deg,var(--c1),var(--c2));box-shadow:0 18px 50px -12px var(--c2)}.viz.s2 .v-brand small{color:#fff}
.bub{max-width:80%;padding:8px 12px;border-radius:14px;font-size:.88rem;opacity:0;transform:translateY(8px) scale(.96);transition:all .35s ease calc(var(--d)*.7s)}
.bub.out{align-self:flex-end;background:linear-gradient(90deg,var(--c1),var(--c2));border-bottom-right-radius:4px}.bub.in{align-self:flex-start;background:#262B3D;border-bottom-left-radius:4px}
.viz.s3 .bub{opacity:1;transform:none}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.chips span{font-size:.75rem;font-weight:700;padding:5px 10px;border-radius:999px;border:1px solid var(--c1);color:#FFB4A8;opacity:0;transform:scale(.8);transition:all .3s ease calc(var(--d)*.25s)}
.viz.s4 .chips span{opacity:1;transform:none}
.viz.s5 .v-alert{border-color:var(--c2);box-shadow:0 0 0 4px rgba(234,75,113,.15)}.viz.s5 .v-alert .v-ic{animation:pop .6s ease}@keyframes pop{50%{transform:scale(1.3)}}
.row{display:flex;gap:4px;margin-top:4px}.row i{display:block;height:6px;width:0;border-radius:3px;background:var(--c1);transition:width .5s ease}.viz.s5 .row i{width:34px}.viz.s5 .row i:nth-child(2){transition-delay:.15s}.viz.s5 .row i:nth-child(3){transition-delay:.3s;width:22px}
.viz.s6 .v-booked{border-color:#3ddc97;box-shadow:0 0 30px -6px rgba(61,220,151,.6);transform:scale(1.04)}
@media(prefers-reduced-motion:reduce){body{animation:none}.viz .v-node,.viz .v-chat,.bub,.chips span{opacity:1!important;transform:none!important}.ring{display:none}.row i{width:30px}}

.brand{cursor:default}
.calc-wrap{display:grid;gap:32px;align-items:start}@media(min-width:900px){.calc-wrap{grid-template-columns:1fr 1fr}}
.calc{background:var(--bg);border:1px solid var(--line);border-radius:18px;padding:24px}
.calc-out{border:1px solid var(--c2);border-radius:14px;padding:16px;margin:6px 0 16px;background:rgba(234,75,113,.08)}
.calc-out span{display:block;font-size:.85rem;color:var(--mu)}.calc-out strong{display:block;font-size:2.2rem;letter-spacing:-.02em;background:linear-gradient(90deg,var(--c1),var(--c2));-webkit-background-clip:text;background-clip:text;color:transparent}
.calc-out small{color:var(--mu);font-size:.8rem}
fieldset{border:0;margin:0;padding:0}legend{font-weight:800;font-size:1.15rem;margin-bottom:14px}
.prog{display:flex;gap:6px;margin-bottom:8px}.prog span{flex:1;height:5px;border-radius:3px;background:var(--line);transition:background .3s}.prog span.on{background:linear-gradient(90deg,var(--c1),var(--c2))}
.step-label{font-size:.8rem;color:var(--mu);margin:0 0 14px}
.opts{display:grid;grid-template-columns:1fr 1fr;gap:10px}.opt{margin:0}.opt input{position:absolute;opacity:0;width:1px;height:1px}
.opt span{display:block;text-align:center;padding:14px;border:1px solid var(--line);border-radius:12px;background:#0A0C14;cursor:pointer;font-weight:700}
.opt input:checked+span{border-color:var(--c1);background:rgba(255,109,90,.12)}.opt input:focus-visible+span{outline:2px solid var(--c1)}
.fnav{display:flex;gap:10px;margin-top:8px}.fnav .btn{flex:1}
[hidden]{display:none!important}
.vid{margin:24px 0;border-radius:18px;overflow:hidden;border:1px solid var(--line);background:#000;box-shadow:0 30px 80px -30px rgba(234,75,113,.45)}.vid video{display:block;width:100%;height:auto;aspect-ratio:16/9}
