@font-face{font-family:Cinzel;font-style:normal;font-weight:500;font-display:swap;src:url(fonts/cinzel-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/cormorant-garamond-latin-300-normal.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:300;font-display:swap;src:url(fonts/cormorant-garamond-latin-300-italic.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/cormorant-garamond-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/cormorant-garamond-latin-400-italic.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/cormorant-garamond-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:Figtree;font-style:normal;font-weight:300;font-display:swap;src:url(fonts/figtree-latin-300-normal.woff2) format('woff2')}
@font-face{font-family:Figtree;font-style:normal;font-weight:400;font-display:swap;src:url(fonts/figtree-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:Figtree;font-style:normal;font-weight:500;font-display:swap;src:url(fonts/figtree-latin-500-normal.woff2) format('woff2')}

/* Maison de nuit : noir profond, rouge vin, ivoire. Pas d'or sur le site, l'or reste sur les cartes. */
:root{
  color-scheme:dark;
  --noir:#070404;
  --noir-2:#0e0606;
  --trait:rgba(243,233,223,.12);
  --vin:#6e0a1b;
  --rouge:#b3162f;
  --rouge-clair:#e0566b;
  --ivoire:#f3e9df;
  --texte-2:#cfc0b4;
  --texte-3:#9d8b80;
  --serif:'Cormorant Garamond',Georgia,serif;
  --marque:Cinzel,Georgia,serif;
  --sans:Figtree,'Segoe UI',system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--noir);color:var(--texte-2);font-family:var(--serif);font-weight:400;font-size:21px;line-height:1.6;-webkit-font-smoothing:antialiased}
img,video{display:block;max-width:100%;height:auto}
a{color:var(--ivoire)}
a:hover{color:var(--rouge-clair)}
h1,h2,h3{font-family:var(--serif);font-weight:300;color:var(--ivoire);margin:0;line-height:1.1;text-wrap:balance}
p{margin:0}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.label{font-family:var(--sans);font-weight:400;font-size:11px;letter-spacing:.38em;text-transform:uppercase;color:var(--rouge-clair)}
.petit{font-family:var(--sans);font-weight:300;font-size:13px;line-height:1.6;letter-spacing:.02em;color:var(--texte-3)}
.italique{font-style:italic;color:var(--ivoire)}
.filet{display:block;width:48px;height:1px;background:var(--rouge)}

/* Boutons */
.bouton{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:14px 34px;border:1px solid rgba(243,233,223,.55);color:var(--ivoire);font-family:var(--sans);font-weight:400;font-size:12px;letter-spacing:.32em;text-transform:uppercase;text-decoration:none;transition:background .3s,border-color .3s,color .3s}
.bouton:hover{background:var(--rouge);border-color:var(--rouge);color:var(--ivoire)}
.bouton-plein{background:var(--rouge);border-color:var(--rouge)}
.bouton-plein:hover{background:#cc1d39;border-color:#cc1d39}
.lien-fleche{font-family:var(--sans);font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:var(--texte-2);text-decoration:none}
.lien-fleche:hover{color:var(--ivoire)}
a:focus-visible,summary:focus-visible,.bouton:focus-visible{outline:1px solid var(--rouge-clair);outline-offset:4px}

/* En-tête */
.entete{position:fixed;inset:0 0 auto 0;z-index:10;background:linear-gradient(180deg,rgba(7,4,4,.85),rgba(7,4,4,0));transition:background .3s}
.entete .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px}
.logo{font-family:var(--marque);font-weight:500;letter-spacing:.5em;font-size:17px;color:var(--ivoire);text-decoration:none;padding-left:.5em}
.entete nav{display:flex;align-items:center;gap:32px}
.entete nav a{font-family:var(--sans);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--texte-2);text-decoration:none}
.entete nav a:hover{color:var(--ivoire)}
.entete nav .bouton{min-height:42px;padding:10px 20px;font-size:11px;color:var(--ivoire)}
@media (max-width:700px){.entete nav .lien{display:none}.logo{font-size:15px}}
.page-legale .entete{position:sticky;background:var(--noir);border-bottom:1px solid var(--trait)}

/* Ouverture */
.ouverture{position:relative;min-height:min(100svh,920px);display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;isolation:isolate}
.ouverture video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transform:scale(1.06);filter:blur(2px) brightness(.62) saturate(1.15)}
.ouverture::before{content:"";position:absolute;inset:0;z-index:-1;background:
  radial-gradient(45% 40% at 50% 48%,rgba(7,4,4,.55),transparent 75%),radial-gradient(70% 60% at 50% 60%,rgba(110,10,27,.38),transparent 72%),
  linear-gradient(180deg,rgba(7,4,4,.72) 0%,rgba(7,4,4,.55) 40%,rgba(7,4,4,.8) 78%,var(--noir) 100%)}
.ouverture .contenu{display:flex;flex-direction:column;align-items:center;gap:26px;padding:120px 24px 96px}
.ouverture h1{font-size:clamp(54px,9vw,128px);font-weight:300;letter-spacing:-.01em;line-height:1}
.ouverture .accroche{font-style:italic;font-weight:300;font-size:clamp(22px,2.4vw,30px);color:var(--texte-2);letter-spacing:.04em}
.ouverture .actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:20px 32px;margin-top:14px}
.ouverture .pied-ouverture{position:absolute;left:0;right:0;bottom:28px;font-family:var(--sans);font-size:11px;letter-spacing:.34em;text-transform:uppercase;color:var(--texte-3)}
@media (max-width:600px){.ouverture .pied-ouverture{display:none}}

/* Sections */
section{scroll-margin-top:76px}
.bloc{padding:128px 0}
@media (max-width:860px){.bloc{padding:88px 0}}
.lueur{background:radial-gradient(70% 60% at 85% 20%,rgba(110,10,27,.22),transparent 70%),var(--noir)}
.lueur-gauche{background:radial-gradient(70% 60% at 10% 80%,rgba(110,10,27,.22),transparent 70%),var(--noir-2)}
.deux-col{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
@media (max-width:860px){.deux-col{grid-template-columns:1fr;gap:48px}}
.colonne{display:flex;flex-direction:column;gap:22px;min-width:0}
.colonne p{max-width:540px}
h2{font-size:clamp(36px,4.6vw,60px)}
.accroche-texte{font-style:italic;font-size:clamp(23px,2.2vw,27px);color:var(--ivoire);line-height:1.45}
.photo{width:100%;border:1px solid var(--trait)}
.experience{align-items:center}



/* Univers */
.titre-centre{text-align:center}
.entete-section{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center;margin-bottom:72px}
.parties{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--trait)}
.partie{position:relative;display:flex;flex-direction:column;gap:18px;padding:56px 48px;min-width:0;overflow:hidden}
.partie+.partie{border-left:1px solid var(--trait);background:linear-gradient(160deg,rgba(110,10,27,.28),rgba(7,4,4,0) 65%)}
.partie .numero{position:absolute;top:18px;right:30px;font-family:var(--serif);font-weight:300;font-size:120px;line-height:1;color:rgba(224,86,107,.16)}
.partie h3{font-size:clamp(34px,3.4vw,46px)}
.partie p{max-width:460px}
@media (max-width:860px){.parties{grid-template-columns:1fr}.partie{padding:44px 26px}.partie+.partie{border-left:0;border-top:1px solid var(--trait)}.partie .numero{font-size:96px;right:20px}}
.categories{list-style:none;margin:4px 0 0;padding:18px 0;border-top:1px solid var(--trait);border-bottom:1px solid var(--trait);display:flex;flex-wrap:wrap;gap:10px 26px;font-style:italic;font-weight:300;font-size:clamp(19px,1.8vw,23px);color:var(--ivoire)}
.categories li{display:flex;align-items:center;gap:10px}
.categories li::before{content:"";width:5px;height:5px;background:var(--rouge);transform:rotate(45deg)}
.univers-fin{margin:96px auto 0;max-width:720px;text-align:center;font-style:italic;font-weight:300;font-size:clamp(26px,3vw,38px);line-height:1.35;color:var(--ivoire)}

/* Précommande */
.encart{border:1px solid var(--trait);background:linear-gradient(180deg,rgba(110,10,27,.18),rgba(7,4,4,0) 60%),var(--noir);padding:44px 40px;display:flex;flex-direction:column;gap:22px}
.encart .prix{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--trait);padding-bottom:22px}
.encart .prix span{font-size:24px;color:var(--ivoire)}
.encart .prix strong{font-family:var(--serif);font-weight:300;font-size:52px;line-height:1;color:var(--ivoire)}
.liste{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;font-family:var(--sans);font-weight:300;font-size:15px;color:var(--texte-2)}
.liste li{display:flex;gap:14px;align-items:baseline}
.liste li::before{content:"";flex:none;width:14px;height:1px;background:var(--rouge);transform:translateY(-4px)}
.encart .bouton{width:100%}
.bouton-attente{cursor:default;opacity:.85;text-align:center;letter-spacing:.22em}
.bouton-attente:hover{background:var(--rouge);border-color:var(--rouge)}
@media (max-width:480px){.encart{padding:32px 22px}}

/* Questions */
.questions{max-width:820px;margin:0 auto}
details{border-bottom:1px solid var(--trait)}
details:first-of-type{border-top:1px solid var(--trait)}
summary{list-style:none;cursor:pointer;min-height:44px;padding:24px 0;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:25px;font-weight:300;color:var(--ivoire)}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-family:var(--sans);font-weight:300;font-size:22px;color:var(--rouge-clair)}
details[open] summary::after{content:"−"}
details p{padding:0 0 26px;font-size:20px;color:var(--texte-2);max-width:680px}

/* Pied de page */
.pied{border-top:1px solid var(--trait);padding:44px 0}
.pied .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px 32px;font-family:var(--sans);font-size:12px;letter-spacing:.06em;color:var(--texte-3)}
.pied nav{display:flex;flex-wrap:wrap;gap:12px 28px}
.pied a{color:var(--texte-3);text-decoration:none}
.pied a:hover{color:var(--ivoire)}
.pied .logo{font-size:14px}

/* Pages légales */
.legal{max-width:780px;margin:0 auto;padding:64px 24px 96px;font-family:var(--sans);font-weight:300;font-size:16px;line-height:1.7;color:var(--texte-2)}
.legal h1{font-size:clamp(34px,5vw,52px);margin-bottom:8px}
.legal h2{font-family:var(--sans);font-weight:500;font-size:13px;letter-spacing:.24em;text-transform:uppercase;margin:44px 0 14px;color:var(--rouge-clair)}
.legal p,.legal ul,.legal ol{margin:0 0 14px}
.legal li{margin-bottom:6px}
.legal strong{color:var(--ivoire);font-weight:500}
.legal a{color:var(--ivoire)}
.legal .a-completer{color:#ffb4a8;background:rgba(179,22,47,.25);padding:0 4px}
.legal .encadre{border:1px solid var(--trait);padding:22px 24px;margin:18px 0;background:var(--noir-2)}
.legal .encadre p:last-child{margin-bottom:0}
.legal .maj{color:var(--texte-3);font-size:14px;margin-bottom:28px}
