@font-face{font-family:"Playfair Display SC";src:url("fonts/PlayfairDisplaySC-Regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Karla;src:url("fonts/Karla.ttf") format("truetype");font-style:normal;font-weight:200 800;font-display:swap}
:root{--foret:#17301f;--foret-2:#0f2418;--creme:#f7f1e3;--pesto:#9bb450;--parmesan:#d9a45b;--encre:#14261b;--content:64rem}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:7rem}body{margin:0;color:var(--creme);font:400 17px/1.55 Karla,system-ui,sans-serif;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.2em}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--parmesan);outline-offset:2px}
.background{position:fixed;inset:0;z-index:-1;overflow:hidden;background-color:#17301f;animation:drift 28s ease-in-out infinite alternate;will-change:transform}.background picture,.background picture img,.background-overlay{position:absolute;inset:0;width:100%;height:100%}.background picture img{object-fit:cover;object-position:45% 40%}.background-overlay{background:linear-gradient(rgba(12,31,22,.35),rgba(12,31,22,.55))}@keyframes drift{from{transform:scale(1.04) translate(-1.5%,1%)}to{transform:scale(1.1) translate(1.5%,-1%)}}
.fiction-banner{position:fixed;z-index:5;top:0;left:0;right:0;min-height:32px;padding:4px 12px;text-align:center;background:rgba(15,36,24,.92);font-size:14px;letter-spacing:.04em}.site-header{position:fixed;z-index:4;top:32px;left:0;right:0;padding:8px 12px}.menu{max-width:var(--content);min-height:52px;margin:auto;padding:4px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:16px}.brand{font:400 1.2rem/1.2 "Playfair Display SC",Georgia,serif;white-space:nowrap}.nav-links{display:flex;align-items:center;gap:clamp(4px,2vw,20px)}.nav-links a{display:grid;place-items:center;min-height:44px;padding:0 5px;font-weight:600}
.glass-deco{background:rgba(255,255,255,.18);-webkit-backdrop-filter:blur(14px) saturate(120%);backdrop-filter:blur(14px) saturate(120%);border:1px solid rgba(255,255,255,.45);box-shadow:0 8px 32px rgba(8,20,13,.28);color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.45)}.hero{min-height:100svh;display:grid;align-items:center;padding:138px 20px 56px}.hero-copy{width:min(100%,var(--content));margin:auto;padding:clamp(22px,5vw,60px);border-radius:24px;background:rgba(15,36,24,.4);text-shadow:0 1px 12px rgba(0,0,0,.72)}.eyebrow{margin:0 0 8px;color:var(--parmesan);font-size:.9rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 1px 5px #14261b}
h1,h2,h3{font-family:"Playfair Display SC",Georgia,serif;font-weight:400;font-synthesis:none;line-height:1.12}h1{margin:.08em 0;font-size:clamp(2.6rem,9vw,5.5rem)}h2{margin:.12em 0 .35em;font-size:clamp(1.9rem,6vw,3rem)}h3{margin:0;font-size:1.25rem}.hero-copy>p:not(.eyebrow){max-width:38rem;font-size:1.15rem}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 18px;border-radius:999px;border:1px solid rgba(255,255,255,.6);font:700 1rem/1.25 Karla,system-ui,sans-serif;text-align:center;cursor:pointer;text-shadow:none}.primary{background:#234a2c;color:var(--creme)}.secondary{background:rgba(255,255,255,.9);color:var(--encre)}
.content-section{padding:48px 20px;scroll-margin-top:108px}.panel{width:min(100%,var(--content));margin:0 auto;padding:clamp(22px,5vw,48px);border-radius:22px}.glass-text{background:rgba(255,255,255,.82);color:var(--encre);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.7);box-shadow:0 8px 32px rgba(8,20,13,.28)}.glass-dark{background:rgba(15,36,24,.78);color:var(--creme);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.35);box-shadow:0 8px 32px rgba(8,20,13,.28)}.fiction-note{margin:.25rem 0 1.25rem;font-size:1rem;font-weight:600}.dish-list,.hours-list{list-style:none;padding:0;margin:0}.dish{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 0;border-top:1px solid rgba(20,38,27,.2)}.dish img{width:56px;height:56px;border-radius:12px;object-fit:cover}.dish:first-child img{object-position:center 52%}.dish p{margin:3px 0 0;font-size:1rem}.price{font-weight:700;white-space:nowrap}.hours-list li{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid rgba(20,38,27,.2)}.hours-list li span:last-child{text-align:right}.address{font-weight:600;margin:20px 0}.glass-dark .eyebrow{color:#f0cc8f}.glass-dark .fiction-note{margin-top:18px}
.site-footer{padding:36px 20px 48px;text-align:center;text-shadow:0 1px 8px rgba(0,0,0,.8)}.site-footer>p{margin:0 auto 14px}.site-footer div{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 24px}.site-footer a{min-height:44px;display:inline-flex;align-items:center}.demo-status{position:fixed;z-index:8;left:50%;bottom:20px;transform:translate(-50%,12px);padding:10px 16px;border-radius:999px;background:var(--foret-2);color:var(--creme);border:1px solid rgba(255,255,255,.6);box-shadow:0 4px 20px rgba(0,0,0,.35);opacity:0;pointer-events:none;transition:opacity .18s,transform .18s}.demo-status.is-visible{opacity:1;transform:translate(-50%,0)}.js .reveal:not(.is-in){opacity:0;transform:translateY(16px)}.reveal{transition:opacity .6s ease,transform .6s ease}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.glass-text{background:#f7f1e3;color:#14261b}.glass-dark{background:#17301f;color:#f7f1e3}.glass-deco{background:rgba(23,48,31,.88);color:#f7f1e3}}
@media(max-width:700px){html{scroll-padding-top:7rem}.fiction-banner{background:rgba(15,36,24,.92)}.hero-copy{background:rgba(15,36,24,.35)}.glass-text,.glass-dark{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.content-section{padding-block:44px}.dish{grid-template-columns:52px minmax(0,1fr) auto;gap:9px}.dish img{width:52px;height:52px}.price{font-size:.95rem}}
@media(max-width:390px){.menu{padding-inline:9px;gap:5px}.brand{font-size:1.08rem}.nav-links{gap:1px}.nav-links a{padding:0 4px;font-size:.95rem}.dish{grid-template-columns:46px minmax(0,1fr) auto;gap:7px}.dish img{width:46px;height:46px}.dish h3{font-size:1.12rem}.price{font-size:.9rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.background{animation:none;transform:none;will-change:auto}.reveal,.demo-status{transition:none}.js .reveal:not(.is-in){opacity:1;transform:none}}
.demo-status{bottom:auto}

/* Correctifs contraste : barre de menu en verre sombre teinté, petits titres lisibles */
.menu.glass-deco{background:rgba(15,36,24,.62);border-color:rgba(255,255,255,.4);text-shadow:none}
.glass-text .eyebrow{color:#6b4510;text-shadow:none}
.glass-dark .eyebrow{color:#e8c88f;text-shadow:none}
.hero .eyebrow{color:#f0c987}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.menu.glass-deco{background:#17301f}}
.hero-copy{background:rgba(15,36,24,.5)}
.site-footer{background:rgba(15,36,24,.92);text-shadow:none}
@media(max-width:700px){.hero-copy{background:rgba(15,36,24,.5)}}
/* Mobile : le panneau sombre n'est pas flouté (maximum trois zones floues visibles ensemble) */
@media(max-width:700px){.glass-dark{background:rgba(15,36,24,.9);-webkit-backdrop-filter:none;backdrop-filter:none}}
@media(max-width:700px){.hours-list li{display:block}.hours-list li span{display:block;text-align:left}.hours-list li span:first-child{font-weight:700}}
