:root{--bg:#07061a;--c1:#7c3aed;--c2:#06b6d4;--c3:#f472b6;--c4:#a3e635;--tx:#eceafe;--mut:#a5a3c7;--glass:rgba(255,255,255,.06);--bd:rgba(255,255,255,.12)}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}
body{font-family:'Space Grotesk',system-ui,sans-serif;background:var(--bg);color:var(--tx);line-height:1.6;overflow-x:hidden}
a{color:inherit}
.bg{position:fixed;inset:0;z-index:-1;overflow:hidden}
.orb{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55;animation:float 18s ease-in-out infinite alternate}
.o1{width:520px;height:520px;background:var(--c1);top:-120px;left:-120px}.o2{width:440px;height:440px;background:var(--c2);top:30%;right:-140px;animation-delay:-6s}.o3{width:380px;height:380px;background:var(--c3);bottom:-120px;left:30%;opacity:.35;animation-delay:-12s}
@keyframes float{to{transform:translate(80px,60px) scale(1.15)}}
.grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at center,#000 30%,transparent 80%)}
.preview-badge{position:fixed;top:12px;right:12px;z-index:100;background:#facc15;color:#111;font:700 11px 'Space Grotesk';letter-spacing:.15em;padding:4px 10px;border-radius:6px}
.nav{position:sticky;top:0;z-index:50;display:flex;justify-content:space-between;align-items:center;padding:16px 5vw;backdrop-filter:blur(14px);background:rgba(7,6,26,.55);border-bottom:1px solid var(--bd)}
.nav nav{display:flex;gap:26px;align-items:center;margin-right:80px}.nav nav a{text-decoration:none;color:var(--mut);font-weight:500}.nav nav a:hover{color:#fff}
.logo{font-family:Unbounded;font-weight:700;text-decoration:none;font-size:17px;white-space:nowrap}.logo em{font-style:normal;color:var(--c2)}
.mark{background:linear-gradient(135deg,var(--c1),var(--c2));padding:3px 8px;border-radius:8px;margin-right:4px}
.grad{background:linear-gradient(90deg,var(--c2),var(--c1),var(--c3),var(--c2));background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 6s linear infinite}
@keyframes shine{to{background-position:300% 0}}
h1,h2,h3{font-family:Unbounded;line-height:1.08;letter-spacing:-.02em}
h1{font-size:clamp(42px,8.5vw,118px);font-weight:900}h2{font-size:clamp(32px,5vw,64px);font-weight:900;margin-bottom:28px}h3{font-size:19px;font-weight:700;margin-bottom:10px}
.hero{min-height:88vh;display:flex;flex-direction:column;justify-content:center;padding:60px 5vw 40px;position:relative}
.pill,.tag{display:inline-block;align-self:flex-start;padding:6px 14px;border:1px solid var(--bd);border-radius:99px;background:var(--glass);font-size:14px;margin-bottom:22px}
.tag{border-color:var(--c4);color:var(--c4);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:12px}
.rotator{display:inline-block;min-height:1.1em}.word{display:inline-block;transition:opacity .4s,transform .4s}.word.out{opacity:0;transform:translateY(30px)}
.lead{font-size:clamp(17px,1.6vw,21px);color:var(--mut);max-width:680px;margin:26px 0}.center{text-align:center;margin:0 auto 30px}
.ctas{display:flex;flex-wrap:wrap;gap:14px}
.btn{display:inline-block;padding:15px 26px;border-radius:14px;font-weight:700;text-decoration:none;background:linear-gradient(135deg,var(--c1),var(--c2));box-shadow:0 0 30px rgba(124,58,237,.5);transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-3px);box-shadow:0 0 50px rgba(6,182,212,.6)}.btn.ghost{background:var(--glass);border:1px solid var(--bd);box-shadow:none}.btn.sm{padding:9px 16px;color:#fff!important}
.marquee{margin-top:70px;overflow:hidden;border-block:1px solid var(--bd);padding:14px 0;white-space:nowrap;font-family:Unbounded;font-weight:700;color:var(--mut);font-size:15px}
.marquee div{display:inline-block;animation:mq 30s linear infinite}@keyframes mq{to{transform:translateX(-50%)}}
.sec{padding:100px 5vw}.narrow{max-width:900px;margin:0 auto}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.card{background:var(--glass);border:1px solid var(--bd);border-radius:22px;padding:28px;backdrop-filter:blur(12px);transition:transform .3s,border-color .3s;position:relative;overflow:hidden}
.card:hover{transform:translateY(-6px);border-color:var(--c2)}
.card::before{content:"";position:absolute;inset:-1px;background:radial-gradient(400px circle at var(--x,50%) var(--y,0%),rgba(6,182,212,.18),transparent 40%);pointer-events:none}
.card p{color:var(--mut)}.card ul{list-style:none;margin-top:16px}.card li{padding:4px 0;font-size:15px}.card li::before{content:"✦ ";color:var(--c2)}
.ic{font-family:Unbounded;font-weight:900;font-size:42px;background:linear-gradient(135deg,var(--c3),var(--c1));-webkit-background-clip:text;color:transparent;margin-bottom:14px}
.split{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
.phone{width:min(360px,100%);justify-self:center;background:#0b141a;border:10px solid #1e1b3a;border-radius:40px;overflow:hidden;box-shadow:0 0 80px rgba(124,58,237,.45)}
.ph-top{display:flex;gap:10px;align-items:center;background:#1f2c34;padding:14px}.ph-top small{display:block;color:#8aa;font-size:12px}
.av{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--c4),var(--c2));display:grid;place-items:center;font-weight:700;color:#000}
.chat{height:440px;padding:14px;display:flex;flex-direction:column;gap:8px;overflow:hidden;background:#0b141a radial-gradient(rgba(255,255,255,.03) 1px,transparent 1px) 0 0/16px 16px}
.msg{max-width:82%;padding:8px 12px;border-radius:10px;font-size:14px;line-height:1.4;animation:pop .35s ease}
.msg.in{background:#202c33;align-self:flex-start}.msg.out{background:#005c4b;align-self:flex-end}
.typing{align-self:flex-start;background:#202c33;padding:10px 14px;border-radius:10px}.typing i{display:inline-block;width:6px;height:6px;margin:0 2px;border-radius:50%;background:#8aa;animation:bl 1s infinite}.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}
@keyframes bl{50%{opacity:.2}}@keyframes pop{from{opacity:0;transform:translateY(10px) scale(.95)}}
.ba{display:grid;grid-template-columns:1fr 1fr;gap:30px}.ba>div{border-radius:18px;overflow:hidden;position:relative;min-height:340px}
.lbl{position:absolute;top:12px;right:12px;z-index:2;font:700 12px Unbounded;padding:5px 10px;border-radius:8px;background:#000a}
.old{background:#c0c0c0;color:#000;font-family:"Times New Roman",serif;filter:saturate(.6)}.o-bar,.n-bar{padding:8px 12px;font:13px monospace;background:#ddd}.o-bar i{color:#b00;font-style:normal}
.o-body{padding:16px;background:#ffffe0;height:100%}.o-body marquee{color:blue;font-size:20px}.o-h{font-size:26px;color:#800;text-decoration:underline;margin:10px 0}.o-img{width:60%;height:90px;background:repeating-linear-gradient(45deg,#999 0 8px,#bbb 8px 16px);margin:10px 0}.o-link{color:blue;text-decoration:underline}
.new{background:linear-gradient(160deg,#111827,#1e1b4b);border:1px solid var(--bd)}.n-bar{background:#0f172a;color:#9ca3af}
.n-body{padding:18px}.n-hero{background:linear-gradient(135deg,var(--c1),var(--c2));border-radius:14px;padding:22px;display:flex;flex-direction:column;gap:6px}.n-hero b{font-family:Unbounded;font-size:20px}.n-hero i{font-style:normal;align-self:flex-start;background:#25d366;color:#000;font-weight:700;padding:6px 12px;border-radius:99px;margin-top:6px}
.n-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.n-row span{height:60px;border-radius:10px;background:var(--glass);border:1px solid var(--bd)}
.n-badges{display:flex;flex-wrap:wrap;gap:8px}.n-badges em{font-style:normal;font-size:12px;padding:4px 10px;border-radius:99px;background:rgba(6,182,212,.15);border:1px solid rgba(6,182,212,.4)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;counter-reset:s}
.step{padding:30px;border-radius:22px;background:var(--glass);border:1px solid var(--bd);position:relative}.step span{font:900 64px Unbounded;background:linear-gradient(135deg,var(--c4),var(--c2));-webkit-background-clip:text;color:transparent;display:block;line-height:1;margin-bottom:14px}.step p{color:var(--mut)}
details{background:var(--glass);border:1px solid var(--bd);border-radius:16px;padding:20px 24px;margin-bottom:14px}summary{cursor:pointer;font-weight:700;font-size:18px;list-style:none;display:flex;justify-content:space-between}summary::after{content:"+";color:var(--c2);font-size:24px;line-height:1}details[open] summary::after{content:"–"}details p{color:var(--mut);margin-top:12px}
.cta{text-align:center;padding:80px 6vw;border-radius:32px;background:linear-gradient(135deg,rgba(124,58,237,.35),rgba(6,182,212,.25));border:1px solid var(--bd);box-shadow:0 0 100px rgba(124,58,237,.3)}.cta .lead{margin:20px auto 30px}.cta .ctas{justify-content:center}
footer{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:40px 5vw;border-top:1px solid var(--bd);color:var(--mut);font-size:14px}footer p{margin-top:8px}
.wa-float{position:fixed;right:20px;bottom:20px;width:58px;height:58px;border-radius:50%;background:#25d366;display:grid;place-items:center;font-size:26px;text-decoration:none;box-shadow:0 0 30px rgba(37,211,102,.6);z-index:60;animation:pulse 2.5s infinite}@keyframes pulse{50%{box-shadow:0 0 0 14px rgba(37,211,102,0)}}
.js .reveal{opacity:0;transform:translateY(40px);transition:opacity .8s ease,transform .8s ease}.js .reveal.in{opacity:1;transform:none}
@media(max-width:1000px){.cards{grid-template-columns:1fr 1fr}.split,.ba,.steps{grid-template-columns:1fr}}
@media(max-width:640px){.nav nav a:not(.btn){display:none}.nav nav{margin-right:0}.nav{padding:12px 4vw}.logo{font-size:14px}.preview-badge{top:auto;bottom:90px;right:12px}.cards{grid-template-columns:1fr}.sec{padding:70px 5vw}.hero{min-height:auto;padding-top:50px}.cta{padding:50px 20px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
.rotator{display:block;min-height:2.2em}@media(min-width:1000px){.rotator{min-height:1.1em}}
/* SEO: answer blocks + service pages */
.qa-item{border-top:1px solid var(--bd);padding:26px 0}.qa-item h3{font-family:Unbounded;font-size:20px;margin-bottom:10px}.qa-a{font-size:18px;color:var(--tx)}.qa-item p+p{color:var(--mut);margin-top:10px}
.crumb{font-size:14px;color:var(--mut);margin-bottom:18px}.crumb a{color:var(--c2);text-decoration:none}
.svc-hero{padding:90px 5vw 40px;max-width:1100px;margin:0 auto}.svc-hero h1{font-family:Unbounded;font-size:clamp(34px,6vw,72px);line-height:1.05;margin-bottom:22px}
.svc-body{max-width:1100px;margin:0 auto;padding:20px 5vw 80px}.svc-body h2{font-family:Unbounded;font-size:clamp(24px,3.4vw,38px);margin:50px 0 18px}
.more{display:inline-block;margin-top:16px;color:var(--c2);font-weight:700;text-decoration:none}.card .more::before{content:none}
.related{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}

/* Corporate Services pill (links to AAA CSP site) */
.nav nav a.cs-link{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:999px;font-family:Unbounded,Syne,sans-serif;font-weight:700;font-size:.9rem;color:#0b1b33;background:linear-gradient(90deg,#e9c77b,#b8924a);box-shadow:0 4px 16px rgba(184,146,74,.35);white-space:nowrap}
.nav nav a.cs-link:after{content:"↗";font-size:.8em}
.nav nav a.cs-link:hover,.nav nav a.cs-link:focus{color:#0b1b33;filter:brightness(1.08)}
@media(max-width:640px){.nav nav a.cs-link{display:inline-flex;padding:7px 11px;font-size:.72rem}.nav nav{gap:8px}.nav .logo{font-size:.85rem}}
@media(max-width:640px){.nav{flex-wrap:wrap;row-gap:8px}.nav nav{width:100%;justify-content:space-between;gap:8px}.nav nav a.cs-link{padding:8px 14px!important;font-size:.78rem!important}.nav nav .btn.sm{padding:8px 14px}}
