.rosa-demo-bandeau{position:relative;z-index:1000;display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;justify-content:center;padding:8px 16px;background:#0B0C0E;color:#F5F5F7;font:500 13px/1.4 system-ui,-apple-system,'Segoe UI',sans-serif;text-align:center}
.rosa-demo-bandeau a{color:#FF9BB0;text-decoration:underline;text-underline-offset:3px}
.rosa-demo-bandeau a:focus-visible{outline:2px solid #FF9BB0;outline-offset:2px}

@font-face{font-family:'InterML';src:url(../../polices/inter-variable-latin.woff2) format('woff2');font-weight:100 900;font-style:normal;font-display:swap}

:root{
--noir:#0E0D0B;
--noir-2:#151410;
--or:#C9A86A;
--or-pale:#E3CFA1;
--or-trait:rgba(201,168,106,.36);
--ivoire:#F3EDE2;
--ivoire-2:#CFC6B6;
--ivoire-3:#A99F8E;
--encre:#1C1A16;
--encre-2:#544D40;
--bronze:#694C1C;
--serif:'Didot','Bodoni 72','Bodoni MT','Times New Roman',serif;
--texte:'Palatino Linotype','Book Antiqua',Palatino,Georgia,serif;
--sans:'InterML',system-ui,-apple-system,'Segoe UI',sans-serif;
--ease:cubic-bezier(.2,.7,.2,1);
--gouttiere:clamp(16px,5vw,64px);
--h-entete:84px;
--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .5 0 0 0 0 .42 0 0 0 0 .3 0 0 0 .32 0'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url%28%23g%29'/%3E%3C/svg%3E");
color-scheme:dark;
}

*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{background:var(--noir);color:var(--ivoire);-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--noir);color:var(--ivoire-2);font:400 17px/1.7 var(--sans);letter-spacing:.003em;font-feature-settings:'kern','liga','calt';text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;overflow-x:clip}
body::after{content:"";position:fixed;inset:0;z-index:990;pointer-events:none;background-image:var(--grain);opacity:.1}
html.menu-ouvert{overflow:hidden}
img,svg{max-width:100%}
a{color:inherit}
p{margin:0 0 1em}
::selection{background:var(--or);color:var(--noir)}
:focus-visible{outline:2px solid var(--or-pale);outline-offset:4px}
a,button,input,textarea,[tabindex]{scroll-margin:calc(var(--h-entete) + 24px) 0 24px}
.visuel-masque{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}

.saut{position:absolute;left:16px;top:-120px;z-index:1100;padding:12px 18px;background:var(--or);color:var(--noir);font:600 14px/1 var(--sans);text-decoration:none}
.saut:focus{top:56px}

/* Typographie */
.surtitre,.lien-trait,.entete__liens a,.menu-plein__liste a span,.chapitres__lib,.legende-photo,.petit-titre,.signature span,.carte-imprimee__maison,.panneau__intro,.plat__temps,.accords dt,.producteur__lieu,.avis-place figcaption,.fil,.etape__n,.service legend,.champ label,.recap__liste dt,.carton__titre,.lettre__champ label,.pied__ligne{font:500 13px/1.4 var(--sans);letter-spacing:.3em;text-transform:uppercase}
.surtitre{line-height:1.5;letter-spacing:.34em;color:var(--or);margin:0 0 28px}
.surtitre--filets{display:flex;align-items:center;justify-content:center;gap:18px}
.surtitre--filets::before,.surtitre--filets::after{content:"";flex:none;width:clamp(20px,6vw,64px);height:1px;background:linear-gradient(90deg,rgba(201,168,106,0),var(--or))}
.surtitre--filets::after{background:linear-gradient(270deg,rgba(201,168,106,0),var(--or))}

.monumental{margin:0 0 24px;font-family:var(--serif);font-weight:400;font-size:clamp(64px,min(19vw,23vh),236px);line-height:.84;letter-spacing:-.025em;color:var(--or)}
.monumental em,.titre-scene em,.pied__marque em,.lettre__titre em,.panneau__titre em{font-style:italic;color:var(--ivoire)}
.ligne{display:block;overflow:hidden;padding:.04em .12em .1em}
.ligne>span{display:inline-block}
.ligne--decalee{padding-left:1.1em}

.titre-scene{position:relative;margin:0 0 30px;font-family:var(--serif);font-weight:400;font-size:clamp(46px,7.6vw,128px);line-height:.94;letter-spacing:-.02em;color:var(--or);text-wrap:balance}
.chapeau{font-family:var(--serif);font-style:italic;font-size:clamp(20px,2vw,27px);line-height:1.45;color:var(--ivoire);max-width:40ch;margin:0 auto 56px;text-wrap:pretty}

.filigrane{position:absolute;left:50%;top:-.2em;z-index:-1;transform:translateX(-50%);font-family:var(--serif);font-size:clamp(200px,32vw,500px);line-height:1;color:rgba(201,168,106,.05);pointer-events:none;user-select:none;white-space:nowrap}

.fleuron{position:relative;display:block;width:132px;height:14px;margin:22px auto 30px;color:var(--bronze);background:linear-gradient(90deg,rgba(122,90,34,0),currentColor) 0 50%/52px 1px no-repeat,linear-gradient(270deg,rgba(122,90,34,0),currentColor) 100% 50%/52px 1px no-repeat}
.fleuron::after{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;border:1px solid currentColor;transform:translate(-50%,-50%) rotate(45deg)}
.fleuron--or{color:var(--or);background:linear-gradient(90deg,rgba(201,168,106,0),currentColor) 0 50%/52px 1px no-repeat,linear-gradient(270deg,rgba(201,168,106,0),currentColor) 100% 50%/52px 1px no-repeat}

/* Boutons et liens */
.bouton{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:0 34px;border:1px solid var(--or);border-radius:0;background:transparent;color:var(--ivoire);font:600 13px/1 var(--sans);letter-spacing:.28em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:color .5s var(--ease),border-color .5s var(--ease)}
.bouton>span{margin-right:-.28em}
.bouton::before{content:"";position:absolute;inset:4px;border:1px solid rgba(201,168,106,.42);pointer-events:none;transition:inset .5s var(--ease),border-color .5s var(--ease)}
.bouton::after{content:"";position:absolute;inset:0;z-index:-1;background:var(--or);transform:scaleY(0);transform-origin:50% 100%;transition:transform .55s var(--ease)}
.bouton:hover,.bouton:focus-visible{color:var(--noir)}
.bouton:hover::after,.bouton:focus-visible::after{transform:scaleY(1)}
.bouton:hover::before,.bouton:focus-visible::before{inset:6px;border-color:rgba(14,13,11,.35)}
.bouton:focus-visible{outline:2px solid var(--ivoire);outline-offset:4px}
.bouton--plein{background:var(--or);color:var(--noir)}
.bouton--plein::before{border-color:rgba(14,13,11,.3)}
.bouton--plein::after{background:var(--ivoire)}
.bouton--discret{border-color:transparent;color:var(--ivoire-2);padding:0 14px}
.bouton--discret::before,.bouton--discret::after{display:none}
.bouton--discret:hover,.bouton--discret:focus-visible{color:var(--or-pale);border-color:transparent}

.lien-trait{display:inline-block;padding:10px 0 8px;color:var(--ivoire);line-height:1.3;letter-spacing:.24em;text-decoration:none;background:linear-gradient(var(--or),var(--or)) 0 100%/100% 1px no-repeat;transition:background-size .6s var(--ease),color .4s}
.lien-trait:hover{color:var(--or-pale);background-size:30% 1px;background-position:100% 100%}
.lien-trait--bas{font:400 17px/1.4 var(--sans);letter-spacing:.01em;text-transform:none;padding:2px 0 4px}

/* En-tête */
.entete{position:sticky;top:0;z-index:960;height:var(--h-entete);margin-bottom:calc(-1 * var(--h-entete));display:flex;align-items:center;justify-content:center;gap:16px;padding:0 var(--gouttiere);background:linear-gradient(180deg,rgba(14,13,11,.9),rgba(14,13,11,0));transition:background-color .5s var(--ease),box-shadow .5s var(--ease)}
.entete--pleine{background:rgba(14,13,11,.93);box-shadow:0 1px 0 var(--or-trait);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.entete__nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:clamp(24px,3.6vw,64px);width:100%;max-width:1320px}
.entete__liens{display:flex;align-items:center;gap:clamp(18px,2.6vw,44px);margin:0;padding:0;list-style:none}
.entete__liens--g{justify-content:flex-end}
.entete__liens a{position:relative;display:inline-block;padding:10px 0;color:var(--ivoire);line-height:1;letter-spacing:.26em;text-decoration:none;white-space:nowrap;transition:color .4s}
.entete__liens a::after{content:"";position:absolute;left:0;right:.26em;bottom:2px;height:1px;background:var(--or);transform:scaleX(0);transition:transform .5s var(--ease)}
.entete__liens a:hover{color:var(--or-pale)}
.entete__liens a:hover::after{transform:scaleX(1)}
.entete__liens a.entete__resa{padding:12px 16px;border:1px solid var(--or);color:var(--or-pale)}
.entete__liens a.entete__resa::after{display:none}
.entete__liens a.entete__resa:hover{background:var(--or);color:var(--noir)}
.marque{display:flex;align-items:center;gap:14px;color:var(--or);text-decoration:none}
.marque__mono{display:flex;align-items:center;justify-content:center;width:54px;height:54px;border:1px solid var(--or);border-radius:50%;font-family:var(--serif);font-size:22px;line-height:1;letter-spacing:-.04em;box-shadow:inset 0 0 0 3px var(--noir),inset 0 0 0 4px rgba(201,168,106,.4);transition:transform .8s var(--ease)}
.marque__mono i{font-style:italic;margin-left:-.02em}
.marque:hover .marque__mono{transform:rotate(-8deg)}
.marque__nom{display:none;font-family:var(--serif);font-size:21px;color:var(--ivoire);letter-spacing:.01em;white-space:nowrap}
.menu-bouton{display:none;align-items:center;gap:12px;min-height:46px;padding:0 16px;border:1px solid var(--or-trait);background:rgba(14,13,11,.5);color:var(--ivoire);font:600 13px/1 var(--sans);letter-spacing:.26em;text-transform:uppercase;cursor:pointer;transition:border-color .4s}
.menu-bouton:hover{border-color:var(--or)}
.menu-bouton__traits{position:relative;display:block;width:22px;height:10px}
.menu-bouton__traits span{position:absolute;left:0;width:100%;height:1px;background:var(--or);transition:transform .45s var(--ease),top .45s var(--ease)}
.menu-bouton__traits span:first-child{top:0}
.menu-bouton__traits span:last-child{top:9px}
.menu-bouton[aria-expanded="true"] .menu-bouton__traits span:first-child{top:5px;transform:rotate(45deg)}
.menu-bouton[aria-expanded="true"] .menu-bouton__traits span:last-child{top:5px;transform:rotate(-45deg)}

.menu-plein{position:fixed;inset:0;z-index:950;overflow-y:auto;display:flex;align-items:center;justify-content:center;padding:calc(var(--h-entete) + 24px) 24px 40px;background:radial-gradient(ellipse 90% 60% at 50% 20%,#211d15,var(--noir) 70%);animation:fondu .45s var(--ease)}
.menu-plein__liste{margin:0;padding:0;list-style:none}
.menu-plein__liste li{opacity:0;animation:apparait .7s var(--ease) calc(var(--i,0) * .05s) forwards}
.menu-plein__liste a{display:flex;align-items:baseline;gap:18px;padding:7px 0;color:var(--ivoire);font-family:var(--serif);font-size:clamp(30px,7.4vw,50px);line-height:1.1;text-decoration:none;transition:color .3s}
.menu-plein__liste a span{flex:none;width:40px;line-height:1;letter-spacing:.2em;color:var(--or)}
.menu-plein__liste a:hover{color:var(--or-pale);font-style:italic}
.menu-plein__pied{margin:36px 0 0 58px;font-size:14px;color:var(--ivoire-3)}

/* Index des chapitres */
.chapitres{position:fixed;right:clamp(12px,1.6vw,28px);top:50%;z-index:800;display:none;transform:translateY(-50%);transition:opacity .5s,visibility .5s}
.chapitres--masque{opacity:0;visibility:hidden}
.chapitres ol{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none}
.chapitres a{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:5px 0;color:var(--ivoire-2);text-decoration:none;transition:color .4s}
.chapitres a::before{content:"";order:2;width:12px;height:1px;background:currentColor;transition:width .5s var(--ease)}
.chapitres__n{order:3;min-width:28px;font-family:var(--serif);font-size:16px;text-align:left}
.chapitres__lib{order:1;padding:3px 8px;background:rgba(14,13,11,.86);line-height:1.2;letter-spacing:.18em;color:var(--ivoire);opacity:0;transform:translateX(8px);transition:opacity .4s,transform .4s var(--ease);pointer-events:none}
.chapitres a:hover,.chapitres a:focus-visible,.chapitres a[aria-current]{color:var(--or)}
.chapitres a[aria-current]::before{width:34px}
.chapitres a:hover .chapitres__lib,.chapitres a:focus-visible .chapitres__lib{opacity:1;transform:none}

/* Scènes plein écran */
.scene{position:relative;isolation:isolate;overflow:hidden;overflow:clip;min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:clamp(120px,15vh,172px) var(--gouttiere) clamp(80px,10vh,120px)}
.scene__fond{position:absolute;left:0;right:0;top:-7%;bottom:-7%;z-index:-2;margin:0;will-change:transform}
.scene__fond img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 2.8s var(--ease),opacity 1.8s var(--ease)}
.js .scene:not(.scene--ouverture) .scene__fond img{opacity:0;transform:scale(1.1)}
.js .scene.en-vue .scene__fond img{opacity:1;transform:scale(1)}
.scene__voile{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,var(--noir) 0,rgba(14,13,11,0) 20%,rgba(14,13,11,0) 80%,var(--noir) 100%),radial-gradient(ellipse 75% 65% at 50% 50%,rgba(14,13,11,.7),rgba(14,13,11,.86))}
.scene__voile--dense{background:linear-gradient(180deg,var(--noir) 0,rgba(14,13,11,0) 22%,rgba(14,13,11,0) 78%,var(--noir) 100%),radial-gradient(ellipse 80% 70% at 50% 50%,rgba(14,13,11,.84),rgba(14,13,11,.93))}
.scene__contenu{position:relative;width:100%;max-width:1060px;margin:0 auto;text-align:center}
.scene__contenu--large{max-width:1220px}

/* I. Ouverture */
.scene--ouverture{padding-top:calc(var(--h-entete) + 28px);padding-bottom:clamp(88px,12vh,150px)}
.scene--ouverture .scene__fond img{object-position:58% 40%;animation:recul 4.2s var(--ease) both}
.scene--ouverture .scene__voile{background:linear-gradient(270deg,rgba(14,13,11,.66),rgba(14,13,11,0) 14%),linear-gradient(180deg,rgba(14,13,11,.55) 0,rgba(14,13,11,0) 26%,rgba(14,13,11,0) 70%,var(--noir) 100%),radial-gradient(ellipse 62% 60% at 50% 50%,rgba(14,13,11,.8),rgba(14,13,11,.55) 72%,rgba(14,13,11,.64))}
.ouverture{position:relative;text-align:center;max-width:1240px;padding-top:24px}
.ouverture .ligne>span{animation:monte 1.6s var(--ease) .1s both}
.ouverture .ligne--decalee>span{animation-delay:.26s}
.ouverture__sur{color:var(--or-pale);animation:apparait 1.4s var(--ease) .35s both}
.ouverture__chapeau{max-width:38ch;margin-bottom:44px;animation:apparait 1.4s var(--ease) .6s both}
.actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:24px 40px}
.ouverture__actions{animation:apparait 1.4s var(--ease) .8s both}
.medaillon{position:absolute;right:clamp(24px,5vw,80px);bottom:clamp(28px,6vh,64px);display:grid;place-items:center;width:140px;height:140px;border-radius:50%;color:var(--or);text-decoration:none;transition:background-color .5s,transform .6s var(--ease)}
.medaillon svg{position:absolute;inset:0;width:100%;height:100%;animation:tourne 32s linear infinite}
.medaillon__texte{font:500 13px var(--sans);fill:var(--or)}
.medaillon__fleche{position:relative;width:1px;height:38px;background:var(--ivoire)}
.medaillon__fleche::after{content:"";position:absolute;left:50%;bottom:0;width:9px;height:9px;border-right:1px solid var(--ivoire);border-bottom:1px solid var(--ivoire);transform:translate(-50%,0) rotate(45deg)}
.medaillon:hover{background:rgba(201,168,106,.1);transform:scale(1.05)}
.medaillon:focus-visible{outline-offset:6px}
.legende-photo{position:absolute;left:var(--gouttiere);bottom:clamp(32px,6vh,64px);margin:0;max-width:30ch;line-height:1.5;letter-spacing:.16em;color:var(--ivoire-2)}
.legende-photo span{display:block;margin-bottom:4px;font-family:var(--serif);font-size:17px;font-style:italic;letter-spacing:0;text-transform:none;color:var(--or)}

/* II. La maison */
.scene--maison .scene__fond img{object-position:50% 62%}
.deux-colonnes{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,80px);max-width:940px;margin:0 auto 72px;text-align:left}
.deux-colonnes p{margin:0;color:var(--ivoire-2)}
.deux-colonnes>div:first-child p::first-letter{float:left;margin:.08em .12em 0 0;font-family:var(--serif);font-size:3.9em;line-height:.78;color:var(--or)}
.petit-titre{margin:0 0 16px;padding-bottom:14px;border-bottom:1px solid var(--or-trait);color:var(--or)}
.principes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:1060px;margin:0 auto 56px;padding:0;list-style:none;border-top:1px solid var(--or-trait);border-bottom:1px solid var(--or-trait);text-align:left}
.principes li{padding:34px clamp(20px,2.4vw,34px);font-size:16px;line-height:1.65;color:var(--ivoire-2)}
.principes li+li{border-left:1px solid var(--or-trait)}
.principes strong{display:block;margin-bottom:10px;font-family:var(--serif);font-size:25px;font-weight:400;line-height:1.15;color:var(--ivoire)}
.principes__n{display:block;margin-bottom:14px;font-family:var(--serif);font-size:19px;font-style:italic;color:var(--or)}
.signature{margin:0;font-family:var(--serif);font-size:clamp(26px,2.6vw,34px);font-style:italic;color:var(--or)}
.signature::before{content:"";display:block;width:1px;height:44px;margin:0 auto 20px;background:linear-gradient(rgba(201,168,106,0),var(--or))}
.signature span{display:block;margin-top:10px;color:var(--ivoire-2)}

/* III. La carte imprimée */
.scene--carte .scene__fond img{object-position:55% 60%}
.scene--carte .scene__voile{background:linear-gradient(180deg,var(--noir) 0,rgba(14,13,11,.62) 34%,rgba(14,13,11,.5) 62%,rgba(14,13,11,.7) 86%,var(--noir) 100%),radial-gradient(ellipse 58% 26% at 50% 14%,rgba(14,13,11,.8),rgba(14,13,11,0))}
.carte-imprimee{position:relative;max-width:790px;margin:0 auto;padding:clamp(48px,6.4vw,84px) clamp(26px,6.4vw,92px) clamp(40px,5vw,64px);background-color:var(--ivoire);background-image:radial-gradient(ellipse 70% 50% at 15% 0,rgba(255,255,255,.6),rgba(255,255,255,0) 70%),radial-gradient(ellipse 60% 50% at 100% 100%,rgba(122,90,34,.12),rgba(122,90,34,0) 70%),var(--grain);background-size:auto,auto,180px 180px;color:var(--encre);text-align:center;box-shadow:0 50px 90px -30px rgba(0,0,0,.85),0 18px 30px -18px rgba(0,0,0,.6)}
.carte-imprimee::before,.carte-imprimee::after{content:"";position:absolute;pointer-events:none}
.carte-imprimee::before{inset:14px;border:1px solid rgba(122,90,34,.6)}
.carte-imprimee::after{inset:19px;border:1px solid rgba(122,90,34,.26)}
.carte-imprimee__maison{margin:0 0 12px;letter-spacing:.42em;color:var(--bronze)}
.carte-imprimee__saison{margin:0;font-family:var(--serif);font-size:clamp(38px,5.4vw,60px);font-style:italic;line-height:1;color:var(--encre)}
.onglets{position:relative;display:flex;flex-wrap:wrap;justify-content:center;max-width:580px;margin:0 auto 44px;border-bottom:1px solid rgba(122,90,34,.32)}
.onglet{position:relative;margin:0;padding:12px clamp(8px,2.4vw,26px) 15px;border:0;background:none;color:var(--encre-2);font-family:var(--serif);font-size:clamp(18px,2.3vw,24px);line-height:1.2;cursor:pointer;transition:color .3s}
.onglet::after{content:"";position:absolute;left:16%;right:16%;bottom:-1px;height:2px;background:var(--bronze);transform:scaleX(0);transition:transform .5s var(--ease)}
.onglet:hover{color:var(--encre)}
.onglet[aria-selected="true"]{color:var(--encre);font-style:italic}
.onglet[aria-selected="true"]::after{transform:scaleX(1)}
.onglet:focus-visible{outline:2px solid var(--bronze);outline-offset:2px}
.panneau:focus-visible{outline:2px dashed var(--bronze);outline-offset:12px}
.panneau+.panneau{margin-top:56px;padding-top:48px;border-top:1px solid rgba(122,90,34,.32)}
.js .panneau+.panneau{margin-top:0;padding-top:0;border-top:0}
.panneau.entre{animation:apparait .7s var(--ease)}
.panneau__titre{margin:0 0 10px;font-family:var(--serif);font-size:clamp(30px,3.6vw,40px);font-weight:400;line-height:1.1;color:var(--encre)}
.panneau__titre em{color:var(--bronze)}
.panneau__intro{margin:0 auto 40px;max-width:46ch;line-height:1.7;letter-spacing:.14em;color:var(--bronze)}
.plats{display:grid;gap:30px;margin:0;padding:0;list-style:none}
.plats li{display:grid;justify-items:center;gap:5px}
.plats li+li::before{content:"";width:6px;height:6px;margin:0 auto 24px;border:1px solid var(--bronze);transform:rotate(45deg)}
.plat__temps{color:var(--bronze)}
.plat__nom{font-family:var(--serif);font-size:clamp(24px,2.7vw,30px);line-height:1.18;color:var(--encre)}
.plat__desc{max-width:40ch;font-family:var(--texte);font-size:17px;font-style:italic;line-height:1.5;color:var(--encre-2)}
.accords{display:grid;max-width:580px;margin:0 auto;text-align:left}
.accords div{display:grid;grid-template-columns:minmax(0,10.5em) 1fr;gap:4px 24px;padding:16px 0;border-bottom:1px dotted rgba(122,90,34,.5)}
.accords dt{padding-top:6px;letter-spacing:.22em;color:var(--bronze)}
.accords dd{margin:0;font-family:var(--serif);font-size:21px;font-style:italic;line-height:1.35;color:var(--encre)}
.panneau__note{max-width:46ch;margin:30px auto 0;font-family:var(--texte);font-size:16px;font-style:italic;color:var(--encre-2)}
.carte-imprimee__pied{max-width:54ch;margin:52px auto 0;padding-top:26px;border-top:1px solid rgba(122,90,34,.32);font:400 14px/1.65 var(--sans);color:var(--encre-2)}

/* IV. Producteurs */
.scene--producteurs{background:radial-gradient(ellipse 45% 40% at 26% 62%,rgba(201,168,106,.09),rgba(201,168,106,0) 70%),var(--noir)}
.atlas{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:start;gap:clamp(40px,6vw,104px);margin-top:8px;text-align:left}
.boussole{position:relative;width:100%;max-width:520px;aspect-ratio:1;margin:0;justify-self:center}
@media (min-width:960px){.boussole{position:sticky;top:calc(var(--h-entete) + 7vh)}}
.boussole__trace{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.b-anneau{fill:none;stroke:var(--or);stroke-width:.25;opacity:.75}
.b-anneau--fin{stroke-width:.16;opacity:.45;stroke-dasharray:.7 .9}
.b-graduation{fill:none;stroke:var(--or);stroke-width:1.6;stroke-dasharray:.2 2.722;opacity:.5}
.b-axe{fill:none;stroke:var(--or);stroke-width:.16;opacity:.45}
.b-axe--fin{opacity:.22}
.b-aiguille{fill:rgba(201,168,106,.12);stroke:var(--or);stroke-width:.3}
.b-rayon{stroke:var(--or);stroke-width:.3;stroke-dasharray:1 1;opacity:.3;transition:opacity .5s,stroke-width .5s}
.b-rayon.actif{opacity:1;stroke-width:.5}
.boussole__cardinal,.boussole__centre,.borne{position:absolute;left:calc(var(--x) * 1%);top:calc(var(--y) * 1%);transform:translate(-50%,-50%)}
.boussole__cardinal{font:600 13px/1 var(--sans);letter-spacing:.1em;color:var(--ivoire-3)}
.boussole__centre{padding:4px 12px;border:1px solid var(--or-trait);background:var(--noir);font-family:var(--serif);font-size:20px;font-style:italic;line-height:1.2;color:var(--ivoire);--x:50;--y:50}
.borne{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--or);border-radius:50%;background:var(--noir);color:var(--or);font-family:var(--serif);font-size:17px;line-height:1;transition:background-color .5s,color .5s,transform .6s var(--ease),box-shadow .6s}
.borne.actif{background:var(--or);color:var(--noir);transform:translate(-50%,-50%) scale(1.16);box-shadow:0 0 0 8px rgba(201,168,106,.14)}
.producteurs{display:grid;margin:0;padding:0;list-style:none}
.producteur{display:grid;grid-template-columns:58px 1fr;gap:18px;padding:26px 0;border-top:1px solid var(--or-trait);transition:padding .5s var(--ease)}
.producteur:last-child{border-bottom:1px solid var(--or-trait)}
.producteur__n{font-family:var(--serif);font-size:32px;font-style:italic;line-height:1;color:var(--or);transition:transform .5s var(--ease)}
.producteur__lieu{margin:0 0 6px;color:var(--or)}
.producteur__titre{margin:0 0 10px;font-family:var(--serif);font-size:clamp(29px,2.8vw,38px);font-weight:400;line-height:1.05;color:var(--ivoire);transition:color .4s}
.producteur p{margin:0;font-size:16px;color:var(--ivoire-2)}
.producteur p.producteur__lieu{font-size:13px;color:var(--or)}
.producteur.actif .producteur__titre{color:var(--or-pale);font-style:italic}
.producteur.actif .producteur__n{transform:translateX(6px)}
.emplacement{display:inline-block;margin-top:14px!important;padding:6px 12px;border:1px dashed rgba(201,168,106,.45);font-size:13px!important;letter-spacing:.02em;color:var(--ivoire-3)!important}

/* V. Salle */
.scene--salle .scene__fond img{object-position:50% 40%}
.rituel{display:grid;grid-template-columns:1fr minmax(240px,370px) 1fr;align-items:center;gap:clamp(32px,4.6vw,80px);margin:8px 0 80px}
.rituel__colonne{display:grid;gap:clamp(44px,7vh,80px);margin:0;padding:0;list-style:none}
.rituel__colonne:first-child{text-align:right}
.rituel__colonne:first-child p{margin-left:auto}
.rituel__colonne:last-child{text-align:left}
.moment__n{display:block;margin-bottom:8px;font-family:var(--serif);font-size:20px;font-style:italic;color:var(--or)}
.moment__titre{margin:0 0 12px;font-family:var(--serif);font-size:clamp(31px,3vw,42px);font-weight:400;line-height:1;color:var(--ivoire)}
.moment p{max-width:32ch;margin:0;font-size:16px;color:var(--ivoire-2)}
.arche{margin:0;padding:14px}
.arche picture{display:block;aspect-ratio:3/4.15;overflow:hidden;border:1px solid var(--or);border-radius:999px 999px 3px 3px;outline:1px solid var(--or-trait);outline-offset:12px}
.arche img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 30%;transition:transform 1.4s var(--ease)}
.arche:hover img{transform:scale(1.05)}
.arche figcaption{margin-top:30px;font-family:var(--serif);font-size:18px;font-style:italic;color:var(--ivoire-2)}
.avis-place{max-width:740px;margin:0 auto;padding:clamp(28px,4vw,44px);border:1px dashed rgba(201,168,106,.5);background:rgba(14,13,11,.55)}
.avis-place blockquote{margin:0}
.avis-place blockquote p{position:relative;margin:0 0 12px;font-family:var(--serif);font-size:clamp(25px,2.7vw,34px);font-style:italic;line-height:1.25;color:var(--ivoire)}
.avis-place blockquote p::before{content:"«\00a0";color:var(--or)}
.avis-place blockquote p::after{content:"\00a0»";color:var(--or)}
.avis-place figcaption{line-height:1.5;letter-spacing:.2em;color:var(--ivoire-3)}

/* VI. Réservation */
.scene--reservation{background:radial-gradient(80% 560px at 50% 420px,rgba(201,168,106,.1),rgba(201,168,106,0) 70%),var(--noir)}
.resa{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);grid-template-areas:"fil fil" "corps recap";max-width:1100px;margin:0 auto;border:1px solid var(--or-trait);background:var(--noir-2);text-align:left;box-shadow:0 40px 90px -40px rgba(0,0,0,.9);scroll-margin-top:calc(var(--h-entete) + 16px)}
.resa__fil{grid-area:fil;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;border-bottom:1px solid var(--or-trait)}
.resa__fil li+li{border-left:1px solid var(--or-trait)}
.fil{position:relative;display:flex;align-items:center;gap:14px;width:100%;padding:18px clamp(14px,2vw,26px);border:0;background:none;color:var(--ivoire-3);line-height:1.2;letter-spacing:.2em;text-align:left;cursor:pointer;transition:color .4s,background-color .4s}
.fil::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--or);transform:scaleX(0);transition:transform .5s var(--ease)}
.fil__n--fin::before{content:"";width:9px;height:9px;border:1px solid currentColor;transform:rotate(45deg)}
.fil__n{display:grid;flex:none;place-items:center;width:38px;height:38px;border:1px solid currentColor;border-radius:50%;font-family:var(--serif);font-size:18px;font-style:italic;letter-spacing:0;text-transform:none;transition:background-color .4s,color .4s}
.fil:hover:not(:disabled){color:var(--ivoire)}
.fil.fait{color:var(--ivoire-2)}
.fil.fait .fil__n{border-color:var(--or);color:var(--or)}
.fil[aria-current="step"]{color:var(--or-pale)}
.fil[aria-current="step"] .fil__n{background:var(--or);border-color:var(--or);color:var(--noir)}
.fil[aria-current="step"]::after{transform:scaleX(1)}
.fil:disabled{cursor:default;color:#8F8676}
.fil:disabled .fil__n{border-style:dashed}
.fil:focus-visible{outline-offset:-4px}
.resa__corps{grid-area:corps;min-width:0;padding:clamp(24px,4vw,52px)}
.etape{min-width:0;margin:0;padding:0;border:0}
.etape__titre{float:left;width:100%}
.etape__titre+*{clear:both}
.etape+.etape{margin-top:52px;padding-top:44px;border-top:1px solid var(--or-trait)}
html:not(.js) .etape__actions .bouton[type=button]{display:none}
.js .etape+.etape{margin-top:0;padding-top:0;border-top:0}
.etape.entre{animation:apparait .6s var(--ease)}
.etape__titre{display:block;margin:0 0 26px;padding:0;font-family:var(--serif);font-size:clamp(30px,3.2vw,40px);line-height:1.1;color:var(--ivoire)}
.etape__n{display:block;margin-bottom:10px;color:var(--or)}
.etape__note{margin:22px 0 0;font-size:14px;line-height:1.6;color:var(--ivoire-3)}
.etape__note a{color:var(--or-pale)}
.etape__erreur{margin:14px 0 0;font-size:15px;color:#F2BCA8}
.etape__erreur:empty{display:none}
.etape__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:14px;margin-top:30px}

.cal{max-width:520px}
.cal__tete{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.cal__mois{margin:0;font-family:var(--serif);font-size:28px;font-style:italic;line-height:1.2;color:var(--ivoire)}
.cal__mois::first-letter{text-transform:uppercase}
.cal__nav{display:grid;flex:none;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--or-trait);border-radius:50%;background:none;color:var(--or);font:400 24px/1 var(--serif);cursor:pointer;transition:background-color .3s,color .3s,border-color .3s}
.cal__nav:hover:not(:disabled){background:var(--or);border-color:var(--or);color:var(--noir)}
.cal__nav:disabled{color:#8F8676;border-style:dashed;cursor:default}
.cal__grille{width:100%;border-collapse:separate;border-spacing:3px;table-layout:fixed}
.cal__grille th{padding:6px 0;font:500 13px/1 var(--sans);letter-spacing:.04em;color:var(--ivoire-3)}
.cal__grille td{padding:0;text-align:center}
.cal__jour{position:relative;display:grid;place-items:center;width:min(100%,50px);aspect-ratio:1;margin:0 auto;padding:0;border:1px solid transparent;border-radius:50%;background:none;color:var(--ivoire);font:400 19px/1 var(--serif);cursor:pointer;transition:background-color .25s,color .25s,border-color .25s}
.cal__jour--dispo::after{content:"";position:absolute;left:50%;bottom:12%;width:4px;height:4px;border-radius:50%;background:var(--or);transform:translateX(-50%)}
.cal__jour--dispo:hover{border-color:var(--or)}
.cal__jour[aria-disabled="true"]{color:#8F8676;cursor:not-allowed}
.cal__jour--ferme,.cal__jour--complet{text-decoration:line-through;text-decoration-color:rgba(201,168,106,.6)}
.cal__jour--auj{border-color:var(--ivoire-3);border-style:dashed}
td[aria-selected="true"] .cal__jour{background:var(--or);border-color:var(--or);color:var(--noir)}
td[aria-selected="true"] .cal__jour::after{background:var(--noir)}
.cal__jour:focus-visible{outline:2px solid var(--ivoire);outline-offset:1px}
.cal__legende{display:flex;flex-wrap:wrap;gap:6px 20px;margin:14px 0 0;padding:0;list-style:none;font-size:13px;color:var(--ivoire-3)}
.cal__legende li{display:flex;align-items:center;gap:8px}
.pt{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--or)}
.pt--complet{width:16px;height:1px;border-radius:0;background:rgba(201,168,106,.7)}
.cal__aide{margin:8px 0 0;font-size:13px;line-height:1.5;color:var(--ivoire-3)}

.couverts{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;max-width:640px}
.pastille{position:relative;display:block;cursor:pointer}
.pastille input,.creneau input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.pastille>span{display:grid;place-items:center;aspect-ratio:1;border:1px solid var(--or-trait);border-radius:50%;transition:background-color .3s,border-color .3s,transform .4s var(--ease)}
.pastille b{font-family:var(--serif);font-size:clamp(26px,3vw,34px);font-weight:400;line-height:1;color:var(--ivoire);transition:color .3s}
.pastille:hover>span{border-color:var(--or);transform:translateY(-2px)}
.pastille input:checked+span{background:var(--or);border-color:var(--or)}
.pastille input:checked+span b{color:var(--noir)}
.pastille input:focus-visible+span,.creneau input:focus-visible+span{outline:2px solid var(--ivoire);outline-offset:3px}

.services{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.service{min-width:0;margin:0;padding:0;border:0}
.service legend{margin-bottom:14px;padding:0;color:var(--or)}
.creneaux{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.creneau{position:relative;display:block}
.creneau>span{display:block;padding:13px 4px;border:1px solid var(--or-trait);font:400 19px/1.1 var(--serif);text-align:center;white-space:nowrap;color:var(--ivoire);transition:background-color .3s,border-color .3s,color .3s}
.creneau:hover>span{border-color:var(--or)}
.creneau input:checked+span{background:var(--or);border-color:var(--or);color:var(--noir)}
.creneau input:disabled{cursor:not-allowed}
.creneau input:disabled+span{border-style:dashed;color:#8F8676;text-decoration:line-through;text-decoration-color:rgba(201,168,106,.6)}

.champs{display:grid;grid-template-columns:1fr 1fr;gap:22px 26px}
.champ{display:grid;gap:8px;margin:0}
.champ--large{grid-column:1 / -1}
.champ label{letter-spacing:.2em;color:var(--ivoire-2)}
.champ label span{letter-spacing:.02em;text-transform:none;color:var(--ivoire-3)}
input,textarea{width:100%;padding:10px 2px;border:0;border-bottom:1px solid rgba(201,168,106,.62);border-radius:0;background:transparent;color:var(--ivoire);font:400 17px/1.4 var(--sans);transition:border-color .3s,background-color .3s}
textarea{min-height:96px;resize:vertical}
input:hover,textarea:hover{border-color:var(--or)}
input:focus,textarea:focus{border-color:var(--or-pale);background:rgba(201,168,106,.06)}
input:focus-visible,textarea:focus-visible{outline:2px solid var(--or-pale);outline-offset:2px}
input[aria-invalid="true"]{border-color:#F2BCA8}
::placeholder{color:var(--ivoire-3);opacity:1}
input:-webkit-autofill{-webkit-text-fill-color:var(--ivoire);box-shadow:0 0 0 40px var(--noir-2) inset}

.recap{grid-area:recap;display:flex;flex-direction:column;gap:20px;padding:clamp(24px,3vw,42px);border-left:1px solid var(--or-trait);background:linear-gradient(180deg,rgba(201,168,106,.08),rgba(201,168,106,0) 65%)}
.recap__titre{margin:0;font-family:var(--serif);font-size:32px;font-style:italic;line-height:1;color:var(--or)}
.recap__liste{display:grid;margin:0}
.recap__liste div{padding:14px 0;border-bottom:1px solid var(--or-trait)}
.recap__liste dt{margin-bottom:4px;letter-spacing:.26em;color:var(--ivoire-3)}
.recap__liste dd{margin:0;font-family:var(--serif);font-size:22px;line-height:1.25;color:var(--ivoire)}
.recap__liste dd.vide{font-style:italic;color:var(--ivoire-3)}
.recap__liste dd.maj{animation:eclat .9s var(--ease)}
.recap__note{margin:0;font-size:13px;line-height:1.55;color:var(--ivoire-3)}
.statut{margin:0;font-size:15px;line-height:1.5;color:var(--or-pale)}
.statut:not(:empty){padding:14px 16px;border:1px solid var(--or);background:rgba(201,168,106,.09)}
.statut__plus{display:block;margin-top:6px;font-size:14px;color:var(--ivoire-2)}

/* VII. Infos */
.scene--infos{background:radial-gradient(ellipse 50% 40% at 15% 40%,rgba(201,168,106,.07),rgba(201,168,106,0) 70%),var(--noir)}
.infos{display:grid;grid-template-columns:minmax(150px,230px) minmax(0,1fr);align-items:end;gap:clamp(32px,5vw,80px);margin:16px 0 72px;text-align:left}
.facade{margin:0;color:var(--or)}
.facade svg{display:block;width:100%;height:auto}
.f-trait{fill:none;stroke:currentColor;stroke-width:1.1;stroke-linejoin:round;stroke-linecap:round}
.f-fin{stroke-width:.7;opacity:.6}
.js .facade .f-trait{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 2.6s var(--ease) .2s}
.js .facade.est-visible .f-trait{stroke-dashoffset:0}
.infos__grille{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--or-trait);border-bottom:1px solid var(--or-trait)}
.carton{padding:32px clamp(18px,2.2vw,30px)}
.carton+.carton{border-left:1px solid var(--or-trait)}
.carton__titre{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:0 0 18px;color:var(--or)}
.carton__titre span{padding:2px 8px;border:1px solid var(--or-trait);letter-spacing:.12em;color:var(--ivoire-2)}
.carton p{margin:0 0 8px;font-size:16px;color:var(--ivoire-2)}
.carton p.carton__fort{margin-bottom:12px;font-family:var(--serif);font-size:26px;line-height:1.15;color:var(--ivoire)}
.carton p.carton__fin{margin-top:16px;font-size:14px;color:var(--ivoire-3)}
.bon-a-savoir{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px clamp(28px,3.6vw,56px);margin:0 0 80px;text-align:left}
.bon-a-savoir div{position:relative;padding-left:22px}
.bon-a-savoir div::before{content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;border:1px solid var(--or);transform:rotate(45deg)}
.bon-a-savoir dt{margin-bottom:6px;font-family:var(--serif);font-size:23px;line-height:1.2;color:var(--ivoire)}
.bon-a-savoir dd{margin:0;font-size:15px;line-height:1.6;color:var(--ivoire-2)}
.lettre{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);align-items:center;gap:24px clamp(28px,5vw,64px);padding:clamp(26px,4vw,48px);border:1px solid var(--or-trait);background:var(--noir-2);text-align:left}
.lettre__titre{margin:0 0 6px;font-family:var(--serif);font-size:clamp(32px,3.2vw,42px);font-weight:400;line-height:1.05;color:var(--or)}
.lettre__texte p{margin:0;color:var(--ivoire-2);text-wrap:balance}
.lettre__champ label{display:block;margin-bottom:6px;letter-spacing:.2em;color:var(--ivoire-2)}
.lettre__ligne{display:flex;align-items:flex-end;gap:14px}
.lettre__ligne input{flex:1;min-width:0}
.lettre__ligne .bouton{flex:none}
.lettre .statut:not(:empty){margin-top:14px}

/* Pied de page */
.pied{overflow:hidden;padding:clamp(80px,11vw,140px) var(--gouttiere) 40px;border-top:1px solid var(--or-trait);background:radial-gradient(ellipse 60% 70% at 50% 100%,rgba(201,168,106,.1),rgba(201,168,106,0) 70%),#090807;text-align:center}
.pied__marque{margin:22px 0 22px;font-family:var(--serif);font-size:clamp(58px,13.4vw,216px);line-height:.9;letter-spacing:-.03em;color:var(--or)}
.pied__ligne{margin:0;line-height:1.5;letter-spacing:.34em;color:var(--ivoire-2);text-wrap:balance}
.pied__ligne span{white-space:nowrap}
.pied__bas{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:22px 40px;max-width:1220px;margin:72px auto 0;padding-top:28px;border-top:1px solid var(--or-trait)}
.pied__liens{display:flex;flex-wrap:wrap;gap:12px 28px;margin:0;padding:0;list-style:none}
.pied__liens a{padding:4px 0;border-bottom:1px solid var(--or-trait);font-size:14px;color:var(--ivoire);text-decoration:none;transition:color .3s,border-color .3s}
.pied__liens a:hover{color:var(--or-pale);border-color:var(--or)}
.pied__mention{max-width:62ch;margin:0;font-size:13px;line-height:1.6;color:var(--ivoire-3);text-align:left}

/* Apparitions */
.js .fx{opacity:0;transform:translateY(30px);transition:opacity 1.2s var(--ease),transform 1.2s var(--ease);transition-delay:var(--d,0s)}
.js .fx.est-visible{opacity:1;transform:none}

@keyframes monte{from{transform:translateY(108%)}to{transform:none}}
@keyframes apparait{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes fondu{from{opacity:0}to{opacity:1}}
@keyframes recul{from{transform:scale(1.12)}to{transform:scale(1)}}
@keyframes tourne{to{transform:rotate(360deg)}}
@keyframes indice{0%{transform:scaleY(0)}55%{transform:scaleY(1);opacity:1}100%{transform:scaleY(1);opacity:0}}
@keyframes eclat{0%{color:var(--or-pale)}100%{color:var(--ivoire)}}

/* Adaptations */
@media (min-width:720px){.scene--ouverture{min-height:calc(100svh - 36px)}}
@media (max-height:960px) and (min-width:720px){.scene--ouverture .monumental{font-size:clamp(64px,min(19vw,19vh),236px)}.scene--ouverture{padding-bottom:64px}.ouverture__sur{margin-bottom:20px}.ouverture__chapeau{font-size:21px;margin-bottom:32px}}
@media (min-width:1240px){.chapitres{display:block}.scene{padding-inline:calc(var(--gouttiere) + 44px)}}

@media (max-width:1079px){
:root{--h-entete:72px}
.entete{justify-content:space-between}
.entete__nav{display:flex;width:auto}
.entete__liens{display:none}
.marque__mono{width:46px;height:46px;font-size:19px}
.marque__nom{display:block}
.js .menu-bouton{display:inline-flex}
}

@media (max-width:959px){
.deux-colonnes,.atlas,.infos,.lettre{grid-template-columns:1fr}
.principes{grid-template-columns:1fr}
.principes li+li{border-left:0;border-top:1px solid var(--or-trait)}
.boussole{max-width:440px}
.rituel{grid-template-columns:1fr;gap:48px;max-width:560px;margin-inline:auto}
.rituel__colonne,.rituel__colonne:first-child,.rituel__colonne:last-child{text-align:center}
.rituel__colonne p,.rituel__colonne:first-child p{margin-inline:auto}
.arche{order:-1;width:min(100%,330px);margin:0 auto}
.resa{grid-template-columns:minmax(0,1fr);grid-template-areas:"fil" "corps" "recap"}
.recap{border-left:0;border-top:1px solid var(--or-trait)}
.facade{width:180px;margin:0 auto}
.infos{align-items:center}
.infos__grille{grid-template-columns:1fr}
.carton+.carton{border-left:0;border-top:1px solid var(--or-trait)}
.bon-a-savoir{grid-template-columns:1fr 1fr}
.legende-photo{display:none}
}

@media (max-width:939px){
.fil{justify-content:center;padding:14px 6px}
.fil__lib{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
}

@media (max-width:719px){
.medaillon{display:none}
.scene--ouverture .monumental{font-size:min(22vw,23vh)}
.scene--ouverture .scene__voile{background:linear-gradient(180deg,rgba(14,13,11,.6),rgba(14,13,11,0) 24%,rgba(14,13,11,0) 70%,var(--noir)),radial-gradient(ellipse 95% 55% at 50% 46%,rgba(14,13,11,.86),rgba(14,13,11,.6))}
.borne{width:38px;height:38px;font-size:15px}
.ouverture .ouverture__sur{letter-spacing:.2em;text-wrap:balance}
.ouverture__sur::before,.ouverture__sur::after{display:none}
.scene--ouverture::after{content:"";position:absolute;left:50%;bottom:26px;width:1px;height:56px;background:linear-gradient(var(--or),rgba(201,168,106,0));transform-origin:50% 0;animation:indice 2.6s var(--ease) infinite}
.ligne--decalee{padding-left:.12em}
.couverts{grid-template-columns:repeat(4,minmax(0,1fr));max-width:340px}
.services{grid-template-columns:1fr}
.champs{grid-template-columns:1fr}
.bon-a-savoir{grid-template-columns:1fr}
.pied__bas{justify-content:center}
.pied__liens{justify-content:center}
.pied__mention{text-align:center}
.accords div{grid-template-columns:1fr;text-align:center}
.accords dt{padding-top:0}
}

@media (max-width:520px){
.surtitre{letter-spacing:.24em}
.surtitre--filets{gap:12px}
.surtitre--filets::before,.surtitre--filets::after{width:18px}
.scene{padding-top:120px;padding-bottom:96px}
.chapeau{margin-bottom:44px}
.titre-scene{font-size:clamp(44px,13vw,64px)}
.carte-imprimee{margin-inline:-6px}
.carte-imprimee::before{inset:8px}
.carte-imprimee::after{inset:12px}
.onglet{padding-inline:10px}
.bouton{padding:0 24px;letter-spacing:.22em}
.bouton>span{margin-right:-.22em}
.ouverture__actions .bouton{width:100%;max-width:320px}
.lettre__ligne{flex-direction:column;align-items:stretch}
.etape__actions{flex-direction:column-reverse;align-items:stretch;gap:6px}
.producteur{grid-template-columns:44px 1fr;gap:12px}
.producteur__n{font-size:25px}
.cal__grille{border-spacing:2px}
.cal__jour{font-size:17px}
.marque__nom{font-size:19px}
.menu-bouton{padding:0 12px;gap:10px}
}

@media (max-width:359px){
.marque__nom{display:none}
.surtitre{letter-spacing:.18em;text-wrap:balance}
.surtitre--filets::before,.surtitre--filets::after{display:none}
.resa__corps{padding:24px 16px}
.cal__mois{font-size:22px}
.cal__nav{width:40px;height:40px}
}

@media (prefers-reduced-motion:reduce){
*,*::before,*::after{animation-duration:.01ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important}
.js .fx{opacity:1;transform:none}
.js .scene:not(.scene--ouverture) .scene__fond img{opacity:1;transform:none}
.scene__fond{transform:none!important}
.medaillon svg{animation:none}
.js .facade .f-trait{stroke-dashoffset:0}
}
