/* YORU — pages intérieures dans la DA des maquettes validées (05/10) : fond nuit, néons cyan + rose, cadres « carte de luxe ».
 * Chargé après les feuilles de page (pages.css, carte.css, reservation.css). */

/* ---------- commun : fond nuit, en-tête de page sur mur LED ---------- */
.page-int,.page-carte,.page-resa{background:var(--nuit);color:#fff}
.page-int .tete,.page-carte .tete{background:#03070fe6;backdrop-filter:blur(14px)}
.bandeau-page,.carte-hero{background:var(--nuit)}
.bandeau-page::after,.carte-hero::after{background:linear-gradient(90deg,#03070ff2,#03070fb3 55%,#03070f66),radial-gradient(circle at 85% 30%,#ff29a826,transparent 45%)}
.bandeau-page .jp,.carte-hero .jp{color:var(--rose);text-shadow:0 0 12px #ff29a888;letter-spacing:.4em}
.bandeau-page h1,.carte-hero h1{text-shadow:0 0 40px #3fd7ff33}
.bandeau-page p,.carte-hero p{color:#dbe6f2}

/* ---------- le lieu ---------- */
.galerie-lieu{background:var(--nuit)}
.g-ouvrir{border-radius:4px;box-shadow:0 30px 70px #000b,0 0 0 1px #3fd7ff22}
.grille-lieu figcaption{font-family:var(--italique);font-style:italic;font-size:28px}
.lieu-club{background:var(--nuit)}

/* ---------- contact : infos dans un cadre néon ---------- */
.contact{background:var(--nuit)}
.c-infos{position:relative;padding:40px 42px;border-radius:4px;background:linear-gradient(160deg,#06183df2,#03070fe6);box-shadow:0 40px 90px #000a,0 0 0 1px #ff29a859,inset 0 0 0 9px #06183d,inset 0 0 0 10px #3fd7ff38}
.c-infos dl{border-top:0}
.c-infos dl div{border-bottom:1px solid #ffffff1f}
.c-infos dl div:last-child{border-bottom:0}
.c-infos dt{font-family:var(--italique);font-style:italic;font-size:26px;color:#fff}
.c-infos dd{color:#dbe6f2}
.c-infos dd a{color:var(--elec)}
.c-plan{border-radius:4px;box-shadow:0 40px 90px #000a,0 0 0 1px #3fd7ff38;background:#06183d}
.c-plan iframe{filter:saturate(.8) brightness(.9)}
.c-actions .btn--cobalt{background:var(--elec);border-color:var(--elec);color:#03070f;box-shadow:0 0 30px #3fd7ff66}
.c-actions .btn--fil-n{color:#fff;border-color:#ffffff80;background:transparent}
.c-actions .btn--fil-n:hover{background:#fff;color:var(--nuit)}

/* ---------- mentions, confidentialité : lisibles sur fond nuit ---------- */
.legal{background:var(--nuit)}
.legal-corps{max-width:70ch}
.legal-corps h2{font-family:var(--display);font-size:34px;color:#fff;margin:48px 0 16px}
.legal-corps h2::before{content:"";display:block;width:56px;height:1px;margin-bottom:18px;background:linear-gradient(90deg,var(--elec),var(--rose));box-shadow:0 0 10px #ff29a8}
.legal-corps p,.legal-corps li{color:#dbe6f2}
.legal-corps strong{color:#fff}
.legal-corps a{color:var(--elec);text-decoration:underline;text-underline-offset:3px}
.page-int .a-confirmer,.page-carte .a-confirmer,.page-resa .a-confirmer{background:transparent;color:#ffc2e4;border:1px dashed #ff29a899;border-radius:999px}

/* ---------- la carte : rubriques en « carte de luxe » ---------- */
.page-carte .pastilles{background:#03070feb;border-bottom:1px solid #ffffff1f}
.page-carte .pastilles a{color:#dbe6f2;border-color:#ffffff33}
.page-carte .pastilles a:hover{border-color:var(--elec)}
.page-carte .pastilles a.on{background:linear-gradient(90deg,#3fd7ff,#ff29a8);color:#03070f;border-color:transparent;box-shadow:0 0 18px #ff29a855}
.carte-corps{background:var(--nuit)}
.rubrique{border-bottom:0;margin:34px 0;padding:56px 48px;border-radius:4px;background:linear-gradient(160deg,#06183df2,#03070fe6);box-shadow:0 0 0 1px #3fd7ff38,inset 0 0 0 9px #06183d,inset 0 0 0 10px #ff29a82e,0 40px 90px #000a}
.r-vue{border-radius:4px;box-shadow:0 30px 60px #000b,0 0 0 1px #ff29a844}
.r-tete h2{color:#fff;font-family:var(--italique);font-style:italic;font-size:46px}
.compte{color:var(--rose);background:#ff29a81a}
.article{border-bottom:1px solid #ffffff1a}
.a-ligne b{font-family:var(--italique);font-style:italic;font-weight:500;font-size:25px;color:#fff}
.a-ligne small{color:#9fb2c6}
.a-ligne .px{color:var(--rose);text-shadow:0 0 10px #ff29a866}
.article p{color:#c9d6e6}
.recherche-vide{color:#dbe6f2}
.carte-cta{background:linear-gradient(120deg,#06183d,#03070f)}
@media (max-width:900px){
  .rubrique{padding:0;margin:0 0 12px;background:none;box-shadow:none}
  .r-tete{background:linear-gradient(160deg,#06183d,#03070f);border:1px solid #3fd7ff38}
  .r-tete h2{font-size:24px}
  .rubrique.ouverte .r-tete{box-shadow:0 0 0 1px #ff29a8,0 0 24px #ff29a844}
  .a-ligne b{font-size:21px}
  .a-photo{background-color:var(--rose)!important}
  .feuille{background:#06183d;color:#fff}
  .feuille .poignee{background:#ffffff59}
  .feuille .fermer{background:#03070fe6;color:#fff}
  .feuille .a-ligne b{color:#fff}
}

/* ---------- réserver : module Ody lisible sur fond LED ---------- */
.page-resa .booking-zc{--zc-bg:#0b1630;--zc-ink:#eef5fb;--zc-ink-soft:#c9d6e6;--zc-ink-muted:#9fb2c6;--zc-line:#ffffff24;--zc-line-strong:#ffffff40;--zc-accent:#3fd7ff}
.page-resa .booking-zc .zc-cta{background:var(--elec);color:#03070f;border-color:var(--elec);box-shadow:0 0 30px #3fd7ff55}
/* boutons du module : fond nuit, sélection en accent avec texte sombre lisible */
.page-resa .booking-zc .zc-party-btn,.page-resa .booking-zc .zc-date-card,.page-resa .booking-zc .zc-slot,
.page-resa .booking-zc .zc-date-wrap input[type="date"],.page-resa .booking-zc .zc-field input,.page-resa .booking-zc .zc-field textarea{background:#03070f;color:#eef5fb;color-scheme:dark}
.page-resa .booking-zc .zc-party-btn.is-active,.page-resa .booking-zc .zc-date-card.is-active,.page-resa .booking-zc .zc-slot.is-active{background:var(--zc-accent);border-color:var(--zc-accent);color:#03070f}
.page-resa .booking-zc .zc-date-card.is-active *,.page-resa .booking-zc .zc-slot.is-active *{color:#03070f}
.page-resa .booking-zc .zc-slot.is-active .zc-slot-dot{background:#03070f}
.page-resa .booking-zc .zc-cta:disabled{background:#ffffff24;color:#9fb2c6;border-color:transparent;box-shadow:none}
/* mode carré club : accent rose */
.page-resa.univers-club .booking-zc{--zc-accent:#ff29a8}
.page-resa.univers-club .booking-zc .zc-cta:not(:disabled){background:var(--rose);color:#fff;border-color:var(--rose);box-shadow:0 0 30px #ff29a888}
.page-resa.univers-club .booking-zc .zc-party-btn.is-active,.page-resa.univers-club .booking-zc .zc-date-card.is-active,.page-resa.univers-club .booking-zc .zc-slot.is-active,
.page-resa.univers-club .booking-zc .zc-date-card.is-active *,.page-resa.univers-club .booking-zc .zc-slot.is-active *{color:#fff}
/* contact : plan Google Maps à droite des infos, même hauteur */
@media (min-width:901px){.grille-contact{align-items:stretch}.grille-contact .c-plan{height:auto;min-height:520px}}
/* le lieu : grand carrousel automatique */
.lieu-carrousel{background:var(--nuit);padding:0 0 30px}
.lc{position:relative;height:min(82vh,820px);overflow:hidden;background:#000}
.lc-diapo{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1.1s ease}
.lc-diapo.on{opacity:1}
.lc-diapo img{width:100%;height:100%;object-fit:cover;transform:scale(1.06);transition:transform 6s ease-out}
.lc-diapo.on img{transform:scale(1)}
.lc-diapo::after{content:"";position:absolute;inset:0;background:linear-gradient(#03070f00 55%,#03070fd9)}
.lc-diapo figcaption{position:absolute;left:max(40px,calc((100vw - 84rem)/2 + 40px));bottom:64px;z-index:2;font-family:var(--italique);font-style:italic;font-size:clamp(32px,4vw,56px);color:#fff;text-shadow:0 0 30px #ff29a888}
.lc-prec,.lc-suiv{position:absolute;top:50%;z-index:3;width:56px;height:56px;margin-top:-28px;border-radius:50%;border:1px solid #ffffff80;background:#03070f80;color:#fff;font-size:22px;cursor:pointer;backdrop-filter:blur(6px);transition:background .3s,color .3s}
.lc-prec:hover,.lc-suiv:hover{background:#fff;color:var(--nuit)}
.lc-prec{left:24px}.lc-suiv{right:24px}
.lc-points{position:absolute;left:0;right:0;bottom:26px;z-index:3;display:flex;justify-content:center;gap:8px}
.lc-point{width:10px;height:10px;padding:0;border-radius:50%;border:0;background:#ffffff59;cursor:pointer;transition:width .3s,background .3s}
.lc-point.on{width:30px;border-radius:5px;background:linear-gradient(90deg,#3fd7ff,#ff29a8)}
@media (max-width:900px){.lc{height:78svh}.lc-prec,.lc-suiv{top:auto;bottom:16px;margin:0;width:48px;height:48px}.lc-diapo figcaption{left:20px;bottom:84px}.lc-points{bottom:34px}}
html:not(.js) .lc{height:auto;overflow:visible}html:not(.js) .lc-diapo{position:relative;opacity:1;height:60vh}html:not(.js) .lc-prec,html:not(.js) .lc-suiv,html:not(.js) .lc-points{display:none}
/* le lieu : photos à taille raisonnable — grille régulière, carrousel moins haut */
.lc{height:min(64vh,620px)}
.grille-lieu{grid-template-columns:repeat(5,1fr)!important;gap:14px!important}
@media (min-width:901px) and (max-width:1200px){.grille-lieu{grid-template-columns:repeat(4,1fr)!important}}
.grille-lieu figure,.grille-lieu .g-0,.grille-lieu .g-1,.grille-lieu .g-2,.grille-lieu .g-3,.grille-lieu figure:last-child{grid-column:auto!important}
.g-ouvrir,.grille-lieu .g-1 .g-ouvrir,.grille-lieu .g-2 .g-ouvrir,.grille-lieu figure:last-child .g-ouvrir{aspect-ratio:4/3!important}
.grille-lieu figcaption{font-size:19px;left:12px;bottom:10px}
@media (max-width:900px){.lc{height:56svh}.grille-lieu{grid-template-columns:repeat(2,1fr)!important;gap:10px!important}.grille-lieu figcaption{font-size:16px;left:10px;bottom:8px}}
.lc-pause{position:absolute;right:24px;bottom:18px;z-index:3;width:44px;height:44px;border-radius:50%;border:1px solid #ffffff80;background:#03070f80;color:#fff;font-size:13px;cursor:pointer;backdrop-filter:blur(6px)}
.lc-pause:hover{background:#fff;color:var(--nuit)}
@media (max-width:900px){.lc-pause{right:50%;margin-right:-22px;bottom:70px}}
html:not(.js) .lc-pause{display:none}
/* la carte : vague blanche (même marbre liquide que la section « La carte » de l'accueil), fixe à l'écran derrière les rubriques */
.carte-fond{position:relative;isolation:isolate;background:#fff;overflow:clip}
.carte-fond>.fond-led{position:sticky;top:0;display:block;width:100%;height:100vh;margin-bottom:-100vh;z-index:0;background:#fff}
.carte-fond>.carte-corps{position:relative;z-index:1;background:transparent}
