/* Barlow Condensed 700 : SIL OFL 1.1, licence dans ../fonts/barlow-condensed-OFL.txt. */
@font-face {
    font-family: "MmaDisplay";
    src: url("../fonts/barlow-condensed-700.woff2") format("woff2");
    font-style: normal;
    font-weight: 700;
    font-display: block;
}

.site-development {
    --hp-background: #050509;
    --hp-panel: #0b0b12;
    --hp-line: #252632;
    --hp-text: #f4f6fa;
    --hp-muted: #a7a9b9;
    --hp-cyan: #19d9ff;
    --hp-magenta: #f02dff;
    min-height: 100vh;
    min-height: 100svh;
    color: var(--hp-text);
    background: var(--hp-background);
    font-size: 14px;
    line-height: 1.5;
}

.site-development.site-layout { display: flex; flex-direction: column; }
.site-layout > .site-development:not(.site-footer) { flex: 1; min-height: 0; }
.site-layout > .hp-header { flex-shrink: 0; }
.site-development :is(h1, h2, h3, p, ol, dl, dd) { margin: 0; }
.site-development a { color: inherit; text-decoration: none; }
.site-development :is(a, button, select, summary):focus-visible { outline: 2px solid var(--hp-cyan); outline-offset: 5px; }
.site-development :is(button, select) { font: inherit; color: inherit; }
.site-development :is(h1, h2, h3) { font-family: "MmaDisplay", Impact, sans-serif; font-weight: 700; }
.site-development .hp-visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.site-development .hp-skip { position: absolute; top: 0; left: 1rem; z-index: 5; padding: 12px 20px; background: var(--hp-cyan); color: #050509; transform: translateY(-110%); }
.site-development .hp-skip:focus { transform: translateY(0); }
.site-development .hp-header { border-bottom: 1px solid var(--hp-line); background: #09090f; }
.site-development .hp-header-inner { display: flex; align-items: center; gap: 32px; max-width: 1320px; margin-inline: auto; padding: 16px 32px; }
.site-development .hp-logo { flex: 0 0 210px; }
.site-development .hp-logo img { display: block; width: 100%; height: auto; }
.site-development .hp-nav { display: flex; flex-wrap: wrap; gap: 25px; margin-left: 16px; }
.site-development .hp-nav a { display: flex; align-items: center; min-height: 44px; color: #dddde7; font-size: 13px; font-weight: 600; }
.site-development .hp-nav a:hover { color: var(--hp-cyan); }
.site-layout .hp-header .hp-nav [aria-current="page"] { color: var(--hp-cyan); }
.site-layout .hp-header :is(.hp-menu-toggle, .hp-nav)[hidden] { display: none; }
.site-development .hp-main { display: grid; grid-template-columns: minmax(0, 1fr); gap: 48px; max-width: 1320px; margin-inline: auto; padding: 32px 32px 80px; }
.site-development :is(#affiche, #calendrier, #classements) { scroll-margin-top: 24px; }
.site-development .hp-eyebrow { display: flex; align-items: center; gap: 9px; color: var(--hp-cyan); font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.site-development .competition-identity { display: flex; align-items: center; gap: 12px; min-width: 0; max-width: 100%; }
.site-development .competition-identity > span { min-width: 0; overflow-wrap: anywhere; }
.site-development img.logoCompetition { display: block; flex: 0 0 52px; width: 52px; height: 52px; box-sizing: border-box; padding: 3px; border: 1px solid var(--hp-line); border-radius: .5rem; background: #fff; object-fit: contain; object-position: center; }
.site-development .hp-hero {
    position: relative;
    isolation: isolate;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 38px;
    min-height: 450px;
    padding: 20px 40px 32px;
    border: 1px solid #373342;
    border-radius: 8px;
    background: #09090e;
}
.site-development .hp-hero::before {
    position: absolute;
    inset: 0;
    z-index: -2;
    border-radius: inherit;
    background: url("../images/fight-night-arena.jpg") center 64% / cover no-repeat;
    content: "";
}
.site-development .hp-hero::after {
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    background: linear-gradient(0deg, #050509 0%, rgb(5 5 9 / 25%) 66%), linear-gradient(95deg, rgb(5 5 9 / 55%), transparent 65%);
    content: "";
}
.site-development .hp-hero-top { display: flex; justify-content: flex-end; align-items: start; gap: 20px; }
.site-development .hp-status-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--hp-cyan); box-shadow: 0 0 12px rgb(25 217 255 / 65%); }
.site-development .hp-location { color: #c2c1cd; text-align: right; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.site-development .hp-location span { display: block; margin-top: 4px; color: #e1dfe9; }
.site-development .hp-poster-kicker { color: #bcbaca; font-size: 10px; letter-spacing: .21em; text-transform: uppercase; }
.site-development .hp-poster h1 { font-size: clamp(76px, 8.5vw, 112px); line-height: .93; letter-spacing: -.025em; margin-top: 12px; }
.site-development .hp-poster h1 span { color: #c9e8f5; text-shadow: 0 0 30px rgb(25 217 255 / 16%); }
.site-development .hp-match { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; margin-top: 15px; font: 700 clamp(34px, 4.6vw, 58px)/1 "MmaDisplay", Impact, sans-serif; }
.site-development .hp-versus { color: var(--hp-magenta); font-size: .46em; letter-spacing: .07em; }
.site-development .hp-tagline { margin-top: 16px; color: #c0bdcb; font-size: 13px; }
.site-development .hp-hero-bottom { display: flex; align-items: end; justify-content: space-between; flex-wrap: wrap; gap: 24px; padding-top: 24px; border-top: 1px solid rgb(244 246 250 / 12%); }
.site-development .hp-schedule { display: flex; flex-wrap: wrap; gap: 28px 44px; }
.site-development .hp-meta-label { display: block; color: var(--hp-muted); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 5px; }
.site-development .hp-schedule strong { font-size: 23px; font-variant-numeric: tabular-nums; }
.site-development .hp-schedule small { display: block; color: #cbc7d4; font-size: 10px; font-weight: 400; margin-top: 3px; }
.site-development .hp-schedule .hp-channel { color: #e1dce9; font-size: 17px; }
.site-development .hp-actions { display: flex; flex-wrap: wrap; align-items: start; min-width: 0; max-width: 100%; gap: 10px; }
.site-development .hp-detail { min-width: 0; max-width: 100%; }
.site-development .hp-detail summary { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 46px; padding: 12px 18px; border: 1px solid #5e586b; border-radius: 3px; background: #121019; list-style: none; cursor: pointer; font-size: 12px; font-weight: 700; }
.site-development .hp-detail summary::-webkit-details-marker { display: none; }
.site-development .hp-detail-primary summary { border-color: var(--hp-cyan); background: var(--hp-cyan); color: #050509; }
.site-development .hp-detail summary:hover { filter: brightness(1.1); }
.site-development .hp-detail[open] { flex-basis: 100%; }
.site-development .hp-detail-content { width: 330px; max-width: 100%; margin-top: 12px; padding: 22px; border: 1px solid #595166; border-radius: 5px; background: #12111b; }
.site-development .hp-detail-content h2 { font-size: 25px; margin-bottom: 14px; }
.site-development .hp-detail-content dl div { margin-top: 12px; }
.site-development .hp-detail-content dt { color: var(--hp-muted); font-size: 11px; }
.site-development .hp-detail-content dd { font-size: 13px; }
.site-development .hp-detail-content p { color: #c2bdce; font-size: 12px; margin-top: 16px; }
.site-development .hp-columns { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr); gap: 42px; align-items: start; }
.site-development .hp-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 12px; margin-bottom: 22px; }
.site-development .hp-section-heading .hp-eyebrow { font-size: 9px; color: var(--hp-muted); letter-spacing: .1em; }
.site-development .hp-section-heading h2 { font-size: 34px; line-height: 1.1; margin-top: 7px; }
.site-development .hp-section-note { color: var(--hp-muted); font-size: 10px; white-space: nowrap; }
.site-development .hp-filters { display: flex; flex-wrap: wrap; gap: 7px; padding-bottom: 17px; border-bottom: 1px solid var(--hp-line); }
.site-development .hp-filter { display: flex; align-items: center; min-height: 44px; padding: 8px 17px; border: 1px solid #2a2b38; border-radius: 3px; color: #c9c8d5; font-size: 12px; }
.site-development .hp-filter.is-active { color: var(--hp-cyan); border-color: #19788a; background: rgb(25 217 255 / 8%); }
.site-development .hp-filter:hover { border-color: var(--hp-cyan); }
.site-development .hp-event { display: grid; grid-template-columns: 55px minmax(0, 1fr) auto; align-items: center; gap: 18px; padding: 23px 0; border-bottom: 1px solid var(--hp-line); }
.site-development .hp-event-date { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 63px; padding: 6px; border: 1px solid #30313e; border-radius: 4px; background: #0e0e17; }
.site-development .hp-event-date strong { font: 700 28px/1 "MmaDisplay", Impact, sans-serif; }
.site-development .hp-event-date span { color: var(--hp-muted); font-size: 9px; margin-top: 4px; }
.site-development .hp-event-promotion { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; color: var(--hp-muted); font-size: 10px; }
.site-development .hp-french-label { padding: 1px 4px; border: 1px solid #3b4157; border-radius: 2px; color: #c1d4f1; font-size: 8px; }
.site-development .hp-event h3 { font-size: 23px; line-height: 1.1; margin-top: 5px; }
.site-development .hp-event-place { color: var(--hp-muted); font-size: 11px; margin-top: 6px; }
.site-development .hp-event-hour { text-align: right; }
.site-development .hp-event-hour strong { display: block; font-size: 16px; font-variant-numeric: tabular-nums; }
.site-development .hp-event-hour span { display: block; color: var(--hp-muted); font-size: 8px; margin-top: 4px; }
.site-development .hp-rank-panel { border: 1px solid var(--hp-line); border-top: 2px solid #733588; border-radius: 5px; background: var(--hp-panel); padding: 20px 22px 8px; }
.site-development .hp-category-form label { display: block; color: var(--hp-muted); font-size: 10px; margin-bottom: 7px; }
.site-development .hp-category-control { display: flex; gap: 8px; }
.site-development .hp-category-control select { min-width: 0; width: 100%; min-height: 44px; border: 1px solid #444151; border-radius: 3px; background: #15141e; padding: 8px 10px; font-size: 12px; }
.site-development .hp-category-control button { min-height: 44px; border: 1px solid #444151; border-radius: 3px; background: #1b1725; padding: 8px 11px; font-size: 11px; cursor: pointer; }
.site-development .hp-category-control button:hover { border-color: #c184d1; }
.site-development .hp-rank-list { list-style: none; padding: 18px 0 0; }
.site-development .hp-rank-row { display: flex; align-items: center; gap: 14px; padding: 18px 0; border-top: 1px solid var(--hp-line); }
.site-development .hp-rank-row:first-child { border-top: 0; }
.site-development .hp-rank-number { flex: 0 0 25px; color: #b0aabb; font: 700 23px/1 "MmaDisplay", Impact, sans-serif; }
.site-development .hp-rank-row strong { display: block; font-size: 13px; }
.site-development .hp-rank-row div > span { display: block; color: var(--hp-muted); font-size: 10px; margin-top: 3px; }
.site-development .hp-champion .hp-rank-number { color: var(--hp-cyan); }
.site-development .hp-champion-label { margin-left: auto; color: var(--hp-cyan); font-size: 9px; letter-spacing: .04em; text-transform: uppercase; }

/* Raccord de l'accueil : titres réels et liens vers les fiches, sans effet sur les autres vues. */
.home-page .hp-mobile-text { display: none; }
.site-development.home-page .hp-poster h1 > a > :is(.hp-desktop-text, .hp-mobile-text) { color: inherit; text-shadow: none; }
.site-development.home-page .hp-poster h1 { max-width: 19ch; font-size: clamp(42px, 7.5vw, 88px); line-height: 1; overflow-wrap: anywhere; }
.home-page .hp-main-event-label { margin-top: 24px; }
.home-page .hp-location { max-width: 260px; overflow-wrap: anywhere; }
.home-page .hp-schedule strong { display: block; font-size: 18px; }
.home-page .hp-action { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 46px; padding: 12px 18px; border: 1px solid #5e586b; border-radius: 3px; background: #121019; font-size: 12px; font-weight: 700; }
.home-page .hp-action-primary { border-color: var(--hp-cyan); background: var(--hp-cyan); color: #050509; }
.home-page .hp-action:hover { filter: brightness(1.1); }
.home-page .hp-broadcasts { flex-basis: 100%; padding-top: 8px; font-size: 12px; }
.home-page .hp-broadcasts ul { padding-left: 18px; margin: 4px 0 12px; color: var(--hp-muted); }
.home-page .hp-section-link { color: var(--hp-cyan); font-size: 11px; text-align: right; }
.home-page .hp-event-status { padding: 3px 7px; border: 1px solid var(--hp-line); border-radius: 3px; color: var(--hp-muted); font-size: 10px; }
.home-page .hp-event-description { min-width: 0; overflow-wrap: anywhere; }
.home-page .hp-calendar .hp-event-place { text-align: center; }
.home-page :is(.hp-event-description, .hp-rank-row) a:hover { color: var(--hp-cyan); }
.home-page .hp-empty { padding-block: 22px; color: var(--hp-muted); font-size: 12px; }
.home-page .hp-ranking-note { margin-top: 12px; color: var(--hp-muted); font-size: 10px; }
.home-page .hp-ranking-link { display: block; padding: 18px 0 14px; border-top: 1px solid var(--hp-line); color: var(--hp-cyan); font-size: 12px; }
.home-page .hp-rank-row { display: grid; grid-template-columns: 25px minmax(0, 1fr) auto; }
.home-page .hp-rank-fighter { display: flex; align-items: center; gap: 12px; min-width: 0; }
.home-page .hp-rank-info { min-width: 0; overflow-wrap: anywhere; }
.home-page .hp-fighter-name { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; min-width: 0; }
.home-page .hp-fighter-name > :is(a, span) { min-width: 0; overflow-wrap: anywhere; }
.home-page .hp-fighter-flag { display: block; flex: 0 0 20px; width: 20px; height: 15px; object-fit: contain; object-position: center; }
.home-page .hp-rank-info > strong.hp-fighter-name { display: flex; }
.home-page .hp-rank-portrait { display: block; flex: 0 0 52px; width: 52px; height: 52px; box-sizing: border-box; padding: 3px; border: 1px solid var(--hp-line); border-radius: 5px; background: #15141e; object-fit: contain; object-position: 50% 50%; }
.home-page .hp-intro { min-width: 0; max-width: 90ch; }
.home-page .hp-intro h2 { margin-bottom: 18px; font-size: clamp(28px, 3vw, 36px); line-height: 1.1; overflow-wrap: anywhere; }
.home-page .hp-intro-text { display: grid; gap: 14px; color: var(--hp-muted); font-size: 16px; line-height: 1.7; overflow-wrap: anywhere; }
.home-page .hp-intro-text a { color: var(--hp-cyan); text-decoration: underline; text-underline-offset: 3px; }
.home-page .hp-intro-text a:hover { color: var(--hp-text); }
.home-page .hp-guide { display: flex; align-items: center; justify-content: space-between; gap: 28px; min-width: 0; padding: 28px; border: 1px solid var(--hp-line); border-left: 3px solid var(--hp-cyan); border-radius: 5px; background: var(--hp-panel); }
.home-page .hp-guide-content { flex: 1; min-width: 0; max-width: 78ch; }
.home-page .hp-guide h2 { margin-top: 8px; font-size: clamp(26px, 3vw, 36px); line-height: 1.1; overflow-wrap: anywhere; }
.home-page .hp-guide-summary { margin-top: 10px; color: var(--hp-muted); font-size: 14px; overflow-wrap: anywhere; }
.home-page .hp-guide .hp-action { flex-shrink: 0; }

/* Photos BDD de l'affiche et des prochains combats, limitées à l'accueil. */
.home-page .hp-featured-fight { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 20px; width: min(100%, 620px); margin-top: 12px; }
.home-page .hp-featured-fighter { display: flex; flex-direction: column; align-items: center; gap: 12px; min-width: 0; text-align: center; }
.home-page .hp-featured-portrait { display: block; width: 180px; max-width: 100%; height: 210px; object-fit: contain; object-position: center bottom; }
.home-page .hp-featured-fighter strong { font: 700 clamp(24px, 3vw, 38px)/1.1 "MmaDisplay", Impact, sans-serif; overflow-wrap: anywhere; }
.home-page .hp-featured-fighter .hp-fighter-name { justify-content: center; }
.home-page .hp-featured-versus { color: var(--hp-magenta); font: 700 30px/1 "MmaDisplay", Impact, sans-serif; }
.home-page .hp-featured-fight:hover strong { color: var(--hp-cyan); }
.home-page .hp-event-match { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 10px; font-size: 20px; }
.home-page .hp-event-fighter { display: grid; grid-template-columns: 52px minmax(0, 1fr); align-items: center; gap: 10px; min-width: 0; }
.home-page .hp-event-fighter:first-child { grid-template-columns: minmax(0, 1fr) 52px; text-align: right; }
.home-page .hp-event-fighter:first-child > .hp-event-portrait { grid-column: 2; grid-row: 1; }
.home-page .hp-event-fighter:first-child > span { grid-column: 1; grid-row: 1; }
.home-page .hp-event-fighter:first-child > .hp-fighter-name { justify-content: flex-end; }
.home-page .hp-event-fighter > span { min-width: 0; overflow-wrap: anywhere; }
.home-page .hp-event-portrait { display: block; width: 52px; height: 52px; box-sizing: border-box; padding: 3px; border: 1px solid var(--hp-line); border-radius: 5px; background: #15141e; object-fit: contain; object-position: center; }
.home-page .hp-event-versus { color: var(--hp-magenta); font-size: 14px; }

@media (max-width: 1050px) {
    .site-development .hp-header-inner { gap: 22px; }
    .site-development .hp-nav { gap: 18px; margin-left: 0; }
    .site-development .hp-hero { padding: 20px 30px 30px; }
    .site-development .hp-columns { gap: 26px; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); }
    .site-development .hp-section-heading h2 { font-size: 30px; }
    .site-development .hp-event { gap: 12px; }
    .site-development .hp-rank-panel { padding-inline: 17px; }
    .home-page .hp-rank-row { grid-template-columns: 25px minmax(0, 1fr); }
    .home-page .hp-champion-label { grid-column: 2; justify-self: start; margin-left: 0; }
    .home-page .hp-event-fighter { display: flex; flex-direction: column; gap: 8px; text-align: center; }
    .home-page .hp-event-fighter:first-child { text-align: center; }
    .home-page .hp-event-fighter > .hp-fighter-name,
    .home-page .hp-event-fighter:first-child > .hp-fighter-name { justify-content: center; }
    .home-page .hp-event-match { align-items: start; font-size: 18px; }
    .home-page .hp-event-versus { align-self: center; }
}

@media (max-width: 760px) {
    .home-page .hp-guide { flex-direction: column; align-items: stretch; gap: 20px; padding: 22px; }
    .site-development .hp-header-inner { flex-wrap: wrap; gap: 8px 18px; padding: 14px 20px 10px; }
    .site-development .hp-logo { flex-basis: 174px; }
    .site-development .hp-nav { order: 3; width: 100%; gap: 25px; }
    .site-development .hp-nav a { font-size: 12px; }
    .site-development .hp-main { gap: 34px; padding: 20px 20px 50px; }
    .site-development .hp-hero { min-height: 470px; padding: 25px; gap: 35px; }
    .site-development .hp-hero-top { gap: 12px; }
    .site-development .hp-location { max-width: 140px; font-size: 8px; }
    .site-development .hp-match { gap: 14px; font-size: clamp(34px, 8vw, 50px); }
    .site-development .hp-schedule { gap: 23px; }
    .site-development .hp-actions { width: 100%; }
    .site-development .hp-columns { grid-template-columns: minmax(0, 1fr); gap: 34px; }
    .site-development .hp-section-heading h2 { font-size: 32px; }
    .home-page .hp-hero-top { flex-wrap: wrap; justify-content: flex-start; }
    .home-page .hp-location { max-width: 100%; text-align: left; }
    .site-development.home-page .hp-event { grid-template-columns: 48px minmax(0, 1fr); }
    .home-page .hp-event-status { grid-column: 2; justify-self: start; margin-top: -6px; }
    .home-page .hp-featured-fight { gap: 10px; }
    .home-page .hp-featured-portrait { width: clamp(90px, 25vw, 150px); height: clamp(120px, 32vw, 180px); }
    .home-page .hp-featured-fighter strong { font-size: clamp(20px, 5vw, 28px); }
    .home-page .hp-featured-versus { font-size: 22px; }
    .home-page .hp-event-match { gap: 8px; font-size: 17px; }
}

@media (max-width: 400px) {
    .site-development .hp-main { padding-inline: 14px; }
    .site-development .hp-hero { padding: 21px 18px; }
    .site-development .hp-poster h1 { font-size: 73px; }
    .site-development .hp-hero-top .hp-eyebrow { font-size: 9px; }
    .site-development .hp-event { grid-template-columns: 48px minmax(0, 1fr) auto; gap: 10px; }
    .site-development .hp-event h3 { font-size: 21px; }
    .site-development .hp-event-hour strong { font-size: 14px; }
    .site-development .hp-section-note { font-size: 8px; }
    .site-development .hp-detail summary { padding-inline: 13px; gap: 16px; }
}

/* Prochains combats : le duel reprend toute la largeur sur mobile. */
@media (max-width: 760px) {
    .site-development.home-page .hp-calendar .hp-section-heading { flex-direction: column; align-items: stretch; gap: 2px; margin-bottom: 12px; }
    .site-development.home-page .hp-calendar .hp-section-heading h2 { font-size: 30px; }
    .home-page .hp-calendar .hp-section-link { display: flex; align-items: center; align-self: flex-start; min-height: 44px; font-size: 12px; text-align: left; }
    .home-page .hp-calendar .hp-event-list { display: grid; gap: 12px; }
    .site-development.home-page .hp-calendar .hp-event { grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: 10px; min-width: 0; padding: 14px; border: 1px solid var(--hp-line); border-radius: 6px; background: var(--hp-panel); }
    .site-development.home-page .hp-calendar .hp-event-date { grid-column: 1; grid-row: 1; justify-self: start; flex-direction: row; gap: 6px; min-height: 0; padding: 4px 8px; }
    .site-development.home-page .hp-calendar .hp-event-date strong { font-size: 20px; }
    .site-development.home-page .hp-calendar .hp-event-date span { margin-top: 0; font-size: 10px; }
    .home-page .hp-calendar .hp-event-status { grid-column: 2; grid-row: 1; align-self: center; justify-self: end; margin-top: 0; white-space: nowrap; }
    .home-page .hp-calendar .hp-event-description { grid-column: 1 / -1; grid-row: 2; }
    .site-development.home-page .hp-calendar .hp-event-promotion { display: block; font-size: 11px; line-height: 1.4; }
    .home-page .hp-calendar .hp-event-promotion a { display: block; align-content: center; min-height: 44px; }
    .site-development.home-page .hp-calendar .hp-event h3 { margin-top: 8px; }
    .home-page .hp-calendar .hp-event-match { gap: 8px; align-items: start; font-size: 20px; line-height: 1.2; }
    .home-page .hp-calendar .hp-event-versus { align-self: start; display: flex; align-items: center; height: 52px; }
    .home-page .hp-calendar .hp-event-fighter > .hp-fighter-name { display: block; text-align: center; }
    .home-page .hp-calendar .hp-fighter-flag { display: inline-block; margin-right: 4px; vertical-align: middle; }
    .site-development.home-page .hp-calendar .hp-event-place { margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--hp-line); font-size: 12px; line-height: 1.5; }
}

/* En-tête commun sur mobile ; les règles de l'affiche restent limitées à l'accueil. */
@media (max-width: 760px) {
    .site-layout .hp-header .hp-header-inner { justify-content: space-between; gap: 12px; padding: 12px 16px; }
    .site-layout .hp-header .hp-logo { flex-basis: 144px; }
    .site-layout .hp-header .hp-menu-toggle { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 8px 12px; border: 1px solid var(--hp-line); border-radius: 4px; background: var(--hp-panel); font-size: 12px; font-weight: 600; cursor: pointer; }
    .site-layout .hp-header .hp-menu-toggle:hover,
    .site-layout .hp-header .hp-menu-toggle[aria-expanded="true"] { border-color: var(--hp-cyan); color: var(--hp-cyan); }
    .site-layout .hp-header .hp-nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 8px; margin: 0; padding-top: 12px; border-top: 1px solid var(--hp-line); }
    .site-layout .hp-header .hp-nav a { min-width: 0; min-height: 44px; padding: 8px; overflow-wrap: anywhere; }
    .site-development.home-page .hp-main { padding-top: 16px; }
    .site-development.home-page .hp-hero { min-height: 0; gap: 22px; padding: 20px; }
    .site-development.home-page .hp-hero-top { gap: 8px 14px; }
    .site-development.home-page .hp-hero-top .hp-eyebrow { font-size: 10px; }
    .site-development.home-page .hp-location { font-size: 9px; }
    .site-development.home-page .hp-poster-kicker { font-size: 10px; letter-spacing: .06em; line-height: 1.4; }
    .site-development.home-page .hp-poster h1 { max-width: none; font-size: clamp(32px, 8vw, 44px); line-height: 1.06; margin-top: 14px; }
    .home-page .hp-desktop-text { display: none; }
    .home-page .hp-mobile-text { display: inline; }
    .home-page .hp-mobile-edition { display: block; margin-top: 8px; color: var(--hp-muted); font-size: 20px; line-height: 1.2; letter-spacing: 0; }
    .site-development.home-page .hp-hero-bottom { gap: 18px; padding-top: 18px; }
    .site-development.home-page .hp-schedule { width: 100%; gap: 14px 24px; }
    .site-development.home-page .hp-meta-label { font-size: 10px; letter-spacing: .04em; }
    .site-development.home-page .hp-schedule strong { font-size: 18px; }
    .site-development.home-page .hp-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; }
    .home-page .hp-actions .hp-action { min-width: 0; gap: 8px; padding: 10px 12px; }
    .home-page .hp-actions .hp-action:only-child { grid-column: 1 / -1; }
}
