/* ============================================================================
   HOMEPAGE LIGHT THEME
   ----------------------------------------------------------------------------
   Converts the homepage from the dark (#010D12) theme to a light theme built on
   white + subtle brand-cyan tints. EVERY rule is scoped to `body.ac-homepage`
   so the rest of the site (which shares many of these selectors and loads the
   same global stylesheet) stays on the dark theme. Loaded only on the front
   page, after all other homepage CSS. Fully reversible: dequeue this file.

   Brand accent stays #07A9D1 / #06CFC3 (cyan-teal). Only backgrounds + text
   flip; the gradient accents, primary buttons and cyan rims are kept.
   ============================================================================ */

body.ac-homepage {
  /* Light palette (cool off-white with a slight cyan bias toward the brand) */
  --lt-page:      #F1F6F9;   /* base page ground */
  --lt-surface:   #FFFFFF;   /* white cards / panels */
  --lt-tint:      #E9F3F7;   /* soft cyan panel */
  --lt-tint-deep: #DCEDF3;   /* deeper cyan panel */
  --lt-ink:       #08222E;   /* primary text (dark brand navy, not pure black) */
  --lt-ink-soft:  #08222E;   /* secondary text — darkened from #34505C so no greyish text remains */
  --lt-muted:     #08222E;   /* muted text — darkened from #566B77 so no greyish text remains */
  --lt-border:    rgba(9, 32, 42, 0.10);
  --lt-border-brand: rgba(7, 169, 209, 0.22);
  --lt-brand-ink: #0B6F88;   /* readable cyan for labels on light */

  /* Coral-red "attention" accent (blue = trust, red = worth-your-attention).
     Used sparingly — hero rotating word, the final CTA, proof tags, insight
     tags, and hover/active states. Teal stays the primary brand/action colour. */
  --lt-attn:        #E5484D;  /* coral-red pop (UI / on dark) */
  --lt-attn-strong: #C62B30;  /* darker coral for small text / hover on white */

  background-color: var(--lt-page) !important;
  color: var(--lt-ink) !important;
}

/* ---------------------------------------------------------------- NAV / HEADER
   ADAPTIVE liquid-glass pill:
     • Over the hero (default)      → dark smoky glass, white text
     • Past the hero (.past-hero)   → light cyan-tinted glass, dark text
   `.past-hero` is toggled on .ac-header-wrap by an IntersectionObserver on the
   hero (ac-homepage.js). Both states lean hard into "liquid glass": heavy
   backdrop blur + saturation + a touch of brightness (refraction), a bright
   specular top edge, a soft lift, and the brand-teal rim (::before).

   NOTE: --lg-pill-bg resolves at :root with the dark tint, so the token can't be
   overridden downstream — the `background` + `backdrop-filter` are set directly.
   Scoped to body.ac-homepage; the rest of the site keeps the base dark nav. */

/* Smooth flip between the two states + text-colour crossfade */
body.ac-homepage .ac-header-pill {
  transition: background .5s ease, box-shadow .5s ease,
              -webkit-backdrop-filter .5s ease, backdrop-filter .5s ease !important;
}
body.ac-homepage .ac-nav__list a,
body.ac-homepage .ac-header-icon,
body.ac-homepage .ac-hamburger span { transition: color .4s ease, stroke .4s ease, background .4s ease !important; }

/* ── State A — over the hero: enhanced DARK liquid glass ── */
body.ac-homepage .ac-header-pill {
  background: linear-gradient(160deg, rgba(20,30,44,0.24) 0%, rgba(6,12,20,0.34) 100%) !important;
  -webkit-backdrop-filter: blur(30px) saturate(185%) brightness(1.06) !important;
          backdrop-filter: blur(30px) saturate(185%) brightness(1.06) !important;
  box-shadow: 0 12px 46px rgba(0,0,0,0.45),
              inset 0 1px 0 rgba(255,255,255,0.30),
              inset 0 -1px 1px rgba(255,255,255,0.06) !important;
}
/* ── State B — past the hero (over light content): LIGHT liquid glass ── */
body.ac-homepage .ac-header-wrap.past-hero .ac-header-pill {
  background: linear-gradient(160deg, rgba(255,255,255,0.48) 0%, rgba(226,244,249,0.38) 100%) !important;
  -webkit-backdrop-filter: blur(32px) saturate(180%) brightness(1.05) !important;
          backdrop-filter: blur(32px) saturate(180%) brightness(1.05) !important;
  box-shadow: 0 12px 42px rgba(12,60,80,0.18),
              inset 0 1px 0 rgba(255,255,255,0.95),
              inset 0 -1px 1px rgba(7,169,209,0.10) !important;
}
/* Text / icons: white over the hero (base), dark once past it */
body.ac-homepage .ac-header-wrap.past-hero .ac-nav__list a { color: var(--lt-ink) !important; }
body.ac-homepage .ac-header-wrap.past-hero .ac-nav__list a:hover { color: var(--ac-primary) !important; }
body.ac-homepage .ac-header-wrap.past-hero .ac-nav__list a.active {
  background: rgba(7, 169, 209, 0.10) !important;
  color: var(--lt-brand-ink) !important;
}
body.ac-homepage .ac-header-wrap.past-hero .ac-header-icon { color: var(--lt-ink) !important; }
body.ac-homepage .ac-header-wrap.past-hero .ac-header-icon svg,
body.ac-homepage .ac-header-wrap.past-hero .ac-header-icon svg * { stroke: var(--lt-ink) !important; }
/* Circle chrome: the white glass tint vanishes on the light pill — swap to ink */
body.ac-homepage .ac-header-wrap.past-hero .ac-header-icon {
  background: rgba(8, 34, 46, 0.06) !important;
  border-color: rgba(8, 34, 46, 0.22) !important;
}
body.ac-homepage .ac-header-wrap.past-hero .ac-header-icon:hover {
  background: rgba(8, 34, 46, 0.12) !important;
  border-color: rgba(8, 34, 46, 0.38) !important;
}
body.ac-homepage .ac-header-wrap.past-hero .ac-hamburger span { background: var(--lt-ink) !important; }
/* Teal "Let's Talk" CTA kept as-is in both states (brand pop). Mobile
   full-screen menu overlay left dark (separate context). */

/* ---------------------------------------------------------------------- BADGES
   The WHAT-WE-DO eyebrow is now a .racetrack-badge like every other section
   eyebrow (one unified spec in ac-homepage.unmin.css — Client Impact is the
   reference), so no per-section badge override is needed here. The HERO badge
   is untouched (the hero is left entirely to the base stylesheet). */

/* ------------------------------------------------------------------------ HERO
   HANDS OFF THE HERO. The hero — the dark ShaderGradient <video> animation and
   all of its content — is left ENTIRELY to the base stylesheet + ac-hero-tri.css,
   exactly as it worked before the light theme existed. No video / background /
   badge / logo / rotator overrides, and no coral in the hero.

   The single line below is the ONLY hero rule, and it does NOT restyle the
   hero: it just cancels THIS file's own page-wide `body{color:--lt-ink}` so the
   hero's colourless text (the H1) keeps the white it inherited before. Without
   it, the page-level dark text colour would bleed onto the dark hero. */
body.ac-homepage .ac-hero { color: #FFFFFF !important; }

/* -------------------------------------------------------------- WHAT WE DO
   Transparent section (shows the page ground). Only its white text needs to
   flip; the .ac-service-card internals are already light. */
body.ac-homepage .ac-what-we-do,
body.ac-homepage .ac-what-we-do__headline { color: var(--lt-ink) !important; }

/* Service-card body + outcomes text: base ac-firm.css sets a slate-grey
   (#4A5568) that reads washed-out on the light homepage. Darken to the primary
   ink so no greyish body text remains. (ac-firm.css is left untouched so the
   dark capability/firm pages keep the grey they were designed with.) */
body.ac-homepage .ac-service-card__body,
body.ac-homepage .ac-service-card__outcomes { color: var(--lt-ink) !important; }

/* Left-align the section header (base ac-firm.css centres it) */
/* The capabilities section sits on WHITE, not the blue-tinted page ground
   (--lt-page), so the white accordion pills + white open card read on a
   clean surface. */
body.ac-homepage .ac-what-we-do { background: #FFFFFF !important; }

body.ac-homepage .ac-what-we-do__header { text-align: left; }
body.ac-homepage .ac-what-we-do__subtext {
  margin-left: 0;
  margin-right: 0;
  /* base ac-firm.css caps it at 620px for a CENTRED header — left-aligned on
     the wide homepage container that read squeezed into the corner. Uncapped
     so the description sits on ONE line on desktop. */
  max-width: none;
  /* headline→description gap matches the industries section
     (.ac-industries__title carries margin 0 0 20px) */
  margin-top: 20px;
  /* match .ac-industries__body (24px/1.7) at every breakpoint — style.css
     drops --section-subtitle-size to 17px on small screens, this stays put */
  font-size: 24px;
  line-height: 1.7;
}

/* ------------------------------------------------------------------ INDUSTRIES
   The framed industries panel (.ac-industries--framed) is a deliberate
   dark-on-photo section inside the light page — HANDS-OFF here; it styles
   itself in ac-homepage.unmin.css. */

/* ------------------------------------------------------------------------- FAQ
   Scoped to .ac-home-faq so capability-page FAQs stay dark. */
body.ac-homepage .ac-home-faq {
  background: #FFFFFF !important;
}
body.ac-homepage .ac-home-faq__heading { color: var(--lt-ink) !important; }
body.ac-homepage .ac-home-faq .ac-capp-faq__trigger { color: var(--lt-ink) !important; }
body.ac-homepage .ac-home-faq .ac-capp-faq__trigger:hover { color: var(--ac-primary) !important; }
/* Greyish answers, matching the testimonial card body (--ac-grey-text) */
body.ac-homepage .ac-home-faq .ac-capp-faq__answer p { color: var(--ac-grey-text) !important; }
body.ac-homepage .ac-home-faq .ac-capp-faq__item,
body.ac-homepage .ac-home-faq .ac-capp-faq__item:first-child { border-color: var(--lt-border) !important; }
body.ac-homepage .ac-home-faq__more-label { color: var(--lt-ink) !important; }

/* -------------------------------------------------------------------- INSIGHTS
   Soft cyan ground with white cards. */
body.ac-homepage .ac-insights-posts {
  background: #FFFFFF !important;
}
body.ac-homepage .ac-insights-posts__title { color: var(--lt-ink) !important; }
body.ac-homepage .ac-post-card {
  background: var(--lt-surface) !important;
  border-color: var(--lt-border) !important;
  box-shadow: 0 4px 20px rgba(12, 40, 55, 0.06) !important;
}
body.ac-homepage .ac-post-card:hover {
  border-color: var(--lt-border-brand) !important;
  box-shadow: 0 10px 32px rgba(7, 169, 209, 0.14) !important;
}
/* Card text was styled for the dark theme (white title, white-alpha meta) —
   restate every channel for white cards or the titles vanish. */
body.ac-homepage .ac-post-card__title { color: var(--lt-ink) !important; }
body.ac-homepage .ac-post-card__excerpt { color: var(--lt-muted) !important; }
body.ac-homepage .ac-post-card__date,
body.ac-homepage .ac-post-card__read-time { color: var(--lt-muted) !important; }
body.ac-homepage .ac-post-card__footer { border-top-color: var(--lt-border) !important; }

/* ------------------------------------------------------------------------- CTA
   Inner panel: near-black gradient → soft cyan brand panel on the white wrapper.
   Scoped to body.ac-homepage so the site-wide .ac-cta stays dark. */
body.ac-homepage .ac-cta {
  background: linear-gradient(180deg, #EAF6FA 0%, #DCEFF4 45%, #CDE7EF 100%) !important;
}
body.ac-homepage .ac-cta__title,
body.ac-homepage .ac-cta__heading { color: var(--lt-ink) !important; }
body.ac-homepage .ac-cta__subtitle { color: var(--lt-ink-soft) !important; }
body.ac-homepage .ac-cta__reassurance,
body.ac-homepage .ac-cta-note { color: var(--lt-muted) !important; }
/* Outline button had white text/border for the dark panel → dark on light */
body.ac-homepage .ac-cta .ac-btn--outline {
  color: var(--lt-ink) !important;
  border-color: var(--lt-border-brand) !important;
}
body.ac-homepage .ac-cta .ac-btn--outline:hover {
  color: var(--ac-primary) !important;
  border-color: var(--ac-primary) !important;
}

/* ---------------------------------------------------------------------- FOOTER
   Homepage-only: light ground, dark text, dark LinkedIn glyph. (The brand logo
   SVG is left untouched so its gradient stays intact.) */
body.ac-homepage .ac-footer {
  background: #FFFFFF !important;
  color: var(--lt-ink) !important;
}
body.ac-homepage .ac-footer__heading { color: var(--lt-ink) !important; }
body.ac-homepage .ac-footer__brand .ac-logo span { color: var(--lt-ink) !important; }
/* Description reads as body copy on the white footer, not a grey footnote */
body.ac-homepage .ac-footer__desc { color: var(--lt-ink) !important; }body.ac-homepage .ac-footer__address-label,
body.ac-homepage .ac-footer__address-label span,
body.ac-homepage .ac-footer__address address span { color: var(--lt-ink) !important; }
body.ac-homepage .ac-footer a.ac-footer__email-link { color: var(--lt-ink) !important; }
body.ac-homepage .ac-footer__email svg { stroke: var(--lt-ink) !important; }
/* White address pill needs an outline and ink text on the white footer —
   outranks the blanket `.ac-footer a` muted rule */
body.ac-homepage .ac-footer a.ac-pill-cta.ac-footer__map-pill {
  color: var(--lt-ink) !important;
  border: 1.5px solid rgba(8, 34, 46, 0.18);
}
body.ac-homepage .ac-footer a.ac-footer__email-link:hover { color: var(--ac-primary) !important; }
body.ac-homepage .ac-footer__links a,
body.ac-homepage .ac-footer a { color: var(--lt-muted) !important; }
body.ac-homepage .ac-footer__links a:hover,
body.ac-homepage .ac-footer a:hover { color: var(--ac-primary) !important; }
body.ac-homepage .ac-footer__linkedin svg path { fill: var(--lt-ink) !important; }
body.ac-homepage .ac-footer__links li > span { color: var(--lt-muted) !important; }
body.ac-homepage .ac-footer__reach-cta { color: var(--lt-ink) !important; }
/* Outranks the blanket `.ac-footer a` muted rule above */
body.ac-homepage .ac-footer a.ac-footer__phone { color: var(--lt-ink) !important; }
body.ac-homepage .ac-footer a.ac-footer__phone:hover { color: var(--ac-primary) !important; }
body.ac-homepage .ac-footer__linkedin--min:hover svg path { fill: var(--ac-primary) !important; }
body.ac-homepage .ac-footer__linkedin--min { border-color: var(--lt-muted) !important; }
body.ac-homepage .ac-footer__linkedin--min:hover { border-color: var(--ac-primary) !important; }
body.ac-homepage .ac-footer__divider {
  background-color: var(--lt-border) !important;
  color: var(--lt-border) !important;
  opacity: 1 !important;
}

/* ============================================================================
   CORAL "ATTENTION" ACCENTS
   Blue (teal) reads as trustworthy; a sparing warm-red pop reads as
   worth-your-attention. Applied ONLY to a handful of "look here / this is
   proof / act now" moments so it stays a signal, not a second brand colour.
   Everything else stays teal. (Hero rotating word is handled in the HERO block
   above — this covers the light sections below the fold.)
   ============================================================================ */

/* 1. FINAL CTA — the conversion moment. The primary "Let's talk" button becomes
      the coral action; teal "Book appointment" outline stays the calm option. */
body.ac-homepage .ac-cta .ac-btn--cta-white {
  color: #FFFFFF !important;
  background: linear-gradient(135deg, #FF6B5E 0%, var(--lt-attn) 100%) !important;
  border-color: transparent !important;
}
body.ac-homepage .ac-cta .ac-btn--cta-white:hover {
  color: #FFFFFF !important;
  background: linear-gradient(135deg, var(--lt-attn) 0%, var(--lt-attn-strong) 100%) !important;
  box-shadow: 0 10px 30px rgba(229, 72, 77, 0.35) !important;
  border-color: transparent !important;
}

/* 2. INDUSTRY TAGS — the case-study card industry tags (Non-profit /
      Healthcare, Construction, Retail & E-commerce, Fintech & Payments)
      use the brand attention red (small-text-on-white variant), per user
      request 2026-07-06. */
body.ac-homepage .ac-impact-card__tag,
body.ac-homepage .racetrack-card__tag { color: var(--lt-attn-strong, #C62B30) !important; }

/* 3. INSIGHT category chips — dark ink text with a subtle neutral border. */
body.ac-homepage .ac-post-card__category {
  color: var(--lt-ink) !important;
  border-color: var(--lt-border) !important;
}

/* 4. HOVER / ACTIVE states — "read more / explore" arrows warm up on hover. */
body.ac-homepage .ac-service-card:hover .ac-service-card__link,
body.ac-homepage .ac-link-arrow:hover,
body.ac-homepage .ac-case-study__footer .ac-link-arrow:hover {
  color: var(--lt-attn-strong) !important;
}

/* 5. FAQ — the OPEN item's chevron turns coral so the active row stands out. */
body.ac-homepage .ac-home-faq .ac-capp-faq__trigger[aria-expanded="true"] .ac-capp-faq__icon {
  color: var(--lt-attn) !important;
}
