.info_hero {
width:min(1100px, 100% - 2*var(--gouttiere));
margin:30px auto 0;
padding:10px 0
}

.info_hero h1 {
font-size:clamp(28px, 4vw, 42px);
text-transform:uppercase;
color:#1e2042
}

.info_intro {
max-width:760px;
font-size:16px;
color:#4a4c6a;
line-height:1.6;
margin:8px 0 0
}

.info_retour { margin:0 0 14px }

.info_retour a {
font-size:14px;
font-weight:600;
text-decoration:none;
color:#4a4c6a
}

.info_retour a:hover { color:#e0393e }

.info_texte {
font-size:16px;
color:#33355a;
line-height:1.7
}

.info_texte img {
max-width:100%;
height:auto;
border-radius:10px
}

.page_intro {
width:min(1100px, 92%);
margin:14px auto 34px
}

.interne_banniere + .page_intro { width:min(1200px, 100% - 2*var(--gouttiere)) }

.page_intro .info_texte {
font-size:16px;
color:#4a4c6a;
line-height:1.6
}

.page_intro h2, .page_intro h3 { margin:0 0 12px }

.info_vide {
background:#f4f5f9;
border-radius:14px;
text-align:center;
color:#4a4c6a;
margin:20px 0;
padding:40px 20px
}

.info_videTitre {
font-size:20px;
font-weight:700;
color:#1e2042;
margin:0 0 8px
}

.info_videCTA {
display:inline-block;
background:#eeb100;
border-radius:8px;
font-weight:700;
text-decoration:none;
color:#1e2042;
margin:16px 0 0;
padding:11px 22px
}

.info_srOnly {
position:absolute;
width:1px;
height:1px;
overflow:hidden;
white-space:nowrap;
clip-path:inset(50%);
margin:-1px
}

.part_liste {
width:min(1100px, 92%);
margin:20px auto 60px
}

.part_filtres {
display:flex;
flex-wrap:wrap;
gap:10px;
background:#f4f5f9;
border-radius:12px;
margin:0 0 24px;
padding:12px
}

.part_filtre { flex:1 1 180px }

.part_filtre select {
width:100%;
background:#fff;
border:1px solid #d7d9e6;
border-radius:8px;
font-size:14px;
color:#1e2042;
cursor:pointer;
padding:11px 10px
}

.part_btnFiltrer {
background:#1e2042;
border:none;
border-radius:8px;
font-size:14px;
font-weight:600;
color:#fff;
cursor:pointer;
transition:background .2s cubic-bezier(.4,0,.2,1);
padding:11px 22px
}

.part_btnFiltrer:hover { background:#e0393e }

.part_grille {
display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:20px
}

.part_card {
display:flex;
gap:16px;
background:#fff;
border-radius:14px;
box-shadow:0 4px 14px rgba(30,32,66,.08);
padding:16px
}

.part_cardLogo { flex-shrink:0 }

.part_cardLogo img {
display:block;
width:110px;
height:110px;
object-fit:contain;
background:#f4f5f9;
border-radius:10px;
padding:8px
}

.part_cardCorps {
display:flex;
flex-direction:column;
min-width:0;
gap:4px
}

.part_cardCat {
display:inline-block;
align-self:flex-start;
background:#eeb100;
border-radius:6px;
font-size:11px;
font-weight:700;
text-transform:uppercase;
color:#1e2042;
padding:3px 8px
}

.part_cardNom {
font-size:20px;
text-transform:uppercase;
line-height:1.2;
margin:0
}

.part_cardNom a {
text-decoration:none;
color:#1e2042
}

.part_cardNom a:hover { color:#e0393e }

.part_cardLieu {
font-size:13px;
color:#4a4c6a;
margin:0
}

.part_cardTitre {
font-size:15px;
font-weight:700;
color:#33355a;
margin:4px 0 0
}

.part_cardSousTitre {
font-size:13px;
color:#4a4c6a;
margin:0
}

.part_cardLien {
font-size:13px;
font-weight:700;
text-decoration:none;
color:#e0393e;
margin:auto 0 0
}

.part_fiche {
width:min(900px, 92%);
margin:0 auto 60px
}

.part_ficheHead {
display:flex;
align-items:center;
gap:24px;
background:#f4f5f9;
border-radius:14px;
margin:0 0 24px;
padding:24px
}

.part_ficheLogo {
width:140px;
height:140px;
object-fit:contain;
background:#fff;
border-radius:12px;
flex-shrink:0;
padding:10px
}

.part_ficheInfos h1 {
font-size:clamp(24px, 3.5vw, 36px);
text-transform:uppercase;
color:#1e2042;
margin:6px 0 4px
}

.part_ficheAdresse {
font-size:14px;
color:#4a4c6a;
margin:0 0 10px
}

.part_ficheLiens {
display:flex;
flex-wrap:wrap;
gap:8px
}

.part_ficheLien {
display:inline-block;
background:#1e2042;
border-radius:6px;
font-size:13px;
font-weight:600;
text-decoration:none;
color:#fff;
transition:background .2s cubic-bezier(.4,0,.2,1);
padding:8px 14px
}

.part_ficheLien:hover { background:#e0393e }

.part_ficheTitre {
font-size:clamp(20px, 3vw, 28px);
text-transform:uppercase;
color:#1e2042;
margin:0 0 12px
}

.part_ficheSousTitre {
font-size:clamp(18px, 2.5vw, 24px);
text-transform:uppercase;
color:#1e2042;
margin:32px 0 16px
}

.part_offres {
display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:20px
}

.part_offre {
display:flex;
flex-direction:column;
background:#fff;
border:1px solid #e5e7f0;
border-radius:14px;
overflow:hidden
}

.part_offrePhoto img {
display:block;
width:100%;
aspect-ratio:16 / 10;
object-fit:cover
}

.part_offreCorps {
display:flex;
flex-direction:column;
flex:1;
gap:6px;
padding:14px
}

.part_offreCorps h3 {
font-size:17px;
text-transform:uppercase;
margin:0
}

.part_offreCorps h3 a {
text-decoration:none;
color:#1e2042
}

.part_offreCorps h3 a:hover { color:#e0393e }

.part_offreCorps p {
font-size:14px;
color:#4a4c6a;
line-height:1.5;
margin:0
}

.pays_liste {
width:min(1100px, 92%);
margin:20px auto 60px
}

.pays_grille {
display:grid;
grid-template-columns:repeat(4, minmax(0, 1fr));
gap:16px
}

.pays_card {
position:relative;
display:flex;
flex-direction:column;
align-items:center;
gap:6px;
background:#fff;
border-top:4px solid var(--pays-accent);
border-radius:14px;
box-shadow:0 4px 14px rgba(30,32,66,.08);
text-align:center;
text-decoration:none;
transition:transform .2s cubic-bezier(.4,0,.2,1), box-shadow .2s cubic-bezier(.4,0,.2,1);
padding:20px 14px
}

.pays_card:hover {
box-shadow:0 8px 22px rgba(30,32,66,.16);
transform:translateY(-3px)
}

.pays_drapeau {
width:56px;
height:56px;
object-fit:contain
}

.pays_nom {
font-size:18px;
font-weight:700;
text-transform:uppercase;
color:#1e2042
}

.pays_compteur {
font-size:13px;
color:#4a4c6a
}

.pays_lien {
font-size:13px;
font-weight:700;
color:#e0393e;
margin:6px 0 0
}

.pays_ficheHead {
display:flex;
align-items:center;
gap:16px;
margin:0 0 16px
}

.pays_ficheHead img {
width:64px;
height:64px;
object-fit:contain
}

.pays_ficheHead h1 {
font-size:clamp(26px, 4vw, 40px);
text-transform:uppercase;
color:var(--pays-accent);
margin:0
}

.pays_fiche {
width:min(900px, 92%);
margin:20px auto 60px
}

.pays_volet {
background:#fff;
border:1px solid #e5e7f0;
border-radius:12px;
margin:0 0 12px
}

.pays_volet summary {
display:flex;
align-items:center;
justify-content:space-between;
cursor:pointer;
padding:16px 20px
}

.pays_volet summary::after {
content:"+";
font-size:24px;
font-weight:700;
color:var(--pays-accent)
}

.pays_volet[open] summary::after { content:"\2212" }

.pays_volet summary h2 {
font-size:clamp(18px, 2.5vw, 24px);
text-transform:uppercase;
color:var(--pays-accent);
margin:0
}

.pays_voletCorps { padding:0 20px 20px }

.pays_para {
border-bottom:1px solid #eef0f6;
margin:0 0 20px;
padding:0 0 20px
}

.pays_para:last-child {
border-bottom:none;
margin:0;
padding:0
}

.pays_paraPhoto {
display:block;
max-width:100%;
height:auto;
border-radius:10px;
margin:0 0 12px
}

.pays_paraTitre {
display:flex;
align-items:center;
gap:10px;
font-size:18px;
color:var(--para-accent);
margin:0 0 10px
}

.pays_paraPastille {
display:inline-flex;
align-items:center;
justify-content:center;
width:34px;
height:34px;
background:var(--para-accent);
border-radius:50%;
color:#fff;
flex-shrink:0
}

.pays_paraEmbed {
overflow:hidden;
border-radius:10px;
margin:12px 0 0
}

.pays_paraEmbed iframe {
display:block;
width:100%;
border:none
}

.pays_paraBoutonWrap {
text-align:center;
margin:16px 0 0
}

.pays_paraBouton {
display:inline-flex;
align-items:center;
gap:8px;
border-radius:8px;
font-size:14px;
font-weight:700;
text-decoration:none;
color:#fff;
padding:11px 22px
}

.faq_page {
width:min(900px, 100% - 2*var(--gouttiere));
margin:20px auto 60px
}

.faq_sommaire {
display:flex;
flex-wrap:wrap;
gap:8px;
background:#f4f5f9;
border-radius:12px;
margin:0 0 28px;
padding:12px
}

.faq_sommaire a {
background:#fff;
border:1px solid #d7d9e6;
border-radius:20px;
font-size:13px;
font-weight:600;
text-decoration:none;
color:#1e2042;
transition:background .2s cubic-bezier(.4,0,.2,1);
padding:8px 16px
}

.faq_sommaire a:hover {
background:#eeb100;
border-color:#eeb100
}

.faq_categorie {
margin:0 0 32px;
scroll-margin-top:90px
}

.faq_categorie h2 {
font-size:clamp(20px, 3vw, 26px);
text-transform:uppercase;
border-bottom:3px solid #eeb100;
color:#1e2042;
margin:0 0 14px;
padding:0 0 8px
}

.faq_item {
background:#fff;
border:1px solid #e5e7f0;
border-radius:10px;
margin:0 0 10px
}

.faq_item summary {
display:flex;
align-items:center;
justify-content:space-between;
gap:12px;
cursor:pointer;
padding:14px 18px
}

.faq_item summary::after {
content:"+";
font-size:20px;
font-weight:700;
color:#eeb100;
flex-shrink:0
}

.faq_item[open] summary::after { content:"\2212" }

.faq_item summary h3 {
font-size:16px;
font-weight:700;
color:#1e2042;
margin:0
}

.faq_item .info_texte { padding:0 18px 16px }

@media (prefers-reduced-motion:reduce) {

	.pays_card {
	transition:none;
	transform:none
	}

	.pays_card:hover { transform:none }
}

@media screen and (max-width:900px) {

	.pays_grille { grid-template-columns:repeat(3, minmax(0, 1fr)) }

	.part_grille { grid-template-columns:minmax(0, 1fr) }

	.part_offres { grid-template-columns:minmax(0, 1fr) }
}

@media screen and (max-width:640px) {

	.pays_grille { grid-template-columns:repeat(2, minmax(0, 1fr)) }

	.part_ficheHead {
	flex-direction:column;
	text-align:center
	}

	.part_ficheLiens { justify-content:center }

	.part_card { flex-direction:column }

	.part_cardLogo img {
	width:100%;
	height:120px
	}

	.part_btnFiltrer { width:100% }
}

.liste_app {
position:relative;
width:min(1100px, 100% - 2*var(--gouttiere));
margin:20px auto 60px
}

.avisP_grille {
display:grid;
grid-template-columns:repeat(3, minmax(0, 1fr));
gap:22px;
margin:0 0 10px
}

.avisP_card {
display:flex;
flex-direction:column;
min-width:0;
background:#fff;
border-radius:18px;
box-shadow:0 6px 18px rgba(30,32,66,.09);
overflow:hidden;
transition:transform .25s cubic-bezier(.4,0,.2,1), box-shadow .25s cubic-bezier(.4,0,.2,1)
}

.avisP_card:hover {
box-shadow:0 12px 28px rgba(30,32,66,.16);
transform:translateY(-3px)
}

.avisP_photo {
position:relative;
display:block;
aspect-ratio:16 / 7;
overflow:hidden
}

.avisP_photo::after {
position:absolute;
display:block;
content:"";
background:linear-gradient(180deg, rgba(30,32,66,0) 30%, rgba(30,32,66,.85) 100%);
top:0;
right:0;
bottom:0;
left:0
}

.avisP_photo img {
display:block;
width:100%;
height:100%;
object-fit:cover;
transition:transform .5s cubic-bezier(.4,0,.2,1)
}

.avisP_card:hover .avisP_photo img { transform:scale(1.06) }

.avisP_note {
position:absolute;
display:flex;
z-index:2;
align-items:baseline;
gap:2px;
background:#eeb100;
border-radius:10px;
box-shadow:0 4px 12px rgba(0,0,0,.25);
font-size:24px;
font-weight:700;
font-family:'Barlow Condensed', sans-serif;
color:#1e2042;
line-height:1;
top:12px;
right:12px;
padding:8px 10px
}

.avisP_note small {
font-size:12px;
font-weight:600;
opacity:.7
}

.avisP_photoNom {
position:absolute;
display:flex;
z-index:2;
flex-direction:column;
color:#fff;
line-height:1.2;
right:14px;
bottom:12px;
left:14px
}

.avisP_photoNom strong {
overflow:hidden;
font-size:17px;
text-transform:uppercase;
font-family:'Barlow Condensed', sans-serif;
letter-spacing:.3px;
white-space:nowrap;
text-overflow:ellipsis
}

.avisP_photoNom span {
font-size:11px;
opacity:.85
}

.avisP_corps {
display:flex;
flex-direction:column;
flex:1;
gap:8px;
padding:14px 16px 12px
}

.avisP_titre {
font-size:15px;
font-weight:700;
line-height:1.3;
margin:0
}

.avisP_titre a {
text-decoration:none;
color:#1e2042
}

.avisP_titre a:hover { color:#e0393e }

.avisP_extrait {
display:-webkit-box;
overflow:hidden;
font-size:13.5px;
color:#4a4c6a;
line-height:1.55;
-webkit-box-orient:vertical;
-webkit-line-clamp:3;
margin:0
}

.avisP_pied {
display:flex;
align-items:center;
gap:8px;
border-top:1px solid #eef0f6;
margin:auto 0 0;
padding:10px 0 0
}

.avisP_user {
display:flex;
flex:1;
align-items:center;
min-width:0;
gap:8px
}

.avisP_user img,
.avisP_user > :first-child {
width:28px;
height:28px;
border-radius:50%;
flex-shrink:0
}

.avisP_user .avatar_initiale,
.avisP_user span.avatar,
.avisP_user > span:first-child {
display:inline-flex;
align-items:center;
justify-content:center;
width:28px;
height:28px;
overflow:hidden;
font-size:13px;
line-height:1
}

.avisP_userNom {
display:flex;
flex-direction:column;
min-width:0;
font-size:12px;
font-weight:700;
color:#1e2042;
line-height:1.25
}

.avisP_userNom time {
overflow:hidden;
font-size:11px;
font-weight:400;
color:#9a9cb5;
white-space:nowrap;
text-overflow:ellipsis
}

.avisP_votes {
display:inline-flex;
align-items:center;
gap:4px;
font-size:11px;
font-weight:700;
color:#1e8a4c;
flex-shrink:0
}

.avisP_outils {
display:flex;
gap:6px;
flex-shrink:0
}

.avisP_btn {
display:inline-flex;
align-items:center;
justify-content:center;
width:32px;
height:32px;
background:#f4f5f9;
border:none;
border-radius:50%;
font-size:13px;
text-decoration:none;
color:#1e2042;
cursor:pointer;
transition:background .2s cubic-bezier(.4,0,.2,1), color .2s cubic-bezier(.4,0,.2,1)
}

.avisP_btn:hover {
background:#1e2042;
color:#eeb100
}

@media (prefers-reduced-motion:reduce) {

	.avisP_card,
	.avisP_photo img { transition:none }

	.avisP_card:hover {
	box-shadow:0 6px 18px rgba(30,32,66,.09);
	transform:none
	}

	.avisP_card:hover .avisP_photo img { transform:none }
}

.actuP_focus {
width:min(1100px, 92%);
margin:20px auto 0
}

.actuP_focusTitre {
font-size:clamp(20px, 3vw, 26px);
text-transform:uppercase;
color:#e0393e;
margin:0 0 14px
}

.actuP_focusGrille {
display:grid;
grid-template-columns:repeat(3, minmax(0, 1fr));
gap:20px
}

.actuP_grille {
display:grid;
grid-template-columns:repeat(3, minmax(0, 1fr));
gap:20px;
margin:0 0 10px
}

.actuP_card {
display:flex;
flex-direction:column;
min-width:0;
background:#fff;
border-radius:14px;
box-shadow:0 4px 14px rgba(30,32,66,.08);
overflow:hidden
}

.actuP_cardFocus { border-top:4px solid #e0393e }

.actuP_photo {
position:relative;
display:block;
aspect-ratio:16 / 9;
overflow:hidden
}

.actuP_photo img {
display:block;
width:100%;
height:100%;
object-fit:cover
}

.actuP_event {
position:absolute;
border-radius:6px;
font-size:11px;
font-weight:700;
text-transform:uppercase;
color:#fff;
top:10px;
left:10px;
padding:4px 8px
}

.actuP_corps {
display:flex;
flex-direction:column;
flex:1;
gap:6px;
padding:14px
}

.actuP_titre {
font-size:17px;
line-height:1.25;
margin:0
}

.actuP_titre a {
text-decoration:none;
color:#1e2042
}

.actuP_titre a:hover { color:#e0393e }

.actuP_meta {
font-size:12px;
color:#9a9cb5;
margin:0
}

.actuP_resume {
font-size:14px;
color:#33355a;
line-height:1.55;
margin:0
}

.actuP_actions {
display:flex;
flex-wrap:wrap;
gap:8px;
border-top:1px solid #eef0f6;
margin:auto 0 0;
padding:10px 0 0
}

@media screen and (max-width:900px) {

	.avisP_grille { grid-template-columns:repeat(2, minmax(0, 1fr)) }

	.actuP_grille { grid-template-columns:repeat(2, minmax(0, 1fr)) }

	.actuP_focusGrille { grid-template-columns:minmax(0, 1fr) }
}

@media screen and (max-width:560px) {

	.avisP_grille { grid-template-columns:minmax(0, 1fr) }

	.actuP_grille { grid-template-columns:minmax(0, 1fr) }
}

.bug_page {
width:min(680px, 100% - 2*var(--gouttiere));
margin:20px auto 60px
}

.bug_champ { margin:0 0 16px }

.bug_champ label {
display:block;
font-size:14px;
font-weight:700;
color:#1e2042;
margin:0 0 6px
}

.bug_champ input,
.bug_champ select,
.bug_champ textarea {
width:100%;
background:#fff;
border:1px solid #d7d9e6;
border-radius:8px;
font-size:15px;
font-family:inherit;
color:#1e2042;
box-sizing:border-box;
padding:11px 14px
}

.bug_champ textarea { resize:vertical }

.bug_champ input:focus-visible,
.bug_champ select:focus-visible,
.bug_champ textarea:focus-visible {
border-color:#eeb100;
outline:2px solid #eeb100;
outline-offset:1px
}

.bug_aide {
font-size:12px;
color:#9a9cb5;
margin:6px 0 0
}

.bug_retour {
background:#fdecea;
border-radius:8px;
font-size:14px;
font-weight:600;
color:#c0392b;
margin:0 0 16px;
padding:12px 16px
}

.bug_retourOK {
background:#e8f6ee;
color:#1e8a4c
}

.bug_envoyer {
display:inline-flex;
align-items:center;
gap:8px;
background:#1e2042;
border:none;
border-radius:8px;
font-size:15px;
font-weight:700;
text-transform:uppercase;
color:#fff;
cursor:pointer;
transition:background .2s cubic-bezier(.4,0,.2,1);
padding:13px 28px
}

.bug_envoyer:hover { background:#e0393e }

.bug_envoyer:disabled {
opacity:.6;
cursor:wait
}

.legal_page {
width:min(1100px, 100% - 2*var(--gouttiere));
min-height:30vh;
margin:20px auto 60px
}


@keyframes catPulse {
0% { background:#eeb100; transform:translateX(0) }
100% { background:transparent; transform:translateX(0) }
}

.cat_pulse {
display:inline-block;
border-radius:6px;
animation:catPulse 1s cubic-bezier(.4,0,.2,1);
padding:2px 8px
}

.fAvis_hero {
position:relative;
width:min(1000px, 94%);
overflow:hidden;
border-radius:0 0 20px 20px;
margin:0 auto
}

.fAvis_hero::after {
position:absolute;
display:block;
content:"";
background:linear-gradient(180deg, rgba(30,32,66,.25) 0%, rgba(30,32,66,.88) 100%);
top:0;
right:0;
bottom:0;
left:0
}

.fAvis_heroPhoto {
display:block;
width:100%;
aspect-ratio:21 / 8;
object-fit:cover
}

.fAvis_heroContenu {
position:absolute;
display:flex;
z-index:2;
flex-direction:column;
align-items:flex-start;
gap:6px;
color:#fff;
right:24px;
bottom:20px;
left:24px
}

.fAvis_heroContenu .info_retour a { color:#fff }

.fAvis_heroContenu h1 {
font-size:clamp(22px, 3.5vw, 36px);
text-transform:uppercase;
line-height:1.15;
margin:0
}

.fAvis_note {
display:flex;
align-items:baseline;
gap:2px;
background:#eeb100;
border-radius:12px;
box-shadow:0 4px 14px rgba(0,0,0,.3);
font-size:34px;
font-weight:700;
font-family:'Barlow Condensed', sans-serif;
color:#1e2042;
line-height:1;
padding:10px 14px
}

.fAvis_note small {
font-size:14px;
opacity:.7
}

.fAvis_lieu {
font-size:14px;
opacity:.9;
margin:0
}

.fAvis_corps {
width:min(800px, 92%);
margin:24px auto 60px
}

.fAvis_meta {
display:flex;
flex-wrap:wrap;
align-items:center;
gap:14px;
border-bottom:1px solid #eef0f6;
margin:0 0 20px;
padding:0 0 16px
}

.fAvis_meta .avisP_user { flex:1 }

.fAvis_venue {
font-size:13px;
font-weight:600;
color:#4a4c6a
}

.fAvis_bloc {
background:#fff;
border-radius:14px;
box-shadow:0 4px 14px rgba(30,32,66,.08);
margin:0 0 14px;
padding:18px 20px
}

.fAvis_bloc h2 {
display:flex;
align-items:center;
gap:10px;
font-size:18px;
text-transform:uppercase;
color:#1e2042;
margin:0 0 10px
}

.fAvis_bloc p {
color:#33355a;
line-height:1.65;
margin:0
}

.fAvis_criteres {
display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:14px
}

.fAvis_critere {
background:#fff;
border-radius:14px;
box-shadow:0 4px 14px rgba(30,32,66,.08);
padding:16px 18px
}

.fAvis_critere h3 {
display:flex;
flex-wrap:wrap;
align-items:center;
gap:8px;
font-size:15px;
text-transform:uppercase;
color:#1e2042;
margin:0 0 8px
}

.fAvis_critIcone {
display:inline-flex;
align-items:center;
justify-content:center;
width:30px;
height:30px;
background:#1e2042;
border-radius:50%;
font-size:13px;
color:#eeb100;
flex-shrink:0
}

.fAvis_critere p {
font-size:14px;
color:#4a4c6a;
line-height:1.6;
margin:0
}

.fAvis_stadeLien {
text-align:center;
margin:24px 0 0
}

.fActu_page {
width:min(800px, 100% - 2*var(--gouttiere));
margin:24px auto 40px
}

.fActu_head h1 {
font-size:clamp(24px, 4vw, 40px);
text-transform:uppercase;
color:#1e2042;
line-height:1.15;
margin:8px 0
}

.fActu_event {
position:static;
display:inline-block;
margin:8px 0 0
}

.fActu_meta {
display:flex;
flex-wrap:wrap;
align-items:center;
gap:10px;
font-size:13px;
color:#9a9cb5;
margin:0 0 16px
}

.fActu_photo {
display:block;
width:100%;
height:auto;
aspect-ratio:16 / 9;
object-fit:cover;
border-radius:16px;
margin:0 0 18px
}

.fActu_chapo {
font-size:18px;
font-weight:600;
color:#33355a;
line-height:1.6;
margin:0 0 16px
}

.fActu_texte { margin:0 0 20px }

.fActu_source {
border-top:1px solid #eef0f6;
font-size:13px;
color:#9a9cb5;
margin:20px 0 0;
padding:14px 0 0
}

.fActu_liees {
width:min(1100px, 92%);
margin:0 auto 60px
}

.fActu_liees h2 {
font-size:clamp(20px, 3vw, 26px);
text-transform:uppercase;
color:#1e2042;
margin:0 0 16px
}

.fVoy_head {
display:flex;
align-items:center;
gap:10px;
margin:10px 0 6px
}

.fVoy_badge {
display:inline-block;
background:#1e2042;
border-radius:6px;
font-size:12px;
font-weight:700;
text-transform:uppercase;
color:#fff;
padding:5px 10px
}

.fVoy_badgeSouhait { background:#eeb100; color:#1e2042 }

.fVoy_compte {
background:#e0393e;
border-radius:6px;
font-size:12px;
font-weight:700;
color:#fff;
padding:5px 10px
}

.fVoy_meta {
display:flex;
flex-wrap:wrap;
gap:16px;
font-size:14px;
color:#4a4c6a;
margin:8px 0 0
}

.fVoy_corps {
width:min(800px, 92%);
margin:20px auto 60px
}

.fVoy_bloc {
background:#fff;
border-radius:14px;
box-shadow:0 4px 14px rgba(30,32,66,.08);
margin:0 0 14px;
padding:18px 20px
}

.fVoy_bloc h2 {
display:flex;
align-items:center;
gap:10px;
font-size:17px;
text-transform:uppercase;
color:#1e2042;
margin:0 0 10px
}

.fVoy_bloc p {
color:#33355a;
line-height:1.65;
margin:0
}

.fVoy_stade a {
font-size:16px;
font-weight:700;
text-decoration:none;
color:#e0393e
}

.fVoy_jour {
border-left:3px solid #eeb100;
margin:0 0 12px;
padding:2px 0 2px 14px
}

.fVoy_jourNum {
display:block;
font-size:13px;
font-weight:700;
text-transform:uppercase;
color:#eeb100
}

.fVoy_liens {
list-style:none;
margin:0;
padding:0
}

.fVoy_liens li { margin:0 0 6px }

.fVoy_liens a {
overflow-wrap:anywhere;
font-size:14px;
color:#e0393e
}

.fVoy_actions {
text-align:center;
margin:24px 0 32px
}

.vide_bloc {
display:flex;
flex-direction:column;
align-items:center;
gap:12px;
background:var(--blanc);
border-radius:var(--rayon);
box-shadow:var(--ombre);
text-align:center;
margin:24px 0 0;
padding:48px 24px
}

.vide_icone {
font-size:46px;
color:var(--or)
}

.vide_titre {
text-transform:uppercase;
font-size:22px;
font-weight:700;
color:var(--marine);
margin:0
}

.vide_texte {
max-width:560px;
font-size:15px;
color:var(--gris);
line-height:1.65;
margin:0
}

.vide_actions {
display:flex;
flex-wrap:wrap;
justify-content:center;
gap:12px;
margin:8px 0 0
}

.card_visites {
display:flex;
flex-direction:column;
border-top:1px solid var(--ligne);
margin:0;
padding:6px 0 0
}

.card_visite {
display:flex;
align-items:center;
gap:10px;
background:transparent;
text-decoration:none;
color:var(--marine);
transition:background .2s cubic-bezier(.4,0,.2,1);
padding:8px 16px
}

.card_visite:hover { background:#f4f5f9 }

.card_visite + .card_visite { border-top:1px solid #f0f1f6 }

.card_visiteDate {
font-size:12px;
font-weight:700;
color:var(--gris);
white-space:nowrap;
flex-shrink:0
}

.card_visiteMatch {
overflow:hidden;
font-size:13px;
font-weight:600;
text-overflow:ellipsis;
white-space:nowrap
}

.card_visiteFleche {
font-size:11px;
color:#9a9db8;
margin:0 0 0 auto
}

.fVisite_entete {
display:flex;
flex-direction:column;
align-items:center;
gap:14px;
background:var(--blanc);
border-radius:var(--rayon);
box-shadow:var(--ombre);
text-align:center;
margin:20px 0 0;
padding:28px 20px
}

.fVisite_champ {
display:flex;
align-items:center;
gap:8px;
text-transform:uppercase;
font-size:12px;
font-weight:700;
color:var(--or);
letter-spacing:.08em;
margin:0
}

.fVisite_score {
display:grid;
grid-template-columns:1fr auto 1fr;
align-items:center;
gap:18px;
width:100%
}

.fVisite_equipe {
display:flex;
flex-direction:column;
align-items:center;
gap:8px;
font-size:16px;
font-weight:700;
color:var(--marine);
line-height:1.25
}

.fVisite_equipe img {
width:56px;
height:56px;
object-fit:contain
}

.fVisite_chiffres {
font-size:34px;
font-weight:700;
color:var(--marine);
white-space:nowrap
}

.fVisite_photos {
display:flex;
flex-wrap:wrap;
gap:12px;
margin:12px 0 0
}

.fVisite_photos img {
width:200px;
height:150px;
object-fit:cover;
border-radius:10px
}

.fVisite_chips {
display:flex;
flex-wrap:wrap;
gap:8px;
margin:18px 0 0
}

.fVisite_chips:empty { display:none }

.fVisite_chip {
display:inline-flex;
align-items:center;
gap:6px;
background:#f4f5f9;
border:1px solid var(--ligne);
border-radius:20px;
font-size:12.5px;
font-weight:600;
color:#33355a;
padding:6px 12px
}

.fVisite_chip i { color:var(--or) }

.fVisite_actions {
display:flex;
flex-wrap:wrap;
justify-content:center;
gap:12px;
margin:28px 0 0
}

@media screen and (max-width:640px) {

.fVisite_score {
	gap:10px
}

.fVisite_chiffres {
	font-size:26px
}

.fVisite_equipe {
	font-size:14px
}

.fVisite_equipe img {
	width:44px;
	height:44px
}

.fVisite_photos img {
	width:calc(50% - 6px);
	height:110px
}
}

@media screen and (max-width:640px) {

	.fAvis_criteres { grid-template-columns:minmax(0, 1fr) }

	.fAvis_heroPhoto { aspect-ratio:16 / 10 }
}

.fStade_hero {
position:relative;
width:100%;
overflow:hidden
}

.fStade_hero::after {
position:absolute;
display:block;
content:"";
background:linear-gradient(180deg, rgba(30,32,66,.15) 0%, rgba(30,32,66,.55) 55%, rgba(30,32,66,.92) 100%);
top:0;
right:0;
bottom:0;
left:0
}

.fStade_heroPhoto {
display:block;
width:100%;
height:clamp(320px, 45vw, 520px);
object-fit:cover
}

.fStade_heroContenu {
position:absolute;
display:flex;
z-index:2;
flex-direction:column;
gap:6px;
width:min(1100px, 92%);
color:#fff;
bottom:52px;
left:50%;
transform:translateX(-50%)
}

.fStade_heroContenu .info_retour { margin:0 }

.fStade_heroContenu .info_retour a { color:#fff }

.fStade_heroContenu h1 {
font-size:clamp(28px, 5vw, 52px);
text-transform:uppercase;
line-height:1.05;
margin:0
}

.fStade_heroVille {
font-size:15px;
opacity:.9;
margin:0
}

.fStade_heroChips {
display:flex;
flex-wrap:wrap;
gap:8px;
margin:8px 0 0
}

.fStade_chip {
display:inline-flex;
align-items:center;
gap:6px;
background:rgba(255,255,255,.12);
border:1px solid rgba(255,255,255,.22);
border-radius:20px;
font-size:12.5px;
font-weight:600;
text-decoration:none;
color:#fff;
backdrop-filter:blur(8px);
padding:6px 12px
}

.fStade_chipNote {
background:#14152e;
border-color:#14152e;
color:#fff;
flex:0 0 auto
}

.fStade_page .fStade_chip {
background:#f4f5f9;
color:#1e2042
}

.fStade_actions {
position:relative;
display:flex;
z-index:20;
flex-wrap:wrap;
justify-content:center;
gap:8px;
width:max-content;
max-width:94%;
background:#fff;
border-radius:999px;
box-shadow:0 10px 30px rgba(30,32,66,.22);
margin:-32px auto 0;
padding:8px 10px
}

.fStade_actions .fStade_btn { border-radius:999px }

.fStade_btn {
display:inline-flex;
align-items:center;
gap:8px;
background:transparent;
border:1px solid #e5e7f0;
border-radius:999px;
font-size:14px;
font-weight:700;
text-decoration:none;
color:#1e2042;
cursor:pointer;
transition:background .2s cubic-bezier(.4,0,.2,1), border-color .2s cubic-bezier(.4,0,.2,1);
padding:11px 18px
}

.fStade_btn:hover {
background:#f4f5f9;
border-color:#d7d9e6
}

.fStade_btnOr {
background:#eeb100;
border-color:#eeb100
}

.fStade_btnOr:hover { background:#ffc61a }

.fStade_page {
width:min(1000px, 100% - 2*var(--gouttiere));
margin:28px auto 60px
}

.fStade_section,
.fStade_avisResume,
.fStade_clubs .fStade_club { border:1px solid #eceef5 }

.fStade_clubs {
display:flex;
flex-wrap:wrap;
gap:12px;
margin:0 0 20px
}

.fStade_club {
display:inline-flex;
align-items:center;
gap:10px;
background:#fff;
border-radius:12px;
box-shadow:0 4px 14px rgba(30,32,66,.08);
font-size:15px;
color:#1e2042;
padding:8px 16px 8px 8px
}

.fStade_club img {
width:40px;
height:40px;
object-fit:contain
}

.fStade_section {
background:#fff;
border-radius:16px;
box-shadow:0 4px 14px rgba(30,32,66,.08);
margin:0 0 14px
}

.fStade_section > summary {
display:flex;
align-items:center;
justify-content:space-between;
cursor:pointer;
padding:18px 22px
}

.fStade_section > summary::after {
content:"+";
font-size:26px;
font-weight:700;
color:#eeb100
}

.fStade_section[open] > summary::after { content:"\2212" }

.fStade_section > summary h2 {
display:flex;
align-items:center;
gap:12px;
font-size:clamp(17px, 2.5vw, 22px);
text-transform:uppercase;
color:#1e2042;
margin:0
}

.fStade_section > summary h2 i {
display:inline-flex;
align-items:center;
justify-content:center;
width:38px;
height:38px;
background:linear-gradient(135deg, #ffd34d, #eeb100);
border-radius:12px;
font-size:15px;
color:#1e2042;
flex-shrink:0
}

.fStade_sectionCorps {
display:flex;
flex-direction:column;
gap:14px;
padding:0 22px 22px
}

.fStade_sectionOuverte { margin:56px 0 32px }

.fStade_sectionOuverte > h2 {
display:flex;
align-items:center;
gap:12px;
font-size:clamp(18px, 3vw, 24px);
text-transform:uppercase;
color:#1e2042;
margin:0 0 16px
}

.fStade_sectionOuverte > h2 i {
display:inline-flex;
align-items:center;
justify-content:center;
width:38px;
height:38px;
background:linear-gradient(135deg, #ffd34d, #eeb100);
border-radius:12px;
font-size:15px;
color:#1e2042;
flex-shrink:0
}

.fStade_chips {
display:flex;
flex-wrap:wrap;
gap:8px
}

.fStade_chips:empty { display:none }

.fStade_note {
background:#f4f5f9;
border-radius:10px;
font-size:14px;
color:#33355a;
margin:0;
padding:12px 14px
}

.fStade_liens {
display:flex;
flex-wrap:wrap;
gap:10px
}

.fStade_lien {
display:inline-flex;
align-items:center;
gap:8px;
background:#1e2042;
border-radius:8px;
font-size:13px;
font-weight:600;
text-decoration:none;
color:#fff;
transition:background .2s cubic-bezier(.4,0,.2,1);
padding:10px 16px
}

.fStade_lien:hover { background:#e0393e }

.fStade_lienOr {
background:#eeb100;
color:#1e2042
}

.fStade_lienOr:hover {
background:#ffc61a;
color:#1e2042
}

.fStade_billets {
display:grid;
grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));
gap:12px
}

.fStade_billets:empty { display:none }

.fStade_billet {
position:relative;
display:flex;
align-items:center;
gap:14px;
min-height:76px;
background:#fff;
border:2px solid #e5e7f0;
border-radius:14px;
box-shadow:0 2px 10px rgba(30,32,66,.06);
text-decoration:none;
color:#1e2042;
transition:border-color .2s cubic-bezier(.4,0,.2,1), box-shadow .2s cubic-bezier(.4,0,.2,1), transform .2s cubic-bezier(.4,0,.2,1);
padding:14px 16px
}

.fStade_billet:hover {
border-color:#eeb100;
box-shadow:0 12px 28px rgba(30,32,66,.16);
transform:translateY(-2px)
}

.fStade_billetLogo {
display:flex;
align-items:center;
justify-content:center;
width:96px;
height:46px;
flex-shrink:0
}

.fStade_billetLogo img {
width:100%;
height:100%;
object-fit:contain;
object-position:left center
}

.fStade_billetLogoVide {
width:46px;
background:#1e2042;
border-radius:12px;
font-size:19px;
color:#eeb100
}

.fStade_billetTexte {
display:flex;
flex-direction:column;
gap:3px;
min-width:0
}

.fStade_billetTexte strong {
font-size:15px;
font-weight:700;
line-height:1.25
}

.fStade_billetTexte small {
text-transform:uppercase;
font-size:10.5px;
font-weight:600;
color:#6b6f8d;
letter-spacing:.07em;
line-height:1.2
}

.fStade_billetFleche {
font-size:13px;
color:#9a9db8;
margin:0 0 0 auto
}

.fStade_affTexte {
font-size:15px;
color:#33355a;
line-height:1.6;
margin:0
}

.fStade_affWrap { margin:14px 0 0 }

.fStade_affBtn {
display:inline-flex;
align-items:center;
gap:12px;
min-height:58px;
background:#eeb100;
border-radius:12px;
box-shadow:0 6px 18px rgba(238,177,0,.35);
font-size:16px;
font-weight:700;
text-decoration:none;
color:#1e2042;
transition:background .2s cubic-bezier(.4,0,.2,1), box-shadow .2s cubic-bezier(.4,0,.2,1), transform .2s cubic-bezier(.4,0,.2,1);
padding:14px 24px
}

.fStade_affBtn:hover {
background:#ffc61a;
box-shadow:0 12px 30px rgba(238,177,0,.45);
transform:translateY(-2px)
}

.fStade_affLogo {
width:auto;
height:26px;
object-fit:contain
}

.fStade_affMention {
display:flex;
align-items:center;
gap:7px;
font-size:12.5px;
color:#6b6f8d;
line-height:1.4;
margin:10px 0 0
}

.fStade_gyg {
min-height:1px;
overflow:visible
}

@media screen and (max-width:640px) {

.fStade_billets {
	grid-template-columns:1fr
}

.fStade_billet {
	min-height:68px;
	gap:12px;
	padding:12px 14px
}

.fStade_billetLogo {
	width:76px;
	height:40px
}

.fStade_affBtn {
	justify-content:center;
	width:100%
}
}

#fStade_map {
position:relative;
z-index:1;
width:100%;
height:340px;
overflow:hidden;
background:#e8eaf2;
border-radius:14px;
isolation:isolate
}

.fStade_itineraire { margin:0 }

.fStade_sousTitre {
font-size:16px;
text-transform:uppercase;
color:#1e2042;
margin:6px 0 0
}

.fStade_galerie {
display:flex;
gap:12px;
overflow-x:auto;
scroll-snap-type:x mandatory;
padding:4px 4px 12px
}

.fStade_galeriePhoto {
background:none;
border:none;
border-radius:12px;
overflow:hidden;
cursor:zoom-in;
scroll-snap-align:start;
flex-shrink:0;
padding:0
}

.fStade_galeriePhoto img {
display:block;
width:280px;
height:180px;
object-fit:cover;
transition:transform .3s cubic-bezier(.4,0,.2,1)
}

.fStade_galeriePhoto:hover img { transform:scale(1.05) }

.fStade_credits {
font-size:12px;
color:#9a9cb5;
margin:4px 0 0
}

.fStade_spotify {
display:block;
border:none;
border-radius:14px
}

.fStade_avisResume {
display:flex;
flex-wrap:wrap;
align-items:center;
gap:24px;
background:#fff;
border-radius:16px;
box-shadow:0 4px 14px rgba(30,32,66,.08);
margin:0 0 20px;
padding:20px 24px
}

.fStade_avisNote {
display:flex;
flex-direction:column;
align-items:center;
background:#eeb100;
border-radius:16px;
color:#1e2042;
flex-shrink:0;
padding:16px 22px
}

.fStade_avisNote span {
font-size:44px;
font-weight:700;
font-family:'Barlow Condensed', sans-serif;
line-height:1
}

.fStade_avisNote small {
font-size:12px;
font-weight:600
}

.fStade_avisBarres {
display:flex;
flex-direction:column;
flex:1;
gap:8px;
min-width:240px
}

.fStade_avisBarre {
display:flex;
align-items:center;
gap:10px;
font-size:13px;
color:#4a4c6a
}

.fStade_avisBarre > span:first-child {
width:100px;
flex-shrink:0
}

.fStade_avisBarre strong {
width:30px;
text-align:right;
color:#1e2042;
flex-shrink:0
}

.fStade_barre {
display:block;
flex:1;
height:8px;
background:#eef0f6;
border-radius:4px;
overflow:hidden
}

.fStade_barre span {
display:block;
height:100%;
background:#eeb100;
border-radius:4px
}

.fStade_avisActions {
display:flex;
flex-wrap:wrap;
align-items:stretch;
gap:16px;
margin:20px 0 0
}

.fStade_avisActions .info_videCTA,
.fStade_avisActions .fStade_lien {
display:inline-flex;
align-items:center;
font-size:14px;
margin:0;
padding:12px 22px
}

.fStade_guidePays {
display:flex;
align-items:center;
gap:16px;
background:#1e2042;
border-radius:16px;
color:#fff;
margin:56px 0;
padding:20px 24px
}

.fStade_guidePays h2 {
font-size:16px;
text-transform:uppercase;
margin:0 0 4px
}

.fStade_guidePays a {
font-size:15px;
font-weight:700;
color:#eeb100
}

.fStade_lightbox {
background:transparent;
border:none;
max-width:94vw;
max-height:92vh;
padding:0
}

.fStade_lightbox::backdrop { background:rgba(20,21,44,.92) }

.fStade_lightbox img {
display:block;
max-width:94vw;
max-height:88vh;
border-radius:12px
}

.fStade_lightboxFermer {
position:absolute;
display:flex;
z-index:2;
align-items:center;
justify-content:center;
width:40px;
height:40px;
background:#fff;
border:none;
border-radius:50%;
font-size:18px;
color:#1e2042;
cursor:pointer;
top:10px;
right:10px
}

@media screen and (max-width:640px) {

	.fStade_actions {
	display:grid;
	grid-template-columns:repeat(2, minmax(0, 1fr));
	width:92%;
	border-radius:20px;
	margin:-28px auto 0;
	padding:10px
	}

	.fStade_btn {
	justify-content:center;
	font-size:13px;
	padding:11px 8px
	}

	.fStade_page { margin:20px auto 60px }

	.fStade_avisResume { justify-content:center }

	.fStade_chipNote .avis_etoiles { display:none }

	.fStade_nav {
	gap:4px;
	padding:7px 16px
	}

	.fStade_nav a {
	font-size:12px;
	padding:7px 11px
	}
}


.fStade_parkings {
display:flex;
flex-wrap:wrap;
gap:14px
}

.fStade_parking {
display:flex;
flex:1 1 240px;
align-items:center;
gap:14px;
background:#f4f5f9;
border:2px solid transparent;
border-radius:14px;
text-decoration:none;
transition:border-color .2s cubic-bezier(.4,0,.2,1), background .2s cubic-bezier(.4,0,.2,1);
padding:14px 16px
}

.fStade_parking:hover {
background:#fff;
border-color:#eeb100
}

.fStade_parking img {
width:52px;
height:52px;
object-fit:contain;
flex-shrink:0
}

.fStade_parking span {
display:flex;
flex-direction:column;
gap:2px
}

.fStade_parking strong {
font-size:15px;
text-transform:uppercase;
color:#1e2042
}

.fStade_parking small {
font-size:12px;
color:#1e8a4c;
font-weight:700
}

.fStade_kicker {
display:inline-flex;
align-items:center;
gap:10px;
font-size:13px;
font-weight:700;
text-transform:uppercase;
color:#eeb100;
letter-spacing:3px;
margin:0
}

.fStade_kicker::before {
display:block;
content:"";
width:34px;
height:3px;
background:#eeb100;
border-radius:2px
}

.fStade_tagline {
max-width:640px;
font-size:clamp(14px, 2vw, 17px);
font-weight:600;
color:rgba(255,255,255,.92);
line-height:1.45;
margin:2px 0 0
}

.fStade_chipNote .avis_etoiles { font-size:13px }

.fStade_layout {
display:grid;
grid-template-columns:minmax(0, 1fr);
width:100%
}

.fStade_nav { display:none }

.fStade_nav::-webkit-scrollbar { display:none }

.fStade_nav a {
display:inline-flex;
align-items:center;
gap:7px;
border-radius:20px;
font-size:13px;
font-weight:600;
text-decoration:none;
color:rgba(255,255,255,.75);
white-space:nowrap;
transition:background .2s cubic-bezier(.4,0,.2,1), color .2s cubic-bezier(.4,0,.2,1);
flex-shrink:0;
padding:8px 14px
}

.fStade_nav a i { color:#eeb100 }

.fStade_nav a:hover {
background:rgba(255,255,255,.1);
color:#fff
}

.fStade_nav a.fStade_navActif {
background:#eeb100;
color:#1e2042
}

.fStade_nav a.fStade_navActif i { color:#1e2042 }

.fStade_section,
.fStade_sectionOuverte,
#fStade_avis { scroll-margin-top:calc(var(--fStadeNavTop, 0px) + 20px) }

@media screen and (max-width:640px) {


	.fStade_section,
	.fStade_sectionOuverte,
	#fStade_avis { scroll-margin-top:66px }
}

@media screen and (min-width:1024px) {

	.fStade_layout {
	grid-template-columns:minmax(0, 1fr) 230px;
	align-items:start;
	gap:24px;
	width:min(1280px, 94%);
	margin:0 auto
	}

	.fStade_nav {
	position:sticky;
	display:flex;
	flex-direction:column;
	order:2;
	gap:2px;
	width:auto;
	overflow:visible;
	background:#fff;
	border:1px solid #eceef5;
	border-radius:16px;
	box-shadow:0 4px 14px rgba(30,32,66,.08);
	top:calc(var(--fStadeNavTop, 0px) + 20px);
	margin:28px 0 0;
	padding:10px
	}

	.fStade_nav a {
	color:#4a4c6a;
	white-space:normal;
	border-radius:10px;
	padding:10px 12px
	}

	.fStade_nav a:hover {
	background:#f4f5f9;
	color:#1e2042
	}

	.fStade_nav a.fStade_navActif {
	background:#eeb100;
	color:#1e2042
	}

	.fStade_nav a.fStade_navActif i { color:#1e2042 }

	.fStade_page {
	width:100%;
	order:1;
	margin:28px 0 60px
	}
}

@media screen and (min-width:900px) {

	.fStade_galerie {
	display:grid;
	grid-template-columns:repeat(3, minmax(0, 1fr));
	gap:14px;
	overflow:visible;
	padding:0
	}

	.fStade_galeriePhoto img {
	width:100%;
	height:200px
	}
}
#infog_outils {
display:flex;
align-items:center;
gap:12px;
margin:0 0 24px
}

#infog_outils select {
background:#fff;
border:1px solid #d7d9e6;
border-radius:8px;
font-size:15px;
color:#1e2042;
padding:10px 14px
}

#infog_scene {
display:flex;
justify-content:center;
margin:0 0 24px
}

#monInfographie {
position:relative;
display:flex;
flex-direction:column;
gap:18px;
width:100%;
max-width:440px;
overflow:hidden;
background:linear-gradient(160deg, #14152e 0%, #23264d 55%, #2c2f5e 100%);
border-radius:22px;
box-shadow:0 20px 50px rgba(20,21,44,.4);
padding:26px 24px 22px
}

.mi_bruit {
position:absolute;
z-index:0;
top:0;
right:0;
bottom:0;
left:0;
background-image:radial-gradient(circle at 88% 8%, rgba(238,177,0,.18), transparent 42%), radial-gradient(circle at 12% 92%, rgba(224,57,62,.16), transparent 42%);
pointer-events:none
}

#monInfographie > * {
position:relative;
z-index:1
}

.mi_tete {
display:flex;
align-items:center;
gap:14px
}

.mi_avatar {
display:block;
width:64px;
height:64px;
background-color:#2c2f5e;
background-position:center;
background-size:cover;
border:3px solid #eeb100;
border-radius:50%;
flex-shrink:0
}

.mi_teteTexte {
flex:1;
min-width:0
}

.mi_periode {
font-size:30px;
font-weight:800;
font-family:'Barlow Condensed', sans-serif;
color:#eeb100;
line-height:1;
margin:0
}

.mi_pseudo {
overflow:hidden;
font-size:16px;
font-weight:700;
text-transform:uppercase;
color:#fff;
white-space:nowrap;
text-overflow:ellipsis;
margin:4px 0 0
}

.mi_teteLogo {
display:flex;
align-items:center;
justify-content:center;
width:44px;
height:44px;
background:rgba(255,255,255,.08);
border-radius:12px;
font-size:20px;
color:#eeb100;
flex-shrink:0
}

.mi_stats {
display:grid;
grid-template-columns:repeat(3, minmax(0, 1fr));
gap:10px
}

.mi_stat {
background:rgba(255,255,255,.06);
border-radius:14px;
text-align:center;
padding:14px 8px
}

.mi_statLabel {
font-size:13px;
font-weight:700;
text-transform:uppercase;
color:rgba(255,255,255,.8);
letter-spacing:.5px;
margin:0
}

.mi_statValeur {
font-size:40px;
font-weight:800;
font-family:'Barlow Condensed', sans-serif;
color:#eeb100;
line-height:1;
margin:4px 0 0
}

.mi_bloc {
background:rgba(255,255,255,.05);
border-radius:16px;
padding:18px 20px
}

.mi_grand {
font-size:38px;
font-weight:800;
font-family:'Barlow Condensed', sans-serif;
color:#eeb100;
line-height:1;
margin:0 0 6px
}

.mi_ligne {
font-size:16px;
font-weight:600;
color:#fff;
line-height:1.4;
margin:2px 0 0
}

.mi_or { color:#eeb100 }

.mi_maison {
display:flex;
align-items:stretch;
gap:0;
background:rgba(255,255,255,.05);
border-radius:16px;
overflow:hidden
}

.mi_maisonPhoto {
display:block;
width:120px;
background-color:#2c2f5e;
background-position:center;
background-size:cover;
flex-shrink:0
}

.mi_maisonTexte {
flex:1;
min-width:0;
padding:18px 20px
}

.mi_maisonTitre {
font-size:30px;
font-weight:800;
font-family:'Barlow Condensed', sans-serif;
text-transform:uppercase;
color:#eeb100;
line-height:1;
margin:0 0 8px
}

.mi_pied {
display:flex;
align-items:center;
justify-content:space-between;
border-top:1px solid rgba(255,255,255,.12);
margin:4px 0 0;
padding:14px 0 0
}

.mi_piedLogo {
display:block;
height:32px;
width:auto
}

.mi_piedSite {
font-size:13px;
color:rgba(255,255,255,.6)
}

@media screen and (max-width:480px) {

	.mi_maison { flex-direction:column }

	.mi_maisonPhoto {
	width:100%;
	height:120px
	}
}

.prem_hero {
position:relative;
display:flex;
align-items:center;
justify-content:center;
overflow:hidden;
background:linear-gradient(150deg, #14152e 0%, #23264d 60%, #2c2f5e 100%);
text-align:center;
padding:64px 20px 72px
}

.prem_heroFond {
position:absolute;
top:0;
right:0;
bottom:0;
left:0;
background-image:radial-gradient(circle at 80% 12%, rgba(238,177,0,.22), transparent 45%), radial-gradient(circle at 15% 88%, rgba(224,57,62,.18), transparent 45%);
pointer-events:none
}

.prem_heroContenu {
position:relative;
z-index:1;
max-width:640px
}

.prem_couronne {
display:inline-flex;
align-items:center;
justify-content:center;
width:76px;
height:76px;
background:linear-gradient(135deg, #ffd34d, #eeb100);
border-radius:22px;
box-shadow:0 12px 30px rgba(238,177,0,.4);
font-size:34px;
color:#1e2042;
margin:0 0 20px
}

.prem_titre {
font-size:clamp(32px, 6vw, 56px);
text-transform:uppercase;
color:#fff;
line-height:1.05;
margin:0
}

.prem_sousTitre {
font-size:clamp(15px, 2.2vw, 19px);
color:rgba(255,255,255,.85);
line-height:1.5;
margin:16px 0 28px
}

.prem_btnHero {
display:inline-flex;
align-items:center;
gap:10px;
background:linear-gradient(135deg, #ffd34d, #eeb100);
border-radius:999px;
box-shadow:0 10px 26px rgba(238,177,0,.36);
font-size:17px;
font-weight:700;
text-transform:uppercase;
text-decoration:none;
color:#1e2042;
transition:transform .2s cubic-bezier(.4,0,.2,1), box-shadow .2s cubic-bezier(.4,0,.2,1);
padding:15px 32px
}

.prem_btnHero:hover {
box-shadow:0 14px 32px rgba(238,177,0,.5);
transform:translateY(-2px)
}

.prem_heroBoutons {
display:flex;
flex-wrap:wrap;
align-items:stretch;
justify-content:center;
gap:16px;
margin:8px 0 0
}

.prem_dejaBadge {
display:inline-flex;
align-items:center;
gap:8px;
background:rgba(46,204,113,.16);
border:1px solid rgba(46,204,113,.5);
border-radius:999px;
font-size:16px;
font-weight:700;
color:#5ee0a0;
margin:0;
padding:15px 28px
}

.prem_avantages { text-align:center }

.section_titre.center,
.section_intro.center { text-align:center }

.prem_grille {
display:grid;
grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
gap:18px;
margin:28px 0 0;
text-align:left
}

.prem_carte {
background:#fff;
border:1px solid #eceef5;
border-radius:18px;
box-shadow:0 6px 18px rgba(30,32,66,.07);
transition:transform .2s cubic-bezier(.4,0,.2,1), box-shadow .2s cubic-bezier(.4,0,.2,1);
padding:24px
}

.prem_carte:hover {
box-shadow:0 14px 30px rgba(30,32,66,.14);
transform:translateY(-3px)
}

.prem_carteIcone {
display:inline-flex;
align-items:center;
justify-content:center;
width:52px;
height:52px;
background:linear-gradient(135deg, #ffd34d, #eeb100);
border-radius:14px;
font-size:22px;
color:#1e2042;
margin:0 0 16px
}

.prem_carteTitre {
font-size:19px;
text-transform:uppercase;
color:#1e2042;
margin:0 0 8px
}

.prem_carteTexte {
font-size:15px;
color:#4a4c6a;
line-height:1.6;
margin:0
}

.prem_plans {
display:grid;
grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));
gap:20px;
max-width:720px;
margin:28px auto 0
}

.prem_plan {
position:relative;
display:flex;
flex-direction:column;
align-items:center;
background:#fff;
border:2px solid #eceef5;
border-radius:20px;
text-align:center;
padding:32px 26px
}

.prem_planVedette {
border-color:#eeb100;
box-shadow:0 16px 40px rgba(238,177,0,.22)
}

.prem_planRuban {
position:absolute;
background:#eeb100;
border-radius:999px;
font-size:13px;
font-weight:700;
text-transform:uppercase;
color:#1e2042;
top:-14px;
padding:6px 16px
}

.prem_planNom {
font-size:15px;
font-weight:700;
text-transform:uppercase;
color:#9a9cb5;
letter-spacing:1px;
margin:0
}

.prem_planPrix {
display:flex;
align-items:baseline;
justify-content:center;
gap:4px;
color:#1e2042;
margin:12px 0 4px
}

.prem_planPrix strong {
font-size:52px;
font-weight:800;
font-family:'Barlow Condensed', sans-serif;
line-height:1
}

.prem_planPrix span {
font-size:17px;
font-weight:600;
color:#4a4c6a
}

.prem_planNote {
font-size:13px;
color:#9a9cb5;
margin:0 0 22px
}

.prem_planBtn {
display:inline-block;
width:100%;
background:linear-gradient(135deg, #ffd34d, #eeb100);
border-radius:12px;
font-size:16px;
font-weight:700;
text-transform:uppercase;
text-decoration:none;
color:#1e2042;
transition:transform .2s cubic-bezier(.4,0,.2,1);
padding:14px 20px
}

.prem_planBtn:hover { transform:translateY(-2px) }

.prem_planBtnGhost {
background:#f4f5f9;
color:#1e2042
}

.prem_reassurance {
display:flex;
align-items:center;
justify-content:center;
gap:8px;
font-size:14px;
color:#9a9cb5;
margin:24px 0 0
}

.prem_reassurance i { color:#2ecc71 }

.prem_tableWrap {
overflow-x:auto;
margin:28px 0 0
}

.prem_table {
width:100%;
min-width:480px;
border-collapse:collapse;
background:#fff;
border-radius:16px;
overflow:hidden;
box-shadow:0 6px 18px rgba(30,32,66,.07)
}

.prem_table th,
.prem_table td {
border-bottom:1px solid #eef0f6;
text-align:center;
padding:15px 18px
}

.prem_table thead th {
background:#1e2042;
font-size:14px;
text-transform:uppercase;
color:#fff
}

.prem_table .prem_tableFort { background:#eeb100; color:#1e2042 }

.prem_table tbody th {
font-size:15px;
font-weight:600;
text-align:left;
color:#1e2042
}

.prem_oui { color:#2ecc71; font-size:18px }

.prem_non { color:#d7d9e6; font-size:18px }

.prem_ctaFinal {
background:linear-gradient(135deg, #1e2042, #2c2f5e);
border-radius:20px;
text-align:center;
color:#fff;
margin:32px 0 0;
padding:36px 24px
}

.prem_ctaFinal p {
font-size:clamp(18px, 3vw, 24px);
font-weight:700;
text-transform:uppercase;
margin:0 0 20px
}

.prem_ctaFinal .prem_planBtn { width:auto; padding:15px 40px }

.prem_faqListe {
max-width:760px;
margin:28px auto 0
}

.prem_faqItem {
background:#fff;
border:1px solid #eceef5;
border-radius:14px;
margin:0 0 12px;
padding:0 20px
}

.prem_faqItem summary {
display:flex;
align-items:center;
justify-content:space-between;
font-size:16px;
font-weight:700;
color:#1e2042;
cursor:pointer;
padding:18px 0
}

.prem_faqItem summary::after {
content:"+";
font-size:24px;
color:#eeb100
}

.prem_faqItem[open] summary::after { content:"\2212" }

.prem_faqItem p {
font-size:15px;
color:#4a4c6a;
line-height:1.6;
margin:0;
padding:0 0 18px
}

.prem_gestion { max-width:600px; margin-left:auto; margin-right:auto }

.prem_gestionCarte {
background:#fff;
border:1px solid #eceef5;
border-radius:20px;
box-shadow:0 8px 24px rgba(30,32,66,.1);
padding:28px
}

.prem_gestionTitre {
display:flex;
align-items:center;
gap:10px;
font-size:22px;
text-transform:uppercase;
color:#1e2042;
margin:0 0 20px
}

.prem_gestionTitre i { color:#eeb100 }

.prem_gestionInfos {
display:flex;
flex-direction:column;
gap:2px;
margin:0 0 22px
}

.prem_gestionLigne {
display:flex;
align-items:center;
justify-content:space-between;
gap:14px;
border-bottom:1px solid #eef0f6;
padding:12px 0
}

.prem_gestionLigne:last-child { border-bottom:none }

.prem_gestionLabel {
font-size:14px;
color:#9a9cb5
}

.prem_gestionValeur {
font-size:15px;
font-weight:700;
text-align:right;
color:#1e2042
}

.prem_gestionActions {
display:flex;
flex-wrap:wrap;
gap:12px
}

.prem_gestionBtn {
display:inline-flex;
flex:1;
align-items:center;
justify-content:center;
gap:8px;
min-width:180px;
background:#1e2042;
border-radius:10px;
font-size:14px;
font-weight:700;
text-decoration:none;
color:#fff;
transition:background .2s cubic-bezier(.4,0,.2,1);
padding:13px 18px
}

.prem_gestionBtn:hover { background:#2c2f5e }

.prem_gestionBtnDanger { background:#e0393e }

.prem_gestionBtnDanger:hover { background:#c62f34 }

.prem_gestionResilieNote {
width:100%;
background:#fff5f5;
border-radius:10px;
font-size:14px;
color:#e0393e;
margin:0 0 4px;
padding:12px 14px
}

.prem_gestionStripe {
display:flex;
align-items:center;
gap:8px;
font-size:13px;
color:#9a9cb5;
margin:18px 0 0
}

.prem_gestionStripe i { color:#2ecc71 }

.event_hero {
position:relative;
display:grid;
align-items:center;
justify-items:center;
min-height:320px;
overflow:hidden;
background:linear-gradient(135deg, var(--eventCouleur, #1e2042) 0%, #14152e 100%)
}

.event_heroFond {
position:absolute;
width:100%;
height:100%;
object-fit:cover;
opacity:.35;
top:0;
left:0
}

.event_heroContenu {
position:relative;
z-index:2;
width:min(860px, 92%);
text-align:center;
padding:clamp(30px, 5vw, 50px) 0
}

.event_heroLogo {
width:clamp(110px, 16vw, 170px);
height:auto;
filter:drop-shadow(0 6px 20px rgba(20,21,46,.5));
margin:0 0 14px
}

.event_heroTitre {
text-transform:uppercase;
font-size:clamp(30px, 5.5vw, 54px);
font-weight:700;
color:#fff;
line-height:1.05;
text-shadow:0 3px 20px rgba(20,21,46,.6);
margin:0 0 8px
}

.event_heroSousTitre {
font-size:clamp(15px, 2.2vw, 19px);
color:rgba(255,255,255,.9);
text-shadow:0 2px 12px rgba(20,21,46,.6);
margin:0 0 14px
}

.event_heroDates {
display:flex;
flex-wrap:wrap;
justify-content:center;
gap:8px 20px;
text-transform:uppercase;
font-family:var(--fonteTitre);
font-size:14px;
font-weight:600;
letter-spacing:.06em;
color:#eeb100;
margin:0
}

.event_heroDates span {
display:inline-flex;
align-items:center;
gap:8px
}

.event_volet {
background:#fff;
border:1px solid #e5e7f0;
border-radius:12px;
margin:0 0 10px
}

.event_voletTitre {
display:flex;
align-items:center;
justify-content:space-between;
gap:12px;
text-transform:uppercase;
font-family:'Barlow Condensed', sans-serif;
font-size:18px;
font-weight:700;
color:#1e2042;
cursor:pointer;
padding:15px 18px
}

.event_voletTitre::-webkit-details-marker { display:none }

.event_voletTitre i {
font-size:13px;
color:#9a9cb5;
transition:transform .2s cubic-bezier(.4,0,.2,1)
}

.event_volet[open] > .event_voletTitre i { transform:rotate(180deg) }

.event_voletCorps { padding:0 18px 16px }

.event_para {
border-top:1px solid #eef0f6;
margin:14px 0 0;
padding:14px 0 0
}

.event_para:first-child {
border-top:none;
margin:0;
padding:0
}

.event_paraPhoto {
display:block;
max-width:100%;
border-radius:10px;
margin:0 0 12px
}

.event_paraTitre {
display:flex;
align-items:center;
gap:11px;
font-size:18px;
text-transform:uppercase;
color:#1e2042;
margin:0 0 8px
}

.event_paraPicto {
display:inline-flex;
align-items:center;
justify-content:center;
width:34px;
height:34px;
background:#1e2042;
border-radius:50%;
font-size:14px;
color:#fff;
flex-shrink:0
}

.event_paraTexte {
font-size:15px;
color:#33355a;
line-height:1.65
}

.event_paraTexte img { border-radius:10px }

.event_paraEmbed { margin:12px 0 0 }

.event_paraEmbed iframe {
width:100%;
border:none;
border-radius:10px
}

.event_paraBoutonWrap {
text-align:center;
margin:14px 0 0
}

.event_paraBouton {
display:inline-flex;
align-items:center;
gap:9px;
background:#1e2042;
border-radius:999px;
font-size:14px;
font-weight:700;
text-transform:uppercase;
text-decoration:none;
color:#fff;
transition:transform .2s cubic-bezier(.4,0,.2,1), box-shadow .2s cubic-bezier(.4,0,.2,1);
padding:11px 24px
}

.event_paraBouton:hover {
box-shadow:0 8px 20px rgba(30,32,66,.25);
transform:translateY(-2px)
}

.event_actusGrille {
display:grid;
grid-template-columns:repeat(3, minmax(0, 1fr));
gap:18px
}

.event_tags {
display:flex;
flex-wrap:wrap;
gap:8px;
margin:14px 0 18px
}

.event_tag {
background:#fff;
border:2px solid #d7d9e6;
border-radius:100px;
text-transform:uppercase;
font-family:'Barlow Condensed', sans-serif;
font-size:13px;
font-weight:600;
color:#4a4c6a;
cursor:pointer;
transition:border-color .2s cubic-bezier(.4,0,.2,1), background .2s cubic-bezier(.4,0,.2,1), color .2s cubic-bezier(.4,0,.2,1);
padding:8px 16px
}

.event_tag:hover { border-color:#eeb100 }

.event_tag.actif {
background:#1e2042;
border-color:#1e2042;
color:#fff
}

#event_map {
position:relative;
z-index:1;
width:100%;
height:70vh;
min-height:420px;
overflow:hidden;
background:#e8eaf2;
border-radius:14px;
isolation:isolate
}

@media (max-width:900px) {

	.event_actusGrille { grid-template-columns:repeat(2, minmax(0, 1fr)) }
}

@media (max-width:600px) {

	.event_actusGrille { grid-template-columns:1fr }

	#event_map {
	height:calc(100dvh - 220px);
	min-height:360px
	}
}

.voy_fichiers,
.voy_journees {
width:100%;
border:1px solid #dfe3ea;
border-radius:12px;
margin:0 0 22px;
padding:18px
}

.voy_fichiers legend,
.voy_journees legend {
font-size:15px;
font-weight:700;
color:#0d1b3e;
padding:0 8px
}

.voy_fichCategorie { margin:0 0 16px }

.voy_fichCategorie:last-of-type { margin:0 }

.voy_fichLabel {
display:flex;
align-items:center;
gap:8px;
font-size:14px;
font-weight:600;
color:#0d1b3e;
margin:0 0 8px
}

.voy_fichLigne {
display:flex;
align-items:center;
flex-wrap:wrap;
gap:10px;
margin:0 0 8px
}

.voy_fichLigne input[type="file"] { display:none }

.voy_fichAjout span,
.voy_fichRemplacer span {
display:inline-flex;
align-items:center;
gap:6px;
background:#f4f6fa;
border:1px dashed #b9c2d4;
border-radius:8px;
font-size:13px;
color:#3c4a6b;
cursor:pointer;
padding:8px 14px
}

.voy_fichAjout span:hover,
.voy_fichRemplacer span:hover { border-color:#0d1b3e }

.voy_fichVoir {
display:inline-flex;
align-items:center;
gap:6px;
overflow:hidden;
font-size:13px;
color:#0d1b3e;
white-space:nowrap
}

.voy_fichVoir span {
max-width:220px;
overflow:hidden;
text-decoration:underline;
text-overflow:ellipsis
}

.voy_fichSuppr {
display:inline-flex;
align-items:center;
justify-content:center;
width:32px;
height:32px;
background:none;
border:1px solid #e4b6b6;
border-radius:8px;
color:#b12a2a;
cursor:pointer
}

.voy_fichSuppr:hover { background:#fbeaea }

.voy_fichPlus,
#voy_ajouterJournee {
display:inline-flex;
align-items:center;
gap:8px;
background:none;
border:none;
font-size:13px;
font-weight:600;
color:#155ab6;
cursor:pointer;
padding:4px 0
}

.voy_journee {
background:#f8f9fc;
border:1px solid #e3e7ef;
border-radius:10px;
margin:0 0 14px;
padding:14px
}

.voy_journeeTete {
display:flex;
align-items:center;
justify-content:space-between;
margin:0 0 10px
}

.voy_journeeTitre {
font-size:14px;
font-weight:700;
color:#0d1b3e;
margin:0
}

.voy_journeeSuppr {
display:inline-flex;
align-items:center;
justify-content:center;
width:30px;
height:30px;
background:none;
border:none;
color:#b12a2a;
cursor:pointer
}

.voy_journeeStade {
display:flex;
align-items:center;
gap:10px;
margin:0 0 10px
}

.voy_journeeStade input[type="text"] { flex:1 }

.voy_couvBtn {
display:inline-flex;
align-items:center;
gap:6px;
background:none;
border:1px solid #b9c2d4;
border-radius:8px;
font-size:12px;
color:#3c4a6b;
cursor:pointer;
flex-shrink:0;
padding:6px 10px
}

.voy_couvBtn.estActif {
background:#0d1b3e;
border-color:#0d1b3e;
color:#fff
}

.voy_journee textarea {
width:100%;
box-sizing:border-box
}

.fVoy_jourStades {
display:flex;
align-items:center;
flex-wrap:wrap;
gap:12px;
margin:6px 0 8px
}

.fVoy_jourStade {
display:inline-flex;
align-items:center;
gap:6px;
font-size:13px;
font-weight:600;
color:#155ab6
}

.fVoy_fichCategorie {
display:flex;
align-items:center;
gap:8px;
font-size:14px;
font-weight:600;
color:#0d1b3e;
margin:12px 0 6px
}

.fVoy_fichListe {
display:flex;
flex-direction:column;
gap:6px;
margin:0;
padding:0 0 0 4px
}

.fVoy_fichListe li { list-style:none }

.fVoy_fichListe a {
display:inline-flex;
align-items:center;
gap:8px;
font-size:13px;
color:#155ab6
}

.avisF_critere {
width:100%;
border:1px solid #e3e7ef;
border-radius:10px;
margin:0 0 14px;
padding:14px
}

.avisF_critereTitre {
display:flex;
align-items:center;
gap:8px;
font-size:14px;
font-weight:700;
color:#0d1b3e;
margin:0 0 8px
}

.avisF_etoiles {
display:flex;
align-items:center;
gap:4px;
margin:0 0 10px
}

.avisF_etoile {
background:none;
border:none;
font-size:22px;
color:#e8a80c;
cursor:pointer;
padding:2px
}

.avisF_critere textarea {
width:100%;
box-sizing:border-box
}

.fAvis_photos {
display:flex;
flex-wrap:wrap;
gap:10px
}

.fAvis_photos img {
width:220px;
height:165px;
object-fit:cover;
border-radius:10px
}

.info_liste {
width:min(1200px, 92%);
margin:0 auto 60px
}

.voy_journee textarea,
.avisF_critere textarea {
background:var(--papier);
border:2px solid var(--ligne);
border-radius:var(--rayonPetit);
font-family:var(--fonteTexte);
font-size:15px;
color:var(--encre);
transition:border-color var(--transition), background var(--transition);
padding:12px 14px
}

.voy_journee textarea:focus,
.avisF_critere textarea:focus {
outline:none;
background:var(--blanc);
border-color:var(--or)
}

.voy_journee input[type="text"] {
background:var(--papier);
border:2px solid var(--ligne);
border-radius:var(--rayonPetit);
font-family:var(--fonteTexte);
font-size:15px;
color:var(--encre);
padding:10px 14px
}

.voy_journee input[type="text"]:focus {
outline:none;
background:var(--blanc);
border-color:var(--or)
}

.souhait_ajout {
display:flex;
align-items:center;
flex-wrap:wrap;
gap:10px;
margin:0 0 18px
}

.souhait_champ {
flex:1;
min-width:240px
}

.souhait_champ input[type="text"] { width:100% }

.calendrier_filtres {
display:flex;
flex-wrap:wrap;
gap:8px;
margin:0 0 14px
}

.calendrier_filtre {
background:var(--papier);
border:2px solid var(--ligne);
border-radius:999px;
font-size:13px;
font-weight:600;
color:var(--encre);
padding:7px 16px
}

.calendrier_filtre.estActif {
background:var(--marine, #0d1b3e);
border-color:var(--marine, #0d1b3e);
color:#fff
}

.calendrier_futur .calendrier_date { color:var(--or, #e8a80c) }

.avisP_hero {
display:flex;
align-items:center;
flex-wrap:wrap;
justify-content:space-between;
gap:14px
}

.avisP_hero h1 { margin:0 }

.avisP_deposerBtn {
display:inline-flex;
align-items:center;
gap:9px;
margin:0
}

.cat_wishlist.estActif,
.fStade_btn.estActif {
background:#0d1b3e;
color:#fff
}

.eventCard_corps,
.eventCard_actus,
.eventCard_pied { min-width:0 }

.eventCard_actu { min-width:0 }

.eventCard_actu span {
min-width:0;
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap
}

.voyage_boutons {
display:flex;
flex-wrap:wrap;
gap:10px
}

.voyage_boutons .btn {
display:inline-flex;
align-items:center;
justify-content:center;
gap:9px;
white-space:nowrap
}

@media (max-width:760px) {
.interne_contenu.home_section { padding:26px 0 0 }

.event_hero + .interne_contenu.home_section,
#event_app.interne_contenu.home_section { padding:26px 0 0 }

.section_intro,
.cat_intro,
.info_texte,
.info_texte p,
.fVoy_bloc p,
.fAvis_bloc p,
.fAvis_critere p,
.eventCard_resume,
.vide_texte {
	font-size:16px;
	line-height:1.6
}

.fAvis_meta {
	flex-direction:column;
	align-items:flex-start;
	gap:10px
}

.fAvis_meta .avisP_user {
	flex:none;
	width:100%
}

.fAvis_meta .avisP_outils { margin:0 }

.voyage_boutons .btn {
	flex:1;
	min-width:150px;
	font-size:13px;
	padding:11px 12px
}

.eventCard_stades {
	max-width:100%;
	overflow:hidden
}
}

.fAvis_partager {
width:auto;
height:auto;
gap:8px;
border-radius:999px;
font-weight:600;
padding:8px 16px
}

@media (max-width:760px) {
.fAvis_meta {
	flex-direction:row;
	flex-wrap:wrap;
	align-items:center;
	gap:8px 16px
}

.fAvis_meta .avisP_user {
	flex:1 1 auto;
	width:auto;
	min-width:0
}

.fAvis_meta .avisP_outils {
	order:1;
	margin:0 0 0 auto
}

.fAvis_venue,
.fAvis_meta .avisP_votes { order:2 }

.voy_journeeStade {
	flex-direction:column;
	align-items:stretch;
	gap:4px
}

.voy_journeeStade input[type="text"] { width:100% }

.voy_journeeStade .voy_couvBtn {
	align-self:flex-end;
	background:none;
	border:none;
	font-size:12px;
	color:#155ab6;
	padding:3px 0
}

.voy_journeeStade .voy_couvBtn.estActif {
	background:none;
	font-weight:700;
	color:#0d1b3e
}

.voy_journeeStade .voy_couvBtn.estActif span::after { content:" ✓" }
}

@media (max-width:760px) {
.info_hero h1,
.part_ficheInfos h1,
.pays_ficheHead h1,
.fAvis_heroContenu h1,
.fActu_head h1,
.fStade_heroContenu h1 {
	font-size:26px;
	line-height:1.15
}

.part_ficheTitre,
.fActu_chapo {
	font-size:17px;
	line-height:1.5
}

.part_ficheSousTitre,
.pays_volet summary h2,
.fStade_section > summary h2,
.fStade_sectionOuverte > h2,
.fAvis_bloc h2,
.fVoy_bloc h2,
.fActu_liees h2,
.actuP_focusTitre,
.fStade_guidePays h2 {
	font-size:19px;
	line-height:1.25
}

.pays_volet summary h2 i,
.fStade_section > summary h2 i,
.fStade_sectionOuverte > h2 i {
	font-size:15px
}

.info_texte,
.info_texte p,
.info_texte li,
.info_intro,
.section_intro,
.cat_intro,
.fVoy_bloc p,
.fVoy_jour p,
.fAvis_bloc p,
.fAvis_critere p,
.fActu_texte,
.fActu_texte p,
.eventCard_resume,
.vide_texte {
	font-size:16px;
	line-height:1.6
}

.part_offreCorps h3,
.part_cardNom,
.actuP_titre,
.avisP_photoNom strong,
.fVoy_stade a,
.fStade_club,
.fStade_sousTitre,
.fAvis_critere h3,
.pays_paraTitre,
.pays_nom {
	font-size:16px;
	line-height:1.25
}

.part_offreCorps p,
.part_cardTitre,
.part_cardSousTitre,
.actuP_resume,
.avisP_extrait,
.avisP_titre,
.fVoy_meta,
.fAvis_lieu,
.fStade_heroVille,
.fStade_tagline,
.fStade_parking strong,
.fStade_guidePays a {
	font-size:14.5px;
	line-height:1.5
}

.info_retour a,
.fActu_meta,
.fActu_source,
.fAvis_venue,
.fStade_note,
.fStade_lien,
.fStade_btn,
.fStade_avisBarre,
.fVoy_jourNum,
.fVoy_jourStade,
.fVoy_fichCategorie,
.fVoy_fichListe a,
.fVoy_liens a,
.part_ficheAdresse,
.part_ficheLien,
.part_cardLien,
.part_cardLieu,
.pays_paraBouton,
.pays_lien,
.pays_compteur,
.actuP_meta,
.avisP_btn,
.fStade_kicker {
	font-size:13px
}

.avisP_userNom,
.avisP_userNom time,
.avisP_votes,
.avisP_note small,
.avisP_photoNom span,
.fAvis_note small,
.fVoy_badge,
.fVoy_compte,
.actuP_event,
.part_cardCat,
.fStade_chip,
.fStade_nav a,
.fStade_credits,
.fStade_parking small,
.fStade_avisNote small {
	font-size:11.5px;
	letter-spacing:.03em
}

.fAvis_note { font-size:30px }

.avisP_note { font-size:21px }

.fStade_avisNote span { font-size:34px }

.vide_titre { font-size:20px }

.vide_icone { font-size:38px }

.fVoy_liens a,
.fVoy_fichListe a span,
.info_texte a,
.part_ficheAdresse { overflow-wrap:anywhere }

.fAvis_photos {
	display:grid;
	grid-template-columns:repeat(2, minmax(0, 1fr));
	gap:8px
}

.fAvis_photos a { display:block }

.fAvis_photos img {
	width:100%;
	height:auto;
	aspect-ratio:4 / 3
}
}

@media (max-width:400px) {
.info_hero h1,
.part_ficheInfos h1,
.pays_ficheHead h1,
.fAvis_heroContenu h1,
.fActu_head h1,
.fStade_heroContenu h1 {
	font-size:23px
}

.part_ficheSousTitre,
.pays_volet summary h2,
.fStade_section > summary h2,
.fStade_sectionOuverte > h2,
.fAvis_bloc h2,
.fVoy_bloc h2,
.fActu_liees h2,
.actuP_focusTitre {
	font-size:18px
}

.fAvis_note { font-size:26px }

.fStade_avisNote span { font-size:30px }

.fStade_galeriePhoto img {
	width:240px;
	height:158px
}

.fStade_avisBarres { min-width:0 }
}
