/* ================================================================
   VALUECAST HOMEPAGE – valuecast.css
   Header styles are in header.css — DO NOT add header CSS here.
   ================================================================ */

:root {
  --vc-blue: #1A38F0;
  --vc-blue-dark: #1228CC;
  --vc-white: #ffffff;
  --vc-off-white: #F4F6FB;
  --vc-light-gray: #E8EBF4;
  --vc-mid-gray: #9099B0;
  --vc-dark: #0A0E1A;
  --vc-text: #1C2340;
  --vc-text-light: #4A5270;
}

.vc-page * {
  box-sizing: border-box;
}

.vc-page {
  overflow-x: hidden;
}

.vc-container {
  max-width: 1200px;
  padding: 0 48px;
}

/* ══════════════════════════════════════════════════════════════
   HERO
   ══════════════════════════════════════════════════════════════ */
.vc-hero {
  position: relative;
  width: 100%;
  height: 100vh;
  min-height: 680px;
  max-height: 1100px;
  display: flex;
  align-items: center;
  overflow: hidden;
}

.vc-hero .vc-hero-bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
  z-index: 0;
}

.vc-hero .vc-hero-bg video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.8) saturate(1.1);
}

.vc-hero .vc-hero-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.vc-hero .vc-hero-content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 20px;
  max-width: 100%;
  padding-top: 50px;
}

.vc-hero-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  animation: vcFadeUp 0.6s 0.2s both;
}

.vc-hero-kicker-dot {
  width: 8px;
  height: 8px;
  background: var(--vc-blue);
  flex-shrink: 0;
}

.vc-hero-eyebrow {
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
  color: #ffffff;
  display: block;
  line-height: 1.2;
}

.vc-hero h1 {
  font-family: 'Outfit', system-ui, sans-serif !important;
  font-size: clamp(44px, 6vw, 72px) !important;
  font-weight: 400 !important;
  line-height: 1.1 !important;
  color: #fff !important;
  margin: 0 !important;
  animation: vcFadeUp 0.7s 0.35s both;
}

.vc-hero h1 em {
  font-weight: 300 !important;
  font-style: italic !important;
  color: rgba(255, 255, 255, 0.82) !important;
}

.vc-hero h1.building-the-future-container {
  width: auto;
  position: relative;
  line-height: 1.1;
  color: #fff;
  text-align: left;
  display: inline-block;
  font-size: clamp(44px, 6vw, 72px);
  font-weight: 400;
  letter-spacing: 0;
  font-family: 'Outfit', system-ui, sans-serif;
  white-space: nowrap;
}

.vc-hero h1.building-the-future-container .vc-hero-title-main { font-weight: 700; }

.vc-hero h1.building-the-future-container .vc-hero-title-sub {
  display: inline-block;
  font-size: clamp(34px, 4.4vw, 52px);
  line-height: 1.1;
  font-weight: 400;
  color: #ffffff;
}

.vc-hero-sub {
  font-size: 15px;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.62);
  max-width: 460px;
  margin: 0;
  animation: vcFadeUp 0.6s 0.5s both;
}

.vc-hero-actions {
  display: flex;
  gap: 32px;
  align-items: center;
  flex-wrap: wrap;
  animation: vcFadeUp 0.6s 0.65s both;
}

.vc-hero-actions .vc-btn-p {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 54px;
  padding: 4px 8px 4px 32px;
  gap: 16px;
  background: #0446F2;
  color: #fff !important;
  border-radius: 120px;
  font-family: 'Outfit', sans-serif;
  font-size: 16px;
  font-weight: 500;
  text-transform: uppercase;
  text-decoration: none !important;
  letter-spacing: 0.02em;
  line-height: 1.2;
  transition: background 0.2s, transform 0.15s;
}

.vc-hero-actions .vc-btn-p:hover {
  background: #0339cc;
  transform: translateY(-1px);
}

.vc-hero-actions .vc-btn-p .vc-ico {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 1.5px solid rgba(255,255,255,0.4);
  background: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.vc-hero-actions .vc-btn-s {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 16px 32px;
  gap: 4px;
  background: transparent;
  color: #fff !important;
  border: 1px solid #ffffff;
  border-radius: 120px;
  font-family: 'Outfit', sans-serif;
  font-size: 16px;
  font-weight: 500;
  text-transform: uppercase;
  text-decoration: none !important;
  letter-spacing: 0.02em;
  line-height: 1.2;
  backdrop-filter: none;
  transition: background 0.2s, color 0.2s;
}

.vc-hero-actions .vc-btn-s:hover { background: rgba(255,255,255,0.15); }
.vc-hero-actions .vc-btn-s .vc-ico { display: none; }

.vc-hero-fade {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 80px;
  z-index: 3;
  pointer-events: none;
}

.vc-home-strip-image { width: 100%; line-height: 0; position: relative; z-index: 2; }

.vc-home-strip-image .vc-home-strip-image__img {
  width: 100%;
  height: auto;
  display: block;
  max-width: none;
  opacity: 1;
  visibility: visible;
}

/* ── HERO RESPONSIVE ─────────────────────────────────────────── */
@media (max-width: 1024px) {
  .vc-hero .vc-hero-content { width: 100%; padding-top: 100px; }
  .vc-hero-actions { gap: 20px; }
}

@media (max-width: 768px) {
  .vc-hero { min-height: 600px; height: 60svh; }
  .vc-hero .vc-hero-content { padding-top: 100px; gap: 16px; }
  .vc-hero h1.building-the-future-container { font-size: clamp(36px, 8vw, 52px); }
  .vc-hero h1.building-the-future-container .vc-hero-title-sub { font-size: clamp(28px, 6vw, 40px); }
  .vc-hero-sub { font-size: 14px; max-width: 100%; }
  .vc-hero-actions { gap: 16px; flex-direction: row; }
  .vc-hero-actions .vc-btn-p,
  .vc-hero-actions .vc-btn-s { font-size: 14px; }
  .vc-hero-actions .vc-btn-p { height: 48px; padding: 4px 6px 4px 24px; gap: 12px; }
  .vc-hero-actions .vc-btn-p .vc-ico { width: 34px; height: 34px; }
  .vc-hero-actions .vc-btn-s { padding: 12px 24px; }
}

@media (max-width: 480px) {
  .vc-hero { min-height: 560px; }
  .vc-hero .vc-hero-content { padding-top: 90px; gap: 14px; }
  .vc-hero h1.building-the-future-container { font-size: clamp(30px, 9vw, 44px); }
  .vc-hero h1.building-the-future-container .vc-hero-title-sub { font-size: clamp(24px, 7vw, 34px); }
  .vc-hero-eyebrow { font-size: 12px; }
  .vc-hero-sub { font-size: 13px; }
  .vc-hero-actions { flex-direction: column; align-items: stretch; gap: 12px; width: 100%; }
  .vc-hero-actions .vc-btn-p,
  .vc-hero-actions .vc-btn-s { width: 100%; justify-content: center; text-align: center; font-size: 14px; }
  .vc-hero-actions .vc-btn-p { height: 48px; padding: 4px 6px 4px 20px; }
  .vc-hero-actions .vc-btn-s { padding: 14px 24px; }
}

.vc-hero-arrow {
  position: absolute;
  bottom: -65px;
  left: -100px;
  z-index: 4;
  transform: rotate(0deg);
  pointer-events: none;
  opacity: 0.95;
}

.vc-hero-arrow svg { width: 550px; height: 170px; display: block; }

.vc-hero-arrow{
    opacity: 1 !important;
    filter: none !important;
    mix-blend-mode: normal !important;
}

@media (max-width: 1024px) {
  .vc-hero-arrow { bottom: -220px; left: -120px; }
  .vc-hero-arrow svg { width: 350px; height: 100px; }
}
@media (max-width: 768px) {
  .vc-hero-arrow { bottom: -180px; left: -140px; }
  .vc-hero-arrow svg { width: 280px; height: 80px; }
}
@media (max-width: 480px) {
  .vc-hero-arrow { bottom: -150px; left: -150px; }
  .vc-hero-arrow svg { width: 220px; height: 65px; }
}

/* ══════════════════════════════════════════════════════════════
   BUTTONS
   ══════════════════════════════════════════════════════════════ */
.vc-btn-p {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--vc-blue);
  color: #fff !important;
  padding: 13px 28px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none !important;
  transition: background 0.2s, transform 0.15s;
}

.vc-btn-p:hover { background: var(--vc-blue-dark); transform: translateY(-1px); }

.vc-btn-s {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255, 255, 255, 0.1);
  color: #fff !important;
  padding: 13px 28px;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  font-size: 14px;
  font-weight: 600;
  text-decoration: none !important;
  backdrop-filter: blur(8px);
  transition: background 0.2s;
}

.vc-btn-s:hover { background: rgba(255, 255, 255, 0.2); }

.vc-btn-o {
  display: inline-flex;
  height: 54px;
  padding: 4px 8px 4px 32px;
  justify-content: center;
  align-items: center;
  gap: 16px;
  color: var(--Ice-White, #FFF);
  font-family: Outfit;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 120%;
  text-transform: uppercase;
  border-radius: 120px;
  background: var(--Electric-Blue, #0446F2);
}

.vc-btn-o:hover { background: var(--vc-blue); color: #fff; }

.vc-btn-w {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #fff;
  color: var(--vc-blue);
  padding: 14px 32px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  transition: transform 0.15s, box-shadow 0.15s;
}

.vc-btn-w:hover { transform: translateY(-2px); box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15); color: var(--vc-blue); }

.vc-ico {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.vc-ico-b {
  display: flex;
  width: 38px;
  height: 38px;
  padding: 8px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  aspect-ratio: 1/1;
  border-radius: 72px;
  border: 1.5px solid var(--Ice-White, #FFF);
}

/* ══════════════════════════════════════════════════════════════
   SECTION LABEL
   ══════════════════════════════════════════════════════════════ */
.vc-lbl {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--vc-blue);
  margin-bottom: 16px;
  display: block;
}

.vc-lbl::before { content: '◆ '; }

/* ══════════════════════════════════════════════════════════════
   WHAT WE DO (Pyramid)
   ══════════════════════════════════════════════════════════════ */
.vc-wwd { background: #fff; }

.wwd-section {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 0;
  max-width: 1160px;
  width: 100%;
  margin: 0 auto;
}

.pyramid-side {
  position: relative;
  padding: 40px 20px 40px 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.pyramid-svg-container { width: 100%; max-width: 540px; }
.pyramid-svg-container svg { width: 100%; height: auto; display: block; overflow: visible; }

.wwd-section .text-side {
  padding: 40px 20px 40px 60px;
  position: relative;
}

.wwd-section .text-side::after {
  content: '';
  position: absolute;
  bottom: -20px;
  right: -20px;
  width: 200px;
  height: 160px;
  background: #EEF0FA;
  border-radius: 4px;
  z-index: 0;
  clip-path: polygon(30% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.what-label { display: flex; align-items: center; gap: 8px; margin-bottom: 24px; }
.what-label .bar { width: 14px; height: 14px; background: var(--vc-blue); flex-shrink: 0; }
.what-label span { font-size: 11px; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: var(--vc-text); }

.wwd-section .text-side h2 {
  font-family: 'Inter', sans-serif;
  font-size: clamp(34px, 4vw, 52px);
  font-weight: 700;
  line-height: 1.1;
  color: #0D0F1A;
  margin-bottom: 28px;
  letter-spacing: -0.02em;
  position: relative;
  z-index: 1;
}

.wwd-section .text-side p {
  font-size: 16px;
  line-height: 1.7;
  color: var(--vc-text-light);
  max-width: 420px;
  position: relative;
  z-index: 1;
}

.transforming-the-middle { width: 100%; position: relative; font-size: 52px; line-height: 110%; font-family: 'Outfit', system-ui, sans-serif; color: #00051a; text-align: left; display: inline-block; }
.we-invest-in { width: 100%; position: relative; font-size: 20px; line-height: 140%; font-family: 'Inter', system-ui, sans-serif; color: #00051a; text-align: left; display: inline-block; opacity: 0.84; }

.vc-wwd .vc-wwd-home-head { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 36px; }
.vc-wwd .vc-wwd-home-head .bar { width: 8px; height: 8px; background: var(--vc-blue); }
.vc-wwd .vc-wwd-home-head span:last-child { font-family: 'Inter', sans-serif; font-size: 14px; font-weight: 500; text-transform: uppercase; color: #00051a; }

.vc-wwd .vc-wwd-home-grid { display: grid; grid-template-columns: minmax(320px, 1fr) minmax(420px, 1fr); gap: 56px; align-items: stretch; }
.vc-wwd .vc-wwd-home-list { display: flex; flex-direction: column; gap: 14px; }
.vc-wwd .vc-wwd-home-item { background: #f5f6fc; color: #2d3652; border-radius: 20px; padding: 28px 28px; font-family: 'Outfit', sans-serif; font-size: clamp(20px, 2.1vw, 26px); font-weight: 600; line-height: 1.2; }
.vc-wwd .vc-wwd-home-item.active { background: var(--vc-blue); color: #ffffff; }
.vc-wwd .vc-wwd-home-panel { display: flex; flex-direction: column; gap: 22px; border-radius: 28px; }
.vc-wwd .vc-wwd-home-visual { background: #e6eeff; border-radius: 12px; overflow: hidden; min-height: 340px; display: flex; align-items: center; justify-content: center; }
.vc-wwd .vc-wwd-home-visual img { width: 100%; height: 100%; object-fit: cover; }

@media (max-width: 991px) {
  .vc-wwd .vc-wwd-home-grid { grid-template-columns: 1fr; gap: 28px; }
  .vc-wwd .vc-wwd-home-item { padding: 20px 18px; font-size: 18px; }
}

.the-middle-market { width: 100%; position: relative; font-size: 52px; line-height: 110%; font-family: 'Outfit', system-ui, sans-serif; color: #00051a; text-align: center; display: inline-block; }
.we-dont-just { width: 100%; position: relative; font-size: 52px; line-height: 110%; font-family: 'Outfit', system-ui, sans-serif; color: #00051a; text-align: left; display: inline-block; }
.each-portfolio-company { width: 505px; position: relative; font-size: 20px; line-height: 140%; font-family: 'Inter', system-ui, sans-serif; color: #00051a; text-align: left; display: inline-block; opacity: 0.84; }

/* ══════════════════════════════════════════════════════════════
   MARQUEE
   ══════════════════════════════════════════════════════════════ */
.vc-mq1 { background: var(--vc-off-white); padding: 28px 0; overflow: hidden; margin-top: -1px;}
.vc-mq1-track { display: flex; white-space: nowrap; animation: vcMQ1 28s linear infinite; }
.vc-mq1-track span { font-family: 'Barlow', sans-serif; font-size: clamp(28px, 4vw, 48px); padding: 0 40px; color: #9a9ba0; }
.vc-mq1-track span.on { color: #1434ec; }
.vc-mq2 { padding: 28px 0; overflow: hidden; }
.vc-mq2-track { display: flex; white-space: nowrap; animation: vcMQ2 32s linear infinite; }
.vc-mq2-track span { font-family: 'Barlow', sans-serif; font-size: clamp(32px, 5vw, 48px); padding: 0 32px; color: #9c9fa9; letter-spacing: -0.02em; }
.vc-mq2-track span.on { color: #0e3aef; }

/* ══════════════════════════════════════════════════════════════
   MISSION
   ══════════════════════════════════════════════════════════════ */
.vc-mission { text-align: center; padding: 96px 48px; background-color: #F5F6FC; }
.vc-mission h2 { font-family: 'Barlow', sans-serif; font-size: clamp(32px, 4vw, 52px); font-weight: 700; color: var(--vc-text); margin-bottom: 16px; }
.vc-mission>.vc-container>p { color: var(--Navy, #00051A); text-align: center; font-family: Inter; font-size: 32px; font-weight: 400; line-height: 120%; }

/* ══════════════════════════════════════════════════════════════
   FOCUS AREAS — FINAL PRODUCTION (FIGMA MATCH + RESPONSIVE)
   ══════════════════════════════════════════════════════════════ */

.vc-focus {
  background: #ffffff;
}

/* ================= CONTAINER ================= */
.vc-focus > .vc-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 40px;

  max-width: 1440px;
  margin: 0 auto;
  padding: 120px 100px;
}

/* ================= LABEL ================= */
.vc-focus .vc-lbl {
  font-family: 'Inter', sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #00051a;

  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.vc-focus .vc-lbl::before {
  content: '';
  width: 8px;
  height: 8px;
  background: #0446F2;
  flex-shrink: 0;
}

/* ================= LAYOUT ================= */
.vc-focus-layout {
  display: flex;
  align-items: flex-start;
  gap: 68px;
  width: 100%;
}

/* ================= TABS ================= */
.vc-tabs {
  display: flex;
  flex-direction: column;
  width: 440px;
  min-width: 440px;
  flex-shrink: 0;
}

/* ================= TAB ================= */
.vc-tab {
  display: flex;
  align-items: center;
  justify-content: space-between;

  height: 101px;
  padding: 36px 32px;

  border-radius: 20px;
  border: none;
  cursor: pointer;

  font-family: 'Outfit', sans-serif;
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1;

  background: #F5F6FC;
  color: #6E7180;

  transition: all 0.25s ease;
}

/* spacing between tabs */
.vc-tab + .vc-tab {
  margin-top: 12px;
}

/* hover */
.vc-tab:not(.active):hover {
  background: #eef1ff;
  color: #1f2937;
}

/* active */
.vc-tab.active {
  background: #0446F2;
  color: #ffffff;
  box-shadow: 0 10px 30px rgba(4, 70, 242, 0.25);
}

/* icon */
.vc-tab svg {
  width: 22px;
  height: 22px;
  opacity: 0;
  transform: translateX(-6px);
  transition: all 0.25s ease;
}

.vc-tab.active svg {
  opacity: 1;
  transform: translateX(0);
}

/* ================= RIGHT CONTENT ================= */
.vc-panes {
  flex: 1;
  min-width: 0;
}

/* pane */
.vc-pane {
  display: none;
}

.vc-pane.active {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 36px; /* Figma spacing */
}

/* heading */
.vc-pane h3 {
  font-family: 'Outfit', sans-serif;
  font-size: 36px;
  font-weight: 600;
  line-height: 1.2;
  color: #00051a;
  margin: 0;
}

/* paragraph */
.vc-pane > p {
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  line-height: 1.7;
  color: #4a5270;
  /* max-width: 520px; */
  margin: 0;
}

/* ================= IMAGE ================= */
.vc-fvis {
  background: #EEF2FF;
  border-radius: 20px;
  /* padding: 26px; */

  display: flex;
  align-items: center;
  justify-content: flex-start; /* important */
  min-height: 400px;
  width: 100%;
}

.vc-fvis img {
  width: 100%;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
  border-radius: 20px;
}

/* ============================================================
   ================= RESPONSIVE =================
   ============================================================ */

/* ===== LARGE TABLET ===== */
@media (max-width: 1280px) {
  .vc-focus > .vc-container {
    padding: 100px 60px;
  }

  .vc-focus-layout {
    gap: 48px;
  }

  .vc-tabs {
    width: 400px;
    min-width: 400px;
  }

  .vc-tab {
    height: 90px;
    padding: 28px 24px;
    font-size: 16px;
  }

  .vc-pane h3 {
    font-size: 32px;
  }
}

/* ===== TABLET ===== */
@media (max-width: 1024px) {
  .vc-focus > .vc-container {
    padding: 80px 40px;
  }

  .vc-focus-layout {
    flex-direction: column;
    gap: 40px;
  }

  /* KEEP VERTICAL (important fix) */
  .vc-tabs {
    width: 100%;
    min-width: 0;
  }

  .vc-tab {
    width: 100%;
    height: auto;
    padding: 20px 24px;
    font-size: 14px;
  }

  .vc-pane h3 {
    font-size: 30px;
  }
}

/* ===== MOBILE ===== */
@media (max-width: 768px) {
  .vc-focus > .vc-container {
    padding: 60px 24px;
    gap: 28px;
  }

  .vc-tabs {
    gap: 8px;
  }

  .vc-tab {
    padding: 18px 20px;
    font-size: 14px;
  }

  .vc-pane.active {
    gap: 24px;
  }

  .vc-pane h3 {
    font-size: 26px;
  }

  .vc-pane > p {
    font-size: 15px;
  }

  .vc-fvis {
    padding: 16px;
    border-radius: 16px;
  }
}

/* ===== SMALL MOBILE ===== */
@media (max-width: 480px) {
  .vc-focus > .vc-container {
    padding: 48px 16px;
    gap: 24px;
  }

  .vc-tab {
    padding: 16px;
    font-size: 13px;
  }

  .vc-pane h3 {
    font-size: 22px;
  }

  .vc-pane > p {
    font-size: 14px;
  }

  .vc-fvis {
    padding: 12px;
  }
}

/* ================================
   DIFFERENTIATORS — FINAL PERFECT
================================ */

/* SECTION */
.vc-diff {
  padding: 120px 100px;
  background: #ffffff;
}

/* HEADER */
.vc-diff-hdr {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 68px;
  margin-bottom: 80px;
    margin-left: 22px;
}

.vc-diff-hdr h2 {
  color: #00051A;
  font-family: 'Outfit', sans-serif;
  font-size: 52px;
  font-weight: 400;
  line-height: 110%;
  margin: 0;
}

.vc-diff-hdr p {
  color: #00051A;
  font-family: 'Inter', sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 140%;
  opacity: 0.84;
  max-width: 420px; /* FIXED */
  margin: 0;
}

/* ================================
   CARDS WRAPPER
================================ */
.vc-cards {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100%;
}

/* ================================
   CENTER PILL (ALWAYS CENTERED)
================================ */
.vc-diff-btn-row {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 5;
}

/* PILL */
.vc-diff-center-pill {
  display: inline-flex;
  align-items: center;
  gap: 16px;
  padding: 20px 48px;
  border-radius: 108px;
  background: #ffffff;
  box-shadow: 0 20px 60px rgba(15, 23, 42, 0.12);
  backdrop-filter: blur(40px);
  white-space: nowrap;
}

/* LOGO */
.vc-diff-logo img {
  width: 32px;
  height: auto;
}

/* TEXT */
.vc-diff-center-text {
  font-family: 'Outfit', sans-serif;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #0446F2;
}

/* ================================
   GRID (ALWAYS 2x2)
================================ */
.vc-diff-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* ALWAYS 2 */
  gap: 24px;
  width: 100%;
  max-width: 1240px;
}

/* CARD */
.vc-diff-card {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  min-height: 260px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* INNER */
.vc-diff-card-inner {
  padding: 48px;
  display: flex;
  align-items: center;
}

/* ICON */
.vc-diff-icon {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
}

.vc-diff-icon svg {
  width: 22px;
  height: 22px;
}

/* REMOVE DOUBLE BG */
.vc-diff-card::after {
  display: none;
}

/* ================================
   TABLET (SCALED, NOT STACKED)
================================ */
/* @media (max-width: 1024px) {

  .vc-diff {
    padding: 80px 40px;
  }

  .vc-diff-hdr {
    gap: 40px;
    margin-bottom: 60px;
  }

  .vc-diff-hdr h2 {
    font-size: 40px;
  }

  .vc-diff-hdr p {
    font-size: 18px;
    max-width: 100%;
  }

  .vc-diff-grid {
    gap: 16px;
    max-width: 100%;
  }

  .vc-diff-card {
    min-height: 220px;
  }

  .vc-diff-card-inner {
    padding: 28px;
  }

  /* SCALE PILL */
  /* .vc-diff-center-pill {
    padding: 16px 32px;
    gap: 12px;
  }

  .vc-diff-center-text {
    font-size: 15px;
  }

  .vc-diff-logo img {
    width: 26px;
  }
} */ 

/* ================================
   MOBILE — FINAL UI FIX
================================ */
@media (max-width: 768px) {

  /* SECTION */
  .vc-diff {
    padding: 60px 16px;
  }

  /* HEADER STACK */
  .vc-diff-hdr {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-bottom: 24px;
  }

  .vc-diff-hdr h2 {
    font-size: 28px;
    line-height: 120%;
  }

  .vc-diff-hdr p {
    font-size: 14px;
    max-width: 100%;
  }

  /* ✅ BUTTON ON TOP (REMOVE ABSOLUTE COMPLETELY) */
  .vc-diff-btn-row {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    transform: none !important;

    display: flex;
    justify-content: center;
    margin-bottom: 24px;
  }

  /* ✅ STACK LAYOUT (CRITICAL) */
  .vc-cards {
    flex-direction: column;
    align-items: stretch;
  }

  /* ✅ ONE CARD PER ROW */
  .vc-diff-grid {
    display: grid;
    grid-template-columns: 1fr !important;
    gap: 16px;
    max-width: 100%;
  }

  /* ✅ FIX IMAGE CUT */
  .vc-diff-card {
    width: 100%;
    min-height: 150px;
    height: auto;
    aspect-ratio: auto; /* REMOVE CROPPING */
    border-radius: 16px;

    background-size: cover;
    background-position: center;
  }

  .vc-diff-card-inner {
    padding: 20px;
    align-items: flex-start;
  }

  /* ICON */
  .vc-diff-icon {
    width: 36px;
    height: 36px;
  }

  .vc-diff-icon svg {
    width: 18px;
    height: 18px;
  }

  /* BUTTON SCALE */
  .vc-diff-center-pill {
    padding: 12px 18px;
    gap: 10px;
  }

  .vc-diff-center-text {
    font-size: 12px;
  }

  .vc-diff-logo img {
    width: 22px;
    height: auto;
  }
}
/* ================================
   MOBILE OVERFLOW + TEXT FIX
================================ */
@media (max-width: 768px) {

  /* FIX RIGHT SIDE CUT */
  .vc-container {
    width: 100%;
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  /* TEXT PARAGRAPH FIX */
  .vc-diff-hdr p {
    width: 100% !important;
    max-width: 100%;
    word-break: break-word;
  }

  /* PREVENT ANY HORIZONTAL SCROLL */
  body {
    overflow-x: hidden;
  }

  /* GRID FULL WIDTH */
  .vc-diff-grid {
    width: 100%;
  }

  /* CARD FULL WIDTH FIX */
  .vc-diff-card {
    width: 100%;
    max-width: 100%;
  }

  /* IMPORTANT: CONTENT VISIBILITY FIX */
  .vc-diff-card {
    background-position: left center !important; /* shows main content */
  }

  /* INNER CONTENT SAFE */
  .vc-diff-card-inner {
    width: 100%;
  }
}

/* ══════════════════════════════════════════════════════════════
   CTA BANNER
   ══════════════════════════════════════════════════════════════ */
.vc-cta { 
  background: var(--vc-blue);
  padding: 120px 120px; 
  text-align: center; 
  position: relative; 
  overflow: hidden; 
}
.vc-cta::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse at 60% 50%, rgba(255, 255, 255, 0.08) 0%, transparent 70%); }
.vc-cta h2 { width: 100%; position: relative; font-size: 52px; line-height: 110%; font-family: Outfit, sans-serif; color: #fff; text-align: center; display: inline-block; margin-bottom: 32px; }

.vector-icon.top-right { width: auto; height: 125px; position: absolute; margin: 0 !important; top: 0px; right: 0px; max-width: 100%; overflow: hidden; flex-shrink: 0; object-fit: contain; object-position: right top; pointer-events: none; z-index: 1; }
.vector-icon.bottom-left { width: auto; height: 96px; position: absolute; margin: 0 !important; left: 0px; bottom: 0px; max-width: 100%; overflow: hidden; flex-shrink: 0; object-fit: contain; object-position: left bottom; pointer-events: none; z-index: 1; }

.vc-cta-inner { 
  position: relative; 
  z-index: 2; 
  display: flex; 
  flex-direction: column; 
  align-items: center; 
  margin: 0 auto;
  max-width: 1240px;
  width: 100%;
}
.vc-cta .vc-lbl { color: #fff !important; font-weight: 600; display: inline-flex; align-items: center; gap: 8px; text-transform: uppercase; letter-spacing: 0.08em; font-size: 14px; }
.vc-cta .vc-lbl::before { content: ''; display: inline-block; width: 10px; height: 10px; background-color: #8be0ff; }

.buttonwhite { height: 54px; position: relative; border-radius: 120px; background-color: #fff; width: auto; display: inline-flex; align-items: center; justify-content: center; padding: 4px 8px 4px 32px; box-sizing: border-box; gap: 16px; text-align: left; font-size: 18px; color: #0446f2; font-family: Outfit; margin: 0 auto; text-decoration: none !important; transition: transform 0.2s, box-shadow 0.2s; }
.buttonwhite:hover { transform: translateY(-2px); box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15); }
.arrowright-wrapper { height: 38px; width: 38px; border-radius: 72px; border: 1.5px solid #0446f2; box-sizing: border-box; display: flex; align-items: center; justify-content: center; padding: 8px; }
.arrowright { height: 24px; width: 24px; position: relative; }
.arrowright .vector-icon-btn { position: absolute; height: 62.5%; width: 75%; top: 18.75%; right: 12.5%; bottom: 18.75%; left: 12.5%; max-width: 100%; overflow: hidden; max-height: 100%; }

/* ══════════════════════════════════════════════════════════════
   WHY IT MATTERS
   ══════════════════════════════════════════════════════════════ */
.vc-why { height: 590px; padding: 96px 0; position: relative; overflow: hidden; background: radial-gradient(circle at 30% 50%, #0a192f 0%, #040914 100%); }
#vc-globe-container { position: absolute; top: 50%; left: -10%; transform: translateY(-50%); width: 900px; height: 900px; z-index: 1; pointer-events: auto; cursor: grab; }
#vc-globe-container:active { cursor: grabbing; }
.vc-why .vc-container { position: relative; z-index: 2; }
.vc-why-h { font-family: 'Barlow', sans-serif; font-size: clamp(28px, 3.5vw, 44px); font-weight: 700; text-align: center; line-height: 1.2; max-width: 600px; margin: 0 auto 64px; color: #ffffff; }
.vc-why .vc-lbl, .vc-diff .vc-lbl { color: #bcbfcc; }
.vc-why .vc-why-col h4 { color: #8892b0; }
.vc-why .vc-why-col.sols h4 { color: #60a5fa; }
.vc-why .vc-wi p { color: #ccd6f6; }
.vc-why .vc-wi:hover { background: rgba(255, 255, 255, 0.05); }
.vc-why .vc-wd { background: #8892b0; }
.vc-why .vc-wi.sol .vc-wd { background: #60a5fa; box-shadow: 0 0 10px #60a5fa; }
.vc-why .vc-wi.sol { background: rgba(96, 165, 250, 0.08); border-color: rgba(96, 165, 250, 0.15); }
.vc-why .vc-why-logo { background: transparent; }
.vc-why .vc-vdiv { background: linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.12), transparent); }

.vc-why-grid { display: grid; grid-template-columns: 1fr auto 1fr; gap: 42px; position: relative; }

@media (min-width: 900px) {
  .vc-why-col:not(.sols)::before, .vc-why-col:not(.sols)::after, .vc-why-col:not(.sols) .vc-wi::after, .vc-why-col.sols::before, .vc-why-col.sols::after, .vc-why-col.sols .vc-wi::before { pointer-events: none; filter: drop-shadow(0 0 6px rgba(140, 190, 255, 0.7)); }
  .vc-why-col:not(.sols) { position: relative; }
  .vc-why-col:not(.sols)::before { content: ''; position: absolute; top: 36px; bottom: 36px; right: -24px; border-right: 1.5px dashed rgba(140, 190, 255, 0.45); }
  .vc-why-col:not(.sols)::after { content: ''; position: absolute; top: 50%; right: -40px; width: 16px; border-top: 1.5px dashed rgba(140, 190, 255, 0.45); }
  .vc-why-col:not(.sols) .vc-wi { width: 100%; position: relative; }
  .vc-why-col:not(.sols) .vc-wi::after { content: ''; flex-grow: 1; border-bottom: 1.5px dashed rgba(140, 190, 255, 0.45); margin-left: 20px; position: relative; top: 9px; margin-right: -38px; }
  .vc-why-col.sols { position: relative; }
  .vc-why-col.sols::before { content: ''; position: absolute; top: 40px; bottom: 40px; left: -24px; border-left: 1.5px dashed rgba(140, 190, 255, 0.45); }
  .vc-why-col.sols::after { content: ''; position: absolute; top: 50%; left: -40px; width: 16px; border-top: 1.5px dashed rgba(140, 190, 255, 0.45); }
  .vc-why-col.sols .vc-wi { position: relative; }
  .vc-why-col.sols .vc-wi::before { content: ''; position: absolute; right: 100%; top: 50%; width: 24px; border-top: 1.5px dashed rgba(140, 190, 255, 0.45); }
}

.vc-why-connectors { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1; pointer-events: none; }
.vc-why-col, .vc-why-mid { position: relative; z-index: 2; }
.vc-why-line, .vc-why-rail { fill: none; stroke: rgba(140, 190, 255, 0.55); stroke-width: 2; stroke-linecap: round; stroke-dasharray: 6 8; }
.vc-why-dot { fill: rgba(140, 190, 255, 0.9); filter: drop-shadow(0 0 8px rgba(90, 160, 255, 0.6)); }

@media (max-width: 768px) { .vc-why-connectors { display: none; } }

.vc-why-col h4 { font-size: 11px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--vc-mid-gray); margin-bottom: 24px; }
.vc-wi { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 16px; padding: 14px; border-radius: 999px; transition: background 0.2s; }
.vc-why-col { margin-top: 16px; }
.vc-wi:hover { background: var(--vc-off-white); border-radius: 999px; }
.vc-wi:focus-within { background: var(--vc-off-white); border-radius: 999px; }
.vc-wd { width: 8px; height: 8px; border-radius: 50%; background: var(--vc-mid-gray); flex-shrink: 0; margin-top: 5px; }
.vc-wi.sol .vc-wd { background: var(--vc-blue); }
.vc-wi p { font-size: 13.5px; line-height: 1.55; color: var(--vc-text-light); }
.vc-why-mid { display: flex; flex-direction: column; align-items: center; gap: 16px; }

/* Why It Matters copy section */
.vc-why-copy-section { padding: 96px 40px; background: radial-gradient(circle at 30% 50%, #0a192f 0%, #040914 100%); position: relative; }
.vc-why-copy-intro { max-width: 1030px; margin: 0 auto 44px; display: flex; flex-direction: column; align-items: center; gap: 20px; text-align: center; }
.vc-why-copy-eyebrow { display: inline-flex; align-items: center; justify-content: center; padding: 4px 12px; border-radius: 44px; background-color: rgba(188, 191, 204, 0.3); color: #ffffff; font-family: "Inter", Helvetica, sans-serif; font-size: 14px; font-weight: 500; line-height: 1.2; }
.vc-why-copy-title { margin: 0; text-align: center; color: #ffffff; font-family: "Outfit", Helvetica, sans-serif; font-size: clamp(30px, 4vw, 52px); font-weight: 400; line-height: 1.1; max-width: 1000px; }
.vc-why-copy-grid { margin: 0 auto; max-width: 1238px; display: grid; grid-template-columns: minmax(0, 1fr) 265px minmax(0, 1fr); align-items: center; gap: 26px; padding: 0 40px; }
.vc-why-copy-card{ padding: 20px 24px; border-radius: 12px; 
    /* background-color: rgba(255, 255, 255, 0.08); */
     backdrop-filter: blur(58px) brightness(100%); -webkit-backdrop-filter: blur(58px) brightness(100%); 
     /* /border: 1px solid rgba(255, 255, 255, 0.12); */
      display: flex; flex-direction: column; gap: 12px; min-height: 140px; justify-content: flex-start; }
.vc-why-chip { display: inline-flex; align-items: center; justify-content: center; padding: 4px 12px; border-radius: 44px; font-family: "Inter", Helvetica, sans-serif; font-size: 14px; font-weight: 500; line-height: 1.2; }
.vc-why-chip-problem {
    background-color: rgba(188, 191, 204, 0.3);
    color: #ffffff;
    width: 40%;
}

.vc-why-chip-solution {
    background-color: #0446f2;
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    gap: 8px;           
    padding: 6px 14px;
    border-radius: 999px;
    width: fit-content;     
    white-space: nowrap;
}

/* Icon styling */
.vc-chip-icon {
    display: flex;
    align-items: center;
    justify-content: center;
}

.vc-chip-icon svg {
    width: 12px;
    height: 12px;
}

.vc-why-copy-card p { margin: 0; color: #e0e5f0; font-family: "Inter", Helvetica, sans-serif; font-size: 16px; font-weight: 400; line-height: 1.5; letter-spacing: 0.3px; }
.vc-why-copy-divider { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; padding-bottom: 16px; }
.vc-why-copy-divider span { color: #60a5fa; font-family: "Inter", Helvetica, sans-serif; font-size: 14px; font-weight: 500; line-height: 1.2; text-align: center; }
.vc-why-copy-divider img { width: 100%; max-width: 265px; height: auto; }

@media (max-width: 1199px) {
  .vc-why-copy-grid { grid-template-columns: 1fr; gap: 16px; padding: 0 20px; }
  .vc-why-copy-divider { order: 3; padding-bottom: 0; }
}

@media (max-width: 767px) {
  .vc-why-copy-section { padding: 72px 24px; }
  .vc-why-copy-grid { padding: 0; }
  .vc-why-copy-card { padding: 16px; min-height: auto; }
  .vc-why-copy-card p { font-size: 15px; }
}

/* Figma globe overlays */
.vc-why .vc-why-figma-overlay { position: absolute; inset: 0; z-index: 2; pointer-events: none; }

.vc-why .frame-46, .vc-why .frame-48, .vc-why .frame-53, .vc-why .frame-50, .vc-why .frame-51 { position: absolute; display: inline-flex; height: 56px; align-items: center; gap: 8px; padding: 8px 24px 8px 12px; background-color: #c9deff33; border-radius: 40px; border: none; overflow: hidden; backdrop-filter: blur(58px) brightness(100%); -webkit-backdrop-filter: blur(58px) brightness(100%); }
.vc-why .frame-46::before, .vc-why .frame-48::before, .vc-why .frame-53::before, .vc-why .frame-50::before, .vc-why .frame-51::before { content: ""; position: absolute; inset: 0; padding: 1px; border-radius: 40px; background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(221, 236, 255, 1) 100%); -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; z-index: 1; pointer-events: none; }
.vc-why .frame-47, .vc-why .frame-49 { display: flex; width: 36px; height: 36px; align-items: center; justify-content: center; gap: 8px; padding: 4px 8px; background-color: #ffffff; border-radius: 40px; }
.vc-why .img-5 { width: 24px; height: 24px; }
.vc-why .text-wrapper-25 { font-family: "Inter", Helvetica, sans-serif; font-weight: 500; color: #ffffff; font-size: 16px; letter-spacing: 0; line-height: 19.2px; white-space: nowrap; }
.vc-why .frame-46 { top: 117px; left: 8%; }
.vc-why .frame-48 { top: 190px; left: 21%; }
.vc-why .frame-53 { top: 45%; left: 9.51%; }
.vc-why .frame-50 { top: 345px; left: 17%; }
.vc-why .frame-51 { top: 420px; left: 7%; }

.vc-why .vector-11, .vc-why .vector-12, .vc-why .vector-13, .vc-why .vector-14, .vc-why .vector-15, .vc-why .vector-16, .vc-why .vector-17, .vc-why .vector-18, .vc-why .vector-19, .vc-why .vector-20, .vc-why .vector-21 { position: absolute; opacity: 0.96; }
.vc-why .vector-11 { top: 144px; left: 29%; width: 181px; height: 153px; }
.vc-why .vector-12 { top: 290px; left: 30.5%; width: 162px; height: 162px; }
.vc-why .vector-13 { top: 214px; left: 37.7%; width: 29px; height: 5px; }
.vc-why .vector-14 { top: 292px; left: 33.3%; width: 95px; height: 5px; }
.vc-why .vector-15 { top: 371px; left: 37.8%; width: 30px; height: 5px; }
.vc-why .vector-16 { top: 418px; left: 58.5%; width: 79px; height: 7px; }
.vc-why .vector-17 { top: 330px; left: 58.5%; width: 79px; height: 7px; }
.vc-why .vector-18 { top: 242px; left: 58.5%; width: 79px; height: 7px; }
.vc-why .vector-19 { top: 154px; left: 58.5%; width: 79px; height: 7px; }
.vc-why .vector-20 { top: 292px; left: 56.7%; width: 104px; height: 219px; }
.vc-why .vector-21 { top: 68px; left: 56.7%; width: 104px; height: 230px; }

.vc-why .frame-52 { position: absolute; top: 263px; left: calc(50% - 105px); width: 211px; height: 57px; z-index: 3; }
.vc-why .group-12 { position: absolute; top: 41px; left: 64.3%; width: 324px; height: 492px; }

.vc-why .frame-54, .vc-why .frame-56, .vc-why .frame-57, .vc-why .frame-58, .vc-why .frame-59, .vc-why .frame-60 { display: flex; align-items: center; gap: 8px; padding: 12px 24px 12px 12px; position: absolute; height: 56px; background-color: #ffffff; border-radius: 40px; overflow: hidden; border: 1px solid #0446f2; backdrop-filter: blur(58px) brightness(100%); -webkit-backdrop-filter: blur(58px) brightness(100%); }
.vc-why .frame-55 { display: flex; width: 36px; height: 36px; align-items: center; justify-content: center; gap: 8px; padding: 4px 8px; background-color: #0446f2; border-radius: 40px; flex-shrink: 0; }
.vc-why .frame-55 .img-5 { filter: brightness(0) invert(1); }
.vc-why .text-wrapper-26 { font-family: "Inter", Helvetica, sans-serif; font-weight: 500; color: #0446f2; font-size: 16px; letter-spacing: 0; line-height: 19.2px; white-space: nowrap; }
.vc-why .frame-56 { top: 0; left: 0; width: 289px; }
.vc-why .frame-54 { top: 17.73%; left: 0; width: 61.42%; }
.vc-why .frame-57 { top: 35.46%; left: 0; width: 264px; }
.vc-why .frame-60 { top: 53.19%; left: 0; width: 100%; }
.vc-why .frame-58 { top: 70.92%; left: 0; width: 264px; }
.vc-why .frame-59 { top: 88.61%; left: 0; width: 289px; }

@media (max-width: 1199px) { .vc-why .vc-why-figma-overlay { display: none; } }

.vc-why-logo { background: transparent; border-radius: 14px; padding: 18px 24px; font-family: 'Barlow Condensed', sans-serif; font-size: 20px; font-weight: 800; color: #ffffff; letter-spacing: 0.04em; text-align: center; }
.vc-why-logo img { max-width: 140px; height: auto; display: block; }
.vc-vdiv { width: 1px; flex: 1; min-height: 180px; background: linear-gradient(to bottom, transparent, var(--vc-light-gray), transparent); }
.vc-why-col.sols h4 { color: var(--vc-blue); }
.vc-why-col.sols .vc-wi { background: rgba(26, 56, 240, 0.04); border: 1px solid rgba(26, 56, 240, 0.08); }

/* Solution icons */
.vc-wi.sol.has-chart, .vc-wi.sol.has-head, .vc-wi.sol.has-users, .vc-wi.sol.has-sustain, .vc-wi.sol.has-gear, .vc-wi.sol.has-pig { align-items: center; }

.chartlineup, .headcircuit, .usersthree, .gearsix, .piggybank, .sustain-icon { height: 40px; width: 40px; position: relative; margin-right: 10px; flex-shrink: 0; border-radius: 999px; background: var(--vc-blue); display: flex; align-items: center; justify-content: center; }
.chartlineup .vector-icon, .headcircuit .vector-icon, .usersthree .vector-icon, .gearsix .vector-icon, .piggybank .vector-icon { position: relative; width: 60%; height: 60%; max-width: 100%; max-height: 100%; }

.vc-wi.sol.has-chart .chartlineup, .vc-wi.sol.has-head .headcircuit, .vc-wi.sol.has-users .usersthree, .vc-wi.sol.has-gear .gearsix, .vc-wi.sol.has-pig .piggybank, .vc-wi.sol.has-sustain .sustain-icon { transform-origin: center; transition: transform 0.3s ease, filter 0.3s ease; }
.vc-wi.sol.has-chart:hover .chartlineup, .vc-wi.sol.has-head:hover .headcircuit, .vc-wi.sol.has-users:hover .usersthree, .vc-wi.sol.has-gear:hover .gearsix, .vc-wi.sol.has-pig:hover .piggybank, .vc-wi.sol.has-sustain:hover .sustain-icon { transform: perspective(600px) translateZ(24px) scale(1.08); filter: drop-shadow(0 0 14px rgba(96, 165, 250, 0.8)); }

.ai-driven-scale, .enterprise-tools-access, .unified-capital { font-size: 16px; line-height: 1.2; font-weight: 500; font-family: 'Inter', system-ui, sans-serif; }
.sustain-icon .vector-43 { opacity: 0.9; }
.sustain-icon .vector-cart { transform: scale(0.7); }
.sustain-icon .vector-43, .sustain-icon .vector-cart { position: relative; max-width: 100%; max-height: 100%; }

/* ══════════════════════════════════════════════════════════════
   REVEAL + KEYFRAMES
   ══════════════════════════════════════════════════════════════ */
.vc-r { opacity: 0; transform: translateY(22px); transition: opacity 0.65s ease, transform 0.65s ease; }
.vc-r.on { opacity: 1; transform: translateY(0); }

@keyframes vcFadeUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } }
@keyframes vcMQ1 { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@keyframes vcMQ2 { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* ══════════════════════════════════════════════════════════════
   GLOBAL RESPONSIVE
   ══════════════════════════════════════════════════════════════ */
@media (max-width: 1024px) {
  .wwd-section, .vc-diff-hdr { grid-template-columns: 1fr; }
  .wwd-section .text-side { padding: 40px 0 0; }
  .pyramid-side { padding: 0; justify-content: center; }
  .vc-cards { grid-template-columns: repeat(2, 1fr); }
  .vc-focus-layout { grid-template-columns: 1fr; }
  .vc-tabs { flex-direction: row; flex-wrap: wrap; }
}

@media (max-width: 992px) {
  .vc-page .footer-main { flex-direction: column; gap: 30px; }
  .vc-page .footer-nav ul { flex-wrap: wrap; gap: 22px; }
  .vc-page .footer-info { gap: 60px; }
}

@media (max-width: 768px) {
  .vc-container { padding: 0 24px; }
  .vc-why-grid { grid-template-columns: 1fr; }
  .vc-why-mid { display: none; }
  #vc-globe-container { width: 500px; height: 500px; left: 50%; top: 20%; transform: translate(-50%, 0); opacity: 0.3; }
  .vc-cards { grid-template-columns: 1fr; }
  .vc-hero-actions { flex-direction: column; align-items: flex-start; }
  .vc-cta, .vc-mission { padding: 64px 24px; }
}

@media (max-width: 640px) {
  .vc-page .footer-container { padding: 40px 24px 24px; }
  .vc-page .footer-logo img { max-height: 34px; max-width: min(170px, 100%); }
  .vc-page .footer-info { flex-direction: column; gap: 32px; }
  .vc-page .footer-bottom { flex-direction: column; gap: 16px; text-align: center; }
  .vc-page .footer-legal { gap: 30px; }
}

@media (max-width: 480px) {
  .vc-container { padding: 0 16px; }
  .vc-hero { min-height: 560px; }
  .vc-hero h1 { font-size: clamp(34px, 9vw, 52px) !important; }
  .vc-hero-actions { flex-direction: column; align-items: stretch; gap: 10px; }
  .vc-hero-actions .vc-btn { width: 100%; justify-content: center; text-align: center; }
  .vc-nav-inner { height: 60px; }
  .vc-page .footer-nav ul { flex-direction: column; gap: 12px; }
  .vc-page .footer-main { gap: 20px; }
  .vc-cta, .vc-mission { padding: 110px 16px; }
  .vector-icon.top-right {height: 90px;}
  .vector-icon.bottom-left{height: 90px;}
  .vc-cards { gap: 16px; }
}

/* ── WHY IT MATTERS - INTRO ROW ──────────────────────────────── */
.vc-why-intro { display: grid; grid-template-columns: 1fr auto 1fr; gap: 48px; align-items: center; margin-bottom: 72px; background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 24px; padding: 32px 48px; backdrop-filter: blur(12px); position: relative; z-index: 2; }
.vc-intro-col p { font-size: 15px; line-height: 1.6; color: rgba(255, 255, 255, 0.75); margin: 0; }
.vc-intro-lbl { display: inline-block; padding: 6px 16px; border-radius: 50px; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; margin-bottom: 16px; }
.vc-intro-lbl.problem { background: rgba(255, 255, 255, 0.1); color: #fff; }
.vc-intro-lbl.solution { background: #3b82f6; color: #fff; }
.vc-intro-mid { display: flex; flex-direction: column; align-items: center; gap: 16px; color: #3b82f6; font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; font-size: 12px; text-align: center; }
.vc-intro-line { width: 2px; height: 40px; background: linear-gradient(to bottom, transparent, #3b82f6, transparent); }

@media (max-width: 991px) {
  .vc-why-intro { grid-template-columns: 1fr; gap: 32px; text-align: center; padding: 32px 24px; }
  .vc-intro-line { width: 60px; height: 2px; background: linear-gradient(to right, transparent, #3b82f6, transparent); }
}

.vc-why-h { font-family: 'Barlow', sans-serif; font-size: clamp(24px, 2.5vw, 36px); font-weight: 700; line-height: 1.3; color: #ffffff; text-align: center; max-width: 800px; margin-left: auto !important; margin-right: auto !important; margin-bottom: 48px; display: block; letter-spacing: -0.01em; }

/* ══════════════════════════════════════════════════════════════
   GLOBAL TYPEFACE
   ══════════════════════════════════════════════════════════════ */
.vc-page,
.vc-page *:not(svg):not(path):not(i),
.vc-page input,
.vc-page textarea,
.vc-page select,
.vc-page button {
  font-family: 'Outfit', sans-serif !important;
}

/* Keep hero left-aligned on homepage */
.home .vc-hero .vc-hero-content,
.front-page .vc-hero .vc-hero-content { display: flex; flex-direction: column; align-items: flex-start !important; text-align: left !important; }
.home .vc-hero h1.building-the-future-container,
.front-page .vc-hero h1.building-the-future-container,
.home .vc-hero-sub, .front-page .vc-hero-sub,
.home .vc-hero-eyebrow, .front-page .vc-hero-eyebrow { text-align: left !important; }
.home .vc-hero-actions, .front-page .vc-hero-actions { justify-content: flex-start; }

/* ══════════════════════════════════════════════════════════════
   OVERFLOW FIX
   ══════════════════════════════════════════════════════════════ */
html, body { overflow-x: hidden; max-width: 100%; }
*, *::before, *::after { box-sizing: border-box; }
.site-wrapper, .site-content, main, section, header, footer, .container { max-width: 100%; }
img, video, iframe, embed, object { max-width: 100%; height: auto; }


/* Influencer focus tab list */
#vc-tab-influencer .vc-inf-list {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  list-style: none;
  margin: 0;
  padding: 0;
  max-width: 520px;
  width: 100%;
}

#vc-tab-influencer .vc-inf-item {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
}

#vc-tab-influencer .vc-inf-icon {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}

#vc-tab-influencer .vc-inf-text {
  color: #00051A;
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
}

@media (max-width: 768px) {
  #vc-tab-influencer .vc-inf-list {
    gap: 10px;
  }

  #vc-tab-influencer .vc-inf-text {
    font-size: 15px;
    line-height: 1.4;
  }
}

/* =========================================================
   FINAL OVERRIDE — DESKTOP FIX SYSTEM (DO NOT EDIT ABOVE CSS)
   ========================================================= */

/* ================= GLOBAL FIX ================= */

html, body {
  overflow-x: hidden !important;
}

/* ================= MASTER CONTAINER FIX ================= */

.vc-container {
  width: 100% !important;
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

/* Large Desktop */
@media (min-width: 1600px) {
  .vc-container {
    max-width: 1440px !important;
  }
}

/* Ultra Wide */
@media (min-width: 1920px) {
  .vc-container {
    max-width: 1600px !important;
  }
}

/* ================= HERO FIX ================= */

.vc-hero .vc-hero-content {
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

.vc-hero h1.building-the-future-container {
  max-width: 620px !important;
}

.vc-hero-sub {
  max-width: 480px !important;
}

/* ================= MISSION FIX ================= */

.vc-mission {
  padding: 140px 0 !important;
}

.vc-mission .vc-container {
  max-width: 900px !important;
  text-align: center !important;
}

/* ================= FOCUS FIX ================= */

.vc-focus > .vc-container {
  max-width: 1320px !important;
  padding: 120px 24px !important;
}

.vc-focus-layout {
  display: grid !important;
  grid-template-columns: 420px 1fr !important;
  gap: 64px !important;
}

.vc-tabs {
  width: 100% !important;
  /* max-width: 420px !important;
  min-width: 420px !important; */
}

.vc-tab {
  justify-content: space-between !important;
  text-align: left !important;
  white-space: nowrap !important;
}

/* ================= WHY SECTION FIX ================= */

.vc-why {
  padding: 120px 0 !important;
}

.vc-why .vc-container {
  max-width: 1320px !important;
  margin: 0 auto !important;
}

/* Center logo perfectly */
.frame-52 {
  left: 50% !important;
  transform: translateX(-50%) !important;
}

/* Right side alignment */
.group-12 {
  right: 0 !important;
  left: auto !important;
}

/* ================= CTA RESPONSIVE FIX ================= */
/* Only apply smaller padding on tablet/mobile — not desktop */
@media (max-width: 1024px) {
  .vc-cta {
    padding: 100px 40px !important;
  }
}

@media (max-width: 768px) {
  .vc-cta {
    padding: 80px 24px !important;
  }
}

/* ================= DESKTOP SCALING ================= */

/* 1600px */
@media (min-width: 1600px) {

  .vc-focus-layout {
    gap: 80px !important;
  }

  .vc-tab {
    height: 110px !important;
    font-size: 18px !important;
  }

  .vc-hero h1 {
    font-size: 64px !important;
  }
}

/* 1728px */
@media (min-width: 1728px) {

  .vc-focus-layout {
    gap: 100px !important;
  }

  .vc-hero h1 {
    font-size: 68px !important;
  }
}

/* 1920px */
@media (min-width: 1920px) {

  .vc-container {
    max-width: 1600px !important;
  }

  .vc-focus-layout {
    grid-template-columns: 460px 1fr !important;
  }

  .vc-tab {
    height: 120px !important;
    padding: 0 32px !important;
  }

  .vc-hero h1 {
    font-size: 72px !important;
  }
}

/* ================= TABLET ================= */

@media (max-width: 1024px) {

  .vc-focus-layout {
    grid-template-columns: 1fr !important;
  }
}

/* ================= MOBILE ================= */

@media (max-width: 768px) {

  .vc-hero {
    min-height: 300px !important;
  }

  .vc-hero-actions {
    flex-direction: column !important;
  }

  .vc-mission p {
    font-size: 20px !important;
  }
}

/* ================= 1920x1080 HOMEPAGE DESKTOP TUNE ================= */
@media (min-width: 1900px) and (max-width: 2200px) and (min-height: 1000px) {
  .home .vc-container,
  .front-page .vc-container {
    max-width: 1440px !important;
    padding-left: 32px !important;
    padding-right: 32px !important;
  }

  .home .vc-hero .vc-hero-content,
  .front-page .vc-hero .vc-hero-content {
    max-width: 1440px !important;
    padding-left: 32px !important;
    padding-right: 32px !important;
  }

  .home .vc-focus-layout,
  .front-page .vc-focus-layout {
    grid-template-columns: 430px 1fr !important;
    gap: 72px !important;
  }

  .home .vc-why,
  .front-page .vc-why {
    height: 640px;
    padding: 100px 0 80px !important;
  }

  .home #vc-globe-container,
  .front-page #vc-globe-container {
    left: -4%;
    top: 52%;
    width: 960px;
    height: 960px;
  }

  .home .vc-why .vc-why-figma-overlay,
  .front-page .vc-why .vc-why-figma-overlay {
    left: 50%;
    right: auto;
    top: 0;
    bottom: 0;
    width: min(1440px, 100%);
    transform: translateX(-50%);
  }

  .home .vc-why .group-12,
  .front-page .vc-why .group-12 {
    left: 64.3% !important;
    right: auto !important;
  }

  .home .vc-why .frame-52,
  .front-page .vc-why .frame-52 {
    top: 268px;
  }

  /* -- CTA AT 1920x1080 -- */
  .home .vc-cta,
  .front-page .vc-cta {
    padding: 140px 120px;
  }

  .home .vc-cta-inner,
  .front-page .vc-cta-inner {
    max-width: 1240px;
    margin: 0 auto;
  }
}

/* Keep right-side globe cards attached to connector arrows on homepage */
.home .vc-why .group-12,
.front-page .vc-why .group-12 {
  left: 64.3% !important;
  right: auto !important;
}

/* ════════════════════════════════════════════════════════════════
   COMPREHENSIVE MOBILE BREAKPOINTS — HOMEPAGE
   Breakpoints:
     576px  Large phone landscape / small tablet
     480px  Standard mobile portrait
     430px  iPhone 14 Plus / 15 Plus / Pro Max
     390px  iPhone 14 / 15 / 14 Pro / 15 Pro
     375px  iPhone SE 2&3, 12 mini, 13 mini
     360px  Samsung Galaxy S-series / most Android
     320px  iPhone 5 / SE 1st gen / very small screens
   ════════════════════════════════════════════════════════════════ */

@media (max-width: 576px) {
  .vc-hero-section { padding: 64px 16px 48px; }
  .vc-hero-title { font-size: clamp(32px, 8vw, 48px); }
  .vc-section { padding: 48px 16px; }

  .home .vc-cta,
  .front-page .vc-cta {
    min-height: 300px;
    padding: 72px 18px 64px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .home .vc-cta-inner,
  .front-page .vc-cta-inner {
    width: 100%;
    max-width: 340px;
    gap: 18px;
    align-items: center;
    text-align: center;
  }

  .home .vc-cta .vc-lbl,
  .front-page .vc-cta .vc-lbl {
    margin: 0 auto;
    justify-content: center;
    font-size: 12px;
    line-height: 1.2;
  }

  .home .vc-cta h2,
  .front-page .vc-cta h2 {
    margin: 0;
    font-size: clamp(28px, 9vw, 40px);
    line-height: 1.12;
    text-align: center;
  }

  .home .vc-cta .buttonwhite,
  .front-page .vc-cta .buttonwhite {
    width: min(100%, 290px);
    height: 50px;
    margin: 0 auto;
    padding: 4px 6px 4px 24px;
    gap: 12px;
    justify-content: space-between;
  }

  .home .vc-cta .explore-more,
  .front-page .vc-cta .explore-more {
    font-size: 14px;
    line-height: 1.15;
    white-space: nowrap;
  }

  .home .vc-cta .arrowright-wrapper,
  .front-page .vc-cta .arrowright-wrapper {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    padding: 8px;
  }

  .home .vc-cta .vector-icon.top-right,
  .home .vc-cta .vector-icon.bottom-left,
  .front-page .vc-cta .vector-icon.top-right,
  .front-page .vc-cta .vector-icon.bottom-left {
    height: 76px;
  }
}

@media (max-width: 480px) {
  .vc-hero-section { padding: 52px 14px 40px; }
  .vc-hero-title { font-size: clamp(28px, 7vw, 40px); }
  .vc-section { padding: 40px 14px; }
  .vc-card { padding: 24px; margin-bottom: 16px; }

  .home .vc-cta,
  .front-page .vc-cta {
    min-height: 292px;
    padding: 68px 16px 60px;
  }

  .home .vc-cta h2,
  .front-page .vc-cta h2 {
    font-size: clamp(28px, 10vw, 38px);
  }
}

@media (max-width: 430px) {
  .vc-hero-section { padding: 48px 12px 36px; }
  .vc-hero-title { font-size: clamp(24px, 6.5vw, 36px); }
  .vc-section { padding: 36px 12px; }
  .vc-card { padding: 20px; margin-bottom: 12px; }

  .home .vc-cta-inner,
  .front-page .vc-cta-inner {
    max-width: 320px;
  }

  .home .vc-cta h2,
  .front-page .vc-cta h2 {
    font-size: clamp(26px, 10vw, 36px);
  }

  .home .vc-cta .buttonwhite,
  .front-page .vc-cta .buttonwhite {
    width: min(100%, 288px);
  }
}

@media (max-width: 390px) {
  .vc-hero-section { padding: 44px 10px 32px; min-height: 300px; }
  .vc-hero-title { font-size: clamp(22px, 6vw, 32px); }
  .vc-section { padding: 32px 10px; }
  .vc-card { padding: 18px; margin-bottom: 10px; }

  .home .vc-cta,
  .front-page .vc-cta {
    padding: 64px 14px 56px;
  }

  .home .vc-cta h2,
  .front-page .vc-cta h2 {
    font-size: clamp(25px, 10vw, 34px);
  }
}

@media (max-width: 375px) {
  .vc-hero-section { padding: 40px 8px 28px; }
  .vc-hero-title { font-size: clamp(20px, 5.5vw, 28px); }
  .vc-section { padding: 28px 8px; }
  .vc-card { padding: 16px; margin-bottom: 8px; }
}

@media (max-width: 360px) {
  .vc-hero-section { padding: 36px 6px 24px; }
  .vc-hero-title { font-size: clamp(18px, 5vw, 24px); }
  .vc-section { padding: 24px 6px; }

  .home .vc-cta,
  .front-page .vc-cta {
    min-height: 282px;
    padding: 60px 12px 52px;
  }

  .home .vc-cta-inner,
  .front-page .vc-cta-inner {
    max-width: 300px;
  }

  .home .vc-cta h2,
  .front-page .vc-cta h2 {
    font-size: clamp(24px, 10vw, 32px);
  }

  .home .vc-cta .buttonwhite,
  .front-page .vc-cta .buttonwhite {
    width: min(100%, 276px);
    height: 48px;
  }

  .home .vc-cta .explore-more,
  .front-page .vc-cta .explore-more {
    font-size: 13px;
  }
}

@media (max-width: 320px) {
  .vc-hero-section { padding: 32px 4px 20px; min-height: 280px; }
  .vc-hero-title { font-size: clamp(16px, 4.5vw, 22px); }
  .vc-section { padding: 20px 4px; }
  .vc-card { padding: 12px; margin-bottom: 6px; }

  .home .vc-cta,
  .front-page .vc-cta {
    min-height: 270px;
    padding: 56px 10px 48px;
  }

  .home .vc-cta h2,
  .front-page .vc-cta h2 {
    font-size: 25px;
  }

  .home .vc-cta .buttonwhite,
  .front-page .vc-cta .buttonwhite {
    width: min(100%, 260px);
    padding-left: 18px;
  }
}

