/* Verdexo — design system v2
   Kree8-inspired: app-quality polish on a classic website layout.
   One accent gradient (logo cyan → royal blue → violet), cool neutrals, soft tinted shadows,
   serif-italic accent words, framed media, generous white space. */

@font-face{font-family:"Jakarta";src:url(/media/fonts/plus-jakarta-sans-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Jakarta";src:url(/media/fonts/plus-jakarta-sans-500.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Jakarta";src:url(/media/fonts/plus-jakarta-sans-600.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Jakarta";src:url(/media/fonts/plus-jakarta-sans-700.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Jakarta";src:url(/media/fonts/plus-jakarta-sans-800.woff2) format("woff2");font-weight:800;font-display:swap}

:root{
  /* v3: flat, neutral, one brand blue. No gradients, no glows. */
  --bg:#F2F3F5; --bg-2:#E7E9ED; --card:#fff;
  --ink:#14171F; --text:#363C48; --muted:#9097A3; --muted-2:#5F6673; --line:#E2E4E9;
  --blue:#2350E0; --blue-d:#1B3FB5; --cyan:#2350E0; --violet:#2350E0;
  --tint:#EAEFFC; --tint-v:#EAEFFC; --hl:#D9E3FF;
  --night:#14171F; --night-2:#1C2029; --night-line:#2A2F3A; --night-text:#A7ADB9;
  --grad:linear-gradient(var(--blue),var(--blue));
  --grad-soft:linear-gradient(#E9EBEF,#E9EBEF);
  --sh-1:0 0 0 1px rgba(20,23,31,.06),0 1px 2px rgba(20,23,31,.04);
  --sh-2:0 0 0 1px rgba(20,23,31,.06),0 14px 30px -18px rgba(20,23,31,.22);
  --sh-btn:0 0 0 1px rgba(20,23,31,.08),0 1px 2px rgba(20,23,31,.06);
  --r-xl:32px; --r-lg:24px; --r-md:18px; --r-sm:12px;
  --font:"Jakarta",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --serif:"Instrument Serif",Georgia,"Times New Roman",serif;
  --hand:"Caveat",cursive;
  --ease:cubic-bezier(.22,1,.36,1);
  --max:1200px; --gut:28px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{overflow-x:clip;scroll-behavior:smooth;scroll-padding-top:100px;-webkit-text-size-adjust:100%}
body{font-family:var(--font);background:var(--bg);color:var(--text);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}
img,video,svg{display:block;max-width:100%}
button,input,select,textarea{font:inherit;color:inherit}
button{border:0;background:none;cursor:pointer}
:focus-visible{outline:2.5px solid var(--blue);outline-offset:3px;border-radius:10px}
.skip{position:absolute;left:-999px;top:10px;z-index:200;background:var(--ink);color:#fff;padding:10px 16px;border-radius:12px}
.skip:focus{left:16px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
.narrow{max-width:780px;margin:0 auto;padding:0 var(--gut)}
h1,h2,h3,h4{color:var(--ink);letter-spacing:-.03em;line-height:1.12;font-weight:700}
/* two-tone headings (Kree8-style): the accent words are simply quieter, same typeface */
em.accent,.accent{font-style:normal;font-weight:inherit;color:var(--muted)}
h1,h2,h3{text-wrap:balance}
p,li{text-wrap:pretty}
.g{color:var(--muted)}

/* ---------- Buttons ---------- */
.btn,.vx-ab-btn,.vx2-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;height:52px;padding:0 26px;border-radius:999px;background:var(--card);box-shadow:var(--sh-btn);font-weight:600;font-size:15.5px;color:var(--ink);white-space:nowrap;transition:transform .3s var(--ease),box-shadow .3s,background .3s}
.btn:hover,.vx-ab-btn:hover,.vx2-btn:hover{transform:translateY(-2px);box-shadow:0 1px 0 #fff inset,0 4px 8px rgba(20,35,90,.07),0 18px 28px -14px rgba(20,35,90,.48)}
.btn.dark,.vx-ab-btn.white,.vx2-btn:not(.ghost):not(.wa){background:var(--ink);color:#fff;box-shadow:0 1px 0 rgba(255,255,255,.16) inset,0 12px 22px -12px rgba(13,21,48,.7)}
.btn.grad{background:var(--grad);color:#fff;box-shadow:0 12px 24px -12px rgba(37,99,235,.7)}
.btn.wa,.vx2-btn.wa,.vx-ab-btn.wa{background:#1FAF5A;color:#fff;box-shadow:0 12px 22px -12px rgba(31,175,90,.65)}
.btn.sm{height:42px;padding:0 18px;font-size:14px}
.btn .ico,.vx-ab-btn .ico,.vx2-btn .ico{width:18px;height:18px;flex:none}
.btn-row,.vx-ab-actions,.vx2-btns{display:flex;flex-wrap:wrap;gap:12px}

/* ---------- Header ---------- */
.site-head{position:sticky;top:12px;z-index:60;padding:0 16px}
.nav{max-width:var(--max);margin:0 auto;height:68px;display:flex;align-items:center;gap:18px;padding:0 10px 0 22px;border-radius:999px;background:rgba(255,255,255,.78);backdrop-filter:blur(18px) saturate(1.5);-webkit-backdrop-filter:blur(18px) saturate(1.5);border:1px solid rgba(255,255,255,.95);box-shadow:0 12px 32px -20px rgba(20,35,90,.4)}
.logo img{height:30px;width:auto}
.menu{display:flex;align-items:center;gap:2px;margin:0 auto;list-style:none}
.menu>li{position:relative}
.menu>li>a,.menu>li>button{display:inline-flex;align-items:center;gap:6px;height:44px;padding:0 14px;border-radius:999px;font-size:15px;font-weight:500;color:var(--text);transition:background .2s,color .2s}
.menu>li>a:hover,.menu>li>button:hover,.menu>li.open>button{background:rgba(37,99,235,.08);color:var(--ink)}
.menu .chev{width:14px;height:14px;transition:transform .3s var(--ease)}
.menu li.open .chev{transform:rotate(180deg)}
.mega{position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%,8px);opacity:0;pointer-events:none;transition:.3s var(--ease);background:rgba(255,255,255,.97);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid #fff;border-radius:28px;box-shadow:0 30px 60px -24px rgba(20,35,90,.45);padding:18px;display:grid;gap:6px}
.menu li.open .mega{opacity:1;transform:translate(-50%,0);pointer-events:auto}
.mega::before{content:"";position:absolute;left:0;right:0;top:-16px;height:16px}
.mega.svc{grid-template-columns:repeat(4,220px)}
.mega.loc{grid-template-columns:230px 260px}
.mega h6{font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);font-weight:700;padding:8px 12px 6px}
.mega a{display:block;padding:9px 12px;border-radius:12px;font-size:14.5px;color:var(--text);line-height:1.35;transition:background .2s}
.mega a:hover{background:var(--bg);color:var(--ink)}
.mega a small{display:block;font-size:12.5px;color:var(--muted-2);margin-top:2px}
.mega .all{margin-top:6px;font-weight:600;color:var(--blue)}
.mega .chips{display:flex;flex-wrap:wrap;gap:6px;padding:4px 8px}
.mega .chips a{padding:6px 11px;border-radius:999px;background:var(--bg);font-size:13px}
.head-cta{display:flex;align-items:center;gap:8px}
.icon-btn{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--card);box-shadow:var(--sh-btn);color:var(--ink);transition:transform .3s var(--ease)}
.icon-btn:hover{transform:scale(1.06)}
.icon-btn svg{width:20px;height:20px}
.burger{display:none}
.drawer{display:none}

/* ---------- Floating contact ---------- */
.float-cta{position:fixed;right:18px;bottom:18px;z-index:55;display:flex;flex-direction:column;gap:10px}
.float-cta a{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;color:#fff;box-shadow:0 14px 28px -10px rgba(13,21,48,.55);transition:transform .3s var(--ease)}
.float-cta a:hover{transform:scale(1.08)}
.float-cta .wa{background:#1FAF5A}
.float-cta .call{background:var(--ink)}
.float-cta svg{width:24px;height:24px}

/* ---------- Page hero (inner pages) ---------- */
.p-hero{padding:22px 16px 0}
.p-hero-in{position:relative;max-width:1260px;margin:0 auto;border-radius:var(--r-xl);overflow:hidden;background:
  radial-gradient(60% 80% at 100% 0%,rgba(110,75,227,.18),transparent 60%),
  radial-gradient(50% 70% at 0% 100%,rgba(34,184,240,.16),transparent 60%),
  linear-gradient(180deg,#FFFFFF 0%,#F2F6FF 100%);
  border:1px solid #fff;box-shadow:var(--sh-2)}
.p-hero-in::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(37,99,235,.14) 1px,transparent 1.4px);background-size:24px 24px;mask-image:radial-gradient(70% 90% at 75% 40%,#000,transparent 75%);pointer-events:none}
.p-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:48px;align-items:center;padding:56px 56px 56px}
.vx-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13.5px;color:var(--muted-2);margin-bottom:22px}
.vx-crumbs a{color:var(--muted-2);transition:color .2s}
.vx-crumbs a:hover{color:var(--blue)}
.vx-crumbs span:last-child{color:var(--ink);font-weight:600}
.vx-ab-pill,.pill{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 14px;border-radius:999px;background:#fff;box-shadow:var(--sh-btn);font-size:13px;font-weight:600;color:var(--ink)}
.vx-ab-pill i,.pill i{width:8px;height:8px;border-radius:50%;background:var(--grad);box-shadow:0 0 0 4px rgba(37,99,235,.12)}
.p-hero h1{font-size:clamp(38px,5.2vw,66px);line-height:1.04;letter-spacing:-.045em;margin:20px 0 20px;font-weight:700}
.p-hero .lead{font-size:19px;color:var(--muted-2);max-width:620px;line-height:1.6}
.p-hero .lead a{color:var(--ink)}
.p-hero .vx-ab-actions{margin-top:30px}
.hero-media{position:relative;justify-self:center;width:100%;max-width:380px}
.device{position:relative;margin:0 auto;width:min(290px,78%);aspect-ratio:9/16;border-radius:34px;padding:8px;background:#0D1530;box-shadow:0 40px 70px -26px rgba(13,21,48,.6),0 0 0 1px rgba(255,255,255,.08) inset;transform:rotate(2deg)}
.device video,.device img{width:100%;height:100%;object-fit:cover;border-radius:27px;background:#1a1f3a}
.frame{position:relative;border-radius:26px;padding:8px;background:#fff;box-shadow:var(--sh-2);transform:rotate(-1.5deg)}
.frame img{width:100%;aspect-ratio:4/4.3;object-fit:cover;border-radius:20px}
.hm-chip{position:absolute;display:inline-flex;align-items:center;gap:8px;padding:10px 15px;border-radius:999px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 18px 30px -16px rgba(13,21,48,.45);font-size:13.5px;font-weight:600;color:var(--ink);white-space:nowrap;animation:drift 7s ease-in-out infinite}
.hm-chip b{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--tint);font-size:13px}
.hm-chip.c1{left:-6%;top:16%}
.hm-chip.c2{right:-4%;bottom:14%;animation-delay:-3s}
@keyframes drift{50%{transform:translateY(-8px)}}

/* ---------- Sections & typography ---------- */
main{display:block}
.verdexo-section,.sec{max-width:var(--max);margin:0 auto;padding:96px var(--gut) 0}
.verdexo-section:last-child{padding-bottom:20px}
.verdexo-eyebrow,.eyebrow{display:flex;align-items:center;gap:14px;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-bottom:16px}
.verdexo-eyebrow::after,.eyebrow.line::after{content:"";flex:1;height:1px;background:var(--line);max-width:420px}
.verdexo-section>h2,.sec h2,.h2{font-size:clamp(30px,3.8vw,46px);letter-spacing:-.04em;line-height:1.08;max-width:880px;margin-bottom:18px}
.verdexo-section h2 .g{color:var(--muted)}
.verdexo-section>p,.verdexo-intro,.lede{font-size:18px;color:var(--muted-2);max-width:720px;margin-bottom:34px}
.verdexo-section p{margin-bottom:14px}
.verdexo-section p:last-child{margin-bottom:0}
.vx-inline-link,.prose a,.verdexo-intro a{color:var(--ink);font-weight:600;background:linear-gradient(var(--hl),var(--hl)) 0 92%/100% 35% no-repeat;transition:background-size .3s var(--ease)}
.vx-inline-link:hover{background-size:100% 100%}
strong,b{color:var(--ink)}

/* split: copy + aside card */
.vx-ab-split{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:56px;align-items:start}
.vx-ab-split>div>h2{font-size:clamp(30px,3.6vw,44px);letter-spacing:-.04em;margin-bottom:20px}
.vx-ab-split>div>p{font-size:17.5px;margin-bottom:16px}
.vx-ab-split>div>p:last-child{margin-bottom:0}
.vx-glance,.vx-loc-office,.vx2-route{position:sticky;top:110px;border-radius:var(--r-lg);padding:28px;background:var(--night);color:var(--night-text);box-shadow:var(--sh-2);overflow:hidden}
.vx-glance::before,.vx-loc-office::before,.vx2-route::before{content:"";position:absolute;width:320px;height:320px;right:-120px;top:-140px;background:radial-gradient(circle,rgba(37,99,235,.55),transparent 65%);pointer-events:none}
.vx-glance h3,.vx-loc-office h3,.vx2-route h3{position:relative;color:#fff;font-size:21px;margin:16px 0 14px}
.vx-glance ul{position:relative;list-style:none;display:grid;gap:12px}
.vx-glance li{display:flex;gap:12px;font-size:15.5px;color:#DCE2F2;line-height:1.45}
.vx-glance li::before{content:"";flex:none;width:20px;height:20px;margin-top:1px;border-radius:50%;background:rgba(34,184,240,.18) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2366D1FF' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L19 7'/%3E%3C/svg%3E") center/11px no-repeat}
.vx-loc-office address,.vx2-route address{position:relative;font-style:normal;color:#fff;font-weight:600;font-size:16px;line-height:1.5;margin-bottom:10px}
.vx-loc-office p,.vx2-route p{position:relative;font-size:15px;line-height:1.55;margin-bottom:18px}
.acts{position:relative;display:flex;flex-wrap:wrap;gap:8px}
.acts a{display:inline-flex;align-items:center;height:42px;padding:0 16px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);color:#fff;font-size:14px;font-weight:600;transition:background .25s}
.acts a:first-child{background:#fff;color:var(--ink)}
.acts a:hover{background:rgba(255,255,255,.2)}
.acts a:first-child:hover{background:#E8EEFF}

/* icon chip used everywhere */
.vx-svc-ico,.vx-ab-ico,.ic{display:inline-grid;place-items:center;flex:none;width:46px;height:46px;border-radius:15px;background:var(--grad);color:#fff;box-shadow:0 10px 20px -10px rgba(37,99,235,.7),inset 0 1px 0 rgba(255,255,255,.3)}
.vx-svc-ico svg,.vx-ab-ico svg,.ic svg{width:22px;height:22px}
.vx-glance .vx-svc-ico,.vx-loc-office .vx-svc-ico{position:relative;background:rgba(255,255,255,.1);box-shadow:none;border:1px solid rgba(255,255,255,.18)}

/* what's included */
.vx-inc{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;counter-reset:inc}
.vx-inc.four{grid-template-columns:repeat(2,1fr)}
.vx-inc li{position:relative;background:var(--card);border-radius:var(--r-md);padding:26px 24px 24px;box-shadow:var(--sh-1);transition:transform .4s var(--ease),box-shadow .4s}
.vx-inc li:hover{transform:translateY(-4px);box-shadow:var(--sh-2)}
.vx-inc li>b{position:absolute;right:22px;top:20px;font-family:var(--serif);font-style:italic;font-weight:400;font-size:30px;line-height:1;color:var(--muted);opacity:.7}
.vx-inc .tick{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:var(--tint);margin-bottom:18px}
.vx-inc .tick::before{content:"";width:18px;height:18px;background:var(--blue);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L19 7'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L19 7'/%3E%3C/svg%3E") center/contain no-repeat}
.vx-inc h3{font-size:18.5px;margin-bottom:8px;letter-spacing:-.02em}
.vx-inc p{font-size:15.5px;color:var(--muted-2);line-height:1.55}

/* steps */
.vx-steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;position:relative}
.vx-steps::before{content:"";position:absolute;left:28px;right:28px;top:27px;height:2px;background:repeating-linear-gradient(90deg,var(--line) 0 8px,transparent 8px 16px)}
.vx-steps li{position:relative}
.vx-steps .dot{position:relative;display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:#fff;box-shadow:var(--sh-btn);font-family:var(--serif);font-style:italic;font-size:28px;color:var(--blue);margin-bottom:18px}
.vx-steps .card h3{font-size:18.5px;margin-bottom:8px}
.vx-steps .card p{font-size:15.5px;color:var(--muted-2);line-height:1.55}

/* FAQ */
.vx-faq,.vx2-faq{display:grid;gap:10px;max-width:900px}
.vx-faq details,.vx2-faq details{background:var(--card);border-radius:var(--r-md);box-shadow:var(--sh-1);transition:box-shadow .3s}
.vx-faq details[open],.vx2-faq details[open]{box-shadow:var(--sh-2)}
.vx-faq summary,.vx2-faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;font-weight:600;font-size:17px;color:var(--ink)}
.vx-faq summary::-webkit-details-marker,.vx2-faq summary::-webkit-details-marker{display:none}
.vx-faq summary::after,.vx2-faq summary::after{content:"";flex:none;width:32px;height:32px;border-radius:50%;background:var(--bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230D1530' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/14px no-repeat;transition:transform .35s var(--ease),background-color .3s}
.vx-faq details[open] summary::after,.vx2-faq details[open] summary::after{transform:rotate(45deg);background-color:var(--tint)}
.vx-faq details p,.vx2-faq details p{padding:0 24px 22px;color:var(--muted-2);font-size:16px;max-width:760px}

/* next links */
.vx-next-wrap{padding-top:60px}
.vx-next{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.vx-next a{position:relative;display:flex;flex-direction:column;gap:4px;padding:22px 60px 22px 24px;border-radius:var(--r-md);background:var(--card);box-shadow:var(--sh-1);transition:transform .4s var(--ease),box-shadow .4s}
.vx-next a:hover{transform:translateY(-3px);box-shadow:var(--sh-2)}
.vx-next span{font-size:13px;color:var(--muted-2)}
.vx-next b{font-size:16.5px}
.vx-next i{position:absolute;right:20px;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--bg);font-style:normal;transition:.3s var(--ease)}
.vx-next a:hover i{background:var(--ink);color:#fff;transform:translate(3px,-50%)}

/* related / service cards / city cards */
.vx-related,.vx-city-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.vx-svc{position:relative;display:flex;flex-direction:column;padding:26px;border-radius:var(--r-lg);background:var(--card);box-shadow:var(--sh-1);transition:transform .45s var(--ease),box-shadow .45s;overflow:hidden}
.vx-svc:hover{transform:translateY(-5px);box-shadow:var(--sh-2)}
.vx-svc::after{content:"";position:absolute;inset:auto -40% -60% auto;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(37,99,235,.10),transparent 65%);transition:transform .6s var(--ease)}
.vx-svc:hover::after{transform:scale(1.4)}
.vx-svc h3{font-size:20px;margin:18px 0 8px;letter-spacing:-.025em}
.vx-svc p{font-size:15.5px;color:var(--muted-2);line-height:1.55}
.vx-svc-tags{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:16px 0 4px}
.vx-svc-tags li{font-size:12.5px;font-weight:600;padding:5px 10px;border-radius:999px;background:var(--bg);color:var(--muted-2)}
.vx-svc-go{margin-top:auto;padding-top:20px;display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;color:var(--ink)}
.vx-svc-go i{font-style:normal;transition:transform .3s var(--ease)}
.vx-svc:hover .vx-svc-go i{transform:translateX(4px)}
.vx-svc .badge{position:absolute;right:20px;top:22px;font-size:12px;font-weight:700;padding:5px 11px;border-radius:999px;background:var(--grad);color:#fff}

/* chips / areas */
.vx-chips,.vx2-near{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.vx-chips li,.vx2-near li{display:inline-flex}
.vx-chips li,.vx-chips li a,.vx2-near a{padding:10px 16px;border-radius:999px;background:rgba(255,255,255,.75);border:1px solid #fff;font-size:15px;font-weight:500;color:var(--text);box-shadow:0 1px 2px rgba(20,35,90,.04)}
.vx-chips-links li{padding:0;background:none;border:0;box-shadow:none}
.vx-chips li a:hover,.vx2-near a:hover{background:#fff;color:var(--ink);box-shadow:var(--sh-1)}
.vx-areas-wrap{background:var(--card);border-radius:var(--r-lg);padding:22px;box-shadow:var(--sh-1)}
.vx-area-search{width:100%;max-width:420px;height:52px;border-radius:999px;border:1.5px solid var(--line);background:var(--bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235B6785' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-4-4'/%3E%3C/svg%3E") 18px center/18px no-repeat;padding:0 20px 0 48px;font-size:16px;margin-bottom:18px;outline:none;transition:border-color .2s,background-color .2s}
.vx-area-search:focus{border-color:var(--blue);background-color:#fff}
.vx-areas{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.vx-areas li{padding:8px 14px;border-radius:999px;background:var(--bg);font-size:14.5px;color:var(--muted-2)}
.vx-areas li:has(a){padding:0;background:none}
.vx-areas li a{display:inline-block;padding:8px 14px;border-radius:999px;background:var(--tint);color:var(--blue-d);font-weight:600;font-size:14.5px;transition:.2s}
.vx-areas li a:hover{background:var(--blue);color:#fff}
.vx-areas li[hidden]{display:none}
.vx-areas-none{display:none;margin-top:14px;color:var(--muted-2)}
.vx-areas-none.show{display:block}

/* example callout */
.vx-example{position:relative;border-radius:var(--r-lg);padding:32px 34px 28px 34px;background:var(--grad-soft);border:1px solid #fff;box-shadow:var(--sh-1);max-width:940px}
.vx-example::before{content:"“";position:absolute;right:26px;top:-6px;font-family:var(--serif);font-size:120px;line-height:1;color:rgba(37,99,235,.18)}
.vx-example p{font-size:18px;color:var(--text);line-height:1.65}
.vx-example small{display:block;margin-top:14px;font-size:13.5px;color:var(--muted-2);font-style:italic}
.vx-hub-more{margin-top:24px;font-size:15px;color:var(--muted-2)}

/* services explorer */
.vx-x{position:relative}
.vx-x-stick{display:grid;grid-template-columns:300px minmax(0,1fr);gap:28px;align-items:start}
.vx-x-left{position:sticky;top:110px}
.vx-x-tabs{display:grid;gap:8px}
.vx-x-tab{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:14px;border-radius:20px;background:rgba(255,255,255,.55);border:1px solid #fff;transition:.3s var(--ease)}
.vx-x-tab .ic{width:42px;height:42px;border-radius:13px;background:var(--bg-2);color:var(--muted-2);box-shadow:none}
.vx-x-tab>span:last-child{font-weight:600;color:var(--ink);font-size:16px;line-height:1.25}
.vx-x-tab small{display:block;font-weight:500;font-size:13px;color:var(--muted-2)}
.vx-x-tab:hover{background:#fff}
.vx-x-tab.on{background:#fff;box-shadow:var(--sh-2)}
.vx-x-tab.on .ic{background:var(--grad);color:#fff;box-shadow:0 10px 20px -10px rgba(37,99,235,.7)}
.vx-x-hint{font-size:13.5px;color:var(--muted-2);margin:16px 6px 10px}
.vx-x-bar{height:4px;border-radius:4px;background:var(--bg-2);overflow:hidden;margin:0 6px}
.vx-x-bar i{display:block;height:100%;width:25%;background:var(--grad);border-radius:4px;transition:transform .5s var(--ease)}
.vx-x-panels{display:grid}
.vx-x-panel{grid-area:1/1;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:0;border-radius:var(--r-xl);overflow:hidden;background:var(--card);box-shadow:var(--sh-2);opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .45s var(--ease),transform .45s var(--ease),visibility .45s}
.vx-x-panel.on{opacity:1;visibility:visible;transform:none}
.vx-x-vis{position:relative;min-height:420px;background:var(--night);overflow:hidden}
.vx-x-vis::before{content:"";position:absolute;inset:0;background:radial-gradient(70% 60% at 30% 20%,rgba(34,184,240,.45),transparent 60%),radial-gradient(70% 60% at 80% 90%,rgba(110,75,227,.55),transparent 60%)}
.vx-x-vis video{position:absolute;left:50%;top:50%;height:82%;width:auto;aspect-ratio:9/16;transform:translate(-50%,-50%) rotate(3deg);object-fit:cover;border-radius:24px;border:6px solid #0D1530;box-shadow:0 30px 50px -18px rgba(0,0,0,.6);background:#1a1f3a}
.vx-x-num{position:absolute;left:22px;top:16px;z-index:2;font-family:var(--serif);font-style:italic;font-size:64px;line-height:1;color:#fff;text-shadow:0 6px 20px rgba(0,0,0,.25)}
.vx-x-big{display:none}
.vx-x-chip{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:999px;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);font-size:12.5px;font-weight:600;color:var(--ink);box-shadow:0 14px 24px -12px rgba(0,0,0,.45);animation:drift 7s ease-in-out infinite}
.vx-x-chip span{width:8px;height:8px;border-radius:50%;background:var(--grad)}
.vx-x-chip.c1{left:20px;bottom:110px}
.vx-x-chip.c2{right:18px;bottom:66px;animation-delay:-2s}
.vx-x-chip.c3{left:34px;bottom:22px;animation-delay:-4s}
.vx-x-body{padding:34px 32px}
.vx-x-body h3{font-size:28px;letter-spacing:-.035em}
.vx-x-body>p{font-size:16.5px;color:var(--muted-2);margin:10px 0 18px}
.vx-x-list{list-style:none;display:grid;gap:6px}
.vx-x-list a{display:flex;align-items:center;gap:14px;padding:12px;border-radius:16px;transition:background .25s}
.vx-x-list a:hover{background:var(--bg)}
.vx-x-list .ic{width:38px;height:38px;border-radius:12px;background:var(--tint);color:var(--blue);box-shadow:none}
.vx-x-list .ic svg{width:19px;height:19px}
.vx-x-list b{display:block;font-size:15.5px;line-height:1.3}
.vx-x-list small{display:block;font-size:13.5px;color:var(--muted-2);line-height:1.4;margin-top:2px}
.vx-x-list i{margin-left:auto;font-style:normal;color:var(--muted);transition:transform .3s var(--ease)}
.vx-x-list a:hover i{transform:translateX(4px);color:var(--ink)}

/* about page */
.vx-ab-quote{position:relative;border-radius:var(--r-lg);padding:40px 34px 30px;background:var(--night);color:#fff;box-shadow:var(--sh-2);overflow:hidden}
.vx-ab-quote::before{content:"“";position:absolute;left:24px;top:-24px;font-family:var(--serif);font-size:160px;line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.vx-ab-quote p{position:relative;font-family:var(--serif);font-size:30px;line-height:1.25;letter-spacing:-.01em;color:#fff;margin:28px 0 22px}
.vx-ab-quote span{font-size:13.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--night-text)}
.vx-ab-grid{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.vx-ab-grid>li,.vx-ab-grid>a{background:var(--card);border-radius:var(--r-md);padding:26px 24px;box-shadow:var(--sh-1);display:flex;flex-direction:column;gap:10px;transition:transform .4s var(--ease),box-shadow .4s}
.vx-ab-grid>a:hover,.vx-ab-grid>li:hover{transform:translateY(-4px);box-shadow:var(--sh-2)}
.vx-ab-grid h3{font-size:18.5px;margin-top:6px}
.vx-ab-grid p{font-size:15.5px;color:var(--muted-2);line-height:1.55}
.res-chip{display:inline-flex;align-self:flex-start;align-items:center;height:28px;padding:0 11px;border-radius:999px;background:var(--tint);color:var(--blue-d);font-size:12.5px;font-weight:700;letter-spacing:.02em}
.vx-proof ul{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.vx-proof li{padding:30px 24px;border-left:1px solid var(--line)}
.vx-proof li:first-child{border-left:0;padding-left:0}
.vx-proof strong{display:block;font-size:clamp(36px,4.2vw,54px);font-weight:700;letter-spacing:-.05em;line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.vx-proof span{display:block;font-size:14.5px;color:var(--muted-2);margin-top:12px;line-height:1.45}
.vx-proof>p{margin-top:18px;font-size:14px;color:var(--muted-2)}
.vx-proof>p a{color:var(--blue);font-weight:600}
.vx-ab-team{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.vx-ab-person{border-radius:var(--r-lg);overflow:hidden;background:var(--card);box-shadow:var(--sh-1);transition:transform .45s var(--ease),box-shadow .45s}
.vx-ab-person:hover{transform:translateY(-5px);box-shadow:var(--sh-2)}
.vx-ab-photo{margin:10px;border-radius:20px;overflow:hidden;aspect-ratio:1/1;background:var(--bg-2)}
.vx-ab-photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.vx-ab-person:hover .vx-ab-photo img{transform:scale(1.04)}
.vx-ab-person .body{padding:6px 22px 24px}
.vx-ab-person h3{font-size:20px;margin-top:10px}

/* Lalbazar-style area guide */
.vx2-facts{max-width:var(--max);margin:22px auto 0;padding:0 var(--gut);display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.vx2-fact{display:flex;gap:12px;align-items:flex-start;padding:18px;border-radius:var(--r-md);background:var(--card);box-shadow:var(--sh-1)}
.vx2-fact i{flex:none;width:36px;height:36px;border-radius:12px;background:var(--tint)}
.vx2-fact small{display:block;font-size:12.5px;color:var(--muted-2)}
.vx2-fact b{display:block;font-size:15px;line-height:1.35}
.vx2-nav{position:sticky;top:94px;z-index:20;max-width:var(--max);margin:22px auto 0;padding:0 var(--gut)}
.vx2-nav ul{list-style:none;display:flex;gap:6px;overflow-x:auto;padding:6px;border-radius:999px;background:rgba(255,255,255,.85);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--sh-1);scrollbar-width:none;width:max-content;max-width:100%}
.vx2-nav ul::-webkit-scrollbar{display:none}
.vx2-nav a{display:block;padding:9px 16px;border-radius:999px;font-size:14px;font-weight:600;color:var(--muted-2);white-space:nowrap;transition:.2s}
.vx2-nav a:hover,.vx2-nav a.on{background:var(--ink);color:#fff}
.vx2-route .vx2-map{position:relative;border-radius:16px;margin-bottom:16px;background:#fff}
.vx2-path{position:relative;display:flex;align-items:center;gap:10px;margin-bottom:14px;font-size:13.5px;color:#fff;font-weight:600}
.vx2-stop{display:inline-flex;align-items:center;gap:6px}
.vx2-stop i{width:10px;height:10px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 4px rgba(34,184,240,.25)}
.vx2-stop.end i{background:#fff}
.vx2-line{flex:1;position:relative;border-top:2px dashed rgba(255,255,255,.3);text-align:center}
.vx2-line span{position:relative;top:-11px;padding:0 8px;background:var(--night);font-size:12px;color:var(--night-text)}
.vx2-route .vx2-btns{position:relative;gap:8px}
.vx2-route .vx2-btn{height:42px;padding:0 16px;font-size:14px}
.vx2-route .vx2-btn:not(.ghost):not(.wa){background:#fff;color:var(--ink)}
.vx2-route .vx2-btn.ghost{background:rgba(255,255,255,.1);color:#fff;box-shadow:none;border:1px solid rgba(255,255,255,.2)}
.vx2-street{width:100%;border-radius:var(--r-lg);background:#fff;box-shadow:var(--sh-1);margin-bottom:18px}
.vx2-who{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.vx2-who li{background:var(--card);border-radius:var(--r-md);padding:22px;box-shadow:var(--sh-1)}
.vx2-who i{display:block;width:38px;height:38px;border-radius:12px;background:var(--grad);margin-bottom:14px}
.vx2-who h3{font-size:17.5px;margin-bottom:6px}
.vx2-who p{font-size:15px;color:var(--muted-2);line-height:1.5}
.vx2-works{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:34px;align-items:center}
.vx2-phone{width:100%;max-width:330px;margin:0 auto;filter:drop-shadow(0 30px 40px rgba(13,21,48,.25))}
.vx2-play{list-style:none;display:grid;gap:12px;counter-reset:pl}
.vx2-play li{counter-increment:pl;display:flex;gap:16px;background:var(--card);border-radius:var(--r-md);padding:20px 22px;box-shadow:var(--sh-1)}
.vx2-play li::before{content:counter(pl,decimal-leading-zero);font-family:var(--serif);font-style:italic;font-size:28px;line-height:1;color:var(--blue);flex:none;width:36px}
.vx2-play h3{font-size:17.5px;margin-bottom:4px}
.vx2-play p{font-size:15px;color:var(--muted-2);line-height:1.5}
.vx2-plan{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:20px;align-items:start}
.vx2-plan aside{border-radius:var(--r-lg);padding:26px;background:var(--grad);color:#fff;box-shadow:var(--sh-2)}
.vx2-plan aside span{font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;opacity:.85}
.vx2-plan aside h3{color:#fff;font-size:22px;margin:8px 0 8px}
.vx2-plan aside p{font-size:14.5px;opacity:.9;margin-bottom:16px}
.vx2-plan-img{border-radius:14px;background:#fff;width:100%}
.vx2-plan ol{list-style:none;display:grid;gap:10px;counter-reset:pn}
.vx2-plan ol li{counter-increment:pn;display:flex;gap:14px;align-items:flex-start;background:var(--card);border-radius:var(--r-md);padding:18px 20px;box-shadow:var(--sh-1);font-size:15.5px}
.vx2-plan ol li i{flex:none;width:28px;height:28px;border-radius:50%;background:var(--tint);display:grid;place-items:center;font-style:normal;font-weight:700;font-size:13px;color:var(--blue-d)}
.vx2-plan ol li i::before{content:counter(pn)}
.vx2-svc{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.vx2-svc a{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:var(--r-md);background:var(--card);box-shadow:var(--sh-1);font-weight:600;color:var(--ink);transition:transform .35s var(--ease),box-shadow .35s}
.vx2-svc a:hover{transform:translateY(-3px);box-shadow:var(--sh-2)}
.vx2-svc .ic{width:40px;height:40px;border-radius:13px}
.vx2-svc em{margin-left:auto;font-style:normal;color:var(--muted)}
.vx2-cta{display:grid;grid-template-columns:minmax(0,1.3fr) auto;gap:30px;align-items:center;border-radius:var(--r-xl);padding:44px;background:var(--night);color:var(--night-text);box-shadow:var(--sh-2);position:relative;overflow:hidden}
.vx2-cta::before{content:"";position:absolute;width:480px;height:480px;right:-160px;top:-220px;background:radial-gradient(circle,rgba(37,99,235,.5),transparent 65%)}
.vx2-cta>*{position:relative}
.vx2-cta h2{color:#fff;font-size:clamp(28px,3.4vw,40px);margin-bottom:10px}
.vx2-cta .vx2-btn.ghost{background:rgba(255,255,255,.1);color:#fff;box-shadow:none;border:1px solid rgba(255,255,255,.2)}
.vx2-cta .vx2-btn:not(.ghost):not(.wa){background:#fff;color:var(--ink)}

/* ---------- CTA band + footer ---------- */
.cta-band{max-width:1260px;margin:110px auto 0;padding:0 16px}
.cta-in{position:relative;overflow:hidden;border-radius:var(--r-xl);padding:70px 56px;background:var(--night);color:var(--night-text);display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px;align-items:center}
.cta-in::before{content:"";position:absolute;width:620px;height:620px;right:-180px;top:-260px;background:radial-gradient(circle,rgba(37,99,235,.55),transparent 62%)}
.cta-in::after{content:"";position:absolute;width:520px;height:520px;left:-200px;bottom:-320px;background:radial-gradient(circle,rgba(110,75,227,.5),transparent 62%)}
.cta-in>*{position:relative;z-index:1}
.cta-in h2{color:#fff;font-size:clamp(32px,4.2vw,54px);letter-spacing:-.045em;line-height:1.05;margin:14px 0 16px}
.cta-in p{font-size:18px;max-width:560px}
.cta-in .eyebrow{color:#7FD3FF}
.cta-in .btn-row{justify-content:flex-end}
.cta-in .btn:not(.wa){background:#fff;color:var(--ink)}
.foot{margin-top:24px;background:var(--night);color:var(--night-text);padding:84px 0 34px;border-radius:var(--r-xl) var(--r-xl) 0 0}
.foot-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1fr;gap:36px}
.foot h4{color:#fff;font-size:14px;letter-spacing:.02em;margin-bottom:16px}
.foot ul{list-style:none;display:grid;gap:10px;font-size:14.5px}
.foot a{transition:color .2s}
.foot a:hover{color:#fff}
.foot-brand img{height:30px;width:auto;margin-bottom:18px}
.foot-brand p{font-size:15px;max-width:330px;margin-bottom:20px}
.foot-contact{display:grid;gap:8px;font-size:14.5px;margin-bottom:22px}
.foot-contact a{display:inline-flex;align-items:center;gap:9px}
.foot-contact svg{width:16px;height:16px;flex:none;opacity:.8}
.social{display:flex;gap:8px}
.social a{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.07);border:1px solid var(--night-line)}
.social a:hover{background:rgba(255,255,255,.14)}
.social svg{width:18px;height:18px}
.foot-word{font-weight:800;font-size:clamp(72px,17vw,240px);letter-spacing:-.07em;line-height:.8;text-align:center;margin:70px 0 34px;background:linear-gradient(180deg,#1E2747 0%,var(--night) 92%);-webkit-background-clip:text;background-clip:text;color:transparent;user-select:none}
.foot-bot{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:13.5px;border-top:1px solid var(--night-line);padding-top:24px}
.foot-bot nav{display:flex;gap:18px}

/* ---------- Reveal ---------- */
.rv{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.rv.in{opacity:1;transform:none}
.no-js .rv{opacity:1;transform:none}

/* =========================================================
   HOMEPAGE + CONTACT specific
   ========================================================= */
.h-hero{padding:60px 0 20px;text-align:center}
.h-hero h1{font-size:clamp(44px,7.2vw,96px);line-height:1;letter-spacing:-.055em;font-weight:700;max-width:1060px;margin:24px auto 26px}
.h-hero .sub{font-size:clamp(17px,1.6vw,20px);color:var(--muted-2);max-width:700px;margin:0 auto 34px}
.h-hero .sub a{color:var(--ink);font-weight:600;background:linear-gradient(var(--hl),var(--hl)) 0 92%/100% 35% no-repeat}
.h-hero .btn-row{justify-content:center}
.trust{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 22px;margin-top:22px;font-size:14px;color:var(--muted-2)}
.trust span{display:inline-flex;align-items:center;gap:7px}
.trust span::before{content:"";width:16px;height:16px;border-radius:50%;background:var(--tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563EB' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L19 7'/%3E%3C/svg%3E") center/9px no-repeat}
.showreel{max-width:1180px;margin:56px auto 0;padding:10px;border-radius:40px;background:rgba(255,255,255,.75);box-shadow:var(--sh-2)}
.sr-stage{position:relative;border-radius:32px;overflow:hidden;aspect-ratio:16/8.2;background:linear-gradient(180deg,#BFD9FF 0%,#D7DCFF 45%,#EFE6FF 72%,#F7F2FF 100%)}
.sr-stage .sun{position:absolute;width:44%;aspect-ratio:1;left:28%;top:-18%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.95),rgba(255,255,255,0) 65%)}
.sr-stage .word{position:absolute;left:50%;top:7%;transform:translateX(-50%);font-weight:800;font-size:clamp(64px,14vw,190px);letter-spacing:-.07em;color:rgba(255,255,255,.6);line-height:1;white-space:nowrap}
.hill{position:absolute;border-radius:50%}
.hill.h1{width:120%;height:72%;left:-32%;bottom:-40%;background:radial-gradient(ellipse at 50% 18%,#8FB4FF,#2F63E8 55%,#1C3FA8)}
.hill.h2{width:112%;height:62%;right:-36%;bottom:-36%;background:radial-gradient(ellipse at 45% 15%,#B29BFF,#6E4BE3 55%,#4A2DB0)}
.hill.h3{width:92%;height:46%;left:4%;bottom:-31%;background:radial-gradient(ellipse at 50% 12%,#9FE1FF,#3E8BF5 50%,#2347B8)}
.sr-stage .grain{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.5) 1px,transparent 1.5px);background-size:26px 26px;mask-image:linear-gradient(180deg,transparent 45%,#000 100%);opacity:.35}
.sr-phones{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;gap:2.4%;padding-bottom:3%}
.sr-phone{position:relative;width:19%;aspect-ratio:9/16;border-radius:26px;padding:6px;background:#0D1530;box-shadow:0 40px 60px -20px rgba(10,15,50,.6);transition:transform .8s var(--ease)}
.sr-phone video{width:100%;height:100%;object-fit:cover;border-radius:21px;background:#1a1f3a}
.sr-phone:nth-child(1){transform:translateY(16%) rotate(-7deg)}
.sr-phone:nth-child(2){width:22%;transform:translateY(-2%)}
.sr-phone:nth-child(3){transform:translateY(16%) rotate(7deg)}
.sr-phone .tag{position:absolute;left:50%;bottom:-12px;transform:translateX(-50%);white-space:nowrap;padding:7px 13px;border-radius:999px;background:#fff;font-size:12.5px;font-weight:700;color:var(--ink);box-shadow:var(--sh-1)}
.sr-bar{display:flex;align-items:center;gap:8px;padding:10px 4px 2px;flex-wrap:wrap}
.chip{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 15px;border-radius:999px;background:var(--card);box-shadow:var(--sh-btn);font-size:13.5px;font-weight:600;color:var(--ink)}
.sr-bar .sp{flex:1}
.marquee{padding:54px 0 0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.marquee .label{text-align:center;justify-content:center;margin-bottom:20px}
.marquee .label::after{display:none}
.track{display:flex;gap:12px;width:max-content;animation:scroll 46s linear infinite}
.marquee:hover .track{animation-play-state:paused}
.track a{display:inline-flex;align-items:center;gap:9px;padding:12px 20px;border-radius:999px;background:rgba(255,255,255,.7);border:1px solid #fff;font-weight:600;font-size:15px;color:var(--ink);white-space:nowrap;transition:background .2s}
.track a:hover{background:#fff}
@keyframes scroll{to{transform:translateX(-50%)}}

.numbers{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:10px}
.numbers div{padding:34px 26px;border-left:1px solid var(--line)}
.numbers div:first-child{border-left:0;padding-left:0}
.numbers strong{display:block;font-size:clamp(40px,4.8vw,64px);font-weight:700;letter-spacing:-.055em;color:var(--ink);line-height:1}
.numbers span{display:block;font-size:14.5px;color:var(--muted-2);margin-top:12px;line-height:1.45}
.fine{font-size:13.5px;color:var(--muted-2);margin-top:16px}
.cases{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:44px}
.case{border-radius:var(--r-lg);overflow:hidden;background:var(--card);box-shadow:var(--sh-1);display:flex;flex-direction:column;transition:transform .45s var(--ease),box-shadow .45s}
.case:hover{transform:translateY(-5px);box-shadow:var(--sh-2)}
.case-top{padding:26px 26px 0;display:flex;gap:8px;flex-wrap:wrap}
.tag{font-size:12px;font-weight:700;padding:5px 11px;border-radius:999px;background:var(--tint);color:var(--blue-d)}
.tag.meta{background:var(--tint-v);color:#5133C2}
.tag.plain{background:var(--bg);color:var(--muted-2)}
.case-body{padding:20px 26px 24px;display:flex;flex-direction:column;gap:12px;flex:1}
.case .num{font-size:66px;font-weight:700;color:var(--ink);letter-spacing:-.055em;line-height:.95}
.case .num small{font-size:18px;font-weight:500;color:var(--muted-2);letter-spacing:-.01em;margin-left:8px}
.case p{font-size:16.5px}
.case-foot{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:16px 26px;background:var(--bg);font-size:14px;color:var(--muted-2)}
.case-foot b{color:var(--ink)}

/* proof wall: pinned dashboard screenshots */
.proof-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin:90px 0 10px}
.proof-head h3{font-size:clamp(26px,3vw,36px);letter-spacing:-.04em}
.filters{display:flex;gap:4px;padding:4px;border-radius:999px;background:rgba(13,21,48,.05)}
.filters button{height:40px;padding:0 18px;border-radius:999px;font-size:14px;font-weight:600;color:var(--muted-2);transition:.3s var(--ease)}
.filters button[aria-pressed=true]{background:#fff;color:var(--ink);box-shadow:var(--sh-btn)}
.wall{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 28px;padding:34px 0 10px}
.shot{position:relative;background:#fff;border-radius:18px;padding:10px 10px 0;box-shadow:var(--sh-2);transform:rotate(var(--rot,0deg));transition:transform .5s var(--ease),opacity .4s;cursor:zoom-in}
.shot:hover{transform:rotate(0) translateY(-6px) scale(1.02);z-index:2}
.shot[hidden]{display:none}
.shot img{width:100%;aspect-ratio:16/8.4;object-fit:cover;object-position:top left;border-radius:10px;background:var(--bg)}
.shot .tape{position:absolute;top:-11px;left:50%;width:78px;height:22px;transform:translateX(-50%) rotate(-4deg);background:rgba(186,210,255,.8);border-radius:3px}
.shot .tack{position:absolute;top:-9px;right:18px;width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#9FD8FF,#2563EB 60%,#1A3A99);box-shadow:0 4px 6px rgba(0,0,0,.25)}
.shot figcaption{padding:10px 6px 12px}
.shot figcaption b{display:block;font-size:15.5px;letter-spacing:-.01em}
.shot figcaption span{display:block;font-size:13px;color:var(--muted-2)}
.shot figcaption em{display:block;font-family:var(--hand);font-style:normal;font-size:20px;color:var(--text);line-height:1.1;margin-top:4px}

/* lightbox */
.lb{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:24px;background:rgba(8,12,30,.82);backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .3s}
.lb.open{opacity:1;pointer-events:auto}
.lb img,.lb video{max-width:min(1200px,94vw);max-height:84vh;border-radius:16px;box-shadow:0 30px 80px rgba(0,0,0,.5);background:#000}
.lb button{position:absolute;right:20px;top:20px;width:48px;height:48px;border-radius:50%;background:#fff;color:var(--ink);font-size:22px}
.lb p{position:absolute;bottom:22px;left:0;right:0;text-align:center;color:#fff;font-size:15px}

/* why */
.why{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.why .w{background:var(--card);border-radius:var(--r-lg);padding:28px;box-shadow:var(--sh-1);display:flex;flex-direction:column;gap:10px;grid-column:span 2;position:relative;overflow:hidden}
.why .w.big{grid-column:span 3}
.why .w h3{font-size:21px;letter-spacing:-.03em}
.why .w p{font-size:15.5px;color:var(--muted-2)}
.why .w .ic{margin-bottom:6px}
.why .w.photo{padding:0;background:var(--night);min-height:300px;color:#fff;justify-content:flex-end}
.why .w.photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.75}
.why .w.photo div{position:relative;padding:28px;background:linear-gradient(180deg,transparent,rgba(8,12,30,.85))}
.why .w.photo h3{color:#fff}
.why .w.photo p{color:#D5DBEE}
.weeks{display:flex;align-items:flex-end;gap:10px;height:110px;margin-top:auto;padding-top:14px}
.weeks div{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;justify-content:flex-end}
.weeks i{width:100%;border-radius:8px 8px 4px 4px;background:var(--grad);height:var(--h)}
.weeks span{font-size:11.5px;color:var(--muted-2);white-space:nowrap}
.mini-chat{display:grid;gap:8px;margin-top:auto;padding-top:14px}
.bub{max-width:88%;padding:9px 12px 8px;border-radius:14px;font-size:13.5px;line-height:1.4;box-shadow:0 1px 1px rgba(0,0,0,.06)}
.bub.in{justify-self:start;background:var(--bg);border-top-left-radius:4px}
.bub.out{justify-self:end;background:#DCF8C6;border-top-right-radius:4px}

/* about band (dark) */
.band-dark{background:var(--night);color:var(--night-text);border-radius:var(--r-xl);margin:110px 16px 0;padding:100px 0;position:relative;overflow:hidden}
.band-dark::before{content:"";position:absolute;width:760px;height:760px;right:-260px;top:-360px;background:radial-gradient(circle,rgba(37,99,235,.45),transparent 62%)}
.band-dark::after{content:"";position:absolute;width:620px;height:620px;left:-260px;bottom:-380px;background:radial-gradient(circle,rgba(110,75,227,.42),transparent 62%)}
.band-dark>*{position:relative;z-index:1}
.band-dark h2,.band-dark h3{color:#fff}
.band-dark .h2 .g{color:#7E89AB}
.band-dark .eyebrow{color:#7FD3FF}
.band-dark .eyebrow::after{background:var(--night-line)}
.band-dark .lede{color:var(--night-text)}
.about-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:60px;align-items:center}
.about-photo{position:relative;border-radius:28px;overflow:hidden;aspect-ratio:4/4.4;box-shadow:0 40px 80px -30px rgba(0,0,0,.6)}
.about-photo img{width:100%;height:100%;object-fit:cover}
.about-photo .hm-chip{left:18px;bottom:18px;top:auto}
.link-chips{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0 30px}
.link-chips a,.link-chips span{display:inline-flex;align-items:center;gap:8px;padding:11px 16px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid var(--night-line);color:#E3E8F7;font-size:14.5px;font-weight:500;transition:background .25s}
.link-chips a:hover{background:rgba(255,255,255,.15)}
.focus{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:50px}
.focus .f{display:grid;grid-template-columns:150px 1fr;gap:20px;align-items:center;padding:16px;border-radius:24px;background:rgba(255,255,255,.05);border:1px solid var(--night-line)}
.focus .f .v{aspect-ratio:9/16;border-radius:16px;overflow:hidden;background:#000}
.focus .f video{width:100%;height:100%;object-fit:cover}
.focus .f small{font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#7FD3FF}
.focus .f h3{font-size:22px;margin:6px 0 8px}
.focus .f p{font-size:15.5px}
.focus .tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.focus .tags span{font-size:12px;font-weight:600;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.08);color:#C9D1EA}

/* process with photos */
.proc{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.proc .p{border-radius:var(--r-lg);overflow:hidden;background:var(--card);box-shadow:var(--sh-1);display:flex;flex-direction:column;transition:transform .45s var(--ease),box-shadow .45s}
.proc .p:hover{transform:translateY(-5px);box-shadow:var(--sh-2)}
.proc .ph{position:relative;margin:8px;border-radius:20px;overflow:hidden;aspect-ratio:4/3.2;background:var(--night)}
.proc .ph img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.proc .p:hover .ph img{transform:scale(1.05)}
.proc .ph b{position:absolute;left:14px;top:10px;font-family:var(--serif);font-style:italic;font-weight:400;font-size:46px;color:#fff;line-height:1;text-shadow:0 6px 20px rgba(0,0,0,.4)}
.proc .pb{padding:14px 20px 22px;display:flex;flex-direction:column;gap:8px;flex:1}
.proc h3{font-size:18.5px}
.proc p{font-size:15px;color:var(--muted-2);line-height:1.55}
.proc .tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:8px}
.proc .tags span{font-size:12px;font-weight:600;padding:5px 10px;border-radius:999px;background:var(--bg);color:var(--muted-2)}

/* services (home) */
.svc3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.svc3 a.s{border-radius:var(--r-xl);background:var(--card);box-shadow:var(--sh-1);overflow:hidden;display:flex;flex-direction:column;transition:transform .45s var(--ease),box-shadow .45s}
.svc3 a.s:hover{transform:translateY(-6px);box-shadow:var(--sh-2)}
.svc3 .art{position:relative;height:260px;margin:10px;border-radius:26px;overflow:hidden;background:var(--night);display:flex;align-items:center;justify-content:center;gap:10px}
.svc3 .art::before{content:"";position:absolute;inset:0;background:radial-gradient(70% 60% at 30% 10%,rgba(34,184,240,.5),transparent 60%),radial-gradient(70% 70% at 90% 100%,rgba(110,75,227,.6),transparent 60%)}
.svc3 .art .mph{position:relative;width:26%;aspect-ratio:9/16;border-radius:14px;overflow:hidden;box-shadow:0 20px 30px -12px rgba(0,0,0,.6);border:3px solid #0D1530;background:#000}
.svc3 .art .mph:nth-child(2){width:31%;transform:translateY(-6%)}
.svc3 .art .mph video{width:100%;height:100%;object-fit:cover}
.svc3 .bd{padding:14px 26px 28px;display:flex;flex-direction:column;flex:1}
.svc3 small{font-size:12px;letter-spacing:.12em;font-weight:700;color:var(--blue);text-transform:uppercase}
.svc3 h3{font-size:23px;letter-spacing:-.035em;margin:6px 0 10px}
.svc3 p{font-size:15.5px;color:var(--muted-2)}
.svc3 ul{list-style:none;margin:16px 0 22px;display:grid;gap:8px}
.svc3 li{display:flex;gap:10px;font-size:15px}
.svc3 li::before{content:"";flex:none;width:18px;height:18px;margin-top:3px;border-radius:50%;background:var(--tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563EB' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L19 7'/%3E%3C/svg%3E") center/11px no-repeat}
.svc3 .more{margin-top:auto;font-weight:600;font-size:15px;color:var(--ink)}
.platforms{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:30px}
.platforms span{display:inline-flex;align-items:center;gap:8px;padding:9px 15px;border-radius:999px;background:#fff;box-shadow:var(--sh-1);font-size:14px;font-weight:600;color:var(--ink)}
.platforms span i{width:8px;height:8px;border-radius:50%;background:var(--grad)}
.jump{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:30px}
.jump a{padding:10px 16px;border-radius:999px;background:rgba(255,255,255,.7);border:1px solid #fff;font-size:14.5px;font-weight:500;color:var(--text);transition:.25s}
.jump a:hover{background:#fff;color:var(--ink);box-shadow:var(--sh-1)}
.jump a.all{background:var(--ink);color:#fff;border-color:var(--ink)}
.loc-line{text-align:center;margin-top:20px;font-size:14.5px;color:var(--muted-2)}
.loc-line a{color:var(--ink);font-weight:600}

/* GEO (dark) */
.geo-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:50px;align-items:center}
.geo-media{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:end}
.geo-media .device{transform:rotate(-3deg);width:100%}
.geo-media .device:nth-child(2){transform:rotate(3deg) translateY(-30px)}
.gp{display:flex;gap:18px;padding:22px 0;border-bottom:1px solid var(--night-line)}
.gp .n{font-family:var(--serif);font-style:italic;font-size:36px;line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;flex:none;width:44px}
.gp b{display:block;color:#fff;font-size:18px}
.gp p{font-size:15.5px;margin-top:4px}

/* reels */
.reels{position:relative;height:500px;perspective:1400px;touch-action:pan-y;user-select:none;cursor:grab;outline:none}
.reels:active{cursor:grabbing}
.rc{position:absolute;left:50%;top:10px;width:260px;aspect-ratio:9/16;margin-left:-130px;border-radius:26px;overflow:hidden;box-shadow:var(--sh-2);transition:transform .7s var(--ease),filter .7s,opacity .7s;background:#0D1530;color:#fff}
.rc video,.rc img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rc::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(5,8,25,.85))}
.rc .meta{position:absolute;left:18px;right:18px;bottom:18px;z-index:2}
.rc small{font-size:11px;letter-spacing:.14em;font-weight:700;opacity:.85}
.rc b{display:block;font-size:20px;line-height:1.15;margin-top:4px;color:#fff}
.rc .pb{position:absolute;right:14px;top:14px;z-index:2;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.25);backdrop-filter:blur(8px);display:grid;place-items:center;transition:transform .3s var(--ease)}
.rc .pb:hover{transform:scale(1.1)}
.reel-ctl{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:10px}
.reel-ctl span{font-size:14px;color:var(--muted-2)}

/* plans */
.plans{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:1060px;margin:0 auto}
.plan{background:var(--card);border-radius:34px;padding:14px;box-shadow:var(--sh-1);display:flex;flex-direction:column}
.ticket{border-radius:24px;padding:26px;color:#fff;position:relative;overflow:hidden;min-height:210px;display:flex;flex-direction:column;background:var(--grad)}
.plan.alt .ticket{background:linear-gradient(135deg,#1A2244,#0D1530 60%,#28307A)}
.ticket::before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.07) 0 2px,transparent 2px 9px)}
.ticket img.wm{position:absolute;right:-30px;bottom:-26px;width:250px;opacity:.16;filter:brightness(10)}
.ticket .row{position:relative;display:flex;justify-content:space-between;align-items:flex-start}
.ticket .tname{font-weight:800;letter-spacing:.2em;font-size:13px;opacity:.75}
.ticket .badge2{font-size:12px;font-weight:700;padding:5px 11px;border-radius:999px;background:rgba(255,255,255,.2)}
.ticket .tsub{position:relative;margin-top:auto;font-size:13px;letter-spacing:.2em;font-weight:700;opacity:.85}
.ticket .tprice{position:relative;font-family:var(--serif);font-style:italic;font-size:58px;line-height:1}
.ticket .tprice small{font-family:var(--font);font-style:normal;font-size:16px;opacity:.8;margin-left:6px}
.plan-body{padding:24px 14px 10px;display:flex;flex-direction:column;flex:1}
.plan-body>p{font-size:16px;color:var(--muted-2)}
.plan-body ul{list-style:none;display:grid;gap:12px;margin:20px 0 26px}
.plan-body li{display:flex;gap:12px;font-size:15.5px}
.plan-body li::before{content:"";flex:none;width:20px;height:20px;margin-top:2px;border-radius:50%;background:var(--tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563EB' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L19 7'/%3E%3C/svg%3E") center/12px no-repeat}
.plan-body .btn-row{margin-top:auto}
.plan-body .btn-row .btn{flex:1}

/* who */
.who{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.wc{position:relative;border-radius:26px;overflow:hidden;min-height:380px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;box-shadow:var(--sh-1);background:var(--night);transition:transform .45s var(--ease)}
.wc:hover{transform:translateY(-6px)}
.wc video,.wc .bgc{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.wc::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,12,30,.05) 20%,rgba(8,12,30,.55) 50%,rgba(8,12,30,.94))}
.wc .t{position:relative;z-index:1;padding:20px}
.wc small{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;opacity:.85}
.wc b{display:block;color:#fff;font-size:21px;line-height:1.15;margin-top:4px}
.wc p{font-size:14px;line-height:1.45;color:#DCE2F2;margin-top:10px}
.wc p::before{content:"Use case";display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#7FD3FF;font-weight:700;margin-bottom:4px}

/* home FAQ */
.faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:50px;align-items:start}
.faq-grid .vx-faq{max-width:none}
.faq-grid .sticky{position:sticky;top:110px}

/* contact */
.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:40px;align-items:start}
.c-side{display:grid;gap:14px}
.c-card{border-radius:var(--r-lg);padding:26px;background:var(--card);box-shadow:var(--sh-1)}
.c-card h3{font-size:19px;margin-bottom:8px}
.c-card p{font-size:15.5px;color:var(--muted-2)}
.c-card .btn-row{margin-top:16px}
.c-card.dark2{background:var(--night);color:var(--night-text)}
.c-card.dark2 h3{color:#fff}
.c-card.dark2 address{font-style:normal;color:#fff;font-weight:600;margin:6px 0 12px}
.form{border-radius:var(--r-xl);padding:34px;background:var(--card);box-shadow:var(--sh-2)}
.form h2{font-size:28px;letter-spacing:-.035em;margin-bottom:6px}
.form>p{color:var(--muted-2);font-size:15.5px;margin-bottom:24px}
.field{display:grid;gap:7px;margin-bottom:16px}
.field label{font-size:14px;font-weight:600;color:var(--ink)}
.field label span{color:var(--muted-2);font-weight:500}
.field input,.field select,.field textarea{width:100%;height:52px;border-radius:14px;border:1.5px solid var(--line);background:var(--bg);padding:0 16px;font-size:16px;outline:none;transition:border-color .2s,background-color .2s,box-shadow .2s}
.field textarea{height:140px;padding:14px 16px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 4px rgba(37,99,235,.12)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.form .btn{width:100%;margin-top:6px}
.form-msg{margin-top:14px;font-size:15px;padding:12px 16px;border-radius:12px;display:none}
.form-msg.ok{display:block;background:#E7F8EE;color:#14663A}
.form-msg.err{display:block;background:#FDECEC;color:#9A1C1C}

/* prose (privacy) */
.prose{background:var(--card);border-radius:var(--r-xl);padding:56px;box-shadow:var(--sh-1)}
.prose h2{font-size:24px;margin:34px 0 10px;letter-spacing:-.03em}
.prose h2:first-child{margin-top:0}
.prose p,.prose li{font-size:16.5px;color:var(--text)}
.prose p{margin-bottom:12px}
.prose ul,.prose ol{padding-left:22px;margin-bottom:14px;display:grid;gap:6px}

/* 404 */
.nf{min-height:62vh;display:grid;place-items:center;text-align:center;padding:60px 0}
.nf .big{font-family:var(--serif);font-style:italic;font-size:clamp(120px,22vw,260px);line-height:.9;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.nf h1{font-size:clamp(32px,4vw,48px);margin:10px 0 12px}
.nf p{color:var(--muted-2);max-width:520px;margin:0 auto 28px}
.nf .btn-row{justify-content:center}

/* =========================================================
   Responsive
   ========================================================= */
@media (max-width:1180px){
  .menu>li>a,.menu>li>button{padding:0 10px;font-size:14.5px}
  .mega.svc{grid-template-columns:repeat(2,240px)}
  .who{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 calc(var(--gut)*-1);padding:6px var(--gut) 20px;scroll-padding-inline:var(--gut);scrollbar-width:none}
  .who::-webkit-scrollbar{display:none}
  .wc{flex:0 0 250px;scroll-snap-align:start;min-height:360px}
  .vx-ab-grid{grid-template-columns:repeat(2,1fr)}
  .proc{grid-template-columns:repeat(2,1fr)}
  .foot-top{grid-template-columns:1.4fr 1fr 1fr}
  .foot-brand{grid-row:span 2}
}
@media (max-width:980px){
  :root{--gut:20px}
  .menu,.head-cta .btn{display:none}
  .burger{display:grid}
  .drawer{display:block;position:fixed;inset:0;z-index:70;pointer-events:none}
  .drawer .scrim{position:absolute;inset:0;background:rgba(8,12,30,.4);opacity:0;transition:opacity .3s}
  .drawer .panel{position:absolute;top:10px;right:10px;bottom:10px;width:min(400px,calc(100% - 20px));background:#fff;border-radius:28px;box-shadow:var(--sh-2);transform:translateX(110%);transition:transform .45s var(--ease);display:flex;flex-direction:column;overflow:hidden}
  .drawer.open{pointer-events:auto}
  .drawer.open .scrim{opacity:1}
  .drawer.open .panel{transform:none}
  .drawer .ph{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 10px 22px}
  .drawer .ph img{height:26px}
  .drawer .pb{flex:1;overflow-y:auto;padding:6px 14px 14px}
  .drawer details{border-bottom:1px solid var(--line)}
  .drawer summary,.drawer .pb>a{display:flex;align-items:center;justify-content:space-between;padding:16px 10px;font-size:18px;font-weight:600;color:var(--ink);list-style:none;cursor:pointer}
  .drawer .pb>a{border-bottom:1px solid var(--line)}
  .drawer summary::-webkit-details-marker{display:none}
  .drawer summary::after{content:"+";font-size:22px;font-weight:400;color:var(--muted-2)}
  .drawer details[open] summary::after{content:"–"}
  .drawer details a{display:block;padding:9px 12px;font-size:15.5px;color:var(--text);border-radius:12px}
  .drawer details a:hover{background:var(--bg)}
  .drawer details h6{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);padding:10px 12px 4px}
  .drawer details>div{padding-bottom:12px}
  .drawer .pf{padding:14px;display:grid;gap:8px;border-top:1px solid var(--line)}
  .drawer .pf .btn{width:100%}
  .p-hero-grid{grid-template-columns:1fr;padding:40px 26px 34px;gap:34px}
  .hero-media{max-width:340px}
  .vx-ab-split,.about-grid,.geo-grid,.faq-grid,.contact-grid,.vx2-works,.vx2-plan,.vx2-cta,.cta-in{grid-template-columns:1fr}
  .vx-glance,.vx-loc-office,.vx2-route,.faq-grid .sticky{position:relative;top:0}
  .vx-inc{grid-template-columns:repeat(2,1fr)}
  .vx-steps{grid-template-columns:repeat(2,1fr);gap:28px 16px}
  .vx-steps::before{display:none}
  .vx-next{grid-template-columns:1fr}
  .vx-x-stick{grid-template-columns:1fr}
  .vx-x-left{position:relative;top:0}
  .vx-x-tabs{grid-template-columns:repeat(2,1fr)}
  .vx-x-hint,.vx-x-bar{display:none}
  .vx-x-panel{grid-template-columns:1fr}
  .vx-x-vis{min-height:300px}
  .vx-proof ul,.numbers{grid-template-columns:repeat(2,1fr)}
  .vx-proof li:nth-child(3),.numbers div:nth-child(3){border-left:0;padding-left:0}
  .vx-proof li:nth-child(-n+2),.numbers div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .vx-ab-team{grid-template-columns:repeat(2,1fr)}
  .vx2-facts{grid-template-columns:repeat(2,1fr)}
  .vx2-who{grid-template-columns:repeat(2,1fr)}
  .cases,.svc3,.plans,.focus{grid-template-columns:1fr}
  .why{grid-template-columns:1fr 1fr}
  .why .w,.why .w.big{grid-column:span 1}
  .wall{grid-template-columns:repeat(2,1fr);gap:30px 18px}
  .who{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 calc(var(--gut)*-1);padding:6px var(--gut) 20px;scroll-padding-inline:var(--gut);scrollbar-width:none}
  .who::-webkit-scrollbar{display:none}
  .wc{flex:0 0 250px;scroll-snap-align:start;min-height:360px}
  .cta-in{padding:50px 30px}
  .cta-in .btn-row{justify-content:flex-start}
  .band-dark{margin:80px 10px 0;padding:76px 0;border-radius:30px}
  .verdexo-section,.sec{padding-top:76px}
  .foot-top{grid-template-columns:1fr 1fr}
  .foot-brand{grid-column:1/-1;grid-row:auto}
  .sr-stage{aspect-ratio:4/4.6}
  .sr-phone{width:28%}.sr-phone:nth-child(2){width:33%}
  .prose{padding:34px 24px}
}
@media (max-width:620px){
  body{font-size:16.5px}
  .nav{height:62px;padding:0 8px 0 18px}
  .logo img{height:26px}
  .p-hero{padding:14px 10px 0}
  .p-hero h1{font-size:clamp(34px,10vw,44px)}
  .p-hero .lead{font-size:17px}
  .vx-ab-actions .vx-ab-btn,.h-hero .btn-row .btn{flex:1 1 100%}
  .vx-inc,.vx-inc.four,.vx-ab-grid,.vx2-who,.why{grid-template-columns:1fr}
  .vx-steps{grid-template-columns:1fr}
  .vx-x-tabs{grid-template-columns:1fr}
  .vx-ab-team{grid-template-columns:1fr}
  .vx2-facts{grid-template-columns:1fr}
  .wall{grid-template-columns:1fr}
  .proc{grid-template-columns:1fr}
  .two{grid-template-columns:1fr}
  .focus .f{grid-template-columns:110px 1fr}
  .reels{height:430px}
  .rc{width:220px;margin-left:-110px}
  .sr-bar .hide-sm{display:none}
  .sr-phone:not(:nth-child(2)) .tag{display:none}
  .hero-media{max-width:270px}
  .hero-media .frame{max-width:250px;margin:0 auto}
  .form{padding:24px}
  .hm-chip{font-size:12px;padding:8px 12px}
  .hm-chip.c1{left:-2%;top:-14px}
  .hm-chip.c2{right:-2%}
  .case .num{font-size:54px}
  .numbers div,.vx-proof li{padding:22px 12px}
  .vx2-cta{padding:30px 22px}
  .float-cta{right:12px;bottom:12px}
  .float-cta a{width:50px;height:50px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .rv{opacity:1;transform:none}
}

/* =========================================================
   v2.1 — inner pages at homepage level
   ========================================================= */
/* hero extras */
.hero-trust{justify-content:flex-start;margin-top:22px}
.hero-media .hm-mock{position:absolute;left:-6%;bottom:4%;width:220px;z-index:2;animation:drift 8s ease-in-out infinite}
.hero-media .hm-mock .mock{box-shadow:0 26px 44px -18px rgba(13,21,48,.45)}
.vframe{transform:rotate(-1.5deg)}
.vframe video{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:20px;background:#1a1f3a}

/* proof strip under hero */
.proof-strip{margin-top:-28px;position:relative;z-index:3}
.ps-in{display:grid;grid-template-columns:repeat(4,1fr) auto;align-items:center;gap:0;background:#fff;border-radius:24px;box-shadow:var(--sh-2);padding:8px}
.ps-in>div{padding:14px 20px;border-left:1px solid var(--line)}
.ps-in>div:first-child{border-left:0}
.ps-in strong{display:block;font-size:26px;letter-spacing:-.04em;line-height:1.05;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.ps-in span{display:block;font-size:12.5px;color:var(--muted-2);line-height:1.35;margin-top:4px}
.ps-link{margin:0 8px;white-space:nowrap;height:44px;display:inline-flex;align-items:center;padding:0 18px;border-radius:999px;background:var(--ink);color:#fff;font-size:14px;font-weight:600}
.ps-link:hover{background:var(--blue-d)}

/* on-this-page nav */
.pnav{margin-top:26px}
.pnav .pn-l{display:flex;align-items:center;padding:0 10px 0 12px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);white-space:nowrap}

/* soft band for "what's included" */
.x-soft{position:relative}
.x-soft::before{content:"";position:absolute;top:40px;bottom:-40px;left:max(-24px,calc((100vw - 100%) / -2 + 10px));right:max(-24px,calc((100vw - 100%) / -2 + 10px));border-radius:var(--r-xl);background:var(--grad-soft);z-index:-1}
.x-soft{padding-bottom:40px}
.verdexo-section.x-soft{isolation:isolate}

/* example + mock */
.ex-split{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:30px;align-items:center}
.ex-split .vx-example{max-width:none}
.ex-mock{display:flex;justify-content:center}

/* dark band spacing for process */
.x-band{margin-top:110px}
.x-band .proc .p{background:rgba(255,255,255,.04);border:1px solid var(--night-line);box-shadow:none}
.x-band .proc h3{color:#fff}
.x-band .proc p{color:var(--night-text)}
.x-band .proc .tags span{background:rgba(255,255,255,.08);color:#C9D1EA}

/* FAQ ask card */
.ask-card{margin-top:22px;border-radius:var(--r-md);padding:20px;background:#fff;box-shadow:var(--sh-1)}
.ask-card b{display:block;font-size:16.5px}
.ask-card p{font-size:14.5px;color:var(--muted-2);margin:4px 0 12px}
.x-faq .faq-grid h2{font-size:clamp(28px,3.4vw,42px);letter-spacing:-.04em;line-height:1.08}

/* lead band */
.lead-band{max-width:1260px;margin:110px auto 0;padding:0 16px;scroll-margin-top:90px}
.lead-in{position:relative;overflow:hidden;border-radius:var(--r-xl);background:var(--night);color:var(--night-text);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:44px;padding:56px;align-items:center}
.lead-in::before{content:"";position:absolute;width:640px;height:640px;left:-220px;top:-300px;background:radial-gradient(circle,rgba(37,99,235,.5),transparent 62%)}
.lead-in::after{content:"";position:absolute;width:560px;height:560px;right:-200px;bottom:-320px;background:radial-gradient(circle,rgba(110,75,227,.45),transparent 62%)}
.lead-in>*{position:relative;z-index:1}
.lead-copy .eyebrow{color:#7FD3FF}
.lead-copy h2{color:#fff;font-size:clamp(30px,3.8vw,48px);letter-spacing:-.045em;line-height:1.06;margin:12px 0 14px}
.lead-copy>p{font-size:17px}
.next-steps{list-style:none;display:grid;gap:12px;margin:26px 0 22px}
.next-steps li{display:flex;gap:14px;align-items:flex-start;font-size:15.5px;color:#DCE2F2}
.next-steps b{flex:none;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--grad);color:#fff;font-size:13px}
.lead-trust{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13.5px;color:#C9D1EA}
.lead-form{box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
.form-note{font-size:12.5px;color:var(--muted-2);margin-top:12px}
.form-note a{color:var(--blue)}

/* videos row */
.reels-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:900px}
.rr{display:flex;flex-direction:column;align-items:center;gap:14px}
.rr .device{width:min(230px,100%);transform:none}
.rr:nth-child(2) .device{transform:translateY(-14px)}
.rr span{font-size:14px;font-weight:600;color:var(--ink);padding:7px 14px;border-radius:999px;background:#fff;box-shadow:var(--sh-1)}

/* ---------- UI mock-ups ---------- */
.mock{position:relative;width:100%;max-width:340px;border-radius:20px;background:#fff;box-shadow:var(--sh-2);padding:16px;font-size:13px;color:var(--text);text-align:left}
.mock .mh{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--muted-2);margin-bottom:12px}
.mock .mh i{width:8px;height:8px;border-radius:50%;background:#1FAF5A;box-shadow:0 0 0 3px rgba(31,175,90,.18)}
.mtag{position:absolute;right:12px;top:-10px;font-size:10.5px;font-weight:700;letter-spacing:.04em;padding:3px 9px;border-radius:999px;background:var(--ink);color:#fff}
.m-ads .mk{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.m-ads .mk div{background:var(--bg);border-radius:10px;padding:8px}
.m-ads .mk small{display:block;font-size:10.5px;color:var(--muted-2)}
.m-ads .mk b{font-size:16px;letter-spacing:-.02em}
.m-ads svg{width:100%;height:54px;margin-top:10px}
.m-seo .sbox{border:1px solid var(--line);border-radius:999px;padding:7px 12px;font-size:12px;color:var(--muted-2);margin-bottom:10px}
.m-seo .res{border-radius:12px;padding:9px 11px;margin-top:6px;background:var(--bg)}
.m-seo .res.top{background:var(--tint);outline:1.5px solid var(--blue)}
.m-seo .res b{display:block;color:#1a3fb8;font-size:13.5px}
.m-seo .res span{display:block;font-size:11.5px;color:var(--muted-2)}
.m-seo .res em{display:inline-block;margin-top:5px;font-style:normal;font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:999px;background:#E7F8EE;color:#14663A}
.m-chat{background:#EFEAE2}
.m-chat .b{max-width:86%;padding:7px 10px;border-radius:12px;margin-top:6px;font-size:12px;line-height:1.35;box-shadow:0 1px 1px rgba(0,0,0,.06)}
.m-chat .b.in{background:#fff;border-top-left-radius:3px}
.m-chat .b.out{background:#DCF8C6;margin-left:auto;border-top-right-radius:3px}
.m-social .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.m-social .grid span{aspect-ratio:1;border-radius:10px;background:linear-gradient(135deg,var(--c),#0D1530);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:flex-end;padding:6px}
.m-social .mrow{margin-top:10px;background:var(--bg);border-radius:10px;padding:8px 10px}
.m-social .mrow small{display:block;font-size:10.5px;color:var(--muted-2)}
.m-social .mrow b{font-size:12.5px}
.m-web{padding:0;overflow:hidden}
.m-web .bar{display:flex;align-items:center;gap:5px;padding:9px 12px;background:var(--bg);border-bottom:1px solid var(--line)}
.m-web .bar i{width:8px;height:8px;border-radius:50%;background:#D7DCE8}
.m-web .bar i:first-child{background:#FF5F57}.m-web .bar i:nth-child(2){background:#FEBC2E}.m-web .bar i:nth-child(3){background:#28C840}
.m-web .bar span{margin-left:8px;font-size:11px;color:var(--muted-2);background:#fff;border-radius:999px;padding:2px 10px}
.m-web .pg{padding:16px}
.m-web .l1{height:12px;width:70%;border-radius:6px;background:var(--ink)}
.m-web .l2{height:8px;width:90%;border-radius:6px;background:var(--line);margin-top:8px}
.m-web .l2.s{width:60%}
.m-web .ctas{display:flex;gap:6px;margin-top:14px}
.m-web .ctas span{font-size:11px;font-weight:700;padding:6px 12px;border-radius:999px;background:var(--grad);color:#fff}
.m-web .ctas span.g{background:#1FAF5A}
.m-web .score{display:flex;align-items:center;gap:10px;margin:0 16px 16px;padding:10px;border-radius:12px;background:#E7F8EE}
.m-web .score b{font-size:13px;color:#14663A}
.m-web .score small{font-size:11px;color:#2C6E47}
.m-web .mtag{top:auto;bottom:10px}

@media (max-width:980px){
  .ps-in{grid-template-columns:repeat(2,1fr)}
  .ps-in>div:nth-child(3){border-left:0}
  .ps-in>div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .ps-link{grid-column:1/-1;justify-content:center;margin:8px}
  .lead-in{grid-template-columns:1fr;padding:40px 26px}
  .ex-split{grid-template-columns:1fr}
  .hero-media .hm-mock{left:-6%;width:200px}
  .x-soft::before{left:10px;right:10px}
}
@media (max-width:620px){
  .proof-strip{margin-top:16px}
  .ps-in strong{font-size:22px}
  .ps-in>div{padding:12px 12px}
  .reels-row{grid-template-columns:repeat(3,1fr);gap:10px}
  .rr span{font-size:11.5px;padding:5px 9px;text-align:center}
  .rr:nth-child(2) .device{transform:none}
  .rr .device{border-radius:20px;padding:4px}
  .rr .device video{border-radius:16px}
  /* smaller and tucked into the corner so the hero video stays visible */
  .hero-media .hm-mock{width:190px;left:-9%;bottom:-5%;scale:.66;transform-origin:left bottom}
  .hero-media .hm-mock .mock{padding:12px}
  .lead-band,.cta-band{padding:0 10px}
  .pnav .pn-l{display:none}
}

/* =========================================================
   v3 — "made by people" pass
   Flat surfaces, hairlines instead of glows, one typeface,
   nothing floating or drifting, every label inside its card.
   ========================================================= */
/* no decorative glows / dot grids / grain anywhere */
.p-hero-in::before,.vx-glance::before,.vx-loc-office::before,.vx2-route::before,.vx-svc::after,
.vx2-cta::before,.cta-in::before,.cta-in::after,.band-dark::before,.band-dark::after,
.lead-in::before,.lead-in::after,.ticket::before,.vx-x-vis::before,.svc3 .art::before{display:none}
.p-hero-in{background:#fff;border:0;box-shadow:var(--sh-1)}
/* header: solid, hairline */
.nav{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;border:0;box-shadow:var(--sh-1)}
.mega{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;border:0;box-shadow:0 0 0 1px rgba(20,23,31,.07),0 24px 48px -24px rgba(20,23,31,.28);border-radius:22px}
.menu>li>a:hover,.menu>li>button:hover,.menu>li.open>button{background:var(--bg)}
/* buttons: quiet */
.btn:hover,.vx-ab-btn:hover,.vx2-btn:hover{transform:none;box-shadow:0 0 0 1px rgba(20,23,31,.14),0 2px 6px rgba(20,23,31,.08)}
.btn.dark,.vx-ab-btn.white,.vx2-btn:not(.ghost):not(.wa){box-shadow:none}
.btn.dark:hover,.vx-ab-btn.white:hover,.vx2-btn:not(.ghost):not(.wa):hover{background:#2A2F3B;box-shadow:none}
.btn.wa,.vx2-btn.wa,.vx-ab-btn.wa{background:#1DA851;box-shadow:none}
.btn.wa:hover,.vx2-btn.wa:hover,.vx-ab-btn.wa:hover{background:#178F45;box-shadow:none}
.btn.grad{background:var(--blue);box-shadow:none}
.float-cta a{box-shadow:0 6px 16px -6px rgba(20,23,31,.45)}
.float-cta .wa{background:#1DA851}
/* labels: small caps text, not pills */
.vx-ab-pill,.pill{height:auto;padding:0;background:none;box-shadow:none;border-radius:0;font-size:12.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}
.vx-ab-pill i,.pill i{width:6px;height:6px;border-radius:50%;background:var(--blue);box-shadow:none}
.verdexo-eyebrow,.eyebrow{color:var(--muted-2);font-weight:600;font-size:12px}
.cta-in .eyebrow,.band-dark .eyebrow,.lead-copy .eyebrow{color:#8E95A3}
.band-dark .accent,.cta-in .accent,.lead-copy .accent,.vx2-cta .accent,.vx-ab-quote .accent{color:#7D8494}
/* icon tiles: flat */
.vx-svc-ico,.vx-ab-ico,.ic{background:var(--bg);color:var(--ink);box-shadow:none;border-radius:12px}
.vx-x-tab.on .ic{background:var(--ink);color:#fff;box-shadow:none}
.vx-x-list .ic{background:var(--bg);color:var(--ink)}
.vx2-who i{background:var(--bg-2)}
/* cards: hairline + barely-there lift */
.vx-inc li:hover,.vx-svc:hover,.vx-ab-grid>a:hover,.vx-ab-grid>li:hover,.case:hover,.proc .p:hover,.svc3 a.s:hover,.vx-next a:hover,.vx2-svc a:hover,.vx-ab-person:hover{transform:translateY(-2px)}
.vx-svc .badge{background:var(--ink)}
/* numerals: same sans, quiet — no serif italics anywhere */
.vx-inc li>b,.vx-steps .dot,.proc .ph b,.gp .n,.vx-x-num,.vx2-play li::before{font-family:var(--font);font-style:normal;font-weight:600;letter-spacing:-.01em;-webkit-text-fill-color:currentColor;background:none}
.vx-inc li>b{font-size:13px;color:var(--muted);opacity:1;top:24px}
.vx-steps .dot{font-size:16px;color:var(--ink);width:44px;height:44px;border-radius:12px}
.vx-steps::before{top:21px}
.proc .ph b{font-size:13px;left:12px;top:12px;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.92);color:var(--ink);text-shadow:none}
.gp .n{font-size:15px;color:#fff;width:32px;padding-top:3px}
.vx-x-num{font-size:14px;left:18px;top:18px;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.12);text-shadow:none}
.vx2-play li::before{font-size:15px;color:var(--muted);padding-top:2px;width:28px}
.vx-ab-quote::before{display:none}
.vx-ab-quote p{font-family:var(--font);font-weight:500;font-size:24px;line-height:1.4;letter-spacing:-.02em}
.vx-example::before{display:none}
.vx-example{background:#fff;border:0;box-shadow:var(--sh-1);border-left:3px solid var(--blue);border-radius:6px var(--r-lg) var(--r-lg) 6px}
.vx-example small{font-style:normal}
.shot figcaption em{font-family:var(--font);font-size:13.5px;color:var(--muted-2);margin-top:6px}
/* big numbers: ink, not gradient text */
.vx-proof strong,.ps-in strong{background:none;-webkit-text-fill-color:currentColor;color:var(--ink)}
/* hero media: straight frames, no tilt, nothing drifting */
.device,.frame,.vframe{transform:none}
.device{box-shadow:0 30px 50px -28px rgba(20,23,31,.55)}
.frame{box-shadow:var(--sh-2)}
.hm-chip,.vx-x-chip{animation:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.hero-media .hm-mock{animation:none;left:-12%;bottom:-6%;width:236px}
.hero-media .hm-mock .mock{box-shadow:0 0 0 1px rgba(20,23,31,.06),0 18px 36px -18px rgba(20,23,31,.4)}
/* mock-ups: labels live inside the card, nothing overflows, nothing under 11.5px */
.mock{box-shadow:var(--sh-2)}
.mtag{position:static;display:flex;align-items:center;gap:6px;margin:12px -16px -16px;padding:9px 16px;border-top:1px solid var(--line);border-radius:0 0 20px 20px;background:var(--bg);color:var(--muted-2);font-size:11.5px;font-weight:600;letter-spacing:0}
.m-web .mtag{margin:0;top:auto;bottom:auto}
.m-chat .mtag{background:rgba(255,255,255,.55)}
.m-ads .mk{grid-template-columns:repeat(3,minmax(0,1fr))}
.m-ads .mk div{min-width:0;padding:8px 9px}
.m-ads .mk small{font-size:11.5px;white-space:nowrap}
.m-ads .mk b{display:block;font-size:15px;white-space:nowrap}
.m-ads svg{height:46px}
.m-seo .sbox{display:flex;align-items:center;gap:7px;font-size:12.5px}
.m-seo .sbox svg{width:13px;height:13px;flex:none}
.m-seo .res span{font-size:12px}
.m-seo .res em{font-size:11.5px}
.m-social .grid span{background:var(--c);font-size:11.5px}
.m-social .mrow small{font-size:11.5px}
.m-web .bar span{font-size:11.5px}
.m-web .ctas span{background:var(--ink);font-size:11.5px}
.m-web .score small{font-size:11.5px}
.mock .mh i{box-shadow:none}
/* strips & bands */
.ps-in{box-shadow:var(--sh-2)}
.ps-link:hover{background:#2A2F3B}
.x-soft::before{background:#E9EBEF}
.next-steps b{background:#fff;color:var(--ink)}
.vx2-plan aside{background:var(--ink)}
.vx-x-bar i{background:var(--ink)}
.weeks i{background:var(--blue)}
.platforms span i{background:var(--blue)}
.vx2-stop i{background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.18)}
.vx-glance li::before{background-color:rgba(255,255,255,.1)}
.res-chip{background:var(--bg);color:var(--ink)}
.tag{background:var(--bg);color:var(--ink)}
.tag.meta{background:var(--bg);color:var(--ink)}
.vx-areas li a{background:var(--bg);color:var(--ink)}
.vx-areas li a:hover{background:var(--ink);color:#fff}
.vx2-nav ul{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none}
.vx-chips li,.vx-chips li a,.vx2-near a,.jump a,.track a{background:#fff;border:0;box-shadow:var(--sh-1)}
/* homepage showreel stage: a calm surface, not a gradient landscape */
.showreel{background:#fff;box-shadow:var(--sh-1);border-radius:36px}
.sr-stage{background:#E9EBEF}
.sr-stage .sun,.sr-stage .grain,.sr-stage .word,.hill{display:none}
.sr-phone{box-shadow:0 30px 50px -26px rgba(20,23,31,.55)}
.sr-phone .tag{display:none}
/* pricing tickets */
.ticket{background:var(--blue)}
.plan.alt .ticket{background:var(--ink)}
.ticket .tprice{font-family:var(--font);font-style:normal;font-weight:700;font-size:44px;letter-spacing:-.04em;margin-top:6px}
/* reels carousel: only the front card shows its caption */
.rc[aria-hidden=true] .meta,.rc[aria-hidden=true] .pb{opacity:0;transition:opacity .3s}
/* footer word: quiet */
.foot-word{background:none;-webkit-text-fill-color:currentColor;color:#1D212B}
/* 404 */
.nf .big{font-family:var(--font);font-style:normal;font-weight:700;letter-spacing:-.06em;line-height:1;background:none;-webkit-text-fill-color:currentColor;color:var(--bg-2)}
.lb{backdrop-filter:none}
@media (max-width:980px){
  .hero-media .hm-mock{left:-8%;width:220px}
}
@media (max-width:620px){
  .hero-media .hm-mock{width:236px;left:-10%;bottom:-6%;scale:.7}
}
.sr-bar{padding:14px 10px 6px;gap:14px}
.sr-cap{font-size:13.5px;color:var(--muted-2)}
.sr-link{font-size:14px;font-weight:600;color:var(--ink);white-space:nowrap}
.sr-link:hover{color:var(--blue)}
@media (max-width:620px){.sr-cap{display:none}.sr-bar{justify-content:center}}
.lead-trust span{display:inline-flex;align-items:center;gap:8px}
.lead-trust span::before{content:"";width:5px;height:5px;border-radius:50%;background:#8E95A3}
.lead-trust span:first-child::before{display:none}
.reels{overflow-x:clip;overflow-y:visible}
.nf .big{margin-bottom:6px}
.sr-stage{aspect-ratio:16/7.2}
.sr-phones{padding-bottom:0}
@media (max-width:980px){.sr-stage{aspect-ratio:4/4}}
.why .w.photo img{opacity:.9}
.why .w.photo div{background:linear-gradient(180deg,rgba(20,23,31,.35) 0%,rgba(20,23,31,.88) 70%)}
.why .w.photo p{color:#E4E7EE}
.weeks i{background:var(--bg-2)}
.weeks div:last-child i{background:var(--ink)}
.shot img{object-fit:contain;object-position:center;background:#fff}
.float-cta .call{background:#fff;color:var(--ink);box-shadow:0 0 0 1px rgba(20,23,31,.1),0 6px 16px -6px rgba(20,23,31,.35)}
/* closing CTA: light card so it doesn't merge into the dark footer */
.cta-in{background:#fff;color:var(--muted-2);box-shadow:var(--sh-1)}
.cta-in h2{color:var(--ink)}
.cta-in .eyebrow{color:var(--muted-2)}
.cta-in .accent{color:var(--muted)}
.cta-in .btn:not(.wa){background:var(--ink);color:#fff}
.cta-in .btn:not(.wa):hover{background:#2A2F3B}
.foot-contact a{align-items:flex-start}
.foot-contact svg{margin-top:3px}
.wc::after{background:linear-gradient(180deg,rgba(20,23,31,0) 18%,rgba(20,23,31,.78) 48%,rgba(20,23,31,.97) 70%)}
.wc p::before{color:#9AA1AE}
/* who-we-help: video above, caption below — no text on top of moving video */
.wc{justify-content:flex-start;min-height:0;background:var(--night)}
.wc::after{display:none}
.wc video,.wc .bgc{position:relative;inset:auto;height:auto;aspect-ratio:4/5;flex:none}
.wc .t{padding:16px 18px 20px}
.wc b{font-size:19px}
/* when the section bar is stuck, a page-coloured strip hides content scrolling between it and the header */
.vx2-nav::before{content:"";position:absolute;left:50%;width:100vw;transform:translateX(-50%);top:-100px;bottom:-12px;background:var(--bg);opacity:0;pointer-events:none;transition:opacity .2s;z-index:-1}
.vx2-nav.stuck::before{opacity:1}
.vx2-nav.stuck ul{box-shadow:var(--sh-1)}
.vx2-nav::before{bottom:-28px;background:linear-gradient(180deg,var(--bg) 0,var(--bg) calc(100% - 28px),rgba(242,243,245,0) 100%)}
.vx-x-chip{display:none}
/* lead band: light, so it never stacks dark-on-dark with the footer */
.lead-in{background:#fff;color:var(--muted-2);box-shadow:var(--sh-1)}
.lead-copy h2{color:var(--ink)}
.lead-copy .eyebrow{color:var(--muted-2)}
.lead-copy .accent{color:var(--muted)}
.next-steps li{color:var(--text)}
.next-steps b{background:var(--bg);color:var(--ink)}
.lead-trust{color:var(--muted-2)}
.lead-trust span::before{background:var(--muted)}
.lead-form{background:var(--bg);box-shadow:none}
.lead-form .field input,.lead-form .field textarea{background:#fff}
.lead-form .btn.grad{background:var(--ink)}
.lead-form .btn.grad:hover{background:#2A2F3B}
.vx-x-vis video{transform:translate(-50%,-50%);border-color:#000;border-width:5px}
.frame img{height:auto}
.form .btn.grad{background:var(--ink)}.form .btn.grad:hover{background:#2A2F3B}
/* area guide: no empty icon placeholders */
.vx2-fact i,.vx2-who i{display:none}
.vx2-fact{padding:16px 18px}
.vx2-plan-img{background:transparent}
.head-cta{margin-left:auto}
/* label dot flows with the text, so a wrapped label stays tidy */
.vx-ab-pill,.pill{display:inline-block;line-height:1.5}
.vx-ab-pill i,.pill i{display:inline-block;vertical-align:middle;margin:0 8px 2px 0}
@media (max-width:620px){.h-hero .pill{font-size:11.5px;letter-spacing:.1em;max-width:300px}}
/* inner-page heading label: a plain dateline, not a dot + spaced capitals badge */
.vx-ab-pill{font-size:15px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--muted-2)}
.vx-ab-pill i{display:none}
.p-hero h1{margin-top:12px}
.h-hero h1{margin-top:0}
.platforms span i{display:none}
/* labels: a small bordered tag with a meaningful icon (brand mark or map pin), sentence case — replaces the dot + spaced capitals */
.tag,.vx-ab-pill.tag{display:inline-flex;align-items:center;gap:8px;height:auto;padding:5px 12px 5px 7px;border-radius:8px;background:#fff;
  box-shadow:0 0 0 1px rgba(20,23,31,.09);font-size:14px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--ink);line-height:1.4}
.tag img{width:18px;height:18px;border-radius:5px;flex:none}
.tag svg{width:16px;height:16px;flex:none;color:var(--blue)}
.tag-sub{color:var(--muted-2);padding-left:9px;margin-left:1px;border-left:1px solid var(--line)}
.h-hero .tag{margin-bottom:26px}
@media (max-width:620px){.tag-sub{display:none}.tag,.vx-ab-pill.tag{font-size:13.5px}}
