/* Adier — site styles */
@font-face{font-family:"Inter Tight";src:url(fonts/InterTight.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url(fonts/InstrumentSerif.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url(fonts/InstrumentSerif-Italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Syne";src:url(fonts/Syne.woff2) format("woff2");font-weight:400 800;font-display:swap}
@font-face{font-family:"Fraunces";src:url(fonts/Fraunces-600.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Anton";src:url(fonts/Anton.woff2) format("woff2");font-display:swap}
@font-face{font-family:"Press Start 2P";src:url(fonts/PressStart2P.woff2) format("woff2");font-display:swap}

:root{
  --paper:#F7F3EC; --paper-2:#EFE8DC; --card:#FFFDF9;
  --ink:#0E0E12; --ink-2:#34343C; --mute:#6E6C72; --line:rgba(14,14,18,.10); --line-2:rgba(14,14,18,.18);
  --sig:#FF4F2E; --sig-deep:#D93A1C; --sig-soft:#FFE3DB;
  --ease-out:cubic-bezier(.23,1,.32,1); --ease-io:cubic-bezier(.77,0,.175,1);
  --r:26px; --gut:clamp(16px,4vw,40px); --max:1180px;
  --sans:"Inter Tight",system-ui,sans-serif; --serif:"Instrument Serif",Georgia,serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:500 17px/1.55 var(--sans);letter-spacing:-.005em;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video,svg{display:block;max-width:100%}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
em.s{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.01em}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
.grain{position:fixed;inset:0;pointer-events:none;z-index:1;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")}

/* nav */
.nav{position:sticky;top:12px;z-index:20;display:flex;justify-content:center;padding:0 var(--gut)}
.nav-in{display:flex;align-items:center;gap:22px;padding:8px 8px 8px 16px;border-radius:999px;background:rgba(247,243,236,.78);backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);box-shadow:0 0 0 1px var(--line),0 8px 30px -12px rgba(14,14,18,.18)}
.logo{display:flex;align-items:center;gap:8px;text-decoration:none;font-weight:900;font-size:21px;letter-spacing:-.05em}
.logo img{width:24px;height:24px}
.nav-links{display:flex;gap:18px;font-size:14.5px;color:var(--ink-2)}
.nav-links a{text-decoration:none}
@media (hover:hover){.nav-links a:hover{color:var(--ink)}}
@media (max-width:720px){.nav-links{display:none}}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:12px;padding:7px 7px 7px 22px;border-radius:999px;border:0;background:var(--ink);color:var(--paper);font-weight:700;font-size:16px;text-decoration:none;cursor:pointer;transition:transform 160ms var(--ease-out),background-color 200ms ease}
.btn .ic{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.14);transition:transform 220ms var(--ease-out)}
.btn.sig{background:var(--sig);color:#fff}
.btn.sig .ic{background:rgba(255,255,255,.22)}
.btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line-2);padding:14px 22px}
.btn.sm{font-size:14.5px;padding:5px 5px 5px 16px}.btn.sm .ic{width:30px;height:30px}
.btn:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){.btn:hover .ic{transform:translate(2px,-1px) scale(1.05)}.btn.sig:hover{background:var(--sig-deep)}}
.btn[disabled]{opacity:.4;pointer-events:none}

.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;border-radius:999px;background:var(--card);box-shadow:0 0 0 1px var(--line);font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}
.eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--sig)}
h1,h2,h3{margin:0;font-weight:900;letter-spacing:-.045em;line-height:.98}
h2{font-size:clamp(38px,6vw,76px)}
h3{font-size:22px;letter-spacing:-.025em;line-height:1.1}
.lede{font-size:clamp(18px,2vw,21px);color:var(--ink-2);max-width:34ch}
section{position:relative;z-index:2;padding:clamp(80px,12vw,150px) 0}
.sec-head{display:grid;gap:18px;margin-bottom:clamp(40px,6vw,70px)}

/* hero */
.hero{padding-top:clamp(56px,9vw,110px);padding-bottom:clamp(60px,8vw,110px)}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(30px,5vw,70px);align-items:center}
.hero h1{font-size:clamp(54px,9.4vw,128px);margin:22px 0 26px}
.hero h1 em.s{color:var(--sig);font-size:1.08em}
.hero .cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.hero .note{margin-top:18px;font-size:14px;color:var(--mute)}
@media (max-width:880px){.hero-grid{grid-template-columns:1fr}.phone-wrap{order:2}}

/* phone showcase (hero) */
.phone-wrap{display:grid;justify-items:center;gap:16px}
.phone{position:relative;width:min(330px,78vw);aspect-ratio:9/16;border-radius:40px;padding:9px;background:var(--ink);box-shadow:0 0 0 1px rgba(255,255,255,.06) inset,0 40px 80px -30px rgba(14,14,18,.45),0 18px 30px -18px rgba(14,14,18,.35);transform:rotate(2.5deg)}
.screen{position:relative;height:100%;border-radius:32px;overflow:hidden;background:#000;isolation:isolate}
.scene{position:absolute;inset:0;opacity:0;animation:scene 15s infinite;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:28px}
.scene:nth-child(2){animation-delay:3s}.scene:nth-child(3){animation-delay:6s}.scene:nth-child(4){animation-delay:9s}.scene:nth-child(5){animation-delay:12s}
@keyframes scene{0%{opacity:0;clip-path:inset(0 0 100% 0)}3%{opacity:1;clip-path:inset(0 0 0 0)}20%{opacity:1;clip-path:inset(0)}23%{opacity:0}100%{opacity:0}}
.scene .k{animation:kin 15s infinite;animation-delay:inherit}
@keyframes kin{0%,2%{transform:translateY(14px) scale(.96);opacity:0}7%{transform:none;opacity:1}100%{transform:none}}
.phone-tag{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--mute)}
.phone-tag b{position:relative;display:inline-block;min-width:130px;height:1.4em;overflow:hidden;color:var(--ink)}
.phone-tag b span{position:absolute;left:0;top:0;opacity:0;animation:tag 15s infinite}
.phone-tag b span:nth-child(2){animation-delay:3s}.phone-tag b span:nth-child(3){animation-delay:6s}.phone-tag b span:nth-child(4){animation-delay:9s}.phone-tag b span:nth-child(5){animation-delay:12s}
@keyframes tag{0%{opacity:0;transform:translateY(8px)}3%,19%{opacity:1;transform:none}23%,100%{opacity:0;transform:translateY(-8px)}}
.wm{position:absolute;right:12px;bottom:12px;z-index:5;font:700 9px/1 var(--sans);letter-spacing:.18em;color:rgba(255,255,255,.7);background:rgba(0,0,0,.28);padding:5px 7px;border-radius:6px}

/* scene looks */
.s-lux{background:radial-gradient(120% 80% at 50% 30%,#2a2418,#0b0a08 70%);color:#E7CF9A}
.s-lux .fr{position:absolute;inset:16px;border:1px solid rgba(214,180,106,.45)}
.s-lux small{font:600 9px/1 var(--sans);letter-spacing:.34em;opacity:.8}
.s-lux .t{font:400 54px/.95 var(--serif);margin:14px 0}
.s-lux .t em{font-style:italic}
.s-lux .bottle{width:58px;height:112px;margin:0 auto 18px;border-radius:14px 14px 10px 10px;background:linear-gradient(90deg,#8c6d35,#e9d49d 40%,#a88442);box-shadow:0 20px 40px -10px #000;position:relative}
.s-lux .bottle::before{content:"";position:absolute;left:18px;right:18px;top:-22px;height:24px;border-radius:5px;background:#1b1712}
.s-pop{background:#FFD83D;color:#0E0E12}
.s-pop .t{font:400 78px/.86 "Anton",var(--sans);text-transform:uppercase;transform:rotate(-6deg);text-shadow:5px 5px 0 #FF3E9A}
.s-pop .pill{margin-top:22px;background:#0E0E12;color:#FFD83D;font:800 13px/1 var(--sans);padding:10px 16px;border-radius:999px;letter-spacing:.08em}
.s-pop .burst{position:absolute;top:26px;right:22px;width:64px;height:64px;background:#FF3E9A;color:#fff;display:grid;place-items:center;font:900 15px/1 var(--sans);clip-path:polygon(50% 0,61% 20%,83% 12%,80% 35%,100% 44%,84% 60%,93% 82%,70% 82%,58% 100%,45% 84%,24% 96%,22% 73%,0 62%,17% 45%,6% 24%,29% 23%,37% 2%);animation:spin 6s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.s-retro{background:#050805;color:#39F27A;font-family:"Press Start 2P",monospace}
.s-retro::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.35) 0 2px,transparent 2px 4px);pointer-events:none}
.s-retro .t{font-size:21px;line-height:1.5;text-shadow:0 0 12px rgba(57,242,122,.6)}
.s-retro .hp{width:170px;height:14px;border:3px solid #39F27A;margin:22px auto 10px;padding:2px}
.s-retro .hp i{display:block;height:100%;background:#39F27A;animation:hp 3s steps(8) infinite}
@keyframes hp{from{width:10%}to{width:100%}}
.s-retro small{font-size:9px;animation:blink 1s steps(2) infinite}
@keyframes blink{50%{opacity:0}}
.s-tech{background:radial-gradient(90% 60% at 20% 10%,#5B7CFF,transparent 60%),radial-gradient(90% 70% at 90% 90%,#A15BFF,transparent 60%),#0B0D1E;color:#fff}
.s-tech .card{width:100%;padding:18px;border-radius:18px;background:rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 0 0 1px rgba(255,255,255,.14);backdrop-filter:blur(6px);text-align:left}
.s-tech .t{font:800 34px/1 "Syne",var(--sans);letter-spacing:-.03em;margin-bottom:14px}
.s-tech .bars{display:flex;align-items:flex-end;gap:6px;height:70px}
.s-tech .bars i{flex:1;border-radius:5px 5px 2px 2px;background:linear-gradient(#fff,rgba(255,255,255,.35));transform-origin:bottom;animation:bar 3s var(--ease-out) infinite}
.s-tech .bars i:nth-child(1){height:30%}.s-tech .bars i:nth-child(2){height:48%;animation-delay:.1s}.s-tech .bars i:nth-child(3){height:62%;animation-delay:.2s}.s-tech .bars i:nth-child(4){height:100%;animation-delay:.3s}
@keyframes bar{0%{transform:scaleY(.1)}25%,100%{transform:scaleY(1)}}
.s-tech small{display:block;margin-top:12px;font:600 11px/1 var(--sans);opacity:.75}
.s-warm{background:#F3E6D2;color:#5B2A16}
.s-warm .sun{width:120px;height:120px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#F7B267,#D9642B);margin-bottom:22px;box-shadow:0 20px 40px -18px #9b3d14}
.s-warm .t{font:600 42px/1 "Fraunces",Georgia,serif;letter-spacing:-.02em}
.s-warm small{margin-top:14px;font:600 11px/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase;opacity:.75}

/* marquee strip */
.strip{position:relative;z-index:2;border-block:1px solid var(--line);padding:18px 0;overflow:hidden;white-space:nowrap}
.strip .row{display:inline-flex;gap:44px;animation:mq 38s linear infinite;font-weight:700;font-size:15px;color:var(--ink-2)}
.strip .row span{display:inline-flex;align-items:center;gap:44px}
.strip .row span::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--sig)}
@keyframes mq{to{transform:translateX(-50%)}}

/* cards / bezel */
.bezel{padding:6px;border-radius:var(--r);background:rgba(14,14,18,.035);box-shadow:0 0 0 1px var(--line)}
.bezel>.core{border-radius:calc(var(--r) - 6px);background:var(--card);box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(14,14,18,.04);height:100%}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media (max-width:900px){.grid-3{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.grid-3{grid-template-columns:1fr}}
.svc .core{padding:26px 24px 24px;display:grid;gap:10px;align-content:start}
.svc .n{font:400 15px/1 var(--serif);font-style:italic;color:var(--sig)}
.svc p{margin:0;color:var(--ink-2);font-size:15.5px}
.svc .len{margin-top:6px;font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}

/* brand-match section */
.match{background:var(--ink);color:var(--paper);border-radius:clamp(26px,4vw,48px);margin:0 var(--gut);padding:clamp(60px,9vw,120px) 0}
.match .eyebrow{background:rgba(255,255,255,.06);color:rgba(247,243,236,.8);box-shadow:0 0 0 1px rgba(255,255,255,.1)}
.match .lede{color:rgba(247,243,236,.72)}
.match-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,80px);align-items:center}
@media (max-width:880px){.match-grid{grid-template-columns:1fr}}
.steps{list-style:none;margin:30px 0 0;padding:0;display:grid;gap:2px}
.steps li{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:16px 0;border-top:1px solid rgba(255,255,255,.1)}
.steps li b{font:400 26px/1 var(--serif);font-style:italic;color:var(--sig)}
.steps li span{color:rgba(247,243,236,.8)}
.steps li strong{color:var(--paper);display:block;font-weight:700}
.dna{display:grid;gap:12px}
.dna .row{display:flex;gap:10px}
.sw{flex:1;height:74px;border-radius:14px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.dna .type{display:flex;justify-content:space-between;align-items:baseline;padding:18px 20px;border-radius:14px;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}
.dna .type .a{font:400 44px/1 var(--serif)}
.dna .type .b{font-size:13px;color:rgba(247,243,236,.6)}
.dna .voice{padding:16px 20px;border-radius:14px;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);font-size:14.5px;color:rgba(247,243,236,.75)}
.dna .voice q{color:var(--paper);font-family:var(--serif);font-style:italic;font-size:19px}

/* looks gallery */
.looks{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media (max-width:980px){.looks{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.looks{grid-template-columns:1fr 1fr}}
.look{container-type:inline-size;position:relative;border-radius:22px;overflow:hidden;aspect-ratio:4/5;display:flex;flex-direction:column;justify-content:flex-end;padding:18px;isolation:isolate}
.look .name{position:relative;z-index:2;font-weight:800;font-size:clamp(13.5px,6cqw,15px);line-height:1.2;letter-spacing:-.01em}
.look .sub{position:relative;z-index:2;font-size:12.5px;opacity:.75;margin-top:2px}
.look .art{position:absolute;inset:0;display:grid;place-items:center;z-index:1}
.lk-brand{background:var(--sig);color:#fff}
.lk-brand .art{display:flex;align-items:baseline;justify-content:center;gap:6px;padding-bottom:18%;font:900 42cqw/1 var(--sans);letter-spacing:-.06em}
.lk-brand .art span{display:inline-block;animation:bob 4s var(--ease-io) infinite}
.lk-brand .art span:nth-child(2){animation-delay:.15s;font-family:var(--serif);font-style:italic;font-weight:400}
.lk-brand .art span:nth-child(2){font-size:50cqw}
.lk-brand .art span:nth-child(3){animation-delay:.3s;font-family:"Press Start 2P";font-size:19cqw}
@keyframes bob{0%,100%{transform:none}50%{transform:translateY(-8px)}}
.lk-tech{background:radial-gradient(80% 60% at 20% 15%,#5B7CFF,transparent 60%),radial-gradient(80% 70% at 90% 90%,#A15BFF,transparent 60%),#0B0D1E;color:#fff}
.lk-tech .art{padding-bottom:14%}
.lk-tech .art i{width:62%;height:44%;border-radius:16px;background:rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 0 0 1px rgba(255,255,255,.15);animation:float 5s var(--ease-io) infinite}
@keyframes float{50%{transform:translateY(-6px) rotate(-2deg)}}
.lk-pop{background:#FFD83D;color:#0E0E12}
.lk-pop .art{padding-bottom:16%;font:400 23cqw/.88 "Anton";text-transform:uppercase;text-align:center;text-shadow:4px 4px 0 #FF3E9A}
.lk-pop .art b{font-weight:400;display:block;transform:rotate(-6deg);animation:pulse 1.6s var(--ease-out) infinite}
@keyframes pulse{0%,100%{transform:rotate(-6deg) scale(1)}12%{transform:rotate(-6deg) scale(1.08)}}
.lk-lux{background:radial-gradient(100% 70% at 50% 30%,#2a2418,#0b0a08 72%);color:#E7CF9A}
.lk-lux .art{padding-bottom:14%;font:400 64cqw/1 var(--serif)}
.lk-lux::before{content:"";position:absolute;inset:12px;border:1px solid rgba(214,180,106,.4);border-radius:12px;z-index:1}
.lk-meme{background:#fff;color:#000}
.lk-meme .art{padding-bottom:14%;font:400 12.5cqw/1 "Anton";text-transform:uppercase;text-align:center;-webkit-text-stroke:1.5px #000;color:#fff;letter-spacing:.02em}
.lk-meme .art div{display:grid;gap:18cqw;justify-items:center}
.lk-meme .art span{display:inline-block;padding:0 8px;background:#000;color:#fff;-webkit-text-stroke:0}
.lk-warm{background:#F3E6D2;color:#5B2A16}
.lk-warm .art{padding-bottom:14%;font:600 27cqw/1 "Fraunces",serif;letter-spacing:-.03em}
.lk-warm .art::before{content:"";position:absolute;width:46%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 40% 35%,#F7B267,#D9642B);z-index:-1;animation:float 6s var(--ease-io) infinite}
.lk-retro{background:#050805;color:#39F27A}
.lk-retro .art{padding-bottom:14%;font:400 17cqw/1 "Press Start 2P";text-shadow:0 0 14px rgba(57,242,122,.55)}
.lk-retro::after{content:"";position:absolute;inset:0;z-index:1;background:repeating-linear-gradient(0deg,rgba(0,0,0,.35) 0 2px,transparent 2px 4px);pointer-events:none}
.lk-retro .art b{font-weight:400;animation:blink 1.2s steps(2) infinite}
.lk-clean{background:#fff;color:#0E0E12}
.lk-clean .art{padding-bottom:14%;font:800 21cqw/1 var(--sans);letter-spacing:-.05em}
.lk-clean .art::after{content:"";position:absolute;bottom:40%;left:28%;right:28%;height:4px;border-radius:2px;background:#0E0E12;transform-origin:left;animation:line 3s var(--ease-out) infinite}
@keyframes line{0%{transform:scaleX(0)}40%,100%{transform:scaleX(1)}}

/* platforms */
.plats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
@media (max-width:760px){.plats{grid-template-columns:1fr 1fr}}
.plat .core{padding:18px 18px 16px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.plat b{font-weight:700;font-size:15.5px}
.ratio{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--mute)}
.ratio i{display:block;border:1.8px solid var(--ink);border-radius:3px}

/* voice */
.voice-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}
@media (max-width:820px){.voice-grid{grid-template-columns:1fr}}
.wave{display:flex;align-items:center;gap:4px;height:60px;margin:18px 0 6px}
.wave i{flex:1;max-width:6px;border-radius:3px;background:var(--sig);animation:wave 1.2s var(--ease-io) infinite}
@keyframes wave{50%{transform:scaleY(.3)}}

/* pricing */
.price .core{padding:30px 28px;display:grid;gap:14px;align-content:start}
.price .amt{font-weight:900;font-size:46px;letter-spacing:-.05em;line-height:1}
.price .amt small{font-size:15px;font-weight:600;color:var(--mute);letter-spacing:0;margin-left:4px}
.price ul{list-style:none;padding:0;margin:4px 0 8px;display:grid;gap:9px;font-size:15px;color:var(--ink-2)}
.price li{display:grid;grid-template-columns:18px 1fr;gap:8px}
.price li::before{content:"";width:8px;height:8px;margin-top:8px;border-radius:50%;background:var(--sig)}
.price.hl{background:var(--sig);box-shadow:none}
.price.hl .core{background:var(--ink);color:var(--paper);box-shadow:none}
.price.hl ul,.price.hl .amt small{color:rgba(247,243,236,.75)}
.tag{justify-self:start;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:5px 10px;border-radius:999px;background:var(--sig-soft);color:var(--sig-deep)}
.price.hl .tag{background:var(--sig);color:#fff}
.fine{margin-top:18px;font-size:13.5px;color:var(--mute)}

/* faq */
.faq{max-width:820px}
.faq details{border-top:1px solid var(--line);padding:20px 0}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-weight:700;font-size:18px;letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-weight:400;font-size:26px;line-height:.8;color:var(--sig);transition:transform 200ms var(--ease-out)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq p{margin:12px 0 0;color:var(--ink-2);max-width:62ch}

/* final cta */
.final{text-align:center}
.final h2{font-size:clamp(46px,8vw,110px)}
.final .cta{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:34px}
footer{position:relative;z-index:2;border-top:1px solid var(--line);padding:30px 0 40px;font-size:13.5px;color:var(--mute)}
footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;align-items:center}

/* reveal */
.rv{opacity:0;transform:translateY(24px);filter:blur(6px);transition:opacity 900ms var(--ease-out),transform 900ms var(--ease-out),filter 900ms var(--ease-out)}
.rv.in{opacity:1;transform:none;filter:none}
.no-js .rv{opacity:1;transform:none;filter:none}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important}
  .scene{animation:none}.scene:first-child{opacity:1}
  .phone-tag b span{animation:none}.phone-tag b span:first-child{opacity:1}
  .strip .row{animation:none}
  .rv{transition:opacity 300ms ease;transform:none;filter:none}
  html{scroll-behavior:auto}
}

/* price calculator */
.calc .core{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(24px,4vw,56px);padding:clamp(24px,4vw,44px)}
@media (max-width:860px){.calc .core{grid-template-columns:1fr}}
.calc-q{margin:0 0 12px;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.calc-q:not(:first-child){margin-top:28px}
.lens{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.len{position:relative;text-align:left;cursor:pointer;border:0;border-radius:18px;padding:16px 16px 14px;background:var(--paper);box-shadow:0 0 0 1px var(--line-2);display:grid;gap:2px;transition:transform 160ms var(--ease-out),box-shadow 160ms ease}
.len b{font-size:18px;font-weight:800;letter-spacing:-.01em}
.len span{font-size:13px;color:var(--mute)}
.len i{font-style:normal;font-weight:900;font-size:26px;letter-spacing:-.03em;margin-top:8px}
.len[aria-pressed="true"]{background:var(--ink);color:var(--paper);box-shadow:none}
.len[aria-pressed="true"] span{color:rgba(247,243,236,.65)}
.len:active{transform:scale(.97)}
.qty{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.qb{width:52px;height:52px;border-radius:50%;border:0;background:var(--paper);box-shadow:0 0 0 1px var(--line-2);font-size:24px;font-weight:600;cursor:pointer;transition:transform 160ms var(--ease-out)}
.qb:active{transform:scale(.94)}
#qv{min-width:44px;text-align:center;font-size:34px;font-weight:900;letter-spacing:-.03em}
.qchips{display:flex;gap:8px;margin-left:8px}
.qchips button{border:0;border-radius:999px;padding:9px 14px;background:transparent;box-shadow:0 0 0 1px var(--line-2);font-weight:700;font-size:14px;cursor:pointer}
.qchips button.on{background:var(--sig);color:#fff;box-shadow:none}
.calc-r{display:grid;align-content:start;gap:10px;padding:clamp(20px,3vw,30px);border-radius:22px;background:var(--ink);color:var(--paper)}
.tot{font-weight:900;font-size:clamp(56px,7vw,84px);letter-spacing:-.05em;line-height:1}
.tot-sub{margin:0;color:rgba(247,243,236,.7);font-size:15px}
.incl{list-style:none;padding:0;margin:10px 0 16px;display:grid;gap:8px;font-size:15px;color:rgba(247,243,236,.82)}
.incl li{display:grid;grid-template-columns:18px 1fr;gap:8px}
.incl li::before{content:"";width:8px;height:8px;margin-top:8px;border-radius:50%;background:var(--sig)}
.calc-r .btn{justify-self:start}
@media (max-width:520px){.lens{grid-template-columns:1fr}.len{grid-template-columns:1fr auto;align-items:center}.len i{margin:0;grid-row:span 2}}
