/* ============================================================
   HOME-PAGE.CSS v3 — Sage Titans — Dark Editorial Intelligence
   ============================================================ */
@font-face{font-family:"SoraFallback";font-style:normal;font-weight:400 600;src:local("Arial");size-adjust:97%;ascent-override:95%;descent-override:25%;line-gap-override:0%}
@font-face{font-family:"SoraFallback";font-style:normal;font-weight:700;src:local("Arial Bold");size-adjust:96%;ascent-override:94%;descent-override:24%;line-gap-override:0%}
@font-face{font-family:"Sora";font-style:normal;font-weight:400;font-display:optional;src:url("/fonts/sora-v17-latin-regular.woff2") format("woff2")}
@font-face{font-family:"Sora";font-style:normal;font-weight:500;font-display:optional;src:url("/fonts/sora-v17-latin-500.woff2") format("woff2")}
@font-face{font-family:"Sora";font-style:normal;font-weight:600;font-display:optional;src:url("/fonts/sora-v17-latin-600.woff2") format("woff2")}
@font-face{font-family:"Sora";font-style:normal;font-weight:700;font-display:optional;src:url("/fonts/sora-v17-latin-700.woff2") format("woff2")}

/* ── BASE ── */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;font-family:"Sora","SoraFallback",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:16px;font-weight:400;line-height:1.5;color:rgba(0,0,0,0.87);
  background:#fff;overflow-x:hidden;padding-top:76px}
h1,h2,h3,h4,h5,h6{margin:0 0 .5rem;font-weight:500;line-height:1.2}
p{margin:0 0 1rem;line-height:1.7}
a{text-decoration:none;color:inherit}
img{max-width:100%;height:auto;border:none;display:block}
ul{list-style:none;padding:0;margin:0}
.container{width:100%;padding:0 24px;margin:0 auto;max-width:1360px}

/* ══ HERO ═══════════════════════════════════════════════════ */
.hp-hero{
  background:#050810;
  position:relative;overflow:hidden;
  min-height:100vh;display:flex;align-items:center;
  margin-top:-76px;padding-top:76px;
}
/* Animated grid */
.hp-hero-grid{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(67,56,202,0.15) 1px,transparent 1px),
    linear-gradient(90deg,rgba(67,56,202,0.15) 1px,transparent 1px);
  background-size:60px 60px;
  animation:gridShift 20s linear infinite;
}
@keyframes gridShift{0%{background-position:0 0}100%{background-position:60px 60px}}
/* Radial glows */
.hp-hero-glow1{
  position:absolute;width:700px;height:700px;border-radius:50%;
  background:radial-gradient(circle,rgba(67,56,202,0.35) 0%,transparent 70%);
  top:-200px;right:-100px;pointer-events:none;
  animation:glowPulse 8s ease-in-out infinite alternate;
}
.hp-hero-glow2{
  position:absolute;width:500px;height:500px;border-radius:50%;
  background:radial-gradient(circle,rgba(202,239,69,0.12) 0%,transparent 70%);
  bottom:-100px;left:10%;pointer-events:none;
  animation:glowPulse 10s ease-in-out infinite alternate-reverse;
}
@keyframes glowPulse{0%{transform:scale(1);opacity:0.6}100%{transform:scale(1.15);opacity:1}}
.hp-hero-inner{
  position:relative;z-index:2;
  max-width:1360px;margin:0 auto;padding:0 24px;
  display:grid;grid-template-columns:1fr 520px;
  gap:64px;align-items:center;width:100%;
}
/* Left content */
.hp-hero-tag{
  display:inline-flex;align-items:center;gap:8px;
  font-size:11px;font-weight:800;letter-spacing:0.18em;text-transform:uppercase;
  color:#caef45;margin-bottom:28px;
}
.hp-hero-tag-dot{width:6px;height:6px;border-radius:50%;background:#caef45;
  animation:tagPulse 2s ease-in-out infinite}
@keyframes tagPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.4;transform:scale(0.6)}}
.hp-hero h1{
  font-size:clamp(2.4rem,5vw,4rem);font-weight:700;color:#fff;
  line-height:1.08;letter-spacing:-0.03em;margin-bottom:24px;
}
.hp-hero h1 em{
  font-style:normal;
  background:linear-gradient(135deg,#caef45 0%,#a8d400 100%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.hp-hero-sub{
  font-size:16px;font-weight:300;color:rgba(255,255,255,0.65);
  line-height:1.8;max-width:520px;margin-bottom:36px;
}
.hp-hero-ctas{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-bottom:56px}
.hp-cta-primary{
  display:inline-flex;align-items:center;gap:10px;
  background:#caef45;color:#050810;font-size:15px;font-weight:700;
  padding:14px 28px;border-radius:50px;transition:background 0.2s,transform 0.15s;
  white-space:nowrap;
}
.hp-cta-primary:hover{background:#b8e020;transform:translateY(-2px);color:#050810}
.hp-cta-ghost{
  display:inline-flex;align-items:center;gap:8px;
  font-size:15px;font-weight:600;color:rgba(255,255,255,0.75);
  border:1px solid rgba(255,255,255,0.2);border-radius:50px;padding:13px 24px;
  transition:border-color 0.2s,color 0.2s;white-space:nowrap;
}
.hp-cta-ghost:hover{border-color:rgba(255,255,255,0.6);color:#fff}
/* Trust row */
.hp-trust-row{
  display:flex;align-items:center;gap:20px;flex-wrap:wrap;
  padding-top:20px;border-top:1px solid rgba(255,255,255,0.08);
}
.hp-trust-item{display:flex;align-items:center;gap:8px;font-size:12px;color:rgba(255,255,255,0.75)}
.hp-trust-item svg{width:14px;height:14px;color:rgba(255,255,255,0.75);flex-shrink:0}
.hp-trust-sep{width:3px;height:3px;border-radius:50%;background:rgba(255,255,255,0.75)}

/* Right: Live Dashboard */
.hp-dashboard{
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:24px;overflow:hidden;
  backdrop-filter:blur(10px);
}
.hp-dash-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 20px;background:rgba(255,255,255,0.04);
  border-bottom:1px solid rgba(255,255,255,0.06);
}
.hp-dash-dots{display:flex;gap:6px}
.hp-dash-dot{width:11px;height:11px;border-radius:50%}
.hp-dash-dot:nth-child(1){background:#ff5f57}
.hp-dash-dot:nth-child(2){background:#febc2e}
.hp-dash-dot:nth-child(3){background:#28c840}
.hp-dash-title{font-size:11px;font-weight:700;color:rgba(255,255,255,0.7);letter-spacing:0.06em;text-transform:uppercase}
.hp-dash-live{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:800;color:#4ade80;text-transform:uppercase;letter-spacing:0.1em}
.hp-dash-live-dot{width:6px;height:6px;border-radius:50%;background:#4ade80;animation:tagPulse 1.4s ease-in-out infinite}
/* KPI grid */
.hp-dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,0.06)}
.hp-dash-kpi{
  background:#050810;padding:36px 26px;
  display:flex;flex-direction:column;gap:8px;
  transition:background 0.25s;
}
.hp-dash-kpi:hover{background:rgba(67,56,202,0.12)}
.hp-dash-kpi-label{font-size:10px;font-weight:700;color:rgba(255,255,255,0.6);text-transform:uppercase;letter-spacing:0.1em}
.hp-dash-kpi-val{font-size:34px;font-weight:800;color:#fff;line-height:1;letter-spacing:-0.02em}
.hp-dash-kpi-val span{font-size:13px;font-weight:500;color:#4ade80;margin-left:6px}
.hp-dash-kpi-bar{height:3px;background:rgba(255,255,255,0.08);border-radius:99px;margin-top:14px;overflow:hidden}
.hp-dash-kpi-bar-fill{height:100%;border-radius:99px;animation:barGrow 2s cubic-bezier(0.4,0,0.2,1) forwards}
@keyframes barGrow{from{width:0}to{width:var(--w)}}
.hp-dash-kpi:nth-child(1) .hp-dash-kpi-bar-fill{background:#caef45;--w:78%}
.hp-dash-kpi:nth-child(2) .hp-dash-kpi-bar-fill{background:#818cf8;--w:92%}
.hp-dash-kpi:nth-child(3) .hp-dash-kpi-bar-fill{background:#34d399;--w:65%}
.hp-dash-kpi:nth-child(4) .hp-dash-kpi-bar-fill{background:#f472b6;--w:88%}
/* Ticker */
.hp-dash-ticker{
  padding:12px 20px;background:rgba(202,239,69,0.06);
  border-top:1px solid rgba(202,239,69,0.12);
  display:flex;align-items:center;gap:12px;overflow:hidden;
}
.hp-dash-ticker-label{font-size:9px;font-weight:800;color:#caef45;text-transform:uppercase;letter-spacing:0.12em;flex-shrink:0}
.hp-dash-ticker-track{display:flex;gap:32px;animation:tickerScroll 18s linear infinite;white-space:nowrap}
@keyframes tickerScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.hp-dash-ticker-item{font-size:11px;font-weight:500;color:rgba(255,255,255,0.5)}
.hp-dash-ticker-item strong{color:#caef45;font-weight:700}
/* Scroll hint */
.hp-scroll-hint{
  position:absolute;bottom:32px;left:50%;transform:translateX(-50%);
  display:flex;flex-direction:column;align-items:center;gap:8px;z-index:3;
  font-size:10px;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;
  color:rgba(255,255,255,0.8);
}
.hp-scroll-line{width:1px;height:40px;background:linear-gradient(180deg,rgba(255,255,255,0.75),transparent);animation:scrollLine 2s ease-in-out infinite}
@keyframes scrollLine{0%,100%{transform:scaleY(1);opacity:1}50%{transform:scaleY(0.5);opacity:0.3}}

/* Banner responsive */
@media(max-width:1100px){
  .hp-hero-inner{grid-template-columns:1fr;gap:48px;padding:80px 24px 60px}
  .hp-dashboard{max-width:480px;margin:0 auto}
  .hp-hero h1{font-size:clamp(2rem,6vw,3rem)}
}
@media(max-width:600px){
  .hp-hero h1{font-size:2rem}
  .hp-hero-inner{padding:60px 20px 80px;gap:32px}
  /* Show dashboard on mobile — compact 2-col KPI grid */
  .hp-dashboard{display:block;max-width:100%;margin:0 0 48px}
  .hp-dash-grid{grid-template-columns:1fr 1fr}
  .hp-dash-kpi{padding:20px 16px}
  .hp-dash-kpi-val{font-size:22px}
  .hp-dash-title{font-size:9px;letter-spacing:0.03em}
  .hp-dash-header{padding:10px 14px}
  .hp-dash-ticker{padding:8px 14px}
  .hp-dash-ticker-track{gap:20px}
  /* Scroll hint - more visible on mobile */
  .hp-scroll-hint{bottom:24px}
}

/* ══ PROOF STRIP ════════════════════════════════════════════ */
.proof-strip{background:#fff;border-top:1px solid #eaeaea;padding:32px 0}
.proof-container{max-width:1300px;margin:0 auto;padding:0 24px;
  display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
.proof-item{display:flex;align-items:flex-start;gap:14px}
.proof-icon{width:36px;height:36px;border-radius:8px;background:#eef2ff;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#4338ca}
.proof-item strong{display:block;font-size:14px;font-weight:700;color:#0a1628;margin-bottom:4px}
.proof-item p{font-size:13px;line-height:1.55;color:#64748b;margin:0}
@media(max-width:1024px){.proof-container{grid-template-columns:repeat(2,1fr);gap:24px}}
@media(max-width:600px){.proof-container{grid-template-columns:1fr}}

/* ══ NUMBERS BAND (dark) ════════════════════════════════════ */
.hp-numbers{
  background:#050810;padding:60px 0;
  border-top:1px solid rgba(67,56,202,0.2);
  border-bottom:1px solid rgba(67,56,202,0.2);
}
.hp-numbers-inner{
  max-width:1360px;margin:0 auto;padding:0 24px;
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;
}
.hp-num-item{
  text-align:center;padding:0 32px;
  border-right:1px solid rgba(255,255,255,0.07);
}
.hp-num-item:last-child{border-right:none}
.hp-num-val{font-size:clamp(2rem,4vw,3.2rem);font-weight:800;color:#fff;line-height:1;
  letter-spacing:-0.03em;margin-bottom:8px}
.hp-num-val em{font-style:normal;color:#caef45}
.hp-num-label{font-size:13px;font-weight:300;color:rgba(255,255,255,0.5);line-height:1.4}
@media(max-width:768px){.hp-numbers-inner{grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(255,255,255,0.07)}
  .hp-num-item{background:#050810;border-right:none;padding:32px 20px}}

/* ══ PARTNER LOGOS ══════════════════════════════════════════ */
/* ══ PARTNERS — Use sage-site-components.css base, only add homepage-specific overrides ══ */
.partnering-sec{padding:60px 0 !important;background:#fff !important;}
.hp-partner-wrap{max-width:1360px;margin:0 auto;padding:0 24px}
.hp-partner-label{font-size:16px;font-weight:800;letter-spacing:0.14em;text-transform:uppercase;
  color: #595959;text-align:center;margin-bottom:28px}
/* Override sage-site-components for modern card style */
.partnering-logos ul{gap:12px !important;}
.partnering-logos ul li{
  width:160px !important;
  height:100px !important;
  background:#fff !important;
  border:1px solid #e5e7eb !important;
  border-radius:12px !important;
  padding:16px !important;
  transition:box-shadow 0.2s,transform 0.2s,border-color 0.2s !important;
  margin-bottom:12px !important;
}
.partnering-logos ul li:hover{
  box-shadow:0 8px 24px rgba(0,0,0,0.07) !important;
  transform:translateY(-2px) !important;
  border-color:#c7d2fe !important;
}
.partnering-logos ul li img{
  max-width:90% !important;
  max-height:70px !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain !important;
  margin:0 auto !important;
}

/* ══ WHO WE HELP ════════════════════════════════════════════ */
.who-we-help{padding:30px 0;background:#fff}
.who-container{max-width:1360px;margin:0 auto;padding:0 24px}
.who-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.who-left{position:sticky;top:100px}
.who-eyebrow{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;
  text-transform:uppercase;letter-spacing:0.14em;color:#4338ca;margin-bottom:20px}
.who-eyebrow::before{content:'';width:20px;height:2px;background:#4338ca;border-radius:2px}
.who-header h2{font-size:clamp(1.8rem,3vw,2.6rem);font-weight:700;color:#050810;
  line-height:1.15;letter-spacing:-0.025em;margin-bottom:16px}
.who-header h2 strong{color:#4338ca}
.who-header p{font-size:16px;font-weight:300;color:#64748b;line-height:1.8;margin-bottom:32px}
.who-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.who-stat{
  padding:24px 20px;border-radius:16px;
  border:1px solid #e5e7eb;background:#f9fafb;
  transition:border-color 0.2s,box-shadow 0.2s;
}
.who-stat:hover{border-color:#4338ca;box-shadow:0 8px 24px rgba(67,56,202,0.1)}
.who-stat-number{font-size:2rem;font-weight:800;color:#050810;line-height:1;margin-bottom:4px;letter-spacing:-0.03em}
.who-stat-label{font-size:12px;font-weight:400;color: #596477;line-height:1.4}
/* Coloured stat accents */
.who-stat:nth-child(1) .who-stat-number{color:#4338ca}
.who-stat:nth-child(2) .who-stat-number{color:#4338ca}
.who-stat:nth-child(3) .who-stat-number{color:#4338ca}
.who-stat:nth-child(4) .who-stat-number{color:#4338ca}

/* Right: card stack */
.who-right{display:flex;flex-direction:column;gap:14px}
.who-card{
  padding:24px 26px;border:1px solid #e5e7eb;border-radius:16px;background:#fff;
  transition:border-color 0.2s,box-shadow 0.2s,transform 0.2s;
  border-left:3px solid transparent;
}
.who-card:hover{border-color:#e5e7eb;border-left-color:#4338ca;
  box-shadow:0 12px 32px rgba(67,56,202,0.08);transform:translateX(4px)}
.who-card h3{font-size:16px;font-weight:700;color:#0a1628;margin-bottom:6px}
.who-card p{font-size:16px;font-weight:300;color:#64748b;line-height:1.65;margin:0}
.who-not-for{
  display:flex;align-items:flex-start;gap:12px;
  padding:16px 20px;background:#fffbeb;border-radius:12px;
  border:1px solid #fde68a;font-size:13px;color:#78350f;line-height:1.6;
}
.who-not-for svg{flex-shrink:0;margin-top:1px}
.who-not-for strong{font-weight:700;color:#92400e}
.who-cta-row{display:flex;align-items:center;gap:16px;margin-top:20px;flex-wrap:wrap}
.who-cta-btn{display:inline-flex;align-items:center;gap:8px;background:#4338ca;color:#fff;
  font-size:14px;font-weight:700;padding:12px 22px;border-radius:50px;
  transition:background 0.2s,transform 0.15s}
.who-cta-btn:hover{background:#3730a3;color:#caef45;transform:translateY(-2px)}
.who-cta-note{font-size:12px;color: #596477;}
@media(max-width:1024px){
  .who-layout{grid-template-columns:1fr;gap:48px}
  .who-left{position:static}
  .who-stats{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:640px){.who-stats{grid-template-columns:repeat(2,1fr)}}

/* ══════════════════════════════════════════════════════════════
   SERVICES SECTION — Light Three-Column Card Layout
   Sage Titans — home-page.css addition
   ══════════════════════════════════════════════════════════════ */

/* ── SECTION WRAPPER ── */
.services-main {
  padding: 80px 0 !important;
  background: #f8fafc !important;
  border-bottom: none !important;
  position: relative;
  overflow: hidden;
}

/* Subtle top border accent */
.services-main::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, transparent, #4338ca, #caef45, #4338ca, transparent);
  pointer-events: none;
}

/* Remove old dark grid texture */
.services-main::after {
  display: none;
}

.services-outer {
  max-width: 1360px;
  margin: 0 auto;
  padding: 0 32px;
  position: relative;
  z-index: 1;
}

/* ── SECTION HEADER ── */
.services-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: #4338ca;
  margin-bottom: 16px;
}
.services-eyebrow::before {
  content: '';
  width: 20px;
  height: 2px;
  background: #4338ca;
  border-radius: 2px;
}

/* Scoped under .services-outer to beat sage-site-components specificity */
.services-outer .services-intro {
  margin-bottom: 52px !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 48px !important;
  align-items: end !important;
  width: 100% !important;
  max-width: none !important;
  text-align: left !important;
}

/* Kill the width:40% and other sage-site-components overrides on the heading */
.services-outer .services-intro h2,
.services-outer .services-intro h2#services-heading {
  font-size: clamp(2rem, 4vw, 3.2rem) !important;
  font-weight: 700 !important;
  color: #050810 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.03em !important;
  margin-bottom: 0 !important;
  width: auto !important;
  max-width: none !important;
  text-align: left !important;
}
.services-outer .services-intro h2 em {
  font-style: normal !important;
  color: #4338ca !important;
  -webkit-text-fill-color: #4338ca !important;
  background: none !important;
}

.services-outer .services-intro-left {
  width: auto !important;
  max-width: none !important;
}

.services-outer .services-intro-right {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 20px !important;
  width: auto !important;
}
.services-outer .services-intro p {
  font-size: 15px !important;
  font-weight: 300 !important;
  color: #64748b !important;
  line-height: 1.8 !important;
  margin: 0 !important;
  text-align: right !important;
  width: auto !important;
  max-width: none !important;
}

.svc-header-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  font-weight: 700;
  color: #4338ca;
  border: 1px solid #c7d2fe;
  border-radius: 50px;
  padding: 10px 20px;
  transition: all 0.2s;
  white-space: nowrap;
  background: #fff;
}
.svc-header-cta:hover {
  border-color: #4338ca;
  background: #eef2ff;
}

/* ══ THREE-COLUMN EQUAL CARD GRID ══ */
.services-outer .services-bento {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  grid-template-rows: auto !important;
  gap: 24px !important;
  align-items: stretch !important;
  width: 100% !important;
}

/* ── BASE CARD ── */
.svc-bento-card {
  background: #fff;
  border-radius: 20px;
  border: 1px solid #e2e8f0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  position: relative;
  transition:
    transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.28s cubic-bezier(0.22, 1, 0.36, 1),
    border-color 0.28s ease;
}

/* Remove old row spans so all three are equal */
.svc-bento-card--hero {
  grid-row: auto;
  min-height: unset;
  background: #fff;
}
.svc-bento-card--perf,
.svc-bento-card--prot {
  background: #fff;
}

/* ── HOVER: lift + color-tinted shadow per engine ── */
.svc-bento-card:hover {
  transform: translateY(-8px);
  border-color: transparent;
}
.svc-bento-card--hero:hover {
  box-shadow: 0 24px 56px rgba(245, 158, 11, 0.13), 0 4px 16px rgba(5, 8, 16, 0.06);
}
.svc-bento-card--perf:hover {
  box-shadow: 0 24px 56px rgba(59, 130, 246, 0.13), 0 4px 16px rgba(5, 8, 16, 0.06);
}
.svc-bento-card--prot:hover {
  box-shadow: 0 24px 56px rgba(124, 58, 237, 0.13), 0 4px 16px rgba(5, 8, 16, 0.06);
}

/* ── CARD INNER PADDING ── */
.svc-bento-inner {
  padding: 28px 26px 0;
  display: flex;
  flex-direction: column;
  flex: 1;
}

/* Override old hero padding */
.svc-bento-card--hero .svc-bento-inner,
.svc-bento-card--perf .svc-bento-inner,
.svc-bento-card--prot .svc-bento-inner {
  padding: 28px 26px 0;
}

/* ── ENGINE NUMBER — lighter, background watermark ── */
.svc-engine-num {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #cbd5e1;
  margin-bottom: 10px;
  display: block;
  position: static;
  top: auto;
  right: auto;
}

/* ── ENGINE PILL — prominent, bold brand identity ── */
.svc-engine-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 7px 14px;
  border-radius: 8px;
  margin-bottom: 20px;
  width: fit-content;
}
.svc-bento-card--hero .svc-engine-pill {
  background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
  color: #92400e;
  border: 1.5px solid #f59e0b;
  box-shadow: 0 2px 8px rgba(245,158,11,0.18);
}
.svc-bento-card--perf .svc-engine-pill {
  background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
  color: #1e3a8a;
  border: 1.5px solid #3b82f6;
  box-shadow: 0 2px 8px rgba(59,130,246,0.18);
}
.svc-bento-card--prot .svc-engine-pill {
  background: linear-gradient(135deg, #ede9fe 0%, #ddd6fe 100%);
  color: #4c1d95;
  border: 1.5px solid #7c3aed;
  box-shadow: 0 2px 8px rgba(124,58,237,0.18);
}

/* ── ENGINE ICON ── */
.svc-bento-icon {
  width: 46px;
  height: 46px;
  border-radius: 13px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  flex-shrink: 0;
}
.svc-bento-card--hero .svc-bento-icon {
  background: #fffbeb;
  border: 1px solid #fde68a;
  color: #f59e0b;
}
.svc-bento-card--perf .svc-bento-icon {
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  color: #3b82f6;
}
.svc-bento-card--prot .svc-bento-icon {
  background: #f5f3ff;
  border: 1px solid #ddd6fe;
  color: #7c3aed;
}
.svc-bento-icon svg {
  width: 22px;
  height: 22px;
}

/* ── ENGINE NAME ── */
.svc-bento-name {
  font-size: 17px;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.25;
  letter-spacing: -0.02em;
  margin-bottom: 10px;
}
.svc-bento-card--perf .svc-bento-name,
.svc-bento-card--prot .svc-bento-name {
  font-size: 17px;
}

/* ── DESCRIPTION ── */
.svc-bento-desc {
  font-size: 13px;
  font-weight: 300;
  color: #64748b;
  line-height: 1.7;
  margin-bottom: 20px;
}
.svc-bento-card--perf .svc-bento-desc,
.svc-bento-card--prot .svc-bento-desc {
  font-size: 13px;
  margin-bottom: 20px;
}

/* ── SERVICE LINKS — SVG icon rows ── */
.svc-bento-links {
  display: flex;
  flex-direction: column;
  gap: 0;
  flex: 1;
}
.svc-bento-link {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  font-weight: 500;
  color: #334155;
  padding: 9px 0;
  border-bottom: 1px solid #f1f5f9;
  text-decoration: none;
  transition: color 0.15s, gap 0.15s;
}
.svc-bento-link:last-child {
  border-bottom: none;
}
/* SVG icon wrapper inside each link */
.svc-link-icon {
  width: 28px;
  height: 28px;
  border-radius: 7px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.15s;
}
.svc-bento-link:hover .svc-link-icon {
  transform: scale(1.12);
}
.svc-bento-card--hero .svc-link-icon {
  background: #fffbeb;
  color: #d97706;
}
.svc-bento-card--perf .svc-link-icon {
  background: #eff6ff;
  color: #2563eb;
}
.svc-bento-card--prot .svc-link-icon {
  background: #f5f3ff;
  color: #7c3aed;
}
.svc-link-icon svg {
  width: 14px;
  height: 14px;
}
.svc-bento-card--hero .svc-bento-link:hover { color: #d97706; gap: 12px; }
.svc-bento-card--perf .svc-bento-link:hover { color: #2563eb; gap: 12px; }
.svc-bento-card--prot .svc-bento-link:hover { color: #7c3aed; gap: 12px; }

/* Remove old pseudo-element bullet — replaced by .svc-link-icon in HTML */
.svc-bento-link::before { display: none; }

/* ── DIVIDER ── */
.svc-divider-line {
  height: 1px;
  background: #f1f5f9;
  margin: 20px 26px 0;
}

/* ── METRIC STRIP — dark standout band ── */
.svc-metric-strip {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  background: rgba(5,8,16,0.06);
  margin-top: 20px;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 0;
  padding: 0;
  border-radius: 0;
  backdrop-filter: none;
  border-top: 2px solid rgba(5,8,16,0.08);
}
.svc-bento-card--hero .svc-metric-strip   { background: rgba(245,158,11,0.07); border-top-color: rgba(245,158,11,0.2); }
.svc-bento-card--perf .svc-metric-strip   { background: rgba(59,130,246,0.07); border-top-color: rgba(59,130,246,0.2); }
.svc-bento-card--prot .svc-metric-strip   { background: rgba(124,58,237,0.07); border-top-color: rgba(124,58,237,0.2); }

.svc-metric {
  background: transparent;
  padding: 16px 18px;
  display: flex;
  flex-direction: column;
  gap: 3px;
  border-right: none;
  border: none;
  flex: unset;
  transition: background 0.2s;
  position: relative;
}
/* Subtle inner separator */
.svc-metric:nth-child(1),
.svc-metric:nth-child(3) {
  border-right: 1px solid rgba(5,8,16,0.06);
}
.svc-bento-card:hover .svc-metric { background: rgba(255,255,255,0.5); }
.svc-metric:only-child { grid-column: span 2; }

.svc-metric-val {
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1;
}
.svc-metric-lbl {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.03em;
  color: #64748b;
  line-height: 1.35;
  margin-top: 2px;
  text-transform: uppercase;
}

/* Metric value colors per engine */
.svc-bento-card--hero .svc-metric-val   { color: #b45309; }
.svc-bento-card--perf .svc-metric-val   { color: #1d4ed8; }
.svc-bento-card--prot .svc-metric-val   { color: #6d28d9; }

.svc-bento-card--perf .svc-metric-val,
.svc-bento-card--prot .svc-metric-val { font-size: 22px; }

/* ── CTA ROW ── */
.svc-bento-cta-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 26px;
  background: #fff;
  gap: 12px;
  margin-top: 0;
  border-top: 1px solid #f1f5f9;
}

.svc-bento-cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  padding: 10px 18px;
  border-radius: 50px;
  transition: all 0.18s;
  white-space: nowrap;
  text-decoration: none;
  box-shadow: none;
}

/* Override per-engine CTA colors for light theme */
.svc-bento-card--hero .svc-bento-cta {
  background: #050810;
  color: #caef45;
  border: none;
  box-shadow: none;
}
.svc-bento-card--hero .svc-bento-cta:hover {
  background: #1e293b;
  color: #caef45;
  transform: none;
  box-shadow: none;
  gap: 10px;
}

.svc-bento-card--perf .svc-bento-cta {
  background: #050810;
  color: #93c5fd;
  border: none;
  box-shadow: none;
}
.svc-bento-card--perf .svc-bento-cta:hover {
  background: #1e293b;
  color: #93c5fd;
  transform: none;
  gap: 10px;
}

.svc-bento-card--prot .svc-bento-cta {
  background: #050810;
  color: #c4b5fd;
  border: none;
  box-shadow: none;
}
.svc-bento-card--prot .svc-bento-cta:hover {
  background: #1e293b;
  color: #c4b5fd;
  transform: none;
  gap: 10px;
}

.svc-bento-ghost {
  font-size: 12px;
  font-weight: 600;
  color: #94a3b8;
  text-decoration: none;
  transition: color 0.15s;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}
.svc-bento-ghost:hover {
  color: #4338ca;
}

/* ── EXPLORE ALL CTA ── */
.explore-cta {
  text-align: center;
  margin-top: 40px !important;
}
.arw-btn-wht {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #fff;
  color: #050810;
  padding: 14px 32px;
  border-radius: 50px;
  font-size: 14px;
  font-weight: 600;
  border: 1.5px solid #e2e8f0;
  transition: all 0.25s;
  text-decoration: none;
}
.arw-btn-wht:hover {
  border-color: #4338ca;
  color: #4338ca;
  box-shadow: 0 4px 16px rgba(67, 56, 202, 0.1);
}

/* ══ RESPONSIVE ══════════════════════════════════════════════ */
@media (max-width: 1100px) {
  .services-outer .services-bento {
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: auto !important;
  }
  .svc-bento-card--prot {
    grid-column: span 2;
  }
}

@media (max-width: 768px) {
  .services-outer .services-bento {
    grid-template-columns: 1fr !important;
  }
  .svc-bento-card--prot {
    grid-column: auto;
  }
  .services-outer .services-intro {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
  .services-outer .services-intro-right {
    align-items: flex-start !important;
  }
  .services-outer .services-intro p {
    text-align: left !important;
  }
  .services-main {
    padding: 64px 0 !important;
  }
}

@media (max-width: 480px) {
  .services-outer {
    padding: 0 16px;
  }
  .svc-bento-cta-wrap {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
}



/* ══ KPI — Full dark redesign ═══════════════════════════════ */
.kpi-section-wrap{
  padding:100px 0;
  background:
    radial-gradient(circle at 20% 50%,rgba(124,58,237,0.25) 0%,transparent 45%),
    radial-gradient(circle at 80% 30%,rgba(67,56,202,0.28) 0%,transparent 45%),
    linear-gradient(150deg,#020612 0%,#060d1a 55%,#020612 100%);
  position:relative;overflow:hidden;
}
.kpi-section-wrap::before{
  content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(202,239,69,0.3),transparent);
}
.kpi-head{margin-bottom:56px}
.kpi-eyebrow{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;
  text-transform:uppercase;letter-spacing:0.14em;color:#caef45;margin-bottom:16px}
.kpi-eyebrow::before{content:'';width:20px;height:2px;background:#caef45;border-radius:2px}
.kpi-head h2{font-size:clamp(1.8rem,3vw,2.4rem);font-weight:700;color:#fff;
  letter-spacing:-0.025em;line-height:1.2;margin-bottom:12px}
.kpi-head p{font-size:15px;font-weight:300;color:rgba(255,255,255,0.6);line-height:1.75;max-width:580px}
.kpi-tabs-wrap{display:grid;grid-template-columns:260px 1fr;gap:24px}

/* ── Left nav ── */
.kpi-nav{display:flex;flex-direction:column;gap:6px}
.kpi-nav-btn{
  display:flex;align-items:center;gap:12px;
  padding:14px 16px;border-radius:12px;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.07);
  cursor:pointer;text-align:left;width:100%;
  transition:background 0.2s,border-color 0.2s;
}
.kpi-nav-btn:hover{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.14)}
.kpi-nav-btn.active{
  background:rgba(202,239,69,0.1);
  border-color:rgba(202,239,69,0.35);
}
.kpi-nav-icon{
  width:36px;height:36px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,0.06);flex-shrink:0;transition:background 0.2s;
}
.kpi-nav-btn.active .kpi-nav-icon{background:rgba(202,239,69,0.2)}
.kpi-nav-icon svg{width:17px;height:17px;color:rgba(255,255,255,0.5)}
.kpi-nav-btn.active .kpi-nav-icon svg{color:#caef45}
.kpi-nav-label{font-size:14px;font-weight:600;color:rgba(255,255,255,0.55);transition:color 0.2s}
.kpi-nav-btn.active .kpi-nav-label{color:#fff}

/* ── Right panels ── */
.kpi-panels{position:relative}
.kpi-panel{display:none;animation:kpiFade 0.3s ease}
.kpi-panel.active{display:grid;grid-template-columns:1fr 300px;gap:24px;align-items:start}
@keyframes kpiFade{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:translateX(0)}}

/* Glass content card */
.kpi-panel-content{
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:20px;padding:44px;
}
.kpi-panel-tag{
  display:inline-flex;align-items:center;gap:6px;
  font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:0.14em;
  color:#caef45;background:rgba(202,239,69,0.1);border:1px solid rgba(202,239,69,0.2);
  border-radius:50px;padding:4px 12px;margin-bottom:18px;
}
.kpi-panel-content h3{font-size:clamp(1.2rem,2vw,1.65rem);font-weight:700;color:#fff;
  line-height:1.3;margin-bottom:14px;letter-spacing:-0.01em}
.kpi-panel-content p{font-size:14.5px;font-weight:300;
  color:rgba(255,255,255,0.65);line-height:1.8;margin-bottom:24px}
.kpi-benefits-new{list-style:none;padding:0;margin:0 0 28px;
  display:flex;flex-direction:column;gap:10px}
.kpi-benefits-new li{display:flex;align-items:flex-start;gap:10px;
  font-size:13.5px;font-weight:400;color:rgba(255,255,255,0.82);line-height:1.55}
.kpi-benefits-new li::before{
  content:'';width:18px;height:18px;border-radius:50%;flex-shrink:0;margin-top:1px;
  background:rgba(202,239,69,0.12);
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 12l3.5 3.5L17 9' stroke='%23caef45' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E");
  background-size:12px;background-position:center;background-repeat:no-repeat;
}
.kpi-panel-cta{display:inline-flex;align-items:center;gap:8px;background:#caef45;color:#020c1b;
  font-size:13.5px;font-weight:700;padding:12px 22px;border-radius:50px;
  transition:background 0.2s,transform 0.15s}
.kpi-panel-cta:hover{background:#b8e020;transform:translateY(-2px);color:#000}

/* Stats visual panel */
.kpi-panel-visual{
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  border-radius:20px;padding:28px;
  display:flex;flex-direction:column;gap:14px;
}
.kpi-visual-stat{
  background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.08);
  border-radius:12px;padding:16px 18px;
  display:flex;align-items:center;gap:14px;
  transition:background 0.2s;
}
.kpi-visual-stat:hover{background:rgba(255,255,255,0.09)}
.kpi-visual-stat-val{font-size:22px;font-weight:800;color:#caef45;line-height:1;flex-shrink:0;min-width:64px}
.kpi-visual-stat-lbl{font-size:12px;font-weight:300;color:rgba(255,255,255,0.65);line-height:1.4}

@media(max-width:1000px){
  .kpi-tabs-wrap{grid-template-columns:1fr;position:relative;}
  
  /* Persistent swipe indicator above tabs */
  .kpi-tabs-wrap::before{
    content:'← Swipe for More →';
    display:block;
    text-align:center;
    font-size:11px;
    font-weight:700;
    letter-spacing:0.1em;
    text-transform:uppercase;
    color:#caef45;
    padding:8px 0 16px;
    animation:swipePulse 2s ease-in-out infinite;
  }
  @keyframes swipePulse{
    0%, 100%{opacity:0.7;transform:scale(1)}
    50%{opacity:1;transform:scale(1.05)}
  }
  
  .kpi-nav{
    flex-direction:row;
    overflow-x:auto;
    gap:8px;
    padding-bottom:12px;
    position:relative;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    -ms-overflow-style:none;
  }
  .kpi-nav::-webkit-scrollbar{display:none}
  
  /* Edge fade gradient on right */
  .kpi-nav::after{
    content:'';
    position:absolute;
    right:0;
    top:0;
    bottom:12px;
    width:60px;
    background:linear-gradient(90deg, transparent 0%, rgba(2,6,18,0.95) 85%);
    pointer-events:none;
    z-index:2;
  }
  
  .kpi-nav-btn{
    flex-shrink:0;
    scroll-snap-align:start;
  }
  .kpi-nav-label{font-size:12px;white-space:nowrap}
  .kpi-panel.active{grid-template-columns:1fr}
  .kpi-panel-visual{display:none}
  .kpi-section-wrap{padding:64px 0}
}

@media(max-width:600px){
  .kpi-nav-icon{display:none}
  .kpi-nav-btn{padding:10px 12px}
  .kpi-panel-content{padding:28px 24px}
  /* Make swipe text more prominent on small screens */
  .kpi-tabs-wrap::before{
    font-size:12px;
    padding:10px 0 18px;
  }
}

/* ══ CLIENTS ════════════════════════════════════════════════ */
.clients-section{padding:80px 0;background:#f9fafb}
.clients-cta{background:#caef45;color:#050810;font-weight:700;border-radius:50px;
  padding:13px 28px;font-size:14px;display:inline-flex;align-items:center;
  transition:background 0.2s,transform 0.15s}
.clients-cta:hover{background:#b8e020;transform:translateY(-2px)}
.clients-metrics strong{color:#4338ca}
.clients-inner{max-width:1320px;margin:0 auto;padding:0 24px;
  display:grid;grid-template-columns:0.9fr 1.6fr;gap:60px;align-items:center}
@media(max-width:900px){.clients-inner{grid-template-columns:1fr}}

/* ══ CASE STUDIES ════════════════════════════════════════════ */
.cs-outer{padding:80px 0;background:#fff}
.cs-outer{padding:80px 0;background:#f8fafc}
.cs-main-sec{
  background:#fff !important;border:1px solid #e5e7eb;
  padding:48px !important;border-radius:24px !important;position:relative;
}
.cs-head-sec{display:flex;align-items:flex-end;justify-content:space-between;
  gap:32px;margin-bottom:40px;flex-wrap:wrap}
.cs-heading h2{font-size:clamp(1.5rem,2.5vw,2rem);font-weight:700;color:#050810 !important;
  margin-bottom:10px;letter-spacing:-0.02em}
.cs-heading p{font-size:14px;font-weight:300;color:#64748b !important;line-height:1.7;margin:0;max-width:500px}
.cs-cta .arw-btn-wht{border-color:#050810;color:#050810;background:transparent !important}
.cs-cta .arw-btn-wht:hover{background:#050810 !important;color:#fff !important}
.cs-card-sec{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;position:relative;z-index:1}
.cs-sec-card{background:#fff;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;
  transition:transform 0.25s,box-shadow 0.25s;position:relative}
.cs-sec-card:hover{transform:translateY(-6px);box-shadow:0 28px 64px rgba(0,0,0,0.3)}
.cs-card-inner{display:flex;flex-direction:column;height:100%}
.cs-badge{position:absolute;top:14px;left:14px;background:#caef45;color:#050810;
  font-size:10px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;
  padding:5px 12px;border-radius:50px;z-index:1;white-space:nowrap}
.cs-sec-card img{width:100%;height:175px;object-fit:cover;display:block}
.cs-card-body{padding:22px;display:flex;flex-direction:column;flex:1}
.cs-sec-card h3{font-size:15px;font-weight:700;color:#0a1628;margin-bottom:4px;line-height:1.35}
.cs-context{font-size:10.5px;font-weight:700;color:#4338ca;margin-bottom:14px;text-transform:uppercase;letter-spacing:0.08em}
.cs-highlights{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;flex:1}
.cs-highlights li{display:flex;align-items:baseline;gap:8px;font-size:12.5px;font-weight:300;color:#374151;line-height:1.5}
.cs-highlights li strong{font-weight:800;color:#4338ca;font-size:13.5px;flex-shrink:0}
.cs-head-link{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;
  color:#4338ca;border:1px solid #e0e7ff;border-radius:50px;padding:8px 14px;
  transition:all 0.2s;margin-top:auto;width:fit-content}
.cs-head-link:hover{color:#fff;background:#4338ca;border-color:#4338ca;gap:10px}
@media(max-width:900px){.cs-card-sec{grid-template-columns:1fr};.cs-main-sec{padding:28px 20px};.cs-head-sec{flex-direction:column}}
@media(max-width:600px){.cs-outer{padding:48px 0}}

/* ══ TESTIMONIALS ════════════════════════════════════════════ */
.section-head-center h2{font-size:clamp(1.4rem,2.2vw,1.9rem);font-weight:700;color:#050810;text-align:center}
.section-head-center h2 span{color:#4338ca;font-size:inherit;display:inline;font-style:italic}
.section{padding:clamp(48px,6vw,80px) 0}
.section-body{background:#f0f4ff;padding:32px 0;margin-top:32px;border-radius:28px;overflow:visible}

/* ══ CTA BAND ═════════════════════════════ */

.hp-analytics-cta{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,#0b1f3a 0%,#1a3a6e 40%,#0b1f3a 100%);
  border-radius:24px;
  padding:64px 56px;
  margin:0 0 80px;
  border:1px solid rgba(41,171,226,0.20);
}

.hp-analytics-cta::before{
  content:'';
  position:absolute;
  top:-80px;
  right:-80px;
  width:400px;
  height:400px;
  background:radial-gradient(circle,rgba(41,171,226,0.15) 0%,transparent 65%);
  pointer-events:none;
}

.hp-analytics-cta::after{
  content:'';
  position:absolute;
  bottom:28px;
  left:56px;
  width:80px;
  height:3px;
  background:linear-gradient(90deg,#29abe2,#caef45);
  border-radius:3px;
}

.hp-analytics-eyebrow{
  display:block;
  font-size:11px;
  font-weight:800;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:#caef45;
  margin-bottom:12px;
}

.hp-analytics-cta h2{
  font-size:clamp(1.5rem,2.4vw,2rem);
  font-weight:700;
  color:#fff;
  line-height:1.3;
  margin:0 0 16px;
}

.hp-analytics-cta h2 span{
  color:#caef45;
}

.hp-analytics-sub{
  font-size:15px;
  font-weight:300;
  color:rgba(255,255,255,0.72);
  line-height:1.8;
  margin-bottom:24px;
  max-width:680px;
}

.hp-analytics-stats{
  display:flex;
  gap:28px;
  flex-wrap:wrap;
}

.hp-analytics-stat-val{
  font-size:20px;
  font-weight:800;
  color:#fff;
  line-height:1;
}

.hp-analytics-stat-lbl{
  font-size:11px;
  color:rgba(255,255,255,0.55);
  margin-top:4px;
}

.hp-analytics-btns{
  display:flex;
  flex-direction:column;
  gap:12px;
  align-items:center;
  min-width:220px;
  position:relative;
  z-index:1;
}

.hp-analytics-note{
  font-size:11px;
  color:rgba(255,255,255,0.55);
  text-align:center;
}

@media(max-width:1024px){
  .hp-analytics-cta{
    padding:44px 36px;
  }
}

@media(max-width:768px){
  .hp-analytics-cta{
    padding:36px 24px;
    border-radius:18px;
  }

  .hp-analytics-cta::after{
    left:24px;
  }

  .hp-analytics-btns{
    margin-top:24px;
    min-width:100%;
  }
  
  /* Stack CTA grid vertically on mobile */
  .hp-analytics-cta > div[style*="grid-template-columns"]{
    grid-template-columns:1fr !important;
    gap:32px !important;
  }
}
/* ══ THOUGHT LEADERSHIP ══════════════════════════════════════ */
.thought-leadership-sec{background:#f9fafb;padding:80px 0}
.post-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:40px}
.thought-post{background:#fff;border:1px solid #e5e7eb;border-radius:16px;overflow:hidden;
  transition:box-shadow 0.25s,transform 0.25s}
.thought-post:hover{box-shadow:0 16px 48px rgba(0,0,0,0.08);transform:translateY(-4px)}
.thought-post-link{display:flex;flex-direction:column;height:100%;color:inherit}
.thought-post-image{width:100%;height:155px;object-fit:cover;display:block}
.thought-post-title{font-size:14px;font-weight:700;color:#0a1628;padding:14px 16px 6px;line-height:1.45;margin:0;min-height:52px}
.thought-post-excerpt{font-size:12.5px;font-weight:300;color:#64748b;line-height:1.6;padding:0 16px 16px;margin:0}
@media(max-width:1024px){.post-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.post-grid{grid-template-columns:1fr};.thought-leadership-sec{padding:48px 0}}

/* ══ FOOTER TOUCH ════════════════════════════════════════════ */
@media(max-width:767px){
  .copyright-sec ul{display:flex;flex-wrap:wrap;gap:4px}
  .copyright-sec ul li{display:block}
  .copyright-sec ul li a{display:inline-flex;align-items:center;min-height:48px;padding:12px 16px!important;font-size:14px}
}

/* Home page footer phone number fix */
@media(max-width:480px){
  body .footer-cont-phn a{white-space:nowrap !important;font-size:13px !important}
}

/* ══ STATS PANEL — override sage-site-components span constraints ══ */
.services-outer .svc-stats-panel,
.services-outer .svc-stats-panel *{
  width:auto !important;max-width:none !important;min-width:0 !important;
}
.services-outer .svc-stats-label{
  display:block !important;width:100% !important;overflow:visible !important;
  white-space:normal !important;
}
.services-outer .svc-stat-row{
  display:flex !important;width:100% !important;box-sizing:border-box !important;
}
.services-outer .svc-stat-val{
  font-size:22px !important;font-weight:800 !important;color:#caef45 !important;
  flex-shrink:0 !important;min-width:70px !important;width:auto !important;
}
.services-outer .svc-stat-desc{
  flex:1 !important;min-width:0 !important;width:auto !important;
  font-size:12.5px !important;color:rgba(255,255,255,0.7) !important;
  white-space:normal !important;overflow:visible !important;
}
