/* Studio MJ : feuille commune des pages (refonte en rubriques, novembre 2026).
   Clair pour le contenu, bandeaux « scène » noirs, or métallisé ; accent rose pour les pages « Pour les kids ». */
@font-face{font-family:"Inter";font-style:normal;font-weight:400 800;font-display:swap;src:url(../polices/inter-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-weight:400 800;font-display:swap;src:url(../polices/inter-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{
  --bg:#fbfbfd; --bg-2:#f3f2f5; --carte:#fff; --ink:#1d1d1f; --ink-2:#6e6e73; --line:rgba(0,0,0,.09);
  --stage:#0b0b0c; --stage-2:#17171a; --stage-line:rgba(255,255,255,.10); --stage-ink:#f5f5f7; --stage-ink-2:#a1a1a6;
  --gold-1:#f3d9a4; --gold-2:#c9a063; --gold-3:#8a6232; --gold-txt:#e7c48a;
  --gold:linear-gradient(145deg,var(--gold-1),var(--gold-2) 55%,var(--gold-3));
  --accent:#8a6232; --accent-doux:#f6ecdc; --accent-scene:#e7c48a;
  --font:-apple-system,BlinkMacSystemFont,"SF Pro Display","Inter",system-ui,sans-serif;
  --rayon:24px; --ombre:0 1px 2px rgba(0,0,0,.04),0 14px 40px -16px rgba(0,0,0,.22);
  color-scheme:light;
}
body.kids{--accent:#c44d69;--accent-doux:#fbe9ee;--accent-scene:#f2a7b8}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;line-height:1.55;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--gold-2);outline-offset:3px;border-radius:8px}
.enveloppe{width:min(1180px,100% - 32px);margin-inline:auto}

/* ---------- En-tête ---------- */
.entete{position:sticky;top:0;z-index:50;background:rgba(11,11,12,.94);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--stage-ink)}
.rang{display:flex;align-items:center;gap:14px;height:66px;width:min(1240px,100% - 32px);margin-inline:auto}
.marque{display:flex;align-items:center;gap:10px;font-weight:700;font-size:17px;letter-spacing:-.01em;text-decoration:none;white-space:nowrap}
.marque i{width:32px;height:32px;border-radius:9px;background:var(--gold);display:grid;place-items:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.5)}
.marque svg{width:17px;height:17px}
.marque-logo{width:34px;height:34px;border-radius:10px;display:block;box-shadow:0 0 0 1px rgba(231,196,138,.35),0 4px 12px -4px rgba(0,0,0,.6)}
.nav{display:flex;gap:2px;list-style:none;margin-inline:auto}
.rang>nav{margin-inline:auto}
.nav>li>a,.nav>li>button{display:flex;align-items:center;gap:5px;padding:9px 12px;border:0;border-radius:999px;background:none;font-size:14px;font-weight:500;color:var(--stage-ink);text-decoration:none;cursor:pointer;white-space:nowrap;opacity:.88}
.nav>li>a:hover,.nav>li>button:hover,.nav>li.ouvert>button{opacity:1;background:rgba(255,255,255,.08)}
.nav>li.actif>a,.nav>li.actif>button{opacity:1;color:var(--gold-txt)}
.chevron{width:12px;height:12px;transition:transform .25s}
.nav>li.ouvert .chevron{transform:rotate(180deg)}
.actions{display:flex;align-items:center;gap:8px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 18px;border-radius:999px;font-size:15px;font-weight:600;text-decoration:none;white-space:nowrap;border:0;cursor:pointer;transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-1px)}
.btn svg{width:18px;height:18px;flex:none}
.btn-or{background:var(--gold);color:#1d1408;box-shadow:inset 0 1px 0 rgba(255,255,255,.45)}
.btn-agenda{background:#fff;color:var(--ink);box-shadow:0 0 0 3px rgba(231,196,138,.38)}
.btn-agenda:hover{box-shadow:0 0 0 4px rgba(231,196,138,.65)}
.btn-clair{background:rgba(255,255,255,.1);color:var(--stage-ink);box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}
.btn-noir{background:var(--ink);color:#fff}
.entete .btn{font-size:14px;padding:10px 16px}
.btn-agenda .court{display:none}
.burger{display:none;width:42px;height:42px;border:0;border-radius:12px;background:rgba(255,255,255,.08);cursor:pointer;align-content:center;justify-content:center;gap:5px}
.burger span{display:block;width:18px;height:1.6px;background:var(--stage-ink);transition:transform .25s}
.burger[aria-expanded="true"] span:first-child{transform:translateY(3.3px) rotate(45deg)}
.burger[aria-expanded="true"] span:last-child{transform:translateY(-3.3px) rotate(-45deg)}

/* Grand panneau (ordinateur) */
.panneau{display:none;position:absolute;left:0;right:0;top:66px;background:var(--stage-2);border-top:1px solid var(--stage-line);box-shadow:0 30px 60px -20px rgba(0,0,0,.6)}
.nav>li.ouvert>.panneau,.nav>li:focus-within>.panneau{display:block}
.panneau-in{width:min(1240px,100% - 32px);margin-inline:auto;padding-block:28px 32px;display:grid;grid-template-columns:minmax(200px,260px) 1fr;gap:28px}
.panneau .intro p:first-child{font-size:24px;font-weight:700;letter-spacing:-.02em;color:#fff}
.panneau .intro p{margin-top:8px;font-size:14px;color:var(--stage-ink-2)}
.panneau .intro a{display:inline-block;margin-top:14px;font-size:14px;font-weight:600;color:var(--gold-txt);text-decoration:none}
.colonnes{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:24px}
.colonne{display:grid;align-content:start;gap:8px;padding-left:18px;border-left:1px solid var(--stage-line)}
.colonne>a{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-txt);text-decoration:none}
.colonne ul{list-style:none;display:grid;gap:2px}
.colonne li a{display:block;padding:7px 0;font-size:17px;font-weight:500;color:#fff;text-decoration:none}
.colonne li a:hover,.colonne>a:hover,.panneau .intro a:hover{text-decoration:underline;text-underline-offset:4px}

/* Tiroir (téléphone) */
.tiroir{display:none;background:var(--stage-2);border-top:1px solid var(--stage-line);padding:6px 20px 24px;max-height:calc(100vh - 66px);overflow:auto}
.tiroir.ouvert{display:block}
.tiroir ul{list-style:none}
.tiroir .n1>li{border-bottom:1px solid var(--stage-line)}
.tiroir .ligne{display:flex;align-items:center;gap:8px}
.tiroir .ligne a{flex:1;min-width:0;text-decoration:none;color:#fff;padding:15px 0;font-size:18px;font-weight:600}
.tiroir .ligne button{flex:none;width:44px;height:44px;border:0;border-radius:12px;background:rgba(255,255,255,.06);color:#fff;display:grid;place-items:center;cursor:pointer}
.tiroir .ligne button svg{width:16px;height:16px;transition:transform .25s}
.tiroir .ligne button[aria-expanded="true"] svg{transform:rotate(180deg)}
.tiroir .sous{display:none}
.tiroir .sous.ouvert{display:block}
.tiroir .n2{padding:0 0 10px 14px;border-left:2px solid var(--gold-3);margin-left:4px}
.tiroir .n2 .ligne a{font-size:16px;font-weight:500;padding:11px 0;color:var(--stage-ink)}
.tiroir .n3{padding:0 0 6px 14px}
.tiroir .n3 a{display:block;text-decoration:none;color:var(--gold-txt);font-size:16px;padding:9px 0}
.tiroir [aria-current="page"]{color:var(--gold-txt)!important}
.tiroir .btn{width:100%;margin-top:18px;padding:15px}

@media (max-width:1200px){
  .nav,.entete .btn-or{display:none}
  .burger{display:grid}
  .rang{gap:10px}
  .actions{margin-left:auto}
  .entete .btn-agenda{padding:9px 13px}
  .btn-agenda .long{display:none}
  .btn-agenda .court{display:inline}
}
@media (min-width:1201px){.tiroir{display:none!important}}
/* écrans d'ordinateur moyens : menu plus serré (le logo mène à l'accueil, le bouton Agenda garde son icône) */
@media (min-width:1201px) and (max-width:1340px){.nav>li:first-child{display:none}.nav>li>a,.nav>li>button{padding:9px 9px;font-size:13.5px}.rang{gap:10px}.entete .btn-agenda .long{display:none}.entete .btn-agenda .court{display:inline}}

/* ---------- Haut de page ---------- */
.tete{background:var(--stage);color:var(--stage-ink);position:relative;overflow:hidden;padding-block:40px 56px}
.tete::before{content:"";position:absolute;inset:-30% 40% auto -10%;height:110%;background:radial-gradient(closest-side,rgba(201,160,99,.22),transparent);pointer-events:none}
.tete>.enveloppe{position:relative}
.fil{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13px;color:var(--stage-ink-2);list-style:none;margin-bottom:22px}
.fil a{text-decoration:none}
.fil a:hover{color:#fff}
.fil li+li::before{content:"›";margin-right:6px;opacity:.6}
.sur{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-scene)}
.tete h1{margin-top:10px;font-size:clamp(38px,6.5vw,72px);line-height:1;letter-spacing:-.035em;font-weight:800;text-wrap:balance}
.chapo{margin-top:18px;font-size:clamp(17px,2vw,21px);color:var(--stage-ink-2);max-width:40ch}
.boutons{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.reperes{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin-top:26px}
.reperes li{font-size:14px;padding:7px 13px;border-radius:999px;background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.tete-2col>.enveloppe{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:center}
.tete-photo{position:relative}
.tete-photo img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:32px;box-shadow:0 30px 60px -20px rgba(0,0,0,.7)}
.tete-photo figcaption{margin-top:10px;font-size:13px;color:var(--stage-ink-2)}
@media (max-width:860px){.tete-2col>.enveloppe{grid-template-columns:1fr;gap:32px}.tete-photo img{aspect-ratio:4/3}}

/* ---------- Sections ---------- */
.section{padding-block:64px}
.section-alt{background:var(--bg-2)}
.section h2{font-size:clamp(28px,4vw,42px);line-height:1.08;letter-spacing:-.03em;font-weight:700;text-wrap:balance}
.section .intro{margin-top:10px;color:var(--ink-2);font-size:17px;max-width:60ch}
.section .sur{color:var(--accent)}
.section .sur+h2{margin-top:8px}

.programme{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:28px}
.programme li{display:flex;align-items:center;gap:16px;background:var(--carte);border:1px solid var(--line);border-radius:20px;padding:18px 20px;font-size:17px;font-weight:600;line-height:1.3}
.programme .ico{flex:none;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:var(--accent-doux);color:var(--accent)}
.programme .ico svg{width:26px;height:26px}
.programme small{display:block;font-weight:400;font-size:14px;color:var(--ink-2);margin-top:2px}

.formules{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:16px;margin-top:28px;align-items:start}
@media (max-width:900px){.formules{grid-template-columns:1fr}}
.formule{background:var(--carte);border:1px solid var(--line);border-radius:var(--rayon);padding:26px;display:grid;gap:14px;box-shadow:var(--ombre)}
.formule .etiquette{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.prix{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px}
.prix b{font-size:46px;line-height:1;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.prix span{color:var(--ink-2);font-size:16px}
.formule ul{list-style:none;display:grid;gap:8px;padding-top:14px;border-top:1px dashed var(--line)}
.formule li{position:relative;padding-left:22px;font-size:15px}
.formule li::before{content:"";position:absolute;left:2px;top:.55em;width:8px;height:8px;border-radius:50%;background:var(--accent)}
.formule li strong{color:var(--accent)}
.formule.vedette{background:var(--stage);color:var(--stage-ink);border-color:transparent}
.formule.vedette .etiquette{color:var(--gold-txt)}
.formule.vedette .prix b{background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.formule.vedette .prix span{color:var(--stage-ink-2)}
.formule.vedette ul{border-top-color:var(--stage-line)}
.formule.vedette li::before{background:var(--gold-2)}
.formule.vedette li strong{color:var(--gold-txt)}
.formule p.detail{font-size:15px;color:var(--ink-2)}

.exemples{margin-top:28px;background:var(--carte);border:1px solid var(--line);border-radius:var(--rayon);padding:22px 24px}
.exemples h3{font-size:17px;font-weight:700}
.exemples p{font-size:14px;color:var(--ink-2);margin-top:4px}
.defile{overflow-x:auto;margin-top:12px}
.exemples table{width:100%;border-collapse:collapse;font-size:15px;font-variant-numeric:tabular-nums}
.exemples tr{display:grid;grid-template-columns:1fr auto;gap:2px 16px;padding:12px 0;border-top:1px solid var(--line)}
.exemples td{padding:0}
.exemples td:nth-child(1){grid-column:1;font-weight:600}
.exemples td:nth-child(2){grid-column:1;color:var(--ink-2);font-size:14px}
.exemples td:nth-child(3){grid-column:2;grid-row:1 / span 2;align-self:center;font-weight:800;font-size:20px;white-space:nowrap}

.avis{display:flex;align-items:center;gap:14px;margin-top:20px;padding:16px 20px;border-radius:18px;background:var(--accent-doux);color:var(--ink);font-weight:600}
.avis svg{flex:none;width:26px;height:26px;color:var(--accent)}

.reserver{display:grid;grid-template-columns:1fr auto;gap:24px 40px;align-items:center;background:var(--stage);color:var(--stage-ink);border-radius:32px;padding:36px}
.reserver h2{color:#fff}
.reserver p{margin-top:8px;color:var(--stage-ink-2);max-width:48ch}
.reserver .boutons{margin-top:0;justify-content:flex-end}
.reserver address{font-style:normal;margin-top:14px;font-size:15px;color:var(--stage-ink-2)}
.reserver address a{color:var(--gold-txt)}
@media (max-width:760px){.reserver{grid-template-columns:1fr;padding:28px}.reserver .boutons{justify-content:flex-start}}

.cartes{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin-top:28px}
.carte{display:grid;gap:6px;align-content:start;background:var(--carte);border:1px solid var(--line);border-radius:20px;padding:22px;text-decoration:none;min-width:0;transition:border-color .2s,transform .2s}
.carte:hover{border-color:var(--gold-2);transform:translateY(-2px)}
.carte b{font-size:19px;letter-spacing:-.01em}
.carte span{font-size:14px;color:var(--ink-2)}
.carte em{font-style:normal;font-size:13px;font-weight:600;color:var(--gold-3);margin-top:4px}
.bientot{color:var(--ink-2);font-size:17px;max-width:60ch}

/* Accueil */
.heros{background:var(--stage);color:var(--stage-ink);padding-block:72px 64px;text-align:center;position:relative;overflow:hidden}
.heros::before{content:"";position:absolute;inset:-40% 10% auto;height:120%;background:radial-gradient(closest-side,rgba(201,160,99,.28),transparent);pointer-events:none}
.heros>*{position:relative}
.heros .sur{color:var(--gold-txt);letter-spacing:.02em;text-transform:none;font-size:15px}
.heros h1{margin-top:10px;font-size:clamp(44px,9vw,96px);line-height:1;letter-spacing:-.045em;font-weight:800}
.heros h1 span{background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.bloc-agenda{display:grid;grid-template-columns:1fr auto;gap:18px 28px;align-items:center;background:var(--stage);color:var(--stage-ink);border-radius:28px;padding:30px;box-shadow:inset 0 0 0 1px rgba(231,196,138,.28)}
.bloc-agenda .sur{color:var(--gold-txt)}
.bloc-agenda h2{margin-top:6px;font-size:30px;letter-spacing:-.02em;color:#fff}
.bloc-agenda p{margin-top:6px;color:var(--stage-ink-2);max-width:52ch}
@media (max-width:640px){.bloc-agenda{grid-template-columns:1fr}}

/* Texte courant (mentions légales…) */
.texte{display:grid;gap:12px;max-width:72ch}
.texte h2{font-size:22px;letter-spacing:-.015em;margin-top:22px}
.texte p,.texte li{color:var(--ink-2)}
.texte b{color:var(--ink)}
.texte ul{padding-left:20px;display:grid;gap:4px}

/* ---------- Pied de page ---------- */
.pied{background:var(--stage);color:var(--stage-ink-2);padding-block:48px 28px;font-size:15px}
.pied-grille{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
@media (max-width:760px){.pied-grille{grid-template-columns:1fr}}
.pied b{display:block;color:#fff;font-size:16px;margin-bottom:10px}
.pied ul{list-style:none;display:grid;gap:6px}
.pied a{text-decoration:none}
.pied a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.pied address{font-style:normal;display:grid;gap:4px}
.pied-bas{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:36px;padding-top:20px;border-top:1px solid var(--stage-line);font-size:13px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* ---------- Accueil : profil de Jessica ---------- */
.profil{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:start}
@media (max-width:900px){.profil{grid-template-columns:1fr;gap:32px}}
.profil-photo{position:sticky;top:96px}
@media (max-width:900px){.profil-photo{position:static}}
.profil-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 55%;border-radius:32px;box-shadow:var(--ombre)}
.profil-photo figcaption{margin-top:12px;font-size:14px;color:var(--ink-2)}
.profil-photo figcaption b{color:var(--ink)}
.citation{margin-top:22px;font-size:clamp(20px,2.4vw,26px);line-height:1.4;letter-spacing:-.01em;font-weight:500;max-width:34ch}
.citation em{font-style:normal;background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:700}
.recit{display:grid;gap:14px;margin-top:24px;color:var(--ink-2);font-size:17px;max-width:62ch}
.recit strong{color:var(--ink)}
.chronologie{list-style:none;margin-top:34px;display:grid;gap:0;border-left:2px solid var(--gold-2);padding-left:0}
.chronologie>li{position:relative;display:grid;grid-template-columns:72px 1fr;gap:16px;padding:0 0 22px 22px}
.chronologie>li::before{content:"";position:absolute;left:-7px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--bg);box-shadow:0 0 0 3px var(--gold-2)}
.chronologie .an{font-weight:800;font-size:18px;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--gold-3)}
.chronologie p{color:var(--ink);font-weight:600}
.chronologie ul{margin-top:6px;padding-left:18px;display:grid;gap:4px;color:var(--ink-2);font-size:15px;list-style:disc}
@media (max-width:520px){.chronologie>li{grid-template-columns:1fr;gap:2px}}
.atouts{margin-top:8px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.atouts div{background:var(--carte);border:1px solid var(--line);border-radius:18px;padding:16px 18px;font-size:15px;color:var(--ink-2)}
.atouts b{display:block;color:var(--ink);font-size:15px;margin-bottom:4px}
.heros .chapo{margin:18px auto 0;max-width:46ch}
.heros .boutons{justify-content:center}

/* ---------- Encadré d'avis ---------- */
.section-avis{padding-top:8px}
.temoignages{background:linear-gradient(180deg,#fffaf2,#fff);border:1px solid rgba(201,160,99,.35);border-radius:32px;padding:32px;box-shadow:var(--ombre)}
body.kids .temoignages{background:linear-gradient(180deg,#fff5f7,#fff);border-color:rgba(196,77,105,.25)}
.temoignages-tete{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px}
.temoignages-tete h2{font-size:clamp(24px,3vw,32px)}
.note-google{display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border-radius:999px;background:#fff;border:1px solid var(--line);text-decoration:none;font-size:14px;color:var(--ink-2)}
.note-google b{color:var(--ink)}
.etoiles{color:#d9a441;letter-spacing:2px;font-size:15px;line-height:1}
.temoignages-liste{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:24px}
.temoignage{display:grid;align-content:start;gap:12px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:22px}
.temoignage blockquote p{font-size:17px;line-height:1.45;font-weight:500;letter-spacing:-.005em}
.temoignage figcaption{font-size:14px;color:var(--ink-2)}
.temoignage figcaption b{color:var(--ink)}
.lire-avis{display:inline-block;margin-top:18px;font-size:15px;font-weight:600;color:var(--accent);text-decoration:none}
.lire-avis:hover{text-decoration:underline;text-underline-offset:4px}

/* ---------- Infos pratiques et paliers de prix ---------- */
.infos{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-top:28px}
.infos li{display:grid;align-content:start;gap:10px;background:var(--carte);border:1px solid var(--line);border-radius:22px;padding:22px}
.infos .ico{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:var(--accent-doux);color:var(--accent)}
.infos .ico svg{width:24px;height:24px}
.infos b{font-size:19px;letter-spacing:-.01em;line-height:1.25}
.infos span{color:var(--ink-2);font-size:15px}
.mots{display:flex;flex-wrap:wrap;gap:6px}
.mots i{font-style:normal;font-size:13px;font-weight:600;padding:5px 10px;border-radius:999px;background:var(--accent-doux);color:var(--accent)}
.paliers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:28px}
@media (max-width:820px){.paliers{grid-template-columns:repeat(2,minmax(0,1fr))}}
.palier{display:grid;align-content:start;gap:6px;background:var(--carte);border:1px solid var(--line);border-radius:22px;padding:22px 18px;text-align:center}
.palier .qui{font-size:14px;font-weight:700;color:var(--ink-2)}
.palier .montant{font-size:40px;font-weight:800;letter-spacing:-.04em;line-height:1.05;font-variant-numeric:tabular-nums}
.palier .unite{font-size:14px;color:var(--ink-2)}
.palier.annule .montant{font-size:20px;line-height:1.6;color:var(--ink-2)}
.palier.top{background:var(--stage);color:var(--stage-ink);border-color:transparent}
.palier.top .montant{background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.palier.top .qui,.palier.top .unite{color:var(--stage-ink-2)}
.liste-points{display:grid;gap:10px;margin-top:22px;list-style:none;max-width:62ch}
.liste-points li{position:relative;padding-left:24px;color:var(--ink-2)}
.liste-points li::before{content:"";position:absolute;left:4px;top:.6em;width:8px;height:8px;border-radius:50%;background:var(--gold-2)}
.liste-points b{color:var(--ink)}
.deux-col{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:start}
@media (max-width:900px){.deux-col{grid-template-columns:1fr;gap:28px}}
.paliers.trois{grid-template-columns:repeat(3,minmax(0,1fr))}
.paliers.deux{grid-template-columns:repeat(2,minmax(0,1fr));max-width:720px}
@media (max-width:820px){.paliers.trois{grid-template-columns:1fr}}
@media (max-width:520px){.paliers.deux{grid-template-columns:1fr}}
.palier .plus{margin-top:6px;font-size:14px;font-weight:700;color:var(--accent)}
.palier.top .plus{color:var(--gold-txt)}
.creneaux{display:grid;grid-template-columns:auto 1fr;gap:6px 28px;align-items:center;margin-top:24px;background:var(--stage);color:var(--stage-ink);border-radius:24px;padding:24px 28px;max-width:640px}
.creneaux b{color:var(--gold-txt);font-size:18px}
.creneaux span{font-size:20px;font-weight:700;font-variant-numeric:tabular-nums}
@media (max-width:520px){.creneaux{grid-template-columns:1fr}}
.devise{margin-top:14px;font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-txt)}

/* ---------- Piano jouable (repris du site d'origine) ---------- */
.section-piano{background:linear-gradient(180deg,var(--bg),#f1ece4);overflow:hidden}
.section-piano .centre{text-align:center}
.section-piano .centre .intro{margin-inline:auto}
.piano-wrap{margin-top:40px}
.piano{position:relative;margin:0 auto;max-width:980px;padding:22px 24px 28px;border-radius:36px;background:linear-gradient(170deg,#2c2c2f,#0d0d0f 60%);box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 60px 100px -40px rgba(0,0,0,.6),0 0 0 1px rgba(0,0,0,.4)}
.piano::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,rgba(255,255,255,.14),transparent 30%)}
.piano-top{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:18px;padding:0 6px;font-size:12px;color:#86868b}
.piano-top .tag-gold{color:#e7c48a;font-weight:700;letter-spacing:.22em;text-transform:uppercase;font-size:11px}
.piano-top .hint{text-align:right}
.screen{min-width:150px;padding:8px 18px;border-radius:14px;text-align:center;background:linear-gradient(180deg,#050506,#151517);box-shadow:inset 0 2px 6px rgba(0,0,0,.8),0 1px 0 rgba(255,255,255,.08);font-size:20px;font-weight:700;color:#f3d9a4;letter-spacing:-.01em;text-shadow:0 0 14px rgba(231,196,138,.75)}
.screen small{font-size:12px;color:#86868b;font-weight:500;margin-left:6px;text-shadow:none}
.screen.pop{animation:pop .35s cubic-bezier(.34,1.56,.64,1)}
@keyframes pop{from{transform:scale(1.12)}to{transform:none}}
.keys{position:relative;display:flex;height:clamp(150px,22vw,240px);user-select:none;-webkit-user-select:none;touch-action:none}
.wk{flex:1;position:relative;margin:0 2px;border-radius:0 0 12px 12px;cursor:pointer;background:linear-gradient(180deg,#d9d9dd 0%,#fff 7%,#fbfbfb 86%,#e6e6ea 100%);box-shadow:inset 0 -7px 0 #d2d2d7,inset 0 1px 0 #fff,0 5px 8px -3px rgba(0,0,0,.6);transition:transform .07s,box-shadow .07s,background .25s}
.wk.down{transform:translateY(3px);background:linear-gradient(180deg,#c9a063 0%,#f6e3bd 10%,#fff6e6 85%,#ecd3a6 100%);box-shadow:inset 0 -2px 0 #d9bd8c,0 1px 2px rgba(0,0,0,.5),0 0 34px rgba(231,196,138,.55)}
.bk{position:absolute;top:0;width:calc(100% / 14 * .6);height:62%;z-index:2;cursor:pointer;border-radius:0 0 8px 8px;transform:translateX(-50%);background:linear-gradient(180deg,#3b3b3e,#121214 72%,#000);box-shadow:inset 0 -6px 0 #2a2a2d,inset 1px 0 0 rgba(255,255,255,.1),0 7px 9px -3px rgba(0,0,0,.75);transition:transform .07s,box-shadow .07s,background .25s}
.bk::after{content:"";position:absolute;left:18%;right:18%;top:5%;height:58%;border-radius:4px;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.24),rgba(255,255,255,0))}
.bk.down{transform:translateX(-50%) translateY(2px);background:linear-gradient(180deg,#a57a42,#4a3216 75%,#2a1b08);box-shadow:inset 0 -2px 0 #2a1b08,0 2px 3px rgba(0,0,0,.7),0 0 26px rgba(231,196,138,.6)}
.lbl{position:absolute;left:0;right:0;bottom:14px;text-align:center;font-size:11px;font-weight:600;color:#aeaeb2;pointer-events:none}
.bk .lbl{bottom:9px;color:#6e6e73}
.fly{position:absolute;top:-6px;z-index:5;pointer-events:none;width:26px;height:34px;animation:fly 1.5s cubic-bezier(.2,.8,.2,1) forwards}
@keyframes fly{0%{opacity:0;transform:translate(-50%,0) scale(.5)}15%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--dx)),-170px) scale(1.15) rotate(var(--rot))}}
.piano-ctas{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px}
@media (max-width:640px){.piano{padding:16px 10px 18px;border-radius:26px}.piano-top{grid-template-columns:1fr;justify-items:center;gap:10px}.piano-top .hint,.piano-top .tag-gold,.lbl{display:none}.wk{margin:0 1px;border-radius:0 0 7px 7px}}
.badge-complet{display:inline-flex;align-items:center;gap:8px;padding:7px 13px;border-radius:999px;background:#fff;color:#1d1d1f;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.badge-complet::before{content:"";width:8px;height:8px;border-radius:50%;background:#c44d69}
.badge-places{display:inline-flex;align-items:center;gap:8px;padding:7px 13px;border-radius:999px;background:var(--gold);color:#1d1408;font-size:13px;font-weight:800;letter-spacing:.04em}
.pourquoi{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:28px}
.pourquoi li{display:grid;justify-items:center;text-align:center;gap:10px;background:var(--carte);border:1px solid var(--line);border-radius:22px;padding:22px 16px;font-weight:600;font-size:15px;line-height:1.35}
.pourquoi .ico{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#1d1408}
.pourquoi .ico svg{width:24px;height:24px}
.offres{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:28px}
.offre{display:grid;align-content:start;gap:12px;background:var(--carte);border:1px solid var(--line);border-radius:26px;padding:26px;text-decoration:none;box-shadow:var(--ombre)}
.offre h3{font-size:22px;letter-spacing:-.02em}
.offre p{color:var(--ink-2);font-size:15px}
.offre .prix b{font-size:36px}
.offre em{font-style:normal;font-weight:700;color:var(--accent)}
.programme.six{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:900px){.programme.six{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.programme.six{grid-template-columns:1fr}}

/* ---------- Événements ---------- */
[hidden]{display:none!important}
.evenements{display:grid;gap:22px;margin-top:8px}
.evenement{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:32px;align-items:start;background:var(--carte);border:1px solid var(--line);border-radius:32px;padding:24px;box-shadow:var(--ombre)}
@media (max-width:760px){.evenement{grid-template-columns:1fr;gap:20px;padding:18px}}
.evenement figure img{width:100%;border-radius:20px;box-shadow:0 18px 40px -18px rgba(0,0,0,.45)}
.evenement .quand{display:flex;align-items:center;gap:14px}
.date-bloc{display:grid;justify-items:center;min-width:76px;padding:10px 12px;border-radius:18px;background:var(--stage);color:#fff;line-height:1}
.date-bloc b{font-size:34px;letter-spacing:-.03em;background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.date-bloc span{margin-top:4px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.evenement .jour{font-size:15px;color:var(--ink-2)}
.evenement .jour b{display:block;color:var(--ink);font-size:17px}
.evenement h2{margin-top:18px;font-size:clamp(26px,3vw,34px)}
.evenement .cadre{margin-top:6px;font-weight:600;color:var(--accent)}
.evenement .details{list-style:none;display:grid;gap:8px;margin-top:16px}
.evenement .details li{display:flex;gap:10px;align-items:flex-start;color:var(--ink-2)}
.evenement .details svg{flex:none;width:20px;height:20px;margin-top:2px;color:var(--gold-3)}
.evenement .details b{color:var(--ink)}
.evenement .boutons{margin-top:20px}
.aucun{background:var(--carte);border:1px solid var(--line);border-radius:28px;padding:28px;color:var(--ink-2);font-size:17px}

/* ---------- Références (« Ils nous ont fait confiance ») ---------- */
.references{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-top:28px}
.references li{display:grid;gap:6px;align-content:start;background:var(--carte);border:1px solid var(--line);border-radius:22px;padding:22px}
.references b{font-size:19px;letter-spacing:-.01em;line-height:1.25}
.references span{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--ink-2)}
.references svg{width:16px;height:16px;flex:none;color:var(--gold-3)}

/* ---------- Bandeau du haut : téléphone et réseaux ---------- */
.bandeau-haut{background:#000;color:var(--stage-ink-2);font-size:13px;border-bottom:1px solid rgba(255,255,255,.06)}
.bandeau-in{display:flex;align-items:center;gap:14px;height:36px;width:min(1240px,100% - 32px);margin-inline:auto}
.bandeau-haut a{color:inherit;text-decoration:none}
.bandeau-tel{display:inline-flex;align-items:center;gap:7px;color:var(--stage-ink)!important;font-weight:500;font-variant-numeric:tabular-nums}
.bandeau-tel svg{width:14px;height:14px;color:var(--gold-txt)}
.bandeau-lieu{opacity:.75}
.reseaux{display:flex;align-items:center;gap:4px;margin-left:auto}
.reseaux a{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:30px;height:30px;padding:0 6px;border-radius:999px;color:var(--gold-txt)!important;transition:background .2s,color .2s}
.reseaux a:hover{background:rgba(231,196,138,.14);color:#fff!important}
.reseaux svg{width:17px;height:17px}
.reseau-resa span{font-weight:600}
@media (max-width:640px){.bandeau-lieu,.reseau-resa span{display:none}}
