@layer design {
/* Shared typography tokens and brand compatibility bindings.
 * Research consumes tokens in research.css with normal declarations.
 * Brand !important declarations retain the original inline-style precedence.
 */
:root {
  /* Shared reading contract. Brand compatibility rules and research components
     consume these values; research has no competing type overrides. */
  --an-hero-size: clamp(2.5rem, 7vw, 5.5rem);
  --an-hero-weight: 200;
  --an-hero-line: 1.16;
  --an-hero-tracking: .005em;
  /* Chapter headings share the established story chapter scale. */
  --an-section-size: clamp(1.625rem, 3.2vw, 2.75rem);
  --an-section-weight: 300;
  --an-section-line: 1.36;
  --an-section-tracking: 0;
  /* The foundation page's introductory H1 remains a separate display role. */
  --an-foundation-hero-size: clamp(1.875rem, 4.4vw, 3.75rem);
  --an-foundation-hero-weight: 300;
  --an-foundation-hero-line: 1.3;
  --an-foundation-hero-tracking: .01em;
  --an-card-size: 1.1875rem;
  --an-card-weight: 400;
  --an-card-line: 1.65;
  --an-card-tracking: 0;
  --an-body-size: 1rem;
  --an-body-weight: 300;
  --an-body-line: 1.95;
  --an-body-tracking: .01em;
  --an-lead-size: 1.0625rem;
  --an-lead-line: 1.95;
  --an-reading-width: 34em;
  --an-meta-size: .875rem;
  --an-meta-weight: 400;
  --an-meta-line: 1.8;
  --an-control-size: .9375rem;
  --an-control-weight: 500;
  --an-control-tracking: .04em;
  --an-eyebrow-weight: 500;
  --an-eyebrow-line: 1.4;
  --an-section-space: clamp(72px, 9vw, 144px);
  --an-content-gap: 56px;
  --an-title-gap: 24px;
  --an-paragraph-gap: 16px;
  --an-eyebrow-size: .75rem;
  --an-eyebrow-tracking: .2em;
}
body:is([data-lang="en"],[data-lang="es"],[data-lang="pt-BR"],[data-lang="fr"],[data-lang="de"]) {
  --an-eyebrow-tracking: .18em;
}
:where(body:not(.page-research)) main h1,
.page-home main .hero-carousel h1 {
  font-weight: var(--an-hero-weight) !important;
  font-size: var(--an-hero-size) !important;
  line-height: var(--an-hero-line) !important;
  letter-spacing: var(--an-hero-tracking) !important;
}
.page-foundation main h1,
body:not(.page-home):not(.page-research):not(.page-story) main h1 {
  font-weight: var(--an-foundation-hero-weight) !important;
  font-size: var(--an-foundation-hero-size) !important;
  line-height: var(--an-foundation-hero-line) !important;
  letter-spacing: var(--an-foundation-hero-tracking) !important;
}
:where(body:not(.page-research)) main .an-section-title {
  font-weight: var(--an-section-weight) !important;
  font-size: var(--an-section-size) !important;
  line-height: var(--an-section-line) !important;
  letter-spacing: var(--an-section-tracking) !important;
  text-wrap: balance;
}
:where(body:not(.page-research)) main .an-card-title {
  font-weight: var(--an-card-weight) !important;
  font-size: var(--an-card-size) !important;
  line-height: var(--an-card-line) !important;
  letter-spacing: var(--an-card-tracking) !important;
}
.page-home main .an-card-title {
  min-height: 0 !important;
}
:where(body:not(.page-research)) main .an-body,
:where(body:not(.page-research)) main .p-card p,
:where(body:not(.page-research)) main .paradigm-description {
  font-weight: var(--an-body-weight) !important;
  font-size: var(--an-body-size) !important;
  line-height: var(--an-body-line) !important;
  letter-spacing: var(--an-body-tracking) !important;
  text-wrap: pretty;
}
:where(body:not(.page-research)) main .an-section-title + .an-body,
:where(body:not(.page-research)) main .sec-lede,
:where(body:not(.page-research)) main .hero-desc {
  font-size: var(--an-lead-size) !important;
  line-height: var(--an-lead-line) !important;
}
:where(body:not(.page-research)) main .an-body {
  max-width: var(--an-reading-width) !important;
}
:where(body:not(.page-research)) main :is(.live-card, [data-g3], [data-g4], [data-g6], .p-card, .an-beta-copy) .an-body {
  max-width: 100% !important;
}
:where(body:not(.page-research)) main .an-value-keyword {
  font-weight: 200 !important;
  letter-spacing: .01em !important;
}
:where(body:not(.page-research)) main .an-numeric-label {
  font-weight: 400 !important;
  font-size: .875rem !important;
  line-height: 1.5 !important;
}
:where(body:not(.page-research)) main :is(.an-eyebrow--latin, [class*="card"]) > span:first-child:not([class]) {
  font-weight: 400 !important;
  letter-spacing: .14em !important;
}
:where(body:not(.page-research)) main :is(.an-statement, .an-pullquote, .story-takeaway) {
  font-weight: 300 !important;
  font-size: clamp(1.5rem, 3.4vw, 2.875rem) !important;
  line-height: 1.55 !important;
  letter-spacing: .02em !important;
  text-wrap: balance;
}
/* The shared beta component owns its controls in both inline and dialog views. */
:where(body:not(.page-research)) main :is(.an-btn, .an-button, button[type="submit"]:not(.an-beta-primary), .beta-submit) {
  font-weight: var(--an-control-weight) !important;
  font-size: var(--an-control-size) !important;
  letter-spacing: var(--an-control-tracking) !important;
}
@media (max-width: 860px) {
  :root {
    --an-hero-size: clamp(2.125rem, 9vw, 3.25rem);
    --an-hero-line: 1.22;
    --an-section-size: clamp(1.5rem, 6vw, 2rem);
    --an-foundation-hero-size: clamp(1.625rem, 6.4vw, 2.25rem);
    --an-foundation-hero-line: 1.4;
    --an-card-size: 1.125rem;
    --an-body-line: 1.9;
    --an-lead-size: 1rem;
    --an-content-gap: 40px;
  }
  :where(body:not(.page-research)) main h1,
.page-home main .hero-carousel h1 {
    font-size: var(--an-hero-size) !important;
    line-height: var(--an-hero-line) !important;
  }
  :where(body:not(.page-research)) main .an-section-title {
    font-size: var(--an-section-size) !important;
    line-height: var(--an-section-line) !important;
  }
  :where(body:not(.page-research)) main .an-section-title + .an-body,
:where(body:not(.page-research)) main .sec-lede {
    font-size: var(--an-lead-size) !important;
  }
  :where(body:not(.page-research)) main .an-body {
    line-height: var(--an-body-line) !important;
  }
  :where(body:not(.page-research)) main .an-card-title {
    font-size: var(--an-card-size) !important;
  }
  :where(body:not(.page-research)) main :is(.an-statement, .an-pullquote, .story-takeaway) {
    font-size: clamp(1.25rem, 5.6vw, 1.75rem) !important;
    line-height: 1.6 !important;
  }
}

}
