/* ============================================================
   READABILITY PASS
   - Darker ink across the board
   - Bigger, weightier headlines + body
   - Fill empty whitespace in hero & cards
   ============================================================ */

:root {
  /* Drive the entire ink ramp darker */
  --ink-0: #0A0907 !important;   /* near-black */
  --ink-1: #1A1815 !important;
  --ink-2: #3A352C !important;   /* secondary, was #5C5750 */
  --ink-3: #5A5446 !important;   /* tertiary, was #8C857A */
}

/* ============================================================
   HERO — bigger headline + lede, darker text
   ============================================================ */
.hero-headline {
  font-size: clamp(80px, 11vw, 200px) !important;
  letter-spacing: -0.05em;
  line-height: 0.86;
  font-weight: 500 !important;
  color: var(--ink-0);
}
.hero-headline em {
  font-weight: 500 !important;
  color: var(--warm-orange-deep, #B85A22);
}

.hero-sub {
  font-size: clamp(20px, 1.6vw, 24px) !important;
  line-height: 1.5;
  color: #1A1815 !important;
  font-weight: 500;
  max-width: 60ch;
}
.hero-sub strong {
  color: #0A0907 !important;
  font-weight: 600 !important;
}
.hero-sub em {
  color: var(--warm-orange-deep, #B85A22);
  font-style: italic;
}

/* ============================================================
   NETWORK SIGNUP — slide-in presence
   ============================================================ */
.network-signup {
  max-width: 820px !important;
  padding: clamp(40px, 4.5vw, 64px) !important;
  animation: bca-signup-slide-in 900ms cubic-bezier(0.16, 1, 0.3, 1) 200ms both;
  position: relative;
  margin-bottom: var(--s-12) !important;
}

/* Animated edge glow that pulses lightly to draw the eye */
.network-signup::after {
  content: "";
  position: absolute;
  inset: -2px;
  border-radius: inherit;
  padding: 2px;
  background: linear-gradient(135deg,
    rgba(232, 122, 59, 0.55) 0%,
    rgba(157, 126, 69, 0.25) 40%,
    rgba(255, 255, 255, 0.6) 60%,
    rgba(232, 122, 59, 0.45) 100%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
  z-index: -1;
  opacity: 0.85;
  animation: bca-signup-glow 4.5s ease-in-out infinite;
}

@keyframes bca-signup-slide-in {
  from { opacity: 0; transform: translateX(-48px) scale(0.96); }
  to   { opacity: 1; transform: translateX(0) scale(1); }
}
@keyframes bca-signup-glow {
  0%, 100% { opacity: 0.65; }
  50%      { opacity: 1; }
}

.network-signup-title {
  font-size: clamp(36px, 4.2vw, 60px) !important;
  font-weight: 500 !important;
  color: #0A0907 !important;
  line-height: 1.0 !important;
  max-width: 20ch;
}
.network-signup-title em {
  color: var(--warm-orange-deep, #B85A22) !important;
  font-weight: 500 !important;
}
.network-signup-eyebrow {
  font-size: 14px !important;
  letter-spacing: 0.22em !important;
  color: var(--warm-orange-deep, #B85A22) !important;
  font-weight: 700 !important;
  padding: 8px 16px !important;
  background: rgba(232, 122, 59, 0.10) !important;
  border-color: rgba(232, 122, 59, 0.25) !important;
}
.network-signup-eyebrow::before {
  width: 9px !important;
  height: 9px !important;
}
.network-signup-form {
  gap: var(--s-3) !important;
}
.network-signup-submit {
  font-size: 17px !important;
  padding: 18px 28px !important;
  font-weight: 600 !important;
}
.network-signup-input {
  font-size: 20px !important;
  padding: 18px 24px !important;
}

/* Subtle entrance for the surrounding hero ctas so the signup leads */
.hero-ctas { animation-delay: 800ms !important; }
/* ============================================================
   HERO META — bigger, bolder
   ============================================================ */
.hero-meta {
  font-size: clamp(15px, 1.15vw, 19px) !important;
  letter-spacing: 0.14em !important;
  font-weight: 600 !important;
  color: #0A0907 !important;
  gap: clamp(20px, 3vw, 48px);
}
.hero-meta-status {
  font-size: clamp(15px, 1.15vw, 19px) !important;
  color: #0A0907 !important;
  font-weight: 600 !important;
}
.hero-meta-status .status-pulse {
  width: 10px !important;
  height: 10px !important;
}
.hero-meta > span:last-child {
  color: #1A1815 !important;
  font-weight: 500 !important;
}

.hero-stat-value {
  font-size: clamp(40px, 4.5vw, 64px) !important;
  font-weight: 500 !important;
  color: #0A0907 !important;
  letter-spacing: -0.035em;
}
.hero-stat-label {
  font-size: 13px !important;
  letter-spacing: 0.14em;
  color: #1A1815 !important;
  font-weight: 500;
}

/* ============================================================
   NETWORK SIGNUP — fill the space + darker copy
   ============================================================ */
.network-signup {
  max-width: 760px !important;
  padding: clamp(36px, 4vw, 56px) !important;
}
.network-signup-title {
  font-size: clamp(34px, 3.8vw, 54px) !important;
  font-weight: 500 !important;
  color: #0A0907 !important;
  line-height: 1.02;
  max-width: 20ch;
}
.network-signup-body {
  font-size: 20px !important;
  color: #1A1815 !important;
  line-height: 1.55;
  font-weight: 500;
}
.network-signup-eyebrow {
  font-size: 12px !important;
  letter-spacing: 0.18em;
  color: var(--warm-orange-deep, #B85A22) !important;
  font-weight: 600;
}
.network-signup-meta {
  font-size: 12px !important;
  color: #1A1815 !important;
  font-weight: 500;
}
.network-signup-input {
  font-size: 20px !important;
  color: #0A0907 !important;
  font-weight: 500;
  padding: 16px 22px !important;
}
.network-signup-submit {
  font-size: 16px !important;
  font-weight: 600 !important;
}

/* ============================================================
   SECTION TITLES & EYEBROWS — bolder + darker
   ============================================================ */
.section-title,
.positioning-title,
.featured-case-title {
  font-weight: 500 !important;
  color: #0A0907 !important;
}
.section-eyebrow {
  font-size: 12px !important;
  color: #1A1815 !important;
  font-weight: 600;
  letter-spacing: 0.20em;
}
.section-lede {
  font-size: 20px !important;
  color: #1A1815 !important;
  line-height: 1.5;
  font-weight: 500;
}

/* ============================================================
   CARD COPY — readable
   ============================================================ */
.group-pillar-name,
.thought-title,
.case-name,
.sebo-pillar h3 {
  color: #0A0907 !important;
  font-weight: 500 !important;
}
.group-pillar-desc,
.thought-body,
.case-blurb,
.sebo-pillar p,
.pillar-desc,
.service-desc {
  color: #1A1815 !important;
  font-size: 20px !important;
  line-height: 1.55;
  font-weight: 500;
}

.group-pillar-tags li,
.case-tag,
.case-metrics,
.pillar-num,
.service-num,
.thought-num,
.featured-case-client {
  color: #3A352C !important;
  font-weight: 600 !important;
}

.thought-pull,
.quote-body {
  color: #0A0907 !important;
}

/* Pillar list rows */
.pillar-name {
  font-size: clamp(22px, 2vw, 30px) !important;
  font-weight: 500 !important;
  color: #0A0907 !important;
}

/* Service rows */
.service-name {
  font-size: clamp(24px, 2.2vw, 36px) !important;
  font-weight: 500 !important;
  color: #0A0907 !important;
}

/* ============================================================
   NAV — darker links
   ============================================================ */
.nav-links a {
  color: #1A1815 !important;
  font-weight: 500 !important;
}
.nav-links a:hover { color: #0A0907 !important; background: rgba(255, 255, 255, 0.5) !important; }
.nav-brand strong { color: #0A0907 !important; font-weight: 600 !important; }

/* ============================================================
   FOOTER manifesto + columns
   ============================================================ */
.footer-manifesto { color: #F2EDDE !important; }

/* ============================================================
   GROWTH INTELLIGENCE — keeps dark, doesn't need re-tinting
   ============================================================ */

/* ============================================================
   TEAM — readable names
   ============================================================ */
.team-name {
  font-size: clamp(20px, 1.6vw, 26px) !important;
  font-weight: 500 !important;
  color: #0A0907 !important;
}
.team-role {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #3A352C !important;
}

/* ============================================================
   QUOTES
   ============================================================ */
.quote-body {
  font-size: clamp(24px, 2vw, 32px) !important;
  line-height: 1.3;
}
.quote-name { font-size: 16px !important; font-weight: 600 !important; color: #0A0907 !important; }
.quote-role { font-size: 13px !important; font-weight: 600 !important; color: #3A352C !important; }

/* ============================================================
   DIAGNOSTIC
   ============================================================ */
.diagnostic-intro h2 { color: #0A0907 !important; }
.diagnostic-intro p { color: #1A1815 !important; font-size: 20px !important; font-weight: 500 !important; }
.diag-step-q { color: #0A0907 !important; font-size: clamp(24px, 2.2vw, 34px) !important; }
.diag-step-label { color: #3A352C !important; font-weight: 600 !important; }
.diag-option { color: #0A0907 !important; font-size: 20px !important; font-weight: 500 !important; }
.diag-rec-text { color: #0A0907 !important; font-size: 20px !important; font-weight: 500 !important; }
.diag-rec-label { color: #3A352C !important; font-weight: 600 !important; }

/* ============================================================
   HERO: increase content surface so it fills the bg
   ============================================================ */
.hero {
  min-height: 110vh;
}
.hero-ctas .btn {
  padding: 18px 28px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
}
