:root{
  --ground:#000;
  --ground-2:#0A0A0B;
  --card:#0E0F11;
  --rule:rgba(196,210,232,.14);
  --rule-2:rgba(196,210,232,.24);
  --ink:#F3F6FB;
  --steel:#A9B8CD;
  --steel-dim:#7D8CA3;
  --amber:#F2B84B;
  --amber-ink:#1A1405;
  --wa:#25D366;
  --font:"Archivo","Helvetica Neue",Arial,sans-serif;
  --gutter:clamp(16px,5vw,72px);
  --max:1200px;
  color-scheme:dark;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{font-family:var(--font);background:var(--ground);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--amber);outline-offset:3px;border-radius:3px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}
.skip{position:absolute;left:-9999px;top:8px;background:var(--amber);color:var(--amber-ink);padding:8px 14px;z-index:100;font-weight:600}
.skip:focus{left:16px}

/* ---------- header ---------- */
.top{position:sticky;top:0;z-index:50;background:rgba(0,0,0,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--rule)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;height:68px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand svg{height:38px;width:auto}
.wordmark{font-weight:700;font-stretch:125%;font-size:22px;letter-spacing:.06em;line-height:1}
.nav{display:flex;align-items:center;gap:28px;font-size:15px}
.nav a{text-decoration:none;color:var(--steel);transition:color .15s}
.nav a:hover,.nav a[aria-current="page"]{color:var(--ink)}
.nav a.btn,.nav a.btn:hover{color:var(--amber-ink)}
.menu{display:none;position:relative}
.menu summary{list-style:none;cursor:pointer;padding:10px 12px;border:1px solid var(--rule-2);border-radius:4px;font-size:14px;color:var(--ink)}
.menu summary::-webkit-details-marker{display:none}
.menu[open] .panel{display:flex}
.menu .panel{display:none;flex-direction:column;position:absolute;right:0;top:calc(100% + 10px);background:var(--ground-2);border:1px solid var(--rule-2);border-radius:6px;min-width:240px;padding:8px}
.menu .panel a{padding:12px 14px;text-decoration:none;color:var(--ink);border-radius:4px}
.menu .panel a:hover{background:var(--card)}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:10px;padding:13px 20px;min-height:46px;background:var(--amber);color:var(--amber-ink);text-decoration:none;font-weight:600;font-size:15px;border-radius:4px;border:1px solid var(--amber);transition:background .15s}
.btn:hover{background:#F8C866}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--rule-2)}
.btn.ghost:hover{border-color:var(--steel);background:rgba(255,255,255,.03)}
.btn.sm{padding:9px 14px;min-height:40px;font-size:14px}
.btn svg{width:18px;height:18px}
.actions{display:flex;flex-wrap:wrap;gap:12px 14px;margin-top:32px}

/* ---------- hero ---------- */
.hero{position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid var(--rule)}
.hero .wrap{padding-top:clamp(72px,12vh,140px);padding-bottom:clamp(72px,12vh,140px)}
.net{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.net .link{stroke:rgba(196,210,232,.22);stroke-width:1.2;fill:none}
.net .node{fill:rgba(196,210,232,.5)}
.net .node.hub{fill:rgba(196,210,232,.8)}
.net .packet{fill:var(--amber);filter:url(#glow)}
.net .halo{fill:none;stroke:var(--amber);stroke-opacity:.45;stroke-width:1}
.vignette{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(120% 90% at 15% 45%,rgba(0,0,0,.9) 0%,rgba(0,0,0,.55) 45%,rgba(0,0,0,.2) 100%)}
.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--amber);font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--amber)}
h1{font-weight:600;font-stretch:105%;font-size:clamp(38px,6vw,76px);line-height:1.03;letter-spacing:-.025em;margin-top:18px;max-width:15ch;text-wrap:balance}
.lede{margin-top:22px;color:var(--steel);font-size:clamp(18px,1.6vw,21px);max-width:58ch}
.hero.sub h1{font-size:clamp(34px,4.6vw,58px);max-width:20ch}
.crumb{font-size:14px;color:var(--steel-dim)}
.crumb a{color:var(--steel);text-decoration:none}
.crumb a:hover{color:var(--ink)}

/* ---------- sections ---------- */
section.block{padding:clamp(64px,10vh,112px) 0;border-bottom:1px solid var(--rule)}
.head{max-width:720px;margin-bottom:44px}
h2{font-weight:600;font-stretch:105%;font-size:clamp(28px,3.4vw,44px);line-height:1.1;letter-spacing:-.02em;margin-top:12px;text-wrap:balance}
.head p{margin-top:16px;color:var(--steel);font-size:18px}
h3{font-size:19px;font-weight:600;line-height:1.3}

.grid{display:grid;gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:8px;overflow:hidden}
.grid.c3{grid-template-columns:repeat(3,1fr)}
.grid.c4{grid-template-columns:repeat(4,1fr)}
.grid.c2{grid-template-columns:repeat(2,1fr)}
.cell{background:var(--ground);padding:28px;position:relative}
a.cell{text-decoration:none;transition:background .15s}
a.cell:hover{background:var(--card)}
a.cell:hover .go{color:var(--amber);transform:translateX(3px)}
.cell .ic{width:42px;height:42px;border:1px solid var(--rule-2);border-radius:6px;display:grid;place-items:center;color:var(--amber);margin-bottom:22px}
.cell .ic svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.cell p{color:var(--steel);margin-top:8px;font-size:15.5px}
.cell .go{display:inline-block;margin-top:18px;font-size:14px;color:var(--steel);transition:transform .15s,color .15s}
.cell.feature{background:linear-gradient(160deg,#16120A 0%,#0A0A0B 60%)}
.cell.feature .tagpill{position:absolute;top:24px;right:24px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--amber);border:1px solid rgba(242,184,75,.4);padding:4px 8px;border-radius:999px}
.num{font-size:13px;color:var(--amber);font-weight:600;letter-spacing:.1em}

/* platform band */
.band{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center}
.ticks{list-style:none;display:grid;gap:14px;margin-top:28px}
.ticks li{display:flex;gap:12px;color:var(--steel)}
.ticks li b{color:var(--ink);font-weight:600}
.ticks li::before{content:"";flex:none;width:8px;height:8px;margin-top:9px;border-radius:50%;background:var(--amber)}

/* mock dashboard */
.dash{border:1px solid var(--rule-2);border-radius:10px;background:var(--ground-2);overflow:hidden;font-size:13px;box-shadow:0 30px 80px -30px rgba(242,184,75,.18)}
.dash .bar{display:flex;align-items:center;gap:7px;padding:12px 14px;border-bottom:1px solid var(--rule)}
.dash .bar i{width:9px;height:9px;border-radius:50%;background:#2A2D33}
.dash .bar span{margin-left:10px;color:var(--steel-dim)}
.dash .body{padding:18px;display:grid;gap:14px}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.kpi{border:1px solid var(--rule);border-radius:6px;padding:12px}
.kpi small{color:var(--steel-dim);display:block}
.kpi strong{font-size:22px;font-weight:600;font-stretch:105%}
.kpi strong em{font-style:normal;color:var(--amber)}
.rows{border:1px solid var(--rule);border-radius:6px}
.row{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:10px 12px;border-top:1px solid var(--rule);color:var(--steel)}
.row:first-child{border-top:0}
.row b{color:var(--ink);font-weight:500}
.dot{width:8px;height:8px;border-radius:50%;background:#3DDC84;display:inline-block;margin-right:8px}
.dot.warn{background:var(--amber)}
.spark{height:56px;border:1px solid var(--rule);border-radius:6px;padding:8px}
.spark svg{width:100%;height:100%}
.note{font-size:12.5px;color:var(--steel-dim);margin-top:10px}

/* chips */
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips li{list-style:none;border:1px solid var(--rule-2);border-radius:999px;padding:8px 16px;color:var(--steel);font-size:15px}

/* service page */
.prose p{color:var(--steel);font-size:18px;max-width:64ch}
.prose p+p{margin-top:16px}
.split{display:grid;grid-template-columns:1fr 320px;gap:56px;align-items:start}
.aside{border:1px solid var(--rule-2);border-radius:8px;padding:24px;position:sticky;top:96px;background:var(--ground-2)}
.aside h3{font-size:16px}
.aside .chips{margin-top:14px}
.aside .chips li{font-size:13.5px;padding:6px 12px}
.aside .btn{width:100%;justify-content:center;margin-top:20px}

/* contact */
.contact{display:grid;grid-template-columns:1.2fr 1fr;gap:56px;align-items:center}
.contact .card{border:1px solid var(--rule-2);border-radius:10px;padding:28px;background:var(--ground-2)}
.contact .card dl{display:grid;gap:18px}
.contact dt{font-size:13px;color:var(--steel-dim);letter-spacing:.08em;text-transform:uppercase}
.contact dd a{font-size:22px;font-weight:600;text-decoration:none;font-stretch:105%}
.contact dd a:hover{color:var(--amber)}

/* footer */
footer.foot{padding:48px 0 calc(48px + env(safe-area-inset-bottom));color:var(--steel-dim);font-size:14px}
.foot .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
.foot h4{color:var(--ink);font-size:14px;font-weight:600;margin-bottom:12px}
.foot ul{list-style:none;display:grid;gap:8px}
.foot a{text-decoration:none;color:var(--steel)}
.foot a:hover{color:var(--ink)}
.foot .legal{margin-top:40px;padding-top:20px;border-top:1px solid var(--rule);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

/* WhatsApp float */
.wa-float{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:60;width:58px;height:58px;border-radius:50%;background:var(--wa);display:grid;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.5),0 0 0 0 rgba(37,211,102,.5);animation:wa-ping 3s ease-out infinite;transition:transform .15s}
.wa-float:hover{transform:scale(1.06)}
.wa-float svg{width:30px;height:30px;fill:#fff}
@keyframes wa-ping{0%{box-shadow:0 10px 30px rgba(0,0,0,.5),0 0 0 0 rgba(37,211,102,.45)}70%{box-shadow:0 10px 30px rgba(0,0,0,.5),0 0 0 14px rgba(37,211,102,0)}100%{box-shadow:0 10px 30px rgba(0,0,0,.5),0 0 0 0 rgba(37,211,102,0)}}

/* reveal */
.reveal{opacity:0;transform:translateY(10px);animation:in .7s cubic-bezier(.2,.7,.2,1) forwards}
.reveal.d1{animation-delay:.1s}.reveal.d2{animation-delay:.22s}.reveal.d3{animation-delay:.34s}
@keyframes in{to{opacity:1;transform:none}}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal{animation:none;opacity:1;transform:none}
  .net .packet,.net .halo{display:none}
  .wa-float{animation:none}
}

/* ---------- responsive ---------- */
@media (max-width:1000px){
  .grid.c4{grid-template-columns:repeat(2,1fr)}
  .grid.c3{grid-template-columns:repeat(2,1fr)}
  .band,.contact,.split{grid-template-columns:1fr;gap:40px}
  .aside{position:static}
  .foot .cols{grid-template-columns:1fr 1fr}
  .foot .cols>div:first-child{grid-column:1/-1}
}
@media (max-width:820px){
  .nav{display:none}
  .menu{display:block}
}
@media (max-width:620px){
  .grid.c4,.grid.c3,.grid.c2{grid-template-columns:1fr}
  .cell{padding:24px 20px}
  .kpis{grid-template-columns:1fr 1fr 1fr;gap:6px}
  .kpi{padding:10px 8px}
  .kpi strong{font-size:18px}
  .top .call{display:none}
  .actions .btn{width:100%;justify-content:center}
  .foot .cols{grid-template-columns:1fr}
}

/* ================= v3 redesign additions ================= */
/* utility bar */
.utility{background:#000;border-bottom:1px solid var(--rule);font-size:13px;color:var(--steel-dim)}
.utility .wrap{display:flex;justify-content:space-between;align-items:center;height:36px;gap:16px}
.u-links{display:flex;gap:20px}
.u-links a{display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:var(--steel)}
.u-links a:hover{color:var(--amber)}
.u-links svg{width:14px;height:14px}

/* mega dropdown */
.dd{position:relative}
.dd>a{display:inline-flex;gap:4px;align-items:center}
.dd>a span{font-size:10px}
.dd-panel{position:absolute;left:-24px;top:100%;padding-top:22px;display:none;grid-template-columns:1fr 1fr;gap:4px;width:640px}
.dd-panel::before{content:"";position:absolute;inset:14px 0 0 0;background:var(--ground-2);border:1px solid var(--rule-2);border-radius:10px;box-shadow:0 30px 60px rgba(0,0,0,.6);z-index:-1}
.dd:hover .dd-panel,.dd:focus-within .dd-panel{display:grid;padding:22px 10px 10px}
.dd-panel a{display:flex;gap:12px;padding:12px;border-radius:6px;color:var(--ink)!important}
.dd-panel a:hover{background:var(--card)}
.dd-panel b{display:block;font-weight:600;font-size:14px}
.dd-panel small{display:block;color:var(--steel-dim);font-size:12.5px;line-height:1.4;margin-top:2px}
.dd-ic{flex:none;width:34px;height:34px;border:1px solid var(--rule-2);border-radius:6px;display:grid;place-items:center;color:var(--amber)}
.dd-ic svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

/* photo hero */
.hero.photo{min-height:min(88vh,820px);display:flex;align-items:center}
.hero.photo.sub{min-height:min(70vh,620px)}
.hero.photo .wrap{width:100%}
.hero-img{position:absolute;inset:0;z-index:-2}
.hero-img img{width:100%;height:100%;object-fit:cover;object-position:70% 50%}
.hero.photo::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.82) 38%,rgba(0,0,0,.35) 70%,rgba(0,0,0,.2) 100%),linear-gradient(0deg,#000 0%,rgba(0,0,0,0) 30%)}
.hero.photo .net{opacity:.35}
.proof{list-style:none;display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:30px;color:var(--steel);font-size:14px}
.proof li{display:flex;align-items:center;gap:8px}
.proof li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--amber)}

/* stats */
.stats{border-bottom:1px solid var(--rule);background:var(--ground-2)}
.grid.bare{background:none;border:0;border-radius:0}
.stat{padding:34px 24px 34px 0;border-right:1px solid var(--rule)}
.stat:last-child{border-right:0}
.stat strong{display:block;font-size:clamp(36px,4vw,52px);font-weight:600;font-stretch:110%;color:var(--amber);line-height:1}
.stat span{display:block;margin-top:10px;color:var(--steel);font-size:15px;max-width:22ch}
.stats .grid>.stat+.stat{padding-left:24px}

/* section head variants */
.head.center{margin-left:auto;margin-right:auto;text-align:center}
.head.center .eyebrow{justify-content:center}
.row-head{max-width:none;display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:end}
.row-head>p{margin:0}

/* image service cards */
.svc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.svc{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:300px;border:1px solid var(--rule);border-radius:10px;overflow:hidden;text-decoration:none;background:var(--card);isolation:isolate}
.svc.big{grid-column:span 2;min-height:360px}
.svc img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.svc::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.7) 45%,rgba(0,0,0,.15) 100%)}
.svc:hover img{transform:scale(1.05)}
.svc:hover{border-color:rgba(242,184,75,.5)}
.svc:hover .go{color:var(--amber);transform:translateX(3px)}
.svc-body{padding:24px}
.svc-body p{color:var(--steel);margin-top:6px;font-size:15px}
.svc .ic{width:38px;height:38px;border:1px solid var(--rule-2);border-radius:6px;display:grid;place-items:center;color:var(--amber);margin-bottom:16px;background:rgba(0,0,0,.4)}
.svc .ic svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.svc .go{display:inline-block;margin-top:14px;font-size:14px;color:var(--steel);transition:transform .15s,color .15s}
.svc.saas{background:linear-gradient(160deg,#21190B 0%,#0A0A0B 70%);border-color:rgba(242,184,75,.35)}
.svc.saas::after{display:none}
.svc .tagpill,.cell .tagpill{position:absolute;top:20px;right:20px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--amber);border:1px solid rgba(242,184,75,.4);padding:4px 8px;border-radius:999px}
.svc-grid.compact .svc{min-height:200px}

/* dashboard tabs */
.dash .bar .pv{margin-left:auto;font-style:normal;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--amber);border:1px solid rgba(242,184,75,.35);padding:3px 8px;border-radius:999px}
.tabs{display:flex;flex-wrap:wrap;padding:12px 18px 18px;gap:6px}
.tabs input{position:absolute;opacity:0;pointer-events:none}
.tabs label{cursor:pointer;padding:7px 12px;border-radius:999px;font-size:13px;color:var(--steel);border:1px solid transparent}
.tabs label:hover{color:var(--ink)}
.tabs input:checked+label{color:var(--ink);border-color:var(--rule-2);background:var(--card)}
.tabs input:focus-visible+label{outline:2px solid var(--amber);outline-offset:2px}
.tp{display:none;width:100%;margin-top:10px;gap:14px;flex-direction:column}
#dt1:checked~.tp1,#dt2:checked~.tp2,#dt3:checked~.tp3,#dt4:checked~.tp4{display:flex}
.topo{width:100%;height:auto;border:1px solid var(--rule);border-radius:6px;padding:10px}
.dash .note{margin-top:0}

/* ecosystem */
.eco-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.eco{width:100%;min-width:640px;height:auto;display:block;margin:0 auto;max-width:980px}

/* steps + photo */
.band.rev{grid-template-columns:1fr 1.05fr}
.photo-card{border-radius:10px;overflow:hidden;border:1px solid var(--rule);aspect-ratio:4/5}
.photo-card img{width:100%;height:100%;object-fit:cover}
.steps{list-style:none;margin-top:28px;display:grid;gap:0;border-top:1px solid var(--rule)}
.steps li{display:grid;grid-template-columns:56px 1fr;gap:12px;padding:20px 0;border-bottom:1px solid var(--rule)}
.steps p{color:var(--steel);margin-top:4px}
.ticks.sm{margin-top:18px;gap:8px}
.ticks.sm li{font-size:14.5px}

/* vendors */
.vendors{padding:56px 0}
.vendor-row{display:flex;flex-wrap:wrap;gap:12px 36px;margin-top:20px;font-size:clamp(18px,1.8vw,24px);font-weight:600;font-stretch:110%;color:rgba(243,246,251,.42)}
.vendor-row span{transition:color .15s}
.vendor-row span:hover{color:var(--ink)}

.aside-p{color:var(--steel);font-size:14.5px;margin-top:8px}
.cta-final{background:radial-gradient(80% 120% at 50% 100%,rgba(242,184,75,.08),transparent 60%)}
.foot .cols{grid-template-columns:1.4fr 1.2fr 1fr 1fr}

@media (prefers-reduced-motion:reduce){ .svc img{transition:none} .eco .flow{display:none} }
@media (max-width:1000px){
  .svc-grid{grid-template-columns:repeat(2,1fr)}
  .row-head{grid-template-columns:1fr;gap:16px}
  .band.rev .photo-card{aspect-ratio:16/10;order:2}
  .stats .grid{grid-template-columns:repeat(2,1fr)}
  .stat:nth-child(2){border-right:0}
  .stat:nth-child(n+3){border-top:1px solid var(--rule)}
  .stats .grid>.stat:nth-child(3){padding-left:0}
}
@media (max-width:820px){ .utility .wrap>span:first-child{display:none} .utility .wrap{justify-content:flex-end} }
@media (max-width:620px){
  .svc-grid{grid-template-columns:1fr}
  .svc.big{grid-column:auto;min-height:300px}
  .svc{min-height:260px}
  .hero.photo{min-height:auto}
  .hero.photo::after{background:linear-gradient(0deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.78) 60%,rgba(0,0,0,.55) 100%)}
  .stat{padding:24px 12px 24px 0}
  .stats .grid>.stat+.stat{padding-left:12px}
  .stats .grid>.stat:nth-child(3){padding-left:0}
  .stat span{font-size:13.5px}
  .tabs label{padding:6px 9px;font-size:12px}
  .dash .bar span{display:none}
}
.head .eyebrow{color:var(--amber);margin-top:0}

/* ---------- Preloader (logo build) ---------- */
.preloader{position:fixed;inset:0;z-index:9999;background:#000;display:grid;place-items:center;
  animation:plOut .55s cubic-bezier(.7,0,.3,1) 2.05s forwards;pointer-events:none}
.pl-seen .preloader{display:none}
.pl-in{display:flex;flex-direction:column;align-items:center;gap:22px}
.pl-mark{overflow:visible}
.pl-ring,.pl-edges path,.pl-spokes path{fill:none;stroke-dasharray:1;stroke-dashoffset:1;stroke-linecap:round}
.pl-ring{stroke:#F3F6FB;stroke-opacity:.28;stroke-width:1.6;transform:rotate(-90deg);animation:plDraw .8s cubic-bezier(.65,0,.35,1) .1s forwards}
.pl-edges path{stroke:#F3F6FB;stroke-opacity:.55;stroke-width:1.6;animation:plDraw .4s ease-out forwards}
.pl-edges path:nth-child(1){animation-delay:.75s}.pl-edges path:nth-child(2){animation-delay:.9s}.pl-edges path:nth-child(3){animation-delay:1.05s}
.pl-spokes path{stroke:#F3F6FB;stroke-opacity:.55;stroke-width:1.6;animation:plDraw .3s ease-out forwards}
.pl-spokes path:nth-child(1){animation-delay:.45s}.pl-spokes path:nth-child(2){animation-delay:.5s}.pl-spokes path:nth-child(3){animation-delay:.55s}
.pl-n{fill:#F3F6FB;transform-box:fill-box;transform-origin:center;transform:scale(0);animation:plPop .35s cubic-bezier(.34,1.56,.64,1) forwards}
.pl-n.n0{animation-delay:.3s}.pl-n.n1{animation-delay:.6s}.pl-n.n2{animation-delay:.68s}
.pl-amber{fill:#F2B84B;animation-delay:1.2s;filter:drop-shadow(0 0 4px rgba(242,184,75,.8))}
.pl-pulse{fill:none;stroke:#F2B84B;stroke-width:1;opacity:0;transform-box:fill-box;transform-origin:center;animation:plPulse .9s ease-out 1.3s 2}
.pl-word{display:flex;gap:.14em;font:700 22px/1 Archivo,system-ui,sans-serif;font-stretch:125%;letter-spacing:.1em;color:#F3F6FB}
.pl-word span{opacity:0;transform:translateY(8px);animation:plRise .45s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(1.15s + var(--i)*.06s)}
.pl-bar{width:132px;height:2px;background:rgba(243,246,251,.12);overflow:hidden;border-radius:2px}
.pl-bar i{display:block;height:100%;background:#F2B84B;transform:scaleX(0);transform-origin:left;animation:plBar 1.9s cubic-bezier(.4,0,.2,1) .1s forwards}
@keyframes plDraw{to{stroke-dashoffset:0}}
@keyframes plPop{to{transform:scale(1)}}
@keyframes plPulse{0%{opacity:.9;transform:scale(1)}100%{opacity:0;transform:scale(3.4)}}
@keyframes plRise{to{opacity:1;transform:none}}
@keyframes plBar{to{transform:scaleX(1)}}
@keyframes plOut{to{opacity:0;visibility:hidden}}
@media (prefers-reduced-motion:reduce){.preloader{display:none}}

/* ---------- mobile fixes + sitemap page ---------- */
@media (max-width:1000px){
  .band.rev{grid-template-columns:1fr}
  .cell.feature .tagpill,.cell .tagpill{position:static;display:table;margin-bottom:14px}
}
.legal a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.sm-list{list-style:none;margin-top:14px;display:grid;gap:10px}
.sm-list a{color:var(--steel);text-decoration:none}
.sm-list a:hover{color:var(--amber)}
@media (max-width:1000px){
  .foot .cols{grid-template-columns:1fr 1fr}
  .foot .cols>div:first-child{grid-column:1/-1}
}
@media (max-width:620px){
  .foot .cols{grid-template-columns:1fr 1fr;gap:32px 20px}
  .foot .cols>div:nth-child(2){grid-column:1/-1}
  .foot .cols a[href^="tel:"]{white-space:nowrap}
  .foot{padding-bottom:96px}
}
