/* YORU — base : jetons, typo, boutons, en-tête, menu mobile, pied (d'après les maquettes v3–v6) */
:root{
  --blanc:#ffffff; --porcelaine:#f4f7fa; --glacier:#cfeaf7;
  --agate:#2a9bd8; --cobalt:#0b3a8c; --abysse:#06183d; --abysse2:#0a2250;
  --noir:#000; --nuit:#03070f; --elec:#3fd7ff;
  --encre:#0a1428; --gris:#4d5b70; --trait:#d9e2ec; --trait-n:#ffffff24;
  --display:"Marcellus",serif; --texte:"Zen Kaku Gothic New",system-ui,sans-serif; --kanji:"Shippori Mincho",serif;
  --wrap:84rem;
}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--texte);font-size:19px;line-height:1.7;color:var(--encre);background:var(--blanc);-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 40px}h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.06;letter-spacing:.005em}h2{font-size:58px}:focus-visible{outline:2px solid var(--elec);outline-offset:3px}.jp{font-family:var(--kanji);font-weight:600;letter-spacing:.32em}

/* Boutons : pleins, larges, lumineux */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;font-size:17px;font-weight:700;letter-spacing:.02em;padding:18px 34px;border-radius:999px;border:1.5px solid currentColor;transition:transform .3s,box-shadow .3s,background .3s,color .3s}.btn:hover{transform:translateY(-2px)}.btn--cobalt{background:var(--cobalt);border-color:var(--cobalt);color:#fff;box-shadow:0 12px 34px #0b3a8c55}.btn--cobalt:hover{box-shadow:0 16px 44px #0b3a8c88}.btn--blanc{background:#fff;border-color:#fff;color:var(--abysse);box-shadow:0 0 0 6px #ffffff26,0 14px 40px #0008}.btn--elec{background:var(--elec);border-color:var(--elec);color:#00131c;box-shadow:0 0 0 6px #3fd7ff2e,0 0 40px #3fd7ffaa}.btn--elec:hover{box-shadow:0 0 0 9px #3fd7ff38,0 0 60px #3fd7ff}.btn--fil{color:#fff;border-color:#ffffffa6;background:#ffffff12;backdrop-filter:blur(10px)}.btn--fil:hover{background:#fff;color:var(--abysse)}.btn--fil-n{color:var(--abysse);border-color:var(--abysse)}.btn--fil-n:hover{background:var(--abysse);color:#fff}

/* Ligne LED : le fil lumineux des plafonds du lieu */
.led{height:1px;background:linear-gradient(90deg,#3fd7ff00,#3fd7ff 50%,#3fd7ff00);box-shadow:0 0 12px #3fd7ff}

/* En-tête */
.tete{position:fixed;inset:0 0 auto;z-index:50;transition:background .5s,backdrop-filter .5s,color .5s}.tete .wrap{display:flex;align-items:center;gap:34px;height:96px}.tete .logo{width:62px;height:62px;border-radius:50%;background:#fff url(/assets/img/logo.png) center/56px no-repeat;flex:none}.tete nav{display:flex;gap:30px;margin-left:auto;font-size:17px;font-weight:500}.tete nav a{padding:6px 0;position:relative}.tete nav a[aria-current]::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--elec);box-shadow:0 0 8px var(--elec)}.tete .univers{font-size:15px;font-weight:700;padding:10px 18px;border-radius:999px;border:1.5px solid currentColor}.tete .btn{padding:14px 26px}.tete .burger{display:none;width:44px;height:44px;border:0;background:none;color:inherit;font-size:26px}.tete{color:#fff}.tete.plein{background:#06183de6;backdrop-filter:blur(14px)}.tete.plein-n{background:#000d;backdrop-filter:blur(14px)}

/* Apparitions au défilement (une seule famille d'effet) */
/* masqué seulement si le JS tourne : sans JS, tout reste visible */
.rv{transition:opacity 1.1s cubic-bezier(.2,.7,.2,1),transform 1.1s cubic-bezier(.2,.7,.2,1)}html.js .rv{opacity:0;transform:translateY(34px)}html.js .rv.vu{opacity:1;transform:none}.rv-img{transition:clip-path 1.4s cubic-bezier(.6,0,.2,1)}html.js .rv-img{clip-path:inset(14% 0 14% 0)}html.js .rv-img.vu{clip-path:inset(0 0 0 0)}

/* Pied */
.pied{padding:90px 0 110px;font-size:17px;background:var(--abysse);color:#dbe8f5;position:relative}.pied .grille{display:grid;grid-template-columns:1.3fr 1fr 1.2fr 1.2fr;gap:44px}.pied .logo{width:96px;height:96px;border-radius:50%;background:#fff url(/assets/img/logo.png) center/86px no-repeat;margin-bottom:18px}.pied h4{font-family:var(--display);font-weight:400;font-size:23px;color:#fff;margin-bottom:14px}.pied li{list-style:none;line-height:2;white-space:nowrap}.pied .bas{margin-top:64px;padding-top:24px;border-top:1px solid #ffffff26;display:flex;justify-content:space-between;font-size:16px}.pied .ody{font-weight:700;text-decoration:underline;color:#fff}.pied--noir{background:var(--nuit)}.a-confirmer{background:#fff4c2;color:#6b5200;font-size:14px;padding:2px 8px;border-radius:6px;font-weight:500;font-family:var(--texte);letter-spacing:0}

@media (max-width:900px){body{font-size:18px}h2{font-size:38px}.wrap{padding:0 20px}.tete .wrap{height:74px;gap:12px}.tete .logo{width:50px;height:50px;background-size:45px}.tete nav,.tete .univers,.tete .btn:not(.reserver-m){display:none}.tete .reserver-m{margin-left:auto;padding:11px 20px;font-size:15px}.tete .burger{display:block}.btn{padding:16px 22px}.pied .grille{grid-template-columns:1fr 1fr;gap:28px}.pied h4{font-size:20px}.pied .grille>div:first-child{grid-column:1/-1}.pied .grille>div:nth-child(3){grid-column:1/-1;order:5}.pied .bas{flex-direction:column;gap:8px}
  }
@media (min-width:901px){.tete .reserver-m{display:none}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv,.rv-img,.scan>img{opacity:1!important;transform:none!important;clip-path:none!important}html.js .descente .contenu{opacity:1!important;transform:none!important}}

/* Bouton de langue dans l'en-tête */
.tete .langue{font-size:14px;font-weight:700;padding:8px 12px;border-radius:999px;border:1px solid currentColor;opacity:.9}
/* Retour tactile */
.btn:active{transform:scale(.97);box-shadow:0 0 0 8px #3fd7ff33}

/* Transitions entre pages (navigateurs compatibles) */
@view-transition{navigation:auto}.tete .logo{view-transition-name:logo}::view-transition-old(root),::view-transition-new(root){animation-duration:.45s}

/* Menu mobile plein écran : volets bleu nuit, liens qui montent un à un */
.menu-m{position:fixed;inset:0;z-index:80;pointer-events:none;display:grid}.menu-m .volet{grid-area:1/1;background:var(--abysse);transform:translateY(-100%);transition:transform .6s cubic-bezier(.7,0,.2,1)}.menu-m .volet+.volet{background:#020b1f;transition-delay:.06s}.menu-m nav{grid-area:1/1;z-index:1;display:flex;flex-direction:column;justify-content:center;gap:14px;padding:90px 28px 40px}.menu-m nav a{font-family:var(--display);font-size:40px;color:#fff;opacity:0;transform:translateY(30px);transition:opacity .5s,transform .6s cubic-bezier(.2,.8,.2,1);transition-delay:calc(.25s + var(--i)*.06s)}.menu-m nav a[aria-current]{color:var(--elec);text-shadow:0 0 18px #3fd7ff88}.menu-m .bas{grid-area:1/1;z-index:1;align-self:end;padding:0 28px 34px;display:flex;flex-wrap:wrap;gap:10px;opacity:0;transition:opacity .5s .5s}.menu-m .fermer{grid-area:1/1;z-index:2;justify-self:end;align-self:start;margin:16px;width:48px;height:48px;border-radius:50%;border:1px solid #ffffff59;background:none;color:#fff;font-size:26px;opacity:0;transition:opacity .4s .3s}body.menu-ouvert .menu-m{pointer-events:auto}body.menu-ouvert .menu-m .volet{transform:none}body.menu-ouvert .menu-m nav a{opacity:1;transform:none}body.menu-ouvert .menu-m .bas,body.menu-ouvert .menu-m .fermer{opacity:1}body.menu-ouvert{overflow:hidden}
@media (min-width:901px){.menu-m{display:none}}

/* Lenis (défilement doux, ordinateur) */
html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}

/* Transitions nommées : le logo et la photo choisie passent d'une page à l'autre */
.porte .sceau{view-transition-name:logo}.porte .moitie.g{view-transition-name:photo-resto}.porte .moitie.d{view-transition-name:photo-club}::view-transition-group(logo),::view-transition-group(photo-resto),::view-transition-group(photo-club){animation-duration:.6s;animation-timing-function:cubic-bezier(.7,0,.2,1)}
@media (prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
