/* Accueil v2, 29/09/2026. Charte : papier dominant, trois bandes sombres au plus, rouge en signal, Barlow seule. */
.mma-a {
	--a-papier: #F5F2EC; --a-carte: #FAF8F4; --a-sable: #E8E2D8; --a-filet: #D4CDC0; --a-filet-l: #E0DACE;
	--a-noir: #0D0D0D; --a-surface: #2A2A2A; --a-filet-n: #333331; --a-os: #F5F2EC; --a-os-att: #A8A29A;
	--a-encre-2: #4E4A42; --a-rouge: #C0202A; --a-rouge-c: #E5464F; --a-or: #8A6A10;
	--a-cond: 'Barlow Condensed', 'Barlow', sans-serif; --a-semi: 'Barlow Semi Condensed', 'Barlow', sans-serif;
	--a-gout: clamp(16px, 5.5vw, 80px);
	background: var(--a-papier); color: var(--a-noir); font-family: 'Barlow', sans-serif;
	font-variant-numeric: tabular-nums lining-nums; overflow-x: clip; padding-bottom: 104px;
}
.mma-a a { color: inherit; text-decoration: none; }
.mma-a a:hover, .mma-a a:focus-visible { color: var(--a-rouge); }
.mma-a :focus-visible { outline: 2px solid var(--a-rouge); outline-offset: 2px; }
.mma-a p { margin: 0; }
.mma-a h1, .mma-a h2, .mma-a h3 { margin: 0; letter-spacing: .004em; }
.mma-a-cadre { max-width: 1440px; margin: 0 auto; padding-left: var(--a-gout); padding-right: var(--a-gout); box-sizing: border-box; }

/* Primitives */
.mma-et { font-family: var(--a-semi); font-weight: 600; font-size: 11px; letter-spacing: .15em; text-transform: uppercase; color: var(--a-encre-2); display: inline-flex; align-items: center; gap: 8px; }
.mma-et--rouge { color: var(--a-rouge); }
.mma-et--rougeclair { color: var(--a-rouge-c); }
.mma-et--attenue { color: var(--a-os-att); }
.mma-rougeclair { color: var(--a-rouge-c); }
.mma-oct { display: inline-block; width: 8px; height: 8px; flex: none; clip-path: polygon(29.3% 0,70.7% 0,100% 29.3%,100% 70.7%,70.7% 100%,29.3% 100%,0 70.7%,0 29.3%); }
.mma-oct--rouge { background: var(--a-rouge); }
.mma-oct--rougeclair { background: var(--a-rouge-c); }
.mma-oct--or { background: var(--a-or); }
.mma-oct--noir { background: var(--a-noir); width: 10px; height: 10px; }
.mma-oct--vide { background: transparent; box-shadow: inset 0 0 0 1.5px var(--a-encre-2); }
.mma-a-h2 { font-family: var(--a-cond); font-weight: 800; text-transform: uppercase; line-height: .9; font-size: clamp(40px, 5vw, 64px); }
.mma-a-h2--m { font-size: clamp(36px, 4vw, 52px); }
.mma-a-lien { font-family: var(--a-semi); font-weight: 600; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--a-rouge) !important; white-space: nowrap; }
.mma-a-lien:hover { color: var(--a-noir) !important; }
.mma-a__fl { flex: none; }
.mma-a-sec { padding-top: 104px; }
.mma-a-sec__tete { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px 40px; margin-bottom: 36px; flex-wrap: wrap; }
.mma-a-sec__tete > div { display: flex; flex-direction: column; gap: 14px; }
.mma-a-sec__chapo { font-size: 17px; line-height: 1.6; color: var(--a-encre-2); max-width: 440px; }
.mma-a-note { padding: 14px 0; font-size: 14px; color: var(--a-encre-2); }

/* Hero */
.mma-a-hero { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: 48px; padding-top: 72px; padding-bottom: 56px; align-items: start; }
.mma-a-hero__txt { display: flex; flex-direction: column; gap: 28px; }
.mma-a-hero__h1 { font-family: var(--a-cond); font-weight: 800; text-transform: uppercase; line-height: .88; font-size: clamp(52px, 7.2vw, 104px); }
.mma-a-hero__intro { font-size: clamp(17px, 1.5vw, 20px); line-height: 1.55; color: var(--a-encre-2); max-width: 640px; }
.mma-a-cherche { display: flex; flex-direction: column; gap: 12px; max-width: 680px; }
.mma-a-cherche__champ { display: flex; border: 1px solid var(--a-noir); background: var(--a-carte); min-height: 60px; }
.mma-a-cherche__champ input { flex: 1; min-width: 0; border: 0 !important; background: transparent !important; padding: 0 20px !important; font: 400 18px 'Barlow', sans-serif; color: var(--a-noir); box-shadow: none !important; border-radius: 0 !important; }
.mma-a-cherche__champ button { border: 0; border-radius: 0; background: var(--a-noir); color: var(--a-os); padding: 0 28px; font: 700 16px var(--a-cond); text-transform: uppercase; letter-spacing: .02em; cursor: pointer; }
.mma-a-cherche__champ button:hover { background: var(--a-rouge); }
.mma-a-chips { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.mma-a-chips .mma-et { margin-right: 4px; }
.mma-a-chips a { border: 1px solid var(--a-filet); padding: 8px 12px; font-size: 14px; min-height: 36px; box-sizing: border-box; display: inline-flex; align-items: center; }
.mma-a-chips a:hover { border-color: var(--a-rouge); }

/* Carte prochain gala */
.mma-a-gala { background: var(--a-noir); color: var(--a-os); position: relative; overflow: hidden; display: flex; flex-direction: column; }
.mma-a-gala > * { position: relative; }
.mma-a-gala__oct { position: absolute !important; right: -70px; top: -70px; width: 260px; height: 260px; background: var(--a-surface); opacity: .55; clip-path: polygon(29.3% 0,70.7% 0,100% 29.3%,100% 70.7%,70.7% 100%,29.3% 100%,0 70.7%,0 29.3%); }
.mma-a-gala__tete { padding: 28px 28px 0; display: flex; justify-content: space-between; align-items: center; }
.mma-a-gala__j { font: 800 44px/1 var(--a-cond); text-transform: uppercase; }
.mma-a-gala__nom { padding: 12px 28px 24px; display: flex; flex-direction: column; gap: 10px; }
.mma-a-gala__titre { font: 800 clamp(48px, 4.4vw, 64px)/.9 var(--a-cond); text-transform: uppercase; }
.mma-a-gala__lieu { font-size: 15px; color: var(--a-os-att); }
.mma-a-gala__combat { border-top: 1px solid var(--a-filet-n); padding: 20px 28px; display: flex; flex-direction: column; gap: 6px; }
.mma-a-gala__combat p { font: 700 26px/1.05 var(--a-cond); text-transform: uppercase; }
.mma-a-gala__h { border-top: 1px solid var(--a-filet-n); display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); }
.mma-a-gala__h > div { padding: 16px 12px 16px 28px; display: flex; flex-direction: column; gap: 4px; }
.mma-a-gala__h > div + div { border-left: 1px solid var(--a-filet-n); padding-left: 16px; }
.mma-a-gala__h strong { font: 700 22px/1.1 var(--a-cond); text-transform: uppercase; }
.mma-a .mma-a-gala__lien { border-top: 1px solid var(--a-filet-n); padding: 18px 28px; display: flex; justify-content: space-between; align-items: center; font: 700 16px var(--a-cond); text-transform: uppercase; color: var(--a-os); }
.mma-a .mma-a-gala__lien:hover { color: var(--a-rouge-c); }

/* Volumétrie */
.mma-a-vol { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); }
.mma-a-vol::before { content: none; }
.mma-a-vol > div { padding: 22px 0 22px 24px; border-left: 1px solid var(--a-filet-l); display: flex; flex-direction: column; gap: 6px; border-top: 1px solid var(--a-noir); border-bottom: 1px solid var(--a-filet); }
.mma-a-vol > div:first-child { padding-left: 0; border-left: 0; }
.mma-a-vol strong { font: 800 44px/.9 var(--a-cond); }

/* Portes */
.mma-a-portes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--a-noir); }
.mma-a-porte { padding: 32px; display: flex; flex-direction: column; gap: 16px; border-bottom: 1px solid var(--a-filet); border-left: 1px solid var(--a-filet); }
.mma-a-porte:nth-child(3n+1) { border-left: 0; padding-left: 0; }
.mma-a-porte:nth-child(3n) { padding-right: 0; }
.mma-a-porte--club { background: var(--a-sable); padding-right: 28px !important; padding-left: 32px !important; }
.mma-a-porte__meta { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; }
.mma-a-porte__h { font: 800 44px/.9 var(--a-cond); text-transform: uppercase; }
.mma-a-porte__d { font-size: 16px; line-height: 1.6; color: var(--a-encre-2); flex: 1; }
.mma-a-liens { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--a-filet-l); }
.mma-a-liens li { margin: 0; border-bottom: 1px solid var(--a-filet-l); }
.mma-a-liens a { padding: 11px 0; display: flex; justify-content: space-between; gap: 12px; font-size: 15px; font-weight: 500; min-height: 44px; box-sizing: border-box; align-items: center; }
.mma-a-porte--club .mma-a-liens, .mma-a-porte--club .mma-a-liens li { border-color: var(--a-filet); }

/* Registres */
.mma-a-reg { border-top: 1px solid var(--a-noir); }
.mma-a-reg__l { display: grid; gap: 16px; padding: 13px 0; border-bottom: 1px solid var(--a-filet-l); align-items: center; }
.mma-a-reg__l--tete { padding: 10px 0; border-bottom-color: var(--a-filet); }
.mma-a-reg--champ { grid-template-columns: minmax(0, 220px) minmax(0, 1fr) 90px; }
.mma-a-reg--cal { grid-template-columns: 110px 150px 170px minmax(0, 1fr); padding: 16px 0; border-bottom-color: var(--a-filet); }
.mma-a-reg__div, .mma-a-reg__ville { font-size: 15px; color: var(--a-encre-2); }
.mma-a-reg__d { text-align: right; font-size: 15px; }
.mma-a-reg__nom { font: 700 20px/1.1 var(--a-cond); text-transform: uppercase; display: flex; gap: 10px; align-items: center; }
.mma-a-reg__date { font-size: 15px; display: flex; gap: 8px; align-items: center; }
.mma-a-reg__ev { font: 700 20px/1.1 var(--a-cond); text-transform: uppercase; }
.mma-a-reg__main { font-size: 15px; font-weight: 500; }

/* Champions et vedette */
.mma-a-champ { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: 24px 96px; align-items: start; }
.mma-a-champ--bas { margin-top: 56px; }
.mma-a-champ--bas > div { display: flex; flex-direction: column; gap: 16px; }
.mma-a-vedette { background: var(--a-carte); border: 1px solid var(--a-filet); display: flex; flex-direction: column; }
.mma-a-vedette__img { display: block; height: 400px; overflow: hidden; position: relative; }
.mma-a-vedette__img img { width: 100%; height: 100%; object-fit: cover; object-position: 30% 18%; display: block; }
.mma-a-vedette__badge { position: absolute; left: 16px; top: 16px; background: var(--a-noir); color: var(--a-os) !important; padding: 6px 10px; }
.mma-a-vedette__corps { padding: 24px; display: flex; flex-direction: column; gap: 14px; }
.mma-a-vedette__nom { font: 800 44px/.9 var(--a-cond); text-transform: uppercase; }
.mma-a-vedette__chiffres { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); border-top: 1px solid var(--a-filet-l); border-bottom: 1px solid var(--a-filet-l); }
.mma-a-vedette__chiffres > div { padding: 12px 0; display: flex; flex-direction: column; gap: 4px; }
.mma-a-vedette__chiffres > div + div { border-left: 1px solid var(--a-filet-l); padding-left: 14px; }
.mma-a-vedette__chiffres strong { font: 700 22px/1.1 var(--a-cond); text-transform: uppercase; }
.mma-a-vedette__txt { font-size: 15px; line-height: 1.6; color: var(--a-encre-2); }
.mma-a-fr { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.mma-a-fr a { border: 1px solid var(--a-filet); padding: 16px; display: flex; flex-direction: column; gap: 6px; justify-content: center; }
.mma-a-fr a:hover { border-color: var(--a-noir); }
.mma-a-fr strong { font: 700 19px/1.1 var(--a-cond); text-transform: uppercase; }
.mma-a-fr span { font-size: 14px; color: var(--a-encre-2); }
.mma-a-fr .mma-a-fr__tous { border-color: var(--a-noir); }
.mma-a-p4p { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 20px; border-top: 1px solid var(--a-noir); }
.mma-a-p4p ol { list-style: none; margin: 0; padding: 0; }
.mma-a-p4p li { margin: 0; padding: 9px 0; border-bottom: 1px solid var(--a-filet-l); font-size: 15px; display: flex; gap: 10px; }
.mma-a-p4p li > span { color: var(--a-encre-2); width: 18px; flex: none; }

/* Bandes */
.mma-a-bande { margin-top: 112px; padding: 96px 0; }
.mma-a-bande--sable { background: var(--a-sable); }
.mma-a-bande--sable .mma-a-reg__l--tete, .mma-a-bande--sable .mma-a-reg__l { border-bottom-color: var(--a-filet); }
.mma-a-bande--noir { background: var(--a-noir); color: var(--a-os); }
.mma-a-bande + .mma-a-sec { padding-top: 112px; }
.mma-a-ev { display: grid; grid-template-columns: minmax(0, 8fr) minmax(0, 3fr); gap: 24px 64px; align-items: start; }
.mma-a-res { display: flex; flex-direction: column; gap: 16px; }
.mma-a-res ul { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--a-noir); }
.mma-a-res li { margin: 0; padding: 14px 0; border-bottom: 1px solid var(--a-filet); display: flex; flex-direction: column; gap: 4px; }
.mma-a-res strong { font: 700 18px/1.1 var(--a-cond); text-transform: uppercase; }
.mma-a-res span { font-size: 14px; color: var(--a-encre-2); }
.mma-a-ligues { margin-top: 44px; display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.mma-a-ligues .mma-et { margin-right: 8px; }
.mma-a-ligues a { border: 1px solid var(--a-noir); padding: 10px 14px; font-size: 14px; font-weight: 500; min-height: 44px; box-sizing: border-box; display: inline-flex; align-items: center; }
.mma-a-ligues a:hover { background: var(--a-noir); color: var(--a-os) !important; }

/* Académie */
.mma-a-acad { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 24px 96px; align-items: end; }
.mma-a-acad__g { display: flex; flex-direction: column; gap: 22px; }
.mma-a-acad__img { height: 300px; overflow: hidden; margin-top: 8px; }
.mma-a-acad__img img { width: 100%; height: 100%; object-fit: cover; object-position: 70% 55%; display: block; }
.mma-a-parcours { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--a-noir); }
.mma-a-parcours li { margin: 0; padding: 26px 0; border-bottom: 1px solid var(--a-filet); display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 8px; }
.mma-a-parcours__n { font: 800 40px/.9 var(--a-cond); color: var(--a-rouge); }
.mma-a-parcours li > div { display: flex; flex-direction: column; gap: 10px; }
.mma-a-parcours__h { font: 700 28px/1 var(--a-cond); text-transform: uppercase; }
.mma-a-parcours__l { font-size: 15px; color: var(--a-encre-2); line-height: 1.7; }
.mma-a-parcours__l a { text-decoration: underline; text-decoration-color: var(--a-filet); text-underline-offset: 3px; }
.mma-a-acad__tout { grid-column: 2; }

/* Équipement */
.mma-a-cats { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); border-top: 1px solid var(--a-noir); border-bottom: 1px solid var(--a-filet); }
.mma-a-cats a { padding: 26px 20px; display: flex; flex-direction: column; gap: 10px; border-left: 1px solid var(--a-filet-l); }
.mma-a-cats a:first-child { border-left: 0; padding-left: 0; }
.mma-a-cats strong { font: 700 24px/1 var(--a-cond); text-transform: uppercase; }
.mma-a-cats span { font-size: 14px; color: var(--a-encre-2); }
.mma-a-outils { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-top: 36px; }
.mma-a-outils a { background: var(--a-carte); border: 1px solid var(--a-filet); padding: 28px; display: flex; justify-content: space-between; align-items: center; gap: 16px; font-size: 24px; }
.mma-a-outils a:hover { border-color: var(--a-noir); }
.mma-a-outils div { display: flex; flex-direction: column; gap: 8px; }
.mma-a-outils strong { font: 700 26px/1 var(--a-cond); text-transform: uppercase; }
.mma-a-outils span { font-size: 15px; color: var(--a-encre-2); }

/* Clubs */
.mma-a-clubs { position: relative; overflow: hidden; }
.mma-a-clubs__oct { position: absolute; right: -120px; bottom: -160px; width: 560px; height: 560px; background: var(--a-surface); opacity: .5; clip-path: polygon(29.3% 0,70.7% 0,100% 29.3%,100% 70.7%,70.7% 100%,29.3% 100%,0 70.7%,0 29.3%); }
.mma-a-clubs__in { position: relative; display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); gap: 40px 96px; align-items: start; }
.mma-a-clubs__g { display: flex; flex-direction: column; gap: 22px; }
.mma-a-clubs .mma-a-h2 { font-size: clamp(44px, 5.4vw, 72px); color: var(--a-os); }
.mma-a-clubs__txt { font-size: 18px; line-height: 1.6; color: var(--a-os-att); }
.mma-a-clubs__cta { display: flex; gap: 16px; flex-wrap: wrap; margin-top: 8px; }
.mma-a .mma-a-btn { font: 700 17px/1 var(--a-cond); text-transform: uppercase; letter-spacing: .02em; padding: 18px 28px; display: inline-flex; align-items: center; min-height: 52px; box-sizing: border-box; }
.mma-a .mma-a-btn--rouge { background: var(--a-rouge); color: var(--a-os); }
.mma-a .mma-a-btn--rouge:hover { background: var(--a-os); color: var(--a-noir); }
.mma-a .mma-a-btn--contour { border: 1px solid var(--a-os-att); color: var(--a-os); }
.mma-a .mma-a-btn--contour:hover { border-color: var(--a-os); color: var(--a-os); }
.mma-a-offre { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--a-filet-n); }
.mma-a-offre li { margin: 0; border-bottom: 1px solid var(--a-filet-n); }
.mma-a .mma-a-offre a { padding: 22px 0; display: flex; justify-content: space-between; align-items: center; gap: 16px; color: var(--a-os); }
.mma-a .mma-a-offre a:hover { color: var(--a-rouge-c); }
.mma-a-offre a > div:first-child { display: flex; flex-direction: column; gap: 6px; }
.mma-a-offre strong { font: 700 24px/1 var(--a-cond); text-transform: uppercase; }
.mma-a-offre a > div:first-child span { font-size: 14px; color: var(--a-os-att); }
.mma-a-offre__p { display: flex; flex-direction: column; align-items: flex-end; gap: 2px; text-align: right; }
.mma-a-offre__p .mma-et { color: var(--a-os-att); }
.mma-a-offre__p strong { font-size: 26px; white-space: nowrap; }
.mma-a .mma-a-offre__m { color: var(--a-os); white-space: nowrap; }

/* Fil */
.mma-a-fil { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 7fr); gap: 24px 96px; }
.mma-a-fil__g { display: flex; flex-direction: column; gap: 14px; align-items: flex-start; }
.mma-a-fil__g .mma-a-lien { margin-top: 6px; }
.mma-a-fil__l { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--a-noir); }
.mma-a-fil__l li { margin: 0; border-bottom: 1px solid var(--a-filet-l); }
.mma-a-fil__l a { padding: 16px 0; display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 16px; }
.mma-a-fil__l time { font-size: 14px; color: var(--a-encre-2); padding-top: 2px; }
.mma-a-fil__l span { font-size: 17px; font-weight: 500; line-height: 1.4; }

/* Médias */
.mma-a-types { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.mma-a-types a { border: 1px solid var(--a-filet); padding: 22px; display: flex; gap: 12px; align-items: center; font: 700 20px/1 var(--a-cond); text-transform: uppercase; }
.mma-a-types a:hover { border-color: var(--a-noir); }

.mma-a-exp { text-transform: none; }
.mma-a-medias + .mma-a-bande { margin-top: 104px; }
.mma-a-bande--noir + .mma-a-sec { padding-top: 104px; }

/* Tablette */
@media (max-width: 1100px) {
	.mma-a-hero, .mma-a-champ, .mma-a-ev, .mma-a-acad, .mma-a-clubs__in, .mma-a-fil { grid-template-columns: minmax(0, 1fr); gap: 40px; }
	.mma-a-gala { max-width: 560px; }
	.mma-a-vedette { max-width: 560px; }
	.mma-a-acad__tout { grid-column: 1; }
	.mma-a-vol { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.mma-a-vol > div:nth-child(4) { padding-left: 0; border-left: 0; }
	.mma-a-vol > div:nth-child(n+4) { border-top: 0; }
	.mma-a-portes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mma-a-porte { padding: 28px 28px 32px !important; border-left: 1px solid var(--a-filet); }
	.mma-a-porte:nth-child(2n+1) { border-left: 0; padding-left: 0 !important; }
	.mma-a-porte--club { padding-left: 28px !important; }
	.mma-a-cats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.mma-a-cats a:nth-child(4) { border-left: 0; padding-left: 0; }
	.mma-a-cats a:nth-child(-n+3) { border-bottom: 1px solid var(--a-filet-l); }
	.mma-a-types { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Mobile */
@media (max-width: 700px) {
	.mma-a { padding-bottom: 64px; }
	.mma-a-sec { padding-top: 64px; }
	.mma-a-bande { margin-top: 64px; padding: 48px 0; }
	.mma-a-bande + .mma-a-sec { padding-top: 64px; }
	.mma-a-hero { padding-top: 36px; padding-bottom: 36px; gap: 32px; }
	.mma-a-gala__tete { padding: 20px 20px 0; }
	.mma-a-gala__nom, .mma-a-gala__combat, .mma-a .mma-a-gala__lien { padding-left: 20px; padding-right: 20px; }
	.mma-a-gala__h > div:first-child { padding-left: 20px; }
	.mma-a-gala__h strong { font-size: 18px; }
	.mma-a-vol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mma-a-vol > div { padding: 16px 0 16px 16px !important; border-top: 0 !important; border-left: 1px solid var(--a-filet-l) !important; }
	.mma-a-vol > div:nth-child(odd) { padding-left: 0 !important; border-left: 0 !important; }
	.mma-a-vol > div:nth-child(-n+2) { border-top: 1px solid var(--a-noir) !important; }
	.mma-a-vol strong { font-size: 36px; }
	.mma-a-portes { grid-template-columns: minmax(0, 1fr); }
	.mma-a-porte { padding: 28px 0 !important; border-left: 0 !important; }
	.mma-a-porte--club { padding: 28px 16px !important; margin: 0 -16px; }
	.mma-a-porte__h { font-size: 38px; }
	.mma-a-reg--champ { grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); }
	.mma-a-reg--champ .mma-a-reg__d { display: none; }
	.mma-a-reg--cal { grid-template-columns: 64px minmax(0, 1fr); gap: 4px 12px; }
	.mma-a-reg--cal .mma-a-reg__ville { display: none; }
	.mma-a-reg--cal.mma-a-reg__l--tete { display: none; }
	.mma-a-reg--cal .mma-a-reg__main { grid-column: 2; font-size: 14px; }
	.mma-a-reg__nom { font-size: 18px; }
	.mma-a-vedette__img { height: 320px; }
	.mma-a-fr { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mma-a-cats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mma-a-cats a { padding: 18px 12px !important; border-left: 1px solid var(--a-filet-l) !important; border-bottom: 1px solid var(--a-filet-l); }
	.mma-a-cats a:nth-child(odd) { border-left: 0 !important; padding-left: 0 !important; }
	.mma-a-outils { grid-template-columns: minmax(0, 1fr); gap: 12px; margin-top: 24px; }
	.mma-a-outils a { padding: 20px; }
	.mma-a-clubs__oct { width: 320px; height: 320px; }
	.mma-a-offre__p strong { font-size: 20px; }
	.mma-a-fil__l a { grid-template-columns: minmax(0, 1fr); gap: 4px; }
	.mma-a-types { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mma-a-types a { padding: 16px; font-size: 18px; }
	.mma-a-parcours li { grid-template-columns: 44px minmax(0, 1fr); padding: 20px 0; }
	.mma-a-acad__img { height: 220px; }
}

/* Hero v3, 29/09 : scène pleine largeur sur fond vidéo ou photo, pile de cartes des prochains galas. */
.mma-a-scene { position: relative; background: var(--a-noir); color: var(--a-os); isolation: isolate; }
.mma-a-scene__fond { position: absolute; inset: 0; overflow: hidden; z-index: -1; }
.mma-a-scene__fond img, .mma-a-scene__fond video { width: 100%; height: 100%; object-fit: cover; display: block; transform: scale(1.04); animation: mma-a-zoom 18s ease-out both; }
.mma-a-scene__fond::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(13,13,13,.94) 0%, rgba(13,13,13,.72) 48%, rgba(13,13,13,.38) 100%), linear-gradient(0deg, rgba(13,13,13,.85) 0%, rgba(13,13,13,0) 40%); }
@keyframes mma-a-zoom { from { transform: scale(1.12); } to { transform: scale(1.02); } }
.mma-a-scene__in { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: 48px; align-items: center; min-height: clamp(520px, 70vh, 720px); padding-top: 96px; padding-bottom: 96px; }
.mma-a-scene__txt { display: flex; flex-direction: column; gap: 24px; }
.mma-a-scene .mma-a-hero__h1 { color: var(--a-os); }
.mma-a-scene .mma-a-hero__intro { color: #D9D3C9; }

/* Pile de cartes */
.mma-a-pile { display: grid; perspective: 1400px; position: relative; z-index: 3; margin-bottom: -120px; align-self: end; padding-top: 44px; animation: mma-a-arrive 1s cubic-bezier(.16,.84,.24,1) .15s both; }
@keyframes mma-a-arrive { from { opacity: 0; transform: translate3d(40px, 120px, 0) rotate(3deg); } to { opacity: 1; transform: none; } }
.mma-a .mma-a-carte { grid-area: 1 / 1; display: flex; flex-direction: column; color: var(--a-os); text-decoration: none; position: relative; overflow: hidden;
	background: rgba(17,17,17,.93); -webkit-backdrop-filter: blur(16px) saturate(140%); backdrop-filter: blur(16px) saturate(140%);
	border: 1px solid rgba(245,242,236,.14); box-shadow: 0 40px 90px -20px rgba(0,0,0,.6), 0 2px 0 rgba(255,255,255,.04) inset;
	transform-origin: 50% 0%; z-index: calc(10 - var(--i, 0));
	transform: translate3d(0, 0, 0) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));
	transition: transform .6s cubic-bezier(.2,.8,.2,1), opacity .5s ease, box-shadow .4s ease, border-color .4s ease; }
.mma-a-pile.est-pret .mma-a-carte { transition-delay: 0s; }
.mma-a-pile.est-pret .mma-a-carte:not([data-pos="0"]) { transform: translate3d(0, calc(var(--i) * -20px), 0) scale(calc(1 - var(--i) * .06)); opacity: 1; cursor: pointer; }
.mma-a-pile.est-pret .mma-a-carte:not([data-pos="0"]) { box-shadow: none; }
.mma-a-pile.est-pret .mma-a-carte[data-pos="1"] { background: #262626; }
.mma-a-pile.est-pret .mma-a-carte[data-pos="2"] { background: #1c1c1c; }
.mma-a-pile.est-pret .mma-a-carte:not([data-pos="0"]) > * { opacity: 0; transition: opacity .3s ease; }
.mma-a-pile.est-pret .mma-a-carte:not([data-pos="0"]):hover { transform: translate3d(0, calc(var(--i) * -20px - 8px), 0) scale(calc(1 - var(--i) * .06)); background: #3a3a3a; }
.mma-a .mma-a-carte[data-pos="0"]:hover { border-color: rgba(229,70,79,.55); box-shadow: 0 50px 100px -20px rgba(0,0,0,.7), 0 0 0 1px rgba(229,70,79,.25); color: var(--a-os); }
.mma-a-carte__lueur { position: absolute; inset: 0; pointer-events: none; opacity: 0; transition: opacity .4s ease; background: radial-gradient(460px circle at var(--mx, 80%) var(--my, 0%), rgba(229,70,79,.26), transparent 62%); }
.mma-a-carte[data-pos="0"]:hover .mma-a-carte__lueur { opacity: 1; }
.mma-a-carte > span { position: relative; }
.mma-a-carte__tete { padding: 26px 28px 0; display: flex; justify-content: space-between; align-items: center; }
.mma-a-carte__j { font: 800 40px/1 var(--a-cond); text-transform: uppercase; }
.mma-a-carte__pouls { animation: mma-a-pouls 1.8s ease-in-out infinite; }
@keyframes mma-a-pouls { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: .35; transform: scale(.7); } }
.mma-a-carte__nom { padding: 14px 28px 0; font: 800 clamp(46px, 4.2vw, 62px)/.9 var(--a-cond); text-transform: uppercase; }
.mma-a-carte__lieu { padding: 12px 28px 26px; font-size: 15px; color: var(--a-os-att); }
.mma-a-carte__face { border-top: 1px solid rgba(245,242,236,.12); padding: 22px 28px; display: flex; flex-direction: column; gap: 12px; }
.mma-a-carte__duel { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; font: 700 26px/1.05 var(--a-cond); text-transform: uppercase; }
.mma-a-carte__duel em { font: 600 12px var(--a-semi); letter-spacing: .15em; font-style: normal; color: var(--a-rouge-c); border: 1px solid rgba(229,70,79,.5); padding: 4px 7px; }
.mma-a-carte__cta { border-top: 1px solid rgba(245,242,236,.12); padding: 18px 28px; display: flex; justify-content: space-between; align-items: center; font: 700 16px var(--a-cond); text-transform: uppercase; background: rgba(192,32,42,0); transition: background .3s ease; }
.mma-a-carte__cta svg { transition: transform .3s ease; }
.mma-a-carte[data-pos="0"]:hover .mma-a-carte__cta { background: var(--a-rouge); }
.mma-a-carte[data-pos="0"]:hover .mma-a-carte__cta svg { transform: translateX(6px); }

/* Recherche, sous la scène */
.mma-a-recherche { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: 48px; padding-top: 80px; padding-bottom: 64px; }

@media (max-width: 1000px) {
	.mma-a-scene__in { grid-template-columns: minmax(0, 1fr); min-height: 0; padding-top: 64px; padding-bottom: 40px; gap: 56px; }
	.mma-a-pile { margin-bottom: -120px; max-width: 520px; width: calc(100% - 44px); }
	.mma-a-recherche { grid-template-columns: minmax(0, 1fr); padding-top: 160px; }
}
@media (max-width: 560px) {
	.mma-a-pile { width: calc(100% - 30px); }
	.mma-a-pile.est-pret .mma-a-carte:not([data-pos="0"]) { transform: translate3d(0, calc(var(--i) * -14px), 0) scale(calc(1 - var(--i) * .05)); }
	.mma-a-carte__nom { font-size: 44px; }
	.mma-a-carte__duel { font-size: 22px; }
}
@media (prefers-reduced-motion: reduce) {
	.mma-a-pile, .mma-a-scene__fond img, .mma-a-scene__fond video, .mma-a-carte__pouls { animation: none; }
	.mma-a .mma-a-carte { transition: none; }
}

.mma-a .mma-a-carte__duel span { font: 700 26px/1.05 var(--a-cond); }
.mma-a .mma-a-carte__cta span { font: 700 16px var(--a-cond); letter-spacing: .02em; }
.mma-a .mma-a-carte__lieu { font-family: 'Barlow', sans-serif; }
@media (max-width: 560px) { .mma-a .mma-a-carte__duel span { font-size: 22px; } }
.mma-a .mma-a-carte__cta { margin-top: auto; }
@media (max-width: 1000px) { .mma-a-pile { width: 100%; } }
@media (max-width: 560px) { .mma-a-pile { width: 100%; } }

/* Fond vidéo de l'accueil : chargé sur grand écran seulement, affiche en noir et blanc dessous. */
.mma-a-scene__fond video.mma-a-scene__vid { position: absolute; inset: 0; opacity: 0; transition: opacity .8s ease; animation: none; transform: none; }
.mma-a-scene__fond video.mma-a-scene__vid.est-lue { opacity: 1; }

/* Post Instagram officiel, 29/09 : la pile s'ouvre sous la carte avant (survol sur ordinateur, bouton sur mobile). */
.mma-a-pile { position: relative; }
.mma-a-ig { position: absolute; top: calc(100% - 18px); right: 0; width: max(100%, 360px); z-index: 1;
	display: flex; flex-direction: column; background: rgba(17,17,17,.97); color: var(--a-os);
	border: 1px solid rgba(229,70,79,.35); border-top: 0; box-shadow: 0 50px 100px -20px rgba(0,0,0,.75);
	visibility: hidden; opacity: 0; transform: translate3d(0, -48px, 0); clip-path: inset(0 0 100% 0);
	transition: transform .55s cubic-bezier(.2,.8,.2,1), clip-path .55s cubic-bezier(.2,.8,.2,1), opacity .3s ease, visibility 0s linear .55s; }
.mma-a-pile.est-ouverte .mma-a-ig { visibility: visible; opacity: 1; transform: none; clip-path: inset(0); transition-delay: .08s, .08s, 0s, 0s; }
.mma-a-ig__tete { display: flex; align-items: center; gap: 12px; padding: 34px 20px 14px; border-bottom: 1px solid rgba(245,242,236,.12); }
.mma-a .mma-a-ig__compte { font: 700 15px var(--a-cond); text-transform: none; color: var(--a-os); text-decoration: none; margin-right: auto; }
.mma-a .mma-a-ig__compte:hover { color: var(--a-rouge-c); }
.mma-a-ig__fermer { background: none; border: 0; color: var(--a-os-att); font-size: 24px; line-height: 1; cursor: pointer; padding: 2px 6px; }
.mma-a-ig__fermer:hover { color: var(--a-os); }
.mma-a-ig__corps { max-height: min(640px, 70vh); overflow-y: auto; overscroll-behavior: contain; padding: 16px 16px 4px; }
.mma-a-ig__accord { display: flex; flex-direction: column; gap: 14px; padding: 8px 4px 16px; font: 400 14px/1.5 'Barlow', sans-serif; color: #D9D3C9; }
.mma-a-ig__accord p { margin: 0; }
.mma-a-ig__ok { align-self: flex-start; background: var(--a-rouge); color: var(--a-os); border: 0; padding: 12px 18px; font: 700 15px var(--a-cond); text-transform: uppercase; letter-spacing: .02em; cursor: pointer; transition: background .25s ease; }
.mma-a-ig__ok:hover { background: #0D0D0D; }
.mma-a-ig__retenir { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--a-os-att); cursor: pointer; }
.mma-a-ig [hidden] { display: none !important; }
.mma-a-ig__embed { min-height: 0; }
.mma-a-ig__embed.est-charge { min-height: 420px; background: linear-gradient(100deg, rgba(255,255,255,.03) 30%, rgba(255,255,255,.08) 50%, rgba(255,255,255,.03) 70%) 0 0 / 200% 100%; animation: mma-a-squelette 1.4s linear infinite; }
.mma-a-ig__embed.est-charge:has(iframe) { background: none; animation: none; min-height: 0; }
@keyframes mma-a-squelette { to { background-position: -200% 0; } }
.mma-a-ig__embed .instagram-media { margin: 0 auto !important; min-width: 0 !important; width: 100% !important; max-width: 540px !important; }
.mma-a .mma-a-ig__pied { display: flex; justify-content: space-between; padding: 14px 20px; border-top: 1px solid rgba(245,242,236,.12); font: 700 15px var(--a-cond); text-transform: uppercase; color: var(--a-os); text-decoration: none; }
.mma-a .mma-a-ig__pied:hover { background: var(--a-rouge); color: var(--a-os); }

/* Cartes arrière : elles glissent sous la carte avant pendant l'ouverture. */
.mma-a-pile.est-pret.est-ouverte .mma-a-carte:not([data-pos="0"]) { transform: translate3d(0, 36px, 0) scale(.96); opacity: 0; pointer-events: none; }
.mma-a-pile.est-ouverte .mma-a-carte[data-pos="0"] { border-color: rgba(229,70,79,.55); }
.mma-a-pile.est-ouverte .mma-a-carte[data-pos="0"] .mma-a-carte__cta { background: var(--a-rouge); }

/* Bouton d'ouverture : visible sur écran tactile, discret au clavier sur ordinateur. */
.mma-a-ig__bouton { position: absolute; top: 0; right: 0; z-index: 12; display: inline-flex; align-items: center; gap: 8px;
	background: rgba(17,17,17,.92); color: var(--a-os); border: 1px solid rgba(245,242,236,.18); padding: 8px 12px;
	font: 600 12px var(--a-semi); letter-spacing: .12em; text-transform: uppercase; cursor: pointer; transition: background .25s ease, border-color .25s ease; }
.mma-a-ig__bouton:hover, .mma-a-ig__bouton[aria-expanded="true"] { background: var(--a-rouge); border-color: var(--a-rouge); }
@media (hover: hover) and (pointer: fine) {
	.mma-a-ig__bouton { opacity: 0; pointer-events: none; }
	.mma-a-ig__bouton:focus-visible { opacity: 1; pointer-events: auto; }
}
@media (max-width: 1000px) { .mma-a-ig { width: 100%; } }
@media (prefers-reduced-motion: reduce) {
	.mma-a-ig, .mma-a-pile.est-ouverte .mma-a-ig { transition: none; transform: none; }
	.mma-a-ig__embed.est-charge { animation: none; }
}
