
/* === GLOBAL FIX PACK v2.10 === */
:root{ --deep:#0D1B4C; --purple:#6C1FA8; --sky:#5BC0EB; --lav:#CBB2FF }

/* ---------- HERO (home only) ---------- */
body.home #hero{ position:relative; overflow:hidden }
#hero .bg{ position:absolute; inset:0; z-index:-2; overflow:hidden }
#hero .bg video{ width:100%; height:100%; object-fit:cover; filter:brightness(.5) contrast(1.02) saturate(.95) blur(3px) }
#hero .scrim{ position:absolute; inset:0; z-index:-1; 
  background: radial-gradient(900px 420px at 24% 26%, rgba(108,31,168,.34), transparent 60%),
              linear-gradient(180deg, rgba(5,12,40,.74) 0%, rgba(5,12,40,.35) 70%); }
#hero .copy{ background:rgba(255,255,255,.98); color:var(--deep); border-radius:22px; padding:26px 28px; 
  box-shadow:0 22px 48px rgba(0,0,0,.16); max-width:940px }

/* Prevent any hero videos elsewhere */
header .bg, header .vg-bg{ display:none !important }

/* ---------- CHAOS (home only) ---------- */
#chaos{ position:relative; border-radius:22px; overflow:hidden; }
#chaos .bg{ position:absolute; inset:0; z-index:-2 }
#chaos .bg video{ width:100%; height:100%; object-fit:cover; filter:brightness(.62) blur(1px) }
#chaos .scrim{ position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg, rgba(13,27,76,.35), rgba(13,27,76,.15)) }
#chaos .cards{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; padding:18px }
@media(max-width:1000px){ #chaos .cards{ grid-template-columns:repeat(2,minmax(0,1fr)) } }
.card{ background:rgba(255,255,255,.98); border:1px solid rgba(0,0,0,.08); border-radius:16px; padding:14px 16px; box-shadow:0 14px 32px rgba(13,27,76,.08) }
#chaos .legible{ background:rgba(255,255,255,.96); color:var(--deep); padding:12px 14px; border-radius:14px; box-shadow:0 10px 24px rgba(0,0,0,.08); display:inline-block }

/* ---------- HOW WE CAN HELP ---------- */
.help-grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px }
.help-card{ background:linear-gradient(180deg,#fff,#F7FAFF); border:1px solid rgba(13,27,76,.08); border-radius:18px; 
  box-shadow:0 18px 40px rgba(13,27,76,.08); transform:translateZ(0); transition:transform .28s ease, box-shadow .28s ease; will-change: transform; }
.help-card:hover{ transform:translateY(-4px); box-shadow:0 26px 56px rgba(13,27,76,.16) }
.help-grid:hover{ transform:none !important } /* container never animates */

/* ---------- NICHE TILES ---------- */
.tiles{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px }
@media (max-width:1100px){ .tiles{ grid-template-columns:repeat(2,minmax(0,1fr)) } }
@media (max-width:720px){ .tiles{ grid-template-columns:1fr } }
.tile{ position:relative; overflow:hidden; border-radius:18px; padding:16px; background:linear-gradient(180deg,#fff,#F7FAFF); border:1px solid rgba(13,27,76,.08); box-shadow:0 18px 40px rgba(13,27,76,.08); transform:translateY(6px); opacity:0 }
.tile.reveal{ transform:translateY(0); opacity:1; transition:transform .6s ease, opacity .6s ease }
.tile .img{ position:relative; height:140px; margin:-16px -16px 12px -16px; overflow:hidden }
.tile .img img{ width:100%; height:100%; object-fit:cover; transform:scale(1.04) }
.tile:hover{ box-shadow:0 22px 48px rgba(13,27,76,.14) }
.tile:hover .img img{ transform:scale(1.07) }
.tile h4{ margin:6px 0 8px; display:flex; align-items:center; gap:10px; color:var(--deep) }
.tile ul{ margin:0; padding-left:18px }
.tile .badge{ position:absolute; top:12px; left:12px; padding:6px 10px; border-radius:999px; background:rgba(255,255,255,.9); border:1px solid rgba(13,27,76,.08); box-shadow:0 8px 18px rgba(13,27,76,.08); font-weight:700; font-size:.82rem }

/* Dark bands */
.band-dark{ background:linear-gradient(180deg,#0D1B4C 0%, #16286A 100%); color:#fff; border-radius:22px; padding:22px; box-shadow:0 18px 40px rgba(0,0,0,.25) }
.band-dark .tile{ background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.12) }
.band-dark .tile h4{ color:#fff }
.band-dark .tile .badge{ background:rgba(255,255,255,.15); color:#fff; border-color:rgba(255,255,255,.25) }

/* Founder */
#about .founder-photo{ width:220px; height:220px; border-radius:999px; object-fit:cover; object-position:50% 25%; box-shadow:0 14px 36px rgba(0,0,0,.18) }

/* ROI area */
#roi{ background:linear-gradient(180deg,#EFE9FF 0%, #E8FBFF 100%); border:1px solid rgba(108,31,168,.16); border-radius:16px; padding:16px; box-shadow:0 12px 30px rgba(13,27,76,.10) }
#roi-calc{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; align-items:end }
#roi-calc .field{ display:flex; flex-direction:column; gap:6px }
#roi-calc input{ padding:10px 12px; border-radius:10px; border:1px solid rgba(13,27,76,.18) }
#roi-calc .result{ grid-column:1 / -1; background:#fff; border:1px solid rgba(13,27,76,.12); border-radius:14px; padding:12px 14px; font-weight:800 }


/* Industry icons (emoji-based) */
.industry-tile .industry-icon{
  display:inline-block;
  margin-right:6px;
  font-size:24px;
  line-height:1;
  vertical-align:middle;
}



/* === Vanguard custom tweaks v5.4.1 === */

/* Hero card: solid white, dark text, no purple gradient text */
body.home #hero .copy,
body.home .hero .copy,
body.home .hero .content,
body.home #hero .content{
  background:#ffffff;
  color:#0D1B4C;
}

/* Kill gradient text treatment in hero & niche headings on home/industries */
body.home .grad,
body.home #hero .grad,
body.home .hero .grad,
body.home.industries .grad{
  background:none !important;
  -webkit-background-clip:initial !important;
  background-clip:initial !important;
  -webkit-text-fill-color:initial !important;
  color:#0D1B4C !important;
  text-shadow:none;
}

/* "With Vanguard" niche sections: white rounded cards instead of dark gradient */
.with-vanguard-card{
  background:#ffffff;
  border-radius:24px;
  border:1px solid rgba(226,232,240,1);
  padding:28px 32px;
  color:#0D1B4C;
  box-shadow:0 18px 40px rgba(13,27,76,.14);
}
.with-vanguard-card h3,
.with-vanguard-card h4{
  color:#0D1B4C;
}
.with-vanguard-card p,
.with-vanguard-card li{
  color:#42507a;
}


/* Industry niche service cards: clean white cards, dark text */
body.industry-page .niche-grid .card{
  background:#ffffff;
  border-radius:20px;
  border:1px solid #e2e8f0;
  box-shadow:0 16px 40px rgba(13,27,76,0.14);
}
body.industry-page .niche-grid .card h3,
body.industry-page .niche-grid .card p,
body.industry-page .niche-grid .card li{
  color:#0D1B4C;
}
body.industry-page .niche-grid .card ul{
  margin:0;
  padding-left:18px;
}


/* === HERO card: white with dark text (home) === */
body.home .container.hero .content{
  background:#ffffff;
  color:#0D1B4C;
  border-radius:24px;
  padding:26px 28px;
  box-shadow:0 22px 60px rgba(0,0,0,0.22);
}
body.home .container.hero .content h1,
body.home .container.hero .content p,
body.home .container.hero .content .kicker{
  color:#0D1B4C;
  text-shadow:none;
}
body.home .container.hero .grad{
  background:none !important;
  -webkit-background-clip:initial !important;
  background-clip:initial !important;
  -webkit-text-fill-color:initial !important;
  color:#0D1B4C !important;
}

/* Team headshots on team page */
body.team .founder .headshot-wrap{
  display:flex;
  justify-content:center;
  align-items:flex-end;
  margin-top:8px;
  margin-bottom:10px;
}
body.team .founder .team-headshot{
  width:140px;
  height:140px;
  border-radius:999px;
  object-fit:cover;
  box-shadow:0 14px 34px rgba(0,0,0,0.22);
}

/* Force niche service cards to light style on industry pages */
body.industry-page .niche-grid .card{
  background:#ffffff !important;
  border-radius:20px;
  border:1px solid #e2e8f0 !important;
  box-shadow:0 16px 40px rgba(13,27,76,0.16) !important;
}
body.industry-page .niche-grid .card h3,
body.industry-page .niche-grid .card p,
body.industry-page .niche-grid .card li{
  color:#0D1B4C !important;
  text-shadow:none !important;
}


/* === HERO container cleanup (home) === */
body.home .container.hero{
  position:relative;
  isolation:isolate;
}
body.home .container.hero::before{
  background:none !important;
}


/* Industry pages: "What's really happening today" band as rounded card */
body.industry-page .contrast-band{
  border-radius:24px;
  padding:40px 48px;
  box-shadow:0 22px 60px rgba(0,0,0,0.38);
  overflow:hidden;
}
body.industry-page .contrast-band h2{
  margin-top:0;
}


/* Team page: founders section contrast */
body.team .team-founders{
  background:linear-gradient(180deg,#F5F7FF 0%, #FFFFFF 70%);
  border-radius:24px;
  padding:40px 32px;
  box-shadow:0 18px 48px rgba(13,27,76,0.12);
}
body.team .team-founders .founder-grid{
  gap:20px;
}


/* Home: kill gradient text on dark bands for readability */
body.home #investment .grad,
body.home #industries .grad{
  background:none !important;
  -webkit-background-clip:initial !important;
  background-clip:initial !important;
  -webkit-text-fill-color:initial !important;
  color:#ffffff !important;
  text-shadow:none;
}

/* Team page: no gradient headings, keep clean dark text */
body.team .grad{
  background:none !important;
  -webkit-background-clip:initial !important;
  background-clip:initial !important;
  -webkit-text-fill-color:initial !important;
  color:#0D1B4C !important;
  text-shadow:none;
}


/* "Meet your AI staff" heading on dark contrast band */
body.home #staff .grad{
  background:none !important;
  -webkit-background-clip:initial !important;
  background-clip:initial !important;
  -webkit-text-fill-color:initial !important;
  color:#ffffff !important;
  text-shadow:none;
}
body.home #staff .kicker{
  color:rgba(255,255,255,0.86);
}

/* Team hero: add subtle very light band so right card doesn't float in empty white */
body.team .team-hero{
  background:linear-gradient(180deg,#F8F9FF 0%, #FFFFFF 70%);
  border-radius:24px;
  padding:40px 32px;
}


/* Hero: add breathing room below nav */
body.home .container.hero{
  margin-top:32px;
}


/* Team hero card layout for symmetry */
body.team .team-hero-grid{
  gap:24px;
  align-items:stretch;
}
body.team .team-hero .card{
  box-shadow:0 18px 40px rgba(13,27,76,0.06);
}

/* Founding team section spacing */
body.team .team-founders{
  padding:32px 28px 40px;
}
body.team .team-founders h2{
  margin-top:0;
  margin-bottom:18px;
}
body.team .founder-grid{
  gap:22px;
}
body.team .founder.card .content{
  padding-top:8px;
  padding-bottom:18px;
}


/* Restore brand gradient on hero headline */
body.home .container.hero .grad{
  background:linear-gradient(90deg,var(--purple),var(--sky));
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  text-shadow:none;
}

/* Team page: use brand gradient on main headings */
body.team .grad{
  background:linear-gradient(90deg,var(--purple),var(--sky));
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  text-shadow:none;
}


/* Team: Founding team band spacing */
body.team .team-founders{
  padding:48px 32px 32px;
}
body.team .team-founders h2{
  margin-top:0;
  margin-bottom:20px;
}
body.team .team-founders .founder-grid{
  gap:24px;
}

/* Team headshots: more consistent framing */
body.team .founder .team-headshot{
  object-fit:cover;
  object-position:50% 20%;
}

/* Team: reduce gap between hero and next section */
body.team .team-hero + .section{
  padding-top:32px;
}


/* Bulletproof hero headline styling */
body.home #hero-headline{
  color:#0D1B4C !important;
  -webkit-text-fill-color:#0D1B4C !important;
  background:none !important;
  text-shadow:none !important;
  font-size:clamp(40px, 4vw, 56px);
  line-height:1.05;
}


/* Team page: final CTA card layout */
body.team .team-cta{
  padding-top:32px;
  padding-bottom:72px;
}
body.team .team-cta .card{
  max-width:960px;
  margin:0 auto;
  box-shadow:0 22px 48px rgba(13,27,76,0.16);
}
body.team .team-cta h2.grad{
  font-size:clamp(32px, 3vw, 40px);
}
body.team .team-cta p{
  max-width:720px;
  margin:12px auto 24px;
}


/* Stronger overall background for team page */
body.team{
  background:linear-gradient(180deg,#E6D2FF 0%, #FFFFFF 35%, #E6D2FF 100%);
}

/* Make team hero + founders + CTA sit on tinted bands for contrast */
body.team .team-hero{
  background:linear-gradient(135deg,#E8D9FF 0%, #FFFFFF 60%);
}

body.team .team-founders{
  background:linear-gradient(135deg,#E2C7FF 0%, #FFFFFF 55%);
  border-radius:24px;
  box-shadow:0 24px 60px rgba(13,27,76,0.10);
}

body.team .team-cta{
  background:linear-gradient(135deg,#E6D2FF 0%, #FFFFFF 65%);
  border-radius:24px;
}

/* Ensure cards still read as cards on tinted bands */
body.team .team-hero .card,
body.team .team-founders .card,
body.team .team-cta .card{
  background:#FFFFFF;
}



/* Strong brand gradient for TEAM sections */
body.team .team-hero,
body.team .team-founders,
body.team .team-cta{
  background: linear-gradient(135deg,#6C1FA8 0%, #0D1B4C 100%) !important;
  border-radius:24px;
  padding-top:72px !important;
  padding-bottom:72px !important;
}

/* Ensure cards stand out */
body.team .team-hero .card,
body.team .team-founders .card,
body.team .team-cta .card{
  background:#FFFFFF !important;
  box-shadow:0 22px 48px rgba(0,0,0,0.18) !important;
}


/* Soft premium branded gradient for TEAM sections */
body.team .team-hero,
body.team .team-founders,
body.team .team-cta{
  background: linear-gradient(180deg,#CBB2FF 0%, #E9E4FF 50%, #FFFFFF 100%) !important;
  border-radius:24px;
  padding-top:72px !important;
  padding-bottom:72px !important;
}

/* Ensure white cards stay clean */
body.team .team-hero .card,
body.team .team-founders .card,
body.team .team-cta .card{
  background:#FFFFFF !important;
  box-shadow:0 18px 44px rgba(13,27,76,0.12) !important;
}
