
@font-face{font-family:Poppins;font-weight:400;font-display:swap;src:url(../fonts/poppins-regular.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:500;font-display:swap;src:url(../fonts/poppins-medium.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:600;font-display:swap;src:url(../fonts/poppins-semibold.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:700;font-display:swap;src:url(../fonts/poppins-bold.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:800;font-display:swap;src:url(../fonts/poppins-extrabold.woff2) format("woff2")}
:root{
  --bg:#0b0b0b;--bg2:#121212;--card:#151515;--card2:#1c1c1c;
  --line:rgba(255,255,255,.09);--line2:rgba(255,255,255,.16);
  --red:#DD3B26;--red2:#F04A2E;--ember:#FF5A2B;--glow:rgba(255,77,31,.45);
  --light:#F3F0EC;--light2:#E8E3DC;--ink:#111;--mute:#9C9893;--mute2:#5f5b56;
  --wrap:1200px;--pad:clamp(18px,4vw,40px);
  --r:18px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;background:var(--bg);color:#fff;font:400 15px/1.55 Poppins,system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
:focus-visible{outline:2px solid var(--ember);outline-offset:3px;border-radius:8px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hero-grid>*,.split>*,.about>*,.glob>*,.faq-grid>*,.proof>*,.cta-in>*{min-width:0}

/* type */
h1,h2,h3{margin:0;font-weight:700;letter-spacing:-.02em;line-height:1.08}
.h2{font-size:clamp(26px,3.6vw,42px)}
.sub{color:var(--mute);margin:12px 0 0;max-width:58ch;font-size:15px}
.light .sub{color:var(--mute2)}
.kick{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--ember);margin-bottom:12px}
.light .kick{color:var(--red)}
.kick::before{content:"";width:18px;height:2px;background:currentColor;border-radius:2px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:50px;padding:0 22px;border-radius:12px;font-weight:600;font-size:15px;white-space:nowrap;transition:background .2s,transform .2s,box-shadow .2s,border-color .2s}
.btn svg{width:16px;height:16px;transition:transform .25s}
.btn:hover svg{transform:translateX(3px)}
.btn-red{background:var(--red);color:#fff;box-shadow:0 10px 30px -10px var(--glow)}
.btn-red:hover{background:var(--red2);box-shadow:0 14px 40px -10px rgba(255,77,31,.7)}
.btn-line{border:1px solid var(--line2);background:rgba(255,255,255,.03)}
.btn-line:hover{border-color:#fff}
.btn-sm{height:42px;padding:0 16px;font-size:14px;border-radius:10px}
.link{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--ember)}
.light .link{color:var(--red)}
.link svg{width:14px;height:14px;transition:transform .2s}
.link:hover svg{transform:translateX(3px)}

/* shared: glow-border card */
.gcard{position:relative;background:linear-gradient(var(--card),var(--card)) padding-box,linear-gradient(140deg,rgba(255,90,43,.75),rgba(255,255,255,.08) 35%,rgba(255,255,255,.05) 70%,rgba(255,90,43,.35)) border-box;border:1px solid transparent;border-radius:var(--r)}
.streaks{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.streaks i{position:absolute;height:2px;width:60%;background:linear-gradient(90deg,transparent,rgba(255,90,43,.9),transparent);filter:blur(1px);transform:rotate(-24deg);opacity:.55}
.streaks i::after{content:"";position:absolute;inset:-8px 0;background:inherit;filter:blur(14px);opacity:.8}

/* reveal on scroll */
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1)}
.rv.in{opacity:1;transform:none}

/* header */
.hdr{position:sticky;top:0;z-index:50;transition:background .3s,border-color .3s;border-bottom:1px solid transparent}
.hdr.stuck{background:rgba(11,11,11,.8);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-color:var(--line)}
.hdr .wrap{display:flex;align-items:center;gap:26px;height:72px}
.logo img{height:34px;width:auto}
.nav{display:flex;gap:28px;margin-left:auto;font-size:14px;font-weight:500;color:#d9d6d1}
.nav a{position:relative;padding:6px 0}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--red);transform:scaleX(0);transition:transform .25s;transform-origin:left}
.nav a:hover{color:#fff}.nav a:hover::after{transform:scaleX(1)}
.burger{display:none;width:42px;height:42px;border-radius:10px;border:1px solid var(--line2);place-items:center}
@media (max-width:960px){
  .nav{display:none}.burger{display:grid}.hdr .btn{margin-left:auto}
  .hdr .wrap{height:62px;gap:10px}.logo img{height:26px}
}
.sheet{position:fixed;inset:0;z-index:90;background:var(--bg);padding:84px var(--pad) 30px;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .45s cubic-bezier(.7,0,.2,1)}
.sheet.open{transform:none}
.sheet a.big{font-size:30px;font-weight:700;letter-spacing:-.02em;padding:14px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}
.sheet a.big svg{width:20px;height:20px;color:var(--red)}
.sheet .x{position:absolute;top:10px;right:var(--pad);width:42px;height:42px;border-radius:10px;border:1px solid var(--line2);display:grid;place-items:center}
.sheet .btn{margin-top:auto}

/* hero */
.hero{position:relative;overflow:hidden;padding:clamp(20px,5vw,56px) 0 0}
.hero::before{content:"";position:absolute;right:-10%;top:-10%;width:900px;height:900px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,77,31,.28),transparent 70%);pointer-events:none}
.hero .streaks i:nth-child(1){top:18%;right:-15%;width:55%}
.hero .streaks i:nth-child(2){top:62%;right:-20%;width:45%;opacity:.35}
.hero .streaks i:nth-child(3){top:88%;left:-20%;width:40%;opacity:.3}
.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:24px;align-items:center;position:relative}
.pill{display:inline-flex;align-items:center;gap:10px;height:34px;padding:0 14px 0 10px;border-radius:99px;background:rgba(255,255,255,.05);border:1px solid var(--line2);font-size:12.5px;font-weight:500;color:#e6e3de}
.pill .pulse{width:8px;height:8px;border-radius:50%;background:var(--ember);box-shadow:0 0 0 0 var(--glow);animation:pulse 2s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 9px rgba(255,77,31,0)}100%{box-shadow:0 0 0 0 rgba(255,77,31,0)}}
.hero h1{font-size:clamp(32px,4.5vw,58px);font-weight:800;letter-spacing:-.03em;line-height:1.02;margin-top:18px}
.hero h1 .ln{display:block;overflow:hidden;padding-bottom:.04em}
@media (min-width:961px){.hero h1 .ln{white-space:nowrap}}
.hero h1 .ln>span{display:block;transform:translateY(105%);animation:up .9s cubic-bezier(.2,.8,.2,1) forwards}
.hero h1 .ln:nth-child(2)>span{animation-delay:.08s}.hero h1 .ln:nth-child(3)>span{animation-delay:.16s}
@keyframes up{to{transform:none}}
.hero .lead{color:#cfcbc5;font-size:16px;max-width:48ch;margin:18px 0 0}
.ctas{display:flex;gap:10px;margin-top:26px;flex-wrap:wrap}
.badges{display:flex;align-items:center;gap:12px;margin-top:28px}
.badges a{flex:0 0 auto;transition:transform .2s}
.badges a:hover{transform:translateY(-2px)}
.badges img{height:40px;width:auto}
.badges .snap{height:44px}
.active{margin-top:16px;font-size:12.5px;color:var(--mute);display:flex;flex-wrap:wrap;gap:4px 14px}
.active b{color:var(--ember);font-weight:600}
.fade-in{opacity:0;animation:fin .9s ease .35s forwards}
.fade-in.d2{animation-delay:.5s}.fade-in.d3{animation-delay:.65s}
@keyframes fin{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

.art{position:relative;width:100%;max-width:560px;aspect-ratio:509/414;margin-left:auto}
.art .glow{position:absolute;left:18%;top:20%;width:60%;height:70%;border-radius:50%;background:radial-gradient(closest-side,rgba(255,77,31,.55),transparent);filter:blur(10px)}
.art .ring{position:absolute;left:50%;top:92%;width:74%;aspect-ratio:3.2;transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(255,90,43,.45);box-shadow:0 0 40px rgba(255,77,31,.35),inset 0 0 30px rgba(255,77,31,.2)}
.art .p{position:absolute;will-change:transform}
.art .p img{width:100%;height:auto;animation:float 6s ease-in-out infinite}
.art .p:nth-of-type(odd) img{animation-duration:7.5s}
.art .p.chip img{animation:bob 5s ease-in-out infinite}
@keyframes float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-14px) rotate(4deg)}}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.art .p{opacity:0;animation:pop .8s cubic-bezier(.34,1.5,.64,1) forwards}
@keyframes pop{from{opacity:0;transform:scale(.4) translateY(30px)}to{opacity:1;transform:none}}
.stat-float{position:absolute;z-index:3;padding:12px 16px;border-radius:14px;background:rgba(22,22,22,.78);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--line2);box-shadow:0 20px 40px -10px rgba(0,0,0,.6);font-size:12px;color:#cfcbc5;line-height:1.3;animation:bob 7s ease-in-out infinite}
.stat-float b{display:block;font-size:22px;font-weight:800;color:#fff;letter-spacing:-.02em}
.stat-float b em{font-style:normal;color:var(--ember)}
.sf1{left:-4%;bottom:10%}.sf2{right:-2%;top:2%;animation-delay:-3s}

.ticker{margin-top:clamp(28px,5vw,56px);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#050505}
.ticker-h{text-align:center;font-size:13px;font-weight:600;color:var(--ember);padding-top:18px}
.mq{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.mq-t{display:flex;align-items:center;width:max-content;animation:mq 38s linear infinite}
.mq:hover .mq-t{animation-play-state:paused}
.mq-t.rev{animation-direction:reverse}
@keyframes mq{to{transform:translateX(-50%)}}
.clients .mq-t{gap:64px;padding:20px 32px 24px}
.clients img{height:30px;width:auto;opacity:.95}
.clients img.tall{height:38px}

.stats{display:grid;grid-template-columns:repeat(4,1fr)}
.st{display:flex;gap:14px;align-items:flex-start;padding:26px 20px;position:relative}
.st+.st::before{content:"";position:absolute;left:0;top:24px;bottom:24px;width:1px;background:linear-gradient(transparent,var(--line2),transparent)}
.st .ic{flex:0 0 40px;height:40px;border-radius:10px;display:grid;place-items:center;background:rgba(255,77,31,.1);border:1px solid rgba(255,77,31,.35);color:var(--ember)}
.st .ic svg{width:20px;height:20px}
.st .n{font-size:clamp(24px,2.8vw,34px);font-weight:800;letter-spacing:-.03em;line-height:1;color:var(--ember)}
.st .l{font-size:13px;color:#cfcbc5;margin-top:6px}

@media (max-width:960px){
  .hero-grid{grid-template-columns:1fr}
  .art{max-width:380px;margin:12px auto 0;order:3}
  .hero .lead{font-size:15px}
  .ctas .btn{flex:1}
  .badges{overflow-x:auto;scrollbar-width:none;margin-right:calc(var(--pad)*-1);padding-right:var(--pad)}
  .badges::-webkit-scrollbar{display:none}
  .badges img{height:34px}.badges .snap{height:38px}
  .sf1{left:0;bottom:4%}.sf2{right:0;top:0}
  .stat-float{padding:9px 12px}.stat-float b{font-size:18px}
  .stats{grid-template-columns:1fr 1fr}
  .st{padding:18px 8px 18px 0;gap:10px}
  .st:nth-child(even){padding-left:14px}
  .st:nth-child(3)::before{display:none}
  .st:nth-child(n+3){border-top:1px solid var(--line)}
  .st .ic{flex-basis:34px;height:34px}
  .clients .mq-t{gap:44px}.clients img{height:22px}.clients img.tall{height:30px}
}

/* sections */
.sec{padding:clamp(56px,8vw,104px) 0;position:relative}
.light{background:var(--light);color:var(--ink)}
.dark2{background:#050505}
.head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:clamp(22px,3.5vw,40px)}

/* horizontal swipe rows (mobile) */
.swipe{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 calc(var(--pad)*-1);padding:4px var(--pad) 6px;scroll-padding:0 var(--pad);overscroll-behavior-x:contain}
.swipe::-webkit-scrollbar{display:none}
.swipe>*{scroll-snap-align:start;flex:0 0 auto}
.dots{display:flex;justify-content:center;gap:6px;margin-top:16px}
.dots i{width:6px;height:6px;border-radius:99px;background:rgba(127,127,127,.35);transition:width .3s,background .3s}
.dots i.on{width:22px;background:var(--red)}
.arrows{display:flex;gap:8px}
.arrows button{width:46px;height:46px;border-radius:50%;border:1px solid var(--line2);display:grid;place-items:center;transition:background .2s,border-color .2s}
.arrows button:hover{background:var(--red);border-color:var(--red)}
.arrows svg{width:16px;height:16px}
@media (max-width:960px){.arrows{display:none}.case .vis img{max-height:24px}.case .vis .logos{gap:12px}.case .vis{height:124px}}

/* about */
.about{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(24px,5vw,64px);align-items:center}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.pil{background:#fff;border-radius:16px;padding:20px;border:1px solid var(--light2);transition:transform .25s,box-shadow .25s}
.pil:hover{transform:translateY(-4px);box-shadow:0 20px 40px -20px rgba(221,59,38,.35)}
.pil .ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:rgba(221,59,38,.08);color:var(--red);margin-bottom:16px}
.pil .ic svg{width:22px;height:22px}
.pil h3{font-size:16px;margin-bottom:6px}
.pil p{margin:0;font-size:13.5px;color:var(--mute2);line-height:1.5}
@media (max-width:960px){
  .about{grid-template-columns:1fr}
  .pillars{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 calc(var(--pad)*-1);padding:4px var(--pad);scroll-padding:0 var(--pad)}
  .pillars::-webkit-scrollbar{display:none}
  .pil{flex:0 0 72%;scroll-snap-align:start;align-self:flex-start}
}

/* platforms */
.plats{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.pl{height:62px;border-radius:12px;background:var(--card);border:1px solid var(--line);display:grid;place-items:center;padding:0 16px;transition:border-color .25s,background .25s,transform .25s}
.pl:hover{border-color:rgba(255,90,43,.6);background:var(--card2);transform:translateY(-2px)}
.pl img{max-height:26px;max-width:100%;width:auto}
.plats-m{display:none}
@media (max-width:960px){
  .plats{display:none}.plats-m{display:block}
  .plats-m .mq-t{gap:10px;padding:5px 0}
  .plats-m .pl{width:140px;height:56px}
  .plats-m .mq-t{animation-duration:30s}
}

/* press */
.press{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.pr{background:#fff;border:1px solid rgba(221,59,38,.35);border-radius:16px;padding:20px;display:flex;flex-direction:column;min-height:228px;transition:transform .25s,box-shadow .25s}
.pr:hover{transform:translateY(-4px);box-shadow:0 22px 40px -22px rgba(221,59,38,.5)}
.pr .src{font-size:12px;font-weight:700;color:var(--red);letter-spacing:.02em}
.pr h3{font-size:16px;line-height:1.35;margin:12px 0 auto;font-weight:600;letter-spacing:-.01em}
.pr .meta{font-size:12px;color:var(--mute2);margin:18px 0 8px}
@media (max-width:960px){.press{display:flex}.press .pr{flex:0 0 76%}}

/* services */
.svc-sec{overflow:hidden}
.svc-sec .streaks i:nth-child(1){top:8%;left:-20%;width:50%;opacity:.35}
.svc-sec .streaks i:nth-child(2){bottom:10%;right:-18%;width:50%;opacity:.35}
.tabs{display:none}
.panels{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px;position:relative}
.panel{padding:24px;display:flex;flex-direction:column;overflow:hidden;min-height:460px}
.panel::before{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,77,31,.3),transparent);pointer-events:none}
.p-top{display:flex;gap:14px;align-items:flex-start;position:relative;z-index:1}
.p-top .ic{flex:0 0 46px;height:46px;border-radius:12px;display:grid;place-items:center;background:rgba(255,77,31,.12);border:1px solid rgba(255,77,31,.4);color:var(--ember)}
.p-top .ic svg{width:22px;height:22px}
.panel h3{font-size:21px}
.panel .cnt{display:inline-block;margin-top:6px;font-size:11.5px;font-weight:600;color:var(--ember);background:rgba(255,77,31,.1);padding:3px 9px;border-radius:99px}
.panel .desc{color:var(--mute);font-size:13.5px;margin:14px 0 22px;max-width:56%;position:relative;z-index:2}
.rows{margin-top:auto;display:grid;gap:8px;position:relative;z-index:2}
.panel.wide .rows{grid-template-columns:1fr 1fr}
.row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;padding:8px 10px 8px 14px;line-height:1.25;border-radius:10px;background:rgba(28,28,28,.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--line);font-size:13.5px;font-weight:600;transition:background .2s,border-color .2s,padding .2s}
.row .ar{flex:0 0 26px;height:26px;border-radius:7px;display:grid;place-items:center;background:rgba(255,77,31,.14);color:var(--ember);transition:background .2s,color .2s,transform .2s}
.row .ar svg{width:13px;height:13px}
.row:hover{background:rgba(52,22,14,.95);border-color:rgba(255,90,43,.55);padding-left:18px}
.row:hover .ar{background:var(--red);color:#fff;transform:rotate(-45deg)}
/* phone mockups */
.phone{position:absolute;right:-10px;top:84px;width:150px;aspect-ratio:9/18.5;border-radius:26px;background:#0a0a0a;border:5px solid #262626;box-shadow:0 30px 60px -20px rgba(0,0,0,.8),0 0 0 1px rgba(255,255,255,.06),0 0 60px -10px var(--glow);transform:rotate(-8deg);overflow:hidden;z-index:1;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.panel:hover .phone{transform:rotate(-4deg) translateY(-10px)}
.phone::before{content:"";position:absolute;top:6px;left:50%;width:44px;height:12px;border-radius:99px;background:#000;transform:translateX(-50%);z-index:3}
.scr{position:absolute;inset:0;padding:26px 9px 9px;display:flex;flex-direction:column;gap:7px}
.sk{height:6px;border-radius:9px;background:rgba(255,255,255,.14)}
.sk.w5{width:50%}.sk.w7{width:70%}.sk.w3{width:32%}
.ad-h{display:flex;align-items:center;gap:6px}
.ad-h i{width:18px;height:18px;border-radius:50%;background:var(--red)}
.ad-h span{flex:1;display:grid;gap:3px}
.ad-img{flex:1;border-radius:10px;background:radial-gradient(circle at 50% 40%,#3a1208,#140806 70%);display:grid;place-items:center;position:relative;overflow:hidden}
.ad-img img{width:62%;animation:bob 4s ease-in-out infinite}
.ad-cta{height:22px;border-radius:6px;background:var(--red);display:grid;place-items:center}
.ad-cta i{width:40%;height:5px;border-radius:9px;background:rgba(255,255,255,.85)}
.grid9{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin-top:4px}
.grid9 b{aspect-ratio:1;border-radius:4px;display:grid;place-items:center;background:linear-gradient(135deg,#2a0f09,#1a1a1a)}
.grid9 b:nth-child(3n+1){background:linear-gradient(135deg,var(--red),#7a1c0f)}
.grid9 b img{width:64%}
.prof{display:flex;align-items:center;gap:8px}
.prof i{width:30px;height:30px;border-radius:50%;background:conic-gradient(var(--ember),#ffb199,var(--ember));padding:2px}
.prof i::after{content:"";display:block;width:100%;height:100%;border-radius:50%;background:#1a1a1a}
.notif{background:rgba(255,255,255,.08);border-radius:9px;padding:7px;display:flex;gap:6px;align-items:center;animation:slidein 6s ease-in-out infinite}
.notif:nth-child(2){animation-delay:.3s}.notif:nth-child(3){animation-delay:.6s}
.notif>i{flex:0 0 18px;height:18px;border-radius:5px;background:var(--red)}
.notif span{flex:1;display:grid;gap:3px}
@keyframes slidein{0%,8%{opacity:0;transform:translateY(-8px)}16%,85%{opacity:1;transform:none}100%{opacity:0}}
.serp{margin-top:6px;border-radius:9px;background:rgba(255,255,255,.05);padding:8px;display:grid;gap:4px}
.serp .t{height:6px;width:75%;border-radius:9px;background:var(--ember)}
.bars{display:flex;align-items:flex-end;gap:4px;height:44px;margin-top:auto;padding:0 2px}
.bars i{flex:1;border-radius:3px 3px 0 0;background:linear-gradient(var(--ember),var(--red));transform-origin:bottom;animation:grow 3s ease-in-out infinite alternate}
.bars i:nth-child(1){height:30%}.bars i:nth-child(2){height:45%;animation-delay:.2s}.bars i:nth-child(3){height:55%;animation-delay:.4s}.bars i:nth-child(4){height:72%;animation-delay:.6s}.bars i:nth-child(5){height:92%;animation-delay:.8s}
@keyframes grow{from{transform:scaleY(.55)}to{transform:scaleY(1)}}
@media (max-width:960px){
  .tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:0 calc(var(--pad)*-1) 14px;padding:0 var(--pad)}
  .tabs::-webkit-scrollbar{display:none}
  .tabs button{flex:0 0 auto;height:40px;padding:0 16px;border-radius:99px;border:1px solid var(--line2);font-size:13px;font-weight:600;color:#cfcbc5;transition:background .25s,color .25s,border-color .25s}
  .tabs button.on{background:var(--red);border-color:var(--red);color:#fff}
  .panels{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 calc(var(--pad)*-1);padding:2px var(--pad) 6px;scroll-padding:0 var(--pad)}
  .panels::-webkit-scrollbar{display:none}
  .panel{flex:0 0 86%;scroll-snap-align:start;min-height:430px;padding:20px}
  .panel.wide .rows{grid-template-columns:1fr}
  .phone{width:118px;right:-14px;top:96px}
  .panel .desc{max-width:62%}
}

/* verticals */
.verts{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.vt{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:18px 16px;background:#fff;border-radius:14px;border:1px solid var(--light2);font-weight:600;font-size:14px;line-height:1.3;transition:transform .25s,border-color .25s}
.vt:hover{transform:translateY(-3px);border-color:rgba(221,59,38,.45)}
.vt img{height:34px;width:auto}
@media (max-width:960px){.verts{display:flex}.verts .vt{flex:0 0 42%}}

/* global */
.glob{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(20px,4vw,50px);align-items:center}
.map{position:relative}
.map img{width:100%;height:auto;opacity:.95}
.map .scan{position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,90,43,.22),transparent);width:18%;animation:scan 6s linear infinite;mix-blend-mode:screen;-webkit-mask:url(../img/map.webp) no-repeat;mask:url(../img/map.webp) no-repeat}
@keyframes scan{from{left:-20%}to{left:100%}}
.gstats{display:flex;gap:28px;margin-top:26px}
.gstats b{display:block;font-size:28px;font-weight:800;color:var(--ember);letter-spacing:-.02em;line-height:1}
.gstats span{font-size:12.5px;color:var(--mute)}
@media (max-width:960px){.glob{grid-template-columns:1fr}.map{margin:0 -8px}}

/* growth system */
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;position:relative}
.stp{background:#fff;border:1px solid rgba(221,59,38,.35);border-radius:16px;padding:18px;position:relative}
.stp .top{display:flex;justify-content:space-between;align-items:center}
.stp .no{font-size:12px;font-weight:700;color:var(--red)}
.stp .ic{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;border:1.5px solid var(--red);color:var(--red);transition:background .3s,color .3s}
.stp .ic svg{width:18px;height:18px}
.stp.lit .ic{background:var(--red);color:#fff}
.stp h3{font-size:18px;margin:16px 0 6px}
.stp p{margin:0;font-size:13px;color:var(--mute2)}
.stp:not(:last-child)::after{content:"";position:absolute;right:-12px;top:38px;width:12px;height:2px;background:var(--red);z-index:1}
.track{height:3px;background:var(--light2);border-radius:3px;margin-top:22px;overflow:hidden}
.track i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--red),var(--ember));transition:width 2.2s cubic-bezier(.4,0,.2,1)}
.track.go i{width:100%}
@media (max-width:960px){.steps{display:flex}.steps .stp{flex:0 0 64%}.stp:not(:last-child)::after{display:none}.track{display:none}}

/* proof */
.proof{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(24px,4vw,56px);align-items:center;padding:clamp(22px,4vw,44px);overflow:hidden}
.proof::before{content:"";position:absolute;left:-100px;bottom:-140px;width:360px;height:360px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,77,31,.28),transparent)}
.proof .src-logo{height:30px;width:auto;margin-bottom:16px}
.proof h2{font-size:clamp(22px,2.8vw,32px)}
.proof blockquote{margin:16px 0 0;padding-left:14px;border-left:2px solid var(--red);font-size:16px;color:#e6e3de}
.proof cite{display:block;margin-top:6px;font-style:normal;font-size:12.5px;color:var(--mute)}
.pnums{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;position:relative}
.pn{border-radius:14px;padding:18px 14px;background:rgba(255,255,255,.035);border:1px solid var(--line)}
.pn b{display:block;font-size:clamp(28px,3.4vw,42px);font-weight:800;letter-spacing:-.03em;line-height:1;color:var(--ember)}
.pn span{display:block;margin-top:8px;font-size:12.5px;color:#cfcbc5;line-height:1.35}
.fine{font-size:11.5px;color:var(--mute);margin-top:12px}
@media (max-width:960px){.proof{grid-template-columns:1fr}.pnums{gap:8px}.pn{padding:14px 10px}.pn span{font-size:11.5px}}

/* cases */
.case{width:min(372px,84vw);display:flex;flex-direction:column;overflow:hidden;transition:transform .3s}
.case:hover{transform:translateY(-4px)}
.case .vis{height:150px;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 70% 30%,rgba(255,77,31,.35),transparent 60%),linear-gradient(160deg,#1f1f1f,#101010);border-bottom:1px solid var(--line);overflow:hidden}
.case .vis .logos{display:flex;gap:18px;align-items:center}
.case .vis img{max-height:34px;width:auto}
.case .vis .ic-big{height:70px}
.case .vis .us{font-size:62px;font-weight:800;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1.5px var(--ember)}
.case .body{padding:20px;display:flex;flex-direction:column;flex:1}
.case .tag{font-size:11.5px;font-weight:700;color:var(--ember);letter-spacing:.03em}
.case h3{font-size:19px;margin:10px 0 8px;line-height:1.2}
.case p{margin:0;color:var(--mute);font-size:13.5px}
.case .go{margin-top:auto;padding-top:18px;display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:600}
.case .go i{width:38px;height:38px;border-radius:50%;background:var(--red);display:grid;place-items:center;transition:transform .25s}
.case .go i svg{width:15px;height:15px}
.case:hover .go i{transform:rotate(-45deg)}

/* insights */
.ins{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.post{display:flex;flex-direction:column;background:#fff;border-radius:16px;overflow:hidden;border:1px solid var(--light2);transition:transform .25s,box-shadow .25s}
.post:hover{transform:translateY(-4px);box-shadow:0 22px 40px -22px rgba(0,0,0,.35)}
.post .th{height:150px;background:radial-gradient(circle at 75% 25%,rgba(255,77,31,.45),transparent 55%),linear-gradient(160deg,#1c1c1c,#0c0c0c);display:grid;place-items:center;position:relative}
.post .th img{max-height:40px;width:auto}
.post .th .tag{position:absolute;left:14px;top:14px;font-size:11px;font-weight:700;background:var(--red);color:#fff;padding:4px 9px;border-radius:6px}
.post .bd{padding:18px}
.post h3{font-size:16.5px;line-height:1.3}
.post .link{margin-top:14px}
@media (max-width:960px){.ins{display:flex}.ins .post{flex:0 0 78%}}

/* faq */
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
.qa{border-bottom:1px solid var(--line)}
.qa button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:14px;text-align:left;padding:17px 0;font-size:14.5px;font-weight:600}
.qa .pm{flex:0 0 26px;height:26px;border-radius:8px;border:1px solid rgba(255,90,43,.5);color:var(--ember);display:grid;place-items:center;transition:transform .3s,background .3s,color .3s}
.qa .pm svg{width:12px;height:12px}
.qa.open .pm{transform:rotate(45deg);background:var(--red);color:#fff;border-color:var(--red)}
.qa .ans{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}
.qa.open .ans{grid-template-rows:1fr}
.qa .ans>div{overflow:hidden}
.qa .ans p{margin:0 0 18px;color:var(--mute);font-size:14px}
@media (max-width:960px){.faq-grid{grid-template-columns:1fr}}

/* cta */
.cta{position:relative;overflow:hidden;background:radial-gradient(circle at 85% 50%,#ff6a3d,transparent 45%),linear-gradient(100deg,#b82a14,var(--red) 55%,#f04a2e)}
.cta-in{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center;padding-top:clamp(40px,6vw,72px);padding-bottom:clamp(40px,6vw,72px);position:relative;z-index:1}
.cta h2{font-size:clamp(30px,4.4vw,52px);font-weight:800;letter-spacing:-.03em}
.cta p{margin:12px 0 0;color:rgba(255,255,255,.9);max-width:46ch}
.cta form{display:flex;flex-direction:column;gap:8px;background:rgba(0,0,0,.18);padding:8px;border-radius:14px;border:1px solid rgba(255,255,255,.2)}
.cta input{flex:1;min-width:0;height:50px;border:0;border-radius:10px;padding:0 14px;font:inherit;font-size:15px;background:#fff;color:#111}
.btn-dark{background:#0b0b0b;color:#fff}.btn-dark:hover{background:#000}
.cta .or{font-size:13px;margin-top:10px;color:rgba(255,255,255,.85)}
.cta .or a{text-decoration:underline;text-underline-offset:3px}
.cta .deco{position:absolute;right:4%;top:12%;width:130px;transform:rotate(14deg);opacity:.9;filter:drop-shadow(0 30px 40px rgba(0,0,0,.35));animation:bob 5s ease-in-out infinite;pointer-events:none}
@media (max-width:960px){.cta-in{grid-template-columns:1fr}.cta .deco{width:120px;right:-20px;top:20%;opacity:.35}}
@media (min-width:961px){.cta-in{padding-right:190px}}

/* footer */
.ftr{background:#050505;padding:56px 0 calc(34px + env(safe-area-inset-bottom,0px));font-size:13.5px;color:var(--mute)}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px}
.ftr .logo img{height:30px}
.ftr .fh{margin:0 0 12px;color:var(--ember);font-size:13px;font-weight:600}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ftr a:hover{color:#fff}
.soc{display:flex;gap:10px;margin-top:16px}
.soc a{width:38px;height:38px;border-radius:10px;border:1px solid var(--line2);display:grid;place-items:center}
.soc a:hover{background:var(--red);border-color:var(--red);color:#fff}
.soc svg{width:16px;height:16px}
.fbot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:40px;padding-top:18px;border-top:1px solid var(--line);font-size:12px}
@media (max-width:960px){.fgrid{grid-template-columns:1fr 1fr}.fgrid>div:first-child{grid-column:1/-1}.ftr{padding-bottom:110px}}

/* mobile dock */
.dock{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:40;display:none;gap:8px;padding:8px;border-radius:16px;background:rgba(20,20,20,.88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--line2);box-shadow:0 20px 40px rgba(0,0,0,.5);transform:translateY(150%);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.dock.show{transform:none}
.dock .btn{flex:1;height:46px}
.dock .ml{flex:0 0 46px;height:46px;border-radius:12px;border:1px solid var(--line2);display:grid;place-items:center}
.dock .ml svg{width:18px;height:18px}
@media (max-width:960px){.dock{display:flex}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .rv,.fade-in,.art .p{opacity:1!important;transform:none!important}
  .hero h1 .ln>span{transform:none}
}

/* ===== v3 additions ===== */
.strip{background:var(--red);color:#fff;font-size:13px;font-weight:600;position:relative;z-index:60}
.strip .wrap{display:flex;align-items:center;justify-content:center;gap:14px;min-height:40px;padding-right:48px}
.strip a{text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.strip .x2{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:32px;height:32px;border-radius:8px;display:grid;place-items:center}
.strip .x2:hover{background:rgba(0,0,0,.18)}
@media (max-width:600px){.strip{font-size:12px}.strip .wrap{justify-content:flex-start;gap:10px}.strip .long{display:none}}

/* hero stage with creative reel */
.stage{position:relative;width:100%;max-width:520px;margin-left:auto;display:grid;place-items:center;padding:18px 0 26px}
.stage .glow{position:absolute;left:15%;top:12%;width:70%;height:76%;border-radius:50%;background:radial-gradient(closest-side,rgba(255,77,31,.5),transparent);filter:blur(12px)}
.stage .ring{position:absolute;left:50%;bottom:0;width:78%;aspect-ratio:3.6;transform:translateX(-50%);border-radius:50%;border:1px solid rgba(255,90,43,.45);box-shadow:0 0 40px rgba(255,77,31,.35),inset 0 0 30px rgba(255,77,31,.2)}
.fl{position:absolute;z-index:3;width:74px;opacity:0;animation:pop .8s cubic-bezier(.34,1.5,.64,1) forwards;transition:transform .4s ease-out;pointer-events:none}
.fl img{width:100%;animation:float 6.5s ease-in-out infinite}
.fl:nth-of-type(even) img{animation-duration:8s;animation-delay:-2s}
.rphone{position:relative;z-index:2;width:min(292px,70vw);aspect-ratio:9/19;border-radius:42px;background:#050505;border:8px solid #202020;box-shadow:0 40px 80px -24px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.07),0 0 90px -20px var(--glow);overflow:hidden;touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:pointer;opacity:0;animation:pop .9s cubic-bezier(.34,1.4,.64,1) .2s forwards}
.rphone::before{content:"";position:absolute;top:9px;left:50%;width:74px;height:20px;border-radius:99px;background:#000;transform:translateX(-50%);z-index:6}
.rbars{position:absolute;top:38px;left:12px;right:12px;display:flex;gap:4px;z-index:6}
.rbars i{flex:1;height:3px;background:rgba(255,255,255,.28);border-radius:3px;overflow:hidden}
.rbars b{display:block;height:100%;width:0;background:#fff}
.rbars i.done b{width:100%}
.rbars i.on b{animation:fillbar var(--dur,3.6s) linear forwards}
.rphone.paused .rbars i.on b{animation-play-state:paused}
@keyframes fillbar{to{width:100%}}
.rhead{position:absolute;top:50px;left:12px;right:12px;z-index:6;display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600}
.rhead i{width:26px;height:26px;border-radius:50%;background:var(--red) center/60% no-repeat;border:2px solid rgba(255,255,255,.8)}
.rhead em{font-style:normal;font-weight:500;color:rgba(255,255,255,.7);font-size:11px}
.slide{position:absolute;inset:0;margin:0;opacity:0;transform:scale(1.05);transition:opacity .45s ease,transform .7s ease}
.slide.on{opacity:1;transform:none}
.slide .ph{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:90px 22px 110px;text-align:center;background:var(--g)}
.slide .ph img{width:56%;animation:bob 4s ease-in-out infinite;filter:drop-shadow(0 20px 30px rgba(0,0,0,.45))}
.slide .ph strong{font-size:24px;font-weight:800;letter-spacing:-.02em;line-height:1.05}
.slide .ph .play{width:54px;height:54px;border-radius:50%;background:rgba(255,255,255,.2);display:grid;place-items:center;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:pulse 2s infinite}
.slide .ph .play::after{content:"";margin-left:4px;border-left:15px solid #fff;border-top:10px solid transparent;border-bottom:10px solid transparent}
.slide .ph .split{display:grid;grid-template-columns:1fr 1fr;gap:6px;width:100%}
.slide .ph .split b{aspect-ratio:3/4;border-radius:12px;background:rgba(0,0,0,.25);display:grid;place-items:center}
.slide .ph .split b img{width:70%}
.slide .real{position:absolute;inset:0;z-index:1}
.slide .real .bg{position:absolute;inset:-24px;width:calc(100% + 48px);height:calc(100% + 48px);max-width:none;object-fit:cover;filter:blur(20px) brightness(.5)}
.slide .real .fg{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.rside{position:absolute;right:10px;bottom:92px;z-index:6;display:grid;gap:16px;justify-items:center}
.rside svg{width:26px;height:26px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5))}
.rside .liked{color:var(--ember);animation:likepop .5s ease}
@keyframes likepop{50%{transform:scale(1.35)}}
.rcap{position:absolute;left:0;right:0;bottom:0;z-index:6;padding:46px 14px 16px;background:linear-gradient(transparent,rgba(0,0,0,.88));display:flex;justify-content:space-between;align-items:flex-end;gap:10px}
.rcap small{display:block;font-size:10.5px;font-weight:700;color:var(--ember);letter-spacing:.04em}
.rcap span{display:block;font-size:15px;font-weight:700;line-height:1.2}
.rcap a{flex:0 0 auto;font-size:12px;font-weight:600;padding:8px 11px;border-radius:9px;background:var(--red)}
.rhint{position:absolute;bottom:-4px;left:50%;transform:translateX(-50%);z-index:4;font-size:11.5px;color:var(--mute);white-space:nowrap;display:flex;gap:6px;align-items:center}
.rhint i{width:6px;height:6px;border-radius:50%;background:var(--ember);animation:pulse 2s infinite}
@media (max-width:960px){
  .stage{max-width:380px;margin:6px auto 0;order:3;padding-bottom:30px}
  .fl{width:56px}
  .rphone{width:min(250px,66vw);border-width:7px;border-radius:36px}
  .hero .active{display:none}
  .stage .sf1{display:none}
}
@media (min-width:961px){#pnext{display:none!important}}

/* plan builder */
.planner{display:grid;grid-template-columns:1.1fr .9fr;overflow:hidden}
.pq{padding:clamp(20px,3vw,32px);position:relative}
.pres{padding:clamp(20px,3vw,32px);background:linear-gradient(160deg,rgba(255,77,31,.1),rgba(255,77,31,.02));border-left:1px solid var(--line);display:flex;flex-direction:column}
.pprog{display:flex;gap:6px;margin-bottom:20px}
.pprog i{flex:1;height:4px;border-radius:4px;background:var(--line2);transition:background .3s}
.pprog i.on{background:var(--red)}
.pstep{display:none}
.pstep.on{display:block;animation:fin .45s ease both}
.pstep .q{font-size:12px;font-weight:700;color:var(--ember);letter-spacing:.03em}
.pstep h3{font-size:clamp(19px,2vw,23px);margin:6px 0 16px}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opt{min-height:46px;padding:8px 15px;border-radius:12px;border:1px solid var(--line2);background:rgba(255,255,255,.03);font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:9px;text-align:left;transition:background .2s,border-color .2s,transform .15s}
.opt:hover{border-color:rgba(255,90,43,.6)}
.opt:active{transform:scale(.97)}
.opt[aria-pressed="true"]{background:var(--red);border-color:var(--red)}
.opt img{height:22px;width:auto}
.opt[aria-pressed="true"] img{filter:brightness(0) invert(1)}
.pnav{display:flex;justify-content:space-between;align-items:center;margin-top:22px;gap:10px}
.pnav .back{font-size:14px;font-weight:600;color:var(--mute);padding:10px 0}
.pnav .back:hover{color:#fff}
.pnav .back[hidden]{display:block;visibility:hidden}
.pres h3{font-size:19px}
.pres .lbl{font-size:12px;font-weight:700;color:var(--ember);letter-spacing:.03em;margin-bottom:6px}
.pres .sel{font-size:13px;color:var(--mute);margin:6px 0 0;min-height:20px}
.plist{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:8px;counter-reset:pl}
.plist li{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:11px;background:rgba(255,255,255,.04);border:1px solid var(--line);font-size:14px;font-weight:600;animation:fin .4s ease both}
.plist li::before{counter-increment:pl;content:counter(pl);flex:0 0 24px;height:24px;border-radius:50%;background:var(--red);display:grid;place-items:center;font-size:12px}
.plist li a{flex:1;display:flex;justify-content:space-between;align-items:center;gap:8px}
.plist li a svg{width:14px;height:14px;color:var(--ember)}
.plist li em{font-style:normal;font-weight:500;font-size:12px;color:var(--mute);margin-left:auto}
.pempty{color:var(--mute);font-size:14px;margin:16px 0 0;padding:16px;border:1px dashed var(--line2);border-radius:12px}
.pcase{margin-top:14px;font-size:13px;color:var(--mute)}
.pcase a{color:var(--ember);font-weight:600}
.pacts{display:flex;gap:8px;margin-top:auto;padding-top:20px;flex-wrap:wrap}
.pacts .btn{flex:1}
@media (max-width:960px){.planner{grid-template-columns:1fr}.pres{border-left:0;border-top:1px solid var(--line)}}

/* growth system: interactive tabs */
.gs{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.gtab{position:relative;overflow:hidden;text-align:left;background:#fff;border:1px solid rgba(221,59,38,.3);border-radius:14px;padding:14px;color:var(--ink);transition:background .3s,color .3s,border-color .3s}
.gtab .top{display:flex;justify-content:space-between;align-items:center}
.gtab .no{font-size:12px;font-weight:700;color:var(--red)}
.gtab .ic{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;border:1.5px solid var(--red);color:var(--red);transition:background .3s,color .3s}
.gtab .ic svg{width:17px;height:17px}
.gtab h3{font-size:17px;margin-top:12px}
.gtab .pb{position:absolute;left:0;bottom:0;height:3px;width:0;background:var(--ember)}
.gtab.on{background:#141414;color:#fff;border-color:#141414}
.gtab.on .ic{background:var(--red);color:#fff;border-color:var(--red)}
.gtab.on .pb{animation:fillbar var(--dur,4.5s) linear forwards}
.gs.manual .gtab.on .pb{animation:none;width:100%}
.gdet{margin-top:12px;background:#fff;border:1px solid var(--light2);border-radius:16px;padding:clamp(18px,2.6vw,28px);display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:center;min-height:150px}
.gdet .t{font-size:clamp(20px,2.2vw,26px);font-weight:700;letter-spacing:-.02em;line-height:1.15}
.gdet p{margin:8px 0 0;color:var(--mute2);font-size:14.5px}
.gdet .svcs{display:flex;flex-wrap:wrap;gap:8px}
.gdet .svcs a,.gdet .svcs span{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border-radius:10px;background:var(--light);border:1px solid var(--light2);font-size:13.5px;font-weight:600;transition:border-color .2s,background .2s}
.gdet .svcs a:hover{border-color:var(--red);background:#fff}
.gdet .svcs a svg{width:13px;height:13px;color:var(--red)}
.gdet .lbl{font-size:12px;font-weight:700;color:var(--red);margin-bottom:10px}
.gdet>div{animation:fin .4s ease both}
@media (max-width:960px){
  .gs{display:flex;overflow-x:auto;scrollbar-width:none;margin:0 calc(var(--pad)*-1);padding:2px var(--pad);scroll-padding:0 var(--pad);scroll-snap-type:x mandatory}
  .gs::-webkit-scrollbar{display:none}
  .gtab{flex:0 0 36%;scroll-snap-align:start;padding:12px}
  .gtab h3{font-size:15px}
  .gdet{grid-template-columns:1fr;gap:16px}
}

/* markets: verticals + map */
.mkts{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(22px,4vw,56px);align-items:center}
.mkts>*{min-width:0}
.vgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:24px}
.vchip{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;background:var(--card);border:1px solid var(--line);font-size:14px;font-weight:600;line-height:1.25;transition:border-color .25s,transform .25s}
.vchip:hover{border-color:rgba(255,90,43,.6);transform:translateY(-2px)}
.vchip img{height:28px;width:34px;object-fit:contain;flex:0 0 34px}
@media (max-width:960px){
  .mkts{grid-template-columns:1fr}
  .vgrid{display:flex;overflow-x:auto;scrollbar-width:none;margin:22px calc(var(--pad)*-1) 0;padding:0 var(--pad);scroll-padding:0 var(--pad);scroll-snap-type:x mandatory}
  .vgrid::-webkit-scrollbar{display:none}
  .vchip{flex:0 0 auto;scroll-snap-align:start}
}

/* team + press */
.team{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:clamp(36px,5vw,56px)}
.tm{background:#fff;border:1px solid var(--light2);border-radius:18px;padding:20px;display:flex;gap:16px;align-items:center;transition:transform .25s,box-shadow .25s}
.tm:hover{transform:translateY(-3px);box-shadow:0 20px 40px -24px rgba(221,59,38,.45)}
.av{flex:0 0 76px;height:76px;border-radius:50%;background:linear-gradient(135deg,var(--red),#7a1c0f);display:grid;place-items:center;color:#fff;font-weight:800;font-size:24px;letter-spacing:-.02em;overflow:hidden;box-shadow:0 0 0 3px #fff,0 0 0 5px rgba(221,59,38,.35)}
.av img{width:100%;height:100%;object-fit:cover}
.tm h3{font-size:17px}
.tm .role{font-size:13px;font-weight:600;color:var(--red);margin-top:2px}
.tm p{margin:6px 0 0;font-size:13px;color:var(--mute2);line-height:1.45}
.tm.spec .av{background:#141414}
.tm.spec .av svg{width:32px;height:32px;color:var(--ember)}
.subhead{font-size:15px;font-weight:700;margin:0 0 14px;display:flex;justify-content:space-between;align-items:center}
@media (max-width:960px){
  .team{display:flex;overflow-x:auto;scrollbar-width:none;margin-left:calc(var(--pad)*-1);margin-right:calc(var(--pad)*-1);padding:4px var(--pad);scroll-padding:0 var(--pad);scroll-snap-type:x mandatory}
  .team::-webkit-scrollbar{display:none}
  .tm{flex:0 0 82%;scroll-snap-align:start}
}

/* faq extras */
.seo-more{margin-top:26px;border:1px solid var(--line);border-radius:14px;padding:0 18px}
.seo-more summary{cursor:pointer;list-style:none;padding:16px 0;font-size:14px;font-weight:600;color:var(--mute);display:flex;justify-content:space-between}
.seo-more summary::-webkit-details-marker{display:none}
.seo-more summary::after{content:"+";color:var(--ember);font-size:18px;line-height:1}
.seo-more[open] summary::after{content:"\2212"}
.seo-more h4{margin:14px 0 4px;font-size:14px;color:#e6e3de}
.seo-more p{margin:0 0 8px;font-size:13.5px;color:var(--mute)}
.seo-more .in{padding-bottom:16px}

/* cta: SBC card */
.sbc{margin-top:14px;display:flex;align-items:center;gap:14px;padding:14px;border-radius:14px;background:#0b0b0b;border:1px solid rgba(255,255,255,.12)}
.sbc .d{flex:0 0 58px;height:58px;border-radius:12px;background:var(--red);display:grid;place-items:center;text-align:center;line-height:1.05;font-weight:800;font-size:18px}
.sbc .d small{display:block;font-size:10px;font-weight:600;opacity:.9}
.sbc b{display:block;font-size:14px}
.sbc span{font-size:12.5px;color:#cfcbc5}
.sbc a{margin-left:auto;flex:0 0 auto;font-size:13px;font-weight:600;padding:9px 12px;border-radius:9px;background:#fff;color:#111}


/* ===== inner pages ===== */
.nav a.on{color:#fff}.nav a.on::after{transform:scaleX(1)}
.phero{position:relative;overflow:hidden;padding:clamp(40px,7vw,90px) 0 clamp(36px,5vw,60px)}
.phero::before{content:"";position:absolute;right:-200px;top:-260px;width:760px;height:760px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,77,31,.26),transparent 70%);pointer-events:none}
.phero .streaks i:nth-child(1){top:30%;right:-18%;width:50%}
.phero .streaks i:nth-child(2){top:80%;left:-22%;width:40%;opacity:.3}
.phero h1{font-size:clamp(34px,5.4vw,66px);font-weight:800;letter-spacing:-.03em;line-height:1.02;margin-top:6px;max-width:16ch}
.phero .lead{color:#cfcbc5;font-size:16px;max-width:52ch;margin:16px 0 0}
.crumbs{font-size:12.5px;color:var(--mute);display:flex;gap:8px;align-items:center;margin-bottom:18px}
.crumbs a:hover{color:#fff}
.hstats{display:flex;gap:clamp(18px,4vw,44px);margin-top:28px;flex-wrap:wrap}
.hstats b{display:block;font-size:clamp(24px,3vw,34px);font-weight:800;letter-spacing:-.03em;color:var(--ember);line-height:1}
.hstats span{font-size:12.5px;color:#cfcbc5}

/* filter bar */
.fbar{display:flex;align-items:center;gap:10px;margin-bottom:22px;flex-wrap:wrap}
.chipsrow{display:flex;gap:8px;flex-wrap:wrap}
.fchip{height:40px;padding:0 15px;border-radius:99px;border:1px solid var(--line2);font-size:13.5px;font-weight:600;color:#d9d6d1;background:rgba(255,255,255,.03);transition:background .2s,border-color .2s,color .2s}
.fchip:hover{border-color:rgba(255,90,43,.6)}
.fchip[aria-pressed="true"]{background:var(--red);border-color:var(--red);color:#fff}
.light .fchip{border-color:#d8d2c9;color:#3b3833;background:#fff}
.light .fchip[aria-pressed="true"]{background:#141414;border-color:#141414;color:#fff}
.fcount{margin-left:auto;font-size:13px;color:var(--mute)}
.light .fcount{color:var(--mute2)}
.srch{position:relative;flex:0 1 300px}
.srch input{width:100%;height:44px;border-radius:12px;border:1px solid #d8d2c9;background:#fff;padding:0 14px 0 40px;font:inherit;font-size:14px;color:#111}
.srch input:focus{outline:2px solid var(--red);outline-offset:1px}
.srch svg{position:absolute;left:13px;top:50%;width:17px;height:17px;transform:translateY(-50%);color:var(--mute2)}
@media (max-width:960px){
  .fbar{flex-wrap:nowrap;flex-direction:column;align-items:stretch}
  .chipsrow{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 calc(var(--pad)*-1);padding:0 var(--pad)}
  .chipsrow::-webkit-scrollbar{display:none}
  .fchip{flex:0 0 auto}
  .srch{flex:1 1 auto}
  .fcount{margin-left:0}
}
.empty{padding:40px 20px;text-align:center;border:1px dashed #d8d2c9;border-radius:16px;color:var(--mute2)}
.empty b{display:block;color:var(--ink);font-size:17px;margin-bottom:6px}
.empty button{margin-top:14px}

/* cases grid */
.cgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.cgrid .case{width:auto}
.cgrid [hidden]{display:none!important}
@media (max-width:960px){.cgrid{grid-template-columns:1fr}.cgrid .case .vis{height:120px}}

/* insights */
.feat{display:grid;grid-template-columns:1.1fr .9fr;overflow:hidden;background:#141414;color:#fff;border-radius:22px;margin-bottom:clamp(30px,5vw,50px);transition:transform .3s}
.feat:hover{transform:translateY(-3px)}
.feat .th{min-height:300px;display:grid;place-items:center;position:relative;background:radial-gradient(circle at 70% 30%,rgba(255,77,31,.55),transparent 60%),linear-gradient(160deg,#222,#0b0b0b)}
.feat .th img{max-height:64px;width:auto}
.feat .bd{padding:clamp(22px,3.5vw,40px);display:flex;flex-direction:column;justify-content:center}
.feat .tag{align-self:flex-start;font-size:11px;font-weight:700;background:var(--red);color:#fff;padding:4px 9px;border-radius:6px}
.feat h2{font-size:clamp(22px,2.6vw,32px);margin:14px 0 10px;line-height:1.12}
.feat p{margin:0;color:#cfcbc5;font-size:14.5px;max-width:52ch}
.feat .link{margin-top:18px;color:var(--ember)}
@media (max-width:960px){.feat{grid-template-columns:1fr}.feat .th{min-height:170px}}
.igrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.igrid [hidden]{display:none!important}
.igrid .post p{margin:8px 0 0;font-size:13.5px;color:var(--mute2);line-height:1.5}
.igrid .post .bd{display:flex;flex-direction:column;flex:1}
.igrid .post .link{margin-top:auto;padding-top:14px}
.post .th .ic-big{width:52px;height:52px;color:var(--ember)}
@media (max-width:960px){.igrid{grid-template-columns:1fr}.igrid .post .th{height:120px}}

/* contact */
.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(24px,5vw,64px);align-items:start;position:relative}
.contact>*{min-width:0}
.cinfo{display:grid;gap:10px;margin-top:26px}
.ci{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:14px;background:var(--card);border:1px solid var(--line);transition:border-color .2s}
a.ci:hover{border-color:rgba(255,90,43,.6)}
.ci .ic{flex:0 0 42px;height:42px;border-radius:11px;display:grid;place-items:center;background:rgba(255,77,31,.12);border:1px solid rgba(255,77,31,.4);color:var(--ember)}
.ci .ic svg{width:19px;height:19px}
.ci small{display:block;font-size:12px;color:var(--mute)}
.ci b{font-size:14.5px;font-weight:600}
.contact .badges{margin-top:22px}
.fcard{padding:clamp(20px,3vw,32px)}
.fcard h2{font-size:clamp(22px,2.4vw,28px)}
.fcard .sub{margin-top:6px}
.plan-note{margin:18px 0 0;padding:12px 14px;border-radius:12px;background:rgba(255,77,31,.1);border:1px solid rgba(255,90,43,.45);font-size:13.5px}
.plan-note b{color:var(--ember);display:block;font-size:12px;letter-spacing:.03em;margin-bottom:2px}
.fgrid2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}
.fld{display:flex;flex-direction:column;gap:6px}
.fld.full{grid-column:1/-1}
.fld label,.fld .lb{font-size:13px;font-weight:600;color:#e6e3de}
.fld label em{font-style:normal;color:var(--mute);font-weight:500}
.fld input,.fld select,.fld textarea{width:100%;border-radius:11px;border:1px solid var(--line2);background:#0e0e0e;color:#fff;font:inherit;font-size:15px;padding:13px 14px;transition:border-color .2s}
.fld textarea{min-height:120px;resize:vertical}
.fld select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#9c9893 50%),linear-gradient(135deg,#9c9893 50%,transparent 50%);background-position:calc(100% - 18px) 55%,calc(100% - 13px) 55%;background-size:5px 5px;background-repeat:no-repeat}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;border-color:var(--ember);box-shadow:0 0 0 3px rgba(255,77,31,.18)}
.fld .err{font-size:12.5px;color:#ff8a6b;min-height:0}
.fld.bad input,.fld.bad textarea{border-color:#ff6a4d}
.svc-chips{display:flex;flex-wrap:wrap;gap:8px}
.svc-chips button{height:40px;padding:0 13px;border-radius:10px;border:1px solid var(--line2);background:rgba(255,255,255,.03);font-size:13px;font-weight:600;color:#d9d6d1;transition:background .2s,border-color .2s}
.svc-chips button[aria-pressed="true"]{background:var(--red);border-color:var(--red);color:#fff}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:#cfcbc5}
.consent input{width:18px;height:18px;flex:0 0 18px;margin-top:2px;accent-color:var(--red);padding:0}
.consent a{text-decoration:underline}
.fsubmit{margin-top:6px;width:100%}
.fdone{text-align:center;padding:40px 10px}
.fdone .tick{width:74px;height:74px;border-radius:50%;background:var(--red);display:grid;place-items:center;margin:0 auto 18px;animation:pop .6s cubic-bezier(.34,1.5,.64,1)}
.fdone .tick svg{width:34px;height:34px}
.fdone h2{font-size:26px}
.fdone p{color:#cfcbc5;margin:10px auto 0;max-width:40ch}
.fdone .btn{margin-top:22px}
@media (max-width:960px){.contact{grid-template-columns:1fr}.fgrid2{grid-template-columns:1fr}}

/* mini logo band for inner pages */
.band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#050505}
.phero .wrap{position:relative}
.hvis{position:absolute;right:var(--pad);top:50%;width:400px;height:300px;transform:translateY(-46%);pointer-events:none}
.hc{position:absolute;padding:16px 18px;border-radius:16px;background:rgba(24,24,24,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--line2);box-shadow:0 30px 60px -20px rgba(0,0,0,.8),0 0 50px -20px var(--glow);animation:bob 6s ease-in-out infinite;opacity:0}
.hc.in2{opacity:1;transition:opacity .8s}
.hc img{height:26px;width:auto}
.hc b{display:block;font-size:30px;font-weight:800;letter-spacing:-.03em;color:var(--ember);line-height:1;margin-top:10px}
.hc span{display:block;font-size:12px;color:#cfcbc5;margin-top:4px}
.hc.tok{padding:0;width:74px;height:74px;border-radius:50%;display:grid;place-items:center}
.hc.tok img{height:30px}
@media (max-width:1100px){.hvis{display:none}}
@media (max-width:960px){
  .contact{display:flex;flex-direction:column;gap:22px}
  .contact>div:first-child{display:contents}
  .contact .fcard{order:2}.contact .cinfo{order:3;margin-top:0}.contact .badges{order:4;margin-top:0}
}

/* ===== v4: spacing rhythm ===== */
:root{--sec:clamp(56px,7vw,96px)}
.sec{padding:var(--sec) 0}
.sec.tt{padding-top:calc(var(--sec)*.4)}
.cta-in{padding-top:var(--sec)!important;padding-bottom:var(--sec)!important}
.head{margin-bottom:clamp(20px,3vw,36px)}

/* client logo strip: normalised sizes */
.clients .mq-t{gap:clamp(36px,4vw,60px);padding:22px 30px 26px;animation-play-state:paused}
.clients .mq-t.run{animation-play-state:running}
.clients .mq:hover .mq-t{animation-play-state:paused}
.lg{flex:0 0 auto;display:grid;place-items:center;height:48px}
.lg img{display:block;width:auto;height:34px;max-width:160px;object-fit:contain;opacity:.95}
.clients img.tall{height:38px}

/* partner badges: crisp */
.badges img{image-rendering:auto}

/* interactive markets map */
.mapw{background:linear-gradient(160deg,#141414,#0c0c0c);border:1px solid var(--line);border-radius:20px;padding:16px;display:grid;gap:12px}
.mtabs{display:flex;gap:6px;background:rgba(255,255,255,.04);border:1px solid var(--line);padding:4px;border-radius:12px}
.mtabs button{flex:1;height:38px;border-radius:9px;font-size:13px;font-weight:600;color:#cfcbc5;transition:background .25s,color .25s}
.mtabs button.on{background:var(--red);color:#fff}
.mcanvas{position:relative}
.mcanvas svg{display:block;width:100%;height:auto;max-height:300px}
.mcanvas circle{fill:#3a3835;transition:fill .5s ease,opacity .5s}
.mcanvas circle.hot{fill:var(--ember)}
.mcanvas .arc{fill:none;stroke:var(--ember);stroke-width:1.6;stroke-linecap:round;stroke-dasharray:4 5;opacity:.9;animation:dash 1.2s linear infinite}
@keyframes dash{to{stroke-dashoffset:-18}}
.mcanvas .pinc{fill:#fff}
.mcanvas .pinr{fill:none;stroke:var(--ember);stroke-width:2;transform-box:fill-box;transform-origin:center;animation:ringp 2s ease-out infinite}
@keyframes ringp{from{transform:scale(.6);opacity:1}to{transform:scale(2.6);opacity:0}}
.mcanvas .lbl{font:600 11px Poppins,sans-serif;fill:#fff}
.mcanvas .lblbg{fill:rgba(12,12,12,.85);stroke:rgba(255,255,255,.18)}
.minfo{display:flex;gap:14px;align-items:flex-start;padding:4px 6px 2px}
.minfo b{display:block;font-size:15px}
.minfo p{margin:3px 0 0;font-size:13.5px;color:#cfcbc5;line-height:1.45}
.minfo .n{flex:0 0 auto;font-size:26px;font-weight:800;letter-spacing:-.03em;color:var(--ember);line-height:1;min-width:64px}

/* team count avatar */
.av.count{background:#141414;color:var(--ember);font-size:22px;letter-spacing:-.03em}

/* plan builder: multi-select */
.pstep .hint{font-size:12.5px;color:var(--mute);margin:-8px 0 14px}
.opt[aria-pressed="true"]::after{content:"";width:16px;height:16px;border-radius:50%;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23DD3B26' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/11px no-repeat;margin-left:2px}
.pnav .btn[disabled]{opacity:.4;pointer-events:none}
@media (min-width:961px){#pnext{display:inline-flex!important}}

/* reel: video slides */
.slide video.fg,.slide .real video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.slide .real video.fit{object-fit:contain}

/* ===== service pages ===== */
.shero{position:relative;overflow:hidden;padding:clamp(28px,5vw,64px) 0 var(--sec)}
.shero::before{content:"";position:absolute;right:-180px;top:-220px;width:760px;height:760px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,77,31,.26),transparent 70%);pointer-events:none}
.shero .streaks i:nth-child(1){top:24%;right:-18%;width:50%}
.shero .streaks i:nth-child(2){top:86%;left:-22%;width:40%;opacity:.3}
.sgrid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,4vw,56px);align-items:center;position:relative}
.sgrid>*{min-width:0}
.shero h1{font-size:clamp(34px,5vw,60px);font-weight:800;letter-spacing:-.03em;line-height:1.03;margin-top:6px}
.shero .lead{color:#cfcbc5;font-size:16px;max-width:54ch;margin:16px 0 0}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:18px}
.tags span{font-size:12px;font-weight:600;color:#cfcbc5;padding:5px 10px;border-radius:99px;border:1px solid var(--line2);background:rgba(255,255,255,.03)}
.logorow{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.logorow .pl{height:48px;min-width:0;padding:0 14px}
.logorow .pl img{max-height:22px}
@media (max-width:960px){.sgrid{grid-template-columns:1fr}.logorow{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-right:calc(var(--pad)*-1);padding-right:var(--pad)}.logorow::-webkit-scrollbar{display:none}.logorow .pl{flex:0 0 auto}}

/* service hero visuals */
.svis{position:relative;display:grid;place-items:center;min-height:420px}
.svis .glow{position:absolute;left:12%;top:10%;width:76%;height:80%;border-radius:50%;background:radial-gradient(closest-side,rgba(255,77,31,.45),transparent);filter:blur(12px)}
.svis .phone{position:relative;right:auto;top:auto;bottom:auto;width:230px;transform:rotate(-4deg);z-index:2}
.svis:hover .phone{transform:rotate(0) translateY(-6px)}
.svis .tok{position:absolute;z-index:3;width:66px;height:66px;border-radius:50%;display:grid;place-items:center;background:rgba(24,24,24,.85);border:1px solid var(--line2);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 20px 40px -14px rgba(0,0,0,.8);animation:bob 6s ease-in-out infinite}
.svis .tok img{max-width:40px;max-height:26px;width:auto}
.svis .tok:nth-of-type(2n){animation-delay:-2s}.svis .tok:nth-of-type(3n){animation-delay:-4s}
.svis .card{position:absolute;z-index:3;padding:12px 14px;border-radius:14px;background:rgba(24,24,24,.88);border:1px solid var(--line2);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 20px 40px -14px rgba(0,0,0,.8);font-size:12px;color:#cfcbc5;animation:bob 7s ease-in-out infinite}
.svis .card b{display:block;color:#fff;font-size:14px}
.svis .card i{font-style:normal;color:var(--ember);font-weight:700}
/* SERP */
.serpv{position:relative;z-index:2;width:min(360px,86vw);border-radius:16px;background:#101010;border:1px solid var(--line2);padding:14px;box-shadow:0 30px 60px -20px rgba(0,0,0,.8),0 0 60px -20px var(--glow)}
.serpv .bar{height:34px;border-radius:99px;background:#1c1c1c;border:1px solid var(--line);display:flex;align-items:center;gap:8px;padding:0 12px;font-size:12.5px;color:#cfcbc5}
.serpv .bar img{height:14px}
.serpv .res{margin-top:10px;padding:10px;border-radius:10px;background:rgba(255,255,255,.03);display:grid;gap:5px;transition:transform .6s cubic-bezier(.2,.8,.2,1),background .4s}
.serpv .res .u{font-size:10.5px;color:#9c9893}
.serpv .res .h{height:8px;border-radius:9px;background:#8ab4f8;width:70%}
.serpv .res.top{background:rgba(255,77,31,.12);border:1px solid rgba(255,90,43,.5)}
.serpv .res.top .h{background:var(--ember)}
.serpv .ad{font-size:10px;font-weight:700;color:#fff;background:#333;padding:1px 5px;border-radius:4px;margin-right:6px}
/* billboard */
.dooh{position:relative;z-index:2;width:min(380px,86vw)}
.dooh .scr{aspect-ratio:16/9;border-radius:10px;border:6px solid #222;background:radial-gradient(circle at 60% 40%,#ff6a3d,#b8300c 45%,#1a0703 85%);display:grid;grid-template-columns:1fr 1fr;align-items:center;overflow:hidden;box-shadow:0 30px 70px -20px rgba(0,0,0,.9),0 0 80px -20px var(--glow)}
.dooh .scr img{width:80%;justify-self:center;animation:bob 4s ease-in-out infinite}
.dooh .scr .txt{display:grid;gap:7px;padding-right:18px}
.dooh .scr .txt i{height:10px;border-radius:9px;background:rgba(255,255,255,.85)}
.dooh .scr .txt i:nth-child(2){width:70%;background:rgba(255,255,255,.5)}
.dooh .scr .txt i:nth-child(3){width:45%;height:16px;background:#fff;border-radius:5px}
.dooh .pole{width:14px;height:90px;margin:0 auto;background:linear-gradient(#2a2a2a,#111)}
/* funnel */
.funnel{position:relative;z-index:2;display:grid;gap:8px;width:min(340px,86vw)}
.funnel .st{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;background:rgba(24,24,24,.9);border:1px solid var(--line2);font-weight:600;font-size:14px;transition:border-color .4s,background .4s}
.funnel .st i{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:12px;background:rgba(255,77,31,.14);color:var(--ember)}
.funnel .st.on{border-color:var(--ember);background:rgba(255,77,31,.12)}
.funnel .st.on i{background:var(--red);color:#fff}
.funnel .st:nth-child(1){margin-right:0}.funnel .st:nth-child(2){margin:0 14px}.funnel .st:nth-child(3){margin:0 28px}.funnel .st:nth-child(4){margin:0 42px}
/* CRM journey */
.jrny{position:relative;z-index:2;display:grid;gap:10px;width:min(340px,86vw)}
.jrny .n{display:flex;gap:10px;align-items:center;padding:12px;border-radius:12px;background:rgba(24,24,24,.9);border:1px solid var(--line2);animation:slidein 7s ease-in-out infinite}
.jrny .n:nth-child(2){animation-delay:.4s;margin-left:24px}.jrny .n:nth-child(3){animation-delay:.8s;margin-left:48px}.jrny .n:nth-child(4){animation-delay:1.2s;margin-left:24px}
.jrny .n>i{flex:0 0 34px;height:34px;border-radius:10px;background:var(--red);display:grid;place-items:center}
.jrny .n>i svg{width:17px;height:17px;color:#fff}
.jrny .n b{font-size:13.5px}.jrny .n span{display:block;font-size:11.5px;color:#9c9893}

/* why cards */
.why{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.wc{padding:20px;border-radius:16px;background:#fff;border:1px solid var(--light2);transition:transform .25s,box-shadow .25s}
.wc:hover{transform:translateY(-4px);box-shadow:0 20px 40px -22px rgba(221,59,38,.45)}
.wc .ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:rgba(221,59,38,.08);color:var(--red);margin-bottom:14px}
.wc .ic svg{width:22px;height:22px}
.wc h3{font-size:16.5px;margin-bottom:8px}
.wc p{margin:0;font-size:13.5px;color:var(--mute2);line-height:1.5}
@media (max-width:960px){.why{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 calc(var(--pad)*-1);padding:4px var(--pad);scroll-padding:0 var(--pad)}.why::-webkit-scrollbar{display:none}.wc{flex:0 0 80%;scroll-snap-align:start}}

/* deliver tabs */
.dlv{display:grid;grid-template-columns:.8fr 1.2fr;gap:14px;align-items:stretch}
.dlv-tabs{display:grid;gap:8px;align-content:start}
.dlv-tabs button{display:flex;align-items:center;gap:12px;text-align:left;padding:15px 16px;border-radius:14px;border:1px solid var(--line);background:var(--card);font-size:15px;font-weight:600;color:#cfcbc5;transition:border-color .25s,background .25s,color .25s}
.dlv-tabs button .no{font-size:12px;font-weight:700;color:var(--ember);flex:0 0 22px}
.dlv-tabs button .pb{margin-left:auto;width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:rgba(255,77,31,.12);color:var(--ember);transition:transform .25s}
.dlv-tabs button .pb svg{width:13px;height:13px}
.dlv-tabs button.on{border-color:rgba(255,90,43,.7);background:linear-gradient(120deg,rgba(255,77,31,.16),rgba(255,77,31,.03));color:#fff}
.dlv-tabs button.on .pb{background:var(--red);color:#fff;transform:rotate(-45deg)}
.dlv-panel{padding:clamp(20px,3vw,34px);min-height:260px;overflow:hidden}
.dlv-panel .pane{display:none}
.dlv-panel .pane.on{display:block;animation:fin .45s ease both}
.dlv-panel .big{font-size:clamp(46px,6vw,76px);font-weight:800;letter-spacing:-.04em;line-height:.9;color:transparent;-webkit-text-stroke:1.5px rgba(255,90,43,.7)}
.dlv-panel h3{font-size:clamp(20px,2.2vw,26px);margin:14px 0 10px}
.dlv-panel p{margin:0 0 10px;color:#cfcbc5;font-size:14.5px;max-width:62ch}
@media (max-width:960px){
  .dlv{grid-template-columns:1fr}
  .dlv-tabs{display:flex;overflow-x:auto;scrollbar-width:none;margin:0 calc(var(--pad)*-1);padding:0 var(--pad);scroll-padding:0 var(--pad)}
  .dlv-tabs::-webkit-scrollbar{display:none}
  .dlv-tabs button{flex:0 0 auto;padding:11px 14px;font-size:13.5px}
  .dlv-tabs button .pb{display:none}
  .dlv-panel{min-height:0}
}

/* proof band */
.pband{display:grid;grid-template-columns:auto 1fr;gap:clamp(20px,4vw,56px);align-items:center;padding:clamp(22px,4vw,44px);overflow:hidden}
.pband .num{font-size:clamp(54px,8vw,104px);font-weight:800;letter-spacing:-.05em;line-height:.9;color:var(--ember)}
.pband .num small{display:block;font-size:13px;letter-spacing:0;font-weight:600;color:#cfcbc5;margin-top:10px;max-width:22ch;line-height:1.35}
.pband h2{font-size:clamp(22px,2.6vw,30px)}
.pband p{margin:10px 0 0;color:#cfcbc5;font-size:14.5px;max-width:62ch}
.pband .link{margin-top:14px}
@media (max-width:960px){.pband{grid-template-columns:1fr}}

/* format gallery (creative) */
.fmt{width:min(290px,76vw);border-radius:18px;overflow:hidden;background:var(--card);border:1px solid var(--line);display:flex;flex-direction:column}
.fmt .im{aspect-ratio:4/5;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 40%,#3a1208,#140806 70%);display:grid;place-items:center}
.fmt .im .ph{width:46%;animation:bob 5s ease-in-out infinite}
.fmt .im .real{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.fmt:hover .im .real{transform:scale(1.05)}
.fmt .bd{padding:16px}
.fmt h3{font-size:17px}
.fmt ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:6px}
.fmt li{font-size:13px;color:#cfcbc5;display:flex;gap:8px}
.fmt li::before{content:"";flex:0 0 6px;height:6px;margin-top:7px;border-radius:50%;background:var(--ember)}

/* SEO: phases + metrics + rules */
.phases{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.ph{padding:18px;border-radius:14px;background:#fff;border:1px solid rgba(221,59,38,.3);cursor:pointer;transition:background .3s,color .3s,border-color .3s;text-align:left;color:var(--ink)}
.ph .w{font-size:12px;font-weight:700;color:var(--red)}
.ph h3{font-size:17px;margin:8px 0 6px}
.ph p{margin:0;font-size:13px;color:var(--mute2)}
.ph.on{background:#141414;color:#fff;border-color:#141414}
.ph.on p{color:#cfcbc5}
@media (max-width:960px){.phases{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 calc(var(--pad)*-1);padding:2px var(--pad);scroll-padding:0 var(--pad)}.phases::-webkit-scrollbar{display:none}.ph{flex:0 0 72%;scroll-snap-align:start}}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.mt{padding:18px;border-radius:14px;background:var(--card);border:1px solid var(--line)}
.mt b{display:block;font-size:30px;font-weight:800;letter-spacing:-.03em;color:var(--ember)}
.mt span{font-size:13px;color:#cfcbc5}
@media (max-width:700px){.metrics{grid-template-columns:1fr 1fr}}
.rules{display:grid;grid-template-columns:1fr 1fr;gap:10px;counter-reset:r}
.rule{display:flex;gap:14px;align-items:flex-start;padding:16px;border-radius:14px;background:#fff;border:1px solid var(--light2);cursor:pointer;transition:border-color .25s,background .25s}
.rule .tk{flex:0 0 30px;height:30px;border-radius:50%;border:2px solid #d8d2c9;display:grid;place-items:center;transition:background .25s,border-color .25s}
.rule .tk svg{width:15px;height:15px;opacity:0;transition:opacity .25s;color:#fff}
.rule.ok{border-color:rgba(221,59,38,.5)}
.rule.ok .tk{background:var(--red);border-color:var(--red)}
.rule.ok .tk svg{opacity:1}
.rule b{display:block;font-size:15px}
.rule p{margin:4px 0 0;font-size:13px;color:var(--mute2)}
.rcount{font-size:13px;font-weight:600;color:var(--red)}
@media (max-width:960px){.rules{grid-template-columns:1fr}}

/* chips list (operators, markets) */
.pillrow{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.pillrow span{height:40px;display:inline-flex;align-items:center;padding:0 14px;border-radius:10px;background:var(--card);border:1px solid var(--line);font-size:13.5px;font-weight:600}
.light .pillrow span{background:#fff;border-color:var(--light2)}

/* quote band */
.qband{font-size:clamp(26px,4vw,48px);font-weight:800;letter-spacing:-.03em;line-height:1.1;max-width:22ch}
.qband em{font-style:normal;color:var(--ember)}

/* other services */
.osv{width:min(260px,72vw);padding:18px;border-radius:16px;background:var(--card);border:1px solid var(--line);display:flex;flex-direction:column;gap:8px;min-height:150px;transition:border-color .25s,transform .25s}
.osv:hover{border-color:rgba(255,90,43,.6);transform:translateY(-3px)}
.osv small{font-size:11.5px;font-weight:700;color:var(--ember);letter-spacing:.03em}
.osv b{font-size:17px}
.osv span{font-size:13px;color:var(--mute);margin-top:auto;display:flex;justify-content:space-between;align-items:center}
.osv span svg{width:15px;height:15px;color:var(--ember)}
.nav a.svc-on{color:#fff}
.cyc .cy{position:absolute;inset:0;opacity:0;transition:opacity .7s ease;background:radial-gradient(circle at 50% 40%,#3a1208,#140806 70%)}
.cyc .cy.on{opacity:1}
.cyc .cy img{width:100%;height:100%;object-fit:cover}
.rule{text-align:left;font:inherit;color:inherit}
.svis .tok{width:80px;height:80px}
.svis .tok img{max-width:58px;max-height:30px}
@media (max-width:960px){.svis{min-height:340px}.svis .phone{width:200px}.svis .tok{width:62px;height:62px}.svis .tok img{max-width:44px}}

/* ===== v5 ===== */
/* CRM: what we cover */
.cover{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.cv{position:relative;padding:22px;border-radius:18px;background:var(--card);border:1px solid var(--line);overflow:hidden;transition:border-color .3s,transform .3s}
.cv::after{content:"";position:absolute;right:-60px;top:-60px;width:170px;height:170px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,77,31,.35),transparent);opacity:0;transition:opacity .35s}
.cv:hover{border-color:rgba(255,90,43,.6);transform:translateY(-4px)}
.cv:hover::after{opacity:1}
.cv .ic{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:rgba(255,77,31,.12);border:1px solid rgba(255,77,31,.4);color:var(--ember);margin-bottom:16px}
.cv .ic svg{width:22px;height:22px}
.cv h3{font-size:18px;margin-bottom:8px}
.cv p{margin:0;font-size:14px;color:#cfcbc5;line-height:1.5;position:relative;z-index:1}
@media (max-width:960px){.cover{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 calc(var(--pad)*-1);padding:4px var(--pad);scroll-padding:0 var(--pad)}.cover::-webkit-scrollbar{display:none}.cv{flex:0 0 80%;scroll-snap-align:start}}

/* platform word-mark fallback + mono logos */
.pl .wm{font-weight:800;font-size:15px;letter-spacing:-.02em;color:#fff}
.pl img.mono{filter:brightness(0) invert(1)}

/* Creative: LP devices with endless scroll */
.lpgrid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(24px,4vw,56px);align-items:center}
.lpgrid>*{min-width:0}
.devices{position:relative;height:clamp(300px,34vw,420px);max-width:620px;margin-left:auto;width:100%}
.lap{position:absolute;left:0;top:4%;width:84%}
.lap-scr{position:relative;aspect-ratio:16/10;border-radius:14px 14px 0 0;border:9px solid #1b1b1b;border-bottom-width:12px;background:#000;overflow:hidden;box-shadow:0 30px 60px -24px rgba(0,0,0,.55)}
.lap-base{height:14px;margin:0 -6%;border-radius:0 0 14px 14px;background:linear-gradient(#d9d6d1,#9f9b95);box-shadow:0 18px 30px -12px rgba(0,0,0,.4)}
.lap-base::before{content:"";display:block;width:18%;height:5px;margin:0 auto;border-radius:0 0 6px 6px;background:#8c8882}
.ph2{position:absolute;right:0;bottom:0;width:30%;aspect-ratio:9/19;border-radius:26px;border:6px solid #1b1b1b;background:#000;overflow:hidden;box-shadow:0 30px 60px -20px rgba(0,0,0,.6),0 0 0 1px #3a3a3a;z-index:2}
.ph2::before{content:"";position:absolute;top:5px;left:50%;width:36%;height:10px;border-radius:99px;background:#000;transform:translateX(-50%);z-index:3}
.ph2-scr{position:absolute;inset:0;overflow:hidden}
.lp-track{animation:lpscroll 22s linear infinite;will-change:transform}
.lp-track.m{animation-duration:18s}
.devices:hover .lp-track{animation-play-state:paused}
@keyframes lpscroll{to{transform:translateY(-50%)}}
.lap .lp-page{font-size:clamp(6.5px,.78vw,9.5px)}
.ph2 .lp-page{font-size:clamp(5.5px,.62vw,7.5px)}
.lp-page{background:radial-gradient(ellipse at 70% 10%,#3a0f07,#0a0a0a 55%);color:#fff;padding:1.6em 2em 3em;font-family:Poppins,sans-serif}
.lp-nav img{height:2.4em;width:auto}
.lp-hero{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:1em;margin-top:1.6em;padding:2em;border-radius:1.2em;background:radial-gradient(circle at 75% 50%,rgba(255,77,31,.35),transparent 60%),#150605}
.lp-hero h4{margin:0;font-size:3.2em;line-height:.95;font-weight:800;letter-spacing:-.02em}
.lp-hero h4 span{color:#ffd66b}
.lp-hero p,.lp-card p{margin:.6em 0 0;font-size:1.3em;color:#e9e6e1}
.lp-hero img{width:90%;justify-self:center;filter:drop-shadow(0 1em 1.5em rgba(0,0,0,.6))}
.lp-btn{display:inline-block;margin-top:1.1em;padding:.7em 1.8em;border-radius:.6em;background:linear-gradient(#ffe07a,#f3a51c);color:#1a1000;font-weight:800;font-size:1.3em;box-shadow:0 .4em 1em rgba(243,165,28,.35)}
.lp-card{margin-top:1.4em;padding:2em 1.4em;border-radius:1.4em;background:linear-gradient(160deg,#ff5a2b,#c9331a);text-align:center}
.lp-card h4{margin:0;font-size:3em;line-height:1;font-weight:800}
.lp-offer{text-align:center;margin:2.4em 0 0}
.lp-offer small{display:block;font-size:1.6em;font-weight:800;color:#ffd66b}
.lp-offer strong{display:block;font-size:2.4em;font-weight:800;line-height:1.1}
.lp-offer .gc{color:#ffd66b}.lp-offer .sc{color:#4be07a}
.lp-offer em{display:block;font-style:normal;font-size:1.2em;margin-top:.2em}
.lp-games{margin-top:2.4em;text-align:center}
.lp-games small{font-size:1.4em;font-weight:800}
.lp-games small span{color:#ffd66b}
.lp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8em;margin-top:1em}
.ph2 .lp-grid{grid-template-columns:1fr 1fr}
.lp-grid i{aspect-ratio:3/4;border-radius:.8em;display:grid;place-items:center;background:linear-gradient(160deg,hsl(var(--h) 70% 45%),hsl(var(--h) 60% 18%))}
.lp-grid i img{width:62%}
.lp-foot{margin-top:2.4em;display:grid;gap:.8em;justify-items:center}
.lp-foot span{display:block;width:60%;height:.8em;border-radius:1em;background:rgba(255,255,255,.12)}
@media (max-width:960px){.lpgrid{grid-template-columns:1fr}.devices{height:clamp(240px,62vw,380px);margin:8px auto 0}.lap .lp-page{font-size:clamp(5px,1.5vw,8px)}.ph2 .lp-page{font-size:clamp(4.5px,1.25vw,7px)}}

/* SEO guide */
.guide{display:grid;grid-template-columns:240px 1fr;gap:clamp(24px,4vw,56px);align-items:start}
.toc{position:sticky;top:96px;display:grid;gap:2px;padding:16px;border-radius:16px;background:#fff;border:1px solid var(--light2);max-height:calc(100vh - 120px);overflow:auto}
.toc b{font-size:12px;letter-spacing:.03em;color:var(--red);margin-bottom:8px}
.toc a{font-size:13px;line-height:1.35;color:var(--mute2);padding:7px 10px;border-radius:8px;border-left:2px solid transparent;transition:background .2s,color .2s,border-color .2s}
.toc a:hover{color:var(--ink);background:var(--light)}
.toc a.on{color:var(--ink);font-weight:600;border-left-color:var(--red);background:var(--light)}
.gtext{max-width:760px;min-width:0}
.chap{padding-bottom:clamp(28px,4vw,44px);margin-bottom:clamp(28px,4vw,44px);border-bottom:1px solid var(--light2);scroll-margin-top:96px}
.chap:last-child{border-bottom:0;margin-bottom:0}
.chap h2{font-size:clamp(22px,2.6vw,30px);margin-bottom:14px}
.chap h3{font-size:17px;margin:22px 0 8px;scroll-margin-top:96px}
.chap p{margin:0 0 12px;font-size:15.5px;line-height:1.7;color:#3b3833}
.chap ul,.chap ol{margin:0 0 14px;padding-left:20px;display:grid;gap:8px;font-size:15px;line-height:1.6;color:#3b3833}
.chap a{color:var(--red);text-decoration:underline;text-underline-offset:3px}
.chap .rules,.chap .phases,.chap .metrics{margin:16px 0}
.chap .rules{grid-template-columns:1fr}
.chap .rcount{margin:0 0 14px}
.metrics.lightm .mt{background:#141414}
@media (max-width:960px){
  .guide{grid-template-columns:1fr}
  .toc{position:relative;top:0;display:flex;overflow-x:auto;gap:6px;padding:0;background:none;border:0;max-height:none;scrollbar-width:none;margin:0 calc(var(--pad)*-1);padding:0 var(--pad)}
  .toc::-webkit-scrollbar{display:none}
  .toc b{display:none}
  .toc a{flex:0 0 auto;border:1px solid #d8d2c9;background:#fff;border-radius:99px;padding:8px 13px;white-space:nowrap}
  .toc a.on{background:#141414;color:#fff;border-color:#141414}
  .chap p{font-size:15px}
}

/* mega menu */
.nav .mm-btn{display:inline-flex;align-items:center;gap:6px;font:inherit;color:inherit;padding:6px 0;position:relative}
.nav .mm-btn svg{width:10px;height:10px;transition:transform .25s}
.nav .mm-btn[aria-expanded="true"]{color:#fff}
.nav .mm-btn[aria-expanded="true"] svg{transform:rotate(180deg)}
.nav .mm-btn.on{color:#fff}
.mega{position:absolute;left:0;right:0;top:100%;z-index:49;padding:0 var(--pad);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .25s,transform .25s,visibility .25s}
.mega.open{opacity:1;visibility:visible;transform:none}
.mega-in{max-width:var(--wrap);margin:8px auto 0;display:grid;grid-template-columns:repeat(3,1fr) 1.1fr;gap:10px;padding:14px;border-radius:20px;background:rgba(18,18,18,.97);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid var(--line2);box-shadow:0 40px 80px -30px rgba(0,0,0,.9)}
.mcol{padding:10px}
.mcol .mh{margin:0 0 8px;font-size:12px;font-weight:700;color:var(--ember);letter-spacing:.03em;display:flex;align-items:center;gap:8px}
.mcol .mh svg{width:16px;height:16px}
.mcol a{display:block;padding:10px 12px;border-radius:10px;transition:background .2s}
.mcol a b{display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:600;color:#fff}
.mcol a b svg{width:13px;height:13px;color:var(--ember);opacity:0;transform:translateX(-4px);transition:opacity .2s,transform .2s}
.mcol a span{display:block;font-size:12px;color:var(--mute);margin-top:2px;line-height:1.35}
.mcol a:hover{background:rgba(255,255,255,.05)}
.mcol a:hover b svg{opacity:1;transform:none}
.mpromo{border-radius:14px;padding:18px;background:radial-gradient(circle at 80% 20%,rgba(255,77,31,.45),transparent 60%),#1a0f0c;border:1px solid rgba(255,90,43,.35);display:flex;flex-direction:column;gap:8px}
.mpromo small{font-size:12px;font-weight:700;color:var(--ember)}
.mpromo b{font-size:17px;line-height:1.25}
.mpromo p{margin:0;font-size:12.5px;color:#cfcbc5}
.mpromo .btn{margin-top:auto;height:40px;font-size:13.5px}
.sheet .sgroup{border-bottom:1px solid var(--line)}
.sheet .sgroup>button{width:100%;display:flex;justify-content:space-between;align-items:center;font-size:30px;font-weight:700;letter-spacing:-.02em;padding:14px 0;color:#fff}
.sheet .sgroup>button svg{width:18px;height:18px;color:var(--red);transition:transform .25s}
.sheet .sgroup.open>button svg{transform:rotate(180deg)}
.sheet .slist{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}
.sheet .sgroup.open .slist{grid-template-rows:1fr}
.sheet .slist>div{overflow:hidden}
.sheet .slist small{display:block;font-size:11.5px;font-weight:700;color:var(--ember);letter-spacing:.03em;margin:10px 0 4px}
.sheet .slist a{display:block;font-size:16px;font-weight:600;padding:7px 0;color:#e6e3de}
.sheet{overflow-y:auto}
@media (max-width:960px){.mega{display:none}}
.lap .lp-page{font-size:clamp(6px,.66vw,8.2px)}
.lp-hero img{width:68%}

/* ===== v6 ===== */
/* CTA email: bigger, cleaner focus */
.cta form{padding:10px;gap:10px;border-radius:18px}
.cta input{height:60px;font-size:17px;padding:0 20px;border-radius:12px;border:2px solid transparent;outline:none;transition:border-color .2s,box-shadow .2s}
.cta input::placeholder{color:#8a8680}
.cta input:focus{border-color:#141414;box-shadow:0 0 0 4px rgba(20,20,20,.18)}
.cta .btn-dark{height:60px;font-size:16px;border-radius:12px}
@media (max-width:600px){.cta input,.cta .btn-dark{height:56px}}

/* SEO guide: phases read in order (2x2 desktop, vertical timeline on mobile) */
.chap .phases{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0;padding:0;overflow:visible}
.chap .ph{flex:none}
.chap p{overflow-wrap:break-word}
@media (max-width:960px){
  .chap .phases{grid-template-columns:1fr;gap:0;position:relative;padding-left:22px}
  .chap .phases::before{content:"";position:absolute;left:6px;top:18px;bottom:18px;width:2px;background:rgba(221,59,38,.35);border-radius:2px}
  .chap .ph{position:relative;margin-bottom:10px;padding:16px}
  .chap .ph::before{content:"";position:absolute;left:-22px;top:20px;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--red)}
  .chap .ph.on::before{background:var(--red)}
}

/* reading progress */
.rprog{position:fixed;left:0;right:0;top:0;height:3px;z-index:70;pointer-events:none}
.rprog i{display:block;height:100%;width:100%;transform-origin:left;transform:scaleX(0);background:linear-gradient(90deg,var(--red),var(--ember))}

/* article */
.ahero h1{max-width:24ch;font-size:clamp(28px,4.2vw,50px)}
.ameta{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:16px;font-size:13px;color:var(--mute)}
.ameta span+span::before{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--ember);margin-right:18px;vertical-align:middle}
.acover{height:clamp(160px,22vw,260px);border-radius:20px;display:grid;place-items:center;gap:10px;align-content:center;margin-bottom:clamp(28px,4vw,48px);background:radial-gradient(circle at 70% 30%,rgba(255,77,31,.55),transparent 60%),linear-gradient(160deg,#1f1f1f,#0b0b0b)}
.acover img{height:clamp(56px,7vw,84px);width:auto}
.acover span{font-size:13px;font-weight:600;color:#cfcbc5}
.alead{font-size:18px!important;line-height:1.6!important;color:var(--ink)!important;font-weight:500;margin:0 0 28px!important}
.astats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0 18px}
.astats div{padding:16px;border-radius:14px;background:#141414}
.astats b{display:block;font-size:30px;font-weight:800;letter-spacing:-.03em;color:var(--ember);line-height:1}
.astats span{display:block;margin-top:8px;font-size:12.5px;color:#cfcbc5;line-height:1.35}
.checks{display:grid;gap:8px;margin:12px 0 16px}
.checks span{display:flex;gap:10px;align-items:center;font-weight:600;font-size:15px}
.checks svg{flex:0 0 22px;width:22px;height:22px;padding:4px;border-radius:50%;background:var(--red);color:#fff}
.share{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:14px;padding-top:14px;border-top:1px solid var(--light2)}
.share>span{font-size:12px;font-weight:700;color:var(--mute2);width:100%;margin-bottom:2px}
.share a,.share button{height:36px;min-width:36px;padding:0 10px;border-radius:9px;border:1px solid var(--light2);display:inline-flex;align-items:center;gap:6px;color:#3b3833;font-size:12.5px;font-weight:600;background:#fff}
.share a:hover,.share button:hover{border-color:var(--red);color:var(--red)}
.share svg{width:15px;height:15px}
.share em{font-style:normal}
@media (max-width:960px){.share{display:none}.astats{grid-template-columns:1fr}}

/* case study */
.cshero{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(24px,4vw,56px);align-items:end}
.cshero>*{min-width:0}
.cshero h1{max-width:18ch}
.glance{padding:22px}
.gl-h{display:block;font-size:12px;letter-spacing:.03em;color:var(--ember);margin-bottom:10px}
.glance dl{margin:0;display:grid}
.glance dl>div{display:grid;grid-template-columns:96px 1fr;gap:10px;padding:12px 0;border-top:1px solid var(--line)}
.glance dt{font-size:12.5px;color:var(--mute)}
.glance dd{margin:0;font-size:14px;font-weight:600}
.glance dd a{color:var(--ember)}
.gl-logos{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.gl-logos img{height:18px;width:auto}
.csplat{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.csp{background:#fff;border:1px solid var(--light2);border-radius:18px;padding:24px;display:flex;flex-direction:column;gap:14px}
.csp-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.csp-top img{height:26px;width:auto;background:#141414;padding:8px 12px;border-radius:10px;box-sizing:content-box}
.csp-top span{font-size:12px;font-weight:700;color:var(--red)}
.csp p{margin:0;font-size:15.5px;line-height:1.65;color:#3b3833}
.csp p a{color:var(--red);text-decoration:underline;text-underline-offset:3px}
.outc{margin-top:auto;display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:12px;background:var(--light);font-weight:600;font-size:14.5px}
.outc svg{flex:0 0 24px;width:24px;height:24px;padding:5px;border-radius:50%;background:var(--red);color:#fff}
.csq{margin-top:14px;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px;border-radius:18px;background:#141414;color:#fff}
.csq p{margin:0;max-width:60ch;color:#cfcbc5;font-size:15px}
@media (max-width:960px){.cshero,.csplat{grid-template-columns:1fr}.csq{flex-direction:column;align-items:flex-start}}

/* LP showcase: allow real screenshots inside the screens */
.lp-track img.lp-shot{display:block;width:100%;height:auto}
/* v7 */
.cta input{flex:0 0 auto}
.guide.one{grid-template-columns:1fr;max-width:820px;margin:0 auto}
.csimg{margin:18px 0;border-radius:16px;overflow:hidden;background:#141414}
.csimg img{width:100%;height:auto;display:block}
.pskel{display:grid;gap:14px}
.pskel i{display:block;height:14px;border-radius:8px;background:linear-gradient(90deg,#e6e1d9,#f3efe9,#e6e1d9);background-size:200% 100%;animation:sk 1.2s linear infinite}
@keyframes sk{to{background-position:-200% 0}}
.gtext img{max-width:100%;height:auto;border-radius:12px;margin:10px 0}
.gtext figure{margin:16px 0}
.gtext table{width:100%;border-collapse:collapse;font-size:14px;margin:14px 0;display:block;overflow-x:auto}
.gtext td,.gtext th{border:1px solid var(--light2);padding:8px 10px;text-align:left;vertical-align:top}
.gtext th{background:#fff}
.gtext h4{font-size:16px;margin:18px 0 6px}
.gtext blockquote{margin:16px 0;padding:12px 16px;border-left:3px solid var(--red);background:#fff;border-radius:0 12px 12px 0}
.gtext .wp-block-image,.gtext .aligncenter{text-align:center}
.pfail{padding:22px;border-radius:16px;background:#fff;border:1px dashed #d8d2c9}
.pfail p{margin:0 0 12px}
.acover.hasimg{padding:0;overflow:hidden}
.acover.hasimg img{width:100%;height:100%;object-fit:cover}
.post .th .ic-big{width:52px;height:52px;color:var(--ember)}
.ameta span:empty{display:none}
.scr.media{padding:0!important}
.scr.media img,.scr.media video,.dooh .scr.media img,.dooh .scr.media video{width:100%;height:100%;object-fit:cover;display:block}
.dooh .scr.media{display:block}
.csimg figcaption{padding:10px 14px;font-size:12.5px;color:#cfcbc5;background:#141414}
.checks span{align-items:flex-start;line-height:1.45}
.checks svg{margin-top:1px}
.acover > div img{max-width:44%}
/* v8: real creatives */
.fmt{width:min(260px,70vw)}
.fmt .im{aspect-ratio:9/16;background:#0b0b0b}
.fmt .im .real{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fmt:hover .im .real{transform:none}
.cyc .cy img{object-fit:cover}
.lp-track{animation-duration:30s}
.lp-track.m{animation-duration:24s}
.lp-track img.lp-shot{display:block;width:100%;height:auto;margin:0}
.slide .real video.fg{object-fit:cover}
.toc [data-ptoclinks]{display:contents}
/* v9 */
.scr.media{position:absolute}
.ad-ov{position:absolute;left:8px;right:8px;top:24px;display:flex;align-items:center;gap:7px;z-index:2;font-size:11px;font-weight:700;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.6)}
.ad-ov i{width:22px;height:22px;border-radius:50%;background:var(--red);border:2px solid rgba(255,255,255,.85);flex:0 0 22px}
.ad-ov em{display:block;font-style:normal;font-weight:500;font-size:10px;opacity:.85}
.pl img.nrm{max-height:none;max-width:none}
