/* Archive presentation: readable event art and a clear path to each ticket type. */
.bfa-events-intro.archive-hero {
    min-height: 380px;
    grid-template-columns: minmax(0, 1fr) minmax(0, .55fr);
    align-items: end;
    gap: 48px;
    padding: 215px max(28px, calc((100vw - 1240px) / 2)) 56px;
    background: radial-gradient(ellipse at 85% 10%, rgba(227,29,43,.10), transparent 55%), #09090b;
}
.bfa-events-intro h1 { font-size: clamp(2.9rem, 5.6vw, 5.2rem); line-height: 1.05; }
.bfa-events-intro .eyebrow { position: relative; margin-bottom: 16px; }
.bfa-events-intro > p { max-width: 49ch; margin: 0 0 3px; font-size: .98rem; line-height: 1.7; }
.bfa-events.section--wide { width: min(calc(100% - 56px), 1240px); padding-top: 48px; padding-bottom: 90px; }
.bfa-events__heading { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-bottom: 24px; }
.bfa-events__heading .eyebrow { margin: 0 0 8px; }
.bfa-events__heading h2 { font-size: clamp(1.6rem, 3vw, 2.25rem); }
.bfa-events__heading > span { color: var(--muted); font-size: .82rem; white-space: nowrap; }
.bfa-events .event-filters { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .65fr) minmax(0, 1.2fr) minmax(0, 1fr) auto; gap: 18px; padding: 22px; margin-bottom: 32px; background: #111215; }
.bfa-events .event-filters label { min-width: 0; gap: 9px; }
.bfa-events .event-filters label > span { font-size: .64rem; letter-spacing: .08em; font-weight: 700; }
.bfa-events .event-filters select, .bfa-events .event-filters input[type="search"] { width: 100%; min-width: 0; min-height: 48px; padding: 0 12px; border: 1px solid rgba(255,255,255,.17); border-radius: 3px; background: #090a0c; color: var(--text); font-size: .85rem; }
.bfa-events .event-filters input[type="search"]::placeholder { color: #8e9099; }
.bfa-events .event-filters .button { width: auto; min-height: 48px; padding: 0 24px; font-size: .68rem; }
.bfa-events .event-filters__clear { grid-column: 1 / -1; justify-self: end; min-height: 28px; gap: 9px; padding: 0; font-size: .74rem; font-weight: 600; text-transform: none; text-underline-offset: 4px; }
.bfa-events .event-grid { gap: 28px; }
.bfa-events__card { min-width: 0; overflow: hidden; border-radius: 4px; background: #101114; }
.bfa-events__card .event-card__image { display: grid; place-items: center; min-width: 0; height: 370px; aspect-ratio: auto; padding: 20px; background: radial-gradient(ellipse at 50% 70%, rgba(227,29,43,.12), transparent 65%), #070708; }
.bfa-events .event-card__image > .bfa-events__poster { display: block; width: 100%; height: 100%; min-height: 0; object-fit: contain; }
.bfa-events__card .event-card__arrow { right: 14px; bottom: 14px; width: 34px; height: 34px; font-size: 1rem; }
.bfa-events__card .event-card__content { min-width: 0; padding: 30px; }
.bfa-events__card .event-card__status { position: static; display: inline-flex; margin: 0 0 22px; padding: 5px 9px; border: 1px solid rgba(227,29,43,.35); background: rgba(227,29,43,.10); color: #ff7b83; font-size: .64rem; font-weight: 700; letter-spacing: .06em; }
.bfa-events__card .bfa-events__date { margin: 0 0 12px; color: #d1d1d7; font-size: .8rem; letter-spacing: .02em; font-weight: 600; text-transform: none; }
.bfa-events__card h2 { margin: 0; font-size: clamp(1.8rem, 3.4vw, 2.8rem); line-height: 1.15; letter-spacing: -.025em; overflow-wrap: anywhere; }
.bfa-events__venue { margin: 25px 0 0; padding-top: 19px; border-top: 1px solid var(--line); }
.bfa-events__venue > span { display: block; margin-bottom: 7px; color: #92949e; font-size: .65rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.bfa-events__venue p { max-width: 54ch; margin: 0; color: #c4c4cc; font-size: .88rem; line-height: 1.65; overflow-wrap: anywhere; }
.bfa-events__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.bfa-events__actions .button { width: auto; min-height: 47px; padding: 0 20px; gap: 14px; font-size: .67rem; letter-spacing: .04em; }
.bfa-events__actions .button--primary { box-shadow: none; }
.bfa-events__actions .button--ghost { border-color: rgba(255,255,255,.25); }
.bfa-events__details { display: inline-flex; min-height: 44px; align-items: center; gap: 18px; margin-top: 17px; color: #c4c4cb; font-size: .8rem; text-underline-offset: 5px; }
.bfa-events__details:hover { color: #fff; }
.bfa-events__card--featured { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1fr); align-items: stretch; }
.bfa-events__card--featured .event-card__image { height: auto; min-height: 490px; max-height: 580px; padding: 25px; }
.bfa-events__card--featured .event-card__content { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(30px, 4vw, 54px); }
.bfa-events__card--featured .bfa-events__poster { max-height: 530px; }
.bfa-events__archive-link { display: flex; justify-content: space-between; align-items: center; gap: 24px; margin-top: 36px; padding: 24px 0; border-top: 1px solid var(--line); }
.bfa-events__archive-link > div > span { color: #92949e; font-size: .65rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.bfa-events__archive-link p { margin: 7px 0 0; color: #d1d1d7; font-size: .88rem; }
.bfa-events__archive-link > a { display: inline-flex; min-height: 44px; align-items: center; gap: 16px; color: #d1d1d7; font-size: .8rem; text-underline-offset: 5px; }
.bfa-events .empty-card { grid-column: 1 / -1; padding: 36px; }
.bfa-events .empty-card h2 { font-size: clamp(1.6rem, 3vw, 2.5rem); line-height: 1.2; text-transform: none; }
.bfa-events .empty-card p { margin: 18px 0; color: var(--muted); }
.bfa-events :is(a, button, input, select):focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
.bfa-events .bfa-pagination:empty { display: none; }

/* Fight and replay pages use the same restrained type and preserve poster artwork. */
.fight-archive .page-shell__header h1 { font-size: clamp(2.6rem, 5.5vw, 4.8rem); }
.fight-archive .fight-event__header { display: grid; grid-template-columns: minmax(180px, .38fr) minmax(0, 1fr); min-height: 300px; align-items: center; }
.fight-archive .fight-event__header::after { display: none; }
.fight-archive .fight-event__header > img { position: static; display: block; width: 100%; height: 300px; padding: 18px; object-fit: contain; background: #08090a; }
.fight-archive .fight-event__header-content { min-width: 0; width: 100%; padding: clamp(24px, 4vw, 44px); }
.fight-archive .fight-event__header-content h2 { font-size: clamp(1.9rem, 3.8vw, 3.25rem); line-height: 1.12; }
.fight-archive .fight-event__facts { display: grid; gap: 10px; font-size: .85rem; font-weight: 500; }
.fight-archive .fight-event__facts span + span::before { content: none; }
.fight-archive .fight-event__bout { min-width: 0; }
.fight-archive .empty-card h2 { line-height: 1.2; text-transform: none; }
.past-hero h1 { font-size: clamp(3rem, 6.5vw, 5.8rem); line-height: 1.07; }
.past-intro h2, .past-featured__heading h2, .past-list .section-heading h2, .past-endcap h2 { font-size: clamp(2rem, 4vw, 3.3rem); line-height: 1.14; }
.past-empty h3 { font-size: clamp(1.65rem, 3vw, 2.5rem); line-height: 1.18; }
.past-empty p { line-height: 1.7; }
.past-empty { grid-template-columns: minmax(0, 1fr); }
.past-empty > div:last-child { max-width: 820px; padding: clamp(28px, 4vw, 50px); }
.past-hero { background: radial-gradient(ellipse at 85% 10%, rgba(227,29,43,.12), transparent 55%), #09090b; }
.past-card__image { background-size: contain; background-color: #08090a; }
.past-card__body h3 { line-height: 1.15; }
.past-card__meta { line-height: 1.7; overflow-wrap: anywhere; }

@media (max-width: 1099px) {
    .bfa-events-intro.archive-hero { grid-template-columns: 1fr; min-height: 330px; gap: 24px; padding-top: 155px; padding-bottom: 42px; }
    .bfa-events-intro > p { max-width: 64ch; }
    .bfa-events .event-filters { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
    .bfa-events .event-filters .button { justify-self: start; }
    .bfa-events__card--featured { grid-template-columns: minmax(0, .75fr) minmax(0, 1fr); }
    .bfa-events__card--featured .event-card__content { padding: 28px; }
    .bfa-events__card--featured .event-card__image { min-height: 440px; }
}
@media (max-width: 720px) {
    .bfa-events-intro.archive-hero { gap: 22px; padding: 146px 22px 38px; min-height: 0; }
    .bfa-events-intro h1 { font-size: clamp(2.55rem, 9.8vw, 3.9rem); }
    .bfa-events-intro > p { font-size: .92rem; }
    .bfa-events.section--wide { width: calc(100% - 36px); padding-top: 32px; padding-bottom: 54px; }
    .bfa-events__heading { gap: 14px; margin-bottom: 22px; }
    .bfa-events .event-filters { gap: 17px 13px; padding: 18px; margin-bottom: 24px; }
    .bfa-events .event-filters select, .bfa-events .event-filters input[type="search"] { font-size: .8rem; padding: 0 9px; }
    .bfa-events .event-filters__search { grid-column: 1 / -1; }
    .bfa-events .event-filters .button { align-self: end; justify-self: stretch; padding: 0 16px; }
    .bfa-events .event-grid { grid-template-columns: minmax(0, 1fr); gap: 22px; }
    .bfa-events__card--featured { grid-template-columns: minmax(0, 1fr); }
    .bfa-events__card .event-card__image, .bfa-events__card--featured .event-card__image { min-height: 0; height: 440px; max-height: none; padding: 20px; }
    .bfa-events__card .event-card__content, .bfa-events__card--featured .event-card__content { padding: 26px 22px; }
    .bfa-events__card .event-card__status { margin-bottom: 20px; }
    .bfa-events__card h2 { font-size: clamp(1.9rem, 7vw, 2.5rem); }
    .bfa-events__actions { width: 100%; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 10px; }
    .bfa-events__actions .button { width: 100%; padding: 0 10px; font-size: .64rem; gap: 9px; }
    .bfa-events__archive-link { display: grid; gap: 10px; margin-top: 26px; }
    .bfa-events__archive-link > a { justify-self: start; }
    .bfa-events .empty-card { padding: 28px 22px; }
    .fight-archive .fight-event__header { grid-template-columns: minmax(0, 1fr); }
    .fight-archive .fight-event__header > img { height: 330px; }
    .fight-archive .fight-event__header-content { padding: 26px 22px; }
    .fight-archive .fight-event__header-content h2 { font-size: clamp(1.9rem, 8vw, 2.8rem); }
    .past-hero h1 { font-size: clamp(2.8rem, 10.5vw, 4.3rem); }
}
@media (max-width: 360px) {
    .bfa-events .event-filters { grid-template-columns: minmax(0, 1fr); }
    .bfa-events__actions { grid-template-columns: minmax(0, 1fr); }
    .bfa-events__card .event-card__image, .bfa-events__card--featured .event-card__image { height: 380px; }
}
