#servicesIntro,
#portfolioIntro {
display:flex;
flex-direction:column;
align-items:center;
gap:26px;
width:100%;
text-align:center;
margin:0 0 54px;
padding:0
}

.servicesIntro_txt,
.portfolioIntro_txt {
max-width:74ch;
font-size:1.08rem;
color:var(--beige, #cfbb95);
line-height:1.65;
margin:0;
padding:0
}

.portfolioIntro_chiffres {
display:flex;
flex-wrap:wrap;
align-items:stretch;
justify-content:center;
gap:0;
list-style:none;
margin:0;
padding:0
}

.portfolioIntro_chiffres li {
display:flex;
flex-direction:column;
align-items:center;
gap:6px;
min-width:180px;
border-left:1px solid rgba(207, 187, 149, 0.2);
margin:0;
padding:6px 30px
}

.portfolioIntro_chiffres li:first-child { border-left:none }

.portfolioIntro_chiffres strong {
font-size:2.4rem;
font-weight:800;
font-variant-numeric:tabular-nums;
color:var(--white, #fff6e6);
line-height:1
}

.portfolioIntro_chiffres span {
font-size:0.82rem;
text-transform:uppercase;
letter-spacing:0.06em;
color:rgba(207, 187, 149, 0.7);
line-height:1.3
}

/* ====================================================================== */
/* ======== HUB DES 3 POLES (page /services) ============================ */
/* ====================================================================== */

#servicesPoles {
display:grid;
grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));
gap:20px;
width:100%;
margin:0 0 54px;
padding:0
}

.poleCarte {
display:flex;
flex-direction:column;
align-items:stretch;
background-color:rgba(255, 255, 255, 0.035);
border:1px solid rgba(207, 187, 149, 0.16);
border-radius:14px;
transition:border-color 0.25s ease, background-color 0.25s ease;
margin:0;
padding:30px 28px 28px
}

.poleCarte:hover {
background-color:rgba(255, 255, 255, 0.05);
border-color:rgba(207, 187, 149, 0.34)
}

.poleCarte_head {
display:block;
border-bottom:1px solid rgba(207, 187, 149, 0.14);
margin:0 0 18px;
padding:0 0 18px
}

.poleCarte_rang {
font-size:0.68rem;
font-weight:700;
text-transform:uppercase;
letter-spacing:0.18em;
color:rgba(207, 187, 149, 0.6);
margin:0 0 10px;
padding:0
}

.poleCarte_titre {
font-size:1.6rem;
font-weight:800;
letter-spacing:-0.02em;
line-height:1.12;
text-wrap:balance;
margin:0 0 12px;
padding:0
}

.poleCarte_titre a {
text-decoration:none;
color:var(--white, #fff6e6);
transition:color 0.2s ease
}

.poleCarte_titre a:hover,
.poleCarte_titre a:focus-visible { color:var(--beige, #cfbb95) }

.poleCarte_chapo {
font-size:0.95rem;
color:rgba(207, 187, 149, 0.86);
line-height:1.6;
margin:0;
padding:0
}

.poleCarte_liste {
display:flex;
flex-direction:column;
gap:2px;
list-style:none;
margin:0 0 22px;
padding:0
}

.poleCarte_liste a {
display:block;
min-height:44px;
border-radius:8px;
text-decoration:none;
color:rgba(255, 246, 230, 0.9);
transition:background-color 0.2s ease, color 0.2s ease;
margin:0;
padding:10px 12px
}

.poleCarte_liste a:hover,
.poleCarte_liste a:focus-visible {
background-color:rgba(207, 187, 149, 0.1);
color:var(--white, #fff6e6)
}

.poleCarte_lien_titre {
display:block;
font-size:0.94rem;
font-weight:600;
line-height:1.35
}

.poleCarte_liste small {
display:block;
font-size:0.78rem;
font-weight:400;
color:rgba(207, 187, 149, 0.62);
line-height:1.4;
margin:3px 0 0
}

.poleCarte_vide {
font-size:0.88rem;
color:rgba(207, 187, 149, 0.6);
margin:0;
padding:10px 12px
}

.poleCarte_cta {
display:flex;
flex-wrap:wrap;
align-items:center;
gap:12px 20px;
margin:auto 0 0;
padding:0
}

.poleCarte_cta_second {
display:inline-flex;
align-items:center;
gap:8px;
min-height:44px;
text-decoration:underline;
text-underline-offset:4px;
font-size:0.88rem;
font-weight:600;
color:rgba(207, 187, 149, 0.85);
transition:color 0.2s ease
}

.poleCarte_cta_second:hover,
.poleCarte_cta_second:focus-visible { color:var(--white, #fff6e6) }

/* ====================================================================== */
/* ======== PAGE POLE : LISTE DES PRESTATIONS =========================== */
/* ====================================================================== */

.poleEnfants {
display:block;
width:100%;
border-top:1px solid rgba(207, 187, 149, 0.18);
margin:0 0 54px;
padding:44px 0 0
}

.poleEnfants_titre {
font-size:clamp(1.4rem, 1.15rem + 1vw, 1.9rem);
font-weight:800;
letter-spacing:-0.02em;
color:var(--white, #fff6e6);
line-height:1.15;
margin:0 0 26px;
padding:0
}

.poleEnfants_grid {
display:grid;
grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));
gap:16px;
width:100%;
margin:0;
padding:0
}

.poleEnfants_card {
display:flex;
flex-direction:column;
align-items:flex-start;
gap:8px;
min-height:44px;
background-color:rgba(255, 255, 255, 0.035);
border:1px solid rgba(207, 187, 149, 0.16);
border-radius:12px;
text-decoration:none;
transition:border-color 0.25s ease, background-color 0.25s ease, transform 0.25s ease;
margin:0;
padding:22px 24px 20px
}

.poleEnfants_card:hover,
.poleEnfants_card:focus-visible {
background-color:rgba(255, 255, 255, 0.05);
border-color:rgba(207, 187, 149, 0.34);
transform:translateY(-3px)
}

.poleEnfants_card_titre {
display:block;
font-size:1.05rem;
font-weight:700;
color:var(--white, #fff6e6);
line-height:1.3
}

.poleEnfants_card_txt {
display:block;
font-size:0.88rem;
color:rgba(207, 187, 149, 0.82);
line-height:1.5
}

.poleEnfants_card_go {
display:flex;
align-items:center;
justify-content:center;
width:32px;
height:32px;
background-color:rgba(207, 187, 149, 0.12);
border-radius:50%;
font-size:0.8rem;
color:var(--beige, #cfbb95);
margin:8px 0 0
}

/* ====================================================================== */
/* ======== PRESTATIONS SOEURS ========================================== */
/* ====================================================================== */

.prestaSoeurs {
display:flex;
flex-direction:column;
align-items:center;
width:100%;
border-top:1px solid rgba(207, 187, 149, 0.18);
text-align:center;
margin:54px 0 0;
padding:40px 0 0
}

.prestaSoeurs_titre {
font-size:0.72rem;
font-weight:700;
text-transform:uppercase;
letter-spacing:0.16em;
color:rgba(207, 187, 149, 0.6);
margin:0 0 18px;
padding:0
}

.prestaSoeurs_liste {
display:flex;
flex-wrap:wrap;
align-items:center;
justify-content:center;
gap:10px;
list-style:none;
margin:0 0 22px;
padding:0
}

.prestaSoeurs_liste a {
display:inline-flex;
align-items:center;
min-height:44px;
background-color:rgba(255, 255, 255, 0.04);
border:1px solid rgba(207, 187, 149, 0.22);
border-radius:40px;
text-decoration:none;
font-size:0.88rem;
font-weight:600;
color:rgba(255, 246, 230, 0.9);
transition:background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
margin:0;
padding:0 20px
}

.prestaSoeurs_liste a:hover,
.prestaSoeurs_liste a:focus-visible {
background-color:rgba(207, 187, 149, 0.14);
border-color:var(--beige, #cfbb95);
color:var(--white, #fff6e6)
}

.prestaSoeurs_retour {
display:flex;
flex-wrap:wrap;
align-items:center;
justify-content:center;
gap:10px 26px;
margin:0;
padding:0
}

.prestaSoeurs_retour a {
display:inline-flex;
align-items:center;
gap:9px;
min-height:44px;
text-decoration:underline;
text-underline-offset:4px;
font-size:0.9rem;
color:rgba(207, 187, 149, 0.85);
transition:color 0.2s ease
}

.prestaSoeurs_retour a:hover,
.prestaSoeurs_retour a:focus-visible { color:var(--white, #fff6e6) }

/* ====================================================================== */
/* ======== BLOCS PORTFOLIO ============================================= */
/* ====================================================================== */

.portfolioBloc {
display:block;
width:100%;
border-top:1px solid rgba(207, 187, 149, 0.18);
margin:0 0 64px;
padding:48px 0 0
}

.portfolioBloc_head {
display:flex;
flex-wrap:wrap;
align-items:flex-end;
justify-content:space-between;
gap:14px 30px;
margin:0 0 30px;
padding:0
}

.portfolioBloc_titre {
width:100%;
font-size:clamp(1.5rem, 1.2rem + 1.2vw, 2.1rem);
font-weight:800;
letter-spacing:-0.02em;
color:var(--white, #fff6e6);
line-height:1.1;
margin:0;
padding:0
}

.portfolioBloc_chapo {
max-width:62ch;
font-size:0.98rem;
color:var(--beige, #cfbb95);
line-height:1.6;
margin:0;
padding:0
}

.portfolioBloc_all {
display:inline-flex;
align-items:center;
gap:10px;
min-height:44px;
text-decoration:none;
text-transform:uppercase;
font-size:0.8rem;
font-weight:700;
letter-spacing:0.05em;
color:var(--beige, #cfbb95);
white-space:nowrap;
transition:color 0.2s ease
}

.portfolioBloc_all:hover,
.portfolioBloc_all:focus-visible { color:var(--white, #fff6e6) }

.portfolioGrid {
display:grid;
grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));
gap:20px;
width:100%;
margin:0;
padding:0
}

.portfolioCard {
display:flex;
flex-direction:column;
width:100%;
overflow:hidden;
background-color:rgba(255, 255, 255, 0.035);
border:1px solid rgba(207, 187, 149, 0.16);
border-radius:12px;
transition:border-color 0.25s ease, transform 0.25s ease;
margin:0;
padding:0
}

.portfolioCard:hover {
border-color:rgba(207, 187, 149, 0.34);
transform:translateY(-3px)
}

.portfolioCard_img {
display:block;
width:100%;
aspect-ratio:3 / 2;
overflow:hidden;
margin:0;
padding:0
}

.portfolioCard_img img {
display:block;
width:100%;
height:100%;
object-fit:cover;
margin:0;
padding:0
}

.portfolioCard_body {
display:flex;
flex-direction:column;
gap:8px;
margin:0;
padding:20px 22px 24px
}

.portfolioCard_titre {
font-size:1.05rem;
font-weight:700;
color:var(--white, #fff6e6);
line-height:1.3;
margin:0;
padding:0
}

.portfolioCard_titre a {
text-decoration:none;
color:inherit;
transition:color 0.2s ease
}

.portfolioCard_titre a:hover,
.portfolioCard_titre a:focus-visible { color:var(--beige, #cfbb95) }

.portfolioCard_meta {
display:flex;
align-items:center;
gap:8px;
font-size:0.8rem;
text-transform:uppercase;
letter-spacing:0.05em;
color:rgba(207, 187, 149, 0.66);
margin:0;
padding:0
}

.portfolioCard_txt {
font-size:0.9rem;
color:rgba(207, 187, 149, 0.86);
line-height:1.55;
margin:0;
padding:0
}

.portfolio_empty {
font-size:0.95rem;
color:rgba(207, 187, 149, 0.7);
margin:0;
padding:0
}

/* ====================================================================== */
/* ======== BLOCS DE CONVERSION ========================================= */
/* ====================================================================== */

#servicesFinal,
#portfolioFinal,
.poleCta,
.prestaCta {
display:flex;
flex-direction:column;
align-items:center;
gap:18px;
width:100%;
background-color:rgba(207, 187, 149, 0.07);
border:1px solid rgba(207, 187, 149, 0.2);
border-radius:14px;
text-align:center;
margin:0;
padding:46px 30px 42px
}

.servicesFinal_titre,
.portfolioFinal_titre,
.poleCta_titre,
.prestaCta_titre {
max-width:30ch;
font-size:clamp(1.5rem, 1.2rem + 1.2vw, 2.1rem);
font-weight:800;
letter-spacing:-0.02em;
color:var(--white, #fff6e6);
line-height:1.12;
text-wrap:balance;
margin:0;
padding:0
}

.servicesFinal_txt,
.portfolioFinal_txt,
.poleCta_txt,
.prestaCta_txt {
max-width:66ch;
font-size:1rem;
color:var(--beige, #cfbb95);
line-height:1.65;
margin:0;
padding:0
}

.servicesFinal_cta,
.portfolioFinal_cta,
.poleCta_boutons,
.prestaCta_boutons {
display:flex;
flex-wrap:wrap;
align-items:center;
justify-content:center;
gap:14px;
margin:8px 0 0;
padding:0
}

.servicesFinal_liens,
.portfolioFinal_liens,
.poleCta_liens,
.prestaCta_liens {
display:flex;
flex-wrap:wrap;
align-items:center;
justify-content:center;
gap:10px 26px;
margin:8px 0 0;
padding:0
}

.servicesFinal_liens a,
.portfolioFinal_liens a,
.poleCta_liens a,
.prestaCta_liens a {
display:inline-flex;
align-items:center;
min-height:44px;
text-decoration:underline;
text-underline-offset:4px;
font-size:0.9rem;
color:rgba(207, 187, 149, 0.85);
transition:color 0.2s ease
}

.servicesFinal_liens a:hover,
.servicesFinal_liens a:focus-visible,
.portfolioFinal_liens a:hover,
.portfolioFinal_liens a:focus-visible,
.poleCta_liens a:hover,
.poleCta_liens a:focus-visible,
.prestaCta_liens a:hover,
.prestaCta_liens a:focus-visible { color:var(--white, #fff6e6) }

@media only screen and (max-width:780px) {
	#servicesPoles,
	.poleEnfants_grid,
	.portfolioGrid { grid-template-columns:1fr }

	.poleCarte { padding:24px 22px }

	.poleEnfants,
	.portfolioBloc {
	margin:0 0 44px;
	padding:34px 0 0
	}

	.prestaSoeurs {
	margin:44px 0 0;
	padding:32px 0 0
	}

	.portfolioIntro_chiffres li {
	min-width:130px;
	padding:6px 16px
	}

	.portfolioIntro_chiffres strong { font-size:1.9rem }

	#servicesFinal,
	#portfolioFinal,
	.poleCta,
	.prestaCta { padding:34px 20px 32px }
}

@media (prefers-reduced-motion: reduce) {
	.poleCarte,
	.poleEnfants_card,
	.portfolioCard { transition:none }

	.poleEnfants_card:hover,
	.portfolioCard:hover { transform:none }
}

/* ====================================================================== */
/* ======== REPONSE DIRECTE (AEO) ======================================= */
/* ====================================================================== */

.wysiwyg .reponseDirecte {
display:block;
background-color:rgba(207, 187, 149, 0.08);
border-left:3px solid var(--beige, #cfbb95);
border-radius:0 10px 10px 0;
font-size:1.06rem;
font-weight:600;
color:var(--white, #fff6e6);
line-height:1.62;
margin:0 0 30px;
padding:22px 26px
}

/* ====================================================================== */
/* ======== FORMULES ==================================================== */
/* ====================================================================== */

.tarifsBloc {
display:block;
width:100%;
border-top:1px solid rgba(207, 187, 149, 0.18);
margin:0 0 54px;
padding:44px 0 0
}

.tarifsBloc_head {
display:block;
max-width:70ch;
margin:0 0 30px;
padding:0
}

.tarifsBloc_titre {
font-size:clamp(1.4rem, 1.15rem + 1vw, 1.95rem);
font-weight:800;
letter-spacing:-0.02em;
color:var(--white, #fff6e6);
line-height:1.12;
margin:0 0 12px;
padding:0
}

.tarifsBloc_chapo {
font-size:0.98rem;
color:var(--beige, #cfbb95);
line-height:1.6;
margin:0;
padding:0
}

.tarifsGrid {
display:grid;
grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));
gap:18px;
width:100%;
margin:0 0 44px;
padding:0
}

.tarifCard {
display:flex;
position:relative;
flex-direction:column;
background-color:rgba(255, 255, 255, 0.035);
border:1px solid rgba(207, 187, 149, 0.16);
border-radius:14px;
transition:border-color 0.25s ease;
margin:0;
padding:28px 26px 26px
}

.tarifCard:hover { border-color:rgba(207, 187, 149, 0.34) }

.tarifCard.is-vedette {
background-color:rgba(207, 187, 149, 0.09);
border-color:rgba(207, 187, 149, 0.5)
}

.tarifCard_flag {
position:absolute;
background-color:var(--beige, #cfbb95);
border-radius:40px;
font-size:0.62rem;
font-weight:700;
text-transform:uppercase;
letter-spacing:0.12em;
color:#1f1717;
top:-11px;
left:26px;
margin:0;
padding:4px 12px
}

.tarifCard_nom {
font-size:1.28rem;
font-weight:800;
letter-spacing:-0.015em;
color:var(--white, #fff6e6);
line-height:1.2;
margin:0 0 10px;
padding:0
}

.tarifCard_prix {
display:flex;
align-items:baseline;
gap:8px;
border-bottom:1px solid rgba(207, 187, 149, 0.14);
margin:0 0 16px;
padding:0 0 16px
}

.tarifCard_prix_avant {
font-size:0.76rem;
text-transform:uppercase;
letter-spacing:0.08em;
color:rgba(207, 187, 149, 0.62)
}

.tarifCard_prix_val {
font-size:2rem;
font-weight:800;
font-variant-numeric:tabular-nums;
color:var(--beige, #cfbb95);
line-height:1
}

.tarifCard_resume {
font-size:0.92rem;
color:rgba(207, 187, 149, 0.86);
line-height:1.55;
margin:0 0 16px;
padding:0
}

.tarifCard_nb {
font-size:0.72rem;
font-weight:700;
text-transform:uppercase;
letter-spacing:0.1em;
color:rgba(207, 187, 149, 0.6);
margin:0 0 10px;
padding:0
}

.tarifCard_inclus {
display:flex;
flex-direction:column;
gap:7px;
list-style:none;
margin:0 0 22px;
padding:0
}

.tarifCard_inclus li {
display:flex;
align-items:flex-start;
gap:10px;
font-size:0.87rem;
color:rgba(255, 246, 230, 0.84);
line-height:1.45;
margin:0;
padding:0
}

.tarifCard_inclus i {
flex-shrink:0;
font-size:0.7rem;
color:var(--beige, #cfbb95);
margin:5px 0 0
}

.tarifCard_reste {
font-style:italic;
color:rgba(207, 187, 149, 0.62)
}

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

.tarifCard_detail {
display:inline-flex;
align-items:center;
min-height:44px;
text-decoration:underline;
text-underline-offset:4px;
font-size:0.86rem;
color:rgba(207, 187, 149, 0.85);
transition:color 0.2s ease
}

.tarifCard_detail:hover,
.tarifCard_detail:focus-visible { color:var(--white, #fff6e6) }

.tarifs_empty {
font-size:0.95rem;
color:rgba(207, 187, 149, 0.7);
margin:0;
padding:0
}

/* ====================================================================== */
/* ======== OPTIONS A LA CARTE ========================================== */
/* ====================================================================== */

.optionsBloc {
display:block;
width:100%;
background-color:rgba(255, 255, 255, 0.03);
border:1px solid rgba(207, 187, 149, 0.14);
border-radius:14px;
margin:0 0 30px;
padding:28px 26px 26px
}

.optionsBloc_titre {
font-size:1.1rem;
font-weight:700;
color:var(--white, #fff6e6);
line-height:1.2;
margin:0 0 8px;
padding:0
}

.optionsBloc_chapo {
font-size:0.9rem;
color:rgba(207, 187, 149, 0.78);
line-height:1.55;
margin:0 0 20px;
padding:0
}

.optionsGrid {
display:grid;
grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));
gap:12px;
list-style:none;
margin:0 0 18px;
padding:0
}

.optionItem {
display:flex;
align-items:flex-start;
gap:14px;
background-color:rgba(0, 0, 0, 0.22);
border-radius:10px;
margin:0;
padding:14px 16px
}

.optionItem_icone {
display:flex;
align-items:center;
justify-content:center;
flex-shrink:0;
width:34px;
height:34px;
background-color:rgba(207, 187, 149, 0.12);
border-radius:8px;
font-size:0.9rem;
color:var(--beige, #cfbb95)
}

.optionItem_corps {
display:flex;
flex-direction:column;
gap:3px;
flex:1
}

.optionItem_nom {
font-size:0.9rem;
font-weight:600;
color:var(--white, #fff6e6);
line-height:1.35
}

.optionItem_corps small {
font-size:0.78rem;
color:rgba(207, 187, 149, 0.66);
line-height:1.4
}

.optionItem_prix {
flex-shrink:0;
font-size:0.95rem;
font-weight:700;
font-variant-numeric:tabular-nums;
color:var(--beige, #cfbb95);
white-space:nowrap
}

.optionsBloc_plus,
.tarifsBloc_pied {
display:flex;
flex-wrap:wrap;
align-items:center;
gap:12px 24px;
margin:0;
padding:0
}

.optionsBloc_plus a {
display:inline-flex;
align-items:center;
min-height:44px;
text-decoration:underline;
text-underline-offset:4px;
font-size:0.88rem;
color:rgba(207, 187, 149, 0.85);
transition:color 0.2s ease
}

.optionsBloc_plus a:hover,
.optionsBloc_plus a:focus-visible { color:var(--white, #fff6e6) }

/* ====================================================================== */
/* ======== RAPPEL TARIF SUR UNE PRESTATION ============================= */
/* ====================================================================== */

.prestaTarifRappel {
display:flex;
flex-wrap:wrap;
align-items:center;
justify-content:space-between;
gap:16px 28px;
width:100%;
background-color:rgba(207, 187, 149, 0.08);
border:1px solid rgba(207, 187, 149, 0.24);
border-radius:14px;
margin:0 0 44px;
padding:24px 26px
}

.prestaTarifRappel_txt {
flex:1 1 320px;
font-size:0.98rem;
color:var(--beige, #cfbb95);
line-height:1.6;
margin:0;
padding:0
}

.prestaTarifRappel_txt strong { color:var(--white, #fff6e6) }

.prestaTarifRappel_liens {
display:flex;
flex-wrap:wrap;
align-items:center;
gap:12px 20px;
margin:0;
padding:0
}

.prestaTarifRappel_liens a:not(.btnNormal) {
display:inline-flex;
align-items:center;
min-height:44px;
text-decoration:underline;
text-underline-offset:4px;
font-size:0.88rem;
color:rgba(207, 187, 149, 0.85);
transition:color 0.2s ease
}

.prestaTarifRappel_liens a:not(.btnNormal):hover,
.prestaTarifRappel_liens a:not(.btnNormal):focus-visible { color:var(--white, #fff6e6) }

/* ====================================================================== */
/* ======== FAQ ========================================================= */
/* ====================================================================== */

.faqBloc {
display:block;
width:100%;
border-top:1px solid rgba(207, 187, 149, 0.18);
margin:0 0 54px;
padding:44px 0 0
}

.faqBloc_titre {
font-size:clamp(1.4rem, 1.15rem + 1vw, 1.95rem);
font-weight:800;
letter-spacing:-0.02em;
color:var(--white, #fff6e6);
line-height:1.12;
margin:0 0 26px;
padding:0
}

.faqBloc_liste {
display:flex;
flex-direction:column;
gap:10px;
width:100%;
margin:0 0 24px;
padding:0
}

.faqItem {
display:block;
background-color:rgba(255, 255, 255, 0.035);
border:1px solid rgba(207, 187, 149, 0.16);
border-radius:12px;
margin:0;
padding:0
}

.faqItem[open] {
background-color:rgba(255, 255, 255, 0.05);
border-color:rgba(207, 187, 149, 0.3)
}

.faqItem_q {
display:flex;
align-items:center;
justify-content:space-between;
gap:16px;
min-height:44px;
list-style:none;
font-size:1rem;
font-weight:700;
color:var(--white, #fff6e6);
line-height:1.4;
cursor:pointer;
margin:0;
padding:18px 22px
}

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

.faqItem_q::after {
content:'+';
flex-shrink:0;
font-size:1.3rem;
font-weight:400;
color:var(--beige, #cfbb95);
line-height:1;
transition:transform 0.25s ease
}

.faqItem[open] .faqItem_q::after {
content:'\2212';
transform:rotate(180deg)
}

.faqItem_r {
display:block;
margin:0;
padding:0 22px 20px
}

.faqItem_r p {
max-width:92ch;
font-size:0.95rem;
color:rgba(207, 187, 149, 0.9);
line-height:1.68;
margin:0;
padding:0
}

.faqBloc_plus {
display:flex;
flex-wrap:wrap;
align-items:center;
gap:10px 26px;
margin:0;
padding:0
}

.faqBloc_plus a {
display:inline-flex;
align-items:center;
min-height:44px;
text-decoration:underline;
text-underline-offset:4px;
font-size:0.9rem;
color:rgba(207, 187, 149, 0.85);
transition:color 0.2s ease
}

.faqBloc_plus a:hover,
.faqBloc_plus a:focus-visible { color:var(--white, #fff6e6) }

/* ====================================================================== */
/* ======== ZONE D'INTERVENTION ========================================= */
/* ====================================================================== */

.zoneBloc {
display:block;
width:100%;
border-top:1px solid rgba(207, 187, 149, 0.18);
margin:0 0 54px;
padding:44px 0 0
}

.zoneBloc_head {
display:block;
max-width:72ch;
margin:0 0 26px;
padding:0
}

.zoneBloc_titre {
font-size:clamp(1.4rem, 1.15rem + 1vw, 1.95rem);
font-weight:800;
letter-spacing:-0.02em;
color:var(--white, #fff6e6);
line-height:1.12;
margin:0 0 12px;
padding:0
}

.zoneBloc_chapo {
font-size:0.98rem;
color:var(--beige, #cfbb95);
line-height:1.6;
margin:0;
padding:0
}

.zoneGrid {
display:grid;
grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
gap:12px;
list-style:none;
margin:0 0 20px;
padding:0
}

.zoneItem {
display:flex;
flex-direction:column;
gap:5px;
background-color:rgba(255, 255, 255, 0.035);
border:1px solid rgba(207, 187, 149, 0.14);
border-radius:10px;
margin:0;
padding:16px 18px
}

.zoneItem_ville {
font-size:0.98rem;
font-weight:700;
color:var(--white, #fff6e6);
line-height:1.3
}

.zoneItem_temps {
font-size:0.78rem;
font-weight:700;
text-transform:uppercase;
letter-spacing:0.08em;
color:var(--beige, #cfbb95)
}

.zoneItem_detail {
font-size:0.82rem;
color:rgba(207, 187, 149, 0.66);
line-height:1.45
}

.zoneBloc_note {
max-width:76ch;
font-size:0.85rem;
font-style:italic;
color:rgba(207, 187, 149, 0.62);
line-height:1.6;
margin:0 0 18px;
padding:0
}

.zoneBloc_liens {
display:flex;
flex-wrap:wrap;
align-items:center;
gap:10px 26px;
margin:0;
padding:0
}

.zoneBloc_liens a {
display:inline-flex;
align-items:center;
min-height:44px;
text-decoration:underline;
text-underline-offset:4px;
font-size:0.9rem;
color:rgba(207, 187, 149, 0.85);
transition:color 0.2s ease
}

.zoneBloc_liens a:hover,
.zoneBloc_liens a:focus-visible { color:var(--white, #fff6e6) }

@media only screen and (max-width:780px) {
	.tarifsGrid,
	.optionsGrid,
	.zoneGrid { grid-template-columns:1fr }

	.tarifsBloc,
	.faqBloc,
	.zoneBloc {
	margin:0 0 44px;
	padding:34px 0 0
	}

	.wysiwyg .reponseDirecte { padding:18px 20px }

	.faqItem_q { padding:16px 18px }

	.faqItem_r { padding:0 18px 18px }
}

@media (prefers-reduced-motion: reduce) {
	.tarifCard,
	.faqItem_q::after { transition:none }
}
