
:root{
  --a:#6f92fb;--ad:#4a6cd8;--ag:rgba(111,146,251,.25);
  --dk:#06091a;--blk:#0d0d0d;
  --bd:#e5e8f0;--sf:#f6f8fc;--tn:#eef2ff;
  --tx:#1a1a2e;--mid:#58607a;--lt:#9098b0;
  --c1:#3b82f6;--c2:#8b5cf6;--c3:#06b6d4;--c4:#10b981;--c5:#f97316;--c6:#e11d48;--c7:#d97706;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{padding-top:0;font-family:'Poppins',sans-serif;background:#fff;color:var(--tx);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{text-decoration:none}

/* ── LAYOUT ── */
.wrap{max-width:1240px;margin:0 auto;padding:0 48px}
.sec{padding:100px 0}
.sec-sm{padding:68px 0}
/* multi-page site — no SPA routing */
.g2{display:grid;grid-template-columns:1fr 1fr;gap:32px}

/* ── EYEBROW ── */
.ey{display:inline-flex;align-items:center;gap:10px;font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--a);margin-bottom:20px}
.ey::before{content:'';display:block;width:32px;height:1.5px;background:var(--a)}
.ey-w{color:rgba(255,255,255,.5)}.ey-w::before{background:rgba(255,255,255,.3)}

/* ── BUTTONS ── */
.btn{display:inline-flex;align-items:center;gap:9px;padding:15px 38px;font-family:'Poppins',sans-serif;font-size:14px;font-weight:600;letter-spacing:.04em;cursor:pointer;transition:all .25s;border:none;text-decoration:none}
.btn-a{background:var(--a);color:#fff;position:relative;overflow:hidden}
.btn-a::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.16) 0%,transparent 55%)}
.btn-a:hover{background:var(--ad);transform:translateY(-2px);box-shadow:0 14px 36px rgba(111,146,251,.45)}
.btn-wh{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.28)}
.btn-wh:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.btn-ol{background:transparent;color:var(--a);border:1.5px solid var(--a)}
.btn-ol:hover{background:var(--a);color:#fff}

/* ── TOP BAR ── */
.topbar{background:var(--blk);height:40px;display:flex;align-items:center;position:fixed;top:0;left:0;right:0;z-index:999}
.topbar-in{max-width:1240px;margin:0 auto;padding:0 48px;display:flex;justify-content:space-between;align-items:center;width:100%}
.tb-contacts{display:flex;gap:28px}
.tb-c{display:flex;align-items:center;gap:6px;color:rgba(255,255,255,.5);font-size:12px;transition:color .2s}
.tb-c:hover{color:var(--a)}.tb-c .fl{font-size:13px}
.tb-right{display:flex;align-items:center;gap:16px}
.tb-tag{font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--a);border:1px solid rgba(111,146,251,.35);padding:3px 10px}

/* ── NAV ── */
nav{position:fixed;top:40px;left:0;right:0;z-index:998;background:rgba(255,255,255,.97);backdrop-filter:blur(18px);border-bottom:1px solid rgba(0,0,0,.07);transition:box-shadow .3s}
nav.up{box-shadow:0 4px 28px rgba(0,0,0,.09)}
.nav-in{max-width:1240px;margin:0 auto;padding:0 48px;height:70px;display:flex;align-items:center;justify-content:space-between}
.logo{font-family:'Poppins',sans-serif;font-size:22px;font-weight:800;color:var(--blk);letter-spacing:-.02em}
.logo span{color:var(--a)}
.nl{display:flex;align-items:center;gap:36px;list-style:none}
.nl a{font-size:14px;color:#555;font-weight:500;transition:color .18s}
.nl a:hover,.nl a.on{color:var(--a)}
.ham{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;padding:4px}
.ham span{display:block;width:24px;height:1.5px;background:var(--blk)}
.mob{display:none;flex-direction:column;background:#fff;border-bottom:1px solid var(--bd);padding:16px 24px 24px;position:fixed;top:110px;left:0;right:0;z-index:997;box-shadow:0 8px 32px rgba(0,0,0,.08)}
.mob.on{display:flex}
.mob a{padding:13px 0;font-size:16px;color:var(--tx);border-bottom:1px solid #f5f5f5;font-weight:500}
.mob a:hover{color:var(--a)}

/* ── HERO ── */
.hero{min-height:100vh;background:var(--dk);position:relative;display:flex;align-items:center;padding-top:110px;overflow:hidden}
#hcvs{position:absolute;inset:0;width:100%;height:100%}
.hglow{position:absolute;border-radius:50%;pointer-events:none}
.hg1{top:-20%;right:-15%;width:800px;height:800px;background:radial-gradient(circle,rgba(111,146,251,.14) 0%,transparent 65%)}
.hg2{bottom:-30%;left:-10%;width:500px;height:500px;background:radial-gradient(circle,rgba(111,146,251,.07) 0%,transparent 65%)}
.hero-wrap{position:relative;z-index:2;display:grid;grid-template-columns:1fr 460px;gap:72px;align-items:center;width:100%}
.hero-badge{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(111,146,251,.35);background:rgba(111,146,251,.08);padding:9px 18px;margin-bottom:36px;animation:fup .8s ease both}
.hb-dot{width:7px;height:7px;background:var(--a);border-radius:50%;animation:pls 2s infinite}
@keyframes pls{0%,100%{opacity:1;box-shadow:0 0 0 0 var(--ag)}50%{opacity:.5;box-shadow:0 0 0 6px transparent}}
.hero-badge span{font-size:12px;font-weight:500;color:rgba(255,255,255,.75);letter-spacing:.04em}
.h1{font-size:clamp(42px,5.5vw,80px);line-height:1.05;letter-spacing:-.03em;color:#fff;margin-bottom:28px;font-weight:800;animation:fup .8s .1s ease both;opacity:0}
.h1 em{color:var(--a);font-style:italic;font-weight:800}
.h1 .ln{display:block}
.hero-sub{font-size:17px;color:rgba(255,255,255,.5);line-height:1.75;max-width:500px;margin-bottom:44px;font-weight:300;animation:fup .8s .2s ease both;opacity:0}
.hero-acts{display:flex;gap:14px;flex-wrap:wrap;animation:fup .8s .3s ease both;opacity:0}
.hero-proof{display:flex;align-items:center;margin-top:56px;padding-top:48px;border-top:1px solid rgba(255,255,255,.09);animation:fup .8s .45s ease both;opacity:0;flex-wrap:wrap}
.hp-item{flex:1;text-align:center;padding:0 24px;min-width:80px}
.hp-item:first-child{padding-left:0;text-align:left}
.hp-num{font-size:32px;font-weight:800;color:#fff;line-height:1}
.hp-num span{color:var(--a)}
.hp-lbl{font-size:10px;color:rgba(255,255,255,.35);letter-spacing:.12em;text-transform:uppercase;margin-top:5px}
.hp-div{width:1px;height:44px;background:rgba(255,255,255,.1)}
@keyframes fup{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}

/* ── CIRCULAR INFOGRAPHIC ── */
.hmc-wrap{
  position:relative;width:440px;height:440px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  animation:fup .8s .35s ease both;opacity:0;
}
.hmc-ctr{
  width:148px;height:148px;border-radius:50%;
  background:linear-gradient(145deg,rgba(6,9,26,.95),rgba(20,30,70,.9));
  border:2px solid rgba(111,146,251,.55);
  box-shadow:0 0 48px rgba(111,146,251,.35),inset 0 0 32px rgba(111,146,251,.08);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  position:relative;z-index:2;text-align:center;gap:0;
}
.hmc-donein{font-size:9px;font-weight:700;color:rgba(255,255,255,.5);letter-spacing:.2em;text-transform:uppercase}
.hmc-eight{font-size:72px;font-weight:800;color:var(--a);line-height:.88}
.hmc-weeks{font-size:13px;font-weight:700;color:#fff;letter-spacing:.14em;text-transform:uppercase}
.hmc-stars{color:#f59e0b;font-size:11px;letter-spacing:3px;margin-top:5px}
.hmc-node{
  position:absolute;display:flex;flex-direction:column;gap:5px;
  z-index:3;width:110px;
}
.hmc-ico{
  width:52px;height:52px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  box-shadow:0 6px 20px rgba(0,0,0,.4);
}
.hmc-title{font-size:10px;font-weight:700;color:#fff;letter-spacing:.1em;line-height:1.3}
.hmc-desc{font-size:9.5px;color:rgba(255,255,255,.45);line-height:1.55;font-weight:300}

/* ── STATS ── */
.stats{background:var(--blk);padding:84px 0}
.sg{display:grid;grid-template-columns:repeat(4,1fr)}
.si{text-align:center;padding:40px 32px;border-right:1px solid rgba(255,255,255,.07)}
.si:last-child{border-right:none}
.si-n{font-size:clamp(52px,5.5vw,76px);font-weight:800;color:#fff;line-height:1;display:block}
.si-n span{color:var(--a)}
.si-l{font-size:12px;color:rgba(255,255,255,.35);letter-spacing:.14em;text-transform:uppercase;margin-top:10px;display:block}
.si-d{font-size:13px;color:rgba(255,255,255,.2);margin-top:8px;line-height:1.5;font-weight:300}

/* ── PROVOCATIONS ── */
.prov{padding:100px 0;background:#fff}
.prov-intro{max-width:600px;margin-bottom:60px}
.prov-intro h2{font-size:clamp(28px,3.8vw,48px);letter-spacing:-.025em;line-height:1.12;margin-bottom:14px;font-weight:800}
.prov-intro p{font-size:16px;color:var(--mid);font-weight:300;line-height:1.75}
.pg{display:grid;grid-template-columns:1fr 1fr;background:var(--bd);gap:1px}
.pc{background:#fff;padding:52px 48px;position:relative;overflow:hidden;transition:background .25s}
.pc:hover{background:var(--tn)}
.pc.wide{grid-column:span 2}
.pn{position:absolute;top:-12px;right:20px;font-size:130px;font-weight:800;color:rgba(111,146,251,.04);line-height:1;pointer-events:none}
.p-ico{width:52px;height:52px;background:var(--tn);border:1px solid rgba(111,146,251,.2);display:flex;align-items:center;justify-content:center;margin-bottom:22px}
.p-ico svg{width:24px;height:24px;stroke:var(--a);fill:none;stroke-width:1.5}
.p-kk{font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--a);margin-bottom:14px}
.p-q{font-size:clamp(16px,2vw,21px);font-weight:700;line-height:1.35;letter-spacing:-.01em;margin-bottom:16px;color:var(--tx)}
.p-a{font-size:14px;color:var(--mid);line-height:1.85;font-weight:300;margin-bottom:20px}
.p-tr{font-size:13px;font-weight:600;color:var(--tx);border-left:3px solid var(--a);padding-left:14px;line-height:1.65}

/* ── SERVICES (color-coded cards) ── */
.svcs{padding:100px 0;background:var(--sf)}
.svcs-hd{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:56px;flex-wrap:wrap;gap:24px}
.svcs-hd h2{font-size:clamp(26px,3.5vw,44px);font-weight:800;letter-spacing:-.025em;line-height:1.1;max-width:480px}
.svcs-hd p{font-size:15px;color:var(--mid);max-width:320px;line-height:1.75;font-weight:300}
.sg7{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.sc{background:#fff;border-radius:16px;overflow:hidden;cursor:pointer;transition:all .28s;box-shadow:0 2px 16px rgba(0,0,0,.07)}
.sc:hover{transform:translateY(-7px);box-shadow:0 24px 52px rgba(0,0,0,.15)}
.sc-hd{padding:26px 26px 20px;position:relative;overflow:hidden}
.sc-hd::after{content:'';position:absolute;bottom:-24px;right:-24px;width:80px;height:80px;border-radius:50%;background:rgba(255,255,255,.1)}
.sc-ico{width:46px;height:46px;border-radius:10px;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.sc-ico svg{width:22px;height:22px;fill:none;stroke:#fff;stroke-width:1.8}
.sc-cat{font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.7);margin-bottom:5px}
.sc-title{font-size:15px;font-weight:700;color:#fff;line-height:1.25}
.sc-body{padding:20px 26px 26px;background:#fff}
.s-d{font-size:13px;color:var(--mid);line-height:1.75;font-weight:400}
.s-lk{margin-top:16px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;display:inline-flex;align-items:center;gap:5px}
.npill{display:inline-block;color:#fff;font-size:8px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:2px 8px;border-radius:4px;margin-left:6px;vertical-align:2px}
/* individual card colors */
.c1-hd{background:linear-gradient(145deg,#1d4ed8,#60a5fa)}.c1-lk{color:var(--c1)}
.c2-hd{background:linear-gradient(145deg,#5b21b6,#a78bfa)}.c2-lk{color:var(--c2)}
.c3-hd{background:linear-gradient(145deg,#0e7490,#22d3ee)}.c3-lk{color:var(--c3)}
.c4-hd{background:linear-gradient(145deg,#065f46,#34d399)}.c4-lk{color:var(--c4)}
.c5-hd{background:linear-gradient(145deg,#9a3412,#fb923c)}.c5-lk{color:var(--c5)}
.c6-hd{background:linear-gradient(145deg,#881337,#fb7185)}.c6-lk{color:var(--c6)}
.c7-hd{background:linear-gradient(145deg,#78350f,#fbbf24)}.c7-lk{color:var(--c7)}
.c8-hd{background:linear-gradient(145deg,#1e1b4b,#4f46e5)}.c8-lk{color:#6366f1}

/* ── INDUSTRIES ── */
.ind{padding:80px 0;background:#fff}
.ind h2{font-size:clamp(24px,3vw,38px);font-weight:800;letter-spacing:-.02em;margin-bottom:8px}
.ind p{font-size:15px;color:var(--mid);font-weight:300;margin-bottom:48px;max-width:480px;line-height:1.7}
.ig{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--bd)}
.ii{background:#fff;padding:28px 16px;text-align:center;transition:background .2s;cursor:default}
.ii:hover{background:var(--tn)}
.i-ico{width:50px;height:50px;margin:0 auto 14px;background:var(--sf);border:1px solid var(--bd);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s}
.ii:hover .i-ico{background:var(--tn);border-color:rgba(111,146,251,.3)}
.i-ico svg{width:21px;height:21px;stroke:var(--a);fill:none;stroke-width:1.5}
.i-nm{font-size:11px;font-weight:600;color:var(--tx);letter-spacing:.02em}

/* ── PROCESS FLOW ── */
.proc{padding:100px 0;background:var(--dk)}
.proc-hdr{text-align:center;max-width:700px;margin:0 auto 64px}
.proc-hdr h2{font-size:clamp(26px,4vw,50px);font-weight:800;color:#fff;line-height:1.1;margin-bottom:16px;letter-spacing:-.025em}
.proc-hdr h2 em{color:var(--a);font-style:italic}
.proc-hdr p{font-size:15px;color:rgba(255,255,255,.4);font-weight:300;line-height:1.75}
/* 7-col grid */
.proc-flow{display:grid;grid-template-columns:repeat(7,1fr);position:relative;gap:0}
/* gradient connecting line */
.proc-flow::before{
  content:'';position:absolute;height:3px;
  left:calc(100%/14);right:calc(100%/14);
  top:calc(40px + 40px);
  background:linear-gradient(90deg,#3b82f6,#8b5cf6,#06b6d4,#10b981,#f97316,#e11d48,#6f92fb);
  opacity:.5;border-radius:2px;z-index:0;
}
.pf-col{display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;z-index:1;padding:0 4px}
/* arrow between steps */
.pf-col:not(:last-child)::after{
  content:'→';position:absolute;
  top:calc(40px + 30px);right:-9px;
  color:rgba(255,255,255,.22);font-size:16px;z-index:3;
}
/* badge row — fixed height keeps circles aligned */
.pf-br{height:40px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:8px}
.pf-badge{background:#7c3aed;color:#fff;font-size:9px;font-weight:700;padding:5px 13px;letter-spacing:.1em;text-transform:uppercase;border-radius:20px;white-space:nowrap;display:flex;align-items:center;gap:4px;box-shadow:0 4px 16px rgba(124,58,237,.5)}
.pf-badge-fin{background:var(--a);color:#fff;font-size:9px;font-weight:700;padding:5px 13px;letter-spacing:.1em;text-transform:uppercase;border-radius:20px;white-space:nowrap;display:flex;align-items:center;gap:4px;box-shadow:0 4px 16px rgba(111,146,251,.5)}
/* numbered circles */
.pf-circle{
  width:80px;height:80px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:22px;font-weight:800;color:#fff;
  position:relative;z-index:2;flex-shrink:0;
  box-shadow:0 8px 28px rgba(0,0,0,.4);
}
.pf-col.feat .pf-circle{width:88px;height:88px;font-size:24px;box-shadow:0 0 0 5px rgba(124,58,237,.3),0 8px 32px rgba(124,58,237,.6)}
.pf-col.finale .pf-circle{width:86px;height:86px;font-size:23px;box-shadow:0 0 0 5px rgba(111,146,251,.3),0 8px 32px rgba(111,146,251,.6)}
/* dotted connector */
.pf-line{width:1px;height:22px;border-left:2px dashed rgba(255,255,255,.14);margin:10px 0 6px}
/* step card content */
.pf-icon{font-size:22px;margin-bottom:8px}
.pf-title{font-size:12px;font-weight:700;color:#fff;margin-bottom:7px;line-height:1.35}
.pf-body{font-size:10.5px;color:rgba(255,255,255,.38);line-height:1.68;font-weight:300;max-width:118px}
/* circle colors */
.n1{background:linear-gradient(135deg,#1d4ed8,#60a5fa)}
.n2{background:linear-gradient(135deg,#5b21b6,#a78bfa)}
.n3{background:linear-gradient(135deg,#0e7490,#22d3ee)}
.n4{background:linear-gradient(135deg,#065f46,#34d399)}
.n5{background:linear-gradient(135deg,#9a3412,#fb923c)}
.n6{background:linear-gradient(135deg,#881337,#fb7185)}
.n7{background:linear-gradient(135deg,#4a6cd8,#6f92fb)}

/* ── TESTIMONIALS ── */
.test{padding:100px 0;background:var(--sf)}
.test-hd{max-width:560px;margin-bottom:56px}
.test-hd h2{font-size:clamp(26px,3.5vw,44px);font-weight:800;letter-spacing:-.025em;margin-bottom:12px}
.test-hd p{font-size:15px;color:var(--mid);font-weight:300;line-height:1.7}
.tg{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.tc{background:#fff;padding:40px;border:1px solid var(--bd);transition:all .25s}
.tc:hover{border-color:var(--a);box-shadow:0 20px 56px rgba(111,146,251,.1);transform:translateY(-4px)}
.tqm{font-size:64px;font-weight:800;color:rgba(111,146,251,.12);line-height:.8;margin-bottom:20px;display:block}
.tss{display:flex;gap:3px;margin-bottom:18px}
.ts{color:#f59e0b;font-size:15px}
.tt{font-size:15px;color:#444;line-height:1.82;font-weight:300;margin-bottom:28px;font-style:italic}
.ta{display:flex;align-items:center;gap:14px}
.tav{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--a) 0%,#3a5fd4 100%);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;color:#fff;flex-shrink:0}
.tan{font-size:14px;font-weight:700;color:var(--tx)}
.tar{font-size:12px;color:var(--lt);margin-top:2px}
.tac{font-size:11px;color:var(--a);font-weight:600;margin-top:2px}

/* ── PORTFOLIO PREVIEW ── */
.ports{padding:100px 0;background:#fff}
.ports-hd{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:56px;flex-wrap:wrap;gap:20px}
.ports-hd h2{font-size:clamp(26px,3.5vw,44px);font-weight:800;letter-spacing:-.025em;line-height:1.1;max-width:400px}
.ppg{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ppc{border:1px solid var(--bd);overflow:hidden;cursor:pointer;transition:all .25s}
.ppc:hover{border-color:rgba(111,146,251,.4);box-shadow:0 24px 64px rgba(0,0,0,.09);transform:translateY(-4px)}
.ppv{height:190px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.ppv-ico{width:72px;height:72px;border-radius:50%;background:rgba(255,255,255,.15);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center}
.ppv-ico svg{width:32px;height:32px;stroke:#fff;fill:none;stroke-width:1.5}
.ppb{padding:26px 28px 32px}
.pp-tag{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--a);background:var(--tn);padding:4px 12px;margin-bottom:12px}
.pp-reg{font-size:11px;color:var(--lt);margin-bottom:10px;font-weight:500}
.pp-ti{font-size:18px;font-weight:700;margin-bottom:10px;line-height:1.3}
.pp-out{font-size:12px;font-weight:600;color:var(--tx);border-left:3px solid var(--a);padding-left:12px;line-height:1.6}

/* ── FAQ ── */
.faq{padding:100px 0;background:var(--sf)}
.faq-wrap{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.faq-lft h2{font-size:clamp(24px,3.5vw,42px);font-weight:800;letter-spacing:-.025em;margin-bottom:16px}
.faq-lft p{font-size:15px;color:var(--mid);line-height:1.75;font-weight:300;margin-bottom:32px}
.ai{border-bottom:1px solid var(--bd)}
.at{width:100%;background:none;border:none;padding:22px 0;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-family:'Poppins',sans-serif;font-size:15px;font-weight:500;color:var(--tx);text-align:left;transition:color .18s;gap:16px}
.at:hover{color:var(--a)}
.ai-ic{width:30px;height:30px;border:1.5px solid var(--bd);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:17px;color:var(--a);transition:all .2s}
.at:hover .ai-ic{border-color:var(--a);background:var(--tn)}
.ac{overflow:hidden;max-height:0;transition:max-height .35s ease}
.ab{padding-bottom:22px;font-size:14px;color:var(--mid);line-height:1.82;max-width:580px;font-weight:300}

/* ── CTA BAND ── */
.cband{background:var(--dk);padding:100px 0;text-align:center;position:relative;overflow:hidden}
.cband::before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:900px;height:500px;background:radial-gradient(ellipse,rgba(111,146,251,.18) 0%,transparent 65%);pointer-events:none}
.cband h2{font-size:clamp(30px,4.5vw,58px);font-weight:800;color:#fff;letter-spacing:-.03em;margin-bottom:18px;position:relative}
.cband p{font-size:18px;color:rgba(255,255,255,.4);font-weight:300;margin-bottom:44px;position:relative}
.cb-acts{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;position:relative}

/* ── FOOTER ── */
footer{background:#0a0c16;padding:72px 0 40px}
.ft{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:56px}
.f-logo{font-size:24px;font-weight:800;color:#fff;margin-bottom:16px;display:block}
.f-logo span{color:var(--a)}
.f-tl{font-size:14px;color:rgba(255,255,255,.3);line-height:1.7;font-weight:300;max-width:260px}
.f-soc{display:flex;gap:10px;margin-top:28px}
.f-sl{width:36px;height:36px;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.35);font-size:12px;transition:all .2s;font-weight:700}
.f-sl:hover{border-color:var(--a);color:var(--a)}
.fc h4{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:20px}
.flinks{list-style:none}
.flinks li{margin-bottom:12px}
.flinks a{font-size:14px;color:rgba(255,255,255,.45);transition:color .18s}
.flinks a:hover{color:var(--a)}
.fb{border-top:1px solid rgba(255,255,255,.07);padding-top:32px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.fbc{font-size:12px;color:rgba(255,255,255,.2)}
.fbl{display:flex;gap:24px}
.fbl a{font-size:12px;color:rgba(255,255,255,.2)}.fbl a:hover{color:rgba(255,255,255,.5)}

/* ── INNER PAGES ── */
.pg-hero{background:var(--dk);padding:160px 0 96px;position:relative;overflow:hidden}
.pg-hero::before{content:'';position:absolute;top:-30%;right:-10%;width:700px;height:700px;background:radial-gradient(circle,rgba(111,146,251,.12) 0%,transparent 65%);pointer-events:none}
.pg-hero h1{font-size:clamp(36px,5vw,66px);font-weight:800;color:#fff;letter-spacing:-.03em;max-width:760px;line-height:1.07;margin-bottom:20px}
.pg-hero h1 em{color:var(--a);font-style:italic}
.pg-hero p{font-size:17px;color:rgba(255,255,255,.45);font-weight:300;max-width:560px;line-height:1.75}

/* blog rows */
.blog-row{border-top:1px solid var(--bd);padding:32px 0;display:grid;grid-template-columns:160px 1fr;gap:32px;align-items:start}
.rl{font-size:12px;color:var(--a);font-weight:700;letter-spacing:.06em;text-transform:uppercase}

/* contact */
.fl{margin-bottom:22px}
.flb{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--lt);margin-bottom:8px}
.fi,.fsel,.fta{width:100%;background:#fff;border:1.5px solid var(--bd);padding:14px 16px;font-family:'Poppins',sans-serif;font-size:14px;color:var(--tx);outline:none;transition:border-color .2s;-webkit-appearance:none}
.fi:focus,.fsel:focus,.fta:focus{border-color:var(--a)}
.fta{min-height:140px;resize:vertical}
.fsel{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}
.sbox{padding:48px;background:var(--tn);text-align:center}
.tlr{display:flex;gap:20px;margin-bottom:22px;padding-bottom:22px;border-bottom:1px solid #f0f0f0}
.tld{min-width:76px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--a);padding-top:2px}

/* about */
.tmcard{padding:40px;border:1px solid var(--bd);transition:all .25s}
.tmcard:hover{border-color:rgba(111,146,251,.4);box-shadow:0 16px 48px rgba(111,146,251,.1)}
.tmav{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800;color:#fff;margin-bottom:24px}
.plcard{padding:40px 36px;background:var(--sf);border-left:3px solid var(--a);transition:all .25s}
.plcard:hover{background:var(--tn)}

/* case cards */
.cc{border:1px solid var(--bd);overflow:hidden;transition:all .25s}
.cc:hover{border-color:rgba(111,146,251,.4);box-shadow:0 20px 56px rgba(0,0,0,.08);transform:translateY(-3px)}
.cc-hd{padding:36px 32px 24px;border-bottom:1px solid var(--bd)}
.cc-bd{padding:24px 32px}
.clab{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px}
.c-out{background:var(--tn);padding:14px 18px;border-left:3px solid var(--a);margin-top:14px}

/* ── REVEAL ANIMATIONS ── */
.rv{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.rv.on{opacity:1;transform:translateY(0)}
.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}.d5{transition-delay:.4s}

/* ── RESPONSIVE ── */
@media(max-width:1100px){
  .hero-wrap{grid-template-columns:1fr}.hmc-wrap{display:none}
  .sg{grid-template-columns:repeat(2,1fr)}.si{border-bottom:1px solid rgba(255,255,255,.07)}
  .sg7{grid-template-columns:repeat(3,1fr)}
  .proc-flow{grid-template-columns:repeat(4,1fr)}.proc-flow::before{display:none}
  .ft{grid-template-columns:1fr 1fr}
}
@media(max-width:900px){
  .pg{grid-template-columns:1fr;background:none;gap:2px}.pc.wide{grid-column:span 1}
  .tg{grid-template-columns:1fr}.ppg{grid-template-columns:1fr 1fr}
  .ig{grid-template-columns:repeat(4,1fr)}
  .faq-wrap{grid-template-columns:1fr;gap:40px}
  .g2{grid-template-columns:1fr}
  .proc-flow{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:768px){
  .wrap{padding:0 20px}.sec{padding:64px 0}
  .topbar{display:none}
  nav{top:0}.mob{top:70px}.hero{padding-top:70px}
  .nav-in{padding:0 20px}
  .nl,.nav-cta{display:none}
  .ham{display:flex}
  .sg7{grid-template-columns:1fr 1fr}
  .ig{grid-template-columns:repeat(3,1fr)}
  .ppg{grid-template-columns:1fr}
  .ft{grid-template-columns:1fr;gap:32px}
  .sg{grid-template-columns:1fr 1fr}
  .proc-flow{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:520px){
  .sg7{grid-template-columns:1fr}
  .ig{grid-template-columns:repeat(2,1fr)}
  .hero-acts{flex-direction:column}
  .proc-flow{grid-template-columns:repeat(2,1fr)}
}

/* ── PORTFOLIO GALLERY ── */
.pf-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:48px}
.pf-tab{background:none;border:1.5px solid var(--bd);padding:9px 22px;font-family:'Poppins',sans-serif;font-size:12px;font-weight:600;color:var(--mid);cursor:pointer;transition:all .2s;letter-spacing:.04em}
.pf-tab:hover{border-color:var(--a);color:var(--a)}
.pf-tab.on{background:var(--a);border-color:var(--a);color:#fff}
.pg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pg-card{position:relative;overflow:hidden;cursor:pointer;background:#000;aspect-ratio:3/4}
.pg-card img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .45s ease,opacity .3s ease;display:block}
.pg-card:hover img{transform:scale(1.04);opacity:.6}
.pg-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,transparent 55%);opacity:0;transition:opacity .3s ease}
.pg-card:hover .pg-overlay{opacity:1}
.pg-type{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:var(--a);padding:3px 10px;margin-bottom:8px;width:fit-content}
.pg-name{font-size:16px;font-weight:700;color:#fff;line-height:1.25}
.pg-industry{font-size:11px;color:rgba(255,255,255,.6);margin-top:4px}
/* view icon */
.pg-eye{position:absolute;top:50%;left:50%;transform:translate(-50%,-60%);width:52px;height:52px;border-radius:50%;background:rgba(111,146,251,.9);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s,transform .3s}
.pg-card:hover .pg-eye{opacity:1;transform:translate(-50%,-50%)}
.pg-eye svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:1.8}

/* ── LIGHTBOX ── */
.lb{position:fixed;inset:0;background:rgba(0,0,0,.95);z-index:9999;display:none;align-items:center;justify-content:center}
.lb.open{display:flex}
.lb-inner{position:relative;max-width:560px;width:90%;max-height:90vh;overflow-y:auto;-webkit-overflow-scrolling:touch}
.lb-inner::-webkit-scrollbar{width:4px}
.lb-inner::-webkit-scrollbar-track{background:rgba(255,255,255,.05)}
.lb-inner::-webkit-scrollbar-thumb{background:var(--a);border-radius:2px}
.lb-inner img{width:100%;display:block}
.lb-close{position:fixed;top:20px;right:24px;width:44px;height:44px;background:rgba(255,255,255,.1);border:none;border-radius:50%;color:#fff;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;z-index:10000}
.lb-close:hover{background:rgba(255,255,255,.25)}
.lb-prev,.lb-next{position:fixed;top:50%;transform:translateY(-50%);width:44px;height:44px;background:rgba(255,255,255,.1);border:none;border-radius:50%;color:#fff;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;z-index:10000}
.lb-prev:hover,.lb-next:hover{background:rgba(111,146,251,.7)}
.lb-prev{left:16px}.lb-next{right:16px}
.lb-counter{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);font-size:12px;color:rgba(255,255,255,.4);letter-spacing:.1em;font-family:'Poppins',sans-serif;z-index:10000}
@media(max-width:768px){.pg-grid{grid-template-columns:1fr 1fr}.lb-prev{left:4px}.lb-next{right:4px}}
@media(max-width:480px){.pg-grid{grid-template-columns:1fr}}

/* ── CLIENT LOGO STRIP ── */
.logo-strip{background:#fff;padding:36px 0;overflow:hidden;border-top:1px solid #eef0f6;border-bottom:1px solid #eef0f6}
.logo-strip-label{text-align:center;font-size:10px;font-weight:600;letter-spacing:.18em;color:#b0b8cc;text-transform:uppercase;margin-bottom:24px}
.logo-track-wrap{overflow:hidden;position:relative}
.logo-track-wrap::before,.logo-track-wrap::after{content:'';position:absolute;top:0;width:100px;height:100%;z-index:2;pointer-events:none}
.logo-track-wrap::before{left:0;background:linear-gradient(to right,#fff,transparent)}
.logo-track-wrap::after{right:0;background:linear-gradient(to left,#fff,transparent)}
.logo-track{display:flex;gap:56px;width:max-content;animation:logoScroll 32s linear infinite}
.logo-track:hover{animation-play-state:paused}
.logo-item{flex-shrink:0;display:flex;align-items:center;justify-content:center;height:64px;padding:0 16px;opacity:.85;transition:opacity .3s,transform .3s}
.logo-item:hover{opacity:1;transform:scale(1.06)}
.logo-item img{height:52px;width:auto;max-width:180px;object-fit:contain;display:block}
@keyframes logoScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ══════════════════════════════════════════
   PRODUCTS PAGES — shared + page-specific
═══════════════════════════════════════════ */

/* ── PRODUCTS LANDING ── */
.prod-landing-hero{background:var(--dk);padding:160px 0 100px;position:relative;overflow:hidden}
.prod-landing-hero::before{content:'';position:absolute;top:-20%;right:-10%;width:800px;height:800px;background:radial-gradient(circle,rgba(111,146,251,.12) 0%,transparent 65%);pointer-events:none}
.prod-landing-hero::after{content:'';position:absolute;bottom:-20%;left:-8%;width:500px;height:500px;background:radial-gradient(circle,rgba(111,146,251,.06) 0%,transparent 65%);pointer-events:none}
.prod-landing-hero .wrap{position:relative;z-index:2}
.prod-landing-hero h1{font-size:clamp(38px,5.5vw,72px);font-weight:800;color:#fff;line-height:1.06;letter-spacing:-.03em;margin-bottom:24px}
.prod-landing-hero h1 em{color:var(--a);font-style:italic}
.prod-landing-hero p{font-size:17px;color:rgba(255,255,255,.45);line-height:1.8;max-width:560px;font-weight:300}

/* product card grid */
.prod-cards-sec{padding:100px 0;background:var(--sf)}
.prod-card{background:#fff;border:1px solid var(--bd);overflow:hidden;transition:all .3s;cursor:pointer}
.prod-card:hover{border-color:rgba(111,146,251,.4);box-shadow:0 28px 72px rgba(0,0,0,.1);transform:translateY(-6px)}
.prod-card-hd{padding:40px 40px 32px;position:relative;overflow:hidden}
.prod-card-hd::after{content:'';position:absolute;bottom:-28px;right:-28px;width:100px;height:100px;border-radius:50%;background:rgba(255,255,255,.1)}
.prod-card-ico{width:56px;height:56px;border-radius:12px;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;margin-bottom:20px;font-size:26px}
.prod-card-partner{font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:6px}
.prod-card-title{font-size:22px;font-weight:800;color:#fff;line-height:1.2;margin-bottom:6px}
.prod-card-cat{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.prod-card-bd{padding:28px 40px 36px;background:#fff}
.prod-card-desc{font-size:14px;color:var(--mid);line-height:1.8;font-weight:300;margin-bottom:24px}
.prod-card-stats{display:flex;gap:24px;padding:18px 0;border-top:1px solid var(--bd);border-bottom:1px solid var(--bd);margin-bottom:24px;flex-wrap:wrap}
.pcs{text-align:center;flex:1;min-width:60px}
.pcs-n{font-size:20px;font-weight:800;color:var(--tx);line-height:1}
.pcs-n span{color:var(--a)}
.pcs-l{font-size:9px;color:var(--lt);letter-spacing:.12em;text-transform:uppercase;margin-top:3px}
.prod-card-lk{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;display:inline-flex;align-items:center;gap:6px;transition:gap .2s}
.prod-card:hover .prod-card-lk{gap:10px}

/* ── INDIVIDUAL PRODUCT HERO ── */
.prod-hero{background:var(--dk);padding:160px 0 96px;position:relative;overflow:hidden}
.prod-hero::before{content:'';position:absolute;top:-30%;right:-10%;width:700px;height:700px;background:radial-gradient(circle,rgba(111,146,251,.12) 0%,transparent 65%);pointer-events:none}
.prod-hero::after{content:'';position:absolute;bottom:-20%;left:-5%;width:500px;height:500px;background:radial-gradient(circle,rgba(59,130,246,.06) 0%,transparent 65%);pointer-events:none}
.prod-hero-in{position:relative;z-index:2}
.prod-back{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:28px;cursor:pointer;transition:color .2s;background:none;border:none;padding:0;font-family:'Poppins',sans-serif}
.prod-back:hover{color:var(--a)}
.prod-back::before{content:'←';font-size:14px}
.prod-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(59,130,246,.1);border:1px solid rgba(59,130,246,.25);padding:7px 16px;margin-bottom:28px}
.prod-badge-dot{width:6px;height:6px;border-radius:50%;background:#60a5fa;animation:pls 2s infinite}
.prod-badge span{font-size:11px;font-weight:600;color:rgba(255,255,255,.65);letter-spacing:.05em}
.prod-h1{font-size:clamp(36px,5vw,68px);font-weight:800;color:#fff;line-height:1.06;letter-spacing:-.03em;margin-bottom:24px}
.prod-h1 em{color:var(--a);font-style:italic}
.prod-sub{font-size:17px;color:rgba(255,255,255,.45);line-height:1.75;max-width:580px;font-weight:300;margin-bottom:40px}
.prod-acts{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:64px}
.prod-stats{display:flex;border-top:1px solid rgba(255,255,255,.09);padding-top:48px;flex-wrap:wrap;gap:0}
.pst{flex:1;padding:0 32px;border-right:1px solid rgba(255,255,255,.09);min-width:100px}
.pst:first-child{padding-left:0}.pst:last-child{border-right:none}
.pst-n{font-size:28px;font-weight:800;color:#fff;line-height:1}
.pst-n span{color:var(--a)}
.pst-l{font-size:10px;color:rgba(255,255,255,.3);letter-spacing:.14em;text-transform:uppercase;margin-top:5px}

/* ── SHARED PRODUCT SECTION STYLES ── */
/* dark split section */
.prod-split{padding:96px 0;background:var(--blk)}
.prod-split-in{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.prod-split h2{font-size:clamp(28px,3.5vw,44px);font-weight:800;color:#fff;line-height:1.1;letter-spacing:-.025em;margin-bottom:20px}
.prod-split h2 em{color:var(--a);font-style:italic}
.prod-split p{font-size:15px;color:rgba(255,255,255,.4);line-height:1.8;font-weight:300;margin-bottom:32px}
/* stat cards grid */
.stat-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.stcard{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);padding:24px;transition:border-color .2s}
.stcard:hover{border-color:rgba(111,146,251,.3)}
.stcard-ico{font-size:24px;margin-bottom:12px}
.stcard-n{font-size:28px;font-weight:800;color:#fff;line-height:1}
.stcard-n span{color:var(--a)}
.stcard-l{font-size:12px;color:rgba(255,255,255,.3);margin-top:4px;line-height:1.5}
/* white capability grid */
.prod-caps{padding:100px 0;background:#fff}
.prod-caps-hd{text-align:center;max-width:640px;margin:0 auto 60px}
.prod-caps-hd h2{font-size:clamp(26px,3.5vw,44px);font-weight:800;letter-spacing:-.025em;margin-bottom:14px}
.prod-caps-hd p{font-size:15px;color:var(--mid);line-height:1.75;font-weight:300}
.caps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--bd)}
.capcard{background:#fff;padding:44px 40px;position:relative;overflow:hidden;transition:background .25s}
.capcard:hover{background:var(--tn)}
.capcard-num{position:absolute;top:-8px;right:16px;font-size:120px;font-weight:800;color:rgba(111,146,251,.04);line-height:1;pointer-events:none}
.capcard-ico{width:52px;height:52px;display:flex;align-items:center;justify-content:center;font-size:26px;margin-bottom:20px;background:var(--tn);border:1px solid rgba(111,146,251,.2)}
.capcard-title{font-size:17px;font-weight:700;color:var(--tx);margin-bottom:12px;letter-spacing:-.01em}
.capcard-list{list-style:none;padding:0;margin:0}
.capcard-list li{font-size:13px;color:var(--mid);line-height:1.8;padding-left:18px;position:relative;font-weight:300}
.capcard-list li::before{content:'—';position:absolute;left:0;color:var(--a);font-weight:700}
/* use case grid */
.prod-use{padding:100px 0;background:var(--sf)}
.prod-use-hd{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:56px;flex-wrap:wrap;gap:24px}
.prod-use-hd h2{font-size:clamp(26px,3.5vw,44px);font-weight:800;letter-spacing:-.025em;line-height:1.1;max-width:420px}
.prod-use-hd p{font-size:15px;color:var(--mid);max-width:320px;line-height:1.75;font-weight:300}
.use-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ucard{background:#fff;border:1px solid var(--bd);padding:36px 32px;transition:all .25s}
.ucard:hover{border-color:rgba(111,146,251,.35);box-shadow:0 16px 48px rgba(111,146,251,.08);transform:translateY(-4px)}
.ucard-ico{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:20px}
.ucard-title{font-size:15px;font-weight:700;color:var(--tx);margin-bottom:10px}
.ucard-desc{font-size:13px;color:var(--mid);line-height:1.75;font-weight:300}
/* dark deployment */
.prod-deploy{padding:100px 0;background:var(--dk)}
.prod-deploy-hd{text-align:center;max-width:600px;margin:0 auto 60px}
.prod-deploy-hd h2{font-size:clamp(26px,3.5vw,44px);font-weight:800;color:#fff;letter-spacing:-.025em;margin-bottom:14px}
.prod-deploy-hd h2 em{color:var(--a);font-style:italic}
.prod-deploy-hd p{font-size:15px;color:rgba(255,255,255,.4);line-height:1.75;font-weight:300}
.deploy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.dpcard{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);padding:40px 36px;transition:border-color .25s}
.dpcard:hover{border-color:rgba(111,146,251,.4)}
.dpcard-ico{width:52px;height:52px;background:rgba(111,146,251,.1);border:1px solid rgba(111,146,251,.22);display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:24px}
.dpcard-title{font-size:17px;font-weight:700;color:#fff;margin-bottom:12px}
.dpcard-desc{font-size:13px;color:rgba(255,255,255,.4);line-height:1.75;font-weight:300;margin-bottom:20px}
.dpcard-tags{display:flex;flex-direction:column;gap:6px}
.dp-tag{font-size:11px;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:7px}
.dp-tag::before{content:'✓';color:var(--a);font-weight:700;flex-shrink:0}
/* certs bar */
.prod-certs{padding:56px 0;background:var(--blk);border-top:1px solid rgba(255,255,255,.06)}
.cert-row{display:flex;align-items:center;justify-content:center;gap:48px;flex-wrap:wrap}
.cert-item{display:flex;align-items:center;gap:12px;opacity:.55;transition:opacity .2s}
.cert-item:hover{opacity:1}
.cert-badge{width:44px;height:44px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-size:18px}
.cert-text strong{display:block;font-size:12px;font-weight:700;color:#fff;letter-spacing:.04em}
.cert-text span{font-size:10px;color:rgba(255,255,255,.3);letter-spacing:.1em;text-transform:uppercase}
/* product CTA */
.prod-cta{background:var(--dk);padding:100px 0;text-align:center;position:relative;overflow:hidden}
.prod-cta::before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:900px;height:500px;background:radial-gradient(ellipse,rgba(111,146,251,.18) 0%,transparent 65%);pointer-events:none}
.prod-cta h2{font-size:clamp(28px,4vw,52px);font-weight:800;color:#fff;letter-spacing:-.03em;margin-bottom:16px;position:relative}
.prod-cta p{font-size:17px;color:rgba(255,255,255,.4);font-weight:300;margin-bottom:40px;position:relative}
.prod-cta-acts{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;position:relative}

@media(max-width:1100px){.prod-cards-sec .g2{grid-template-columns:1fr}}
@media(max-width:900px){
  .prod-split-in{grid-template-columns:1fr}
  .caps-grid{grid-template-columns:1fr 1fr}
  .use-grid{grid-template-columns:1fr 1fr}
  .deploy-grid{grid-template-columns:1fr}
  .prod-cards-sec .g2{grid-template-columns:1fr}
}
@media(max-width:640px){
  .caps-grid,.use-grid{grid-template-columns:1fr}
  .stat-cards{grid-template-columns:1fr 1fr}
  .prod-stats{gap:24px}.pst{border-right:none;padding:0}
}


/* ── NAV SPACER (for pages that do not start with full-bleed hero) ── */
.nav-spacer{height:110px}
@media(max-width:768px){.nav-spacer{height:70px}}
