/* Self-hosted Manrope (variable, weights 300–800) — replaces the Google Fonts
   network request. font-display:swap shows fallback text immediately, then swaps
   in Manrope when it loads (no invisible-text flash). Latin + Latin-Ext subsets
   cover all site copy incl. accented names. */
@font-face{
  font-family:'Manrope';font-style:normal;font-weight:300 800;font-display:swap;
  src:url(../fonts/manrope-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Manrope';font-style:normal;font-weight:300 800;font-display:swap;
  src:url(../fonts/manrope-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{font-size:16px;scroll-behavior:smooth;
  /* Same gradient as <body> so screens wider than the 1980px content cap fill
     the side gutters seamlessly instead of chopping the background. */
  background:#1a1535;
  background:linear-gradient(180deg, #1a1535 0%, #2e1f6e 35%, #1a1535 70%, #8582c3 100%);}

:root{
  color-scheme: dark;   /* native browser/window scrollbars + form controls render dark to match */
  --gold:       #dfa949;
  --gold-dk:    #b8882e;
  --gold-lt:    #f5e4b8;
  --violet:     #8582c3;
  --violet-dk:  #3919ba;
  --violet-deep:#2a1290;
  --violet-lt:  #e8e8f7;
  --dark:       #1a1535;
  --body:       #3d3860;
  --white:      #ffffff;
  --glass-bg:   rgba(255,255,255,0.10);
  --glass-bg2:  rgba(255,255,255,0.16);
  --glass-border: rgba(255,255,255,0.28);
  --glass-border-strong: rgba(255,255,255,0.45);
  --glass-blur: blur(18px);
  --glass-blur-sm: blur(10px);
}

/* Never allow a horizontal scrollbar on any device — clip stray overflow at the
   root. overflow-x:clip (not hidden) keeps position:sticky working. */
html{overflow-x:clip;}
body{
  font-family:'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  background: linear-gradient(180deg, #1a1535 0%, #2e1f6e 35%, #1a1535 70%, var(--violet) 100%);
  min-height:100vh;
  max-width:1980px;
  width:100%;
  margin:0 auto;
  /* clip (not hidden) so the body doesn't become a scroll container — that would
     break the sticky header. Still prevents any horizontal scrollbar. */
  overflow-x:clip;
  color:#fff;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{color:inherit;}
img{display:block;max-width:100%;}

/* ───── THEMED SCROLLBARS (site-wide, incl. modals) ───── */
*{
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,0.30) transparent;
}
::-webkit-scrollbar{width:10px;height:10px;}
::-webkit-scrollbar-track{background:transparent;}
::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,0.24);
  border-radius:10px;
  border:2px solid transparent;
  background-clip:padding-box;
}
::-webkit-scrollbar-thumb:hover{
  background:var(--gold,#dfa949);
  background-clip:padding-box;
}
::-webkit-scrollbar-corner{background:transparent;}

/* ───── ICON SYSTEM (Font Awesome, monochromatic) ───── */
i.fa, i.fas, i.far, i.fa-solid, i.fa-regular, i.fa-brands { color: var(--gold); }
.ico-circle{
  width:42px;height:42px;border-radius:11px;
  background:rgba(223,169,73,0.12);
  border:1px solid rgba(223,169,73,0.35);
  display:inline-flex;align-items:center;justify-content:center;
  font-size:18px;
}
.ico-circle.lg{width:58px;height:58px;border-radius:15px;font-size:24px;}
.ico-circle.sm{width:30px;height:30px;border-radius:8px;font-size:13px;}
.ico-neutral{background:rgba(255,255,255,0.06);border-color:rgba(255,255,255,0.18);}
.ico-neutral i{color:rgba(255,255,255,0.78);}

/* ───── ANIMATION UTILITIES ───── */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .55s cubic-bezier(.2,.7,.2,1),transform .55s cubic-bezier(.2,.7,.2,1);}
.reveal.in{opacity:1;transform:none;}
.reveal.d1{transition-delay:.06s;} .reveal.d2{transition-delay:.12s;} .reveal.d3{transition-delay:.18s;}
.reveal.d4{transition-delay:.24s;} .reveal.d5{transition-delay:.30s;} .reveal.d6{transition-delay:.36s;}

@keyframes floatOrb {
  0%   { transform:translate(0,0)        scale(1)    rotate(0deg); }
  25%  { transform:translate(40px,-30px) scale(1.06) rotate(4deg); }
  50%  { transform:translate(70px,-55px) scale(1.10) rotate(8deg); }
  75%  { transform:translate(30px,-20px) scale(1.04) rotate(3deg); }
  100% { transform:translate(0,0)        scale(1)    rotate(0deg); }
}
@keyframes floatOrb2{
  0%   { transform:translate(0,0)        scale(1)    rotate(0deg); }
  33%  { transform:translate(-45px,30px) scale(1.08) rotate(-6deg); }
  66%  { transform:translate(-20px,60px) scale(0.94) rotate(-4deg); }
  100% { transform:translate(0,0)        scale(1)    rotate(0deg); }
}
@keyframes orbPulse {
  0%   { transform:translate(0,0)       scale(1)    rotate(0deg); opacity:.95; }
  50%  { transform:translate(25px,35px) scale(1.16) rotate(7deg); opacity:1;   }
  100% { transform:translate(0,0)       scale(1)    rotate(0deg); opacity:.95; }
}
@keyframes shimmer  { 0%{background-position:-200% 0;} 100%{background-position:200% 0;} }
@keyframes pulseGlow{ 0%,100%{box-shadow:0 0 0 0 rgba(223,169,73,0.45);} 50%{box-shadow:0 0 0 18px rgba(223,169,73,0);} }
@keyframes pulseDot { 0%{transform:scale(1);opacity:1;} 100%{transform:scale(3.2);opacity:0;} }
@keyframes marqueeLeft{ from{transform:translateX(0);} to{transform:translateX(-50%);} }
@keyframes spinSlow { from{transform:rotate(0);} to{transform:rotate(360deg);} }

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001s!important;animation-iteration-count:1!important;transition-duration:.001s!important;}
  .reveal{opacity:1;transform:none;}
}

/* ───── TOPBAR ───── */
.topbar{
  background:rgba(57,25,186,0.55);
  backdrop-filter:var(--glass-blur-sm);
  border-bottom:1px solid rgba(255,255,255,0.15);
  text-align:center;
  padding:12px;
  font-size:14px;font-weight:600;
  color:rgba(255,255,255,0.9);
  letter-spacing:0.3px;
}
.topbar i{margin-right:8px;}
.topbar a{color:var(--gold-lt);text-decoration:none;border-bottom:1px solid rgba(245,228,184,0.4);margin-left:6px;}
/* Topbar + nav are wrapped in one sticky header so they scroll/stick together. */
.site-header{position:sticky;top:0;z-index:100;}

/* ───── NAV ───── */
.nav{
  display:flex;align-items:center;justify-content:space-between;
  padding:0 80px;height:88px;
  background:rgba(255,255,255,0.07);
  backdrop-filter:var(--glass-blur);
  border-bottom:1px solid var(--glass-border);
}
.logo{
  display:inline-flex;align-items:center;
  padding:6px 4px;
  transition:transform .3s ease, opacity .3s ease;
}
.logo:hover{transform:translateY(-1px);opacity:.92;}
.logo img{
  height:53px;width:auto;
  filter: brightness(0) invert(1);
  -webkit-filter: brightness(0) invert(1);
}
.nav-links{display:flex;align-items:center;gap:36px;}
.nav-links a{font-size:14px;font-weight:700;color:rgba(255,255,255,0.82);text-decoration:none;transition:color .2s;}
.nav-links a:hover{color:#fff;}
.nav-badge{
  background:rgba(223,169,73,0.25);
  border:1px solid rgba(223,169,73,0.5);
  color:var(--gold-lt);
  font-size:11px;font-weight:800;
  padding:2px 8px;border-radius:12px;margin-left:5px;
}
.nav-right{display:flex;align-items:center;gap:22px;}
.nav-phone{font-size:14px;font-weight:700;color:var(--gold-lt);text-decoration:none;}
.nav-phone i{margin-right:6px;}
.btn-nav{
  background:var(--violet-dk);color:#fff;
  padding:11px 24px;border-radius:8px;
  font-size:14px;font-weight:700;text-decoration:none;
  border:1px solid rgba(255,255,255,0.2);
  transition:transform .2s ease, box-shadow .2s ease;
}
.btn-nav:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(57,25,186,0.5);}

/* ───── HERO ───── */
.hero{
  padding:60px 80px 72px;
  position:relative;
  overflow:hidden;
  min-height:600px;
  display:grid;
  /* Two columns: the pitch on the left, the stats card on the right, vertically
     centred beside each other. Collapses to one column at ≤1280px. */
  grid-template-columns:1.55fr 0.95fr;
  gap:60px;align-items:center;
  /* Deep, muted violet base. The animated rising graph + orbs are the only
     background layers now (the hero photo was removed). */
  background-color:#110926;
  background-image:linear-gradient(165deg, #241458 0%, #191040 48%, #110926 100%);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.orb{position:absolute;border-radius:50%;filter:blur(100px);pointer-events:none;z-index:1;}
.orb1{width:700px;height:700px;background:rgba(214,160,76,0.20);top:-200px;right:-100px;animation:floatOrb 22s ease-in-out infinite;}
.orb2{width:520px;height:520px;background:rgba(58,28,170,0.40);bottom:-150px;left:10%;animation:floatOrb2 26s ease-in-out infinite;}
.orb3{width:320px;height:320px;background:rgba(120,104,196,0.30);top:100px;left:35%;animation:orbPulse 18s ease-in-out infinite;}

.hero-inner{position:relative;z-index:3;max-width:none;}
/* Header band spans the full hero width (across both grid columns) so the
   headline + subheadline get the whole section width and stay on one line on
   desktop. Drops back into the normal flow (wrapping) at ≤1280px. */
.hero-head{position:relative;z-index:3;grid-column:1 / -1;max-width:none;}

/* Subtle, premium animated rising graph — now the hero's main backdrop. */
.hero-graph{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;
  opacity:.5;mix-blend-mode:screen;animation:hgIn 1.4s ease both;}
.hero-graph .hg-line{filter:drop-shadow(0 0 6px rgba(223,169,73,.45));}
.hero-graph .hg-dot{filter:drop-shadow(0 0 7px rgba(245,228,184,.9));}
@keyframes hgIn{from{opacity:0;}to{opacity:.5;}}
@media (prefers-reduced-motion:reduce){ .hero-graph{animation:none;} }
.hero-eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  background:rgba(255,255,255,0.10);
  backdrop-filter:var(--glass-blur-sm);
  border:1px solid var(--glass-border);
  padding:8px 20px;border-radius:30px;
  font-size:12.5px;font-weight:800;
  color:var(--gold-lt);
  letter-spacing:1px;text-transform:uppercase;
  margin-bottom:28px;
}
.hero-eyebrow .dot{width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 0 rgba(223,169,73,0.6);animation:pulseGlow 2.4s ease-out infinite;}
.hero-h1{
  /* Fluid size so the headline scales smoothly with the viewport instead of
     staying fixed and reflowing at breakpoints when the window is resized.
     clamp range matches the old stepped sizes (28px floor … 62px cap). */
  /* Continuous viewport-based scaling with a low floor so the headline keeps
     shrinking on narrow screens instead of hitting a fixed size and overflowing. */
  font-size:clamp(22px, 5vw, 62px);line-height:1.18;
  color:#fff;margin-bottom:26px;font-weight:800;
  letter-spacing:-0.02em;
  max-width:none;
  text-wrap:balance;
  overflow-wrap:break-word;
  /* Desktop: keep the hook + subhook each on a single full-width line. The
     ≤1280px breakpoint restores normal wrapping (and hides the <br>) so it
     never overflows on tablet/phone. */
  white-space:nowrap;
}
/* Second line scaled down — the hook ("Short-Staffed and Overworked?") stays large. */
.hero-h1 .hero-h1-sub{font-size:clamp(17px, 2.7vw, 34px);line-height:1.2;display:inline-block;margin-top:10px;}
.hero-h1 em{
  color:transparent;
  background:linear-gradient(120deg, #dfa949 0%, #f5e4b8 40%, #dfa949 60%, #f5e4b8 100%);
  background-size:200% 100%;
  -webkit-background-clip:text;background-clip:text;
  font-style:normal;font-weight:800;
  animation:shimmer 6s linear infinite;
}
.hero-sub{
  font-size:clamp(13.5px, 1.6vw, 18px);color:rgba(255,255,255,0.72);
  line-height:1.65;max-width:none;
  margin-bottom:20px;font-weight:400;
  text-wrap:balance;
  overflow-wrap:break-word;
}
.hero-sub strong{color:#fff;font-weight:700;}
/* Long pitch paragraph split into two columns to declutter the hero. */
.hero-sub-cols{
  column-count:2;column-gap:38px;
  column-rule:1px solid rgba(255,255,255,0.10);
}
/* Hero pitch as a bulleted list — gold dots, kept whole within each column. */
.hero-sub-list{list-style:none;padding:0;}
.hero-sub-list li{
  position:relative;padding-left:22px;margin-bottom:12px;
  break-inside:avoid;
}
.hero-sub-list li:last-child{margin-bottom:0;}
.hero-sub-list li::before{
  content:"";position:absolute;left:0;top:9px;
  width:7px;height:7px;border-radius:50%;
  background:var(--gold);
}
/* Right-fit guarantee — spans the full width beneath the two columns, set off
   with a gold accent so it reads as the promise, not body copy. */
.hero-guarantee{
  font-size:16px;line-height:1.6;color:rgba(255,255,255,0.82);
  margin:0 0 34px;padding:14px 18px;
  border-left:3px solid var(--gold);
  background:rgba(223,169,73,0.08);
  border-radius:0 10px 10px 0;
}
.hero-guarantee strong{color:#fff;font-weight:800;}
.hero-btns{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:18px;align-items:stretch;}
.hero-textlink{
  display:inline-flex;align-items:center;gap:8px;
  font-size:14.5px;font-weight:700;color:rgba(255,255,255,0.78);
  text-decoration:none;margin-bottom:46px;
  border-bottom:1px solid rgba(255,255,255,0.22);padding-bottom:2px;
  transition:color .2s,border-color .2s;
}
.hero-textlink:hover{color:#fff;border-color:var(--gold);}
.hero-textlink i{font-size:12px;color:var(--gold);}
.btn-primary{
  background:var(--violet-dk);color:#fff;
  padding:18px 36px;border-radius:10px;
  font-size:16px;font-weight:700;text-decoration:none;
  border:1px solid rgba(255,255,255,0.2);
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  transition:transform .2s ease, box-shadow .2s ease;
}
/* Hero pairs btn-primary with btn-glass — keep them a matched size. */
.hero-btns .btn-primary,.hero-btns .btn-glass{min-width:230px;justify-content:center;}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(57,25,186,0.55);}
.btn-primary i{transition:transform .25s ease;}
.btn-primary:hover i{transform:translateX(4px);}
.btn-glass{
  background:rgba(255,255,255,0.12);
  backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border-strong);
  color:#fff;
  padding:18px 30px;border-radius:10px;
  font-size:16px;font-weight:700;text-decoration:none;
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  transition:transform .2s ease, background .25s ease;
}
.btn-glass:hover{transform:translateY(-2px);background:rgba(255,255,255,0.18);}
.btn-glass i{color:var(--gold);}
.btn-mini-note{font-size:12.5px;color:rgba(255,255,255,0.55);font-weight:600;letter-spacing:.3px;}

/* All five trust items flow on one row (wrapping only when the column is too
   narrow); the forced 3-on-top/2-below break was removed with the hero redesign. */
.trust-row{grid-column:1 / -1;width:100%;display:flex;align-items:center;justify-content:center;gap:18px 30px;flex-wrap:wrap;margin:-24px 0 0;padding-top:16px;border-top:1px solid rgba(255,255,255,0.12);}
.trust-item{
  display:flex;align-items:center;gap:9px;
  font-size:13.5px;color:rgba(255,255,255,0.78);font-weight:600;
}
.trust-item i{color:var(--gold);font-size:13px;}

/* HIPAA-compliant trust mark — reused in header and footer */
.hipaa-badge{
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 13px;border-radius:999px;line-height:1;white-space:nowrap;
  background:var(--glass-bg,rgba(255,255,255,0.06));
  border:1px solid var(--gold,#d4a64a);
  color:var(--gold,#d4a64a);
  font-size:11.5px;font-weight:800;letter-spacing:.9px;text-transform:uppercase;
  backdrop-filter:blur(var(--glass-blur,18px));-webkit-backdrop-filter:blur(var(--glass-blur,18px));
}
.hipaa-badge i{font-size:14px;}
.hipaa-badge-logo{height:16px;width:auto;display:block;flex:0 0 auto;}
.hipaa-badge--nav{padding:6px 11px;font-size:10.5px;letter-spacing:.6px;}
.hipaa-badge--nav .hipaa-badge-logo{height:14px;}
.hipaa-badge--footer{margin-top:18px;}
@media (max-width:980px){.hipaa-badge--nav{display:none;}}

.hero-stats{
  align-self:center;
  /* Nudge the stats card up so it sits higher than the centered pitch column.
     Reset to 0 at ≤1280px where it stacks below the pitch. */
  margin-top:-300px;
  display:grid;grid-template-columns:repeat(2,1fr);
  background:rgba(255,255,255,0.07);
  backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);
  border-radius:18px;overflow:hidden;
  box-shadow:0 30px 70px -34px rgba(0,0,0,0.65);
}
/* 2×2 grid: inner hairlines only — right border on the left column, bottom
   border on the top row. */
.hstat{
  padding:30px 22px;text-align:center;
  border-right:1px solid rgba(255,255,255,0.10);
  border-bottom:1px solid rgba(255,255,255,0.10);
}
.hstat:nth-child(2n){border-right:none;}
.hstat:nth-child(n+3){border-bottom:none;}
.hstat-num{font-size:46px;font-weight:800;color:var(--gold);line-height:1;letter-spacing:-0.02em;}
.hstat-rating{display:inline-flex;align-items:baseline;gap:4px;}
.hstat-rating i{font-size:30px;}
.hstat-lbl{font-size:12px;color:rgba(255,255,255,0.6);margin-top:8px;text-transform:uppercase;letter-spacing:0.7px;font-weight:700;}
/* Google-review link wrappers — keep the stat/card styling, just make it clickable. */
a.hstat{text-decoration:none;color:inherit;transition:background .2s ease;}
a.hstat:hover{background:rgba(255,255,255,0.04);}
a.hstat:hover .hstat-lbl{color:var(--gold-lt,#f5e4b8);}
.gr-link{text-decoration:none;color:inherit;cursor:pointer;transition:color .2s ease;}
a.gr-link:hover{color:var(--gold-lt,#f5e4b8);}

/* ───── HERO RIGHT VISUAL (photo collage) ───── */
.hero-visual{position:relative;z-index:2;height:600px;}
.hv-card{
  position:absolute;
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 40px 100px rgba(0,0,0,0.45);
  border:1px solid rgba(255,255,255,0.16);
  background:rgba(255,255,255,0.04);
  transition:transform .5s ease;
}
.hv-main{
  width:480px;height:560px;top:0;right:60px;
}
.hv-main:hover{transform:translateY(-6px);}
.hv-main img{width:100%;height:100%;object-fit:cover;}
.hv-side{
  width:260px;height:320px;
  bottom:0;left:0;
}
.hv-side:hover{transform:translateY(-6px);}
.hv-side img{width:100%;height:100%;object-fit:cover;}

.hv-chip{
  position:absolute;
  display:inline-flex;align-items:center;gap:10px;
  background:rgba(20,15,55,0.85);
  backdrop-filter:var(--glass-blur);
  border:1px solid rgba(223,169,73,0.35);
  padding:12px 18px;border-radius:30px;
  font-size:13px;font-weight:700;color:#fff;
  box-shadow:0 18px 40px rgba(0,0,0,0.4);
  z-index:3;
}
.hv-chip i{color:var(--gold);font-size:14px;}
.hv-chip.t1{top:40px;left:-40px;}
.hv-chip.t2{top:240px;right:-30px;}
.hv-chip.t3{bottom:60px;right:80px;}
/* Subtle, organic float — each chip drifts on its own cadence (desynced via
   negative delays). Skipped for users who prefer reduced motion. */
@keyframes chipFloat{
  0%,100%{transform:translateY(0) translateX(0) rotate(0deg);}
  50%    {transform:translateY(-18px) translateX(5px) rotate(-1.4deg);}
}
@media (prefers-reduced-motion:no-preference){
  .hv-chip{animation:chipFloat 5s ease-in-out infinite;will-change:transform;}
  .hv-chip.t1{animation-duration:5.2s;animation-delay:-1s;}
  .hv-chip.t2{animation-duration:6.2s;animation-delay:-3s;}
  .hv-chip.t3{animation-duration:4.6s;animation-delay:-1.8s;}
  /* Service-page hero chips (c1/c2) — distinct cadences too. */
  .hv-chip.c1{animation-duration:5.7s;animation-delay:-1.4s;}
  .hv-chip.c2{animation-duration:4.9s;animation-delay:-3.3s;}
}

/* ───── CLIENT MARQUEE ───── */
.marquee{
  position:relative;padding:34px 0;
  background:rgba(0,0,0,0.22);
  backdrop-filter:var(--glass-blur-sm);
  border-top:1px solid rgba(255,255,255,0.08);
  border-bottom:1px solid rgba(255,255,255,0.08);
  overflow:hidden;
}
.marquee-lbl{
  text-align:center;
  font-size:11px;font-weight:800;
  color:rgba(255,255,255,0.45);
  text-transform:uppercase;letter-spacing:2.2px;
  margin-bottom:22px;
}
.marquee-lbl i{color:rgba(255,255,255,0.45);margin-right:8px;}
.marquee-track-wrap{position:relative;overflow:hidden;}
.marquee-track-wrap::before,
.marquee-track-wrap::after{
  content:"";position:absolute;top:0;bottom:0;width:240px;z-index:2;pointer-events:none;
}
.marquee-track-wrap::before{left:0;background:linear-gradient(to right, rgba(20,15,55,0.95), transparent);}
.marquee-track-wrap::after {right:0;background:linear-gradient(to left,  rgba(20,15,55,0.95), transparent);}
.marquee-track{display:flex;width:max-content;gap:16px;animation:marqueeLeft 38s linear infinite;align-items:center;}
.marquee:hover .marquee-track{animation-play-state:paused;}
/* Same toned-down treatment + height as the In The News marquee: dimmed by
   default, full color + slight zoom on hover (no chip). */
.mq-logo{flex:0 0 auto;height:62px;display:flex;align-items:center;justify-content:center;}
.mq-logo img{
  height:100%;width:auto;max-width:220px;object-fit:contain;
  opacity:.55;
  transition:opacity .35s ease, transform .35s ease;
}
.mq-logo:hover img{opacity:1;transform:scale(1.06);}

/* ───── NEWS MARQUEE (press logos, toned-down → full color on hover) ───── */
.news{
  position:relative;padding:32px 0 36px;
  background:rgba(0,0,0,0.30);
  border-top:1px solid rgba(255,255,255,0.06);
  border-bottom:1px solid rgba(255,255,255,0.06);
  overflow:hidden;
}
.news-lbl{
  text-align:center;
  font-size:11px;font-weight:800;
  color:rgba(255,255,255,0.45);
  text-transform:uppercase;letter-spacing:2.4px;
  margin-bottom:22px;
}
.news-lbl i{color:rgba(255,255,255,0.45);margin-right:8px;}
.news-track-wrap{position:relative;overflow:hidden;}
.news-track-wrap::before,
.news-track-wrap::after{
  content:"";position:absolute;top:0;bottom:0;width:220px;z-index:2;pointer-events:none;
}
.news-track-wrap::before{left:0;background:linear-gradient(to right, rgba(20,15,55,0.95), transparent);}
.news-track-wrap::after {right:0;background:linear-gradient(to left,  rgba(20,15,55,0.95), transparent);}
.news-track{
  display:flex;width:max-content;gap:60px;
  animation:marqueeRight 75s linear infinite;
  align-items:center;
}
.news:hover .news-track{animation-play-state:paused;}
.news-item{
  flex:0 0 auto;
  height:62px;display:flex;align-items:center;justify-content:center;
  text-decoration:none;
}
.news-item img{
  height:100%;width:auto;max-width:220px;object-fit:contain;
  opacity:.55;
  transition:opacity .35s ease, transform .35s ease;
}
.news-item:hover img{
  opacity:1;
  transform:scale(1.06);
}
@keyframes marqueeRight{ from{transform:translateX(-50%);} to{transform:translateX(0);} }

/* ───── SECTION DEFAULTS ───── */
.sec{padding:78px 80px;position:relative;}
.sec-lbl{font-size:12px;font-weight:800;color:var(--gold);text-transform:uppercase;letter-spacing:1.2px;margin-bottom:12px;text-align:center;}
.sec-lbl i{margin-right:6px;}
/* Eyebrow follows its heading. Pages built on .svc-h2 (left by default, centered
   only via a text-align:center wrapper) and hero eyebrows above an <h1> inherit
   the wrapper's alignment instead of the global centered default, so the eyebrow
   always lines up with the heading directly below it — center stays center, left
   stays left. (.sec-h2 sections keep the centered default; handled by rules above.) */
.sec-lbl:has(+ h1),
.sec-lbl:has(+ .svc-h2){text-align:inherit;}
.sec-h2{font-size:50px;font-weight:800;color:#fff;line-height:1.08;margin-bottom:16px;letter-spacing:-0.02em;text-wrap:balance;overflow-wrap:break-word;text-align:center;}
.sec-h2 em{color:var(--gold);font-style:normal;font-weight:800;}
/* ROI calculator headline must stay on ONE line at every width: nowrap + a fluid
   size that scales with the viewport so it shrinks to fit narrow phones rather
   than wrapping, and caps at the 50px design size on desktop (zoom ladder scales
   it further on ultra-wide). Id-scoped so it overrides the .sec-h2 breakpoints. */
#calc-h{font-size:clamp(28px,4vw,46px);overflow-wrap:break-word;}
.sec-sub{font-size:18px;color:rgba(255,255,255,0.65);line-height:1.65;max-width:100%;font-weight:400;text-align:center;}
/* Section headers center by default. Split / two-column layouts (guarantee strip,
   global map, lead bands, talent hero & match card) keep their copy left-aligned. */
.g-copy .sec-lbl, .g-copy .sec-h2, .g-copy .sec-sub,
.global-l .sec-lbl, .global-l .sec-h2, .global-l .sec-sub,
.lead-band-l .sec-lbl, .lead-band-l .sec-h2,
.vtd-hero-text .sec-lbl, .vtd-hero-text .sec-h2,
.vtd-match-l .sec-lbl, .vtd-match-l .sec-h2{text-align:left;}
.lead-band-l .sec-sub{text-align:left;}
/* Split / two-column layouts: let the title wrap. The global nowrap would otherwise
   expand the text column and squeeze the adjacent map / form / image. */
.g-copy .sec-h2,.global-l .sec-h2,.lead-band-l .sec-h2,
.vtd-hero-text .sec-h2,.vtd-match-l .sec-h2{white-space:normal;}
/* VT profiles header lives in a left text column beside a CTA: left-align the
   eyebrow, title and subheader; title uses the standard white + gold-em styling. */
#profiles .sec-lbl, #profiles .sec-h2, #profiles .sec-sub{text-align:left;}
/* VT profiles header: title left, CTA right on desktop; stacks + centers on mobile. */
.prof-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;gap:24px;}
.prof-head-cta{text-align:right;}
.prof-head-cta .btn-primary{font-size:15px;padding:14px 28px;}
@media (max-width:768px){
  .prof-head{flex-direction:column;align-items:stretch;gap:16px;}
  .prof-head-cta{text-align:center;}
  .prof-head-cta .btn-primary{display:flex;width:100%;justify-content:center;font-size:14.5px;padding:14px 22px;margin:14px 0;}
}
/* Compliance section keeps its h2 centered. */
.comp-section .sec-h2{text-align:center;}

/* ───── ROI CALCULATOR ───── */
.calc-wrap{
  padding:72px 80px 72px;position:relative;
  background:
    radial-gradient(800px 500px at 18% 0%, rgba(57,25,186,0.30), transparent 60%),
    radial-gradient(700px 600px at 88% 50%, rgba(223,169,73,0.22), transparent 60%);
}
/* The CSM callback complements the calculator — keep them visually tied, not
   separated by a full section gap. */
.csm-cta{padding-top:28px;}
.calc-head{text-align:center;margin:0 auto 40px;max-width:820px;}
.calc-head .sec-sub{max-width:660px;margin-left:auto;margin-right:auto;}
.calc-badge{
  display:inline-flex;align-items:center;gap:10px;
  background:rgba(223,169,73,0.18);
  border:1px solid rgba(223,169,73,0.45);
  color:var(--gold-lt);font-weight:800;font-size:12px;
  padding:8px 18px;border-radius:24px;letter-spacing:1.2px;text-transform:uppercase;
  margin-bottom:18px;
}
.calc-badge i{color:var(--gold);}

/* Gradient-border: the rotating conic is the OUTER wrapper's background, and its
   3px padding is the glow thickness. .calc sits on top with its own static
   gradient, covering the center — so the rotating glow only shows on the edge.
   The pulsing box-shadow (vaddGlow) blooms outward from the wrapper too. */
.calc-glow{
  position:relative;max-width:760px;margin:0 auto;
  padding:3px;border-radius:31px;
  background:conic-gradient(from var(--vadd-spin),
    rgba(223,169,73,0.35) 0deg, rgba(245,228,184,1) 70deg, rgba(124,58,237,0.95) 150deg,
    rgba(57,25,186,0.60) 225deg, rgba(223,169,73,0.35) 310deg, rgba(223,169,73,0.35) 360deg);
  animation:vaddSpin 4.5s linear infinite, vaddGlow 5.5s ease-in-out infinite;
}
@media (prefers-reduced-motion:reduce){
  .calc-glow{animation:none;box-shadow:0 50px 120px rgba(0,0,0,0.35), 0 0 42px -10px rgba(223,169,73,0.3);}
}

.calc{
  position:relative;
  display:grid;grid-template-columns:1fr;gap:0;
  /* Static gradient background — the content panel never rotates. */
  background:linear-gradient(150deg, #1d1547 0%, #160e34 58%, #120a2c 100%);
  border-radius:28px;overflow:hidden;
}

/* LEFT column — value-multiplier speedometer */
.calc-vadd{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;
  padding:44px 38px;
  border-right:1px solid rgba(255,255,255,0.08);
  background:
    radial-gradient(420px 380px at 30% 12%, rgba(57,25,186,0.30), transparent 62%),
    radial-gradient(360px 340px at 80% 92%, rgba(223,169,73,0.16), transparent 62%),
    rgba(20,15,55,0.55);
}
.calc-vadd-h{font-size:27px;font-weight:800;color:#fff;line-height:1.12;letter-spacing:-0.02em;text-align:center;margin:0;}
.calc-vadd-h em{color:var(--gold);font-style:normal;font-weight:800;}

/* RIGHT column — the live calculator (slider bar on top, results below). */
.calc-main{display:flex;flex-direction:column;min-width:0;}
/* Merged calculator: slider bar on top, results below. Keep the head + slider
   on ONE compact row — min-width:0 lets them shrink to fit the narrow right
   column instead of wrapping (the old 40px gap on wrap ballooned the height).
   The small row-gap keeps it tidy if it ever does wrap on a tight screen. */
.calc-top{
  display:flex;align-items:center;gap:14px 26px;flex-wrap:wrap;
  padding:20px 28px;
  background:rgba(20,15,55,0.55);
  border-bottom:1px solid rgba(255,255,255,0.08);
}
.calc-top-head{flex:1 1 180px;min-width:0;}
.calc-top-head h3{font-size:24px;font-weight:800;color:#fff;margin-bottom:6px;letter-spacing:-0.01em;}
.calc-cap{font-size:13.5px;color:rgba(255,255,255,0.55);font-weight:400;line-height:1.6;margin:0;}
.calc-top .calc-slider-wrap{flex:2 1 300px;min-width:0;}
.calc-controls{
  padding:44px 40px;
  background:rgba(20,15,55,0.55);
  border-right:1px solid rgba(255,255,255,0.08);
}
.calc-controls h3{font-size:24px;font-weight:800;color:#fff;margin-bottom:6px;letter-spacing:-0.01em;}
.calc-controls .calc-cap{font-size:13.5px;color:rgba(255,255,255,0.55);margin-bottom:28px;font-weight:400;line-height:1.6;}
.calc-field{margin-bottom:22px;}
.calc-label{font-size:11px;font-weight:800;color:rgba(255,255,255,0.55);text-transform:uppercase;letter-spacing:1.2px;margin-bottom:10px;display:block;}
.calc-seg{display:flex;gap:0;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.12);border-radius:12px;padding:4px;}
.calc-seg button{
  flex:1;background:transparent;border:none;color:rgba(255,255,255,0.65);
  padding:11px 14px;font-size:13.5px;font-weight:700;
  border-radius:9px;cursor:pointer;font-family:inherit;
  transition:all .25s ease;
}
.calc-seg button:hover{color:#fff;}
.calc-seg button.on{
  background:linear-gradient(180deg, var(--gold) 0%, var(--gold-dk) 100%);
  color:#1a1535;box-shadow:0 6px 16px rgba(223,169,73,0.35);
}
.calc-select{
  width:100%;
  background:rgba(255,255,255,0.07);
  border:1px solid rgba(255,255,255,0.15);
  color:#fff;
  padding:14px 18px;border-radius:11px;
  font-size:15px;font-family:inherit;font-weight:600;
  outline:none;cursor:pointer;appearance:none;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23dfa949' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 18px center;background-size:14px;
  padding-right:46px;
  transition:border-color .2s ease, background-color .2s ease;
}
.calc-select:focus{border-color:rgba(223,169,73,0.6);background-color:rgba(255,255,255,0.10);}

/* Native dropdowns: the browser-native popup inherits the page colors on
   Chrome/Edge dark themes, which produces white-on-white text. Force every
   <select>'s option list to a dark popup with light text — applies to the
   ROI calculator, the CTA contact form, and any future dropdown. */
select option,
select optgroup{background:#1a1535;color:#fff;}
select optgroup{font-weight:700;color:#e9c879;}
select option:disabled{color:rgba(255,255,255,.45);}
select option:checked{background:#3919BA;color:#fff;}
/* Firefox-specific highlight so the hovered option stays readable. */
@-moz-document url-prefix() {
  select option:hover,
  select option:focus,
  select option:checked{
    background-color:#3919BA !important;
    color:#fff !important;
    box-shadow:0 0 0 30px #3919BA inset;
  }
}
.calc-select option{background:#1a1535;color:#fff;}
.calc-slider-wrap{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.12);border-radius:13px;padding:18px 18px 14px;}
.calc-slider-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.calc-slider-val{font-size:30px;font-weight:800;color:var(--gold);line-height:1;letter-spacing:-0.02em;}
.calc-slider-cap{font-size:12px;color:rgba(255,255,255,0.55);font-weight:700;text-transform:uppercase;letter-spacing:1.1px;}
.calc-slider{
  -webkit-appearance:none;appearance:none;
  width:100%;height:8px;border-radius:999px;outline:none;
  background:linear-gradient(90deg, var(--gold) 0%, var(--gold) 0%, rgba(255,255,255,0.12) 0%);
  transition:background .15s ease;
}
.calc-slider::-webkit-slider-thumb{
  -webkit-appearance:none;width:24px;height:24px;border-radius:50%;
  background:#fff;border:4px solid var(--gold);cursor:pointer;
  box-shadow:0 4px 14px rgba(223,169,73,0.55);
  transition:transform .15s ease;
}
.calc-slider::-webkit-slider-thumb:hover{transform:scale(1.12);}
.calc-slider::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:#fff;border:4px solid var(--gold);cursor:pointer;}
.calc-ticks{display:flex;justify-content:space-between;margin-top:10px;font-size:10.5px;color:rgba(255,255,255,0.4);font-weight:700;}
.calc-foot{margin-top:6px;font-size:11.5px;color:rgba(255,255,255,0.42);font-weight:500;line-height:1.55;}

.calc-results{
  padding:26px 30px 30px;position:relative;
  background:
    radial-gradient(380px 380px at 80% 10%, rgba(223,169,73,0.16), transparent 60%),
    radial-gradient(420px 420px at 15% 90%, rgba(57,25,186,0.32), transparent 60%);
}
.calc-results-top{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;margin-bottom:30px;}
.calc-hero-num{position:relative;}
.calc-hero-lbl{
  font-size:11px;font-weight:800;color:var(--gold-lt);
  text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;
  display:flex;align-items:center;gap:8px;
}
.calc-hero-lbl::before{content:"";width:18px;height:1px;background:var(--gold);}
.calc-hero-val{
  font-size:62px;font-weight:800;line-height:1;letter-spacing:-0.03em;
  background:linear-gradient(120deg, #fff 0%, #f5e4b8 30%, #dfa949 60%, #fff 90%);
  background-size:200% 100%;
  -webkit-background-clip:text;background-clip:text;color:transparent;
  font-variant-numeric:tabular-nums;
  animation:shimmer 5s linear infinite;
}
.calc-hero-sub{font-size:14px;color:rgba(255,255,255,0.65);margin-top:8px;font-weight:600;}
.calc-gauge{width:148px;height:148px;flex-shrink:0;position:relative;}
.calc-gauge svg{width:100%;height:100%;transform:rotate(-90deg);}
.calc-gauge .gauge-bg{fill:none;stroke:rgba(255,255,255,0.10);stroke-width:14;}
.calc-gauge .gauge-fg{fill:none;stroke:url(#gaugeGrad);stroke-width:14;stroke-linecap:round;transition:stroke-dasharray 1.1s cubic-bezier(.2,.85,.2,1);}
.calc-gauge-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;}
.calc-gauge-pct{font-size:34px;font-weight:800;color:#fff;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-0.02em;}
.calc-gauge-lbl{font-size:10.5px;color:rgba(255,255,255,0.6);text-transform:uppercase;letter-spacing:1.4px;margin-top:6px;font-weight:800;}

.calc-bars{margin-top:8px;}
.calc-bar-row{margin-bottom:22px;}
.calc-bar-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px;}
.calc-bar-name{font-size:13px;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:1.2px;display:flex;align-items:center;gap:9px;}
.calc-bar-name .swatch{width:11px;height:11px;border-radius:3px;}
.calc-bar-name.us .swatch{background:rgba(255,255,255,0.5);}
.calc-bar-name.vt .swatch{background:var(--gold);}
.calc-bar-amt{font-size:21px;font-weight:800;color:#fff;font-variant-numeric:tabular-nums;letter-spacing:-0.01em;}
.calc-bar-amt.us{color:rgba(255,255,255,0.78);}
.calc-bar-amt.vt{color:var(--gold);}
.calc-bar-track{height:14px;border-radius:999px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.08);overflow:hidden;position:relative;}
.calc-bar-fill{height:100%;border-radius:999px;transition:width 1.05s cubic-bezier(.2,.85,.2,1);position:relative;}
.calc-bar-fill.us{background:linear-gradient(90deg, rgba(255,255,255,0.55), rgba(255,255,255,0.85));box-shadow:inset 0 0 0 1px rgba(255,255,255,0.15);}
.calc-bar-fill.vt{background:linear-gradient(90deg, var(--gold-dk), var(--gold) 60%, var(--gold-lt));box-shadow:0 0 24px rgba(223,169,73,0.4), inset 0 0 0 1px rgba(255,255,255,0.25);}
.calc-bar-fill::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg, transparent, rgba(255,255,255,0.35), transparent);background-size:200% 100%;animation:shimmer 2.6s linear infinite;opacity:.6;}

.calc-kpis{margin-top:14px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.calc-kpi{
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.12);
  border-radius:14px;padding:18px;
  transition:transform .25s ease, border-color .25s ease;
}
.calc-kpi:hover{transform:translateY(-3px);border-color:rgba(223,169,73,0.45);}
.calc-kpi-lbl{font-size:11px;color:rgba(255,255,255,0.55);text-transform:uppercase;letter-spacing:1.1px;font-weight:800;margin-bottom:8px;display:flex;align-items:center;gap:6px;}
.calc-kpi-lbl i{color:var(--gold);font-size:11px;}
.calc-kpi-val{font-size:26px;font-weight:800;color:#fff;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-0.02em;}
.calc-kpi-val .unit{font-size:13px;color:rgba(255,255,255,0.5);font-weight:700;margin-left:4px;}

.calc-cta{
  margin-top:26px;
  display:flex;align-items:center;justify-content:space-between;gap:22px;
  padding:22px 26px;
  background:linear-gradient(95deg, rgba(57,25,186,0.55), rgba(223,169,73,0.25));
  border:1px solid rgba(223,169,73,0.4);
  border-radius:18px;
}
/* In the calculator's left column the CTA is narrow — stack it and center. */
.calc-vadd .calc-cta{flex-direction:column;align-items:stretch;text-align:center;gap:16px;width:100%;margin-top:4px;}
.calc-vadd .calc-cta-btns{display:flex;}
.calc-vadd .calc-cta a{width:100%;justify-content:center;}
.calc-cta-l{font-size:15.5px;color:#fff;font-weight:600;line-height:1.5;}
.calc-cta-l strong{color:var(--gold-lt);font-weight:800;}
.calc-cta a{
  background:#fff;color:var(--violet-deep);
  padding:14px 26px;border-radius:10px;
  font-size:14.5px;font-weight:800;text-decoration:none;
  white-space:nowrap;
  display:inline-flex;align-items:center;gap:8px;
  transition:transform .2s ease, box-shadow .2s ease;
  box-shadow:0 8px 22px rgba(0,0,0,0.25);
}
.calc-cta a:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,0,0,0.35);}
.calc-cta a i{color:var(--violet-deep);}

/* ───── GLOBAL NETWORK SECTION ───── */
.global{
  padding:110px 80px;position:relative;
  background:
    radial-gradient(900px 600px at 90% 50%, rgba(57,25,186,0.22), transparent 65%),
    radial-gradient(700px 500px at 5% 100%, rgba(223,169,73,0.10), transparent 60%);
}
.global-grid{display:grid;grid-template-columns:560px 1fr;gap:60px;align-items:center;}
.global-l{max-width:520px;}
.global-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:34px;margin-bottom:30px;}
.gstat{
  background:rgba(255,255,255,0.06);
  backdrop-filter:var(--glass-blur-sm);
  border:1px solid var(--glass-border);
  border-radius:16px;
  padding:22px 22px;
}
.gstat-ico{margin-bottom:14px;}
.gstat-num{font-size:38px;font-weight:800;color:#fff;line-height:1;letter-spacing:-0.02em;}
.gstat-num span{color:var(--gold);}
.gstat-lbl{font-size:12.5px;color:rgba(255,255,255,0.6);margin-top:6px;font-weight:600;}
.global-hubs{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;}
.hub-chip{
  display:inline-flex;align-items:center;gap:9px;
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.14);
  padding:9px 16px;border-radius:999px;
  font-size:13px;font-weight:700;color:rgba(255,255,255,0.78);
}
.hub-chip i{color:var(--gold);font-size:11px;}

/* ───── PROCESS step ETA chip ───── */
.pstep-eta{
  display:inline-flex;align-items:center;gap:6px;
  font-size:11px;font-weight:800;color:var(--gold-lt);
  text-transform:uppercase;letter-spacing:1.1px;
  background:rgba(223,169,73,0.14);
  border:1px solid rgba(223,169,73,0.4);
  padding:4px 10px;border-radius:14px;
  margin-bottom:10px;
}
.pstep-eta i{color:var(--gold);font-size:10px;}

/* ───── SPEC proof-point block (medical + dental cards) ───── */
.spec-proof{
  background:rgba(0,0,0,0.16);
  border:1px solid rgba(223,169,73,0.22);
  border-radius:12px;
  padding:16px 18px;
  margin-bottom:24px;
}
.spec-proof-h{
  font-size:11.5px;font-weight:800;color:var(--gold-lt);
  text-transform:uppercase;letter-spacing:1.1px;
  display:flex;align-items:center;gap:8px;margin-bottom:10px;
}
.spec-proof-h i{color:var(--gold);font-size:11px;}
.spec-proof ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px;}
.spec-proof li{font-size:14.5px;line-height:1.55;color:rgba(255,255,255,0.85);padding-left:16px;position:relative;}
.spec-proof li::before{content:"\2192";position:absolute;left:0;color:var(--gold);font-weight:800;}
.spec-proof li strong{color:#fff;font-weight:700;}

/* ───── GUARANTEE — audit detail block ───── */
.g-audit{
  margin-top:16px;
  background:linear-gradient(135deg, rgba(57,25,186,0.30), rgba(223,169,73,0.10));
  border:1px solid rgba(223,169,73,0.32);
  border-radius:12px;
  padding:16px 18px;
}
.g-audit-h{
  font-size:11.5px;font-weight:800;color:var(--gold-lt);
  text-transform:uppercase;letter-spacing:1.2px;
  display:flex;align-items:center;gap:9px;margin-bottom:9px;
}
.g-audit-h i{color:var(--gold);}
.g-audit ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:7px;}
.g-audit li{font-size:13px;line-height:1.5;color:rgba(255,255,255,0.82);padding-left:18px;position:relative;}
.g-audit li::before{content:"\2713";position:absolute;left:0;color:var(--gold);font-weight:800;}
.g-audit li strong{color:#fff;font-weight:700;}

/* ───── GLOBAL COVERAGE — tighter, client-benefit framing ───── */
.global-compact{padding:80px 80px;}
.global-compact .global-grid{grid-template-columns:1fr 1fr;gap:50px;}
.global-compact .global-l{max-width:none;}
.global-benefits{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:14px;}
.global-benefits li{
  display:flex;align-items:flex-start;gap:14px;
  font-size:15px;line-height:1.55;color:rgba(255,255,255,0.78);
}
.global-benefits li .ico-circle{flex:0 0 42px;}
.global-benefits li strong{color:#fff;font-weight:700;}

/* World map */
.world{
  position:relative;
  aspect-ratio:1010 / 666;
  width:100%;
  border-radius:24px;
  background:
    radial-gradient(900px 600px at 50% 50%, rgba(57,25,186,0.22), transparent 70%),
    linear-gradient(180deg, rgba(20,15,55,0.60), rgba(20,15,55,0.32));
  border:1px solid var(--glass-border);
  overflow:hidden;
  box-shadow:0 40px 100px rgba(0,0,0,0.4);
}
.world .world-map-img{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:fill;opacity:.8;
}
.world-grid{
  position:absolute;inset:0;
  background-image:
    linear-gradient(to right, rgba(255,255,255,0.04) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,0.04) 1px, transparent 1px);
  background-size:60px 60px;
  pointer-events:none;
}
.world-pin{
  position:absolute;width:14px;height:14px;border-radius:50%;
  background:var(--gold);box-shadow:0 0 18px rgba(223,169,73,0.7);
  transform:translate(-50%,-50%);
}
.world-pin::after{
  content:"";position:absolute;inset:-4px;border-radius:50%;
  border:2px solid var(--gold);opacity:.6;
  animation:pulseDot 2.2s ease-out infinite;
}
.world-pin .pin-lbl{
  position:absolute;bottom:24px;left:50%;transform:translateX(-50%);
  white-space:nowrap;
  background:rgba(20,15,55,0.92);
  border:1px solid rgba(255,255,255,0.18);
  color:#fff;font-size:11px;font-weight:800;
  padding:5px 10px;border-radius:6px;letter-spacing:.3px;
  text-transform:uppercase;
}
.world-pin .pin-lbl::after{
  content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);
  border:4px solid transparent;border-top-color:rgba(20,15,55,0.92);
}
.world-arc{
  position:absolute;inset:0;width:100%;height:100%;
  pointer-events:none;
}
.world-arc path{
  fill:none;stroke:url(#arcGrad);stroke-width:1.6;stroke-linecap:round;
  stroke-dasharray:2 10;
  animation:netFlow 2.6s linear infinite;
}
.world-arc path:nth-child(2){animation-duration:3.2s;animation-delay:-.4s;}
.world-arc path:nth-child(3){animation-duration:2.9s;animation-delay:-.8s;}
.world-arc path:nth-child(4){animation-duration:3.6s;animation-delay:-1.2s;}
.world-arc path:nth-child(5){animation-duration:2.4s;animation-delay:-1.6s;}
.world-arc path:nth-child(6){animation-duration:3.0s;animation-delay:-.6s;}
.world-arc path:nth-child(7){animation-duration:2.7s;animation-delay:-1.0s;}
.world-arc path:nth-child(8){animation-duration:3.4s;animation-delay:-1.4s;}
.world-arc path:nth-child(9){animation-duration:2.5s;animation-delay:-.2s;}
.world-arc path:nth-child(10){animation-duration:3.1s;animation-delay:-1.8s;}
.world-arc path:nth-child(11){animation-duration:2.8s;animation-delay:-.5s;}
@keyframes netFlow{
  from{stroke-dashoffset:0;}
  to  {stroke-dashoffset:-72;}
}

/* ───── SPECIALTIES ───── */
.spec-grid{display:grid;grid-template-columns:1fr;gap:32px;margin-top:56px;}
.spec-card{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
  background:var(--glass-bg2);
  backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);
  border-radius:28px;overflow:hidden;
  transition:transform .4s ease, box-shadow .4s ease, border-color .4s ease;
  min-height:480px;
}
.spec-card:hover{transform:translateY(-6px);box-shadow:0 40px 80px rgba(0,0,0,0.42);border-color:rgba(223,169,73,0.45);}
/* Visual panel — no photo. Accent gradient + concentric guide rings + an icon
   medallion, the bold caption and the proof-point numbers. High-contrast and
   roomy, tuned for an older healthcare/dental audience. */
.spec-aside{
  position:relative;overflow:hidden;
  display:flex;flex-direction:column;justify-content:center;align-items:center;
  text-align:center;padding:52px 40px;gap:22px;
}
.spec-aside::before{
  content:"";position:absolute;top:-12%;left:50%;transform:translateX(-50%);
  width:580px;height:580px;border-radius:50%;pointer-events:none;z-index:0;
  background:
    radial-gradient(circle, transparent 37.6%, rgba(255,255,255,0.055) 38%, transparent 38.4%),
    radial-gradient(circle, transparent 51.6%, rgba(255,255,255,0.045) 52%, transparent 52.4%),
    radial-gradient(circle, transparent 65.6%, rgba(255,255,255,0.035) 66%, transparent 66.4%);
}
.spec-aside--med{
  background:
    radial-gradient(120% 80% at 50% 0%, rgba(223,169,73,0.22), transparent 60%),
    linear-gradient(165deg, rgba(57,25,186,0.34), rgba(13,7,34,0.34));
}
.spec-aside--dent{
  background:
    radial-gradient(120% 80% at 50% 0%, rgba(133,130,195,0.30), transparent 60%),
    linear-gradient(165deg, rgba(57,25,186,0.42), rgba(13,7,34,0.34));
}
.spec-aside-eyebrow{
  position:relative;z-index:2;
  font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:2.4px;
  color:var(--gold-lt);
}
.spec-aside--dent .spec-aside-eyebrow{color:rgba(223,221,255,0.96);}
.spec-medallion{
  position:relative;z-index:2;flex:0 0 auto;
  width:108px;height:108px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:radial-gradient(circle at 50% 34%, rgba(223,169,73,0.32), rgba(223,169,73,0.10));
  border:1px solid rgba(223,169,73,0.52);
  box-shadow:0 20px 46px -18px rgba(0,0,0,0.7), inset 0 0 30px rgba(223,169,73,0.14);
}
.spec-medallion i{font-size:44px;color:#fff;}
.spec-aside--dent .spec-medallion{
  background:radial-gradient(circle at 50% 34%, rgba(133,130,195,0.40), rgba(133,130,195,0.12));
  border-color:rgba(133,130,195,0.58);
  box-shadow:0 20px 46px -18px rgba(0,0,0,0.7), inset 0 0 30px rgba(133,130,195,0.18);
}
.spec-aside-cap{
  position:relative;z-index:2;
  font-size:31px;font-weight:800;line-height:1.16;color:#fff;letter-spacing:-0.01em;
  text-shadow:0 2px 18px rgba(0,0,0,0.45);
}
.spec-aside .spec-proof{
  position:relative;z-index:2;margin:6px 0 0;width:100%;max-width:440px;text-align:left;
  background:rgba(10,6,28,0.36);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  border:1px solid rgba(223,169,73,0.28);
  box-shadow:0 18px 44px -22px rgba(0,0,0,0.6);
}
.spec-aside--dent .spec-proof{border-color:rgba(133,130,195,0.32);}
/* Dental (alt) card flips the visual panel to the right on desktop. */
.spec-card.alt .spec-aside{grid-column:2;grid-row:1;}
.spec-card.alt .spec-content{grid-column:1;grid-row:1;}
.spec-content{
  padding:56px 60px;
  display:flex;flex-direction:column;justify-content:center;
}
.spec-eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-size:11.5px;font-weight:800;
  text-transform:uppercase;letter-spacing:1.4px;
  margin-bottom:18px;
}
.spec-eyebrow .dot{width:7px;height:7px;border-radius:50%;}
.spec-eyebrow.med{color:var(--gold-lt);}
.spec-eyebrow.med .dot{background:var(--gold);box-shadow:0 0 12px rgba(223,169,73,0.6);}
.spec-eyebrow.dent{color:rgba(220,218,255,0.9);}
.spec-eyebrow.dent .dot{background:var(--violet);box-shadow:0 0 12px rgba(133,130,195,0.6);}
.spec-title-row{display:flex;align-items:center;gap:18px;margin-bottom:18px;}
.spec-title{font-size:36px;font-weight:800;color:#fff;line-height:1.12;letter-spacing:-0.02em;}
.spec-tag{display:inline-block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.6px;padding:4px 14px;border-radius:20px;}
.spec-tag.med{background:rgba(223,169,73,0.2);border:1px solid rgba(223,169,73,0.45);color:var(--gold-lt);}
.spec-tag.dent{background:rgba(133,130,195,0.2);border:1px solid rgba(133,130,195,0.45);color:rgba(220,218,255,0.9);}
.spec-desc{font-size:17.5px;color:rgba(255,255,255,0.82);line-height:1.7;margin-bottom:28px;max-width:560px;}
.spec-pills{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:32px;}
.pill{
  font-size:13.5px;font-weight:600;
  background:rgba(255,255,255,0.07);
  border:1px solid rgba(255,255,255,0.16);
  color:rgba(255,255,255,0.86);
  padding:8px 15px;border-radius:20px;
  text-decoration:none;display:inline-flex;align-items:center;gap:6px;
  transition:background .25s ease, border-color .25s ease, color .2s ease, transform .2s ease;
}
.pill:hover{background:rgba(223,169,73,0.18);border-color:rgba(223,169,73,0.45);color:#fff;}
a.pill{cursor:pointer;}
a.pill:hover{transform:translateY(-1px);}
a.pill i{font-size:9px;color:var(--gold);}
.spec-link{
  display:inline-flex;align-items:center;gap:10px;
  font-size:15px;font-weight:800;color:var(--gold);text-decoration:none;
  padding:15px 24px;border-radius:10px;
  background:rgba(223,169,73,0.12);
  border:1px solid rgba(223,169,73,0.35);
  align-self:flex-start;
  transition:gap .25s ease, background .25s ease, border-color .25s ease, transform .25s ease;
}
.spec-link:hover{gap:14px;background:rgba(223,169,73,0.22);border-color:rgba(223,169,73,0.55);transform:translateY(-2px);}
.spec-link.dent{color:rgba(220,218,255,0.95);background:rgba(133,130,195,0.14);border-color:rgba(133,130,195,0.4);}
.spec-link.dent:hover{background:rgba(133,130,195,0.24);border-color:rgba(133,130,195,0.6);}

.hipaa{
  background:rgba(255,255,255,0.06);
  backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);
  border-radius:18px;
  padding:28px 34px;
  display:flex;flex-direction:column;align-items:stretch;gap:24px;
  margin:36px 0 0;
}
/* All four trust badges sit in one horizontal row across the top, evenly spread. */
.hbadges{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;}
.hbadge{display:flex;align-items:center;gap:14px;}
/* Seal + CTA sit below the badge row, separated by a hairline divider. */
.hipaa-main{
  display:flex;align-items:center;justify-content:center;gap:44px;flex-wrap:wrap;
  border-top:1px solid var(--glass-border);padding-top:24px;
}
.hipaa-cta{display:flex;flex-direction:column;align-items:center;gap:12px;}
.hipaa-cta .cta-note{margin:0;width:auto;flex-basis:auto;}
/* Audit checklist relocated into the strip: the flex gap handles spacing. */
.hipaa .g-audit{margin-top:0;}
/* Seal+CTA and the audit checklist sit side by side below the badge row, sharing
   one hairline divider carried by the row wrapper. */
.hipaa-row{display:flex;align-items:stretch;gap:28px;border-top:1px solid var(--glass-border);padding-top:24px;}
.hipaa-row .hipaa-main{flex:1;border-top:none;padding-top:0;}
.hipaa-row .g-audit{flex:1.2;}
.hbadge-txt strong{display:block;font-size:14px;font-weight:700;color:var(--gold-lt);}
.hbadge-txt span{font-size:12px;color:rgba(255,255,255,0.5);}
/* HIPAA Compliant shield seal — strip + footer trust mark */
.hipaa-seal{height:104px;width:auto;flex:0 0 auto;display:block;filter:drop-shadow(0 12px 24px rgba(0,0,0,0.4));}
.hipaa-seal--footer{height:112px;margin-top:18px;}
.btn-gold{
  background:var(--gold);color:var(--dark);
  padding:14px 28px;border-radius:9px;
  font-size:14.5px;font-weight:800;text-decoration:none;
  white-space:nowrap;flex-shrink:0;
  transition:transform .2s ease, box-shadow .2s ease;
  display:inline-flex;align-items:center;gap:8px;
}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(223,169,73,0.5);}
.btn-gold i{color:var(--dark);}

/* ───── ROI STATS ───── */
.roi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:56px;}
.roi-card{
  background:var(--glass-bg2);
  backdrop-filter:var(--glass-blur);
  border:1px solid rgba(223,169,73,0.25);
  border-radius:22px;padding:44px 32px;text-align:center;
  transition:transform .3s ease;
}
.roi-card:hover{transform:translateY(-4px);}
.roi-ico{margin:0 auto 18px;}
.roi-num{font-size:74px;font-weight:800;color:var(--gold);line-height:1;margin-bottom:14px;font-variant-numeric:tabular-nums;letter-spacing:-0.03em;}
.roi-lbl{font-size:16px;color:rgba(255,255,255,0.7);line-height:1.55;font-weight:500;}

/* ───── PROCESS ───── */
.proc-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:60px;position:relative;}
.pstep{
  position:relative;
  background:linear-gradient(160deg,rgba(255,255,255,0.06),rgba(255,255,255,0.035));
  backdrop-filter:var(--glass-blur-sm);
  border:1px solid var(--glass-border);
  border-radius:20px;padding:36px;
  display:flex;flex-direction:column;
  transition:transform .28s ease, border-color .28s ease, box-shadow .28s ease, background .28s ease;
}
.pstep:hover{transform:translateY(-5px);border-color:rgba(223,169,73,0.5);
  background:linear-gradient(160deg,rgba(223,169,73,0.10),rgba(255,255,255,0.04));
  box-shadow:0 22px 55px -26px rgba(223,169,73,0.45);}
/* Gold connector bridging the gap between steps at the number-badge row (desktop). */
@media (min-width:981px){
  .pstep:not(:last-child)::after{content:"";position:absolute;top:59px;right:-28px;width:28px;height:2px;
    background:linear-gradient(90deg,rgba(223,169,73,0.55),rgba(223,169,73,0));}
}
.pstep-head{display:flex;align-items:center;gap:14px;margin-bottom:22px;}
.pstep-num{
  width:46px;height:46px;
  background:rgba(223,169,73,0.18);border:1.5px solid rgba(223,169,73,0.5);
  border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  font-size:18px;font-weight:800;color:var(--gold);letter-spacing:-0.02em;
}
.pstep-ico{font-size:22px;}
.pstep-title{font-size:22px;font-weight:800;color:#fff;margin-bottom:12px;letter-spacing:-0.01em;}
.pstep-desc{font-size:14.5px;color:rgba(255,255,255,0.65);line-height:1.7;}
.proc-cta{text-align:center;margin-top:52px;}

/* ───── TESTIMONIALS ───── */
.test-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:52px;}
.test-card{
  background:var(--glass-bg2);
  backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);
  border-radius:20px;padding:34px;
  display:flex;flex-direction:column;
  transition:transform .3s ease, box-shadow .3s ease;
  position:relative;
}
.test-card:hover{transform:translateY(-4px);box-shadow:0 28px 50px rgba(0,0,0,0.32);}
.test-quote-ico{position:absolute;top:24px;right:28px;font-size:34px;color:rgba(223,169,73,0.3);}
.stars{color:var(--gold);font-size:14px;letter-spacing:3px;margin-bottom:18px;}
.test-q{font-size:15.5px;color:rgba(255,255,255,0.85);line-height:1.75;margin-bottom:24px;font-weight:400;}
.test-auth{display:flex;align-items:center;gap:14px;margin-top:auto;}
.test-photo{
  width:52px;height:52px;border-radius:50%;overflow:hidden;flex-shrink:0;
  border:2px solid rgba(223,169,73,0.6);
}
.test-photo img{width:100%;height:100%;object-fit:cover;}
.test-name{font-size:14.5px;font-weight:800;color:#fff;}
.test-role{font-size:12.5px;color:rgba(255,255,255,0.55);margin-top:2px;display:flex;align-items:center;gap:6px;}
.test-role i{color:var(--gold);font-size:10px;}

/* ───── HOW WE WORK ───── */
.hw-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:52px;}
.hw-card{
  background:var(--glass-bg);
  backdrop-filter:var(--glass-blur-sm);
  border:1px solid var(--glass-border);
  border-radius:18px;padding:32px;
  display:flex;gap:22px;align-items:flex-start;
  transition:transform .3s ease, border-color .3s ease;
}
.hw-card:hover{transform:translateY(-4px);border-color:rgba(223,169,73,0.35);}
.hw-title{font-size:20px;font-weight:800;color:#fff;margin-bottom:9px;letter-spacing:-0.01em;}
.hw-desc{font-size:14.5px;color:rgba(255,255,255,0.6);line-height:1.7;}

/* ───── PROFILES ───── */
.prof-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:48px;}
.prof-card{
  display:flex;flex-direction:column;align-items:center;
  text-decoration:none;color:inherit;cursor:pointer;
  background:var(--glass-bg);
  backdrop-filter:var(--glass-blur-sm);
  border:1px solid var(--glass-border);
  border-radius:18px;padding:28px;text-align:center;
  transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.prof-card:hover{transform:translateY(-4px);box-shadow:0 24px 48px rgba(0,0,0,0.35);border-color:rgba(223,169,73,0.45);}
.prof-card,.prof-card:hover,.prof-card:focus{text-decoration:none;}
.prof-card .prof-role{margin-bottom:0;}
.prof-dept{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--gold-lt);margin-top:5px;}
.case-auth .case-ico{width:44px;height:44px;flex:0 0 44px;font-size:16px;}
.prof-photo{
  width:96px;height:96px;border-radius:50%;
  margin:0 auto 16px;overflow:hidden;
  border:3px solid rgba(223,169,73,0.5);
  box-shadow:0 12px 30px rgba(0,0,0,0.3);
}
.prof-photo img{width:100%;height:100%;object-fit:cover;}
.prof-name{font-size:15.5px;font-weight:800;color:#fff;margin-bottom:6px;letter-spacing:-0.01em;}
.prof-loc{font-size:11px;color:rgba(255,255,255,0.5);margin-bottom:10px;display:flex;align-items:center;justify-content:center;gap:5px;}
.prof-loc i{color:var(--gold);font-size:9px;}
.prof-tag{display:inline-block;font-size:11px;font-weight:800;padding:4px 12px;border-radius:20px;}
.prof-tag.med{background:rgba(223,169,73,0.15);border:1px solid rgba(223,169,73,0.35);color:var(--gold-lt);}
.prof-tag.dent{background:rgba(133,130,195,0.15);border:1px solid rgba(133,130,195,0.35);color:rgba(220,218,255,0.85);}
.prof-role{font-size:12.5px;color:rgba(255,255,255,0.72);margin-bottom:8px;line-height:1.35;min-height:34px;}
.prof-meta{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-bottom:12px;}
.prof-meta-pill{
  display:inline-flex;align-items:center;gap:5px;
  font-size:10.5px;font-weight:700;color:rgba(255,255,255,0.72);
  background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);
  padding:3px 9px;border-radius:30px;
}
.prof-meta-pill i{color:var(--gold);font-size:9px;}
.prof-empty{text-align:center;padding:36px 28px;max-width:680px;margin:32px auto 0;}
.prof-empty p{color:rgba(255,255,255,0.78);font-size:15px;line-height:1.55;}
.prof-empty a{color:var(--gold-lt);font-weight:700;}
/* Teammate-card credentials: specialty tag spacing, meta pills, capability line. */
.prof-card .prof-tag{margin:0 0 10px;}
.prof-card .prof-meta{margin-top:2px;}
.prof-cap{font-size:11.5px;color:rgba(255,255,255,0.6);line-height:1.45;margin-top:auto;padding-top:8px;min-height:33px;}
/* Per-card request affordance — the whole card is the link; this is its label. */
.prof-cta{
  display:inline-flex;align-items:center;gap:7px;margin-top:14px;
  font-size:12px;font-weight:800;color:var(--gold-lt);letter-spacing:.01em;
  transition:gap .2s ease,color .2s ease;
}
.prof-cta i{font-size:10px;transition:transform .2s ease;}
.prof-card:hover .prof-cta{color:#fff;}
.prof-card:hover .prof-cta i{transform:translateX(3px);}

/* Guarantee microcopy shown beneath hard CTAs site-wide. */
.cta-note{
  display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;
  flex-basis:100%;width:100%;
  font-size:12px;font-weight:600;color:rgba(255,255,255,0.6);
  margin-top:10px;line-height:1.4;
}
/* In the Three-Ways cards the note sits just above the bottom-pinned button,
   so it must size to its content (not grab column height via flex-basis:100%). */
.cta-stage .cta-note{flex:0 0 auto;margin-top:0;}
/* The hero is a left-aligned layout, so its note left-aligns under the buttons
   (the centered default is for the centered CTA blocks elsewhere). */
.hero .cta-note{justify-content:flex-start;text-align:left;margin-bottom:22px;}
.cta-note i{color:var(--gold);font-size:11px;}

/* Availability / urgency note (hero + above the final CTA ladder). */
.avail-note{
  display:flex;align-items:flex-start;gap:8px;
  font-size:13px;line-height:1.5;color:rgba(255,255,255,0.7);
  margin:16px 0 0;max-width:560px;
}
.avail-note i{color:var(--gold);margin-top:3px;flex:0 0 auto;}
.avail-note-center{margin-left:auto;margin-right:auto;justify-content:center;text-align:center;max-width:700px;}

/* Consolidated offer block — "Here's Exactly What You Get". */
.offer-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:960px;margin:36px auto 0;}
.offer-item{
  display:flex;gap:14px;align-items:flex-start;
  background:var(--glass-bg);border:1px solid var(--glass-border);
  border-radius:14px;padding:18px 20px;
}
.offer-item .ico-circle{flex:0 0 auto;}
.offer-item p{margin:0;font-size:14.5px;line-height:1.5;color:rgba(255,255,255,0.78);}
.offer-item strong{color:#fff;}
.offer-cta{text-align:center;margin-top:30px;}
.offer-cta-fine{font-size:13px;color:rgba(255,255,255,0.6);margin:12px 0 0;}

/* ───── CTA STAGES — three readiness-stage entry points ───── */
.cta-stages-section{max-width:1280px;margin:0 auto;}
.cta-stages-h{text-align:center;max-width:760px;margin:0 auto 36px;}
.cta-stages-h .sec-lbl{justify-content:center;display:inline-flex;}
.cta-stages-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:18px;
  max-width:1100px;margin:0 auto 46px;
}
/* Two-card variant (e.g. business page entry points). */
.cta-stages-grid.cta-stages-2{grid-template-columns:repeat(2,1fr);max-width:760px;}

/* Business page — role deep-dive grid (SEO long-form). */
.biz-deep{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:1100px;margin:36px auto 0;}
.biz-deep article{background:var(--glass-bg);backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:18px;padding:26px 26px 22px;text-align:left;}
.biz-deep h3{font-size:19px;font-weight:800;color:#fff;letter-spacing:-.01em;display:flex;align-items:center;gap:11px;margin:0 0 10px;line-height:1.3;}
.biz-deep h3 i{color:var(--gold);font-size:17px;flex:none;}
.biz-deep p{font-size:14.5px;line-height:1.62;color:rgba(255,255,255,.78);margin:0 0 13px;}
.biz-deep p:last-child{margin-bottom:0;}
.biz-deep ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:7px;}
.biz-deep li{font-size:12px;color:rgba(255,255,255,.74);background:rgba(255,255,255,.06);border:1px solid var(--glass-border);border-radius:999px;padding:5px 11px;}
@media (max-width:768px){.biz-deep{grid-template-columns:1fr;gap:14px;}}
/* Tablet: drop to a single full-width column. The 58px icon-circle on
   each card forces a minimum card width that overflows a 3-col grid
   below ~1024px, so collapse straight to 1-col rather than 2 + orphan. */
@media (max-width:1024px){
  .cta-stages-grid,
  .cta-stages-grid.cta-stages-2{grid-template-columns:1fr;max-width:520px;gap:14px;}
  .cta-stages-section{padding-left:32px;padding-right:32px;}
}
@media (max-width:768px){
  .cta-stages-grid{max-width:none;gap:12px;}
  .cta-stages-section{padding-left:18px;padding-right:18px;}
  .cta-stages-h .cta-h2{font-size:28px;}
  .cta-stage{padding:24px 22px;}
  .cta-stage h3{font-size:18px;}
  .cta-stage-lead{font-size:14px;}
}
.cta-stage{
  position:relative;
  background:rgba(255,255,255,0.06);
  backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);
  border-radius:18px;
  padding:30px 26px 26px;
  display:flex;flex-direction:column;gap:14px;
  transition:transform .25s ease, border-color .25s ease, background .25s ease;
}
.cta-stage:hover{transform:translateY(-4px);border-color:rgba(223,169,73,0.45);background:rgba(255,255,255,0.09);}
.cta-stage-tag{
  align-self:flex-start;
  font-size:10.5px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;
  background:rgba(223,169,73,0.14);
  border:1px solid rgba(223,169,73,0.4);
  color:var(--gold-lt);
  padding:4px 12px;border-radius:30px;
}
.cta-stage h3{font-size:20px;font-weight:800;color:#fff;letter-spacing:-0.01em;line-height:1.25;}
.cta-stage-lead{font-size:14.5px;color:rgba(255,255,255,0.78);line-height:1.55;}
/* Desktop: give the lead a consistent height so the check-lists start at the
   same vertical position across side-by-side cards. Below 1024px the cards
   stack one per row, so the floor is dropped to avoid dead space. */
@media (min-width:1025px){.cta-stage-lead{min-height:67px;}}
.cta-stage-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;flex:1;}
.cta-stage-list li{font-size:13.5px;line-height:1.55;color:rgba(255,255,255,0.72);padding-left:18px;position:relative;}
.cta-stage-list li::before{content:"\2713";position:absolute;left:0;color:var(--gold);font-weight:800;}
.btn-cta-stage{
  display:inline-flex;align-items:center;gap:8px;justify-content:center;
  background:var(--gold);color:var(--violet-deep);
  padding:13px 20px;border-radius:10px;
  font-size:14px;font-weight:800;text-decoration:none;
  border:1px solid var(--gold-dk);
  margin-top:auto;
  transition:transform .15s ease, box-shadow .15s ease;
}
.btn-cta-stage:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(0,0,0,0.35);}
.btn-cta-stage i{font-size:12px;color:var(--violet-deep);transition:transform .2s ease;}
.btn-cta-stage:hover i{transform:translateX(3px);}

/* High-intent (Strategy Call) gets a subtle accent ring */
.cta-stage-high{border-color:rgba(223,169,73,0.45);box-shadow:0 0 0 1px rgba(223,169,73,0.2);}
.cta-stage-high .cta-stage-tag{background:rgba(223,169,73,0.25);border-color:rgba(223,169,73,0.55);color:var(--gold-lt);}
.prof-view{text-align:center;margin-top:44px;}

/* ───── FAQ ───── */
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:48px;}
.faq-item{
  background:var(--glass-bg);
  backdrop-filter:var(--glass-blur-sm);
  border:1px solid var(--glass-border);
  border-radius:16px;padding:30px 32px;
  transition:border-color .25s ease, transform .25s ease;
}
.faq-item:hover{border-color:rgba(223,169,73,0.4);transform:translateY(-2px);}
.faq-q{font-size:18px;font-weight:800;color:#fff;margin-bottom:12px;letter-spacing:-0.01em;display:flex;align-items:center;gap:10px;}
.faq-q i{color:var(--gold);font-size:13px;}
.faq-a{font-size:14.5px;color:rgba(255,255,255,0.62);line-height:1.7;}


/* ───── CTA FORM ───── */
.cta-inner{
  max-width:720px;margin:0 auto;
  background:rgba(255,255,255,0.08);
  backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border-strong);
  border-radius:26px;padding:56px;
  box-shadow:0 40px 100px rgba(0,0,0,0.3);
}
.cta-h2{font-size:44px;font-weight:800;color:#fff;margin-bottom:14px;line-height:1.15;text-align:center;letter-spacing:-0.02em;}
.cta-sub{font-size:18px;color:rgba(255,255,255,0.62);margin-bottom:42px;font-weight:400;text-align:center;line-height:1.6;}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px;}
.cf-field{
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.2);
  border-radius:10px;padding:15px 18px;
  color:#fff;font-size:15px;width:100%;
  font-family:inherit;font-weight:600;
  outline:none;
  transition:border-color .2s ease, background .2s ease;
}
.cf-field::placeholder{color:rgba(255,255,255,0.45);font-weight:500;}
.cf-field:focus{border-color:rgba(223,169,73,0.6);background:rgba(255,255,255,0.12);}
select.cf-field option,
select.cf-field optgroup{color:#1a1535;background:#fff;}
select.cf-field optgroup{font-weight:700;color:#3919BA;}
select.cf-field option:checked{background:#3919BA;color:#fff;}
.cf-submit{
  background:var(--violet-dk);color:#fff;width:100%;
  padding:17px;border-radius:10px;
  font-size:16px;font-weight:700;border:none;cursor:pointer;text-decoration:none;
  font-family:inherit;margin-top:6px;letter-spacing:0.3px;
  transition:transform .2s ease, box-shadow .2s ease;
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
}
.cf-submit:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(57,25,186,0.55);}
.cf-note{font-size:12.5px;color:rgba(255,255,255,0.4);text-align:center;margin-top:14px;}

/* ── Entry-point modals (Three Ways to Start) ── */
.cta-stages-foot{max-width:680px;margin:36px auto 0;text-align:center;font-size:15px;color:rgba(255,255,255,0.6);line-height:1.6;}
.cta-stages-foot a{color:var(--gold-lt);text-decoration:none;border-bottom:1px solid rgba(245,228,184,0.4);}
.cta-stages-foot a:hover{color:#fff;}
.cta-modal{
  position:fixed;inset:0;z-index:1200;display:none;
  align-items:flex-start;justify-content:center;
  padding:max(24px,4vh) 20px 48px;overflow-y:auto;
}
.cta-modal:target{display:flex;}
.cta-modal-scrim{position:fixed;inset:0;background:rgba(8,5,24,0.74);backdrop-filter:blur(6px);}
.cta-modal-card{
  position:relative;z-index:1;width:100%;max-width:520px;margin:auto;
  background:linear-gradient(165deg,#241a52,#160f38);
  border:1px solid var(--glass-border-strong);
  border-radius:24px;padding:40px 40px 32px;
  box-shadow:0 40px 110px rgba(0,0,0,0.55);
  animation:ctaModalIn .32s cubic-bezier(.2,.8,.2,1) both;
}
.cta-modal-x{
  position:absolute;top:13px;right:18px;font-size:30px;line-height:1;font-weight:400;
  color:rgba(255,255,255,0.55);text-decoration:none;transition:color .2s ease;
}
.cta-modal-x:hover{color:#fff;}
.cta-modal-tag{
  display:inline-flex;align-items:center;gap:7px;
  font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:0.09em;
  color:var(--gold-lt);margin-bottom:14px;
}
.cta-modal-h{font-size:27px;font-weight:800;color:#fff;line-height:1.2;letter-spacing:-0.02em;margin:0 0 10px;}
.cta-modal-sub{font-size:15px;color:rgba(255,255,255,0.66);line-height:1.55;margin:0 0 24px;}
/* Large variant — hosts the embedded HubSpot meeting scheduler */
.cta-modal-card--lg{max-width:940px;padding:34px 34px 30px;}
.cta-book-embed{background:#fff;border-radius:16px;padding:8px;margin-top:6px;}
.cta-book-embed .meetings-iframe-container{min-height:640px;}
@keyframes ctaModalIn{from{opacity:0;transform:translateY(18px) scale(.97);}to{opacity:1;transform:none;}}
html.cta-locked,html.cta-locked body{overflow:hidden;}
html.cta-locked body{position:fixed;left:0;right:0;width:100%;}
@media (prefers-reduced-motion:reduce){.cta-modal-card{animation:none;}}
@media (max-width:768px){
  .cta-modal-card{padding:32px 22px 26px;border-radius:20px;}
  .cta-modal-card--lg{padding:30px 14px 22px;}
  .cta-book-embed .meetings-iframe-container{min-height:560px;}
  .cta-modal-h{font-size:23px;}
}

/* ───── FOOTER ───── */
.footer{
  background:rgba(10,7,30,0.88);
  backdrop-filter:var(--glass-blur);
  border-top:1px solid rgba(255,255,255,0.08);
  padding:72px 80px 32px;
}
.ft-grid{display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr;gap:60px;margin-bottom:56px;}
.ft-logo{
  display:inline-flex;align-items:center;
  margin-bottom:20px;
}
.ft-logo img{
  height:60px;width:auto;
  filter: brightness(0) invert(1);
  -webkit-filter: brightness(0) invert(1);
  opacity:.95;
}
.ft-about{font-size:14px;color:rgba(255,255,255,0.4);line-height:1.8;margin-bottom:22px;}
.ft-contact{font-size:13.5px;color:rgba(255,255,255,0.55);line-height:2;}
.ft-contact a{color:inherit;text-decoration:none;transition:color .2s ease;}
.ft-contact a:hover{color:#fff;}
.ft-contact i{color:var(--gold);margin-right:8px;width:14px;text-align:center;}
.ft-h{font-size:11.5px;font-weight:800;color:var(--gold);text-transform:uppercase;letter-spacing:1px;margin-bottom:18px;}
.ft-links{list-style:none;}
.ft-links li{margin-bottom:12px;}
.ft-links a{font-size:14px;color:rgba(255,255,255,0.45);text-decoration:none;transition:color .2s ease;}
.ft-links a:hover{color:#fff;}
/* Non-clickable service entries (mirrors the nav's non-link service spans). */
.ft-links .ft-disabled{font-size:14px;color:rgba(255,255,255,0.45);cursor:default;}
.ft-bottom{
  border-top:1px solid rgba(255,255,255,0.07);
  padding-top:26px;
  display:flex;align-items:center;justify-content:space-between;
}
.ft-copy{font-size:13px;color:rgba(255,255,255,0.28);}
.ft-copy a{color:rgba(255,255,255,0.55);text-decoration:none;transition:color .2s ease;}
.ft-copy a:hover{color:#fff;}
.ft-portal-link{
  color:var(--gold-lt) !important;font-weight:700;letter-spacing:.2px;
}
.ft-portal-link i{font-size:11px;color:var(--gold);margin-right:5px;}
.ft-seo{display:flex;gap:18px;flex-wrap:wrap;}
.ft-seo span{font-size:12px;color:rgba(255,255,255,0.18);}

.divider{height:1px;background:rgba(255,255,255,0.08);margin:0 80px;}

/* ───── SCROLL TO TOP BUTTON ───── */
.scroll-top{
  /* Stacked directly ABOVE the HubSpot chat launcher (same right edge + size). */
  position:fixed;bottom:96px;right:24px;z-index:200;
  width:60px;height:60px;border-radius:50%;
  background:rgba(20,15,55,0.65);
  backdrop-filter:var(--glass-blur);
  border:1px solid rgba(223,169,73,0.45);
  color:var(--gold);
  font-size:17px;
  display:inline-flex;align-items:center;justify-content:center;
  cursor:pointer;
  opacity:0;visibility:hidden;transform:translateY(12px);
  transition:opacity .3s ease, visibility .3s ease, transform .3s ease, background .25s ease, box-shadow .25s ease, border-color .25s ease;
  box-shadow:0 14px 34px rgba(0,0,0,0.42);
  font-family:inherit;
}
/* Shown (past the scroll threshold) at 50% opacity; fully opaque only while
   actively scrolling (JS adds .scrolling) or on hover/focus. */
.scroll-top.show{opacity:0.5;visibility:visible;transform:translateY(0);}
.scroll-top.show.scrolling,.scroll-top.show:hover,.scroll-top.show:focus-visible{opacity:1;}
.scroll-top:hover{
  background:rgba(223,169,73,0.25);
  border-color:rgba(223,169,73,0.7);
  transform:translateY(-3px);
  box-shadow:0 20px 44px rgba(0,0,0,0.5), 0 0 0 4px rgba(223,169,73,0.12);
}
.scroll-top i{transition:transform .25s ease;}
.scroll-top:hover i{transform:translateY(-2px);}

/* ───── NAV HAMBURGER TOGGLE (tablet + mobile) ───── */
.nav-toggle{
  display:none;
  width:42px;height:42px;border-radius:10px;
  background:rgba(255,255,255,0.08);
  border:1px solid var(--glass-border);
  color:#fff;cursor:pointer;
  align-items:center;justify-content:center;
  flex-direction:column;gap:5px;
  padding:0;
  transition:background .2s ease, border-color .2s ease;
  position:relative;z-index:202;
}
.nav-toggle:hover{background:rgba(255,255,255,0.14);border-color:rgba(223,169,73,0.45);}
.nav-toggle-bar{
  display:block;width:18px;height:2px;border-radius:2px;
  background:#fff;
  transition:transform .25s ease, opacity .2s ease;
}
.nav-toggle.on .nav-toggle-bar:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-toggle.on .nav-toggle-bar:nth-child(2){opacity:0;}
.nav-toggle.on .nav-toggle-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* ───── NAV MEGA DROPDOWN (Healthcare → Medical / Dental) ───── */
.nav-drop{position:relative;display:inline-flex;align-items:center;}
.nav-drop-trigger{
  display:inline-flex;align-items:center;gap:8px;
  font-size:14px;font-weight:700;color:rgba(255,255,255,0.82);
  text-decoration:none;cursor:pointer;
  padding:6px 0;
  transition:color .2s;
}
.nav-drop-trigger:hover,
.nav-drop:hover .nav-drop-trigger,
.nav-drop:focus-within .nav-drop-trigger{color:#fff;}
.nav-caret{
  font-size:10px;color:var(--gold);
  transition:transform .25s ease;
}
.nav-drop:hover .nav-caret,
.nav-drop:focus-within .nav-caret{transform:rotate(180deg);}

.nav-mega{
  position:absolute;top:100%;left:50%;transform:translate(-50%,-8px);
  margin-top:18px;
  width:760px;max-width:calc(100vw - 48px);
  background:
    radial-gradient(120% 100% at 0% 0%, rgba(57,25,186,0.35), transparent 55%),
    radial-gradient(120% 100% at 100% 0%, rgba(223,169,73,0.12), transparent 55%),
    rgba(16,12,42,0.98);
  backdrop-filter:var(--glass-blur);
  border:1px solid rgba(223,169,73,0.22);
  border-radius:20px;
  padding:20px;
  display:grid;grid-template-columns:1fr 1fr;gap:18px;
  box-shadow:0 40px 90px rgba(0,0,0,0.6), inset 0 1px 0 rgba(255,255,255,0.06);
  opacity:0;visibility:hidden;
  transition:opacity .22s ease, transform .22s ease, visibility .22s ease;
  z-index:300;
}
.nav-mega::before{
  content:"";position:absolute;top:-12px;left:0;right:0;height:20px;
}
/* Compact single-column variant for the About dropdown (4 company links). */
.nav-mega.nav-mega-sm{
  width:340px;
  grid-template-columns:1fr;
  padding:16px;
}
.nav-mega.nav-mega-sm .nav-mega-h{margin-bottom:6px;}
.nav-drop:hover .nav-mega,
.nav-drop:focus-within .nav-mega{opacity:1;visibility:visible;transform:translate(-50%,0);}

.nav-mega-col{display:flex;flex-direction:column;gap:3px;}
.nav-mega-col + .nav-mega-col{border-left:1px solid rgba(255,255,255,0.08);padding-left:18px;}
.nav-mega-h{
  display:flex;align-items:center;gap:10px;
  font-size:11px;font-weight:800;color:var(--gold-lt);
  text-transform:uppercase;letter-spacing:1.4px;
  padding:4px 8px 12px;
  border-bottom:1px solid rgba(255,255,255,0.08);
  margin-bottom:6px;
}
.nav-mega-h .ico-circle{width:28px;height:28px;border-radius:9px;font-size:13px;}
.nav-mega-link{
  display:flex;align-items:flex-start;gap:12px;
  padding:9px 12px;border-radius:11px;
  color:rgba(255,255,255,0.85);text-decoration:none;
  position:relative;
  transition:background .18s ease, color .18s ease, transform .18s ease;
}
.nav-mega-link i{
  color:var(--gold);font-size:14px;
  width:30px;height:30px;border-radius:9px;
  background:rgba(223,169,73,0.12);
  border:1px solid rgba(223,169,73,0.28);
  display:inline-flex;align-items:center;justify-content:center;
  flex:0 0 30px;margin-top:1px;
  transition:background .18s ease, border-color .18s ease, color .18s ease;
}
.nav-mega-link span{display:flex;flex-direction:column;gap:2px;}
.nav-mega-link strong{font-size:13px;font-weight:700;color:#fff;letter-spacing:.1px;line-height:1.2;}
.nav-mega-link em{font-style:normal;font-size:11px;color:rgba(255,255,255,0.52);font-weight:500;line-height:1.35;}
.nav-mega-link:hover{
  background:rgba(255,255,255,0.07);
  transform:translateX(2px);
}
.nav-mega-link:hover i{background:var(--gold);border-color:var(--gold);color:var(--violet-deep);}
.nav-mega-link:hover strong{color:var(--gold-lt);}

/* Full-width footer CTA spanning both columns */
.nav-mega-foot{
  grid-column:1 / -1;
  margin-top:4px;
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  background:linear-gradient(100deg, rgba(57,25,186,0.5) 0%, rgba(223,169,73,0.18) 100%);
  border:1px solid rgba(223,169,73,0.30);
  border-radius:14px;
  padding:14px 18px;
}
.nav-mega-foot-txt{display:flex;align-items:center;gap:12px;font-size:12.5px;color:rgba(255,255,255,0.82);line-height:1.45;}
.nav-mega-foot-txt > i{color:var(--gold);font-size:18px;flex:0 0 auto;}
.nav-mega-foot-txt strong{color:#fff;font-weight:800;}
.nav-mega-foot-txt em{font-style:normal;color:var(--gold-lt);font-weight:700;}
.nav-mega-foot-btn{
  flex:0 0 auto;
  display:inline-flex;align-items:center;gap:8px;
  background:var(--gold);color:var(--violet-deep);
  font-size:12.5px;font-weight:800;text-decoration:none;
  padding:11px 18px;border-radius:9px;white-space:nowrap;
  border:1px solid var(--gold-dk);
  transition:transform .18s ease, box-shadow .18s ease;
}
.nav-mega-foot-btn:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(0,0,0,0.4);}
.nav-mega-foot-btn i{color:var(--violet-deep);font-size:11px;transition:transform .2s ease;}
.nav-mega-foot-btn:hover i{transform:translateX(3px);}

/* ───── HERO SOFT-LINK (tertiary text CTA) ───── */
.btn-soft-link{
  display:inline-flex;align-items:center;gap:8px;
  font-size:15.5px;font-weight:700;color:rgba(255,255,255,0.72);
  text-decoration:none;letter-spacing:.1px;
  padding:8px 4px;border-bottom:1px dashed rgba(255,255,255,0.28);
  transition:color .2s ease, border-color .2s ease, transform .2s ease;
  width:100%;margin-top:4px;
}
.btn-soft-link i{font-size:11px;color:var(--gold);transition:transform .2s ease;}
.btn-soft-link:hover{color:#fff;border-color:var(--gold);}
.btn-soft-link:hover i{transform:translateX(3px);}

/* ───── CALCULATOR PRICE BAND ───── */
.calc-rate-band{
  margin-top:22px;
  background:linear-gradient(135deg, rgba(20,15,55,0.55), rgba(57,25,186,0.18));
  border:1px solid rgba(223,169,73,0.32);
  border-radius:18px;
  padding:22px 24px;
}
.calc-rate-h{
  font-size:11.5px;font-weight:800;color:var(--gold-lt);
  text-transform:uppercase;letter-spacing:1.3px;
  display:flex;align-items:center;gap:10px;
  margin-bottom:16px;
}
.calc-rate-h i{color:var(--gold);}
.calc-rate-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.calc-rate-tier{
  padding:18px 18px;
  background:rgba(255,255,255,0.05);
  border:1px solid var(--glass-border);
  border-radius:12px;
}
.calc-rate-tier.specialist{
  background:rgba(223,169,73,0.10);
  border-color:rgba(223,169,73,0.35);
}
.calc-rate-tier-name{
  font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;
  color:rgba(255,255,255,0.65);margin-bottom:6px;
}
.calc-rate-tier-amt{
  font-size:30px;font-weight:800;color:#fff;letter-spacing:-0.02em;line-height:1;
  font-variant-numeric:tabular-nums;
}
.calc-rate-tier-amt span{font-size:14px;font-weight:600;color:rgba(255,255,255,0.55);margin-left:4px;}
.calc-rate-tier-sub{font-size:12px;color:rgba(255,255,255,0.65);margin-top:8px;font-weight:600;}
.calc-rate-foot{
  margin-top:14px;
  font-size:12px;font-style:italic;color:rgba(255,255,255,0.55);
  text-align:center;
}

/* ───── CALCULATOR DUAL CTA BUTTONS ───── */
.calc-cta-btns{display:flex;flex-direction:column;gap:8px;align-items:flex-end;}
.calc-cta-primary,
.calc-cta-secondary{
  display:inline-flex;align-items:center;gap:8px;
  padding:13px 22px;border-radius:10px;
  font-size:14px;font-weight:800;text-decoration:none;
  white-space:nowrap;
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
}
.calc-cta-primary{
  background:#fff;color:var(--violet-deep);
  box-shadow:0 8px 22px rgba(0,0,0,0.25);
}
.calc-cta-primary i{color:var(--violet-deep);}
.calc-cta-primary:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,0,0,0.35);}
.calc-cta-secondary{
  background:rgba(255,255,255,0.10);color:#fff;
  border:1px solid var(--glass-border-strong);
}
.calc-cta-secondary i{color:var(--gold);}
.calc-cta-secondary:hover{background:rgba(255,255,255,0.16);border-color:var(--gold);}

/* ───── CALCULATOR REACH-OUT (inline contact-capture CTA) ───── */
.calc-reachout{
  margin-top:14px;
  background:rgba(255,255,255,0.05);
  border:1px solid var(--glass-border);
  border-radius:14px;
  padding:18px 20px;
}
.calc-reachout-h{
  font-size:12.5px;font-weight:800;color:var(--gold-lt);
  text-transform:uppercase;letter-spacing:1.2px;
  display:flex;align-items:center;gap:10px;
  margin-bottom:12px;
}
.calc-reachout-h i{color:var(--gold);}
.calc-reachout-row{display:grid;grid-template-columns:1.4fr 1fr auto;gap:10px;align-items:center;}
.calc-reachout-field{
  background:rgba(255,255,255,0.08);
  border:1px solid var(--glass-border);
  border-radius:8px;
  padding:11px 14px;
  font-size:14px;color:#fff;
  font-family:inherit;width:100%;
}
.calc-reachout-field:focus{outline:none;border-color:var(--gold);background:rgba(255,255,255,0.12);}
.calc-reachout-field::placeholder{color:rgba(255,255,255,0.45);}
.calc-reachout-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  background:var(--gold);color:var(--violet-deep);
  border:1px solid var(--gold-dk);
  border-radius:8px;
  padding:11px 18px;
  font-size:13.5px;font-weight:800;
  cursor:pointer;white-space:nowrap;
  transition:transform .15s ease, box-shadow .15s ease;
}
.calc-reachout-btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(0,0,0,0.35);}
.calc-reachout-btn:disabled{opacity:.7;cursor:default;transform:none;box-shadow:none;}
.calc-reachout-btn i{font-size:11px;color:var(--violet-deep);}
.calc-reachout-foot{margin-top:10px;font-size:12px;font-style:italic;color:rgba(255,255,255,0.55);}
/* In the narrower left controls column: email+phone share a row, button full-width below */
.calc-controls .calc-reachout-row{grid-template-columns:1fr 1fr;}
.calc-controls .calc-reachout-btn{grid-column:1 / -1;width:100%;}

/* ───── GUARANTEE SECTION ───── */
.guarantee{padding:58px 80px;position:relative;overflow:hidden;}
.guarantee::before{
  content:"";position:absolute;inset:0;z-index:0;
  background:
    radial-gradient(700px 500px at 12% 50%, rgba(223,169,73,0.16), transparent 65%),
    radial-gradient(800px 600px at 90% 50%, rgba(57,25,186,0.20), transparent 70%);
  pointer-events:none;
}
.g-wrap{
  position:relative;z-index:1;
  display:grid;grid-template-columns:1fr;gap:40px;align-items:center;
  max-width:1040px;margin:0 auto;
  background:rgba(20,15,55,0.48);
  backdrop-filter:var(--glass-blur);
  border:1px solid rgba(223,169,73,0.30);
  border-radius:22px;
  padding:34px 40px;
  box-shadow:0 28px 64px -22px rgba(0,0,0,0.45), inset 0 1px 0 rgba(255,255,255,0.06);
}
.g-seal{display:flex;justify-content:center;}
.g-seal-ring{
  position:relative;
  width:160px;height:160px;border-radius:50%;
  background:
    radial-gradient(circle at 30% 30%, rgba(245,228,184,0.35), transparent 60%),
    conic-gradient(from 0deg, var(--gold) 0deg, var(--gold-lt) 90deg, var(--gold) 180deg, var(--gold-lt) 270deg, var(--gold) 360deg);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  color:var(--dark);
  box-shadow:0 22px 46px -10px rgba(223,169,73,0.40), inset 0 0 0 3px rgba(255,255,255,0.35);
  animation:spinSlow 28s linear infinite;
}
.g-seal-ring::before{
  content:"";position:absolute;inset:11px;border-radius:50%;
  background:linear-gradient(135deg, #f5e4b8 0%, #dfa949 60%, #b8882e 100%);
  z-index:0;
  animation:spinSlow 30s linear infinite reverse;
}
/* Shield struck in the same gold as the coin: a deep-gold fill lifted off the
   face with a light top highlight + dark lower shadow so it reads as embossed metal. */
.g-seal-ico{position:relative;z-index:1;font-size:38px;line-height:1;margin-bottom:5px;
  color:#7a5712;
  filter:drop-shadow(0 1px 0 rgba(255,248,230,0.6)) drop-shadow(0 -1.5px 2px rgba(58,38,6,0.5));}
.g-seal-h,.g-seal-s{position:relative;z-index:1;text-align:center;}
.g-seal-h{font-size:24px;font-weight:800;letter-spacing:-0.02em;line-height:1;margin-bottom:5px;}
.g-seal-s{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1.3px;line-height:1.25;}

.g-copy .sec-lbl{margin-bottom:8px;}
.g-copy .sec-h2{font-size:31px;margin-bottom:16px;}
.g-copy .sec-sub{margin-bottom:22px;}
.g-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:0;}
.g-card{
  background:rgba(255,255,255,0.05);
  border:1px solid var(--glass-border);
  border-radius:12px;
  padding:17px 16px;
  transition:transform .25s ease, border-color .25s ease, background .25s ease;
}
.g-card:hover{transform:translateY(-3px);border-color:rgba(223,169,73,0.45);background:rgba(255,255,255,0.07);}
.g-card .ico-circle{margin-bottom:10px;}
.g-card h3{font-size:15px;font-weight:700;color:#fff;margin-bottom:6px;}
.g-card p{font-size:12.5px;line-height:1.5;color:rgba(255,255,255,0.7);}
.g-foot{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:20px;}

/* ───── SECURITY & COMPLIANCE CARDS ───── */
.comp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:46px;}
.comp-card{
  background:var(--glass-bg);
  border:1px solid var(--glass-border);
  border-radius:16px;
  padding:26px 24px;
  display:flex;flex-direction:column;
  transition:transform .25s ease, border-color .25s ease, background .25s ease;
}
.comp-card:hover{transform:translateY(-4px);border-color:rgba(223,169,73,0.45);background:rgba(255,255,255,0.07);}
.comp-card .ico-circle{margin-bottom:16px;}
.comp-card h3{font-size:18px;font-weight:800;color:#fff;margin-bottom:12px;letter-spacing:-0.01em;}
.comp-card p{font-size:13.5px;line-height:1.6;color:rgba(255,255,255,0.72);margin:0 0 10px;}
.comp-card p:last-child{margin-bottom:0;}
.comp-card .comp-means{color:rgba(255,255,255,0.82);}
.comp-card strong{color:var(--gold);font-weight:800;}

/* ───── LEGAL PAGES (terms / privacy) ───── */
.legal{max-width:880px;margin:0 auto;padding:64px 80px 48px;}
.legal-head{margin-bottom:36px;padding-bottom:24px;border-bottom:1px solid var(--glass-border);}
.legal-head .sec-lbl{margin-bottom:14px;}
.legal-head h1{font-size:44px;font-weight:800;color:#fff;letter-spacing:-0.02em;line-height:1.1;margin:0 0 12px;}
.legal-updated{font-size:13px;color:rgba(255,255,255,0.55);font-weight:700;text-transform:uppercase;letter-spacing:1px;}
.legal-intro{font-size:17.5px;line-height:1.7;color:rgba(255,255,255,0.88);}
.legal h2{font-size:23px;font-weight:800;color:#fff;margin:38px 0 12px;letter-spacing:-0.01em;}
.legal h3{font-size:17px;font-weight:700;color:#fff;margin:24px 0 8px;}
.legal p,.legal li{font-size:15.5px;line-height:1.75;color:rgba(255,255,255,0.78);}
.legal p{margin:0 0 16px;}
.legal ul{margin:0 0 18px;padding-left:22px;}
.legal li{margin-bottom:8px;}
.legal a{color:var(--gold);text-decoration:underline;}
.legal strong{color:#fff;font-weight:700;}
@media(max-width:768px){
  .legal{padding:40px 22px 32px;}
  .legal-head h1{font-size:30px;}
  .legal h2{font-size:19px;}
}

/* ───── CASE STUDY CARDS ───── */
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:42px;}
.case-grid-4{grid-template-columns:repeat(4,1fr);gap:18px;}
.case-card{
  background:rgba(255,255,255,0.07);
  backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);
  border-radius:18px;
  padding:24px 22px 22px;
  display:flex;flex-direction:column;gap:16px;
  transition:transform .3s ease, border-color .3s ease, background .3s ease;
}
.case-card:hover{transform:translateY(-4px);border-color:rgba(223,169,73,0.45);background:rgba(255,255,255,0.09);}

.case-metric{
  background:linear-gradient(135deg, rgba(57,25,186,0.45), rgba(223,169,73,0.18));
  border:1px solid rgba(223,169,73,0.32);
  border-radius:14px;
  padding:18px 18px 14px;
  /* Uniform height across all four cards, with room for a two-line foot note. */
  min-height:188px;display:flex;flex-direction:column;
}
/* Foot sits flush to the bottom so all metric boxes line up at a fixed height. */
.case-metric .case-metric-foot{margin-top:auto;}
.case-metric-h{
  font-size:11px;font-weight:800;color:var(--gold-lt);
  text-transform:uppercase;letter-spacing:1.3px;margin-bottom:12px;
}
.case-metric-row{display:flex;align-items:center;gap:14px;margin-bottom:10px;}
.case-metric-before,
.case-metric-after{display:flex;flex-direction:column;gap:4px;flex:1;}
.case-metric-after{align-items:center;text-align:center;}
.case-metric-before .lbl,
.case-metric-after .lbl{
  font-size:10.5px;font-weight:700;color:rgba(255,255,255,0.6);
  text-transform:uppercase;letter-spacing:1px;
}
.case-metric-before .val{font-size:26px;font-weight:800;color:rgba(255,255,255,0.55);line-height:1;letter-spacing:-0.02em;}
.case-metric-after .val{font-size:42px;font-weight:800;color:var(--gold);line-height:1;letter-spacing:-0.02em;}
.case-metric-badge{
  display:inline-block;vertical-align:middle;margin-left:8px;
  font-size:10.5px;font-weight:800;letter-spacing:.4px;
  color:#bcf0d2;background:rgba(78,196,126,0.18);border:1px solid rgba(78,196,126,0.45);
  padding:2px 8px;border-radius:20px;text-transform:none;
}
.case-metric-arrow{
  width:30px;height:30px;border-radius:50%;
  background:rgba(255,255,255,0.10);
  border:1px solid rgba(255,255,255,0.20);
  display:inline-flex;align-items:center;justify-content:center;
  flex:0 0 30px;
}
.case-metric-arrow i{font-size:12px;color:var(--gold);}
.case-metric-foot{
  font-size:12.5px;color:rgba(255,255,255,0.78);font-weight:600;
  border-top:1px solid rgba(255,255,255,0.08);
  padding-top:10px;line-height:1.4;
  /* Reserve two lines so the foot/divider aligns across all cards even when one
     card's note runs longer than the others. */
  min-height:46px;
}
.case-metric-foot strong{color:#fff;font-weight:800;}

.case-q{
  font-size:14.5px;line-height:1.6;color:rgba(255,255,255,0.82);
  font-weight:500;
  flex:1;
}
.case-q strong{color:var(--gold-lt);font-weight:800;}
.case-auth{display:flex;align-items:center;gap:14px;border-top:1px solid rgba(255,255,255,0.08);padding-top:18px;}
.case-photo{
  width:54px;height:54px;border-radius:50%;overflow:hidden;flex:0 0 54px;
  border:2px solid rgba(223,169,73,0.45);
}
.case-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.case-photo-icon{
  display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg, rgba(57,25,186,0.5), rgba(223,169,73,0.25));
  color:var(--gold-lt);font-size:22px;
}
/* Client logo chip — white tile so any-color logos read cleanly */
.case-logo{
  flex:0 0 auto;width:96px;height:54px;border-radius:10px;
  background:#fff;border:1px solid rgba(255,255,255,0.5);
  display:flex;align-items:center;justify-content:center;
  padding:7px 9px;overflow:hidden;
}
.case-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block;}
/* Fallback when a logo file isn't present yet — show the client name. */
.case-logo.is-missing{
  background:linear-gradient(135deg, rgba(57,25,186,0.5), rgba(223,169,73,0.25));
  border-color:rgba(223,169,73,0.4);
}
.case-logo.is-missing::after{
  content:attr(data-label);
  font-size:10px;font-weight:800;line-height:1.15;color:#fff;text-align:center;
  letter-spacing:.2px;
}
.case-name{font-size:14.5px;font-weight:700;color:#fff;letter-spacing:-0.01em;}
.case-role{font-size:12px;color:rgba(255,255,255,0.62);margin-top:2px;display:flex;align-items:center;gap:5px;}
.case-role i{color:var(--gold);font-size:10px;}
.case-svc{font-size:11.5px;color:var(--gold-lt);margin-top:4px;display:flex;align-items:center;gap:5px;font-weight:700;}
.case-svc i{font-size:10px;}

/* ───── DIFFERENTIATOR CARDS (Why VT) ───── */
.diff{padding:100px 80px;}
.diff-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:48px;}
.diff-card{
  position:relative;
  background:rgba(255,255,255,0.06);
  backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);
  border-radius:20px;
  padding:34px 28px 28px;
  display:flex;flex-direction:column;gap:14px;
  transition:transform .3s ease, border-color .3s ease, background .3s ease;
  overflow:hidden;
}
.diff-card::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 100% 0%, rgba(223,169,73,0.10), transparent 50%);
  pointer-events:none;opacity:.7;
}
.diff-card:hover{transform:translateY(-5px);border-color:rgba(223,169,73,0.45);background:rgba(255,255,255,0.09);}
.diff-num{
  position:absolute;top:18px;right:22px;
  font-size:48px;font-weight:800;
  color:rgba(255,255,255,0.06);
  letter-spacing:-0.04em;line-height:1;
}
.diff-ico{position:relative;z-index:1;margin-bottom:6px;}
.diff-title{
  position:relative;z-index:1;
  font-size:20px;font-weight:800;color:#fff;line-height:1.25;letter-spacing:-0.01em;
}
.diff-title em{color:var(--gold);font-style:normal;}
.diff-desc{
  position:relative;z-index:1;
  font-size:14.5px;line-height:1.65;color:rgba(255,255,255,0.74);
}
.diff-desc strong{color:#fff;font-weight:700;}

.diff-vs{
  margin-top:auto;
  border-top:1px solid rgba(255,255,255,0.08);
  padding-top:16px;
  display:flex;flex-direction:column;gap:8px;
  position:relative;z-index:1;
}
.diff-vs-row{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:12.5px;}
.diff-vs-them,.diff-vs-us{
  font-weight:800;text-transform:uppercase;letter-spacing:1.1px;font-size:10.5px;
  padding:4px 10px;border-radius:6px;
}
.diff-vs-them{background:rgba(255,255,255,0.06);color:rgba(255,255,255,0.55);}
.diff-vs-us{background:rgba(223,169,73,0.18);color:var(--gold-lt);border:1px solid rgba(223,169,73,0.4);}
.diff-vs-val{font-weight:600;text-align:right;line-height:1.3;}
.diff-vs-val.them{color:rgba(255,255,255,0.55);}
.diff-vs-val.us{color:#fff;}

/* ───── CTA INTENT TABS ───── */
.cta-intents{
  display:grid;grid-template-columns:repeat(4,1fr);gap:10px;
  margin-bottom:30px;
}
.cta-intent{
  background:rgba(255,255,255,0.04);
  border:1px solid var(--glass-border);
  border-radius:14px;
  padding:18px 18px 16px;
  text-align:left;cursor:pointer;
  color:#fff;font-family:inherit;
  display:flex;flex-direction:column;gap:6px;
  transition:background .2s ease, border-color .2s ease, transform .2s ease;
}
.cta-intent:hover{background:rgba(255,255,255,0.08);border-color:rgba(223,169,73,0.35);transform:translateY(-2px);}
.cta-intent.on{
  background:linear-gradient(135deg, rgba(223,169,73,0.22), rgba(57,25,186,0.30));
  border-color:rgba(223,169,73,0.55);
  box-shadow:0 0 0 1px rgba(223,169,73,0.25);
}
.cta-intent i{color:var(--gold);font-size:18px;margin-bottom:4px;}
.cta-intent strong{font-size:13.5px;font-weight:800;color:#fff;letter-spacing:-0.01em;}
.cta-intent span{font-size:12px;color:rgba(255,255,255,0.62);line-height:1.4;font-weight:500;}
.cta-intent.on span{color:rgba(255,255,255,0.78);}

/* ───── SERVICE PAGES (/services/<slug>/) ───── */
.svc-hero{
  position:relative;overflow:hidden;
  padding:80px 80px 90px;
  display:grid;grid-template-columns:1fr 560px;gap:60px;align-items:center;
}
.svc-hero .orb{position:absolute;border-radius:50%;filter:blur(100px);pointer-events:none;z-index:1;}
.svc-hero .orb1{width:560px;height:560px;background:rgba(223,169,73,0.18);top:-160px;right:-80px;animation:floatOrb 14s ease-in-out infinite;}
.svc-hero .orb2{width:420px;height:420px;background:rgba(57,25,186,0.32);bottom:-120px;left:5%;animation:floatOrb2 16s ease-in-out infinite;}
.svc-hero-inner{position:relative;z-index:2;}

.svc-bc{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  font-size:12.5px;color:rgba(255,255,255,0.55);font-weight:600;
  margin-bottom:22px;
}
.svc-bc a{color:rgba(255,255,255,0.65);text-decoration:none;}
.svc-bc a:hover{color:var(--gold-lt);}
.svc-bc i{font-size:9px;color:rgba(255,255,255,0.35);}
.svc-bc span[aria-current]{color:var(--gold-lt);}

.svc-eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  background:rgba(223,169,73,0.14);
  border:1px solid rgba(223,169,73,0.35);
  padding:7px 18px;border-radius:30px;
  font-size:11.5px;font-weight:800;
  color:var(--gold-lt);
  text-transform:uppercase;letter-spacing:1.1px;
  margin-bottom:22px;
}
.svc-eyebrow i{color:var(--gold);}

.svc-h1{
  font-size:62px;line-height:1.06;font-weight:800;
  color:#fff;letter-spacing:-0.02em;
  margin-bottom:22px;
}
.svc-h1 em{
  color:transparent;
  background:linear-gradient(120deg, #dfa949 0%, #f5e4b8 40%, #dfa949 60%, #f5e4b8 100%);
  background-size:200% 100%;
  -webkit-background-clip:text;background-clip:text;
  font-style:normal;font-weight:800;
  animation:shimmer 6s linear infinite;
}
.svc-lead{
  font-size:18.5px;color:rgba(255,255,255,0.78);
  line-height:1.6;max-width:620px;font-weight:400;
  margin-bottom:30px;
}
.svc-lead strong{color:#fff;font-weight:700;}
.svc-trust{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:30px;}
.svc-trust .trust-item{font-size:13px;}

.svc-cta-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center;}
.svc-cta-row .btn-mini-note{font-size:12.5px;color:rgba(255,255,255,0.55);font-weight:600;}
/* The hero CTA block is left-aligned, so the guarantee note + mini-note must
   break to their own lines and left-align under the buttons (the .cta-note
   default is centered, for the centered CTA blocks elsewhere). */
.svc-cta-row .btn-mini-note{flex-basis:100%;width:100%;}
.svc-cta-row .cta-note{justify-content:flex-start;text-align:left;}

/* about/contact-style heroes had no desktop layout: the two buttons fell to the
   inline default (cramped, ~4px apart) and the note centered. Give them the
   same left-aligned, properly-gapped row as the service pages. The mini-note is
   a sibling just below the button row, so left-align it there too. The extra
   margin-top lifts the gap above the buttons to 30px so it matches the service
   pages (which clear 30px via the .svc-trust row these pages don't have). */
.svc-hero-ctas{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:12px;}
.svc-hero-ctas .cta-note{justify-content:flex-start;text-align:left;}
.svc-hero-ctas + .btn-mini-note{display:block;margin-top:12px;}

.svc-hero-vis{position:relative;z-index:2;}
.svc-hero-vis .hv-card{
  position:relative;width:100%;aspect-ratio:4/5;max-height:580px;
  border-radius:24px;overflow:hidden;
  box-shadow:0 40px 100px rgba(0,0,0,0.5);
  border:1px solid rgba(255,255,255,0.16);
}
.svc-hero-vis .hv-card img{width:100%;height:100%;object-fit:cover;display:block;}
.svc-hero-vis .hv-chip{
  position:absolute;
  display:inline-flex;align-items:center;gap:10px;
  background:rgba(20,15,55,0.9);
  backdrop-filter:var(--glass-blur);
  border:1px solid rgba(223,169,73,0.4);
  padding:12px 18px;border-radius:30px;
  font-size:13px;font-weight:700;color:#fff;
  box-shadow:0 18px 40px rgba(0,0,0,0.4);
  z-index:3;
}
.svc-hero-vis .hv-chip i{color:var(--gold);font-size:14px;}
.svc-hero-vis .hv-chip.c1{top:30px;left:-26px;}
.svc-hero-vis .hv-chip.c2{bottom:60px;right:-30px;}

/* Quick stat bar under hero */
.svc-stats{
  display:grid;grid-template-columns:repeat(4,1fr);
  background:linear-gradient(180deg,rgba(255,255,255,0.075),rgba(255,255,255,0.04));
  backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);
  border-radius:18px;
  margin:0 80px;
  overflow:hidden;
}
.svc-stat{padding:28px 22px;text-align:center;border-right:1px solid rgba(255,255,255,0.08);position:relative;transition:background .25s ease;}
.svc-stat::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:0;height:3px;
  background:var(--gold);border-radius:0 0 3px 3px;transition:width .3s ease;}
.svc-stat:hover{background:rgba(223,169,73,0.06);}
.svc-stat:hover::before{width:44px;}
.svc-stat:last-child{border-right:none;}
.svc-stat-num{font-size:40px;font-weight:800;color:var(--gold);line-height:1;letter-spacing:-0.02em;}
.svc-stat-lbl{font-size:12px;color:rgba(255,255,255,0.62);margin-top:10px;text-transform:uppercase;letter-spacing:.8px;font-weight:700;}

/* Two-column "What does this VA do" + benefits */
.svc-split{
  display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:start;
  padding:90px 80px;
}
.svc-split.reverse{grid-template-columns:1fr 1.05fr;}
/* Pull the image into the first column so stacked splits zigzag (text/image,
   image/text) instead of repeating image-right. Reset on mobile (single column)
   so every section stays text-first. */
.svc-split.reverse .svc-side-img{order:-1;}
.svc-split .svc-side-img{
  border-radius:22px;overflow:hidden;
  border:1px solid rgba(255,255,255,0.12);
  box-shadow:0 30px 70px rgba(0,0,0,0.4);
  aspect-ratio:5/4;
}
.svc-split .svc-side-img img{width:100%;height:100%;object-fit:cover;display:block;}
/* A standalone CTA at the end of a split text column (e.g. "Let's Connect with
   Chris") isn't in a flex button row, so it needs its own top margin to clear
   the prose / checklist above it. inline-flex keeps it sized to its label. */
.svc-split .btn-primary,
.svc-split .btn-glass,
.svc-split .btn-gold{display:inline-flex;margin-top:28px;}

.svc-h2{
  font-size:42px;line-height:1.1;font-weight:800;color:#fff;
  letter-spacing:-0.02em;margin-bottom:18px;
}
.svc-h2 em{color:var(--gold);font-style:normal;}
.svc-p{font-size:16px;line-height:1.7;color:rgba(255,255,255,0.74);margin-bottom:18px;}

.svc-checks{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:12px;}
.svc-checks li{
  display:flex;align-items:flex-start;gap:14px;
  font-size:15px;line-height:1.55;color:rgba(255,255,255,0.86);
}
.svc-checks li i{
  flex:0 0 22px;width:22px;height:22px;border-radius:6px;
  background:rgba(223,169,73,0.16);
  border:1px solid rgba(223,169,73,0.4);
  color:var(--gold);font-size:11px;
  display:inline-flex;align-items:center;justify-content:center;
  margin-top:3px;
}
.svc-checks li strong{color:#fff;font-weight:700;}

/* Benefit / value cards grid */
.svc-bens{
  padding:90px 80px;
}
.svc-bens-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px;
}
.svc-bens-grid--4{grid-template-columns:repeat(4,1fr);}
/* Circular leadership headshot (About page) — sits where the icon-circle would. */
.about-team-photo{
  width:88px;height:88px;border-radius:50%;object-fit:cover;display:block;
  margin-bottom:18px;border:2px solid rgba(223,169,73,0.45);
  box-shadow:0 8px 22px rgba(0,0,0,0.35);background:#1a1535;
}
.svc-ben{
  background:linear-gradient(160deg,rgba(255,255,255,0.06),rgba(255,255,255,0.035));
  backdrop-filter:var(--glass-blur-sm);
  border:1px solid var(--glass-border);
  border-radius:20px;
  padding:30px 26px;
  transition:transform .28s ease, border-color .28s ease, box-shadow .28s ease, background .28s ease;
}
.svc-ben:hover{transform:translateY(-5px);border-color:rgba(223,169,73,0.5);
  background:linear-gradient(160deg,rgba(223,169,73,0.10),rgba(255,255,255,0.04));
  box-shadow:0 22px 55px -26px rgba(223,169,73,0.45);}
.svc-ben .ico-circle{margin-bottom:18px;}
.svc-ben h3{font-size:19px;font-weight:700;color:#fff;margin-bottom:10px;}
.svc-ben p{font-size:14.5px;line-height:1.6;color:rgba(255,255,255,0.7);}

/* Tools / software the VA knows */
.svc-tools{
  padding:60px 80px 90px;
}
.svc-tools-wrap{
  background:rgba(0,0,0,0.22);
  border:1px solid var(--glass-border);
  border-radius:22px;
  padding:46px 40px;
  display:grid;grid-template-columns:1fr 1.4fr;gap:40px;align-items:center;
}
.svc-tools-chips{display:flex;flex-wrap:wrap;gap:10px;}
.svc-tool-chip{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(255,255,255,0.07);
  border:1px solid var(--glass-border);
  border-radius:30px;
  padding:9px 16px;
  font-size:13.5px;font-weight:600;color:#fff;
  transition:border-color .2s ease, background .2s ease, transform .2s ease;
}
.svc-tool-chip:hover{border-color:rgba(223,169,73,0.5);background:rgba(223,169,73,0.09);transform:translateY(-2px);}
.svc-tool-chip i{color:var(--gold);font-size:13px;}

/* Mini 3-step process inside service page */
.svc-proc{padding:60px 80px 90px;}

/* Final CTA + related services */
.svc-cta{
  margin:0 80px 100px;
  padding:60px 60px;
  background:linear-gradient(135deg, rgba(57,25,186,0.5) 0%, rgba(20,15,55,0.6) 60%, rgba(223,169,73,0.22) 100%);
  border:1px solid rgba(223,169,73,0.28);
  border-radius:26px;
  text-align:center;
}
.svc-cta h2{font-size:38px;font-weight:800;color:#fff;margin-bottom:14px;letter-spacing:-0.02em;}
.svc-cta p{font-size:16.5px;color:rgba(255,255,255,0.78);max-width:600px;margin:0 auto 26px;}
.svc-cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}

.svc-related{padding:0 80px 110px;}
.svc-related-h{
  font-size:13px;font-weight:800;color:var(--gold-lt);
  text-transform:uppercase;letter-spacing:1.4px;
  margin-bottom:18px;text-align:center;
}
.svc-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.svc-related-card{
  background:rgba(255,255,255,0.05);
  border:1px solid var(--glass-border);
  border-radius:16px;padding:24px;
  text-decoration:none;color:#fff;
  display:flex;align-items:center;gap:14px;
  transition:transform .25s ease, border-color .25s ease, background .25s ease;
}
.svc-related-card:hover{transform:translateY(-3px);border-color:rgba(223,169,73,0.5);background:rgba(255,255,255,0.08);}
.svc-related-card .ico-circle{flex:0 0 42px;}
.svc-related-card-t{font-size:15px;font-weight:700;line-height:1.3;}
.svc-related-card-s{font-size:12.5px;color:rgba(255,255,255,0.6);margin-top:2px;}

/* ───── RESPONSIVE: TABLET / SMALL LAPTOP (≤1280px) ───── */
@media (max-width:1280px){
  .topbar{font-size:13px;padding:10px 18px;}

  .nav{padding:0 32px;height:76px;}
  .logo img{height:46px;}

  /* Hamburger takes over at tablet & mobile.
     margin-left:auto on nav-right pushes book button + hamburger flush right. */
  .nav-toggle{display:inline-flex;order:3;margin-left:12px;}
  .nav-right{order:2;margin-left:auto;}

  /* nav-links becomes a slide-down drawer */
  .nav-links{
    position:absolute;top:100%;left:0;right:0;
    flex-direction:column;align-items:stretch;gap:0;
    padding:18px 22px 26px;
    background:rgb(18,13,48);
    backdrop-filter:var(--glass-blur);
    border-top:1px solid var(--glass-border);
    border-bottom:1px solid var(--glass-border);
    box-shadow:0 40px 80px rgba(0,0,0,0.5);
    max-height:0;overflow:hidden;
    transition:max-height .3s ease, padding .3s ease, opacity .25s ease;
    opacity:0;
  }
  .nav-links.open{max-height:80vh;opacity:1;overflow-y:auto;}
  .nav-links > a{
    display:block;padding:14px 8px;
    font-size:15px;color:rgba(255,255,255,0.92);
    border-bottom:1px solid rgba(255,255,255,0.08);
  }
  .nav-links > a:last-child{border-bottom:none;}

  /* Healthcare dropdown becomes an accordion inside the drawer */
  .nav-drop{display:block;width:100%;}
  .nav-drop-trigger{
    display:flex;align-items:center;justify-content:space-between;width:100%;
    padding:14px 8px;font-size:15px;color:rgba(255,255,255,0.92);
    border-bottom:1px solid rgba(255,255,255,0.08);
  }
  .nav-drop-trigger .nav-badge{margin-left:8px;}
  /* Mobile/tablet: the desktop mega panel collapses into a SIMPLE dropdown —
     a plain stacked list of links. No floating panel, multi-column grid,
     icons, descriptions, or footer CTA. */
  .nav-mega{
    position:static;left:auto;transform:none;
    min-width:0;width:100%;
    margin-top:0;padding:0 0 6px;
    background:transparent;backdrop-filter:none;
    border:none;border-radius:0;box-shadow:none;
    display:none;gap:0;
    opacity:1;visibility:visible;
  }
  .nav-mega::before{display:none;}
  .nav-drop.open .nav-caret{transform:rotate(180deg);}
  /* Touch is click-driven (.open). Neutralize the desktop hover/focus-within
     rules — especially their translate(-50%), which would otherwise shove the
     panel off the left edge of the screen. */
  .nav-drop:hover .nav-mega,
  .nav-drop:focus-within .nav-mega{display:none;transform:none;}
  .nav-drop.open .nav-mega,
  .nav-drop.open:hover .nav-mega,
  .nav-drop.open:focus-within .nav-mega{display:block;transform:none;left:auto;}

  /* Section labels (Medical / Dental / Company) become quiet group headers. */
  .nav-mega-col{gap:0;}
  .nav-mega-col + .nav-mega-col{border-left:none;padding-left:0;border-top:none;margin-top:0;padding-top:0;}
  .nav-mega-h{
    padding:14px 8px 4px;border-bottom:none;margin-bottom:0;
    font-size:10.5px;letter-spacing:1.2px;
  }
  .nav-mega-h .ico-circle{display:none;}
  /* Plain tappable rows — drop the icon tile and the description line. */
  .nav-mega-link{padding:11px 16px;transform:none;}
  .nav-mega-link:hover{transform:none;background:rgba(255,255,255,0.06);}
  .nav-mega-link i,
  .nav-mega-link em{display:none;}
  /* Hide the promotional footer CTA in the simple mobile dropdown. */
  .nav-mega-foot{display:none;}

  .hero{padding:80px 32px 60px;grid-template-columns:1fr;gap:44px;min-height:auto;align-items:start;}
  .hero-h1{max-width:none;white-space:normal;}
  .hero-sub{max-width:none;}
  .hero-sub-cols{column-gap:32px;}
  .hero-stats{max-width:620px;margin-top:0;}
  .hero-visual{height:480px;max-width:600px;margin:0 auto;}
  .hv-main{width:380px;height:440px;right:30px;}
  .hv-side{width:200px;height:240px;}
  .hv-chip.t1{left:-10px;}
  .hv-chip.t2{right:-10px;}
  .hv-chip.t3{right:30px;}
  .orb1{width:500px;height:500px;}
  .orb2{width:380px;height:380px;}
  .orb3{width:240px;height:240px;}

  .sec{padding:64px 32px;}
  /* Let centered section titles wrap below desktop so long ones don't get
     clipped by body{overflow-x:hidden}. #calc-h stays nowrap (clamp shrinks it). */
  .sec-h2{font-size:40px;white-space:normal;overflow-wrap:break-word;}
  .sec-sub{font-size:16px;}

  .calc-wrap{padding:70px 32px 40px;}
  .calc{grid-template-columns:1fr;}
  .calc-vadd{border-right:none;border-bottom:1px solid rgba(255,255,255,0.08);}
  .calc-hero-val{font-size:64px;}
  .calc-gauge{width:140px;height:140px;}

  .global{padding:80px 32px;}
  .global-grid{grid-template-columns:1fr;gap:40px;}
  .global-l{max-width:none;}

  /* Compact variant: stack columns on tablet + smaller; trim padding. */
  .global-compact{padding:60px 32px;}
  .global-compact .global-grid{grid-template-columns:1fr;gap:36px;}
  .global-benefits li{font-size:14.5px;}
  .global-benefits li .ico-circle{flex:0 0 38px;width:38px;height:38px;font-size:15px;}
  /* Map below the copy — keep it readable, dim the arcs so pins lead. */
  .world{aspect-ratio:5 / 3;max-height:380px;border-radius:18px;}
  .world-grid{background-size:48px 48px;}
  .world-pin .pin-lbl{font-size:10px;padding:4px 8px;}

  .spec-card{min-height:400px;}
  .spec-aside{min-height:400px;}
  .spec-content{padding:36px 36px;}
  .spec-title{font-size:28px;}
  .spec-desc{font-size:16px;}

  .roi-grid{gap:18px;}
  .roi-num{font-size:58px;}
  .proc-steps{gap:18px;}
  .test-grid{grid-template-columns:repeat(2,1fr);}
  .prof-grid{grid-template-columns:repeat(2,1fr);}

  .cta-inner{padding:42px 32px;}
  .cta-h2{font-size:36px;}
  .cta-intents{grid-template-columns:repeat(2,1fr);}

  /* Calculator price band + dual buttons */
  .calc-rate-band{margin-top:18px;padding:18px 18px;}
  .calc-rate-row{grid-template-columns:1fr;gap:12px;}
  .calc-rate-tier-amt{font-size:26px;}
  .calc-cta{flex-direction:column;align-items:stretch;gap:14px;padding:18px 18px;}
  .calc-cta-btns{flex-direction:row;flex-wrap:wrap;align-items:stretch;}
  .calc-cta-primary,.calc-cta-secondary{flex:1;justify-content:center;}

  /* Calculator reach-out form on tablet — keep on one row but allow wrap. */
  .calc-reachout-row{grid-template-columns:1fr 1fr;gap:8px;}
  .calc-reachout-btn{grid-column:1 / -1;}

  /* Guarantee */
  .guarantee{padding:48px 32px;}
  .g-wrap{grid-template-columns:1fr;gap:26px;padding:30px 28px;}
  .g-seal-ring{width:150px;height:150px;}
  .g-seal-h{font-size:23px;}
  .g-seal-s{font-size:11px;letter-spacing:1.2px;}
  .g-cards{grid-template-columns:1fr;gap:12px;}
  .comp-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:36px;}

  /* Case studies */
  .case-grid{grid-template-columns:repeat(2,1fr);}
  .case-grid:not(.case-grid-4) > *:nth-child(3){grid-column:1 / -1;max-width:520px;margin:0 auto;}
  .case-grid-4{grid-template-columns:repeat(2,1fr);}

  /* Differentiators */
  .diff{padding:80px 32px;}
  .diff-grid{grid-template-columns:1fr;gap:18px;}
  .diff-card{padding:30px 26px 26px;}
  .diff-num{font-size:42px;}

  .footer{padding:60px 32px 28px;}
  .ft-grid{grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px;}

  .divider{margin:0 32px;}

  /* Simple mobile dropdown — link names only, comfortable tap size. */
  .nav-mega-link strong{font-size:14.5px;font-weight:600;color:rgba(255,255,255,0.92);}

  /* Service pages */
  .svc-hero{padding:60px 32px 70px;grid-template-columns:1fr;gap:40px;}
  .svc-hero-vis{max-width:520px;margin:0 auto;width:100%;}
  .svc-h1{font-size:46px;}
  .svc-lead{font-size:17px;max-width:none;}
  .svc-stats{margin:0 32px;grid-template-columns:repeat(4,1fr);}
  .svc-stat{padding:20px 14px;}
  .svc-stat-num{font-size:30px;}
  .svc-split{padding:70px 32px;grid-template-columns:1fr;gap:36px;}
  .svc-split.reverse{grid-template-columns:1fr;}
  .svc-split.reverse .svc-side-img{order:0;}
  .svc-h2{font-size:34px;}
  .svc-bens{padding:70px 32px;}
  .svc-bens-grid{grid-template-columns:repeat(2,1fr);}
  .svc-tools{padding:50px 32px 70px;}
  .svc-tools-wrap{grid-template-columns:1fr;padding:36px 28px;gap:24px;}
  .svc-proc{padding:50px 32px 70px;}
  .svc-cta{margin:0 32px 80px;padding:48px 32px;}
  .svc-cta h2{font-size:30px;}
  .svc-related{padding:0 32px 90px;}
  .svc-related-grid{grid-template-columns:repeat(2,1fr);}
}

/* ───── RESPONSIVE: MOBILE (≤768px) ───── */
@media (max-width:768px){
  .topbar{font-size:12px;padding:10px 14px;line-height:1.5;}
  .topbar a{display:inline-block;margin-top:2px;margin-left:0;}

  .nav{padding:0 16px;height:64px;}
  .nav-right{gap:10px;}
  .nav-phone{display:none;}
  .btn-nav{padding:9px 14px;font-size:13px;}
  .logo img{height:36px;}
  .nav-links{padding:14px 16px 22px;}
  .nav-links > a, .nav-drop-trigger{font-size:14.5px;padding:13px 6px;}

  .hero{padding:56px 18px 44px;gap:28px;
    background-image:linear-gradient(165deg, #241458 0%, #191040 48%, #110926 100%);
    background-size:cover;background-position:center;}
  /* Stretching the graph over the whole tall stacked hero distorts the bars.
     Keep its true aspect ratio and drop it to the bottom, behind the stats card. */
  .hero-graph{inset:auto 0 0 0;width:100%;height:auto;aspect-ratio:1200 / 520;}
  .hero-h1 br{display:none;}
  .hero-sub-cols{column-count:1;}
  .hero-guarantee{font-size:14.5px;margin-bottom:26px;padding:12px 15px;}
  .hero-eyebrow{font-size:10.5px;padding:6px 14px;letter-spacing:.6px;}
  .hero-btns{gap:10px;margin-bottom:30px;}
  .btn-primary,.btn-glass{padding:14px 22px;font-size:14.5px;width:100%;justify-content:center;}
  .btn-mini-note{display:none;}
  .trust-row{gap:12px 14px;margin-bottom:36px;}
  .trust-item{font-size:12.5px;}
  .hero-stats{grid-template-columns:repeat(2,1fr);max-width:none;}
  .hstat{padding:20px 14px;border-right:none;border-bottom:1px solid rgba(255,255,255,0.1);}
  .hstat:nth-child(2n){border-right:none;}
  .hstat:nth-last-child(-n+2){border-bottom:none;}
  .hstat-num{font-size:38px;}

  /* Two equal, responsive images side-by-side (was a mismatched stack where the
     2nd image rendered smaller than the first). */
  .hero-visual{height:auto;max-width:460px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:12px;}
  .hv-card{position:relative;transform:none!important;inset:auto;}
  .hv-main,.hv-side{width:100%;max-width:none;height:auto;aspect-ratio:3/4;right:auto;left:auto;top:auto;bottom:auto;}
  .hv-main:hover,.hv-side:hover{transform:none;}
  .hv-chip{display:none;}

  .orb1,.orb2,.orb3{opacity:.55;transform:scale(.55);}

  .marquee{padding:24px 0;}
  .marquee-track{gap:14px;}
  .mq-logo{height:48px;}
  .marquee-track-wrap::before,.marquee-track-wrap::after{width:80px;}
  .news{padding:22px 0 24px;}
  .news-item{height:48px;}
  .news-track{gap:40px;}
  .news-track-wrap::before,.news-track-wrap::after{width:60px;}

  .sec{padding:50px 18px;}
  .sec-h2{font-size:28px;}
  .sec-sub{font-size:14.5px;}

  .calc-wrap{padding:50px 18px 32px;}
  .calc-head{margin-bottom:28px;}
  .calc-badge{font-size:11px;padding:7px 14px;margin-bottom:14px;}
  .calc-glow{border-radius:23px;}
  .calc{border-radius:20px;}
  .calc-top{flex-direction:column;align-items:stretch;text-align:center;gap:16px;padding:24px 20px;}
  /* Reset the row flex-basis (180px/300px) so it stops forcing column heights. */
  .calc-top-head,
  .calc-top .calc-slider-wrap{flex:0 0 auto;min-width:0;}
  .calc-slider-row{justify-content:center;gap:12px;}
  .calc-vadd{padding:30px 22px;gap:14px;}
  .calc-vadd-h{font-size:22px;}
  .calc-field{margin-bottom:18px;}
  .calc-seg button{padding:10px 8px;font-size:12.5px;}
  .calc-select{padding:13px 16px;font-size:14px;padding-right:42px;}
  .calc-slider-wrap{padding:16px 16px 12px;}
  .calc-slider-val{font-size:26px;}
  .calc-slider-cap{font-size:11px;letter-spacing:.9px;}
  .calc-results{padding:26px 20px;}
  .calc-results-top{flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:22px;}
  .calc-hero-val{font-size:46px;}
  .calc-hero-sub{font-size:13px;}
  .calc-gauge{width:130px;height:130px;align-self:center;}
  .calc-bars{margin-top:4px;}
  .calc-bar-row{margin-bottom:16px;}
  .calc-bar-name{font-size:11.5px;letter-spacing:.8px;gap:7px;}
  .calc-bar-amt{font-size:18px;}
  .calc-bar-track{height:14px;}
  .calc-kpis{grid-template-columns:1fr;gap:10px;margin-top:12px;}
  .calc-kpi{padding:14px 16px;}
  .calc-kpi-val{font-size:22px;}
  .calc-cta{flex-direction:column;align-items:stretch;text-align:center;padding:18px;margin-top:22px;gap:14px;border-radius:14px;}
  .calc-cta-l{font-size:14px;}
  .calc-cta a{width:100%;justify-content:center;padding:13px 20px;font-size:14px;}

  .global{padding:60px 18px;}
  .global-stats{grid-template-columns:1fr;}
  .gstat-num{font-size:30px;}

  /* Compact variant on phones: tighter padding, looser bullets. */
  .global-compact{padding:48px 18px;}
  .global-compact .global-grid{gap:28px;}
  .global-compact .sec-h2{font-size:26px;}
  .global-benefits{gap:12px;margin-top:18px;}
  .global-benefits li{font-size:14px;line-height:1.5;gap:12px;}
  .global-benefits li .ico-circle{flex:0 0 34px;width:34px;height:34px;font-size:13px;}
  .global-benefits li strong{display:block;margin-bottom:2px;}

  /* World map on phones: shorter, no grid clutter, simpler pin labels. */
  .world{aspect-ratio:4 / 3;max-height:260px;border-radius:14px;}
  .world-grid{display:none;}
  .world svg.map{opacity:.45;}
  .world-pin{width:10px;height:10px;}
  .world-pin .pin-lbl{font-size:9px;padding:3px 6px;letter-spacing:.2px;bottom:18px;}
  .world-arc path{stroke-width:1.2;}

  .spec-grid{gap:20px;margin-top:36px;}
  .spec-card{grid-template-columns:1fr;min-height:0;border-radius:22px;}
  .spec-card.alt .spec-aside,
  .spec-card .spec-aside{grid-column:1;grid-row:1;min-height:0;height:auto;padding:34px 22px;gap:16px;}
  .spec-card.alt .spec-content,
  .spec-card .spec-content{grid-column:1;grid-row:2;padding:30px 24px 32px;}
  .spec-aside::before{width:420px;height:420px;}
  .spec-medallion{width:90px;height:90px;}
  .spec-medallion i{font-size:36px;}
  .spec-aside-cap{font-size:22px;}
  .spec-title{font-size:24px;}
  .spec-desc{font-size:15.5px;}
  .spec-link{padding:13px 20px;font-size:14px;}
  .hipaa{align-items:stretch;padding:22px;}
  .hipaa-row{flex-direction:column;gap:20px;}
  .hipaa-main{flex-direction:column;gap:18px;padding-top:20px;}
  .hipaa-seal{height:88px;}
  .hbadges{gap:14px 18px;}
  .btn-gold{width:100%;justify-content:center;}

  .roi-grid{grid-template-columns:1fr;gap:14px;margin-top:36px;}
  .roi-card{padding:32px 24px;}
  .roi-num{font-size:48px;}

  .proc-steps{grid-template-columns:1fr;gap:16px;margin-top:40px;}
  .pstep{padding:28px 22px;}

  .test-grid{grid-template-columns:1fr;margin-top:36px;}
  .test-card{padding:26px 22px;}

  .hw-grid{grid-template-columns:1fr;margin-top:36px;}
  .hw-card{padding:24px 22px;}

  .prof-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:32px;}
  .prof-card{padding:22px 16px;}
  .prof-photo{width:80px;height:80px;}
  .offer-grid{grid-template-columns:1fr;}

  .faq-grid{grid-template-columns:1fr;margin-top:32px;}
  .faq-item{padding:24px 22px;}
  .faq-q{font-size:16.5px;}

  .cta-inner{padding:32px 22px;border-radius:20px;}
  .cta-h2{font-size:26px;}
  .cta-sub{font-size:15px;margin-bottom:28px;}
  .cf-row{grid-template-columns:1fr;}
  .cta-intents{grid-template-columns:1fr;gap:8px;margin-bottom:24px;}
  .cta-intent{padding:14px 16px;}

  /* Hero soft-link */
  .btn-soft-link{font-size:12.5px;text-align:center;justify-content:center;}

  /* Calc price band on mobile */
  .calc-rate-band{margin-top:14px;padding:16px;border-radius:14px;}
  .calc-rate-tier{padding:14px;}
  .calc-rate-tier-amt{font-size:24px;}
  .calc-cta-btns{flex-direction:column;}
  .calc-cta-primary,.calc-cta-secondary{width:100%;padding:13px 16px;font-size:13.5px;}

  /* Calculator reach-out — stack on mobile so each field gets full width. */
  .calc-reachout{padding:14px 16px;border-radius:12px;}
  .calc-reachout-h{font-size:11.5px;margin-bottom:10px;}
  .calc-reachout-row{grid-template-columns:1fr;gap:8px;}
  .calc-reachout-btn{grid-column:auto;width:100%;padding:12px 16px;font-size:13.5px;}
  .calc-reachout-foot{font-size:11.5px;}

  /* Bars / amounts at narrow widths — let the amount wrap below the label. */
  .calc-bar-head{flex-wrap:wrap;gap:4px;}
  .calc-bar-amt{font-size:13px;}

  /* Guarantee */
  .guarantee{padding:42px 18px;}
  .g-wrap{padding:26px 20px;border-radius:20px;gap:22px;}
  .g-seal-ring{width:132px;height:132px;}
  .g-seal-h{font-size:21px;}
  .g-seal-s{font-size:10.5px;letter-spacing:1px;}
  .g-card{padding:18px 16px;}
  .g-card h3{font-size:15px;}
  .g-card p{font-size:13px;}
  .g-foot{flex-direction:column;align-items:stretch;}
  .g-foot a{width:100%;justify-content:center;}

  .comp-grid{grid-template-columns:1fr;margin-top:28px;gap:14px;}

  /* Case studies on mobile */
  .case-grid{grid-template-columns:1fr;margin-top:32px;gap:18px;}
  .case-grid-4{grid-template-columns:1fr;}
  .case-grid > *:nth-child(3){grid-column:auto;max-width:none;margin:0;}
  .case-card{padding:22px 20px;}
  .case-metric-before .val{font-size:22px;}
  .case-metric-after .val{font-size:34px;}
  .case-q{font-size:14px;}

  /* Differentiators on mobile */
  .diff{padding:60px 18px;}
  .diff-card{padding:26px 22px;}
  .diff-title{font-size:18px;}
  .diff-desc{font-size:14px;}
  .diff-num{font-size:36px;top:14px;right:18px;}
  .diff-vs-val{font-size:12px;}

  .footer{padding:50px 18px 24px;}
  .ft-grid{grid-template-columns:1fr;gap:32px;margin-bottom:40px;}
  .ft-logo img{height:50px;}
  .ft-bottom{flex-direction:column;gap:14px;text-align:center;}
  .ft-seo{justify-content:center;}

  .divider{margin:0 18px;}

  .scroll-top{bottom:84px;right:18px;width:56px;height:56px;font-size:16px;}

  /* Service pages — mobile */
  .svc-hero{padding:40px 18px 50px;gap:28px;}
  .svc-h1{font-size:34px;}
  .svc-lead{font-size:15.5px;}
  .svc-bc{font-size:11.5px;}
  .svc-eyebrow{font-size:10.5px;padding:6px 14px;letter-spacing:.6px;}
  .svc-cta-row{flex-direction:column;align-items:stretch;}
  .svc-cta-row .btn-primary,
  .svc-cta-row .btn-glass{width:100%;justify-content:center;padding:14px 20px;font-size:14.5px;}
  .svc-hero-vis .hv-chip{display:none;}
  .svc-stats{margin:0 18px;grid-template-columns:repeat(2,1fr);}
  .svc-stat{border-right:none;border-bottom:1px solid rgba(255,255,255,0.08);}
  .svc-stat:nth-child(2n){border-right:none;}
  .svc-stat:nth-last-child(-n+2){border-bottom:none;}
  .svc-stat-num{font-size:28px;}
  .svc-split{padding:55px 18px;gap:28px;}
  .svc-h2{font-size:26px;}
  .svc-p{font-size:15px;}
  .svc-checks li{font-size:14.5px;}
  .svc-bens{padding:55px 18px;}
  .svc-bens-grid{grid-template-columns:1fr;}
  .svc-tools{padding:40px 18px 60px;}
  .svc-tools-wrap{padding:28px 22px;}
  .svc-proc{padding:40px 18px 60px;}
  .svc-cta{margin:0 18px 70px;padding:36px 22px;border-radius:20px;}
  .svc-cta h2{font-size:24px;}
  .svc-cta p{font-size:15px;}
  .svc-cta-btns .btn-primary,
  .svc-cta-btns .btn-glass{width:100%;justify-content:center;}
  .svc-related{padding:0 18px 70px;}
  .svc-related-grid{grid-template-columns:1fr;}
}

/* ───── SMALL PHONES (≤430px) — keep the hero headline, buttons and stats
   from overflowing on narrow devices (iPhone SE/mini, small Androids). ───── */
@media (max-width:430px){
  .hero{padding:48px 15px 40px;gap:24px;}
  .hero-eyebrow{margin-bottom:22px;}
  .hero-h1{margin-bottom:18px;}
  .hero-guarantee{font-size:13.5px;margin-bottom:24px;}
  .hero-btns{gap:10px;margin-bottom:26px;}
  .trust-row{gap:10px 14px;margin-bottom:30px;}
  /* Single-column stats so the numbers stay legible on the narrowest screens. */
  .hero-stats{grid-template-columns:1fr;}
  .hstat{border-right:none;padding:18px 14px;}
  /* :not(:last-child) matches the specificity of the ≤768 nth-last-child rule and
     comes later in source order, so every divider but the last is restored. */
  .hstat:not(:last-child){border-bottom:1px solid rgba(255,255,255,0.1);}
  .hstat:last-child{border-bottom:none;}
  .hstat-num{font-size:34px;}
}

/* ───── NEW PAGES: spacing + responsive polish ─────
   Targets: /about, /careers, /case-studies, /contact, /guarantee
   These are additive overrides — they don't replace existing service-page rules,
   they fill gaps for the new inline grids and tighten tap targets on phones. */
@media (max-width:980px){
  /* FAQ grid stacks earlier on tablet for the new pages — keeps Q&A scannable. */
  .faq-grid{grid-template-columns:1fr;gap:14px;}
}
@media (max-width:768px){
  /* Hero CTA buttons stack full-width on phones for tap clarity. */
  .svc-hero-ctas{display:flex;flex-direction:column;align-items:stretch;gap:12px;width:100%;}
  .svc-hero-ctas .btn-primary,
  .svc-hero-ctas .btn-glass{width:100%;justify-content:center;}
  /* Hero mini-note centers naturally when stacked. */
  .btn-mini-note{display:block;text-align:center;margin-top:10px;}
  /* Section heading scale-down so new-page H1/H2 don't clip on phones. */
  .svc-h1{font-size:36px;line-height:1.1;}
  .svc-h2{font-size:28px;}
  /* Bens grid 1-col on mobile (services already handle this, mirror for safety). */
  .svc-bens-grid{grid-template-columns:1fr;gap:14px;}
  /* Stats: 2-col on phones */
  .svc-stats{grid-template-columns:repeat(2,1fr);margin:0 18px;}
  .svc-stat{padding:18px 10px;}
  .svc-stat-num{font-size:26px;}
  .svc-stat-lbl{font-size:11.5px;}
  /* Service-CTA buttons full-width stack */
  .svc-cta-btns{flex-direction:column;align-items:stretch;gap:12px;}
  /* Sections breathing room consistent with service pages */
  main > section.sec{padding:50px 18px;}
  main > .divider{margin:0 18px;}
}
@media (max-width:520px){
  /* Contact page — tighten cards + map + meta on small phones. */
  .ct-grid{gap:14px;}
  .ct-card{padding:22px 18px;}
  .ct-card a.ct-link{font-size:15px;word-break:break-word;}
  .ct-quick{gap:12px;}
  .ct-map-wrap iframe{height:300px;}
  .ct-map-meta{flex-direction:column;align-items:flex-start;text-align:left;padding:14px 16px;gap:8px;}
  /* Case studies — 1-col KPIs per card, smaller logo chip. */
  .cs-grid{gap:14px;}
  .cs-card{padding:22px 18px;gap:14px;}
  .cs-kpis{grid-template-columns:1fr;gap:10px;}
  .cs-logo{height:54px;max-width:160px;}
  .cs-by-area{gap:12px;}
  .cs-area-card{padding:16px 12px;}
  .cs-area-card .pct{font-size:26px;}
  /* Guarantee — tighten vs cards + claim steps. */
  .gp-vs{gap:14px;}
  .gp-vs-card{padding:22px 18px;}
  .gp-vs-h{flex-direction:column;align-items:flex-start;gap:8px;}
  .gp-claim-steps{gap:14px;}
  .gp-claim-step{padding:18px 16px;}
  /* Heading scale on smallest phones */
  .svc-h1{font-size:28px;}
  .svc-h2{font-size:22px;}
  .sec-h2{font-size:26px;}
  .sec-sub{font-size:14.5px;}
  /* Stats label wrap protection */
  .svc-stat-lbl{font-size:11px;line-height:1.35;}
}

/* ════════════════════════════════════════════════════════════════════
   VIRTUAL TEAMMATES — public talent directory + lead funnel (vtd-*)
   ════════════════════════════════════════════════════════════════════ */
.vtd-lede{font-size:16px;line-height:1.7;color:rgba(255,255,255,.78);max-width:64ch;margin:14px 0 0;}
.vtd-hero-cta{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:24px;}
.vtd-hero-stat{font-size:13.5px;color:rgba(255,255,255,.6);}
.vtd-hero-stat strong{color:var(--gold-lt);font-size:18px;}

/* Lead capture */
.vtd-match-card{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;
  background:var(--glass-bg);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);
  border:1px solid var(--glass-border);border-radius:22px;padding:38px;}
.vtd-match-points{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:9px;}
.vtd-match-points li{font-size:14px;color:rgba(255,255,255,.82);display:flex;align-items:center;gap:10px;}
.vtd-match-points i{color:var(--gold);font-size:12px;}
.vtd-form{display:grid;gap:12px;}
.vtd-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.vtd-field{width:100%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);
  border-radius:11px;padding:13px 15px;color:#fff;font-family:inherit;font-size:14px;}
.vtd-field::placeholder{color:rgba(255,255,255,.45);}
.vtd-field:focus{outline:none;border-color:var(--gold);background:rgba(255,255,255,.10);}
textarea.vtd-field{resize:vertical;min-height:52px;}
.vtd-form-submit{margin-top:4px;justify-content:center;}
.vtd-form-note{font-size:12px;color:rgba(255,255,255,.55);margin:2px 0 0;text-align:center;}
.vtd-form-note.is-err{color:#ffb4b4;}
/* Honeypot field: MUST be display:none — off-screen (left:-9999px) is still
   "visible" to Chrome autofill, which then fills it with the user's saved
   company and silently trips the honeypot, dropping real leads. display:none
   is excluded from autofill yet still posts + still catches naive bots. */
.vtd-hp{display:none!important;}
.vtd-thanks{text-align:center;padding:18px 6px;}
.vtd-thanks i{font-size:40px;color:var(--gold);margin-bottom:10px;}
.vtd-thanks h3{color:#fff;font-size:20px;margin-bottom:6px;}
.vtd-thanks p{color:rgba(255,255,255,.78);font-size:14px;line-height:1.6;}

/* Filters */
.vtd-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:28px 0 10px;}
.vtd-search{flex:1;min-width:230px;display:flex;align-items:center;gap:10px;
  background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:12px;padding:11px 15px;}
.vtd-search i{color:rgba(255,255,255,.5);font-size:13px;}
.vtd-search input{flex:1;background:transparent;border:0;color:#fff;font-family:inherit;font-size:14px;outline:none;}
.vtd-search input::placeholder{color:rgba(255,255,255,.45);}
.vtd-select{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:12px;
  padding:11px 15px;color:#fff;font-family:inherit;font-size:14px;min-width:180px;cursor:pointer;}
.vtd-select:disabled{opacity:.5;cursor:not-allowed;}
.vtd-select option{background:var(--dark);color:#fff;}
.vtd-reset{background:transparent;border:1px solid var(--glass-border);color:rgba(255,255,255,.75);
  border-radius:12px;padding:11px 18px;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;}
.vtd-reset:hover{border-color:var(--gold);color:#fff;}
.vtd-count{font-size:13px;color:rgba(255,255,255,.55);margin:6px 0 18px;}
.vtd-noresults{color:rgba(255,255,255,.7);font-size:14.5px;text-align:center;padding:30px;}
.vtd-noresults a,.vtd-lede a,.vtd-spec a,.vtd-why-card a{color:var(--gold-lt);}

/* Card grid (3 columns) */
.vtd-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:6px;}
.vtd-card{position:relative;background:var(--glass-bg);backdrop-filter:var(--glass-blur-sm);
  -webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);border-radius:18px;
  padding:26px 22px 22px;text-align:center;display:flex;flex-direction:column;align-items:center;
  transition:transform .3s ease,box-shadow .3s ease;}
.vtd-card:hover{transform:translateY(-4px);box-shadow:0 24px 48px rgba(0,0,0,.35);}
.vtd-status{position:absolute;top:14px;right:14px;font-size:10px;font-weight:800;letter-spacing:.04em;
  text-transform:uppercase;padding:3px 9px;border-radius:30px;}
.vtd-status.is-avail{background:rgba(78,196,126,.16);border:1px solid rgba(78,196,126,.4);color:#bff3d2;}
.vtd-status.is-engaged{background:rgba(133,130,195,.16);border:1px solid rgba(133,130,195,.4);color:#dcdaff;}
.vtd-photo{width:92px;height:92px;border-radius:50%;overflow:hidden;margin:6px auto 14px;
  border:3px solid rgba(223,169,73,.5);box-shadow:0 12px 30px rgba(0,0,0,.3);}
.vtd-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.vtd-photo-ph{display:flex;align-items:center;justify-content:center;width:100%;height:100%;
  font-size:30px;font-weight:800;color:#fff;background:linear-gradient(135deg,#4a4178,#322a5a);}
.vtd-hero-pic--empty{background:linear-gradient(135deg,var(--violet-dk),var(--gold));}
.vtd-name{font-size:16px;font-weight:800;color:#fff;letter-spacing:-.01em;}
.vtd-dept{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gold-lt);margin-top:3px;}
.vtd-role{font-size:13px;color:rgba(255,255,255,.78);margin-top:4px;line-height:1.35;}
.vtd-loc{font-size:11.5px;color:rgba(255,255,255,.5);margin-top:6px;display:flex;align-items:center;gap:5px;justify-content:center;}
.vtd-scores{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:12px 0 4px;}
.vtd-score{font-size:10.5px;font-weight:700;color:rgba(255,255,255,.82);background:rgba(223,169,73,.14);
  border:1px solid rgba(223,169,73,.3);padding:3px 9px;border-radius:30px;}
.vtd-skills-h{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;
  color:rgba(255,255,255,.45);margin:12px 0 7px;}
.vtd-skills{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;}
.vtd-skill{font-size:10.5px;color:rgba(255,255,255,.72);background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);padding:3px 9px;border-radius:8px;}
.vtd-view{margin-top:18px;width:100%;background:rgba(255,255,255,.06);border:1px solid var(--glass-border);
  color:#fff;border-radius:11px;padding:11px;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background .2s,border-color .2s;text-decoration:none;}
.vtd-view:hover{background:rgba(223,169,73,.16);border-color:var(--gold);}
.vtd-view i{font-size:11px;}
/* Talent-card content reused inside the VT cards (mirrors homepage "Meet the Team"). */
.vtd-card .prof-tag{margin:10px 0 0;}
.vtd-card .vtd-role{margin-top:8px;min-height:34px;}
.vtd-card .prof-meta{margin:12px 0 0;}
.vtd-card .prof-cap{padding-top:12px;}
.vtd-more-wrap{text-align:center;margin-top:30px;}

/* SEO content blocks */
.vtd-why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:26px;}
.vtd-why-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;padding:22px;}
.vtd-why-card i{font-size:22px;color:var(--gold);}
.vtd-why-card h3{color:#fff;font-size:15px;margin:10px 0 6px;}
.vtd-why-card p{color:rgba(255,255,255,.7);font-size:13px;line-height:1.55;}
.vtd-spec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:24px;}
.vtd-spec{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;padding:24px;}
.vtd-spec h3{color:#fff;font-size:16px;display:flex;align-items:center;gap:10px;margin-bottom:8px;}
.vtd-spec h3 i{color:var(--gold);}
.vtd-spec p{color:rgba(255,255,255,.74);font-size:13.5px;line-height:1.6;}
.vtd-steps{list-style:none;padding:0;margin:24px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.vtd-steps li{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;padding:24px;position:relative;}
.vtd-step-n{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;
  background:linear-gradient(135deg,var(--violet-dk),var(--gold));color:#fff;font-weight:800;font-size:15px;margin-bottom:10px;}
.vtd-steps h3{color:#fff;font-size:15px;margin-bottom:5px;}
.vtd-steps p{color:rgba(255,255,255,.72);font-size:13px;line-height:1.55;}
.vtd-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:24px;}
.vtd-faq{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:14px;padding:20px 22px;}
.vtd-faq h3{color:#fff;font-size:14.5px;margin-bottom:7px;}
.vtd-faq p{color:rgba(255,255,255,.74);font-size:13.5px;line-height:1.6;}
.vtd-closing-card{text-align:center;background:var(--glass-bg);border:1px solid var(--glass-border);
  border-radius:22px;padding:46px 28px;}

/* Profile modal */
.vtd-modal{position:fixed;inset:0;z-index:1000;display:flex;justify-content:center;padding:24px;
  overflow-y:auto;overscroll-behavior:contain;}
.vtd-modal[hidden]{display:none;}
.vtd-modal-backdrop{position:fixed;inset:0;background:rgba(10,7,30,.72);backdrop-filter:blur(4px);}
.vtd-modal-card{position:relative;z-index:1;margin:auto;width:100%;max-width:1320px;
  max-height:92vh;max-height:calc(100dvh - 48px);overflow:hidden;
  display:flex;flex-direction:column;background:#1d1840;border:1px solid var(--glass-border-strong);
  border-radius:20px;box-shadow:0 40px 90px rgba(0,0,0,.6);}
.vtd-modal-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;}
.vtd-m-teaser{padding:34px;}
.vtd-modal-x{position:absolute;top:12px;right:16px;z-index:3;width:34px;height:34px;border-radius:50%;
  background:rgba(0,0,0,.3);border:0;color:#fff;font-size:24px;line-height:1;cursor:pointer;}
.vtd-modal-x:hover{color:#fff;}
.vtd-m-name{color:#fff;font-size:24px;font-weight:800;margin:0 0 4px;}
.vtd-m-sub{color:var(--gold-lt);font-size:13px;font-weight:700;margin-bottom:18px;}
.vtd-m-media{margin:0 0 18px;}
.vtd-m-h{color:rgba(255,255,255,.6);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;margin-bottom:8px;}
.vtd-m-media video,.vtd-m-media embed{width:100%;border:0;border-radius:12px;background:#000;display:block;}
.vtd-m-media video{aspect-ratio:16/9;}
.vtd-m-media embed{height:360px;}
.vtd-m-actions{margin-top:8px;}
.vtd-m-sec{margin:0 0 16px;}
.vtd-m-sec h3{color:#fff;font-size:14px;margin-bottom:6px;}
.vtd-m-sec p{color:rgba(255,255,255,.78);font-size:13.5px;line-height:1.6;}
.vtd-m-dl{display:grid;grid-template-columns:auto 1fr;gap:5px 16px;font-size:13px;}
.vtd-m-dl dt{color:rgba(255,255,255,.5);font-weight:700;}
.vtd-m-dl dd{color:#fff;margin:0;}
.vtd-m-lock{display:flex;align-items:center;gap:10px;background:rgba(223,169,73,.1);border:1px solid rgba(223,169,73,.3);
  border-radius:12px;padding:13px 16px;color:var(--gold-lt);font-size:13px;margin:18px 0;}
.vtd-m-cta{width:100%;justify-content:center;}

/* ── CV-style member profile modal ── */
.vtd-cv-head{display:flex;gap:22px;align-items:center;padding:30px 34px 26px;
  background:linear-gradient(135deg,#3919BA 0%,#7c3aed 55%,#1d1840 100%);}
.vtd-cv-photo{width:112px;height:112px;border-radius:16px;object-fit:cover;flex:0 0 112px;
  border:3px solid rgba(255,255,255,.25);box-shadow:0 12px 30px rgba(0,0,0,.35);background:#1a1535;}
.vtd-cv-photo-ph{display:flex;align-items:center;justify-content:center;font-size:42px;font-weight:800;color:#fff;
  background:linear-gradient(135deg,#4a4178,#322a5a);}
.vtd-cv-id{min-width:0;}
.vtd-cv-status{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;
  padding:3px 10px;border-radius:30px;margin-bottom:8px;}
.vtd-cv-status.is-avail{background:rgba(78,196,126,.2);border:1px solid rgba(78,196,126,.5);color:#bff3d2;}
.vtd-cv-status.is-engaged{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.45);color:#fff;}
.vtd-cv-name{color:#fff;font-size:28px;font-weight:800;line-height:1.1;margin:0;letter-spacing:-.02em;}
.vtd-cv-role{color:var(--gold-lt);font-size:15px;font-weight:700;margin-top:4px;}
.vtd-cv-meta{color:rgba(255,255,255,.85);font-size:13px;margin-top:8px;}
.vtd-cv-dot{margin:0 8px;opacity:.5;}
.vtd-cv-head .vtd-scores{justify-content:flex-start;margin-top:12px;}
.vtd-cv-body{display:grid;grid-template-columns:340px 1fr;}
.vtd-cv-side{padding:24px 22px;border-right:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02);}
.vtd-cv-main{padding:24px 28px;min-width:0;}
.vtd-cv-sec{margin:0 0 22px;}
.vtd-cv-sec:last-child{margin-bottom:0;}
.vtd-cv-sec h4{color:#fff;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;
  margin:0 0 10px;display:flex;align-items:center;gap:8px;}
.vtd-cv-sec h4 i{color:var(--gold);}
.vtd-cv-text{color:rgba(255,255,255,.8);font-size:14px;line-height:1.65;margin:0;}
.vtd-cv-video{border-radius:12px;overflow:hidden;background:#000;aspect-ratio:16/9;}
.vtd-cv-video video,.vtd-cv-video iframe{width:100%;height:100%;border:0;display:block;}
.vtd-cv-dl{display:grid;grid-template-columns:1fr;gap:0;margin:0;}
.vtd-cv-dl dt{color:rgba(255,255,255,.5);font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-top:10px;}
.vtd-cv-dl dt:first-child{margin-top:0;}
.vtd-cv-dl dd{color:#fff;font-size:14px;margin:2px 0 0;font-weight:600;}
.vtd-cv-pdf{width:100%;height:580px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#fff;}
.vtd-cv-pdf-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px;}
.vtd-cv-pdf-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:9px;
  font-size:12.5px;font-weight:700;text-decoration:none;cursor:pointer;
  background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.18);
  transition:background .15s,border-color .15s,transform .15s;}
.vtd-cv-pdf-btn:hover{background:rgba(247,185,69,.16);border-color:rgba(247,185,69,.5);transform:translateY(-1px);}
.vtd-cv-pdf-btn i{color:var(--gold,#dfa949);font-size:12px;}
.vtd-cv-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  padding:20px 28px;border-top:1px solid rgba(255,255,255,.1);background:rgba(57,25,186,.12);}
.vtd-cv-cta-t{color:#fff;font-size:15px;font-weight:600;}
.vtd-cv-cta .btn-primary{white-space:nowrap;}
/* Media section (bottom): intro video + résumé side-by-side */
.vtd-cv-media{padding:24px 28px;border-top:1px solid rgba(255,255,255,.08);}
.vtd-cv-media-h{color:#fff;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;
  display:flex;align-items:center;gap:8px;margin-bottom:14px;flex-wrap:wrap;}
.vtd-cv-media-h i{color:var(--gold);}
.vtd-cv-media-h span{font-weight:500;text-transform:none;letter-spacing:0;color:rgba(255,255,255,.5);font-size:12px;}
.vtd-cv-media-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.vtd-cv-media-lbl{color:rgba(255,255,255,.7);font-size:12px;font-weight:700;margin-bottom:8px;display:flex;align-items:center;gap:7px;}
.vtd-cv-media-lbl i{color:var(--gold);}
.vtd-cv-media .vtd-cv-pdf{height:520px;}
.vtd-cv-media-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
  aspect-ratio:16/9;border:1px dashed rgba(255,255,255,.18);border-radius:12px;color:rgba(255,255,255,.45);font-size:13px;}
.vtd-cv-media-empty i{font-size:26px;}
@media (max-width:820px){
  .vtd-cv-head{flex-direction:column;text-align:center;align-items:center;padding:26px 22px;}
  .vtd-cv-head .vtd-scores{justify-content:center;}
  .vtd-cv-body{grid-template-columns:1fr;}
  .vtd-cv-side{border-right:0;border-bottom:1px solid rgba(255,255,255,.08);}
  .vtd-cv-media-grid{grid-template-columns:1fr;}
  .vtd-cv-pdf,.vtd-cv-media .vtd-cv-pdf{height:460px;}
}

@media (max-width:1280px){
  .vtd-grid{grid-template-columns:repeat(2,1fr);}
  .vtd-why-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:768px){
  .vtd-match-card{grid-template-columns:1fr;gap:24px;padding:26px;}
  .vtd-form-row{grid-template-columns:1fr;}
  .vtd-grid{grid-template-columns:1fr;}
  .vtd-why-grid,.vtd-spec-grid,.vtd-steps,.vtd-faq-grid{grid-template-columns:1fr;}
  .vtd-filters{flex-direction:column;align-items:stretch;}
  .vtd-select{min-width:0;width:100%;}
  .vtd-modal-card{max-height:92vh;max-height:calc(100dvh - 48px);}
  .vtd-m-media embed{height:280px;}
}

/* Sending spinner for lead-form submit buttons */
.vtd-spinner{display:inline-block;width:15px;height:15px;vertical-align:-2px;margin-right:6px;
  border:2px solid currentColor;border-right-color:transparent;border-radius:50%;opacity:.9;
  animation:vtdSpin .6s linear infinite;}
button.is-loading{opacity:.85;cursor:progress;}
@keyframes vtdSpin{to{transform:rotate(360deg);}}
@media (prefers-reduced-motion: reduce){ .vtd-spinner{animation-duration:1.4s;} }

/* Shared inline thank-you for branded lead forms (homepage CTA, ROI reach-out) */
.lead-thanks{display:flex;align-items:center;gap:12px;color:#fff;font-size:14.5px;line-height:1.5;
  background:rgba(78,196,126,.12);border:1px solid rgba(78,196,126,.4);border-radius:12px;padding:16px 18px;}
.lead-thanks i{color:#7fe0a6;font-size:24px;flex:0 0 auto;}
.lead-thanks p{margin:0;}

/* Subtle Virtual Teammates animation polish (on top of the .reveal scroll-in) */
.vtd-card .vtd-photo img{transition:transform .45s cubic-bezier(.2,.7,.2,1);}
.vtd-card:hover .vtd-photo img{transform:scale(1.06);}
.vtd-skill,.vtd-score{transition:background .2s ease,border-color .2s ease;}
.vtd-card:hover .vtd-skill{border-color:rgba(255,255,255,.2);}
@keyframes vtdPop{from{opacity:0;transform:translateY(14px) scale(.98);}to{opacity:1;transform:none;}}
@keyframes vtdFade{from{opacity:0;}to{opacity:1;}}
.vtd-modal:not([hidden]) .vtd-modal-card{animation:vtdPop .26s cubic-bezier(.2,.7,.2,1);}
.vtd-modal:not([hidden]) .vtd-modal-backdrop{animation:vtdFade .26s ease;}
@media (prefers-reduced-motion: reduce){
  .vtd-card .vtd-photo img,.vtd-card:hover .vtd-photo img{transition:none;transform:none;}
  .vtd-modal:not([hidden]) .vtd-modal-card,.vtd-modal:not([hidden]) .vtd-modal-backdrop{animation:none;}
}

/* Hero with real-teammate photo collage */
.vtd-hero-inner{display:grid;grid-template-columns:1.05fr .95fr;gap:46px;align-items:center;}
.vtd-hero-text{min-width:0;}
.vtd-hero-visual{position:relative;}
.vtd-hero-visual::before{content:"";position:absolute;inset:-14% -10%;z-index:0;filter:blur(10px);
  background:radial-gradient(circle at 72% 28%,rgba(223,169,73,.24),transparent 58%),
             radial-gradient(circle at 22% 82%,rgba(57,25,186,.34),transparent 60%);}
.vtd-hero-collage{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.vtd-hero-pic{aspect-ratio:1;border-radius:18px;overflow:hidden;background:#1a1535;
  border:1px solid var(--glass-border);box-shadow:0 16px 40px rgba(0,0,0,.35);}
.vtd-hero-pic img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s cubic-bezier(.2,.7,.2,1);}
.vtd-hero-pic:hover img{transform:scale(1.07);}
.vtd-hero-pic:nth-child(2){transform:translateY(-16px);}
.vtd-hero-pic:nth-child(5){transform:translateY(-16px);}
.vtd-hero-badge{position:absolute;z-index:2;left:-8px;bottom:-16px;display:inline-flex;align-items:center;gap:8px;
  background:#1d1840;border:1px solid var(--glass-border-strong);border-radius:30px;padding:10px 16px;
  font-size:12.5px;font-weight:800;color:#fff;box-shadow:0 14px 30px rgba(0,0,0,.45);}
.vtd-hero-badge i{color:#7fe0a6;}
@media (max-width:1280px){
  .vtd-hero-inner{grid-template-columns:1fr;gap:34px;}
  .vtd-hero-visual{max-width:520px;}
}
@media (max-width:768px){
  .vtd-hero-collage{gap:10px;}
  .vtd-hero-pic:nth-child(2),.vtd-hero-pic:nth-child(5){transform:none;}
  .vtd-hero-badge{left:0;bottom:-12px;font-size:11.5px;}
}
@media (prefers-reduced-motion: reduce){
  .vtd-hero-pic img,.vtd-hero-pic:hover img{transition:none;transform:none;}
}

/* ════════════════════════════════════════════════════════════════════
   Sitewide lead-capture band (includes/lead-form.php)
   ════════════════════════════════════════════════════════════════════ */
.lead-band-card{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;
  max-width:1180px;margin:0 auto;background:var(--glass-bg);backdrop-filter:var(--glass-blur-sm);
  -webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-border);
  border-radius:22px;padding:40px;}
.lead-band-l{min-width:0;}
.lead-band-sub{font-size:16px;line-height:1.7;color:rgba(255,255,255,.78);margin:14px 0 0;max-width:48ch;}
.lead-band-points{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:9px;}
.lead-band-points li{font-size:14px;color:rgba(255,255,255,.82);display:flex;align-items:center;gap:10px;}
.lead-band-points i{color:var(--gold);font-size:12px;}
.lead-band-form{min-width:0;}
.lead-band-form .cf-submit{width:100%;justify-content:center;}
/* "Book a Meeting" CTA panel (default band mode) */
.lead-band-cta{min-width:0;text-align:center;background:rgba(255,255,255,.04);
  border:1px solid var(--glass-border);border-radius:18px;padding:34px 30px;}
.lead-band-cta-ico{display:inline-flex;width:58px;height:58px;align-items:center;justify-content:center;
  border-radius:50%;background:linear-gradient(135deg,var(--gold),#f5d27a);color:#1a1535;font-size:24px;margin-bottom:14px;}
.lead-band-cta h3{margin:0 0 8px;font-size:23px;color:#fff;letter-spacing:-.01em;}
.lead-band-cta p{margin:0 0 22px;font-size:14.5px;line-height:1.6;color:rgba(255,255,255,.78);}
.lead-band-cta .cf-submit{width:100%;justify-content:center;}
.lead-band-cta .cf-note{margin-top:12px;}
@media (max-width:1024px){
  .lead-band-card{grid-template-columns:1fr;gap:26px;padding:30px;}
}
@media (max-width:768px){
  .lead-band-card .cf-row{grid-template-columns:1fr;}
}

/* ───── Value-multiplier speedometer — lives in the ROI calculator's left column ───── */
/* Registered angle prop so the conic-gradient can actually animate its rotation. */
@property --vadd-spin{ syntax:"<angle>"; inherits:false; initial-value:0deg; }
@keyframes vaddSpin{ to{ --vadd-spin:360deg; } }
@keyframes vaddGlow{
  0%,100%{box-shadow:0 50px 120px rgba(0,0,0,0.35), 0 0 26px -10px rgba(223,169,73,0.18), 0 0 64px -14px rgba(124,58,237,0.22);}
  50%    {box-shadow:0 50px 120px rgba(0,0,0,0.35), 0 0 48px -4px rgba(223,169,73,0.45), 0 0 120px -8px rgba(124,58,237,0.48);}
}
.vadd-dial{position:relative;display:flex;flex-direction:column;align-items:center;}
.vadd-svg{width:100%;max-width:392px;height:auto;display:block;overflow:visible;}
.vadd-track{fill:none;stroke:rgba(255,255,255,.10);stroke-width:16;stroke-linecap:round;}
.vadd-fill{fill:none;stroke:url(#vaddGrad);stroke-width:16;stroke-linecap:round;
  stroke-dasharray:402.12;stroke-dashoffset:185;filter:drop-shadow(0 2px 12px rgba(223,169,73,.40));}
.vadd-tick{stroke:rgba(255,255,255,.30);stroke-width:2;}
.vadd-ticklbl{fill:rgba(255,255,255,.55);font-size:12px;font-weight:700;font-family:inherit;}
.vadd-needle{transform-box:view-box;transform-origin:160px 160px;transform:rotate(7.2deg);}
.vadd-needle .vn-point{fill:#f5e4b8;}
.vadd-needle .vn-tail{fill:var(--gold);}
.vadd-hub{fill:#1a1535;stroke:var(--gold);stroke-width:3;}
.vadd-hub-dot{fill:var(--gold);}
.vadd-readout{margin-top:-4px;text-align:center;}
.vadd-mult{font-size:66px;font-weight:800;line-height:1;letter-spacing:-.02em;
  background:linear-gradient(120deg,#dfa949,#f5e4b8 55%,#dfa949);-webkit-background-clip:text;background-clip:text;color:transparent;}
.vadd-mult span{font-size:38px;margin-left:2px;}
.vadd-mult-lbl{margin-top:8px;font-size:13px;line-height:1.5;color:rgba(255,255,255,.62);}

/* Entrance — plays once when the calculator scrolls into view (.in added by the reveal observer). */
@keyframes vaddDraw{from{stroke-dashoffset:402.12;}to{stroke-dashoffset:185;}}
@keyframes vaddSweep{from{transform:rotate(-90deg);}to{transform:rotate(7.2deg);}}
/* Live speedometer flutter — needle never sits perfectly still, like a real gauge under load. */
@keyframes vaddJitter{
  0%{transform:rotate(7.2deg);}
  14%{transform:rotate(5.2deg);}
  30%{transform:rotate(9.4deg);}
  46%{transform:rotate(6.4deg);}
  62%{transform:rotate(8.6deg);}
  78%{transform:rotate(6.8deg);}
  100%{transform:rotate(7.2deg);}
}
.calc.in .vadd-fill{animation:vaddDraw 1.7s cubic-bezier(.2,.8,.2,1) both;}
.calc.in .vadd-needle{animation:vaddSweep 1.7s cubic-bezier(.34,1.08,.4,1) both, vaddJitter 0.8s ease-in-out 1.7s infinite;}
@media (prefers-reduced-motion:reduce){
  .calc.in .vadd-fill,.calc.in .vadd-needle{animation:none;}
}

/* ───── ROI calculator — simplified UI ───── */
.calc-adjust-hint{display:inline-flex;align-items:center;gap:8px;margin-bottom:16px;
  font-size:12.5px;font-weight:700;color:var(--gold-lt);
  background:rgba(247,185,69,.10);border:1px solid rgba(247,185,69,.28);
  padding:7px 14px;border-radius:30px;}
.calc-adjust-hint i{font-size:13px;color:var(--gold);}
.calc-adjust-hint strong{color:#fff;font-weight:800;}
/* Expandable "full breakdown" (3-yr value, per-teammate, payback) */
.calc-more{margin-top:16px;border-top:1px solid var(--glass-border);}
.calc-more > summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;
  gap:10px;padding:13px 2px 11px;font-size:13.5px;font-weight:800;color:#fff;}
.calc-more > summary::-webkit-details-marker{display:none;}
.calc-more > summary span i{color:var(--gold);margin-right:7px;}
.calc-more-chev{color:var(--gold);font-size:12px;transition:transform .25s ease;}
.calc-more[open] .calc-more-chev{transform:rotate(180deg);}
.calc-more .calc-kpis{margin-top:4px;}
/* Single published rate */
.calc-rate-single{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding:4px 0 2px;}
.calc-rate-amt{font-size:30px;font-weight:800;color:#fff;letter-spacing:-.02em;line-height:1;}
.calc-rate-amt span{font-size:15px;font-weight:700;color:var(--gold-lt);margin-left:2px;}
.calc-rate-sub{font-size:12.5px;font-weight:600;color:rgba(255,255,255,.62);}
@media (max-width:980px){
  .calc-adjust-hint .fa-arrow-left-long{display:none;}
}

/* ───── Talk-to-a-CSM standalone callback CTA (below the calculator) ───── */
.csm-cta-card{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center;
  max-width:1280px;margin:0 auto;padding:42px;border-radius:28px;
  background:var(--glass-bg);border:1px solid var(--glass-border);backdrop-filter:var(--glass-blur);
  box-shadow:0 36px 80px -34px rgba(0,0,0,.6);}
.csm-cta-h{font-size:34px;font-weight:800;color:#fff;line-height:1.12;letter-spacing:-.02em;margin:6px 0 12px;}
.csm-cta-sub{font-size:15px;line-height:1.6;color:rgba(255,255,255,.72);margin:0 0 22px;}
.csm-cta-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:15px;}
.csm-cta-steps li{display:flex;gap:13px;align-items:flex-start;}
.csm-step-n{flex:0 0 28px;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:13px;font-weight:800;color:#1a1535;background:linear-gradient(135deg,#f5e4b8,#dfa949);box-shadow:0 4px 12px rgba(223,169,73,.3);}
.csm-cta-steps li > div{display:flex;flex-direction:column;gap:2px;}
.csm-cta-steps strong{font-size:14px;font-weight:800;color:#fff;}
.csm-cta-steps span{font-size:12.5px;color:rgba(255,255,255,.6);line-height:1.5;}
.csm-cta-form{display:flex;flex-direction:column;gap:11px;
  background:rgba(0,0,0,.20);border:1px solid var(--glass-border);border-radius:20px;padding:26px;}
.csm-cta-form-h{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--gold-lt);margin-bottom:2px;}
.csm-field{width:100%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);
  border-radius:11px;padding:12px 14px;font-size:14px;color:#fff;font-family:inherit;}
.csm-field::placeholder{color:rgba(255,255,255,.45);}
.csm-field:focus{outline:none;border-color:var(--gold);background:rgba(255,255,255,.09);}
.csm-cta-btn{justify-content:center;margin-top:4px;width:100%;}
.csm-cta-note{font-size:11.5px;color:rgba(255,255,255,.45);line-height:1.5;margin:4px 0 0;}
.csm-cta-note.is-err{color:#ff9b9b;}
@media (max-width:880px){
  .csm-cta-card{grid-template-columns:1fr;gap:28px;padding:28px;}
  .csm-cta-h{font-size:27px;}
}

/* ─────────────────────────────────────────────────────────────────────────
   ULTRA-WIDE / HIGH-RESOLUTION DISPLAYS  (up to 6016×3384)

   The whole site is art-directed in px and caps at body{max-width:1980px}.
   Past ~1980 CSS-px the design would otherwise sit as a small centered island
   in a sea of gutter. These tiers proportionally STRETCH the entire composition
   (CSS `zoom` scales layout + type + spacing as one unit, preserving every tuned
   ratio) so it fills the viewport, while CONTENT stays CENTERED via the existing
   body{margin:0 auto} — and the html gradient (top of this file) seamlessly fills
   whatever gutter remains once zoom hits its cap. Vector assets (hero graph,
   world map, "value added" SVG) and the large hero/logo rasters stay crisp at
   any scale; see note in CLAUDE-adjacent commit re: re-exporting the 816px
   specialty section photos for full sharpness at the extreme end.

   Within each tier zoom = (next-breakpoint / 1980), so the design fills edge to
   edge across the tier (no premature gutter), then the next tier steps it up.
   Magnification is capped at 2.6× so type never becomes oversized; beyond that
   the gradient gutters take over. Media queries match the real (un-zoomed)
   viewport, so only genuinely large CSS-px screens trigger these — never hi-DPI
   phones, which report small CSS-px widths. ───────────────────────────────── */
@media (min-width:1981px){ body{ zoom:1.11; } }
@media (min-width:2200px){ body{ zoom:1.29; } }
@media (min-width:2560px){ body{ zoom:1.49; } }
@media (min-width:2960px){ body{ zoom:1.74; } }
@media (min-width:3440px){ body{ zoom:1.94; } }
@media (min-width:3840px){ body{ zoom:2.18; } }
@media (min-width:4320px){ body{ zoom:2.42; } }
@media (min-width:4800px){ body{ zoom:2.60; } }

/* ── Modern, photo-free service-page graphics ─────────────────────────────── */
/* "Outcome snapshot" card — replaces the hero stock photo. */
.svc-snap{position:relative;border-radius:22px;padding:26px 24px;
  background:linear-gradient(155deg,rgba(57,25,186,.42),rgba(20,15,55,.92) 60%,rgba(223,169,73,.14));
  border:1px solid rgba(255,255,255,.13);box-shadow:0 40px 100px rgba(0,0,0,.5);
  backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);}
.svc-snap-h{display:flex;align-items:center;gap:10px;font-weight:800;color:#fff;font-size:15px;margin-bottom:18px;}
.svc-snap-h i{color:var(--gold);}
.svc-snap-row{margin-bottom:14px;}
.svc-snap-row:last-of-type{margin-bottom:0;}
.svc-snap-line{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:13.5px;color:rgba(255,255,255,.85);margin-bottom:7px;}
.svc-snap-line .v{font-size:20px;font-weight:800;color:var(--gold);letter-spacing:-.02em;}
.svc-snap-bar{height:8px;border-radius:99px;background:rgba(255,255,255,.1);overflow:hidden;}
.svc-snap-bar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--gold),#f5d27a);}
.svc-snap-foot{margin-top:18px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12);
  font-size:12.5px;color:rgba(255,255,255,.62);display:flex;align-items:center;gap:8px;}
.svc-snap-foot i{color:var(--gold);}

/* Before / after card — replaces the split-section stock photo. */
.svc-ba{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.svc-ba-col{border-radius:16px;padding:20px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.03);}
.svc-ba-col.is-after{border-color:rgba(223,169,73,.4);background:linear-gradient(160deg,rgba(223,169,73,.12),rgba(255,255,255,.03));}
.svc-ba-lbl{font-size:11px;text-transform:uppercase;letter-spacing:1px;font-weight:800;margin-bottom:13px;}
.svc-ba-col.is-before .svc-ba-lbl{color:rgba(255,255,255,.5);}
.svc-ba-col.is-after .svc-ba-lbl{color:var(--gold);}
.svc-ba-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px;}
.svc-ba-col li{font-size:13.5px;line-height:1.45;color:rgba(255,255,255,.84);display:flex;gap:9px;align-items:flex-start;}
.svc-ba-col li i{margin-top:3px;font-size:12px;flex:0 0 auto;}
.svc-ba-col.is-before li i{color:rgba(255,130,130,.85);}
.svc-ba-col.is-after li i{color:var(--gold);}
@media (max-width:560px){.svc-ba{grid-template-columns:1fr;}}
