/* Extension for high-intent financial-services pages. It consumes the approved
   homepage-v2 foundation in home-v2.css; source pages opt in with body.home-v2. */

body.home-v2 .eyebrow,
body.home-v2 .mono,
body.home-v2 .chip,
body.home-v2 .badge,
body.home-v2 .tool-card .n,
body.home-v2 .tool-card .intent {
  font-family: var(--mono);
  font-weight: 600;
  letter-spacing: .16em;
}

body.home-v2 .ais-hero,
body.home-v2 .tools-hero {
  max-width: none;
  margin: 0;
  padding: clamp(72px, 10vw, 132px) max(24px, calc((100vw - 1100px) / 2)) clamp(56px, 8vw, 96px);
  background:
    linear-gradient(115deg, rgba(7, 13, 24, .98), rgba(13, 20, 36, .96)),
    repeating-linear-gradient(90deg, transparent 0 93px, rgba(232, 237, 245, .035) 94px 95px);
  border-top: 1px solid rgba(232, 237, 245, .08);
  border-bottom: 1px solid rgba(232, 237, 245, .14);
  color: var(--hv2-fg);
}

body.home-v2 .ais-hero .eyebrow,
body.home-v2 .tools-hero .eyebrow {
  color: var(--hv2-accent);
}

body.home-v2 .ais-hero .eyebrow .dot,
body.home-v2 .tools-hero .eyebrow .dot {
  color: var(--hv2-fg-soft);
}

body.home-v2 .ais-hero h1,
body.home-v2 .tools-hero h1 {
  max-width: 18ch;
  color: #fff;
  font-family: var(--serif);
  font-size: clamp(42px, 5.5vw, 76px);
  letter-spacing: -.02em;
  line-height: 1.02;
}

body.home-v2 .ais-hero h1 em,
body.home-v2 .tools-hero h1 em {
  color: #9ecbff;
}

body.home-v2 .ais-hero .lede,
body.home-v2 .tools-hero .lede,
body.home-v2 .ais-hero .lede strong,
body.home-v2 .tools-hero .lede strong,
body.home-v2 .tools-hero .lock + span {
  color: var(--hv2-fg-2);
}

body.home-v2 .ais-hero .ais-cta .btn,
body.home-v2 .tools-hero .btn {
  border-color: var(--hv2-rule);
  color: var(--hv2-fg);
}

body.home-v2 .ais-hero .ais-cta .btn-primary,
body.home-v2 .tools-hero .btn-primary {
  background: var(--hv2-fg);
  border-color: var(--hv2-fg);
  color: var(--hv2-ink);
}

body.home-v2 .ais-hero .ais-cta .note {
  color: var(--hv2-fg-soft);
}

body.home-v2 .ais-sec .eyebrow,
body.home-v2 .tools-sec .eyebrow {
  color: var(--ink-mute);
  text-transform: uppercase;
}

body.home-v2 .ais-sec h2,
body.home-v2 .tools-sec h2,
body.home-v2 .tool-card h3,
body.home-v2 .faq h3,
body.home-v2 .ais-book h2,
body.home-v2 .tools-book h2 {
  font-family: var(--serif);
  letter-spacing: -.015em;
}

body.home-v2 .ais-sec h2 em,
body.home-v2 .tools-sec h2 em,
body.home-v2 .ais-book h2 em,
body.home-v2 .tools-book h2 em {
  color: var(--hv2-accent);
}

body.home-v2 .ais-book,
body.home-v2 .tools-book {
  background: var(--hv2-ink-2);
  border-color: var(--hv2-ink);
}

/* The source pages use padded inner wrappers. Put that spacing on the section
   when this layer is active so the visual contract describes the real band. */
body.home-v2 .tools-book {
  padding-block: 72px;
}

body.home-v2 .tools-book .inner {
  padding-block: 0;
}

body.home-v2 .smb-disclaimer {
  padding-block: 48px;
}

body.home-v2 .smb-disclaimer .inner {
  padding-block: 0;
}

body.home-v2 .ais-book .eyebrow,
body.home-v2 .tools-book .eyebrow {
  color: var(--hv2-accent);
}

body.home-v2 .ais-book .btn-primary,
body.home-v2 .tools-book .btn-primary {
  background: var(--hv2-fg);
  border-color: var(--hv2-fg);
  color: var(--hv2-ink);
}

body.home-v2 .ais-book .btn-ghost,
body.home-v2 .tools-book .btn:not(.btn-primary) {
  border-color: var(--hv2-rule);
}

@media (max-width: 640px) {
  body.home-v2 .ais-hero,
  body.home-v2 .tools-hero {
    padding-inline: 24px;
  }

  body.home-v2 .tools-book {
    padding-block: 52px;
  }
}
