/* Opt-in pilot: contextual advertising and site conversion only.
   #main keeps semantic roles authoritative over the existing component cascade.
   Shared navigation, forms and other pages retain their current typography. */
.typography-pilot {
  --type-hero-display: clamp(54px, 6vw, 90px);
  --type-h1: clamp(44px, 4.9vw, 70px);
  --type-h1-long: clamp(38px, 4.3vw, 62px);
  --type-h2: clamp(34px, 3.8vw, 58px);
  --type-section-display: clamp(40px, 4.8vw, 72px);
  --type-h3: clamp(22px, 2.1vw, 31px);
  --type-lead: clamp(19px, 1.75vw, 25px);
  --type-body: 15px;
  --type-small: 11px;
  --type-kicker: 11px;
  --type-metric: clamp(35px, 3.4vw, 52px);
  --type-case-result: clamp(82px, 14vw, 208px);
}

.typography-pilot #main :is(.type-hero-display, .type-h1, .type-h1-long, .type-h2, .type-section-display, .type-h3, .type-metric, .type-case-result) {
  font-family: var(--font-display);
  font-weight: 700;
  text-transform: uppercase;
  text-wrap: balance;
}
.typography-pilot #main .type-hero-display { font-size: var(--type-hero-display); line-height: 1.02; letter-spacing: -.025em; }
.typography-pilot #main .type-h1 { font-size: var(--type-h1); line-height: 1.02; letter-spacing: -.025em; }
.typography-pilot #main .type-h1-long { font-size: var(--type-h1-long); line-height: 1.02; letter-spacing: -.025em; }
.typography-pilot #main .type-h2 { font-size: var(--type-h2); line-height: 1.06; letter-spacing: -.015em; }
.typography-pilot #main .type-section-display { font-size: var(--type-section-display); line-height: 1.04; letter-spacing: -.015em; }
.typography-pilot #main .type-h3 { font-size: var(--type-h3); line-height: 1.08; letter-spacing: -.012em; }
.typography-pilot #main .type-lead { font-size: var(--type-lead); line-height: 1.55; }
.typography-pilot #main .type-body { font-size: var(--type-body); line-height: 1.7; }
.typography-pilot #main .type-small { font-size: var(--type-small); line-height: 1.6; }
.typography-pilot #main .type-kicker { font-size: var(--type-kicker); font-weight: 700; line-height: 1.6; letter-spacing: .22em; text-transform: uppercase; }
.typography-pilot #main .type-metric { font-size: var(--type-metric); line-height: .95; letter-spacing: -.04em; white-space: nowrap; }
.typography-pilot #main .type-case-result { font-size: var(--type-case-result); line-height: .84; letter-spacing: -.07em; white-space: nowrap; }

@media (max-width: 900px) {
  .typography-pilot { --type-case-result: clamp(78px, 15vw, 132px); }
}
@media (max-width: 680px) {
  .typography-pilot {
    --type-hero-display: clamp(40px, 10vw, 54px);
    --type-h1: clamp(34px, 9.2vw, 42px);
    --type-h1-long: clamp(30px, 8.3vw, 38px);
    --type-h2: clamp(25px, 6.8vw, 32px);
    --type-section-display: clamp(28px, 7.6vw, 38px);
    --type-h3: clamp(21px, 5.8vw, 22px);
    --type-lead: 17px;
    --type-metric: clamp(32px, 10vw, 46px);
    --type-case-result: clamp(45px, 14.8vw, 92px);
  }
}
