/*
 * Page Règles : en-tête photo voilé, dans la même direction artistique que la page Contact.
 * Le thème fixe déjà ces éléments avec des sélecteurs précis : les « !important » ci-dessous
 * sont limités à l'en-tête de cette seule page (body.page-template-page-regles).
 */
body.page-template-page-regles main.site-main{position:relative;isolation:isolate;overflow-x:clip}
body.page-template-page-regles main.site-main::before{content:'';position:absolute;top:0;left:0;right:0;z-index:-1;height:clamp(520px,74vh,740px);background:linear-gradient(180deg,rgba(10,22,40,.55) 0%,rgba(10,22,40,.3) 32%,rgba(10,22,40,.82) 76%,#0a1628 100%),var(--csp-regles-hero) center 46%/cover no-repeat;transform:scale(1.06);transform-origin:center 40%;animation:cspReglesSlow 18s cubic-bezier(.16,1,.3,1) forwards;pointer-events:none}
@keyframes cspReglesSlow{to{transform:scale(1)}}

/* Titre centré dans la photo, comme sur la page Contact. */
body.page-template-page-regles .csp-regles--v2>.csp-section__header{min-height:calc(clamp(520px,74vh,740px) - 56px - 7rem)!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;padding:96px 0 0!important;margin-bottom:0!important}
body.page-template-page-regles .csp-regles--v2>.csp-section__header .csp-section__label{display:inline-flex;align-items:center;gap:.9rem;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;font-size:.64rem!important;letter-spacing:.34em!important}
body.page-template-page-regles .csp-regles--v2>.csp-section__header .csp-section__label::before,
body.page-template-page-regles .csp-regles--v2>.csp-section__header .csp-section__label::after{content:'';display:block;width:34px;height:1px;background:linear-gradient(90deg,transparent,#d4b85c)}
body.page-template-page-regles .csp-regles--v2>.csp-section__header .csp-section__label::after{transform:scaleX(-1)}
body.page-template-page-regles .csp-regles--v2>.csp-section__header h1{margin-top:1.3rem!important;font-size:clamp(2.7rem,6.4vw,4.8rem)!important;line-height:1.02!important;letter-spacing:0!important;text-shadow:0 2px 30px rgba(0,0,0,.45)}
body.page-template-page-regles .csp-regles--v2>.csp-section__header p{max-width:34rem!important;margin:1.3rem auto 0!important;font-family:Montserrat,system-ui,sans-serif!important;font-size:1rem!important;line-height:1.7!important;font-weight:300!important;color:rgba(244,239,226,.74)!important;text-shadow:0 1px 18px rgba(0,0,0,.6)}

/* « L'essentiel avant votre venue » : carte en verre dépoli qui mord sur la photo (cartes de la page Contact). */
body.page-template-page-regles .csp-regles--v2>.csp-regles__essentiel{position:relative;z-index:2;margin-top:2.2rem!important;background:linear-gradient(180deg,rgba(18,37,61,.86),rgba(9,22,37,.94))!important;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 30px 70px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.05)}

@media (max-width:700px){
	body.page-template-page-regles main.site-main::before{height:clamp(480px,72vh,600px)}
	body.page-template-page-regles .csp-regles--v2>.csp-section__header{min-height:calc(clamp(480px,72vh,600px) - 56px - 8rem)!important;padding-top:84px!important}
	body.page-template-page-regles .csp-regles--v2>.csp-regles__essentiel{margin-top:1.6rem!important}
}
@media (prefers-reduced-motion:reduce){
	body.page-template-page-regles main.site-main::before{animation:none;transform:none}
}

/* ---------- Corps de la page : même direction artistique que la page Contact (v0.1.113) ---------- */
body.page-template-page-regles .csp-regles--v2{--rg-navy:#0a1628;--rg-gold:#d4b85c;--rg-gold-hi:#f0d98a;--rg-text:#f4efe2;--rg-muted:rgba(244,239,226,.74);--rg-faint:rgba(244,239,226,.52);--rg-hair:rgba(212,184,92,.32);--rg-hair-soft:rgba(244,239,226,.09);--rg-sans:'Montserrat',system-ui,sans-serif;--rg-serif:'Cormorant Garamond',Georgia,serif;--rg-ease:cubic-bezier(.16,1,.3,1);font-family:var(--rg-sans)}
body.page-template-page-regles .csp-regles--v2 :is(.csp-regles__essentiel,.csp-regles__tabs,.csp-regles__panels,.csp-regles__footer-banner) :is(p,span,strong,button,div){font-family:var(--rg-sans)}

/* Carte « L'essentiel » : verre dépoli + six cases au style des cartes Contact. */
body.page-template-page-regles .csp-regles--v2>.csp-regles__essentiel{border:1px solid var(--rg-hair-soft)!important;border-radius:14px!important;padding:clamp(1.8rem,3.4vw,2.8rem) clamp(1.2rem,3vw,2.6rem)!important;overflow:hidden}
body.page-template-page-regles .csp-regles__essentiel::before{content:'';position:absolute;top:0;left:50%;width:62%;height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,var(--rg-gold-hi),transparent);box-shadow:0 0 18px rgba(212,184,92,.55)}
body.page-template-page-regles .csp-regles__essentiel-titre{font-family:var(--rg-serif)!important;font-weight:400!important;font-size:clamp(1.8rem,3vw,2.3rem)!important;line-height:1.1!important;color:var(--rg-text)!important}
body.page-template-page-regles .csp-regles__essentiel-sous-titre{margin-top:.5rem!important;font-size:.82rem!important;font-weight:300!important;color:var(--rg-faint)!important;letter-spacing:.02em}
body.page-template-page-regles .csp-regles__essentiel-grille{margin-top:clamp(1.6rem,3vw,2.2rem)!important;gap:clamp(.7rem,1.4vw,1rem)!important;background:none!important;border:0!important}
body.page-template-page-regles .csp-regles__essentiel-case{border:1px solid var(--rg-hair-soft)!important;border-radius:12px!important;background:rgba(10,22,40,.45)!important;padding:1.25rem 1.2rem!important;transition:border-color .5s var(--rg-ease),transform .5s var(--rg-ease),box-shadow .5s}
body.page-template-page-regles .csp-regles__essentiel-case:hover{border-color:rgba(240,217,138,.38)!important;transform:translateY(-3px);box-shadow:0 18px 40px rgba(0,0,0,.3)}
body.page-template-page-regles .csp-regles__essentiel-icone{width:38px!important;height:38px!important;display:inline-grid!important;place-items:center;border:1px solid var(--rg-hair);border-radius:50%;color:var(--rg-gold-hi)!important;background:rgba(10,22,40,.5);font-size:.9rem!important;line-height:1!important}
body.page-template-page-regles .csp-regles__essentiel-case strong{font-family:var(--rg-serif)!important;font-weight:500!important;font-size:1.3rem!important;line-height:1.15!important;color:var(--rg-text)!important;letter-spacing:0!important}
body.page-template-page-regles .csp-regles__essentiel-case strong+span{font-size:.84rem!important;line-height:1.65!important;font-weight:300!important;color:var(--rg-muted)!important}

/* Onglets : libellés espacés en capitales, filet doré lumineux sous l'onglet actif. */
body.page-template-page-regles .csp-regles__tabs{border-bottom:1px solid var(--rg-hair-soft)!important;gap:.4rem!important}
body.page-template-page-regles .csp-regles__tab{font-size:.62rem!important;font-weight:500!important;letter-spacing:.2em!important;text-transform:uppercase;color:var(--rg-faint)!important;background:none!important;padding:1.1rem 1rem!important;transition:color .4s}
body.page-template-page-regles .csp-regles__tab:hover{color:var(--rg-text)!important}
body.page-template-page-regles .csp-regles__tab--active{color:var(--rg-gold-hi)!important;border-bottom-color:transparent!important;box-shadow:inset 0 -1px 0 var(--rg-gold-hi),0 10px 22px -14px rgba(212,184,92,.7)!important}
body.page-template-page-regles .csp-regles__tab-icon{color:var(--rg-gold)!important}
body.page-template-page-regles .csp-regles__tab-count{min-width:1.45rem;height:1.45rem;display:inline-grid!important;place-items:center;border:1px solid var(--rg-hair)!important;border-radius:999px!important;background:none!important;font-size:.58rem!important;letter-spacing:0!important;color:var(--rg-gold-hi)!important}

/* Panneau de questions : grande carte en verre dépoli. */
body.page-template-page-regles .csp-regles__panel{border:1px solid var(--rg-hair-soft)!important;border-radius:14px!important;background:linear-gradient(180deg,rgba(18,37,61,.9),rgba(9,22,37,.94))!important;box-shadow:0 30px 70px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.05)!important;overflow:hidden}
body.page-template-page-regles .csp-regles__panel-head{padding:1.5rem clamp(1.2rem,3vw,2.2rem)!important;border-bottom:1px solid var(--rg-hair-soft)!important;background:none!important}
body.page-template-page-regles .csp-regles__panel-titre{font-family:var(--rg-serif)!important;font-style:italic;font-weight:400!important;font-size:clamp(1.5rem,2.4vw,1.85rem)!important;color:var(--rg-gold-hi)!important;letter-spacing:0!important}
body.page-template-page-regles .csp-regles__tout{padding:.62rem 1rem!important;border:1px solid var(--rg-hair)!important;border-radius:999px!important;background:none!important;font-size:.56rem!important;font-weight:500!important;letter-spacing:.22em!important;color:var(--rg-gold-hi)!important;transition:border-color .4s,background .4s,box-shadow .4s}
body.page-template-page-regles .csp-regles__tout:hover{border-color:var(--rg-gold-hi)!important;background:rgba(240,217,138,.07)!important;box-shadow:0 0 22px rgba(212,184,92,.18)}

/* Questions dépliables. */
body.page-template-page-regles .csp-regles__panel .csp-accordion{position:relative;border:0!important;border-bottom:1px solid var(--rg-hair-soft)!important;background:none!important;transition:background .45s}
body.page-template-page-regles .csp-regles__panel .csp-accordion:last-child{border-bottom:0!important}
body.page-template-page-regles .csp-regles__panel .csp-accordion::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(180deg,transparent,var(--rg-gold-hi),transparent);opacity:0;transition:opacity .45s}
body.page-template-page-regles .csp-regles__panel .csp-accordion:hover{background:rgba(240,217,138,.025)!important}
body.page-template-page-regles .csp-regles__panel .csp-accordion--open{background:rgba(240,217,138,.035)!important}
body.page-template-page-regles .csp-regles__panel .csp-accordion--open::before{opacity:1}
body.page-template-page-regles .csp-accordion__header{padding:1.25rem clamp(1.2rem,3vw,2.2rem)!important;background:none!important;gap:1rem!important}
body.page-template-page-regles .csp-accordion__header-icon{color:var(--rg-gold)!important}
body.page-template-page-regles .csp-accordion__title{font-size:.95rem!important;font-weight:400!important;letter-spacing:.01em!important;color:var(--rg-text)!important;transition:color .4s}
body.page-template-page-regles .csp-accordion--open .csp-accordion__title,body.page-template-page-regles .csp-accordion__header:hover .csp-accordion__title{color:var(--rg-gold-hi)!important}
body.page-template-page-regles .csp-accordion__icon{width:30px!important;height:30px!important;flex:none;display:grid!important;place-items:center;border:1px solid var(--rg-hair);border-radius:50%;color:var(--rg-gold-hi)!important;transition:border-color .4s,box-shadow .4s}
body.page-template-page-regles .csp-accordion__icon svg{width:13px!important;height:13px!important}
body.page-template-page-regles .csp-accordion__header:hover .csp-accordion__icon{border-color:var(--rg-gold-hi);box-shadow:0 0 18px rgba(212,184,92,.22)}
body.page-template-page-regles .csp-accordion__body{font-size:.9rem!important;line-height:1.8!important;font-weight:300!important;color:var(--rg-muted)!important}
body.page-template-page-regles .csp-accordion__body :is(p,li,span){font-size:inherit!important;line-height:inherit!important;font-weight:inherit!important;color:inherit!important}
body.page-template-page-regles .csp-accordion__body strong{font-weight:500!important;color:var(--rg-text)!important}

/* Mot de la fin : encadré à double filet doré, façon carte de la maison. */
body.page-template-page-regles .csp-regles__footer-banner{position:relative;border:1px solid var(--rg-hair)!important;border-radius:4px!important;background:radial-gradient(120% 140% at 50% 0%,rgba(212,184,92,.08),transparent 60%),linear-gradient(180deg,rgba(18,37,61,.7),rgba(9,22,37,.85))!important;padding:clamp(2.2rem,4.5vw,3.2rem) clamp(1.4rem,4vw,3rem)!important;box-shadow:0 30px 70px rgba(0,0,0,.35)!important}
body.page-template-page-regles .csp-regles__footer-banner::before{content:'';position:absolute;inset:8px;border:1px solid rgba(212,184,92,.16);border-radius:2px;pointer-events:none}
body.page-template-page-regles .csp-regles__footer-text{font-family:var(--rg-serif)!important;font-style:italic;font-weight:400!important;font-size:clamp(1.45rem,2.6vw,1.9rem)!important;line-height:1.3!important;color:var(--rg-text)!important}
body.page-template-page-regles .csp-regles__footer-sub{margin-top:.9rem!important;font-size:.88rem!important;font-weight:300!important;color:var(--rg-muted)!important}
/* Chevron des questions : vers le bas fermé, vers le haut ouvert (le thème le faisait pivoter de travers). */
body.page-template-page-regles .csp-accordion__icon svg{transition:transform .45s var(--rg-ease)}
body.page-template-page-regles .csp-accordion--open .csp-accordion__icon{transform:none!important;border-color:var(--rg-gold-hi)!important}
body.page-template-page-regles .csp-accordion--open .csp-accordion__icon svg{transform:rotate(180deg)!important}
/* Cases « L'essentiel » : pastille à gauche, titre et texte alignés à droite (évite le chevauchement sur téléphone). */
body.page-template-page-regles .csp-regles__essentiel-case{display:grid!important;grid-template-columns:38px minmax(0,1fr);column-gap:.95rem;row-gap:.35rem;align-items:start}
body.page-template-page-regles .csp-regles__essentiel-icone{grid-row:1 / span 2;position:static!important;margin:0!important;transform:none!important}
body.page-template-page-regles .csp-regles__essentiel-case strong,body.page-template-page-regles .csp-regles__essentiel-case strong+span{grid-column:2;margin:0!important;padding:0!important}
/* Lisibilité (v0.1.115) : textes un peu plus grands, graisse normale et contraste renforcé, sans changer le style. */
body.page-template-page-regles .csp-regles__essentiel-sous-titre{font-size:.92rem!important;font-weight:400!important;color:rgba(244,239,226,.7)!important}
body.page-template-page-regles .csp-regles__essentiel-case strong{font-size:1.38rem!important}
body.page-template-page-regles .csp-regles__essentiel-case strong+span{font-size:.93rem!important;line-height:1.65!important;font-weight:400!important;color:rgba(244,239,226,.84)!important}
body.page-template-page-regles .csp-regles__tab{font-size:.7rem!important;letter-spacing:.13em!important;color:rgba(244,239,226,.72)!important}
body.page-template-page-regles .csp-regles__tab--active{color:var(--rg-gold-hi)!important}
body.page-template-page-regles .csp-regles__tab-count{font-size:.64rem!important}
body.page-template-page-regles .csp-regles__tout{font-size:.62rem!important}
body.page-template-page-regles .csp-accordion__title{font-size:1.02rem!important;font-weight:500!important}
body.page-template-page-regles .csp-accordion__body{font-size:.98rem!important;line-height:1.8!important;font-weight:400!important;color:rgba(244,239,226,.86)!important}
body.page-template-page-regles .csp-regles__footer-sub{font-size:.96rem!important;font-weight:400!important;color:rgba(244,239,226,.8)!important}
/* Onglets : tiennent sur une ligne à la nouvelle taille de texte. */
body.page-template-page-regles .csp-regles__tabs{gap:.15rem!important;justify-content:center}
body.page-template-page-regles .csp-regles__tab{font-size:.68rem!important;letter-spacing:.07em!important;padding:1.05rem .65rem!important}

/* ---------- Finitions (v0.1.117) ---------- */
/* Icônes dessinées (insérées par regles.js à la place des caractères). */
body.page-template-page-regles .csp-rg-ico{display:block;width:17px;height:17px}
body.page-template-page-regles .csp-regles__tab-icon.has-svg .csp-rg-ico{width:14px;height:14px}
body.page-template-page-regles .csp-regles__tab-icon.has-svg{display:inline-flex!important;align-items:center}
/* Puces des questions : un même petit losange doré partout. */
body.page-template-page-regles .csp-accordion__header-icon{font-size:0!important;width:14px;flex:none;display:inline-grid!important;place-items:center}
body.page-template-page-regles .csp-accordion__header-icon::before{content:'';width:6px;height:6px;transform:rotate(45deg);background:var(--rg-gold);box-shadow:0 0 10px rgba(212,184,92,.45)}
/* Réponses alignées sur le titre de la question. */
body.page-template-page-regles .csp-accordion__body{padding-left:calc(clamp(1.2rem,3vw,2.2rem) + 14px + 1rem)!important;padding-right:clamp(1.2rem,3vw,2.2rem)!important}
/* Téléphone : fondu sur le bord droit tant que d'autres onglets restent à voir. */
body.page-template-page-regles .csp-regles__tabs.has-more{-webkit-mask-image:linear-gradient(90deg,#000 82%,transparent);mask-image:linear-gradient(90deg,#000 82%,transparent)}

/* Bloc final : invitation à réserver. */
.csp-rg-cta{position:relative;isolation:isolate;padding:clamp(1rem,3vw,2rem) 16px clamp(4.5rem,9vw,7rem);background:#0a1628;text-align:center;font-family:'Montserrat',system-ui,sans-serif}
.csp-rg-cta__in{position:relative;max-width:860px;margin:0 auto;padding:clamp(2.6rem,6vw,4.2rem) clamp(1.4rem,5vw,3.6rem);border:1px solid rgba(212,184,92,.32);border-radius:4px;background:radial-gradient(90% 120% at 50% 0%,rgba(212,184,92,.1),transparent 62%),linear-gradient(180deg,rgba(18,37,61,.75),rgba(9,22,37,.92));box-shadow:0 30px 70px rgba(0,0,0,.38);overflow:hidden}
.csp-rg-cta__in::before{content:'';position:absolute;inset:8px;border:1px solid rgba(212,184,92,.14);border-radius:2px;pointer-events:none}
.csp-rg-cta__in::after{content:'';position:absolute;top:0;left:50%;width:56%;height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,#f0d98a,transparent);box-shadow:0 0 18px rgba(212,184,92,.55)}
.csp-rg-cta__k{display:inline-flex;align-items:center;gap:.9rem;font-size:.64rem;font-weight:500;letter-spacing:.34em;text-transform:uppercase;color:#f0d98a}
.csp-rg-cta__k::before,.csp-rg-cta__k::after{content:'';width:34px;height:1px;background:linear-gradient(90deg,transparent,#d4b85c)}
.csp-rg-cta__k::after{transform:scaleX(-1)}
.csp-rg-cta__t{margin:1.1rem 0 0;padding:0;font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:clamp(2.2rem,4.6vw,3.4rem);line-height:1.05;color:#f4efe2;letter-spacing:0;text-transform:none}
.csp-rg-cta__t em{display:block;font-style:italic;color:#f0d98a}
.csp-rg-cta__p{max-width:33rem;margin:1.2rem auto 0;font-size:.98rem;line-height:1.75;font-weight:400;color:rgba(244,239,226,.82)}
.csp-rg-cta__a{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem;margin-top:2rem}
.csp-rg-cta__b{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:1rem 1.6rem;border:1px solid rgba(212,184,92,.32);border-radius:999px;font-size:.66rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#f0d98a;text-decoration:none;transition:border-color .4s,background .4s,box-shadow .4s,transform .4s}
.csp-rg-cta__b:hover{border-color:#f0d98a;background:rgba(240,217,138,.07);box-shadow:0 0 22px rgba(212,184,92,.18);color:#f0d98a}
.csp-rg-cta__b--gold{border-color:transparent;background:linear-gradient(135deg,#f0d98a,#c9a64a);color:#0a1628;box-shadow:0 10px 26px rgba(212,184,92,.22)}
.csp-rg-cta__b--gold:hover{background:linear-gradient(135deg,#f6e3a0,#d2b057);color:#0a1628;transform:translateY(-1px)}
@media (max-width:560px){.csp-rg-cta__b{flex:1 1 100%}}

/* Fin de page (v0.1.118) : la phrase « Le respect de ces règles… » devient une signature sans cadre,
   pour qu'un seul encadré conclue la page (le bloc « Votre parenthèse vous attend »). */
body.page-template-page-regles .csp-regles__footer-banner{border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;max-width:44rem;margin-left:auto!important;margin-right:auto!important;padding:clamp(2.6rem,5vw,3.6rem) 0 0!important}
body.page-template-page-regles .csp-regles__footer-banner::before{inset:auto;top:0;left:50%;width:min(220px,50%);height:1px;transform:translateX(-50%);border:0;border-radius:0;background:linear-gradient(90deg,transparent,rgba(212,184,92,.7),transparent)}
body.page-template-page-regles .csp-regles__footer-banner::after{content:'';position:absolute;top:-3px;left:50%;width:7px;height:7px;transform:translateX(-50%) rotate(45deg);background:var(--rg-gold-hi);box-shadow:0 0 12px rgba(212,184,92,.6)}
body.page-template-page-regles .csp-regles__footer-text{font-size:clamp(1.55rem,2.8vw,2.05rem)!important;line-height:1.3!important}
body.page-template-page-regles .csp-regles__footer-sub{color:rgba(244,239,226,.7)!important}
.csp-rg-cta{padding-top:clamp(2.4rem,5vw,3.4rem)}
/* Cases « L'essentiel » : la grille du thème coupait le haut des cases de la première ligne quand elles se soulèvent au survol. */
body.page-template-page-regles .csp-regles__essentiel-grille{overflow:visible!important;padding-top:6px!important}
/* Cases « L'essentiel » : le thème imposait une colonne d'icône de 28 px (pastille de 38 px collée au titre). On laisse respirer. */
body.page-template-page-regles .csp-regles__essentiel-case{grid-template-columns:38px minmax(0,1fr)!important;column-gap:1.1rem!important;row-gap:.4rem!important}

/* Volets du règlement : le thème plafonne un volet ouvert à 500 px, ce qui rognait les textes longs sur téléphone
   (« Conditions spéciales - Groupes & EVJF »). Ouverture souple, fermeture immédiate. */
body.page-template-page-regles .csp-accordion--open .csp-accordion__body { max-height: 1600px; transition: max-height .5s ease-in-out, padding .3s; }
body.page-template-page-regles .csp-accordion:not(.csp-accordion--open) .csp-accordion__body { transition: max-height .3s cubic-bezier(0, 1, 0, 1), padding .3s; }
