:root{--ink:#0b1020;--ink2:#475069;--mute:#7a8299;--line:#e7e9f2;--bg:#fff;--soft:#f7f8fc;
--a:#3b5bff;--b:#7c4dff;--g:linear-gradient(120deg,#3b5bff 0%,#6a4dff 55%,#9b4dff 100%);
--r:16px;--sh:0 1px 2px rgba(16,24,64,.04),0 8px 24px -8px rgba(40,50,140,.12);--shl:0 2px 4px rgba(16,24,64,.04),0 24px 60px -20px rgba(60,60,200,.25)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;line-height:1.6;font-size:17px}
a{color:inherit;text-decoration:none}
.wrap{max-width:1140px;margin:0 auto;padding:0 28px}
h1,h2,h3{letter-spacing:-.035em;line-height:1.05;font-weight:700}
h1{font-size:clamp(44px,7vw,84px)}h2{font-size:clamp(32px,4.4vw,52px)}h3{font-size:20px;letter-spacing:-.02em;line-height:1.25;font-weight:600}
.grad{background:var(--g);-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--a);background:#eef1ff;border:1px solid #dfe4ff;padding:6px 14px;border-radius:99px;margin-bottom:24px}
.eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--g)}
.sub{font-size:clamp(18px,2vw,21px);color:var(--ink2);max-width:560px;margin:24px auto 0}
/* nav */
.nav{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.8);backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid rgba(231,233,242,.7)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:72px}
.logo{display:inline-flex;align-items:center}
.logo img{height:30px;width:auto;display:block}
.links{display:flex;align-items:center;gap:32px;font-size:15px;font-weight:500;color:var(--ink2)}
.links a:not(.btn):hover,.links a.on{color:var(--ink)}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:52px;padding:0 26px;border-radius:12px;font-weight:600;font-size:16px;transition:transform .15s,box-shadow .15s;white-space:nowrap;border:0;cursor:pointer;font-family:inherit}
.btn-p{background:var(--g);color:#fff;box-shadow:0 1px 0 rgba(255,255,255,.25) inset,0 10px 24px -8px rgba(80,70,255,.55)}
.btn-p:hover{transform:translateY(-1px);box-shadow:0 1px 0 rgba(255,255,255,.25) inset,0 16px 32px -10px rgba(80,70,255,.6)}
.btn-s{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:var(--sh)}
.btn-s:hover{transform:translateY(-1px)}
.btn-sm{height:40px;padding:0 18px;font-size:14px;border-radius:10px}
.links .btn-p{color:#fff}
.ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:40px}
/* sections */
section{padding:120px 0}
.hero{position:relative;text-align:center;padding:130px 0 110px;overflow:hidden}
.hero::before{content:"";position:absolute;inset:-30% -10% auto;height:720px;background:radial-gradient(closest-side at 30% 40%,rgba(59,91,255,.16),transparent),radial-gradient(closest-side at 70% 35%,rgba(155,77,255,.16),transparent);z-index:-1}
.hero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at 50% 0%,#000 10%,transparent 65%);-webkit-mask-image:radial-gradient(ellipse at 50% 0%,#000 10%,transparent 65%);opacity:.6;z-index:-2}
.hero h1{max-width:900px;margin:0 auto}
.note{margin-top:18px;font-size:14px;color:var(--mute)}
.head{text-align:center;max-width:680px;margin:0 auto 60px}
.head p{color:var(--ink2);margin-top:16px;font-size:18px}
.soft{background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.grid{display:grid;gap:20px}.g3{grid-template-columns:repeat(3,1fr)}.g2{grid-template-columns:repeat(2,1fr)}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:32px;box-shadow:var(--sh);transition:transform .2s,box-shadow .2s}
.card:hover{transform:translateY(-3px);box-shadow:var(--shl)}
.card p{color:var(--ink2);margin-top:10px;font-size:16px}
.ic{width:44px;height:44px;border-radius:12px;background:var(--g);display:grid;place-items:center;margin-bottom:22px;box-shadow:0 8px 18px -6px rgba(80,70,255,.5)}
.ic svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.chip{padding:10px 18px;border-radius:99px;border:1px solid var(--line);background:#fff;font-size:15px;font-weight:500;color:var(--ink2);box-shadow:var(--sh)}
.chip.lead{color:#fff;background:var(--ink);border-color:var(--ink)}
.video{position:relative;aspect-ratio:16/9;border-radius:20px;overflow:hidden;background:radial-gradient(circle at 30% 20%,#4b63ff,transparent 55%),radial-gradient(circle at 80% 80%,#9b4dff,transparent 55%),#1a1f4a;box-shadow:var(--shl);display:grid;place-items:center;max-width:960px;margin:0 auto}
.video .play{width:84px;height:84px;border-radius:50%;background:rgba(255,255,255,.18);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.35);display:grid;place-items:center}
.video .play::after{content:"";border-left:22px solid #fff;border-top:14px solid transparent;border-bottom:14px solid transparent;margin-left:6px}
.video .vl{position:absolute;bottom:22px;left:24px;color:#fff;font-size:14px;font-weight:500;opacity:.9}
.steps{counter-reset:s}.step{position:relative}
.step .n{font-size:13px;font-weight:700;color:var(--a);letter-spacing:.06em;margin-bottom:14px}
.cta{text-align:center}
.cta .box{position:relative;border-radius:28px;padding:96px 32px;background:radial-gradient(circle at 15% 0%,rgba(59,91,255,.22),transparent 50%),radial-gradient(circle at 85% 100%,rgba(155,77,255,.22),transparent 50%),#fbfbff;border:1px solid var(--line);overflow:hidden}
.cta p{color:var(--ink2);margin-top:16px;font-size:18px}
/* services */
.svc{display:grid;grid-template-columns:1fr 1.25fr;gap:64px;align-items:start;padding:56px 0;border-top:1px solid var(--line)}
.svc:first-child{border-top:0;padding-top:0}
.svc .tag{font-size:13px;font-weight:700;color:var(--a);letter-spacing:.06em;margin-bottom:14px}
.svc h2{font-size:clamp(28px,3.4vw,40px)}
.svc>div>p{color:var(--ink2);margin-top:14px;font-size:18px}
.list{display:grid;gap:12px}
.li{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;box-shadow:var(--sh)}
.li b{display:block;font-weight:600}.li span{color:var(--ink2);font-size:15px}
.ck{flex:none;width:22px;height:22px;border-radius:50%;background:var(--g);display:grid;place-items:center;margin-top:2px}
.ck::after{content:"";width:8px;height:4px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translate(1px,-1px)}
.feature{background:var(--ink);color:#fff;border-radius:24px;padding:56px;display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center;position:relative;overflow:hidden}
.feature::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 100% 0%,rgba(124,77,255,.45),transparent 50%),radial-gradient(circle at 0% 100%,rgba(59,91,255,.35),transparent 50%)}
.feature>*{position:relative}.feature p{color:#c3c8e0;margin-top:14px;font-size:18px}
.feature .tag{color:#a9b6ff}
.feature ul{list-style:none;display:grid;gap:14px}
.feature li{display:flex;gap:12px;align-items:center;color:#e6e9f7}
/* demo */
.demo-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:start}
.demo-grid h1{font-size:clamp(40px,5.4vw,64px)}
.demo-grid .sub{margin:20px 0 0}
.perks{display:grid;gap:18px;margin-top:40px}
.perk{display:flex;gap:14px}.perk b{display:block}.perk span{color:var(--ink2);font-size:15px}
.callcard{margin-top:40px;display:flex;align-items:center;gap:16px;padding:20px;border-radius:16px;border:1px solid var(--line);background:var(--soft)}
.callcard .ic{margin:0;flex:none}.callcard small{display:block;color:var(--mute);font-size:13px}.callcard b{font-size:18px}
form.card{padding:40px}
form h3{font-size:22px}form .hint{color:var(--mute);font-size:14px;margin:6px 0 28px}
.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
label{display:block;font-size:14px;font-weight:500;margin-bottom:16px}
input,select,textarea{display:block;width:100%;margin-top:8px;height:48px;padding:0 14px;border:1px solid var(--line);border-radius:10px;font:inherit;font-size:15px;color:var(--ink);background:#fff;transition:border .15s,box-shadow .15s}
textarea{height:96px;padding:12px 14px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--a);box-shadow:0 0 0 4px rgba(59,91,255,.12)}
form .btn{width:100%;margin-top:8px}
.ok{display:none;text-align:center;padding:40px 0}.ok h3{margin:16px 0 8px}.ok p{color:var(--ink2)}
form.done .fields{display:none}form.done .ok{display:block}
/* footer */
footer{border-top:1px solid var(--line);padding:56px 0 40px;margin-top:40px}
.ft{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap}
.ft p{color:var(--mute);font-size:15px;margin-top:12px;max-width:300px}
.ft nav{display:flex;gap:28px;font-size:15px;color:var(--ink2);flex-wrap:wrap}
.ft nav a:hover{color:var(--ink)}
.copy{margin-top:40px;padding-top:24px;border-top:1px solid var(--line);color:var(--mute);font-size:14px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
/* responsive */
@media(max-width:900px){.g3,.g2,.svc,.feature,.demo-grid{grid-template-columns:1fr}.svc,.demo-grid{gap:32px}.feature{padding:40px 28px}}
@media(max-width:640px){body{font-size:16px}.wrap{padding:0 20px}section{padding:80px 0}.hero{padding:88px 0 72px}.logo img{height:24px}
.links a:not(.btn){display:none}.ctas .btn{width:100%}.head{margin-bottom:40px}.cta .box{padding:64px 22px}.row{grid-template-columns:1fr;gap:0}form.card{padding:28px 22px}.card{padding:26px}}

/* ===== acquisition.com-style layout & CTA patterns (BrightDept colors) ===== */
.annc{display:block;background:var(--g);color:#fff;text-align:center;font-size:14px;font-weight:500;padding:10px 16px;line-height:1.4}
.annc b{font-weight:700}.annc .pill{display:inline-block;background:#fff;color:var(--a);font-size:11px;font-weight:800;letter-spacing:.06em;padding:2px 8px;border-radius:99px;margin-right:8px;vertical-align:1px}
.annc:hover span.arr{transform:translateX(3px)}.annc span.arr{display:inline-block;transition:transform .15s;margin-left:6px}
.nav{background:var(--ink);backdrop-filter:none;border-bottom:1px solid rgba(255,255,255,.08)}
.links{color:#c3c8e0}.links a:not(.btn):hover,.links a.on{color:#fff}
.navphone{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;color:#fff;white-space:nowrap}
.navphone .dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.2)}
.btn{border-radius:999px;text-transform:uppercase;letter-spacing:.03em;font-weight:700;font-size:15px;padding:0 30px}
.btn-sm{border-radius:999px;font-size:13px;padding:0 20px}
.btn-lg{height:58px;padding:0 38px;font-size:16px}
.btn-w{background:#fff;color:var(--ink);box-shadow:0 10px 24px -10px rgba(0,0,0,.5)}.btn-w:hover{transform:translateY(-1px)}
.kicker{font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--a);margin-bottom:12px}
.sech{text-align:center;max-width:720px;margin:0 auto 44px}
.sech h2{text-transform:uppercase;font-weight:800;letter-spacing:-.02em;font-size:clamp(28px,3.6vw,42px)}
.sech p{color:var(--ink2);margin-top:12px;font-size:18px}
.dark{background:var(--ink);color:#fff;position:relative;overflow:hidden}
.dark::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 100% 0%,rgba(124,77,255,.4),transparent 45%),radial-gradient(circle at 0% 100%,rgba(59,91,255,.3),transparent 45%);pointer-events:none}
.dark>*{position:relative}.dark .kicker{color:#a9b6ff}.dark .sech p{color:#c3c8e0}
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:28px 0}
.fact{border-left:3px solid var(--a);padding:2px 0 2px 16px}
.fact b{display:block;font-size:clamp(20px,2.2vw,26px);font-weight:800;letter-spacing:-.02em;line-height:1.15;text-transform:uppercase}
.fact span{display:block;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);margin-top:6px}
.tcards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tcard{position:relative;background:#fff;border:1px solid var(--line);border-radius:20px;padding:32px 28px 30px;box-shadow:var(--sh);display:flex;flex-direction:column;text-align:center;align-items:center}
.tcard .badge{position:absolute;top:-11px;right:18px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--g);padding:5px 10px;border-radius:6px}
.tcard .ic{width:56px;height:56px;border-radius:16px;margin:4px 0 14px}.tcard .ic svg{width:30px;height:30px}
.tcard h3{font-size:20px;font-weight:800;text-transform:uppercase;letter-spacing:-.01em}
.tcard p{color:var(--ink2);font-size:15px;margin-top:10px}
footer.pf{background:var(--ink);color:#fff;border-top:0;margin-top:0;padding:56px 0 36px;position:relative;overflow:hidden}
footer.pf::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--g)}
footer.pf .ft p{color:#a3a9c4}
.fcols{display:flex;gap:56px;flex-wrap:wrap}
.fcols h4{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#a9b6ff;margin-bottom:12px}
.fcols a,.fcols span{display:block;color:#e6e9f7;font-size:15px;margin-bottom:8px}.fcols a:hover{color:#fff}
footer.pf .copy{border-top-color:rgba(255,255,255,.12);color:#8d93ad}
@media(max-width:900px){.tcards{grid-template-columns:1fr}.facts{grid-template-columns:1fr 1fr;gap:22px 16px}}
@media(max-width:640px){.annc{font-size:13px;padding:9px 14px}.navphone{font-size:14px}.navphone .dot{display:none}.btn{font-size:14px;padding:0 22px}.btn-lg{height:56px;padding:0 24px;font-size:14px;white-space:normal;line-height:1.2;text-align:center}.fcols{gap:28px}}
@media(max-width:640px){.tcard,.incl .tcard{display:grid;grid-template-columns:48px 1fr;column-gap:16px;align-items:start;text-align:left;padding:22px 20px}.tcard .ic,.incl .tcard .ic{grid-row:span 2;width:48px;height:48px;border-radius:14px;margin:0}.tcard .ic svg{width:24px;height:24px}.tcard h3{font-size:16px;align-self:end}.tcard p{margin-top:4px}.tcards{gap:18px}}
.svc h2,.head h2{text-transform:uppercase;font-weight:800;letter-spacing:-.02em}
