/**
 * SBV Typography System 0.10.6
 * One loaded family: Atkinson Hyperlegible Next (Variable, 200–800 + italics).
 * Hierarchy is created with weight, size, spacing and color — not a second display face.
 */

html {
  font-synthesis: none;
}

body.sbv-site,
body.sbv-site :where(button, input, select, textarea, optgroup),
body.sbv-site :where(#wrapper, #main, .post-content, .fusion-text, .fusion-title, .fusion-button, .fusion-form-field) {
  font-family: var(--sbv-font-primary) !important;
}

body.sbv-site {
  font-weight: var(--sbv-weight-regular);
  font-kerning: normal;
  font-optical-sizing: auto;
}

body.sbv-site :where(h1,h2,h3,h4,h5,h6,.entry-title,.fusion-post-title,.sbv-display) {
  font-family: var(--sbv-font-primary) !important;
  font-weight: var(--sbv-weight-bold);
  letter-spacing: -.012em;
}

/* Atkinson is wider and more open than Barlow: reduce display tracking compression. */
body.sbv-site :where(.sbv-home-hero h1, .sbv-page-header h1) {
  font-family: var(--sbv-font-primary) !important;
  font-weight: 760 !important;
  line-height: 1.03 !important;
  letter-spacing: -.018em !important;
}

body.sbv-site :where(.sbv-home-section-head h2, .sbv-editorial-section h2, .sbv-section-head h2) {
  line-height: 1.12 !important;
  letter-spacing: -.012em !important;
}

/* Long-form text: comfortable rhythm and a deliberately limited measure. */
body.sbv-site :where(.sbv-prose, .sbv-editorial-copy, .sbv-page-lead, .sbv-home-hero__lead) {
  line-height: var(--sbv-leading-body);
}

body.sbv-site .sbv-prose {
  max-width: min(var(--sbv-reading-width), 70ch);
}

body.sbv-site .sbv-prose :where(p, ul, ol, blockquote) {
  margin-block-end: 1.35em;
}

/* Small interface text: do not let essential labels drift into 11–13px territory. */
body.sbv-site :where(
  .sbv-utility-bar,
  .sbv-utility-bar__brand,
  .sbv-breadcrumbs ol,
  .sbv-page-header__kicker,
  .sbv-home-eyebrow,
  .sbv-mobile-drawer__title,
  .sbv-footer-column h2,
  .sbv-home-news-meta,
  .sbv-home-club-card__meta,
  .sbv-home-metric dt,
  .sbv-news-card__meta,
  .sbv-meta-list dt,
  .sbv-footer-bottom
) {
  font-size: var(--sbv-text-xs) !important;
  line-height: 1.4;
}

body.sbv-site .sbv-brand-wordmark small {
  max-width: 12rem;
  font-family: var(--sbv-font-primary) !important;
  font-size: .8125rem !important;
  line-height: 1.3;
  letter-spacing: .01em;
}

body.sbv-site .sbv-home-quick-card__body > span {
  font-size: var(--sbv-text-sm) !important;
  line-height: 1.5;
}

body.sbv-site :where(.sbv-nav-panel__number, .sbv-mobile-nav__number) {
  font-family: var(--sbv-font-primary) !important;
  font-size: .8125rem !important;
  font-variant-numeric: tabular-nums;
  letter-spacing: .04em;
}

/* Navigation needs clarity rather than display typography. */
body.sbv-site :where(.sbv-primary-nav__link, .sbv-mobile-nav__link, .sbv-mobile-nav__overview, .sbv-footer-menu a) {
  font-family: var(--sbv-font-primary) !important;
  font-weight: var(--sbv-weight-semibold);
}

body.sbv-site .sbv-primary-nav__link {
  font-size: .9375rem;
  letter-spacing: 0;
}

body.sbv-site .sbv-mobile-nav__overview {
  font-size: var(--sbv-text-sm) !important;
  line-height: 1.45;
}

/* Eyebrows/kickers remain structured but less widely tracked than older display styling. */
body.sbv-site :where(.sbv-eyebrow, .sbv-home-eyebrow, .sbv-page-header__kicker, .sbv-nav-panel__eyebrow, .sbv-mobile-drawer__title, .sbv-footer-column h2) {
  letter-spacing: .065em !important;
}

/* Allow user text-spacing overrides to wrap rather than clip. */
body.sbv-site :where(.sbv-brand-wordmark small, .sbv-footer-column h2) {
  white-space: normal !important;
}

/* Scores, rankings and dates benefit from stable numeral widths without another font. */
body.sbv-site :where(table, .sbv-home-metric, .sbv-meta-list, time, .sbv-event-card) {
  font-variant-numeric: tabular-nums;
}

/* Avoid faux italics/bold now that the real variable family and italic axis are loaded. */
body.sbv-site :where(em, i) {
  font-style: italic;
}

@media (max-width: 82rem) {
  body.sbv-site .sbv-primary-nav__link {
    font-size: .9rem;
  }
}

@media (max-width: 48rem) {
  body.sbv-site :where(.sbv-home-hero h1, .sbv-page-header h1) {
    line-height: 1.06 !important;
    letter-spacing: -.012em !important;
  }

  body.sbv-site .sbv-primary-nav__link {
    font-size: 1rem;
  }
}

@media (forced-colors: active) {
  body.sbv-site {
    font-synthesis: none;
  }
}
