:root{--creme: #f7f2e9;--creme-2: #efe7d8;--blanc: #fffdf8;--encre: #29241c;--encre-70: rgba(41, 36, 28, .7);--encre-50: rgba(41, 36, 28, .5);--vert: #31473a;--vert-sombre: #243428;--cuivre: #a56b3c;--ligne: rgba(41, 36, 28, .14);--serif: "Cormorant Garamond", Georgia, serif;--sans: "Jost", "Segoe UI", sans-serif;--ombre: 0 10px 30px rgba(41, 36, 28, .08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--sans);font-weight:300;font-size:17px;line-height:1.7;color:var(--encre);background:var(--creme);-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}h1,h2,h3,.serif{font-family:var(--serif);font-weight:500;line-height:1.15;margin:0 0 .5em}h1{font-size:clamp(2.6rem,6vw,4.4rem)}h2{font-size:clamp(1.9rem,3.6vw,2.8rem)}h3{font-size:1.35rem}p{margin:0 0 1em}a{color:var(--vert);text-decoration-color:#31473a59;text-underline-offset:3px}a:hover{color:var(--cuivre)}.container{width:min(1140px,100% - 3rem);margin-inline:auto}.header{position:sticky;top:0;z-index:50;background:#f7f2e9eb;backdrop-filter:blur(8px);border-bottom:1px solid var(--ligne)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:.9rem 0}.logo img{height:52px;width:auto}.logo-texte{font-family:var(--serif);font-size:1.5rem;font-weight:600;letter-spacing:.02em;color:var(--encre);text-decoration:none;white-space:nowrap}.nav{display:flex;align-items:center;gap:1.4rem}.nav a{font-size:.82rem;font-weight:400;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--encre-70);padding:.3rem 0;border-bottom:1px solid transparent}.nav a:hover,.nav a[aria-current=page]{color:var(--encre);border-bottom-color:var(--cuivre)}.header-actions{display:flex;align-items:center;gap:1rem}.langs{display:flex;gap:.55rem;align-items:center;font-size:.8rem;letter-spacing:.1em}.langs a{text-decoration:none;color:var(--encre-50);text-transform:uppercase;padding:.15rem .1rem}.langs a.actif,.langs a:hover{color:var(--encre);border-bottom:1px solid var(--cuivre)}.btn{display:inline-block;font-family:var(--sans);font-size:.85rem;font-weight:400;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;text-align:center;padding:.75rem 1.6rem;border:1px solid var(--vert);color:var(--creme);background:var(--vert);cursor:pointer;transition:background .2s ease,color .2s ease}.btn:hover{background:var(--vert-sombre);color:var(--creme)}.btn.contour{background:transparent;color:var(--vert)}.btn.contour:hover{background:var(--vert);color:var(--creme)}.btn.cuivre{background:var(--cuivre);border-color:var(--cuivre)}.btn.cuivre:hover{background:#8f5a30}.burger{display:none;background:none;border:none;cursor:pointer;padding:.4rem}.burger span{display:block;width:24px;height:2px;background:var(--encre);margin:5px 0;transition:transform .2s ease,opacity .2s ease}.hero{position:relative;min-height:82vh;display:grid;place-items:center;text-align:center;color:var(--blanc);overflow:hidden}.hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero .voile{position:absolute;inset:0;background:linear-gradient(#14120c73,#14120c8c)}.hero-contenu{position:relative;padding:4rem 1.5rem;max-width:860px}.hero .baseline{font-size:.9rem;letter-spacing:.3em;text-transform:uppercase;color:#fffdf8d9;margin-bottom:1.2rem}.hero h1{color:var(--blanc);text-shadow:0 2px 24px rgba(0,0,0,.35)}.hero p.sous-titre{font-size:1.15rem;color:#fffdf8eb;max-width:640px;margin:0 auto 2.2rem}.hero-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.hero .btn{border-color:var(--blanc);background:var(--blanc);color:var(--encre)}.hero .btn:hover{background:var(--creme)}.hero .btn.contour{background:transparent;color:var(--blanc)}.hero .btn.contour:hover{background:#fffdf81f}.section{padding:5rem 0}.section.blanc{background:var(--blanc)}.section.vert{background:var(--vert);color:var(--creme)}.section.vert h2,.section.vert h3{color:var(--creme)}.section-intro{max-width:720px;margin:0 auto 3rem;text-align:center}.deux-colonnes{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center}.deux-colonnes img{border-radius:2px;box-shadow:var(--ombre)}.eyebrow{font-size:.8rem;letter-spacing:.28em;text-transform:uppercase;color:var(--cuivre);margin-bottom:.8rem}.section.vert .eyebrow{color:#d9b58c}.chiffres{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;text-align:center}.chiffre .valeur{font-family:var(--serif);font-size:2.6rem;font-weight:600;color:var(--cuivre)}.chiffre .libelle{font-size:.95rem;color:var(--encre-70)}.section.vert .chiffre .libelle{color:#f7f2e9bf}.section.vert .chiffre .valeur{color:#d9b58c}.infos-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2.5rem}.infos-bloc h3{font-size:1.15rem;letter-spacing:.08em;text-transform:uppercase;font-family:var(--sans);font-weight:500;color:var(--vert);margin-bottom:.8rem}.infos-bloc ul{list-style:none;margin:0;padding:0}.infos-bloc li{padding:.3rem 0 .3rem 1.3rem;position:relative}.infos-bloc li:before{content:"•";position:absolute;left:0;color:var(--cuivre)}.horaires-table{width:100%;max-width:560px;margin:0 auto;border-collapse:collapse}.horaires-table td{padding:.7rem .4rem;border-bottom:1px solid var(--ligne)}.horaires-table tr:last-child td{border-bottom:none}.horaires-table td:first-child{font-weight:400}.horaires-table td:last-child{text-align:right;color:var(--encre-70)}.galerie{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.galerie a{display:block;overflow:hidden;border-radius:2px}.galerie img{width:100%;height:260px;object-fit:cover;transition:transform .35s ease}.galerie a:hover img{transform:scale(1.04)}.avis-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.carte-avis{background:var(--blanc);border:1px solid var(--ligne);border-radius:2px;padding:1.8rem;box-shadow:var(--ombre)}.carte-avis .note-etoiles{color:var(--cuivre);letter-spacing:.2em;margin-bottom:.6rem}.carte-avis .auteur{margin-top:1rem;font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;color:var(--encre-50)}.note-globale{text-align:center;margin-bottom:3rem}.note-globale .grosse-note{font-family:var(--serif);font-size:3.4rem;font-weight:600;color:var(--vert)}.note-globale .detail{color:var(--encre-70)}.menu-section{max-width:640px;margin:0 auto 3rem}.menu-item{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.85rem 0;border-bottom:1px dotted var(--ligne)}.menu-item .nom{font-family:var(--serif);font-size:1.25rem;font-weight:500}.menu-item .desc{display:block;font-size:.92rem;color:var(--encre-70);font-family:var(--sans);font-weight:300}.menu-item .prix{font-family:var(--serif);font-size:1.2rem;color:var(--cuivre);white-space:nowrap}.menu-pdf{text-align:center;margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--ligne)}.menu-note{text-align:center;color:var(--encre-50);font-size:.92rem;font-style:italic;margin-top:1.5rem}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:3rem;align-items:start}.contact-infos p{margin-bottom:.6rem}.contact-infos .etiquette{display:block;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--cuivre);margin-top:1.2rem}.carte-map{border:1px solid var(--ligne);border-radius:2px;overflow:hidden;box-shadow:var(--ombre)}.formulaire label{display:block;font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;margin:1.1rem 0 .35rem;color:var(--encre-70)}.formulaire input,.formulaire textarea{width:100%;padding:.75rem .9rem;border:1px solid var(--ligne);background:var(--blanc);font-family:var(--sans);font-size:1rem;font-weight:300;color:var(--encre);border-radius:2px}.formulaire input:focus,.formulaire textarea:focus{outline:2px solid rgba(49,71,58,.35);border-color:var(--vert)}.formulaire .champ-hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}.formulaire-msg{display:none;margin-top:1rem;padding:1rem;background:var(--vert);color:var(--creme);border-radius:2px}.formulaire-msg.erreur{background:#8c3b2e}.formulaire-msg.visible{display:block}.page-legale{max-width:760px;margin:0 auto}.page-legale h2{margin-top:2.2rem;font-size:1.5rem}.page-legale p{color:var(--encre-70)}.bandeau-resa{text-align:center;padding:4.5rem 0;background:var(--vert-sombre);color:var(--creme)}.bandeau-resa h2{color:var(--creme)}.bandeau-resa p{color:#f7f2e9cc}.modal-resa{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:1.5rem;background:#14120cb3}.modal-resa.ouvert{display:flex}.modal-boite{position:relative;width:min(680px,100%);background:var(--blanc);border-radius:3px;overflow:hidden;box-shadow:0 20px 60px #00000059}.modal-fermer{position:absolute;top:.5rem;right:.7rem;z-index:2;background:var(--blanc);border:1px solid var(--ligne);border-radius:50%;width:36px;height:36px;font-size:1.1rem;line-height:1;cursor:pointer;color:var(--encre)}.modal-boite iframe{width:100%;height:560px;border:0;display:block}.modal-lien-direct{display:block;text-align:center;padding:.8rem;font-size:.9rem}.footer{background:var(--vert-sombre);color:#f7f2e9d1;padding:3.5rem 0 2rem;font-size:.95rem}.footer a{color:#f7f2e9e6}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2.5rem;margin-bottom:2.5rem}.footer h3{font-family:var(--sans);font-size:.82rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:#d9b58c;margin-bottom:.9rem}.footer ul{list-style:none;margin:0;padding:0}.footer li{margin-bottom:.45rem}.footer-bas{border-top:1px solid rgba(247,242,233,.16);padding-top:1.4rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.85rem;color:#f7f2e98c}.badge-distinction{display:inline-block;border:1px solid rgba(247,242,233,.3);border-radius:2px;padding:.35rem .7rem;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;margin:0 .4rem .4rem 0}@media(max-width:960px){.deux-colonnes,.contact-grid,.infos-grid{grid-template-columns:1fr;gap:2rem}.footer-grid{grid-template-columns:1fr 1fr}.chiffres{grid-template-columns:repeat(2,1fr)}.avis-grid,.galerie{grid-template-columns:1fr 1fr}}@media(max-width:760px){body{font-size:16px}.section{padding:3.5rem 0}.burger{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--creme);border-bottom:1px solid var(--ligne);flex-direction:column;align-items:flex-start;padding:1.2rem 1.5rem 1.6rem;gap:.9rem}.nav.ouvert{display:flex}.header-inner{position:relative}.langs{display:none}.galerie{grid-template-columns:1fr}.galerie img{height:220px}.avis-grid,.footer-grid{grid-template-columns:1fr}.modal-boite iframe{height:480px}}
