@font-face{font-family:"Bricolage";src:url(fonts/bricolage.woff2) format("woff2");font-weight:350 800;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url(fonts/instrument-serif-italic.woff2) format("woff2");font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:"DM Mono";src:url(fonts/dm-mono.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"DM Mono";src:url(fonts/dm-mono-medium.woff2) format("woff2");font-weight:500;font-display:swap}
:root{
  --paper:#f3efe6;--paper2:#e9e3d6;--ink:#121016;--ink2:#2a2730;--mut:#6b6670;
  --blue:#3b2bff;--blue2:#2a1ed6;--deep:#0f0b3a;--acid:#d8ff3c;--coral:#ff6b4a;
  --r:22px;--max:1320px;
  --sans:"Bricolage",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --serif:"Instrument Serif",ui-serif,Georgia,serif;
  --mono:"DM Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
}
*,*:before,*:after{box-sizing:border-box}
*{margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
html,body{overflow-x:clip}
body{font:400 18px/1.55 var(--sans);font-variation-settings:"opsz" 14;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{display:block;max-width:100%}
a{color:inherit}
::selection{background:var(--acid);color:var(--ink)}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:6px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 40px}
.mono{font-family:var(--mono);font-size:13px;letter-spacing:.04em;text-transform:uppercase}
.it{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.01em}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:10px 14px;border-radius:8px;z-index:99}
.skip:focus{left:8px}

/* grain overlay */
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:100;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* buttons */
.btn{--bg:var(--ink);--fg:#fff;display:inline-flex;align-items:center;gap:12px;background:var(--bg);color:var(--fg);text-decoration:none;font-weight:600;font-size:17px;padding:17px 26px;border-radius:999px;position:relative;transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s,background .25s;white-space:nowrap}
.btn .arr{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--acid);color:var(--ink);transition:transform .3s}
.btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px -14px rgba(18,16,22,.6)}
.btn:hover .arr{transform:rotate(-45deg)}
.btn.acid{--bg:var(--acid);--fg:var(--ink)}
.btn.acid .arr{background:var(--ink);color:var(--acid)}
.btn.line{--bg:transparent;--fg:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}
.btn.line:hover{--bg:var(--ink);--fg:#fff}

/* header */
.hdr{position:sticky;top:0;z-index:50;background:rgba(243,239,230,.82);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid rgba(18,16,22,.08)}
.hdr .wrap{display:flex;align-items:center;justify-content:space-between;height:76px;gap:24px}
.logo{display:flex;align-items:center;gap:11px;text-decoration:none}
.logo svg{width:38px;height:38px;flex:none}
.logo .wm{font-weight:800;font-size:23px;letter-spacing:-.045em;font-variation-settings:"opsz" 48;line-height:1}
.logo .wm small{font:500 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mut);margin-left:6px;vertical-align:3px}
.site-nav{display:flex;align-items:center;gap:6px}
.site-nav a{text-decoration:none;font-weight:500;font-size:16px;padding:9px 14px;border-radius:999px;transition:background .2s}
.site-nav a:hover{background:rgba(18,16,22,.07)}
.site-nav .btn{padding:11px 18px;font-size:15px;margin-left:10px}
.site-nav .btn:hover{background:var(--blue)}
.menu-toggle{display:none;background:none;border:0;width:44px;height:44px;border-radius:50%;cursor:pointer}
.menu-toggle span{display:block;width:20px;height:2px;background:var(--ink);margin:5px auto;transition:.3s}

/* hero */
.hero{position:relative;padding:72px 0 0;overflow:hidden}
.hero .wrap{position:relative;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);gap:40px;align-items:center}
.kicker{display:inline-flex;align-items:center;gap:10px;padding:8px 14px 8px 10px;border-radius:999px;background:#fff;box-shadow:0 1px 0 rgba(18,16,22,.08),0 0 0 1px rgba(18,16,22,.06);font-size:13px}
.kicker .dot{width:9px;height:9px;border-radius:50%;background:#1fbf5f;box-shadow:0 0 0 0 rgba(31,191,95,.5);animation:ping 2.4s infinite}
@keyframes ping{70%{box-shadow:0 0 0 9px rgba(31,191,95,0)}100%{box-shadow:0 0 0 0 rgba(31,191,95,0)}}
.hero h1{font-weight:800;font-size:clamp(52px,6.5vw,98px);line-height:.92;letter-spacing:-.055em;font-variation-settings:"opsz" 96;margin:26px 0 26px}
.hero h1 .it{font-size:1.08em;letter-spacing:-.025em;color:var(--blue);padding-right:.04em}
.hero h1 .hl{position:relative;white-space:nowrap}
.hero h1 .hl svg{position:absolute;left:-2%;width:104%;bottom:-.12em;height:.32em;overflow:visible}
.hero h1 .hl path{stroke-dasharray:420;stroke-dashoffset:420;animation:draw 1.1s .5s cubic-bezier(.6,.1,.2,1) forwards}
@keyframes draw{to{stroke-dashoffset:0}}
.lede{font-size:21px;line-height:1.5;color:var(--ink2);max-width:31em}
.lede b{font-weight:600;color:var(--ink)}
.ctas{display:flex;flex-wrap:wrap;gap:14px;margin:34px 0 0}
.facts{display:flex;flex-wrap:wrap;gap:0;margin-top:46px;border-top:1px solid rgba(18,16,22,.14);max-width:580px}
.facts div{flex:1 1 0;padding:18px 18px 0 0;min-width:140px}
.facts div+div{padding-left:18px;border-left:1px solid rgba(18,16,22,.14)}
.facts b{display:block;font-size:30px;font-weight:700;letter-spacing:-.04em;line-height:1.05;font-variation-settings:"opsz" 60}
.facts span{font-size:14px;color:var(--mut)}

/* hero stage */
.stage{position:relative;height:640px}
.sun{position:absolute;right:-180px;top:-40px;width:720px;height:720px;border-radius:50%;background:radial-gradient(circle at 50% 50%,var(--acid) 0 34%,transparent 34.2%),repeating-radial-gradient(circle at 50% 50%,transparent 0 46px,rgba(59,43,255,.16) 46px 47px);opacity:.95}
.sun:after{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 82%,rgba(59,43,255,.22) 90%,transparent 100%);animation:sweep 9s linear infinite}
@keyframes sweep{to{transform:rotate(360deg)}}
.browser{position:absolute;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 1px 0 rgba(255,255,255,.6) inset,0 40px 80px -30px rgba(15,11,58,.45),0 0 0 1px rgba(18,16,22,.1)}
.browser .bar{display:flex;align-items:center;gap:7px;height:34px;padding:0 12px;background:#f4f2ee;border-bottom:1px solid #e4e0d8}
.browser .bar i{width:10px;height:10px;border-radius:50%;background:#e0dcd3}
.browser .bar i:nth-child(1){background:#ff6b4a}.browser .bar i:nth-child(2){background:#ffc23d}.browser .bar i:nth-child(3){background:#3ccf6e}
.browser .bar .url{margin-left:12px;flex:1;height:20px;border-radius:6px;background:#fff;font:400 11px/20px var(--mono);color:#8b8790;padding-left:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:280px}
.browser .view{position:relative;overflow:hidden;aspect-ratio:16/10;background:#eee;container-type:size}
.browser .view img{width:100%;height:auto;transition:transform 5s cubic-bezier(.45,.05,.3,1)}
.browser:hover .view img{transform:translateY(calc(-100% + 100cqh))}
.stage .b1{left:0;top:40px;width:88%;transform:rotate(-2.5deg);animation:float1 8s ease-in-out infinite}
.stage .b2{right:-3%;top:290px;width:62%;transform:rotate(3deg);animation:float2 9s ease-in-out infinite}
@keyframes float1{50%{transform:rotate(-2.5deg) translateY(-10px)}}
@keyframes float2{50%{transform:rotate(3deg) translateY(8px)}}
.phone{position:absolute;width:200px;border-radius:34px;padding:9px;background:var(--ink);box-shadow:0 40px 70px -24px rgba(15,11,58,.55),inset 0 0 0 2px #3a3640}
.phone .scr{border-radius:26px;overflow:hidden;position:relative;aspect-ratio:390/844;background:#ddd}
.phone .scr:before{content:"";position:absolute;top:7px;left:50%;transform:translateX(-50%);width:62px;height:18px;border-radius:12px;background:var(--ink);z-index:2}
.phone img{width:100%;height:100%;object-fit:cover;object-position:top}
.stage .ph{left:-30px;bottom:-10px;transform:rotate(-6deg)}
.status{position:absolute;left:34%;top:4px;background:var(--ink);color:#fff;border-radius:16px;padding:14px 16px;width:250px;box-shadow:0 24px 50px -20px rgba(18,16,22,.6);z-index:3;transform:rotate(2deg)}
.status .row{display:flex;align-items:center;gap:10px;font-size:14px;padding:6px 0}
.status .row+.row{border-top:1px solid rgba(255,255,255,.1)}
.status .ck{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--acid);color:var(--ink);font-size:12px;font-weight:800;flex:none}
.status .row.now .ck{background:transparent;box-shadow:inset 0 0 0 2px var(--acid);animation:blink 1.6s infinite}
@keyframes blink{50%{opacity:.35}}
.status .row span:last-child{margin-left:auto;font:400 11px var(--mono);color:#a7a2b0}
.label-chip{position:absolute;right:6%;bottom:40px;z-index:4;font:500 12px var(--mono);letter-spacing:.06em;text-transform:uppercase;background:var(--paper);border:1px solid rgba(18,16,22,.2);padding:8px 12px;border-radius:999px}

/* marquee */
.marq{margin-top:84px;background:var(--ink);color:var(--paper);overflow:hidden;border-block:1px solid var(--ink)}
.marq .track{display:flex;width:max-content;animation:marq 38s linear infinite}
.marq .track span{display:flex;align-items:center;gap:34px;padding:22px 17px;font-size:34px;font-weight:700;letter-spacing:-.035em;white-space:nowrap;font-variation-settings:"opsz" 60}
.marq .track span em{font-family:var(--serif);font-weight:400;font-size:1.1em;color:var(--acid)}
.marq .track span:after{content:"";width:16px;height:16px;background:var(--acid);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%)}
@keyframes marq{to{transform:translateX(-50%)}}

/* section heads */
section{position:relative}
.sec{padding:140px 0}
.eyebrow{display:inline-flex;align-items:center;gap:12px;color:var(--blue)}
.eyebrow:before{content:"";width:28px;height:1.5px;background:currentColor}
.h2{font-weight:800;font-size:clamp(44px,5.4vw,82px);line-height:.95;letter-spacing:-.05em;font-variation-settings:"opsz" 96;margin-top:22px}
.h2 .it{font-size:1.07em;letter-spacing:-.02em}
.sub{font-size:20px;color:var(--ink2);max-width:34em;margin-top:22px}
.head{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end;margin-bottom:70px}
.head .sub{margin:0}

/* process */
.process{background:var(--deep);color:#f4f2ff;overflow:hidden}
.process:before{content:"";position:absolute;inset:0;background:radial-gradient(60% 50% at 85% 0%,rgba(59,43,255,.55),transparent 70%),radial-gradient(40% 40% at 0% 100%,rgba(216,255,60,.08),transparent 70%)}
.process .wrap{position:relative}
.process .eyebrow{color:var(--acid)}
.process .sub{color:#c3bfe6}
.process .h2 .it{color:var(--acid)}
.steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:s;position:relative}
.steps:before{content:"";position:absolute;left:0;right:0;top:31px;height:1px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.35) 0 6px,transparent 6px 12px)}
.step{position:relative;padding-top:0}
.step .num{position:relative;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:var(--deep);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.35);font:500 15px var(--mono);margin-bottom:28px}
.step:last-child .num{background:var(--acid);color:var(--ink);box-shadow:0 0 0 8px rgba(216,255,60,.14)}
.step .card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:var(--r);padding:28px 26px 30px;min-height:250px;transition:background .3s,transform .3s}
.step .card:hover{background:rgba(255,255,255,.09);transform:translateY(-4px)}
.step h3{font-size:25px;line-height:1.1;letter-spacing:-.03em;font-weight:700;margin-bottom:12px;font-variation-settings:"opsz" 40}
.step p{color:#c3bfe6;font-size:16.5px}
.step .tagline{display:inline-block;margin-top:18px;font:500 12px var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--acid)}
.promise{margin-top:56px;display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:26px 30px;border-radius:var(--r);background:var(--acid);color:var(--ink)}
.promise strong{font-size:24px;letter-spacing:-.03em;font-weight:700}
.promise span{color:#3b3a2a}
.promise .btn{margin-left:auto}

/* work */
.work .head{margin-bottom:40px}
.disclaim{display:inline-flex;gap:10px;align-items:center;background:#fff;border:1px dashed rgba(18,16,22,.3);border-radius:12px;padding:12px 16px;font-size:15px;color:var(--ink2);margin-bottom:70px}
.disclaim b{font-weight:600}
.case{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:64px;align-items:center;padding:56px 0;border-top:1px solid rgba(18,16,22,.14)}
.case:nth-of-type(even){grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}
.case:nth-of-type(even) .shot{order:2}
.shot{position:relative;padding:44px 50px 54px 30px;border-radius:30px;background:var(--tint);overflow:hidden}
.shot:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(-45deg,rgba(255,255,255,.12) 0 1px,transparent 1px 14px)}
.shot .browser{position:relative;transform:none;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.shot a:hover .browser{transform:translateY(-6px)}
.shot .phone{right:22px;bottom:22px;width:150px;padding:7px;border-radius:28px;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.shot .phone .scr{border-radius:22px}
.shot .phone .scr:before{width:46px;height:13px;top:6px}
.shot a:hover .phone{transform:translateY(-14px) rotate(-2deg)}
.shot a{display:block;text-decoration:none}
.c-plumber{--tint:#1c3550}.c-salon{--tint:#e7c4b6}.c-tacos{--tint:#ffb81c}
.meta .idx{font:500 13px var(--mono);color:var(--mut);display:flex;gap:12px;align-items:center}
.meta .idx b{color:var(--ink);font-weight:500;background:var(--paper2);padding:4px 9px;border-radius:999px}
.meta h3{font-size:clamp(36px,3.6vw,54px);line-height:.98;letter-spacing:-.05em;font-weight:800;margin:18px 0 8px;font-variation-settings:"opsz" 96}
.meta .kind{font-family:var(--serif);font-style:italic;font-size:26px;color:var(--blue);margin-bottom:18px}
.meta p{color:var(--ink2);font-size:17.5px}
.spec{list-style:none;margin:24px 0 30px;display:grid;gap:0;border-top:1px solid rgba(18,16,22,.12)}
.spec li{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:11px 0;border-bottom:1px solid rgba(18,16,22,.12);font-size:15.5px}
.spec li span:first-child{font:500 12px/1.9 var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--mut)}
.swatches{display:flex;gap:6px;align-items:center}
.swatches i{width:18px;height:18px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}
.textlink{display:inline-flex;align-items:center;gap:10px;font-weight:600;text-decoration:none;border-bottom:2px solid var(--ink);padding-bottom:3px;transition:gap .25s,color .25s,border-color .25s}
.textlink:hover{gap:16px;color:var(--blue);border-color:var(--blue)}

/* included */
.incl{background:var(--paper2)}
.grid-incl{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.tile{background:var(--paper);border-radius:var(--r);padding:30px 28px 32px;position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s}
.tile:hover{transform:translateY(-4px);box-shadow:0 20px 40px -24px rgba(18,16,22,.35)}
.tile .ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--ink);color:var(--acid);margin-bottom:22px}
.tile h3{font-size:22px;letter-spacing:-.03em;font-weight:700;margin-bottom:8px;line-height:1.15}
.tile p{font-size:16px;color:var(--ink2)}
.tile.big{grid-column:span 1;grid-row:span 2;background:var(--blue);color:#fff;display:flex;flex-direction:column;justify-content:space-between}
.tile.big .ic{background:var(--acid);color:var(--ink)}
.tile.big h3{font-size:34px;line-height:1.02;letter-spacing:-.045em}
.tile.big p{color:#d8d4ff;font-size:17px}
.tile.big .it{color:var(--acid)}

/* pricing */
.pricing .wrap{display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:center}
.price-card{position:relative;background:var(--ink);color:#fff;border-radius:32px;padding:50px 50px 46px;overflow:hidden;box-shadow:0 50px 90px -40px rgba(15,11,58,.6)}
.price-card:before{content:"";position:absolute;right:-120px;top:-120px;width:340px;height:340px;border-radius:50%;background:var(--blue);filter:blur(10px);opacity:.9}
.price-card:after{content:"";position:absolute;right:-40px;top:-40px;width:180px;height:180px;border-radius:50%;background:var(--acid)}
.price-card > *{position:relative;z-index:1}
.price-card .mono{color:#b8b3c2}
.amount{display:flex;align-items:flex-start;gap:6px;margin:16px 0 4px;font-weight:800;letter-spacing:-.07em;line-height:.85;font-variation-settings:"opsz" 96}
.amount sup{font-size:48px;margin-top:14px;font-weight:600;letter-spacing:-.03em}
.amount span{font-size:clamp(110px,12vw,170px)}
.once{font-family:var(--serif);font-style:italic;font-size:30px;color:var(--acid)}
.checks{list-style:none;display:grid;gap:13px;margin:32px 0 36px;padding-top:28px;border-top:1px solid rgba(255,255,255,.14)}
.checks li{display:flex;gap:14px;font-size:17px;color:#e9e6f0}
.checks li:before{content:"";flex:none;width:22px;height:22px;margin-top:2px;border-radius:50%;background:var(--acid) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%23121016' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.price-card .btn{width:100%;justify-content:center}
.fine{margin-top:16px;font-size:14px;color:#a7a2b0;text-align:center}
.compare{display:grid;gap:14px;margin-top:40px}
.compare > div{display:grid;grid-template-columns:44px 1fr;gap:16px;align-items:start;padding:20px 0;border-top:1px solid rgba(18,16,22,.14)}
.compare b{display:block;font-size:20px;letter-spacing:-.025em;font-weight:700;margin-bottom:4px}
.compare p{color:var(--ink2);font-size:16.5px}
.compare .n{font:500 13px var(--mono);color:var(--blue);padding-top:5px}

/* faq */
.faq .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}
.faq .side{position:sticky;top:120px;align-self:start}
.qa{border-top:1.5px solid var(--ink)}
details{border-bottom:1px solid rgba(18,16,22,.16)}
summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 0;font-size:23px;font-weight:600;letter-spacing:-.03em;line-height:1.2}
summary::-webkit-details-marker{display:none}
summary .pm{flex:none;width:36px;height:36px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--ink);position:relative;transition:background .25s,transform .35s}
summary .pm:before,summary .pm:after{content:"";position:absolute;left:50%;top:50%;width:13px;height:1.6px;background:var(--ink);transform:translate(-50%,-50%)}
summary .pm:after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .35s}
details[open] summary .pm{background:var(--acid);box-shadow:none}
details[open] summary .pm:after{transform:translate(-50%,-50%) rotate(0)}
summary:hover{color:var(--blue)}
details .ans{padding:0 64px 28px 0;color:var(--ink2);font-size:17.5px}
details .ans p+p,details .ans ul{margin-top:12px}
details .ans ul{padding-left:20px}
details .ans li{margin:4px 0}

/* contact */
.contact{padding:0 0 40px}
.cbox{position:relative;background:var(--blue);color:#fff;border-radius:40px;padding:110px 80px 270px;overflow:hidden;text-align:center}
.cbox:before{content:"";position:absolute;left:50%;bottom:-660px;width:1100px;height:1100px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,var(--acid) 0 36%,transparent 36.2%),repeating-radial-gradient(circle,transparent 0 40px,rgba(255,255,255,.12) 40px 41px)}
.cbox > *{position:relative}
.cbox .eyebrow{color:var(--acid)}
.cbox h2{font-weight:800;font-size:clamp(46px,6.6vw,104px);line-height:.92;letter-spacing:-.055em;font-variation-settings:"opsz" 96;margin:22px auto 24px;max-width:11em}
.cbox h2 .it{color:var(--acid)}
.cbox p{font-size:20px;max-width:32em;margin:0 auto;color:#e2dfff}
.cbox .ctas{justify-content:center;margin-top:38px}
.mail{display:inline-block;margin-top:54px;font-weight:700;font-size:clamp(20px,3vw,38px);letter-spacing:-.04em;color:#fff;text-decoration:none;border-bottom:3px solid var(--acid);line-height:1.1;word-break:break-word}
.mail:hover{color:var(--acid)}
.nophone{margin-top:14px!important;font-size:15px!important;color:#c9c4ff!important}

/* footer */
.ftr{padding:60px 0 50px}
.ftr .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;border-top:1px solid rgba(18,16,22,.14);padding-top:34px}
.ftr p{font-size:15px;color:var(--mut)}
.ftr a{color:var(--ink);text-decoration:none;font-weight:600}
.ftr a:hover{color:var(--blue)}

/* reveal */
.js-reveal [data-r]{opacity:0;transform:translateY(26px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0s)}
.js-reveal [data-r].in{opacity:1;transform:none}

/* responsive */
@media (max-width:1100px){
  .hero .wrap{grid-template-columns:1fr}
  .stage{height:560px;max-width:760px;margin:20px auto 0;width:100%}
  .sun{right:-120px}
  .steps{grid-template-columns:1fr 1fr;row-gap:40px}
  .steps:before{display:none}
  .grid-incl{grid-template-columns:1fr 1fr}
  .tile.big{grid-column:span 2;grid-row:auto}
  .pricing .wrap,.faq .wrap{grid-template-columns:1fr;gap:50px}
  .faq .side{position:static}
}
@media (max-width:860px){
  .wrap{padding:0 22px}
  body{font-size:17px}
  .hdr .wrap{height:66px}
  .menu-toggle{display:block}
  .site-nav{position:absolute;left:12px;right:12px;top:72px;flex-direction:column;align-items:stretch;gap:2px;padding:12px;background:var(--paper);border-radius:20px;box-shadow:0 30px 60px -20px rgba(18,16,22,.4),0 0 0 1px rgba(18,16,22,.08);opacity:0;visibility:hidden;transform:translateY(-8px);transition:.25s}
  .site-nav.open{opacity:1;visibility:visible;transform:none}
  .site-nav a{padding:14px 16px;font-size:18px}
  .site-nav .btn{margin:8px 0 0;justify-content:center;padding:15px}
  .menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(3.5px) rotate(45deg)}
  .menu-toggle[aria-expanded=true] span:nth-child(2){transform:translateY(-3.5px) rotate(-45deg)}
  .hero{padding-top:40px}
  .hero h1{font-size:clamp(46px,13.4vw,72px);margin:22px 0}
  .lede{font-size:18.5px}
  .ctas .btn{flex:1 1 100%;justify-content:center}
  .facts div{min-width:0;padding:16px 10px 0 0}
  .facts div+div{padding-left:12px}
  .facts b{font-size:22px}
  .facts span{font-size:12.5px}
  .stage{height:430px;margin-top:10px}
  .sun{width:460px;height:460px;right:-170px;top:-10px}
  .stage .b1{width:94%;top:56px}
  .stage .b2{display:none}
  .phone{width:126px;padding:6px;border-radius:24px}
  .phone .scr{border-radius:19px}
  .phone .scr:before{width:40px;height:11px;top:5px}
  .stage .ph{left:auto;right:4px;bottom:0;transform:rotate(5deg)}
  .status{left:0;top:auto;bottom:18px;width:210px;padding:10px 12px;transform:rotate(-2deg)}
  .status .row{font-size:12.5px;padding:5px 0}
  .label-chip{display:none}
  .browser .bar{height:24px;gap:5px;padding:0 9px}
  .browser .bar i{width:7px;height:7px}
  .browser .bar .url{height:14px;font-size:8px;line-height:14px}
  .marq{margin-top:56px}
  .marq .track span{font-size:24px;padding:16px 12px;gap:24px}
  .sec{padding:90px 0}
  .head{grid-template-columns:1fr;gap:20px;margin-bottom:44px}
  .sub{font-size:18px}
  .steps{grid-template-columns:1fr;row-gap:14px}
  .step{display:grid;grid-template-columns:48px 1fr;gap:16px}
  .step .num{width:48px;height:48px;font-size:13px;margin:0}
  .step .card{min-height:0;padding:22px 20px}
  .step h3{font-size:22px}
  .promise{padding:22px;gap:12px}
  .promise .btn{margin:6px 0 0;width:100%;justify-content:center}
  .disclaim{margin-bottom:30px;font-size:14px;align-items:flex-start}
  .case,.case:nth-of-type(even){grid-template-columns:1fr;gap:28px;padding:40px 0}
  .case:nth-of-type(even) .shot{order:0}
  .shot{padding:22px 34px 34px 16px;border-radius:22px}
  .shot .phone{width:96px;right:12px;bottom:12px;padding:5px;border-radius:18px}
  .shot .phone .scr{border-radius:14px}
  .shot .phone .scr:before{width:30px;height:8px;top:4px}
  .spec li{grid-template-columns:90px 1fr}
  .grid-incl{grid-template-columns:1fr;gap:12px}
  .tile:not(.big){display:grid;grid-template-columns:48px 1fr;column-gap:16px;padding:22px 20px}
  .tile:not(.big) .ic{grid-row:span 2;margin:0}
  .tile:not(.big) h3{font-size:20px;margin-bottom:4px}
  .tile.big{padding:28px 24px;gap:26px}
  .tile.big{grid-column:auto}
  .price-card{padding:38px 26px 32px;border-radius:26px}
  .amount sup{font-size:34px;margin-top:10px}
  summary{font-size:19.5px;padding:22px 0}
  details .ans{padding-right:0;font-size:16.5px}
  .cbox{padding:70px 22px 190px;border-radius:28px}
  .cbox:before{width:700px;height:700px;bottom:-450px}
  .cbox p{font-size:18px}
  .mail{margin-top:40px}
}
@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .marq .track{animation:none}
}
