:root{--ink:#15110E;--ink2:#1F1813;--cream:#F3EBDD;--paper:#E9DCC6;--gold:#C28A45;--gold-l:#E2B77A;--gold-d:#8A5A22;--txt:#2A211A;--mute:#6B5B4B;--mute-d:#A89986;--line:#3A2F26}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:72px}
body{margin:0;font-family:'Jost',system-ui,sans-serif;background:var(--ink);color:var(--cream);font-weight:400;-webkit-font-smoothing:antialiased}
img,video{max-width:100%;display:block}
a{color:var(--gold-l)}
h1,h2,h3{font-weight:400;margin:0}
.serif{font-family:'Cormorant Garamond',Georgia,serif}
.brush{font-family:'Caveat Brush',cursive}
.eyebrow{font-size:12px;letter-spacing:.28em;text-transform:uppercase;font-weight:500}
.rule{display:flex;align-items:center;gap:14px}.rule:before{content:"";width:32px;height:1px;background:currentColor}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;font:600 12px 'Jost',sans-serif;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;border:1px solid transparent;cursor:pointer}
.btn-gold{background:var(--gold);color:var(--ink)}.btn-gold:hover{background:var(--gold-l);color:var(--ink)}
.btn-line{border-color:var(--cream);color:var(--cream);background:transparent}.btn-line:hover{background:var(--cream);color:var(--ink)}
.btn-dark{background:var(--txt);color:var(--cream)}.btn-dark:hover{background:#000;color:var(--cream)}
.btn-outline-dark{border-color:var(--txt);color:var(--txt);background:transparent}
.wrap{max-width:1280px;margin:0 auto;padding:0 24px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;height:72px;display:flex;align-items:center;gap:32px;padding:0 32px;transition:background .3s}
.nav.solid{background:rgba(21,17,14,.94);backdrop-filter:blur(6px)}
.nav .logo{font-size:36px;color:var(--cream);text-decoration:none;line-height:1}
.nav .links{display:flex;gap:28px;flex:1;justify-content:center}
.nav .links a{color:var(--cream);text-decoration:none}
.nav .links a:hover{color:var(--gold-l)}
.status{display:flex;align-items:center;gap:8px;font-size:14px;white-space:nowrap}
.status i{width:8px;height:8px;border-radius:9px;background:#7BC47F}.status.ferme i{background:#C7736B}
.burger{display:none;width:44px;height:44px;border:0;background:transparent;color:var(--cream);cursor:pointer}
.cartbtn{display:none}

/* HERO */
.hero{position:relative;height:100vh;min-height:640px;max-height:940px;overflow:hidden;background:#0E0B09}
.slide{position:absolute;inset:0;opacity:0;transition:opacity .9s ease;pointer-events:none}
.slide.on{opacity:1;pointer-events:auto}
.slide>video,.slide>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.slide:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,11,8,.55),rgba(15,11,8,.4) 45%,rgba(15,11,8,.88))}
.slide .txt{position:absolute;z-index:2;left:24px;right:24px;top:22%;display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}
.slide .txt .eyebrow{color:var(--gold-l);display:flex;gap:14px;align-items:center}
.slide .txt .eyebrow:before,.slide .txt .eyebrow:after{content:"";width:36px;height:1px;background:var(--gold-l)}
.slide h1{font-family:'Cormorant Garamond',serif;font-size:clamp(56px,9vw,120px);line-height:.95;color:var(--cream)}
.slide h1.brush{font-family:'Caveat Brush',cursive;font-size:clamp(96px,14vw,190px);line-height:.9}
.slide .tag{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(22px,2.4vw,30px);color:var(--gold-l);margin:0}
.slide .desc{margin:0;max-width:560px;font-size:18px;line-height:1.6;font-weight:300;color:#E9DFD0}
.slide .ctas{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:8px}
.shelf{position:absolute;z-index:3;left:48px;right:48px;bottom:32px;display:flex;align-items:flex-end;gap:14px}
.shelf .here{margin-right:auto;display:flex;flex-direction:column;gap:4px;font-size:15px}
.shelf .here .eyebrow{color:var(--gold-l)}
.shelf .lbl{color:#CFC3B2;align-self:center}
.thumb{position:relative;width:180px;height:102px;padding:0;overflow:hidden;background:#000;border:1px solid rgba(243,235,221,.35);opacity:.75;cursor:pointer}
.thumb.on{border:2px solid var(--gold-l);opacity:1}
.thumb img{width:100%;height:100%;object-fit:cover}
.thumb span{position:absolute;left:0;right:0;bottom:0;padding:20px 10px 8px;background:linear-gradient(transparent,rgba(0,0,0,.85));color:var(--cream);font-size:13px;text-align:left}
.thumb b{position:absolute;left:0;bottom:0;height:3px;width:0;background:var(--gold-l)}
.thumb.on b{animation:bar 7s linear forwards}
@keyframes bar{to{width:100%}}

/* HISTOIRE */
.split{display:grid;grid-template-columns:1fr 1fr;min-height:640px}
.split>img{width:100%;height:100%;object-fit:cover}
.light{background:var(--cream);color:var(--txt)}
.light .eyebrow,.light .rule{color:var(--gold-d)}
.pad{padding:clamp(48px,7vw,96px) clamp(24px,6vw,88px);display:flex;flex-direction:column;gap:24px;justify-content:center}
.h2{font-family:'Cormorant Garamond',serif;font-size:clamp(40px,4.4vw,58px);line-height:1.05}
.h2 em{color:#A06A2C}
.dark .h2 em{color:var(--gold-l)}
.lead{margin:0;font-size:17px;line-height:1.75;font-weight:300;max-width:540px}
.light .lead{color:#4A3D31}.dark .lead{color:#CFC3B2}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips span{font-size:14px;border:1px solid #CDB894;padding:8px 14px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #D8C8AE;padding-top:22px}
.stats div+div{border-left:1px solid #D8C8AE;padding-left:20px}
.stats b{display:block;font:400 36px 'Cormorant Garamond',serif;color:#A06A2C}
.stats span{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}

/* AVIS */
.avis{background:var(--paper);color:var(--txt)}
.avis .wrap{display:grid;grid-template-columns:380px 1fr;gap:80px;align-items:center;padding-top:88px;padding-bottom:88px}
.note{display:flex;align-items:center;gap:18px}
.note svg{width:120px;height:120px;flex-shrink:0}
.note b{font:400 92px/0.9 'Cormorant Garamond',serif}
.stars{display:flex;gap:4px}.stars svg{width:24px;height:24px}
blockquote{margin:0;font:italic 400 clamp(26px,2.6vw,36px)/1.3 'Cormorant Garamond',serif;min-height:3.9em;transition:opacity .4s}
.author{display:flex;align-items:center;gap:14px}
.author .ini{width:48px;height:48px;border-radius:99px;background:var(--txt);color:var(--cream);display:flex;align-items:center;justify-content:center;font-weight:600}
.dots{display:flex;gap:8px;margin-left:auto}
.dots button{width:12px;height:12px;padding:0;border-radius:99px;border:1px solid var(--txt);background:transparent;cursor:pointer}
.dots button.on{background:var(--txt)}
.small{font-size:13px;color:var(--mute);margin:0}

/* CARTE */
.carte{padding:96px 0 88px}
.carte .head{text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px;margin-bottom:40px}
.carte .head .eyebrow{color:var(--gold-l)}
.diamond{color:var(--gold);display:flex;align-items:center;gap:12px}.diamond:before,.diamond:after{content:"";width:48px;height:1px;background:var(--gold)}
.tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:36px;position:sticky;top:72px;z-index:5;background:var(--ink);padding:10px 0}
.tabs a{font-size:13px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--cream);border:1px solid var(--line);padding:10px 14px}
.tabs a:hover{border-color:var(--gold)}
.carte-grid{display:grid;grid-template-columns:1fr 380px;gap:48px;align-items:start}
.cat{margin-bottom:48px}
.cat h3{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:6px;color:var(--gold-l)}
.cat .cdesc{font-size:14px;color:var(--mute-d);font-weight:300;margin:8px 0 10px}
.items{display:grid;grid-template-columns:1fr 1fr;column-gap:36px}
.item{display:flex;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid #2A221B}
.item img{width:72px;height:72px;object-fit:cover;flex-shrink:0}
.item .t{flex:1;min-width:0}
.item .n{font:400 23px/1.15 'Cormorant Garamond',serif;color:var(--cream)}
.item .d{font-size:13.5px;line-height:1.45;color:var(--mute-d);font-weight:300;margin-top:3px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.item .p{font-size:15px;color:var(--gold-l);margin-top:4px}
.add{width:44px;height:44px;flex-shrink:0;border:1px solid var(--gold);background:transparent;color:var(--gold-l);font-size:22px;cursor:pointer}
.add:hover{background:var(--gold);color:var(--ink)}

/* PANIER */
.panier{position:sticky;top:140px;background:var(--cream);color:var(--txt);padding:26px;display:flex;flex-direction:column;gap:16px}
.mode{display:flex;background:#E6DAC6;padding:4px}
.mode button,.mode a{flex:1;min-height:44px;border:0;background:transparent;font:500 14px 'Jost',sans-serif;color:var(--txt);text-decoration:none;display:flex;align-items:center;justify-content:center;cursor:pointer}
.mode .on{background:var(--txt);color:var(--cream)}
.lines{display:flex;flex-direction:column}
.line{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid #DDCFB8;font-size:15px}
.line .q{font-weight:600;width:26px}.line .x{flex:1}.line small{display:block;color:var(--mute);font-size:12.5px}
.line button{width:32px;height:32px;border:0;background:transparent;color:var(--gold-d);font-size:18px;cursor:pointer}
.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.slots button{min-height:40px;border:1px solid #CDB894;background:transparent;color:var(--txt);font:14px 'Jost',sans-serif;cursor:pointer}
.slots button.on{background:var(--txt);color:var(--cream);border-color:var(--txt)}
.slots button:disabled{opacity:.35;text-decoration:line-through;cursor:default}
.pay label{display:flex;gap:10px;align-items:center;min-height:48px;border:1px solid #CDB894;padding:0 14px;font-size:14px;cursor:pointer;margin-bottom:8px}
.pay input{accent-color:var(--txt)}
.panier input[type=text],.panier input[type=tel]{width:100%;min-height:44px;border:0;border-bottom:1px solid #BFAE93;background:transparent;font:16px 'Jost',sans-serif;color:var(--txt)}
.total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--txt);padding-top:14px}
.total b{font-size:22px}
.msg{font-size:14px;padding:10px 12px;background:#FFF4E5;color:#7C2D12;display:none}
.msg.show{display:block}
.fab{display:none}
.panier .fermer{display:none}

/* MODAL OPTIONS */
dialog{border:0;padding:0;max-width:520px;width:calc(100% - 32px);background:var(--cream);color:var(--txt)}
dialog::backdrop{background:rgba(0,0,0,.6)}
.mhead{padding:22px 24px 8px}.mbody{padding:0 24px;max-height:60vh;overflow:auto}
.og{margin:14px 0}.og h4{margin:0 0 8px;font:500 12px 'Jost',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.og label{display:flex;gap:10px;align-items:center;min-height:44px;border-bottom:1px solid #DDCFB8;font-size:15px}
.og label span{flex:1}
.mfoot{display:flex;gap:10px;justify-content:flex-end;padding:18px 24px}

.bande{display:grid;grid-template-columns:repeat(3,1fr)}.bande img{width:100%;height:380px;object-fit:cover}
.lieu{display:grid;grid-template-columns:1fr 400px 300px}.lieu img{width:100%;height:100%;object-fit:cover;min-height:560px}
.points{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:560px}
.points div{border-top:1px solid #CDB894;padding-top:12px}.points b{display:block;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-d);font-weight:500}
.traiteur{background:var(--ink2);padding:96px 0}
.traiteur .wrap{display:grid;grid-template-columns:420px 1fr;gap:64px}
.traiteur .eyebrow{color:var(--gold-l)}
.tphotos{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.tphotos img{width:100%;height:100%;min-height:420px;object-fit:cover}
.form{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px}
.form label{display:flex;flex-direction:column;gap:6px;font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.form .full{grid-column:1/-1}
.form input,.form select,.form textarea{min-height:44px;border:0;border-bottom:1px solid #5A4A3B;background:transparent;color:inherit;font:16px 'Jost',sans-serif;text-transform:none;letter-spacing:0}
.dark .form label{color:var(--mute-d)}
.infos{display:grid;grid-template-columns:440px 1fr}
.infos .left{padding:88px 56px;display:flex;flex-direction:column;gap:26px}
.infos .left .eyebrow{color:var(--gold-l)}
.hgrid{display:grid;grid-template-columns:150px 1fr;row-gap:6px;font-size:16px;color:#E9DFD0}
.infos .right{padding:88px clamp(24px,5vw,80px)}
.infos iframe{width:100%;height:640px;border:0;background:#fff}
.faq{background:var(--cream);color:var(--txt);padding:80px 0}
.faq details{border-bottom:1px solid #D8C8AE;padding:18px 0}
.faq summary{font:400 24px 'Cormorant Garamond',serif;cursor:pointer;list-style:none;display:flex;justify-content:space-between}
.faq summary:after{content:"+";color:var(--gold-d)}.faq details[open] summary:after{content:"−"}
.faq p{margin:10px 0 0;font-size:16px;line-height:1.7;color:#4A3D31;font-weight:300}
footer{background:#0E0B09;color:#8E8272;font-size:13px}
footer .wrap{display:flex;align-items:center;gap:24px;min-height:72px;flex-wrap:wrap}
footer a{color:#8E8272}

/* MOBILE */
@media (max-width:980px){
  .nav{padding:0 16px;gap:12px}.nav .links{display:none}.burger{display:block}.status{display:none}
  .nav.open .links{display:flex;position:fixed;top:72px;left:0;right:0;flex-direction:column;gap:0;background:var(--ink);padding:8px 16px 16px}
  .nav.open .links a{padding:14px 4px;border-bottom:1px solid var(--line)}
  .cartbtn{display:none;margin-left:auto;min-height:44px;padding:0 14px;background:var(--gold);color:var(--ink);border:0;font:600 14px 'Jost',sans-serif;cursor:pointer}
  .hero{height:92vh;min-height:600px}
  .slide .txt{top:16%}
  .shelf{left:16px;right:0;bottom:20px;overflow-x:auto;scrollbar-width:none;padding-right:16px}
  .shelf .here,.shelf .lbl{display:none}
  .thumb{width:132px;height:76px;flex-shrink:0}
  .split,.lieu,.infos,.traiteur .wrap,.avis .wrap{grid-template-columns:1fr}
  .split>img{height:340px}
  .avis .wrap{gap:36px;padding-top:64px;padding-bottom:64px}
  .note svg{width:84px;height:84px}.note b{font-size:72px}
  .carte-grid{grid-template-columns:1fr}.items{grid-template-columns:1fr}
  .tabs{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;padding:10px 16px;margin:0 -24px 28px}
  .tabs a{white-space:nowrap}
  .panier{position:fixed;inset:auto 0 0 0;top:auto;z-index:60;max-height:88vh;overflow:auto;transform:translateY(105%);transition:transform .3s;box-shadow:0 -10px 40px rgba(0,0,0,.4)}
  .panier.open{transform:none}
  .panier .fermer{display:block}
  .fab{display:flex;position:fixed;left:16px;right:16px;bottom:16px;z-index:40;min-height:56px;justify-content:space-between;align-items:center;padding:0 20px;background:var(--gold);color:var(--ink);border:0;font:600 15px 'Jost',sans-serif;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.4)}
  .fab.hide{display:none}
  .bande{grid-template-columns:1fr 1fr}.bande img{height:220px}.bande img:first-child{grid-column:1/-1}
  .lieu img{min-height:320px;height:320px}
  .tphotos{grid-template-columns:1fr 1fr}.tphotos img{min-height:220px;height:220px}.tphotos img:first-child{grid-column:1/-1}
  .form{grid-template-columns:1fr}
  .infos .left{padding:64px 24px}.infos .right{padding:64px 16px}
  .stats b{font-size:28px}
}

/* ===== PAGE TRAITEUR ===== */
.t-hero{position:relative;min-height:88vh;display:flex;align-items:flex-end;overflow:hidden;background:#0E0B09}
.t-hero video,.t-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.t-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,11,8,.35),rgba(15,11,8,.9))}
.t-hero .in{position:relative;z-index:2;padding:0 24px 72px;max-width:1280px;margin:0 auto;width:100%;display:flex;flex-direction:column;gap:20px}
.t-hero h1{font:400 clamp(48px,7vw,96px)/1 'Cormorant Garamond',serif;max-width:900px;text-wrap:balance}
.t-hero .eyebrow{color:var(--gold-l)}
.t-hero p{max-width:620px;font-size:18px;line-height:1.65;font-weight:300;color:#E9DFD0;margin:0}
.t-sec{padding:96px 0}
.t-sec .top{display:flex;flex-direction:column;gap:14px;margin-bottom:44px;max-width:720px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.grid3>div{background:var(--ink);padding:30px 28px;display:flex;flex-direction:column;gap:10px}
.grid3 h3{font:400 30px 'Cormorant Garamond',serif;color:var(--cream)}
.grid3 p{margin:0;font-size:15.5px;line-height:1.65;color:#CFC3B2;font-weight:300}
.light .grid3{background:#D8C8AE;border-color:#D8C8AE}.light .grid3>div{background:var(--cream)}
.light .grid3 h3{color:var(--txt)}.light .grid3 p{color:#4A3D31}
.formules{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
.formule{border:1px solid #D8C8AE;padding:28px;display:flex;flex-direction:column;gap:10px;background:#FBF6EE}
.formule h3{font:400 32px/1.05 'Cormorant Garamond',serif}
.formule .det{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-d)}
.formule p{margin:0;font-size:15.5px;line-height:1.65;color:#4A3D31;font-weight:300}
.pieces{columns:2;column-gap:56px}
.pgroup{break-inside:avoid;margin-bottom:36px}
.pgroup h3{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-l);border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:6px;font-weight:500}
.piece{padding:12px 0;border-bottom:1px solid #2A221B}
.piece b{font:400 22px/1.2 'Cormorant Garamond',serif;color:var(--cream)}
.piece span{display:block;font-size:14px;color:var(--mute-d);font-weight:300;margin-top:2px}
.diet{display:inline-block;margin-left:8px;font:500 10.5px 'Jost',sans-serif;letter-spacing:.14em;text-transform:uppercase;padding:3px 7px;vertical-align:middle;border:1px solid}
.diet-vege{color:#9CCB9F;border-color:#4E6B50}.diet-halal{color:var(--gold-l);border-color:var(--gold-d)}
.etapes{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0;counter-reset:e}
.etape{padding:26px 24px 26px 0;border-top:1px solid #CDB894;display:flex;flex-direction:column;gap:8px;counter-increment:e}
.etape:before{content:counter(e,decimal-leading-zero);font:400 44px/1 'Cormorant Garamond',serif;color:#A06A2C}
.etape h3{font:500 17px 'Jost',sans-serif}
.etape p{margin:0;font-size:15px;line-height:1.65;color:#4A3D31;font-weight:300;padding-right:12px}
.galerie{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:260px;gap:8px}
.galerie img{width:100%;height:100%;object-fit:cover}
.devis{display:grid;grid-template-columns:1fr 1.3fr;gap:72px}
.devis .form{grid-template-columns:1fr 1fr}
.checks{display:flex;flex-wrap:wrap;gap:8px}
.checks label{flex-direction:row;align-items:center;gap:8px;border:1px solid #5A4A3B;padding:0 12px;min-height:44px;letter-spacing:0;text-transform:none;font-size:14px;color:var(--cream);cursor:pointer}
.checks input{accent-color:var(--gold)}
.form textarea{min-height:96px;padding-top:10px;resize:vertical}
.form select option{color:#000}
.avis-vide{border:1px dashed #CDB894;padding:28px;font-size:15.5px;line-height:1.6;color:#4A3D31}
@media (max-width:980px){
  .grid3{grid-template-columns:1fr}.pieces{columns:1}.devis{grid-template-columns:1fr;gap:40px}.devis .form{grid-template-columns:1fr}
  .galerie{grid-template-columns:1fr 1fr;grid-auto-rows:180px}
  .nav>.btn{display:none}
  .t-sec{padding:64px 0}.t-hero{min-height:80vh}
}

/* ===== SECTIONS REPLIABLES ===== */
.fold{border-top:1px solid rgba(194,138,69,.35)}
.fold-head{width:100%;display:flex;align-items:center;gap:28px;padding:22px clamp(16px,4vw,64px);background:var(--ink);color:var(--cream);border:0;cursor:pointer;text-align:left;font:inherit;transition:background .25s}
.fold-clair .fold-head{background:var(--cream);color:var(--txt)}
.fold-papier .fold-head{background:var(--paper);color:var(--txt)}
.fold-head:hover{filter:brightness(1.04)}
.fold-head:focus-visible{outline:2px solid var(--gold);outline-offset:-4px}
.fold-img{width:120px;height:84px;object-fit:cover;flex-shrink:0}
.fold-noimg{display:flex;align-items:center;justify-content:center;background:var(--gold);color:var(--ink);font:400 44px 'Cormorant Garamond',serif}
.fold-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.fold-txt .eyebrow{color:var(--gold-l)}
.fold-clair .fold-txt .eyebrow,.fold-papier .fold-txt .eyebrow{color:var(--gold-d)}
.fold-titre{font:400 clamp(30px,3.4vw,46px)/1.05 'Cormorant Garamond',serif}
.fold-sous{font-size:15px;font-weight:300;opacity:.8}
.fold-plus{width:52px;height:52px;flex-shrink:0;border:1px solid currentColor;border-radius:99px;position:relative;opacity:.85}
.fold-plus:before,.fold-plus:after{content:"";position:absolute;left:50%;top:50%;width:18px;height:1.5px;background:currentColor;transform:translate(-50%,-50%);transition:transform .3s}
.fold-plus:after{transform:translate(-50%,-50%) rotate(90deg)}
.fold.open .fold-plus:after{transform:translate(-50%,-50%) rotate(0)}
.fold-body{display:none}
.fold.open .fold-body{display:block;animation:ouvre .35s ease}
.fold[data-fold="carte"] .fold-head{padding-top:30px;padding-bottom:30px}
.fold[data-fold="carte"] .fold-plus{background:var(--gold);color:var(--ink);border-color:var(--gold)}
@keyframes ouvre{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.fold.open .fold-body{animation:none}}
@media (max-width:980px){.fold-head{gap:14px;padding:16px}.fold-img{width:72px;height:72px}.fold-sous{font-size:13.5px}.fold-plus{width:40px;height:40px}}

/* ===== TITRES ANIMÉS (seulement quand le JS est actif) ===== */
.anim .anime .w{display:inline-block;opacity:0;transform:translateY(.55em) rotate(3deg);filter:blur(6px);
  transition:opacity .7s ease,transform .8s cubic-bezier(.2,.7,.2,1),filter .7s ease;transition-delay:calc(var(--i) * 70ms)}
.anim .anime.vu .w{opacity:1;transform:none;filter:none}
.anim .anime.vu em .w{animation:dore 1.6s ease calc(var(--i) * 70ms + .5s) 1}
@keyframes dore{0%,100%{color:inherit}50%{color:var(--gold-l);text-shadow:0 0 18px rgba(226,183,122,.45)}}
.anim .rule.anime:before{width:0;transition:width .9s cubic-bezier(.2,.7,.2,1) .15s}
.anim .rule.anime.vu:before{width:32px}
.anim .rule.anime{letter-spacing:.5em;opacity:0;transition:letter-spacing 1s ease,opacity .8s ease}
.anim .rule.anime.vu{letter-spacing:.28em;opacity:1}

/* ===== PRESSE ===== */
.presse{background:var(--ink2);padding:96px 0}
.presse-top{display:flex;flex-direction:column;gap:14px;margin-bottom:40px}
.presse-top .eyebrow{color:var(--gold-l)}
.presse-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
.presse-card{display:flex;flex-direction:column;gap:12px;padding:26px 24px;border:1px solid var(--line);text-decoration:none;color:var(--cream);background:rgba(255,255,255,.015);transition:border-color .3s,transform .3s,background .3s}
.presse-card:hover{border-color:var(--gold);transform:translateY(-4px);background:rgba(194,138,69,.06)}
.presse-card .eyebrow{color:var(--gold-l);font-size:10.5px}
.presse-src{font:400 32px/1 'Cormorant Garamond',serif}
.presse-cit{font:italic 400 19px/1.45 'Cormorant Garamond',serif;color:#E9DFD0;flex:1}
.presse-pied{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:var(--mute-d);border-top:1px solid var(--line);padding-top:12px}
.presse-pied b{color:var(--gold-l);font-weight:500;white-space:nowrap}
@media (max-width:980px){.presse{padding:64px 0}}

/* ===== LOGO ===== */
.nav .logo img{height:52px;width:auto;display:block}
.logo-hero{margin:0;line-height:0}
.logo-hero img{height:clamp(200px,34vh,330px);width:auto;filter:drop-shadow(0 10px 30px rgba(0,0,0,.45))}
@media (max-width:980px){.nav .logo img{height:42px}.logo-hero img{height:clamp(170px,26vh,240px)}}
@media (max-width:980px){.slide .txt{top:10%;gap:14px}.logo-hero img{height:clamp(150px,22vh,210px)}.slide .desc{font-size:16px}}
