:root {
  --suite-font-display: "GIA Variable", "Gia", "Facto", "Arial Black", sans-serif;
  --suite-font-body: "Facto", "Helvetica Neue", Inter, Arial, sans-serif;
  --suite-font-utility: "Gridlite PE Variable Font", "Gridlite PE", "SF Mono", Menlo, Consolas, monospace;
  --suite-type-hero: clamp(3rem, 5.5vw, 5.5rem);
  --suite-type-section: clamp(1.75rem, 3vw, 2.75rem);
  --suite-type-card: clamp(1.25rem, 1.75vw, 1.75rem);
  --suite-type-lead: 1.25rem;
  --suite-type-body: 1.0625rem;
  --suite-type-caption: .8125rem;
  --suite-type-meta: .75rem;
  --suite-copy: #f2f2ea;
  --suite-muted: #b7b9b2;
  --suite-rule: #34342e;
  --suite-accent: #5fb93f;
}

html[data-suite-family="talent"] { --suite-accent: #ffdf00; }

html[data-suite-surface] {
  color-scheme: dark;
  font-synthesis: none;
  scrollbar-color: var(--suite-accent) #050505;
  scrollbar-width: thin;
}

html[data-suite-surface] body {
  color: var(--suite-copy);
  font-family: var(--suite-font-body) !important;
  font-size: var(--suite-type-body);
  line-height: 1.55;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

html[data-suite-surface] ::selection {
  background: var(--suite-accent);
  color: #050505;
}

html[data-suite-surface] h1 {
  font-family: var(--suite-font-display) !important;
  font-size: var(--suite-type-hero) !important;
  font-weight: 780 !important;
  letter-spacing: 0 !important;
  line-height: .94 !important;
  text-transform: none !important;
  text-wrap: balance;
}

html[data-suite-surface] h2 {
  font-family: var(--suite-font-display) !important;
  font-size: var(--suite-type-section) !important;
  font-weight: 780 !important;
  letter-spacing: 0 !important;
  line-height: 1.04 !important;
  text-transform: none !important;
  text-wrap: balance;
}

html[data-suite-surface] h3,
html[data-suite-surface] .process-step strong {
  font-family: var(--suite-font-display) !important;
  font-size: var(--suite-type-card) !important;
  font-weight: 740 !important;
  letter-spacing: 0 !important;
  line-height: 1.12 !important;
  text-transform: none !important;
  text-wrap: balance;
}

html[data-suite-surface] h1 em,
html[data-suite-surface] h2 em {
  color: var(--suite-accent);
  font: inherit;
}

html[data-suite-surface] p,
html[data-suite-surface] li,
html[data-suite-surface] dd {
  text-wrap: pretty;
}

html[data-suite-surface] main > p,
html[data-suite-surface] section > p,
html[data-suite-surface] .chapter > p,
html[data-suite-surface] .intro,
html[data-suite-surface] .section-intro,
html[data-suite-surface] .process-note {
  max-width: 68ch;
}

html[data-suite-surface] .intro {
  font-size: var(--suite-type-lead);
  line-height: 1.55;
}

html[data-suite-surface] .label,
html[data-suite-surface] .eyebrow,
html[data-suite-surface] .tag,
html[data-suite-surface] .number,
html[data-suite-surface] .status,
html[data-suite-surface] .meta,
html[data-suite-surface] .topbar-state,
html[data-suite-surface] .nav a,
html[data-suite-surface] .asset-label,
html[data-suite-surface] .process-state,
html[data-suite-surface] .facts b,
html[data-suite-surface] .pair-analysis dt,
html[data-suite-surface] .gate span,
html[data-suite-surface] .suite-back {
  font-family: var(--suite-font-utility) !important;
  font-size: var(--suite-type-meta) !important;
  font-weight: 600;
  letter-spacing: .08em !important;
  line-height: 1.3;
  text-transform: uppercase;
}

html[data-suite-surface] figcaption {
  font-family: var(--suite-font-body);
  font-size: var(--suite-type-caption) !important;
  line-height: 1.45;
}

html[data-suite-surface] .note {
  font-size: .875rem !important;
  line-height: 1.5;
}

html[data-suite-family="talent"] .section-id,
html[data-suite-family="talent"] .profile .name {
  font-family: var(--suite-font-display) !important;
  font-weight: 780 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html[data-suite-shell] .brand-copy span,
html[data-suite-shell] .context-label,
html[data-suite-shell] .state,
html[data-suite-shell] .nav-index,
html[data-suite-shell] .nav-family,
html[data-suite-shell] .viewport-count,
html[data-suite-shell] .open-source,
html[data-suite-shell] .home-control {
  font-size: .75rem;
}

@media (max-width: 650px) {
  :root {
    --suite-type-hero: clamp(2.75rem, 11vw, 3.25rem);
    --suite-type-section: clamp(1.75rem, 7.5vw, 2.25rem);
    --suite-type-card: clamp(1.25rem, 5.5vw, 1.5rem);
    --suite-type-lead: 1.125rem;
    --suite-type-body: 1rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  html[data-suite-surface] { scroll-behavior: auto; }
}
