
:root{--red:#E63946;--red2:#FF4D5A;--bg:#000;--card:#0a0a0a;--line:#1f1f1f;--text:#fafafa;--muted:#a3a3a3;--dim:#737373;}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--bg);color:var(--text);font-family:'Inter',system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
a{color:inherit;}
.wrap{max-width:1100px;margin:0 auto;padding:0 clamp(20px,4vw,44px);}
.mono{font-family:'JetBrains Mono',monospace;}
.serif{font-family:'Cormorant Garamond',serif;}
nav{position:sticky;top:0;z-index:50;background:rgba(0,0,0,.85);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid #1b1b1b;}
nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:14px;padding-bottom:14px;}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;}
.brand img{height:34px;width:auto;filter:drop-shadow(0 0 9px rgba(230,57,70,.35));}
.brand span{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:18px;letter-spacing:.2em;text-transform:uppercase;white-space:nowrap;}
.links{display:flex;align-items:center;gap:4px;}
.links a.l{padding:9px 14px;color:var(--muted);font-size:14px;font-weight:500;text-decoration:none;border-radius:8px;}
.links a.l:hover,.links a.l.on{color:var(--text);}
.btn{display:inline-flex;align-items:center;gap:9px;background:var(--red);color:#fff;padding:12px 20px;border-radius:12px;font-size:15px;font-weight:600;text-decoration:none;white-space:nowrap;box-shadow:0 10px 34px rgba(230,57,70,.3);transition:background .2s ease,transform .15s ease;}
.btn:hover{background:var(--red2);}
.btn:active{transform:scale(.97);}
.btn.ghost{background:rgba(10,10,10,.5);border:1px solid #2a2a2a;box-shadow:none;}
.btn.ghost:hover{background:#111;border-color:#525252;}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--red);}
.eyebrow:before{content:"";width:18px;height:1px;background:var(--red);}
header.hero{position:relative;padding:clamp(70px,10vw,130px) 0 clamp(40px,6vw,70px);overflow:hidden;}
header.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 60% 20%,rgba(230,57,70,.16),transparent 70%);pointer-events:none;}
h1{margin:20px 0 0;font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(42px,6vw,80px);line-height:1.02;letter-spacing:-.01em;max-width:16ch;}
.lead{margin:22px 0 0;max-width:56ch;font-size:clamp(16px,1.5vw,19px);line-height:1.6;color:var(--muted);}
.jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px;}
.jump a{display:inline-flex;align-items:center;gap:9px;padding:10px 14px;border:1px solid #262626;border-radius:9999px;background:rgba(10,10,10,.6);color:#e5e5e5;font-size:13.5px;text-decoration:none;transition:border-color .2s ease;}
.jump a:hover{border-color:var(--red);}
.jump a b{font-family:'JetBrains Mono',monospace;font-weight:500;color:var(--red);}
.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;margin-top:clamp(40px,5vw,60px);}
.panel{padding:24px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#0c0c0c,#070707);}
.panel h3{margin:0 0 10px;font-size:15px;font-weight:600;}
.panel ul{margin:0;padding-left:18px;color:var(--muted);font-size:14px;line-height:1.75;}
.panel .tag{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);margin-bottom:10px;display:block;}
section.steps{padding:clamp(40px,6vw,80px) 0 clamp(70px,9vw,120px);}
.step{position:relative;display:grid;grid-template-columns:96px 1fr;gap:clamp(18px,3vw,36px);scroll-margin-top:96px;}
.rail{position:relative;display:flex;flex-direction:column;align-items:center;}
.num{width:64px;height:64px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-family:'JetBrains Mono',monospace;font-weight:600;font-size:20px;color:#FF4D5A;background:rgba(230,57,70,.1);border:1px solid rgba(230,57,70,.3);}
.rail:after{content:"";flex:1;width:1px;margin:10px 0;background:linear-gradient(#3a1a1d,#141414);}
.step:last-child .rail:after{display:none;}
.card{padding:clamp(22px,3vw,32px);margin-bottom:clamp(22px,3vw,34px);border:1px solid var(--line);border-radius:20px;background:var(--card);transition:border-color .25s ease;}
.step:target .card,.card:hover{border-color:#3a3a3a;}
.step:target .card{box-shadow:0 0 0 1px rgba(230,57,70,.35),0 0 60px rgba(230,57,70,.08);}
.card .k{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--dim);}
.card h2{margin:8px 0 0;font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(30px,3.6vw,44px);line-height:1.05;}
.card p{margin:14px 0 0;font-size:15.5px;line-height:1.7;color:#cfcfcf;max-width:70ch;}
.mini{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:12px;margin-top:20px;}
.mini div{padding:14px 16px;border:1px solid #1a1a1a;border-radius:12px;background:#070707;font-size:13.5px;line-height:1.55;color:var(--muted);}
.mini div strong{display:block;color:var(--text);font-weight:600;margin-bottom:3px;font-size:14px;}
.who{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:7px 12px;border-radius:9999px;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.06em;color:#e5e5e5;border:1px solid #262626;background:#0d0d0d;}
.who i{width:7px;height:7px;border-radius:9999px;background:var(--red);box-shadow:0 0 10px rgba(230,57,70,.8);}
.cta{position:relative;text-align:center;padding:clamp(80px,10vw,130px) 0;border-top:1px solid #141414;overflow:hidden;}
.cta:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 70% at 50% 40%,rgba(230,57,70,.15),transparent 70%);pointer-events:none;}
.cta h2{position:relative;margin:0;font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(38px,5.6vw,72px);line-height:1.04;}
.cta p{position:relative;margin:18px auto 0;max-width:48ch;color:var(--muted);font-size:17px;line-height:1.6;}
.cta .row{position:relative;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:32px;}
footer{border-top:1px solid #141414;padding:34px 0;}
footer .wrap{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;}
footer span,footer a{font-family:'JetBrains Mono',monospace;font-size:11.5px;color:#525252;text-decoration:none;}
footer a:hover{color:var(--text);}
@media (max-width:760px){.links a.l{display:none;}}
@media (max-width:560px){.step{grid-template-columns:1fr;}.rail{flex-direction:row;}.rail:after{display:none;}.num{width:52px;height:52px;font-size:17px;margin-bottom:-6px;}.brand span{font-size:14px;letter-spacing:.12em;}}

/* ---- shared components ---- */
.links a.l.on{color:var(--text);}
.section{padding:clamp(56px,8vw,100px) 0;}
.section.alt{background:#050505;border-top:1px solid #141414;border-bottom:1px solid #141414;}
.h2{margin:14px 0 0;font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(32px,4.6vw,56px);line-height:1.04;letter-spacing:-.01em;}
.sub{margin:16px 0 0;max-width:62ch;color:var(--muted);font-size:16px;line-height:1.65;}
.grid{display:grid;gap:16px;margin-top:clamp(28px,4vw,44px);}
.g2{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));}
.g3{grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));}
.g4{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));}
.box{padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--card);}
.box h3{margin:0 0 8px;font-size:18px;font-weight:600;}
.box p{margin:0;color:var(--muted);font-size:14.5px;line-height:1.65;}
.box .ico{font-size:22px;margin-bottom:12px;display:block;}
.box ul{margin:10px 0 0;padding-left:18px;color:var(--muted);font-size:14px;line-height:1.75;}
.chip{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:9999px;border:1px solid #262626;background:#0d0d0d;font-size:13px;color:#e5e5e5;margin:4px 6px 0 0;}
.chips{margin-top:16px;display:flex;flex-wrap:wrap;}
/* phone */
.phone{position:relative;width:300px;max-width:82vw;aspect-ratio:9/19.2;border-radius:44px;padding:11px;background:linear-gradient(160deg,#2a2a2a,#0b0b0b);box-shadow:0 0 0 1px #333,0 50px 120px rgba(0,0,0,.7),0 0 80px rgba(230,57,70,.12);margin:0 auto;}
.phone .screen{position:relative;width:100%;height:100%;border-radius:34px;overflow:hidden;background:#000;}
.phone .notch{position:absolute;top:9px;left:50%;transform:translateX(-50%);width:34%;height:22px;border-radius:9999px;background:#000;z-index:6;}
/* instant form mock */
.fm{position:absolute;inset:0;background:#f0f2f5;font-family:-apple-system,'Inter',sans-serif;color:#1c1e21;}
.fm .fcard{position:absolute;inset:44px 12px 70px;border-radius:14px;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.08);padding:18px 16px;opacity:0;transform:translateX(40px);transition:opacity .5s ease,transform .5s ease;}
.fm .fcard.on{opacity:1;transform:none;}
.fm .fcard.off{opacity:0;transform:translateX(-40px);}
.fm .q{font-size:15px;font-weight:700;line-height:1.35;margin-bottom:14px;}
.fm .opt{display:flex;align-items:center;justify-content:space-between;padding:11px 12px;border:1px solid #dadde1;border-radius:10px;font-size:13.5px;margin-bottom:9px;transition:background .3s,border-color .3s;}
.fm .opt i{width:16px;height:16px;border-radius:50%;border:2px solid #bcc0c4;display:block;}
.fm .opt.pick{border-color:#1877f2;background:#e7f0fd;}
.fm .opt.pick i{border-color:#1877f2;background:radial-gradient(#1877f2 45%,transparent 50%);}
.fm .in{padding:11px 12px;border:1px solid #dadde1;border-radius:10px;font-size:13px;color:#65676b;margin-bottom:9px;}
.fm .btn2{position:absolute;left:12px;right:12px;bottom:22px;height:42px;border-radius:10px;background:#1877f2;color:#fff;font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;}
.fm .top{position:absolute;top:0;left:0;right:0;height:40px;display:flex;align-items:center;justify-content:center;font-size:12px;color:#65676b;}
.fm .bar{position:absolute;left:12px;right:12px;bottom:72px;height:4px;border-radius:4px;background:#dadde1;overflow:hidden;}
.fm .bar b{display:block;height:100%;width:20%;background:#1877f2;transition:width .5s ease;}
.fm .big{font-size:19px;font-weight:800;line-height:1.25;margin-bottom:10px;}
.fm .sm{font-size:12.5px;line-height:1.55;color:#444;}
.fm .sm li{margin-bottom:4px;}
.split2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:clamp(28px,5vw,64px);align-items:center;}
/* reel grid */
.reels{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(46%,190px),1fr));gap:14px;margin-top:clamp(28px,4vw,44px);}
.reel{position:relative;aspect-ratio:9/16;border-radius:16px;overflow:hidden;border:1px solid #1f1f1f;background:#0a0a0a;}
.reel video{width:100%;height:100%;object-fit:cover;display:block;}
.reel span{position:absolute;left:0;right:0;bottom:0;padding:34px 12px 12px;font-size:12.5px;font-weight:600;line-height:1.35;background:linear-gradient(to top,rgba(0,0,0,.85),transparent);}
/* testimonial videos */
.tv{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:18px;margin-top:clamp(28px,4vw,44px);}
.tv figure{margin:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--card);}
.tv video{width:100%;aspect-ratio:9/16;object-fit:cover;display:block;background:#000;}
.tv figcaption{padding:14px 16px;font-size:13.5px;color:var(--muted);}
.tv figcaption b{display:block;color:var(--text);font-size:14.5px;margin-bottom:2px;}
.quote{padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--card);}
.quote p{margin:0;font-size:15px;line-height:1.7;color:#d4d4d4;}
.quote .who2{margin-top:14px;font-size:13px;color:var(--dim);}
.quote .who2 b{color:var(--text);font-weight:600;}
.stars{color:#FFD700;letter-spacing:2px;font-size:14px;margin-bottom:10px;}
/* faq */
details.f{border:1px solid var(--line);border-radius:14px;background:var(--card);padding:20px 22px;margin-bottom:12px;}
details.f summary{cursor:pointer;font-size:16.5px;font-weight:600;line-height:1.4;list-style:none;display:flex;justify-content:space-between;gap:16px;}
details.f summary::-webkit-details-marker{display:none;}
details.f summary:after{content:"+";color:var(--red);font-size:22px;line-height:1;}
details.f[open] summary:after{content:"–";}
details.f p{margin:12px 0 0;color:var(--muted);font-size:15px;line-height:1.7;}

@media (max-width:420px){.brand span{display:none;}}
.fm .top{display:none;}
@media (max-width:640px){
.tv{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.tv figcaption{padding:8px 10px;font-size:11.5px;}
.tv figcaption b{font-size:12.5px;}
.qswipe{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:12px;margin-left:-20px;margin-right:-20px;padding:0 20px 8px;scrollbar-width:none;}
.qswipe::-webkit-scrollbar{display:none;}
.qswipe .quote{flex:0 0 84%;scroll-snap-align:center;padding:18px;}
.qswipe .quote p{font-size:13.5px;}
}
nav{position:sticky;}
.menubtn{display:none;align-items:center;justify-content:center;width:42px;height:42px;margin-left:8px;border-radius:10px;border:1px solid #2a2a2a;background:#0a0a0a;color:#fafafa;cursor:pointer;padding:0;}
.mmenu{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;padding:6px 20px 20px;background:#050505;border-bottom:1px solid #1f1f1f;box-shadow:0 30px 60px rgba(0,0,0,.8);}
.mmenu a{padding:15px 4px;color:#fafafa;font-size:17px;font-weight:500;text-decoration:none;border-bottom:1px solid #1f1f1f;display:flex;justify-content:space-between;}
.mmenu a span{color:var(--red);}
.mmenu a.btn{margin-top:16px;justify-content:center;border-bottom:0;color:#fff;}
@media (max-width:760px){.menubtn{display:inline-flex;}.booktop{padding:9px 13px !important;font-size:13px !important;}html.menuopen .mmenu{display:flex;}}
