/* Généré par scripts/typo.mjs — ne pas éditer à la main. */
:root {
  --font-display: "Goldman", "Anton", "Arial Black", sans-serif;
  --font-head: "Goldman", "Titillium Web", system-ui, sans-serif;
  --font-mono: "Chivo Mono", "SFMono-Regular", Menlo, monospace;
  --font-body: "Titillium Web", system-ui, -apple-system, "Segoe UI", sans-serif;
}
:root { --fd: 0.92; }
@media (max-width: 1100px) { :root { --fd: 0.82; } }
@media (max-width: 640px) { :root { --fd: 0.74; } }
body { font-size: 17.5px; }
.h-display,
.nav__mobile a,
.stat__num,
.eco__x,
.form__head h3,
.city__name,
.gala__title,
.gala__num,
.bout__n,
.bout__vs,
.fighter__name,
.tour__city,
.enter__stats strong,
.mcard__num,
.tier h3,
.tee__big,
.prod__t1,
.pass h3,
.section[data-mark]::after,
.rcard__body strong,
.ctile__name,
.fighter__veil b,
.product__img--soon b { font-weight: 700; font-style: italic; letter-spacing: 0; }
.h-display { line-height: 0.98; }
.btn, .cta, .link-arrow, .nav__links a, .hdr__links a, .hdr a.cta, .galas__tab, .fighter__btn, .related__item, .live__inner { font-style: italic; }
.h-display { font-size: calc(clamp(44px, 7vw, 92px) * var(--fd)); }
.h-display--xl { font-size: calc(clamp(40px, 6.5vw, 86px) * var(--fd)); }
.btn { font-size: calc(13px * 0.84); }
.btn--small { font-size: calc(12px * 0.84); }
.nav__mobile a { font-size: calc(clamp(40px, 11vw, 64px) * var(--fd)); }
.hero__name { font-size: calc(clamp(16px, 2.4vw, 24px) * 0.84); }
.hero__card-title { font-size: calc(20px * 0.84); }
.ticker__track { font-size: calc(13px * 0.84); }
.stat__num { font-size: calc(clamp(48px, 5vw, 72px) * var(--fd)); }
.stat__label { font-size: calc(13px * 0.84); }
.act__body h3 { font-size: calc(clamp(20px, 2.2vw, 28px) * 0.84); }
.event__month { font-size: calc(20px * 0.84); }
.event__body h3 { font-size: calc(22px * 0.84); }
.terr__name { font-size: calc(20px * 0.84); }
.eco__dir { font-size: calc(15px * 0.84); }
.eco__x { font-size: calc(36px * var(--fd)); }
.wave__text { font-size: calc(clamp(18px, 2vw, 24px) * 0.84); }
.live__inner { font-size: calc(14px * 0.84); }
.role__t { font-size: calc(20px * 0.84); }
.role__cta { font-size: calc(12px * 0.84); }
.form__head h3 { font-size: calc(clamp(30px, 4vw, 48px) * var(--fd)); }
.partner__word { font-size: calc(30px * 0.84); }
.founder__name { font-size: calc(22px * 0.84); }
.faq__item summary { font-size: calc(18px * 0.84); }
.page__hero .h-display { font-size: calc(clamp(40px, 6vw, 80px) * var(--fd)); }
.prose h2 { font-size: calc(clamp(22px, 2.6vw, 30px) * 0.84); }
.aside-card strong { font-size: calc(20px * 0.84); }
.city__name { font-size: calc(clamp(30px, 3.4vw, 44px) * var(--fd)); }
.prose .cities .city__name { font-size: calc(30px * var(--fd)); }
.guide strong { font-size: calc(17px * 0.84); }
.fmt strong { font-size: calc(17px * 0.84); }
.related__item { font-size: calc(14px * 0.84); }
.hdr__nav a { font-size: calc(13px * 0.84); }
.hdr__link { font-size: calc(13px * 0.84); }
.cta { font-size: calc(13px * 0.84); }
.cta--lg { font-size: calc(14px * 0.84); }
.cta--sm { font-size: calc(12px * 0.84); }
.link-arrow { font-size: calc(13px * 0.84); }
.h-sub { font-size: calc(clamp(24px, 3vw, 34px) * 0.84); }
.galas__tab { font-size: calc(13px * 0.84); }
.gala__title { font-size: calc(clamp(60px, 9vw, 128px) * var(--fd)); }
.gala__meta { font-size: calc(15px * 0.84); }
.gala__num { font-size: calc(clamp(60px, 8vw, 110px) * var(--fd)); }
.bout__n { font-size: calc(26px * var(--fd)); }
.bout__vs { font-size: calc(20px * var(--fd)); }
.fighter__name { font-size: calc(clamp(22px, 2.4vw, 30px) * var(--fd)); }
.fighter__btn { font-size: calc(12px * 0.84); }
.map__tab { font-size: calc(12px * 0.84); }
.map__svg .pin__label { font-size: calc(13px * 0.84); }
.tour__city { font-size: calc(24px * var(--fd)); }
.tour__when { font-size: calc(12px * 0.84); }
.news-card__title { font-size: calc(clamp(18px, 1.6vw, 22px) * 0.84); }
.news-card--big .news-card__title { font-size: calc(clamp(26px, 3vw, 40px) * 0.84); }
.news-filters button { font-size: calc(12px * 0.84); }
.enter__stats strong { font-size: calc(40px * var(--fd)); }
.role2 strong { font-size: calc(14px * 0.84); }
.mcard__top span { font-size: calc(12px * 0.84); }
.mcard__num { font-size: calc(clamp(40px, 5vw, 56px) * var(--fd)); }
.qform__title { font-size: calc(15px * 0.84); }
.phero .h-display { font-size: calc(clamp(44px, 7vw, 96px) * var(--fd)); }
.phero--event .h-display { font-size: calc(clamp(60px, 10vw, 140px) * var(--fd)); }
.tier h3 { font-size: calc(34px * var(--fd)); }
.tier__price { font-size: calc(13px * 0.84); }
.groups strong { font-size: calc(18px * 0.84); }
.shopbar__in { font-size: calc(12px * 0.84); }
.seg button { font-size: calc(12px * 0.84); }
.tee__big { font-size: calc(42px * var(--fd)); }
.tee__mid { font-size: calc(22px * 0.84); }
.sizes span { font-size: calc(13px * 0.84); }
.buy__price { font-size: calc(14px * 0.84); }
.prod__t1 { font-size: calc(30px * var(--fd)); }
.product h3 { font-size: calc(16px * 0.84); }
.product__price { font-size: calc(12px * 0.84); }
.pass h3 { font-size: calc(44px * var(--fd)); }
.pass__price { font-size: calc(22px * 0.84); }
.watch__main strong { font-size: calc(clamp(22px, 2.6vw, 32px) * 0.84); }
.watch__item strong { font-size: calc(18px * 0.84); }
.contact__list a { font-size: calc(16px * 0.84); }
.faq--boxed .faq__item summary { font-size: calc(17px * 0.84); }
.cities--compact .city__name { font-size: calc(clamp(22px, 2.2vw, 30px) * var(--fd)); }
.nav__mobile a { font-size: calc(clamp(26px, 7vw, 44px) * var(--fd)); }
.section[data-mark]::after { font-size: calc(clamp(88px, 15vw, 230px) * var(--fd)); }
.rcard__body strong { font-size: calc(clamp(28px, 3vw, 40px) * var(--fd)); }
.ctile__name { font-size: calc(clamp(26px, 2.7vw, 40px) * var(--fd)); }
.fighter__veil b { font-size: calc(30px * var(--fd)); }
.viewer__chip { font-size: calc(12px * 0.84); }
.product__img--soon b { font-size: calc(34px * var(--fd)); }
.hero--duo .hero__h1 { font-size: calc(clamp(11px, 1.05vw, 14px) * 0.84); }
.hero__next { font-size: calc(15px * 0.84); }
.hdr__lang { font-size: calc(14px * 0.84); }
.ctile__name { font-size: calc(clamp(22px, 2.05vw, 32px) * var(--fd)); }
.ctile__name { font-size: calc(clamp(19px, 1.7vw, 24px) * var(--fd)); }
.ctile--long .ctile__name { font-size: calc(clamp(15px, 1.3vw, 18px) * var(--fd)); }
@media (max-width: 900px) {
.hdr .cta { font-size: calc(12px * 0.84); }
.hero__next { font-size: calc(14px * 0.84); }
}
@media (max-width: 600px) {
.gala__title { font-size: calc(clamp(48px, 15vw, 80px) * var(--fd)); }
.section[data-mark]::after { font-size: calc(64px * var(--fd)); }
.ctile__name { font-size: calc(26px * var(--fd)); }
.ctile__name { font-size: calc(24px * var(--fd)); }
.ctile__name { font-size: calc(clamp(17px, 5.2vw, 24px) * var(--fd)); }
.ctile--long .ctile__name { font-size: calc(clamp(13px, 3.9vw, 18px) * var(--fd)); }
.ctile__name { font-size: calc(clamp(18px, 6.6vw, 30px) * var(--fd)); }
.ctile--long .ctile__name { font-size: calc(clamp(14px, 5.2vw, 24px) * var(--fd)); }
.tour__city { font-size: calc(clamp(15px, 5vw, 22px) * var(--fd)); }
.tour__when { font-size: calc(11px * 0.84); }
}
@media (min-width: 601px) and (max-width: 1180px) {
.ctile__name { font-size: calc(clamp(22px, 3vw, 32px) * var(--fd)); }
.ctile--long .ctile__name { font-size: calc(clamp(17px, 2.3vw, 25px) * var(--fd)); }
}
.section[data-mark]::after { font-size: clamp(60px, 9vw, 150px); font-style: italic; font-weight: 700; bottom: -0.1em; }
.section--tight[data-mark]::after { font-size: clamp(48px, 7vw, 110px); }
@media (max-width: 600px) { .section[data-mark]::after { font-size: 44px; } }
/* Colonnes étroites : la colonne du titre s'élargit, le titre de la FAQ reste dans sa colonne. */
@media (min-width: 901px) {
  .sec-head:not(.sec-head--row) { grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.7fr); }
  .faq-wrap { grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); }
}
.faq-side .h-display { font-size: clamp(30px, 3.7vw, 56px); }
/* Petits téléphones : les titres de page à mot très long (« confidentialité ») restent dans l'écran. */
@media (max-width: 400px) { .phero:not(.phero--event) .h-display { font-size: 30px; } }
@media (max-width: 340px) { .phero:not(.phero--event) .h-display { font-size: 25px; } }
