:root{--ink:#171210;--ink-soft:#302724;--paper:#f3eadf;--cream:#fffaf4;--white:#fff;--red:#b42027;--red-dark:#7c1117;--gold:#d4a35e;--blue:#1b5872;--muted:#746863;--line:#17121024;--shadow:0 24px 80px #1c120f24;--shadow-strong:0 35px 110px #00000047;--radius:clamp(1rem, 2vw, 1.6rem);--shell:min(1220px, calc(100vw - 48px));--font-display:Georgia, "Times New Roman", serif;--font-body:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}@view-transition{navigation:auto}::view-transition-old(root){animation:.22s both page-out}::view-transition-new(root){animation:.4s both page-in}@keyframes page-out{to{opacity:0;transform:translateY(-8px)}}@keyframes page-in{0%{opacity:0;transform:translateY(10px)}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px;scroll-padding-top:6rem;overflow-x:clip}body{background:var(--cream);min-width:320px;color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.6;overflow-x:clip}body.nav-open,body.gate-open,body.admin-menu-open,body.announcement-open{overflow:hidden}main{overflow:clip}img{max-width:100%;height:auto;display:block}picture{min-width:0;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{max-width:100%;font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}h1,h2,h3,p,figure,blockquote{margin-top:0}h1,h2,h3{max-width:100%;font-family:var(--font-display);letter-spacing:-.04em;overflow-wrap:normal;word-break:normal;-webkit-hyphens:manual;hyphens:manual;text-wrap:balance;margin-bottom:.45em;font-weight:700;line-height:.98}h1{font-size:clamp(3rem,8vw,7.8rem)}h2{font-size:clamp(2.5rem,5.5vw,5.4rem)}h3{font-size:clamp(1.6rem,3vw,2.5rem)}p,li,dd,td,a,label,small{overflow-wrap:break-word;word-break:normal}em{color:var(--red);font-weight:400}input,select,textarea{font-size:max(1rem,16px)}.shell{width:var(--shell);min-width:0;margin-inline:auto}.section{padding-block:clamp(4.5rem,9vw,8.5rem)}.section-heading{max-width:780px;margin-bottom:clamp(2rem,5vw,4rem)}.section-heading>p:last-child{max-width:650px;color:var(--muted)}.eyebrow{color:var(--red);letter-spacing:.18em;text-transform:uppercase;margin-bottom:1rem;font-size:.7rem;font-weight:900}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:10000;color:var(--ink);background:#fff;border-radius:.5rem;padding:.7rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-200%)}.skip-link:focus{transform:none}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.scroll-progress{z-index:4000;background:var(--red);transform-origin:0;pointer-events:none;width:100%;height:3px;position:fixed;inset:0 auto auto 0;transform:scaleX(0)}.site-header{z-index:1000;color:#fff;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem clamp(1rem,4vw,3.5rem);transition:background .3s,padding .3s,box-shadow .3s;display:flex;position:fixed;inset:0 0 auto}.site-header.is-scrolled,body:not(.home-page):not(.restaurant-page) .site-header{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#130e0df0;padding-block:.55rem;box-shadow:0 10px 35px #0003}.brand{z-index:2;min-width:0;font:700 clamp(1rem, 2vw, 1.25rem) var(--font-display);letter-spacing:-.03em;white-space:nowrap;align-items:center;gap:.65rem;display:flex;position:relative}.brand img{object-fit:contain;width:clamp(44px,5vw,56px);height:clamp(44px,5vw,56px)}.brand em{color:#fff;font-weight:400}.main-nav{align-items:center;gap:clamp(.85rem,2vw,1.8rem);font-size:.8rem;font-weight:800;display:flex}.main-nav>a:not(.button){white-space:nowrap;position:relative}.main-nav>a:not(.button):after{content:"";background:var(--gold);transform-origin:100%;height:1px;transition:transform .25s;position:absolute;inset:auto 0 -.35rem;transform:scaleX(0)}.main-nav>a:not(.button):hover:after{transform-origin:0;transform:scaleX(1)}.nav-mobile-label{display:none}.nav-toggle{z-index:2;background:#0000002e;border:1px solid #ffffff40;border-radius:50%;width:48px;height:48px;padding:11px;display:none;position:relative}.nav-toggle span:not(.sr-only){background:#fff;width:22px;height:2px;margin:5px auto;transition:transform .25s,opacity .2s;display:block}.nav-toggle[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.button{border:1px solid var(--red);background:var(--red);color:#fff;letter-spacing:.045em;overflow-wrap:normal;word-break:normal;text-align:center;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;max-width:100%;min-height:3.2rem;padding:.78rem 1.35rem;font-size:.75rem;font-weight:900;line-height:1.25;transition:transform .2s,background .2s,color .2s,box-shadow .2s;display:inline-flex}.button:hover{background:var(--red-dark);transform:translateY(-2px);box-shadow:0 12px 30px #b4202740}.button-small{min-height:2.6rem;padding:.55rem 1rem;font-size:.68rem}.button-outline{color:var(--red);background:0 0}.button-light{color:var(--ink);background:#fff;border-color:#fff}.button-ghost{color:#fff;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0000001f;border-color:#fff9}.button-danger{background:#8b1820;border-color:#8b1820}.button-muted{color:var(--ink);background:#eee6dc;border-color:#eee6dc}.button-row,.card-actions{flex-wrap:wrap;align-items:center;gap:.8rem 1rem;min-width:0;display:flex}.text-link{border-bottom:1px solid;width:fit-content;max-width:100%;padding-bottom:.15rem;font-size:.8rem;font-weight:900;display:inline-block}.text-button{color:inherit;background:0 0;border:0;text-decoration:underline}.hero{background:var(--ink);color:#fff;isolation:isolate;align-items:end;min-height:max(700px,82svh);display:grid;position:relative;overflow:hidden}.hero-home{min-height:max(720px,100svh)}.hero-slideshow,.hero-media{width:100%;height:100%;position:absolute;inset:0}.hero-slideshow picture{position:absolute;inset:0}.hero-media{object-fit:cover;object-position:center}.hero-frame-secondary{opacity:0;animation:16s ease-in-out infinite hero-crossfade}.hero-frame-primary{animation:16s ease-in-out infinite hero-crossfade-primary}@keyframes hero-crossfade{0%,43%{opacity:0;transform:scale(1.04)}50%,93%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.04)}}@keyframes hero-crossfade-primary{0%,43%{opacity:1;transform:scale(1)}50%,93%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}.hero-overlay{z-index:1;background:linear-gradient(90deg,#100a09ed 0%,#100a09a3 45%,#100a0929 78%),linear-gradient(#0000 40%,#100a09ad);position:absolute;inset:0}.hero-content{z-index:2;width:min(940px, var(--shell));margin-inline:auto;padding:clamp(8rem,17vh,12rem) 0 clamp(4.5rem,10vh,7.5rem);position:relative}.hero-content h1{margin-bottom:.2em;font-size:clamp(3.5rem,9vw,8.7rem);line-height:.88}.hero-lead{color:#ffffffdb;max-width:620px;margin-bottom:1.7rem;font-size:clamp(1rem,2vw,1.25rem)}.hero .eyebrow{color:#edbd78}.hero .text-link{color:#fff}.reservation-note{color:#ffffffb8;align-items:center;gap:.55rem;margin-top:1rem;font-size:.78rem;display:flex}.reservation-note span{background:#62d18b;border-radius:50%;width:.55rem;height:.55rem;box-shadow:0 0 0 5px #62d18b24}.hero-signature{z-index:2;border-left:1px solid #ffffff6b;align-items:center;gap:.8rem;padding-left:1.2rem;display:flex;position:absolute;bottom:clamp(3rem,8vh,6rem);right:clamp(1.5rem,5vw,5rem)}.hero-signature strong{font:700 clamp(3rem, 5vw, 5rem)/.8 var(--font-display)}.hero-signature span{letter-spacing:.1em;text-transform:uppercase;font-size:.7rem;font-weight:800;line-height:1.35}.scroll-cue{z-index:2;letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:.6rem;font-size:.62rem;display:none;position:absolute;bottom:2rem;right:2.2rem}.scroll-cue span{background:#fff;width:42px;height:1px;animation:1.8s infinite pulse-line}@keyframes pulse-line{50%{opacity:.5;transform:scaleX(.5)}}.location-hero-card{z-index:3;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0f0b0a9e;border:1px solid #ffffff40;border-radius:1rem;width:min(290px,24vw);padding:1.3rem;position:absolute;bottom:clamp(2.5rem,7vw,5rem);right:clamp(1.5rem,5vw,5rem)}.location-hero-card>span{color:#edbd78;letter-spacing:.12em;text-transform:uppercase;font-size:.65rem;font-weight:900}.location-hero-card strong{font:700 1.8rem var(--font-display);margin:.35rem 0;display:block}.location-hero-card p{color:#ffffffbf;margin-bottom:.75rem;font-size:.78rem}.location-hero-card a{font-size:.75rem;font-weight:900}.proof-strip{border-bottom:1px solid var(--line);background:var(--paper)}.proof-grid{grid-template-columns:repeat(4,1fr);display:grid}.proof-grid>div{border-right:1px solid var(--line);align-items:center;gap:.8rem;min-width:0;padding:1.5rem clamp(.8rem,2vw,1.8rem);display:flex}.proof-grid>div:first-child{border-left:1px solid var(--line)}.proof-grid strong{color:var(--red);font:700 clamp(1.7rem, 3vw, 2.4rem) var(--font-display)}.proof-grid span{letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:800;line-height:1.3}.intro-section{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:2rem clamp(2.5rem,7vw,7rem);display:grid}.intro-title,.prose-large{min-width:0}.intro-title h2{margin-bottom:0}.prose-large{color:var(--ink-soft);font-size:clamp(1.08rem,2vw,1.4rem)}.intro-gallery{grid-column:1/-1;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(.7rem,1.6vw,1.3rem);margin-top:clamp(2rem,5vw,4rem);display:grid}.intro-photo{border-radius:var(--radius);background:var(--ink);min-width:0;margin:0;position:relative;overflow:hidden}.intro-photo picture,.intro-photo img{width:100%;height:100%}.intro-photo img{object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.intro-photo:hover img{transform:scale(1.04)}.intro-photo-1{aspect-ratio:4/3;grid-column:span 6}.intro-photo-2,.intro-photo-3{aspect-ratio:3/4;grid-column:span 3}.intro-photo figcaption{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#100a09bf;border-radius:.6rem;padding:.55rem .7rem;font-size:.68rem;position:absolute;inset:auto .7rem .7rem}.locations-section{background:var(--paper)}.location-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2.5vw,2rem);display:grid}.location-card{border-radius:var(--radius);min-width:0;box-shadow:var(--shadow);background:#fff;overflow:hidden}.location-image{aspect-ratio:16/11;background:var(--ink);display:block;position:relative;overflow:hidden}.location-image picture,.location-image img{width:100%;height:100%}.location-image img{object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .4s}.location-card:hover .location-image img{filter:brightness(.82);transform:scale(1.045)}.location-image>span{background:var(--red);color:#fff;width:3rem;height:3rem;font:700 1rem var(--font-display);border-radius:50%;place-items:center;display:grid;position:absolute;top:1rem;right:1rem}.location-image>strong{color:#fff;opacity:0;justify-content:space-between;align-items:center;font-size:.8rem;transition:opacity .3s,transform .3s;display:flex;position:absolute;inset:auto 1.2rem 1.1rem;transform:translateY(8px)}.location-image>strong b{font-size:1.5rem}.location-card:hover .location-image>strong{opacity:1;transform:none}.location-body{grid-template-columns:minmax(0,1fr) minmax(180px,.7fr);gap:1.5rem;padding:clamp(1.35rem,3vw,2.25rem);display:grid}.location-body h3{margin-bottom:.45rem}.location-meta{border-left:1px solid var(--line);padding-left:1.5rem}.location-meta p{justify-content:space-between;gap:.7rem;margin-bottom:.5rem;font-size:.78rem;display:flex}.location-meta p span{color:var(--red);font-weight:900}.location-meta small{color:var(--muted);font-size:.66rem}.location-meta-public-hours p{color:var(--muted);margin:0;line-height:1.75;display:block}.location-body .card-actions{grid-column:1/-1;padding-top:.4rem}.abundance-section{background:#e8ded3}.abundance-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(3rem,8vw,8rem);display:grid}.abundance-copy>p:not(.eyebrow){max-width:580px;color:var(--muted)}.feature-list{border-top:1px solid var(--line);margin:2.3rem 0;padding:0;list-style:none}.feature-list li{border-bottom:1px solid var(--line);gap:1rem;padding:1rem 0;display:flex}.feature-list span{color:var(--red);flex:none;font-size:.78rem;font-weight:900}.abundance-visual{min-width:0;padding:0 0 3rem 4rem;position:relative}.abundance-visual>picture img{aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius);width:100%;box-shadow:var(--shadow)}.floating-photo{background:var(--cream);width:43%;box-shadow:var(--shadow);border-radius:1rem;padding:.55rem;position:absolute;bottom:0;left:0;transform:rotate(-3deg)}.floating-photo img{aspect-ratio:1;object-fit:cover;border-radius:.65rem;width:100%}.round-label{aspect-ratio:1;background:var(--red);color:#fff;width:8rem;font:italic 1.1rem/1.1 var(--font-display);text-align:center;border-radius:50%;place-content:center;display:grid;position:absolute;top:2rem;right:-2rem;transform:rotate(8deg)}.round-label b{font:800 .55rem var(--font-body);letter-spacing:.08em;text-transform:uppercase}.prices-section{padding-top:clamp(4.5rem,8vw,7rem)}.price-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2.5vw,2rem);display:grid}.price-panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff;min-width:0;padding:clamp(1.25rem,3vw,2.2rem)}.price-panel-head{border-bottom:2px solid var(--ink);justify-content:space-between;align-items:end;gap:1rem;padding-bottom:.7rem;display:flex}.price-panel-head h3,.price-panel-head .eyebrow{margin-bottom:0}.price-panel-head>a{color:var(--red);flex:none;font-size:.75rem;font-weight:900}.price-panel ul,.footer-grid ul{margin:0;padding:0;list-style:none}.price-panel li{border-bottom:1px dashed var(--line);grid-template-columns:minmax(0,1fr) auto;gap:1rem;padding:.9rem 0;display:grid}.price-panel li span{min-width:0;display:grid}.price-panel small{color:var(--muted);font-size:.75rem}.price-panel b{color:var(--red);white-space:nowrap}.people-section{padding-top:0}.people-grid{border-radius:var(--radius);background:var(--ink);color:#fff;grid-template-columns:repeat(2,minmax(0,1fr));min-height:620px;display:grid;overflow:hidden}.people-photo picture,.people-photo img{width:100%;height:100%}.people-photo img{object-fit:cover;object-position:center}.people-copy{text-align:center;align-self:center;min-width:0;padding:clamp(2rem,4.5vw,4.5rem)}.people-copy h2{margin-inline:auto;font-size:clamp(2.8rem,5vw,4.9rem)}.people-copy h2>span,.people-copy h2>em{display:block}.people-copy p:not(.eyebrow){color:#ffffffb3;max-width:34rem;margin-inline:auto}.people-copy .button-outline{color:#fff;border-color:#fff}.testimonials-section{background:var(--ink);color:#fff}.light .eyebrow,.testimonials-section .eyebrow{color:#e7b66b}.light>p:last-child{color:#ffffffa6}.testimonial-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.testimonial{border-radius:var(--radius);border:1px solid #ffffff29;min-width:0;margin:0;padding:clamp(1.4rem,3vw,2rem)}.testimonial>div{color:var(--gold);letter-spacing:.1em}.testimonial p{font:1.3rem/1.45 var(--font-display);margin-top:1.4rem}.testimonial cite{color:#ffffff9e;font-size:.75rem;font-style:normal}.news-preview{padding-bottom:2rem}.article-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.article-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;min-width:0;padding:clamp(1.25rem,3vw,1.8rem)}.article-card>img{aspect-ratio:16/10;object-fit:cover;border-radius:.8rem;width:100%;margin-bottom:1.2rem}.article-card h2,.article-card h3{font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.05}.article-card .text-link{color:var(--red)}.final-cta,.cta-section{border-radius:var(--radius);background:var(--red);color:#fff;justify-content:space-between;align-items:center;gap:clamp(1.5rem,5vw,4rem);margin-block:clamp(3rem,7vw,6rem);padding:clamp(1.6rem,5vw,4.2rem);display:flex}.final-cta>div,.cta-section>div{min-width:0}.final-cta h2,.cta-section h2{max-width:820px;margin-bottom:.25em;font-size:clamp(2.25rem,5vw,4.8rem)}.final-cta p:not(.eyebrow),.cta-section p:not(.eyebrow){color:#fffc;max-width:670px;margin-bottom:0}.final-cta .eyebrow,.cta-section .eyebrow{color:#fff}.final-cta>.button,.cta-section>.button{flex:none}.restaurant-quick-nav{z-index:50;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffaf4f0;position:sticky;top:68px}.restaurant-quick-nav>div{scrollbar-width:none;gap:.35rem;padding-block:.6rem;display:flex;overflow-x:auto}.restaurant-quick-nav>div::-webkit-scrollbar{display:none}.restaurant-quick-nav a{border-radius:999px;flex:none;padding:.55rem .8rem;font-size:.72rem;font-weight:850}.restaurant-quick-nav a:hover{background:var(--paper);color:var(--red)}.location-intro{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(2.5rem,7vw,7rem);display:grid}.experience-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding-bottom:clamp(4.5rem,9vw,8rem);display:grid}.experience-card{border-radius:var(--radius);background:var(--paper);min-width:0;overflow:hidden}.experience-card picture,.experience-card img{width:100%}.experience-card img{aspect-ratio:4/5;object-fit:cover;transition:transform .7s}.experience-card:hover img{transform:scale(1.035)}.experience-card>div{padding:1.3rem;position:relative}.experience-card>div>span{background:var(--red);color:#fff;width:3.5rem;height:3.5rem;font:700 1rem var(--font-display);border-radius:50%;place-items:center;display:grid;position:absolute;top:-2.4rem;right:1rem}.experience-card h3{margin-bottom:.25rem;font-size:1.8rem}.experience-card p{color:var(--muted);margin-bottom:0;font-size:.82rem}.menu-preview{background:var(--ink);color:#fff}.formula-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:2.5rem;display:grid}.formula-card{border:1px solid #ffffff29;border-radius:1rem;flex-direction:column;min-width:0;min-height:220px;padding:1.4rem;display:flex}.formula-card>div>span{color:#e7b66b;letter-spacing:.12em;font-size:.65rem;font-weight:900}.formula-card h3{margin-top:.5rem;font-size:1.45rem;line-height:1.1}.formula-card p{color:#ffffff9e;font-size:.82rem}.formula-card>strong{color:#e6b76f;font:700 1.7rem var(--font-display);margin-top:auto}.center{text-align:center}.gallery-section{background:var(--paper)}.gallery-heading{grid-template-columns:minmax(0,1fr) minmax(260px,.55fr);align-items:end;gap:2rem;margin-bottom:3rem;display:grid}.gallery-heading>p{color:var(--muted)}.photo-grid{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:dense;gap:clamp(.55rem,1vw,.9rem);display:grid}.photo-tile{background:var(--ink);color:#fff;text-align:left;border:0;border-radius:clamp(.7rem,1.5vw,1.15rem);min-width:0;padding:0;position:relative;overflow:hidden}.photo-tile.is-landscape{aspect-ratio:3/2;grid-column:span 8}.photo-tile.is-portrait{aspect-ratio:2/3;grid-column:span 4}.photo-tile picture,.photo-tile img{width:100%;height:100%}.photo-tile img{object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .35s}.photo-tile>span{opacity:0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f0a09b8;border-radius:.55rem;padding:.5rem .65rem;font-size:.68rem;line-height:1.35;transition:opacity .25s,transform .25s;position:absolute;inset:auto .8rem .8rem;transform:translateY(6px)}.photo-tile:hover img,.photo-tile:focus-visible img{filter:brightness(.82);transform:scale(1.035)}.photo-tile:hover>span,.photo-tile:focus-visible>span{opacity:1;transform:none}.gallery-dialog{color:#fff;width:min(1180px,100vw - 2rem);max-width:none;max-height:calc(100svh - 2rem);box-shadow:var(--shadow-strong);background:#100d0c;border:0;border-radius:1rem;padding:0;overflow:visible}.gallery-dialog::backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a0706e6}.gallery-dialog-inner{grid-template-rows:minmax(0,1fr) auto;max-height:calc(100svh - 2rem);display:grid}.gallery-dialog img{object-fit:contain;width:100%;max-height:calc(100svh - 6.5rem)}.gallery-dialog p{color:#ffffffbf;margin:0;padding:.9rem 1.2rem;font-size:.78rem}.gallery-close{z-index:2;color:#fff;background:#000000a6;border:1px solid #ffffff59;border-radius:50%;width:2.8rem;height:2.8rem;font-size:1.6rem;line-height:1;position:absolute;top:.7rem;right:.7rem}.announcement-dialog{width:min(620px,100vw - 2rem);max-width:none;max-height:calc(100svh - 2rem);color:var(--ink);box-shadow:var(--shadow-strong);background:0 0;border:0;border-radius:1.45rem;padding:0;overflow:visible}.announcement-dialog::backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0d0908d1}.announcement-card{text-align:center;background:linear-gradient(145deg,#fffdf9 0%,#f5eadf 100%);border:1px solid #ffffffb3;border-radius:1.45rem;max-height:calc(100svh - 2rem);padding:clamp(1.5rem,5vw,3.2rem);animation:.48s cubic-bezier(.2,.8,.2,1) both announcement-in;position:relative;overflow-y:auto}.announcement-marker{background:#b420271a;border-radius:50%;place-items:center;width:4.6rem;height:4.6rem;margin:0 auto 1.2rem;display:grid}.announcement-marker span{background:var(--red);border-radius:50%;width:1.1rem;height:1.1rem;box-shadow:0 0 0 .55rem #b4202724}.announcement-promotion .announcement-marker{background:#d4a35e33}.announcement-promotion .announcement-marker span{background:#b87a27;box-shadow:0 0 0 .55rem #d4a35e3d}.announcement-alert .announcement-card{border-top:.4rem solid var(--red)}.announcement-type{color:var(--red);letter-spacing:.18em;text-transform:uppercase;margin-bottom:.7rem;font-size:.68rem;font-weight:900}.announcement-card h2{overflow-wrap:break-word;max-width:500px;margin:0 auto .65em;font-size:clamp(2.15rem,7vw,4rem);line-height:.98}.announcement-message{max-width:480px;color:var(--ink-soft);overflow-wrap:anywhere;margin:0 auto;font-size:clamp(.98rem,2.5vw,1.12rem);line-height:1.7}.announcement-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem 1rem;margin-top:1.6rem;display:flex}.announcement-dismiss{min-height:2.8rem;color:var(--muted);background:0 0;border:0;border-bottom:1px solid;padding:.55rem .2rem;font-size:.75rem;font-weight:850}.announcement-close{z-index:2;border:1px solid var(--line);width:44px;height:44px;color:var(--ink);background:#ffffffb8;border-radius:50%;place-items:center;padding:0;font-size:1.55rem;line-height:1;display:grid;position:absolute;top:.8rem;right:.8rem}.announcement-restaurant{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin:1.6rem 0 0;font-size:.65rem;font-weight:850}@keyframes announcement-in{0%{opacity:0;transform:translateY(24px)scale(.97)}}.practical-section{background:#e8ded3}.practical-grid{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:2rem clamp(3rem,8vw,8rem);display:grid}.practical-title .button{margin-top:1rem}.details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;display:grid}.details-grid>div{border-top:1px solid var(--line);background:#ffffff40;min-width:0;padding:1.3rem}.details-grid span{color:var(--red);letter-spacing:.12em;text-transform:uppercase;font-size:.68rem;font-weight:900}.details-grid p{margin:.5rem 0}.details-grid small{color:var(--muted)}.details-grid a{font-weight:800}.social-links{flex-wrap:wrap;grid-column:2;gap:.7rem 1.2rem;display:flex}.social-links a{color:var(--red);border-bottom:1px solid;font-size:.75rem;font-weight:900}.page-hero.shell{min-height:auto;padding-top:clamp(9rem,15vw,12rem);padding-bottom:clamp(3rem,7vw,6rem);display:block}.page-hero h1{font-size:clamp(3rem,7vw,7rem)}.page-hero>p:last-child,.page-hero>div>p:not(.eyebrow){max-width:720px;color:var(--muted);font-size:1.05rem}.page-hero.compact{padding-bottom:2rem}.page-hero-split{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(2.5rem,7vw,7rem);display:grid!important}.page-hero-photo{min-width:0;margin:0;position:relative}.page-hero-photo img{aspect-ratio:4/3;border-radius:var(--radius);object-fit:cover;width:100%;box-shadow:var(--shadow)}.page-hero-photo figcaption{color:#fff;background:#0f0a09bf;border-radius:.55rem;padding:.5rem .7rem;font-size:.68rem;position:absolute;inset:auto .8rem .8rem}.menu-nav{z-index:40;border-block:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffaf4f2;position:sticky;top:68px}.menu-nav>div{scrollbar-width:none;gap:.5rem;padding-block:.7rem;display:flex;overflow-x:auto}.menu-nav>div::-webkit-scrollbar{display:none}.menu-nav a{background:#fff;border-radius:999px;flex:none;padding:.5rem .75rem;font-size:.72rem;font-weight:800}.menu-page{padding-block:1rem 4rem}.menu-section{margin:clamp(3rem,7vw,6rem) 0;scroll-margin-top:8rem}.menu-section-title{border-bottom:2px solid var(--red);grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:.8rem 1.2rem;padding-bottom:1rem;display:grid}.menu-section-title>span{color:var(--red);font-weight:900}.menu-section-title h2{margin:0}.menu-section-title p{max-width:700px;color:var(--muted);margin:.6rem 0 0}.menu-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(2rem,5vw,4rem);display:grid}.menu-item,.menu-entry{border-bottom:1px dashed var(--line);grid-template-columns:minmax(0,1fr) auto;gap:.6rem 1rem;min-width:0;padding:1.05rem 0;display:grid}.menu-item h3,.menu-entry h3{font:750 .98rem/1.4 var(--font-body);letter-spacing:0;text-wrap:initial;margin:0}.menu-item p,.menu-entry p{color:var(--muted);margin:.2rem 0 0;font-size:.82rem}.menu-item>strong,.menu-entry>strong{color:var(--red);text-align:right;white-space:normal;align-self:start;font-size:.9rem}.menu-disclaimer{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding-bottom:3rem;display:grid}.menu-disclaimer>div{border:1px solid var(--line);color:var(--muted);border-radius:1rem;padding:1.2rem;font-size:.78rem}.menu-disclaimer strong{color:var(--ink)}.menu-disclaimer p{margin:.4rem 0 0}.content-shell{width:min(900px,100vw - 40px);margin:0 auto;padding-block:8rem 6rem}.content-shell>h1{margin-bottom:2.5rem;font-size:clamp(3rem,7vw,6rem)}.content-shell section{border-bottom:1px solid var(--line);padding-block:1.5rem}.content-shell h2{font-size:clamp(1.8rem,4vw,2.7rem)}.prose{font-size:1.05rem}.prose h2{margin-top:3rem}.prose ul{padding-left:1.2rem}.restaurant-details{border:1px solid var(--line);background:var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.restaurant-details>div{background:#fff;min-width:0;padding:2rem}.menu-shell{width:min(1050px,100vw - 40px);margin:auto;padding-block:8rem}.form-page{background:var(--paper);min-height:100vh;padding:9rem 0 6rem}.form-shell{grid-template-columns:minmax(230px,280px) minmax(0,1fr);gap:clamp(1.5rem,4vw,3rem);width:min(1120px,100vw - 48px);margin:auto;padding-bottom:clamp(4rem,8vw,7rem);display:grid}.form-aside{align-self:start;min-width:0;position:sticky;top:100px}.form-aside h2{margin:1.4rem 0 .2rem;font-size:1.45rem}.form-aside ol{margin:0;padding:0;list-style:none}.form-aside li{border-bottom:1px solid var(--line);gap:.8rem;padding:1rem 0;display:flex}.form-aside li span{color:var(--red);flex:none;font-weight:900}.form-note{background:#fff1db;border-radius:.7rem;margin-top:1.5rem;padding:1rem}.form-note p{margin-bottom:0}.form-intro{max-width:760px;margin-bottom:3rem}.form-intro h1{font-size:clamp(3rem,7vw,6rem)}.premium-form,.manage-panel{border-radius:var(--radius);min-width:0;box-shadow:var(--shadow);background:#fff;padding:clamp(1.2rem,4vw,3.5rem)}.premium-form fieldset{border:0;border-bottom:1px solid var(--line);min-width:0;margin:0 0 2.1rem;padding:0 0 2.1rem}.premium-form legend{width:100%;font:700 clamp(1.4rem, 3vw, 2rem) var(--font-display);margin-bottom:1.4rem}.premium-form legend span{color:var(--red);font:900 .72rem var(--font-body);margin-right:.7rem}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;min-width:0;display:grid}.premium-form label,.admin-form label{min-width:0;color:var(--ink-soft);gap:.4rem;margin-bottom:.9rem;font-size:.8rem;font-weight:850;display:grid}.premium-form input,.premium-form select,.premium-form textarea,.admin-form input,.admin-form select,.admin-form textarea,.filter-bar input,.filter-bar select,.admin-table input,.admin-table select,.message-form textarea{width:100%;min-width:0;color:var(--ink);background:#fffdf9;border:1px solid #d7ccc1;border-radius:.65rem;padding:.78rem .85rem;transition:border .2s,box-shadow .2s}.premium-form input:focus,.premium-form select:focus,.premium-form textarea:focus,.admin-form input:focus,.admin-form select:focus,.admin-form textarea:focus,.filter-bar input:focus,.filter-bar select:focus{border-color:var(--red);outline:none;box-shadow:0 0 0 3px #b420271f}.premium-form small{color:var(--muted);font-weight:400}.check-row{margin:1rem 0}.check{align-items:flex-start;gap:.65rem!important;font-weight:500!important;display:flex!important}.check input{flex:none;height:1.1rem;margin-top:.2rem;width:1.1rem!important}.legal-check{margin-bottom:1.3rem!important}.slots-area{background:#fcf8f2;border:1px dashed #c8bbae;border-radius:.8rem;min-height:75px;margin-top:1rem;padding:1rem}.slot-group+.slot-group{margin-top:1.2rem}.slot-group h3{font:900 .75rem var(--font-body);letter-spacing:.08em;text-transform:uppercase}.slot-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.slot-button{background:#fff;border:1px solid #ccbdb1;border-radius:999px;min-height:2.6rem;padding:.5rem .75rem;font-weight:750}.slot-button[aria-pressed=true]{border-color:var(--red);background:var(--red);color:#fff}.slot-button.is-waitlist{border-style:dashed}.slot-button:disabled{opacity:.38}.form-notice,.decision-reason{border-left:3px solid var(--gold);background:#fff8e7;margin-bottom:1rem;padding:.9rem 1rem}.hp-field{opacity:0!important;pointer-events:none!important;position:fixed!important;left:-9999px!important}.turnstile-field{gap:.45rem;width:100%;min-width:0;margin:0 0 1.25rem;display:grid}.turnstile-field .cf-turnstile{width:100%;min-width:0}.turnstile-field p{color:var(--muted);margin:0;font-size:.75rem}.flash{z-index:3500;width:min(700px,100vw - 32px);max-height:45svh;box-shadow:var(--shadow);border-radius:.8rem;padding:1rem 1.25rem;position:fixed;top:5.5rem;left:50%;overflow:auto;transform:translate(-50%)}.flash-success{color:#155d36;background:#e8f8ef}.flash-error{color:#8a1820;background:#fff0ef}.flash ul{margin-bottom:0}.admin-flash{width:100%;max-height:none;margin:0 0 1.25rem;position:static;transform:none}.reservation-ticket{border-radius:var(--radius);background:var(--ink);color:#fff;min-width:0;margin-bottom:2rem;padding:clamp(1.3rem,4vw,3rem)}.ticket-head{justify-content:space-between;align-items:start;gap:1rem;display:flex}.reservation-ticket dl{border-block:1px solid #ffffff2e;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;padding-block:1.5rem;display:grid}.reservation-ticket dt{color:#fff9;text-transform:uppercase;font-size:.68rem}.reservation-ticket dd{margin:.2rem 0 0}.status{background:#eee7df;border-radius:999px;align-items:center;max-width:100%;padding:.35rem .7rem;font-size:.7rem;font-weight:900;line-height:1.25;display:inline-flex}.status-pending{color:#714f00;background:#fff0bd}.status-confirmed,.status-completed{color:#17613a;background:#d7f6e3}.status-waitlisted{color:#543390;background:#e5dcff}.status-declined,.status-cancelled_staff,.status-cancelled_customer,.status-no_show{color:#8c1b23;background:#ffe0df}.manage-panel{margin:1rem 0}.manage-panel summary{cursor:pointer;font:700 1.3rem var(--font-display)}.compact-form{box-shadow:none;padding:2rem 0 0}.message-thread{gap:.75rem;margin:1rem 0 2rem;display:grid}.message{background:#eee7df;border-radius:.8rem;max-width:min(82%,38rem);padding:.8rem 1rem}.message p{white-space:pre-wrap;margin:.4rem 0}.message-customer{background:#fde3e2;justify-self:end}.manage-grid,.messages-section{width:min(920px,100vw - 48px);margin-inline:auto}.manage-grid{padding-bottom:2rem}.messages-section{padding-block:3rem 7rem}.message-form{gap:.75rem;display:grid}.legal-page,.editorial-page{width:min(900px,100vw - 48px);margin-inline:auto;padding-bottom:7rem}.legal-content section{border-bottom:1px solid var(--line);padding-block:2rem}.legal-content h2{font-size:clamp(1.7rem,4vw,2.2rem)}.editorial-image{border-radius:var(--radius);object-fit:cover;width:100%;max-height:560px}.editorial-body{white-space:normal;max-width:760px;margin:3rem auto;font-size:1.08rem}.editorial-cta{border-radius:var(--radius);background:var(--paper);padding:clamp(1.3rem,4vw,2rem)}.editorial-cta h2{font-size:clamp(1.8rem,4vw,2.3rem)}.location-gate{z-index:5000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0e0908ed;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.location-gate[hidden]{display:none}.location-gate-panel{border-radius:var(--radius);background:var(--cream);text-align:center;width:min(900px,100%);max-height:calc(100svh - 2rem);padding:clamp(1.4rem,4vw,3.2rem);animation:.5s cubic-bezier(.2,.8,.2,1) gate-in;position:relative;overflow:auto}@keyframes gate-in{0%{opacity:0;transform:translateY(24px)scale(.97)}}.location-gate-panel h2{font-size:clamp(2.2rem,5vw,4.4rem)}.gate-close{z-index:2;float:right;border:1px solid var(--line);background:var(--cream);border-radius:50%;width:2.6rem;height:2.6rem;font-size:1.5rem;position:sticky;top:0}.gate-choices{clear:both;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.7rem 0;display:grid}.gate-choices a{background:var(--ink);color:#fff;text-align:left;border-radius:1rem;min-width:0;position:relative;overflow:hidden}.gate-choices picture,.gate-choices img{width:100%}.gate-choices img{aspect-ratio:16/10;object-fit:cover;opacity:.72;transition:opacity .3s,transform .5s}.gate-choices a:hover img{opacity:.48;transform:scale(1.04)}.gate-choices span{font:700 clamp(1.8rem, 4vw, 2.8rem) var(--font-display);display:block;position:absolute;bottom:2.3rem;left:1rem}.gate-choices small{color:#ffffffbf;display:block;position:absolute;bottom:1rem;left:1rem}.site-footer{color:#fff;background:#120e0d;padding-top:clamp(4rem,8vw,7rem)}.footer-lead{justify-content:space-between;align-items:end;gap:2rem;padding-bottom:clamp(3rem,6vw,5rem);display:flex}.footer-lead h2{margin-bottom:0;font-size:clamp(2.5rem,5vw,5rem)}.footer-lead .eyebrow{color:#e7b66b}.footer-grid{border-top:1px solid #ffffff1f;grid-template-columns:1.25fr repeat(3,minmax(0,1fr));gap:clamp(1.5rem,4vw,3.5rem);padding-block:3rem;display:grid}.footer-grid h3{font:900 .78rem var(--font-body);letter-spacing:.1em;text-transform:uppercase;margin-bottom:1rem}.footer-grid p,.footer-grid li{color:#ffffff9e;font-size:.8rem}.footer-grid li+li{margin-top:.45rem}.footer-signature img{width:70px;margin-bottom:1rem}.footer-signature p{max-width:270px}.footer-link{color:#e7b66b;font-size:.72rem;font-weight:850}.footer-bottom{color:#ffffff6b;border-top:1px solid #ffffff1f;justify-content:space-between;gap:1rem;padding:1.2rem 0;font-size:.68rem;display:flex}.mobile-booking-bar{display:none}.admin-body{color:#211c1a;background:#f3f0ec}.admin-shell{grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid}.admin-sidebar{z-index:300;color:#fff;background:#171210;flex-direction:column;min-width:0;height:100vh;padding:1.3rem;display:flex;position:sticky;top:0;overflow-y:auto}.admin-brand{font:700 1rem/1.15 var(--font-display);border-bottom:1px solid #ffffff1f;align-items:center;gap:.65rem;padding-bottom:1.3rem;display:flex}.admin-brand img{flex:none;width:42px;height:42px}.admin-brand small{color:#ffffff8c;font:650 .6rem var(--font-body);letter-spacing:.08em;text-transform:uppercase}.restaurant-switch{margin:1.1rem 0}.restaurant-switch label{color:#ffffff8c;text-transform:uppercase;gap:.4rem;font-size:.65rem;display:grid}.restaurant-switch select{color:#fff;background:#2b2320;border:1px solid #ffffff29;border-radius:.5rem;width:100%;padding:.7rem}.admin-nav{gap:.25rem;display:grid}.admin-nav a{color:#ffffffb8;border-radius:.55rem;padding:.68rem .75rem;font-size:.8rem;font-weight:750}.admin-nav a:hover,.admin-nav a.is-active{background:var(--red);color:#fff}.admin-sidebar-foot{margin-top:auto;padding-top:1rem}.admin-sidebar-foot p{margin-bottom:.5rem;font-size:.8rem}.admin-sidebar-foot button{color:#fff;background:0 0;border:1px solid #ffffff2e;border-radius:.5rem;width:100%;padding:.65rem}.admin-scrim{display:none}.admin-main{min-width:0;padding:clamp(1.1rem,3.5vw,3.2rem)}.admin-header{justify-content:space-between;align-items:center;gap:1rem 2rem;min-width:0;margin-bottom:2.2rem;display:flex}.admin-header>div{min-width:0}.admin-header h1{margin:0;font-size:clamp(2rem,4vw,3.6rem);line-height:1}.admin-header p:not(.eyebrow){color:var(--muted);margin:.35rem 0 0}.admin-mobile-toggle{display:none}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin-bottom:1.5rem;display:grid}.kpi{background:#fff;border:1px solid #e2dad2;border-radius:1rem;min-width:0;padding:1.2rem}.kpi span{color:var(--muted);font-size:.7rem;line-height:1.35;display:block}.kpi strong{font:700 2.1rem var(--font-display);margin-top:.35rem;display:block}.admin-grid{grid-template-columns:minmax(0,1.45fr) minmax(260px,.75fr);gap:1.1rem;display:grid}.admin-grid>*{min-width:0}.admin-card{background:#fff;border:1px solid #e2dad2;border-radius:1rem;min-width:0;margin-bottom:1.1rem;padding:clamp(1rem,2.5vw,1.35rem)}.admin-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem 1rem;margin-bottom:1rem;display:flex}.admin-card h2{letter-spacing:-.02em;margin:0 0 1rem;font-size:clamp(1.25rem,2.4vw,1.5rem);line-height:1.1}.admin-card-head h2{margin:0}.content-scope{color:#fff;text-align:center;background:#171210;border-radius:999px;flex:none;padding:.55rem .8rem;font-size:.68rem;font-weight:850}.public-hours-card .admin-card-head p{max-width:720px;color:var(--muted);margin:.4rem 0 0;font-size:.78rem;line-height:1.55}.public-hours-form{max-width:760px}.public-hours-form textarea{white-space:pre-wrap}.public-hours-form .button{width:fit-content}.media-admin-intro{background:linear-gradient(115deg,#fff,#f6eee5);border-color:#dfc9b4;justify-content:space-between;align-items:center;gap:1.25rem 2rem;display:flex}.media-admin-intro h2{margin-bottom:.45rem}.media-admin-intro p{max-width:780px;color:var(--muted);margin:0;line-height:1.6}.media-admin-section{margin-top:2.2rem}.media-section-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1rem;display:flex}.media-section-heading h2{margin:.2rem 0 0;font-size:clamp(1.6rem,3vw,2.25rem)}.media-section-heading>span{color:var(--muted);font-size:.72rem;font-weight:800}.media-admin-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:1rem;display:grid}.media-admin-card{flex-direction:column;margin:0;padding:0;display:flex;overflow:hidden}.media-preview{aspect-ratio:4/3;background:#171210;margin:0;position:relative;overflow:hidden}.media-preview picture{width:100%;height:100%;display:block}.media-preview img{object-fit:cover;width:100%;height:100%}.media-preview figcaption{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#140f0edb;border-radius:999px;padding:.35rem .55rem;font-size:.58rem;font-weight:850;position:absolute;bottom:.65rem;right:.65rem}.media-card-copy{padding:1rem 1rem 0}.media-card-copy h3{margin:0 0 .35rem;font-size:1.08rem;line-height:1.2}.media-card-copy p{color:var(--muted);margin:0;font-size:.74rem;line-height:1.5}.media-upload-form{padding:1rem}.media-upload-form label small{color:var(--muted);font-size:.65rem;font-weight:500;line-height:1.4}.media-upload-form input[type=file]{padding:.55rem;font-size:.72rem}.media-upload-form .button{width:100%}.media-reset-button{text-align:center;border:1px solid #e1d7cf;border-radius:.6rem;width:calc(100% - 2rem);margin:0 1rem 1rem;padding:.65rem}.public-hours-text{white-space:pre-line}.admin-table-wrap{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-color:var(--red) #eee7df;max-width:100%;overflow-x:auto}.admin-table-wrap:after{content:"";height:1px;display:block}.admin-table{border-collapse:collapse;width:100%;min-width:700px}.admin-table th{color:var(--muted);letter-spacing:.08em;text-align:left;text-transform:uppercase;border-bottom:1px solid #e8e1da;padding:.65rem;font-size:.65rem}.admin-table td{vertical-align:top;border-bottom:1px solid #eee8e2;min-width:0;padding:.75rem .65rem;font-size:.8rem}.admin-table tr:hover td{background:#fcfaf7}.admin-table a{color:var(--red);font-weight:850}.admin-table input,.admin-table select{min-width:8rem;padding:.55rem}.filter-bar{grid-template-columns:minmax(180px,1fr) auto auto auto;gap:.65rem;min-width:0;margin-bottom:1.1rem;display:grid}.admin-form{gap:.3rem;min-width:0;display:grid}.admin-form .field-grid{gap:.8rem}.admin-form fieldset{min-width:0}.announcement-admin-intro{background:linear-gradient(115deg,#fff,#f6eee5);border-color:#dfc9b4;justify-content:space-between;align-items:center;gap:1.25rem 2rem;display:flex}.announcement-admin-intro h2,.announcement-admin-intro p:last-child{margin-bottom:0}.announcement-admin-intro>div{min-width:0}.announcement-scope{color:#fff;text-align:center;background:#171210;border-radius:999px;flex:none;padding:.55rem .8rem;font-size:.68rem;font-weight:850}.announcement-active-check{background:#fffdf9;border:1px solid #d7ccc1;border-radius:.65rem;align-self:end;align-items:center;min-height:3.25rem;padding:.75rem .9rem;display:flex!important}.announcement-active-check input{width:1.2rem;height:1.2rem;margin:0}.announcement-admin-list{gap:1.1rem;display:grid}.announcement-admin-card .admin-card-head{border-bottom:1px solid #eee6de;padding-bottom:1rem}.announcement-admin-card .admin-card-head h2{overflow-wrap:anywhere;margin:.65rem 0 .25rem}.announcement-admin-card .admin-card-head p{color:var(--muted);margin:0;font-size:.75rem}.announcement-status{background:#eee7df;border-radius:999px;padding:.35rem .58rem;font-size:.65rem;font-weight:850;display:inline-flex}.status-en-ligne{color:#19633a;background:#dcf4e5}.status-planifiee{color:#755507;background:#fff0bf}.status-terminee,.status-desactivee{color:#675b55;background:#eee7df}.form-help{color:var(--muted);margin:.2rem 0 1rem;font-size:.72rem}.empty-state{text-align:center;padding-block:2.4rem}.empty-state p{color:var(--muted);margin-bottom:0}.quick-actions{flex-wrap:wrap;gap:.5rem;display:flex}.quick-actions .button{min-height:2.45rem;padding:.5rem .7rem;font-size:.64rem}.kpi-grid-service{grid-template-columns:repeat(6,minmax(0,1fr))}.kpi-success{background:#f3fbf6;border-color:#b9dfc8}.kpi-success strong{color:#17613a}.kpi-alert{background:#fff7f6;border-color:#f1c4c1}.kpi-alert strong{color:#9b2429}.admin-grid-service{grid-template-columns:minmax(0,1.7fr) minmax(250px,.6fr)}.service-sheet{padding:clamp(1rem,2.5vw,1.6rem)}.service-period+.service-period{margin-top:1.7rem}.service-period>header{border-bottom:1px solid #e8e1da;justify-content:space-between;align-items:baseline;gap:1rem;padding-bottom:.65rem;display:flex}.service-period>header h3{font:750 1rem var(--font-body);margin:0}.service-period>header span{color:var(--muted);font-size:.68rem}.service-reservations{gap:.55rem;padding-top:.65rem;display:grid}.service-reservation{background:#fff;border:1px solid #e8e1da;border-left:4px solid #cbbeb4;border-radius:.75rem;grid-template-columns:76px minmax(150px,1.2fr) 72px minmax(100px,.7fr) minmax(220px,auto);align-items:center;gap:.75rem;min-width:0;padding:.8rem;display:grid}.service-reservation-completed{background:#f7fcf8;border-left-color:#278956}.service-reservation-no_show{background:#fff9f8;border-left-color:#b52a30}.service-reservation-pending,.service-reservation-waitlisted{border-left-color:#d6a228}.service-time,.service-party{gap:.1rem;display:grid}.service-time strong{font:750 1.35rem var(--font-display)}.service-time small,.service-party span,.service-phone{color:var(--muted);font-size:.62rem}.service-customer{gap:.15rem;min-width:0;display:grid}.service-customer>a:first-child{color:var(--red);font-size:.86rem;font-weight:850}.service-phone{width:fit-content}.service-phone:hover{color:var(--red)}.service-party strong{font-size:1.15rem}.service-state{min-width:0}.attendance-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.4rem;display:flex}.attendance-actions form{margin:0}.attendance-button,.attendance-reset{min-height:2.35rem;font:850 .64rem var(--font-body);white-space:nowrap;border:1px solid #0000;border-radius:.55rem;padding:.48rem .68rem}.attendance-present{color:#17613a;background:#e6f7ec;border-color:#278956}.attendance-absent{color:#8c1b23;background:#fff0ef;border-color:#c93e44}.attendance-button:disabled{color:#fff;opacity:1;cursor:default;background:#256c46;border-color:#0000}.attendance-absent:disabled{background:#9f2930}.attendance-reset{color:var(--muted);background:#fff;border-color:#d8cec6}.attendance-panel{background:#f7fcf8;border-color:#c8ded0;justify-content:space-between;align-items:center;gap:1.2rem;display:flex}.attendance-panel>div:first-child{max-width:620px}.attendance-panel p:not(.eyebrow){color:var(--muted);margin-bottom:0}.attendance-actions-large{flex:none}.attendance-actions-large .attendance-button{min-height:2.8rem;padding-inline:1rem;font-size:.7rem}.empty-service{color:var(--muted);text-align:center;border:1px dashed #ddd2ca;border-radius:.7rem;margin:0;padding:1rem}.notification-list{margin:0;padding:0;list-style:none}.notification-list li{border-bottom:1px solid #eee7e1;min-width:0;padding:.75rem 0}.notification-list small{color:var(--muted)}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1.2rem;display:grid}.detail-grid dt{color:var(--muted);text-transform:uppercase;font-size:.65rem}.detail-grid dd{min-width:0;margin:.15rem 0 0}.timeline{border-left:2px solid #e4d9d0;padding:0 0 0 1rem;list-style:none}.timeline li{padding:0 0 1.1rem 1rem;position:relative}.timeline li:before{content:"";background:var(--red);border-radius:50%;width:.65rem;height:.65rem;position:absolute;top:.35rem;left:-1.38rem}.occ-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding-top:1.25rem;display:flex}.occ-pagination-pages{flex-wrap:wrap;justify-content:center;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.occ-pagination-link{width:auto;min-width:2.5rem;height:2.5rem;color:var(--ink);background:#fff;border:1px solid #dfd6ce;border-radius:.55rem;justify-content:center;align-items:center;gap:.35rem;padding:0 .65rem;font-size:.78rem;font-weight:800;line-height:1;text-decoration:none;display:inline-flex}.occ-pagination a:hover{border-color:var(--red);color:var(--red)}.occ-pagination-step{white-space:nowrap;min-width:7.25rem}.occ-pagination-current{border-color:var(--ink);background:var(--ink);color:#fff}.occ-pagination .is-disabled{color:#9b918b;opacity:.65;cursor:default}.occ-pagination svg{flex:0 0 1rem!important;width:1rem!important;max-width:1rem!important;height:1rem!important;max-height:1rem!important}.admin-login{background:linear-gradient(135deg,#171210,#3a1717);place-items:center;min-height:100vh;padding:1.25rem;display:grid}.login-panel{background:#fff;border-radius:1rem;width:min(430px,100%);padding:clamp(1.3rem,6vw,2.5rem);box-shadow:0 30px 90px #00000059}.login-panel img{width:80px;margin:0 auto 1rem}.login-panel h1{text-align:center;font-size:clamp(2.1rem,8vw,2.5rem)}.login-panel>p{color:var(--muted);text-align:center}.reveal{opacity:0;transition:opacity .72s,transform .72s cubic-bezier(.2,.75,.25,1);transition-delay:var(--reveal-delay,0s);transform:translateY(24px)}.reveal.is-visible{opacity:1;transform:none}@media (width<=1100px){.hero-signature{display:none}.location-hero-card{width:250px;right:1.5rem}.location-body{grid-template-columns:1fr}.location-meta{border-top:1px solid var(--line);border-left:0;padding:1rem 0 0}.admin-grid{grid-template-columns:1fr}.kpi-grid-service{grid-template-columns:repeat(3,minmax(0,1fr))}.service-reservation{grid-template-columns:70px minmax(140px,1fr) 65px minmax(100px,.7fr)}.attendance-actions{border-top:1px solid #eee7e1;grid-column:1/-1;justify-content:flex-start;padding-top:.55rem}}@media (width<=1120px){.site-header{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.nav-toggle{display:block}.main-nav{z-index:1;font-family:var(--font-display);background:#171210;align-content:center;justify-items:start;gap:.3rem;padding:6rem max(1.5rem,50vw - 350px);font-size:clamp(1.9rem,8vw,3rem);transition:transform .35s cubic-bezier(.2,.75,.25,1);display:grid;position:fixed;inset:0;transform:translate(100%)}.main-nav.is-open{transform:none}.main-nav>a{white-space:normal!important}.main-nav>a:not(.button):after{display:none}.main-nav .button{width:100%;max-width:330px;font:900 .72rem var(--font-body);margin-top:1.3rem}.nav-mobile-label{color:#e7b66b;font:900 .65rem var(--font-body);letter-spacing:.15em;text-transform:uppercase;margin-bottom:.8rem;display:block}}@media (width<=900px){:root{--shell:min(100% - 36px, 1220px)}.hero-content{width:var(--shell)}.location-hero-card{display:none}.proof-grid{grid-template-columns:repeat(2,1fr)}.proof-grid>div{border-bottom:1px solid var(--line)}.intro-section,.location-intro,.abundance-grid,.practical-grid,.page-hero-split{grid-template-columns:1fr}.abundance-visual{width:min(680px,100%);margin-inline:auto}.price-columns{grid-template-columns:1fr}.people-grid{grid-template-columns:1fr;min-height:0}.people-photo{height:min(75vw,620px)}.testimonial-grid,.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.experience-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-heading{grid-template-columns:1fr}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-tile.is-landscape{aspect-ratio:16/10;grid-column:span 2}.photo-tile.is-portrait{aspect-ratio:3/4;grid-column:span 1}.practical-title{max-width:650px}.social-links{grid-column:1}.form-shell{grid-template-columns:1fr}.form-aside{position:static}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-shell{grid-template-columns:1fr}.admin-sidebar{width:min(320px,88vw);height:100svh;transition:transform .3s cubic-bezier(.2,.75,.25,1);position:fixed;inset:0 auto 0 0;transform:translate(-105%);box-shadow:20px 0 70px #0000004d}.admin-sidebar.is-open{transform:none}.admin-scrim{z-index:250;opacity:0;pointer-events:none;background:#0f0a09a6;border:0;transition:opacity .25s;display:block;position:fixed;inset:0}.admin-menu-open .admin-scrim{opacity:1;pointer-events:auto}.admin-mobile-toggle{z-index:100;margin:0 0 1.5rem;display:inline-flex;position:sticky;top:.7rem;box-shadow:0 8px 24px #0000001f}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){:root{--shell:min(100% - 28px, 1220px)}.section{padding-block:4.2rem}h1{font-size:clamp(2.7rem,13vw,4.2rem);line-height:.94}h2{font-size:clamp(2.25rem,11vw,3.6rem);line-height:.96}h3{line-height:1.04}.hero,.hero-home{min-height:max(650px,100svh)}.hero-content{padding:7.5rem 0 4.5rem}.hero-content h1{font-size:clamp(3.4rem,17vw,5.8rem)}.hero-overlay{background:linear-gradient(90deg,#100a09e0,#100a095c),linear-gradient(#0000 25%,#100a09db)}.intro-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.intro-photo-1{aspect-ratio:16/10;grid-column:span 2}.intro-photo-2,.intro-photo-3{aspect-ratio:3/4;grid-column:span 1}.location-grid{grid-template-columns:1fr}.round-label{width:6.5rem;right:-.5rem}.testimonial-grid,.article-grid,.experience-cards{grid-template-columns:1fr}.experience-card{grid-template-columns:minmax(130px,.8fr) minmax(0,1.2fr);display:grid}.experience-card picture,.experience-card img{height:100%}.experience-card img{aspect-ratio:auto;min-height:220px}.experience-card>div{align-self:center}.formula-grid{grid-template-columns:1fr}.formula-card{min-height:0}.formula-card>strong{margin-top:1rem}.details-grid,.menu-list,.menu-disclaimer,.field-grid,.restaurant-details,.reservation-ticket dl,.detail-grid,.menu-section-title{grid-template-columns:1fr}.menu-section-title>span{margin-bottom:-.5rem}.menu-item,.menu-entry{grid-template-columns:minmax(0,1fr) minmax(72px,auto)}.form-shell,.manage-grid,.messages-section,.legal-page,.editorial-page{width:min(100% - 28px,1120px)}.ticket-head{flex-direction:column}.message{max-width:94%}.gate-choices{grid-template-columns:1fr}.gate-choices img{aspect-ratio:16/8}.footer-lead{flex-direction:column;align-items:flex-start}.footer-grid{grid-template-columns:1fr 1fr}.footer-signature{grid-column:1/-1}.footer-bottom{flex-direction:column}.admin-header{flex-direction:column;align-items:flex-start}.admin-header>.button,.admin-header>.button-row{width:100%}.admin-header>.button-row .button{flex:140px}.filter-bar{grid-template-columns:1fr}.admin-card{border-radius:.8rem}.service-reservation{grid-template-columns:68px minmax(0,1fr) auto;gap:.55rem .7rem}.service-party{justify-items:end}.service-state{grid-column:2/-1}.attendance-actions{grid-column:1/-1}.attendance-panel{flex-direction:column;align-items:stretch}.attendance-actions-large{justify-content:flex-start}}@media (width<=520px){body{padding-bottom:calc(4.4rem + env(safe-area-inset-bottom))}.brand span{font-size:.98rem}.site-header{padding-inline:.8rem}.button-row{flex-direction:column;align-items:stretch}.button-row .button{width:100%}.button-row .text-link{margin-top:.35rem}.proof-grid strong{font-size:1.65rem}.proof-grid span{font-size:.6rem}.proof-grid>div{gap:.55rem;padding:1rem .7rem}.location-image{aspect-ratio:4/3}.location-image>strong{display:none}.abundance-visual{padding:0 0 2rem 1.5rem}.floating-photo{width:45%}.price-panel-head{flex-direction:column;align-items:flex-start}.people-photo{height:115vw;max-height:560px}.final-cta,.cta-section{flex-direction:column;align-items:flex-start}.final-cta>.button,.cta-section>.button{width:100%}.experience-card{grid-template-columns:1fr}.experience-card img{aspect-ratio:4/3;min-height:0}.photo-tile>span{display:none}.page-hero.shell{padding-top:7.5rem}.page-hero-photo img{aspect-ratio:4/3}.menu-item,.menu-entry{gap:.5rem}.menu-item>strong,.menu-entry>strong{max-width:110px;font-size:.8rem}.premium-form,.manage-panel{border-radius:.9rem;padding:1rem}.premium-form fieldset{margin-bottom:1.5rem;padding-bottom:1.5rem}.slot-button{flex:calc(33.333% - .5rem)}.flash{top:4.8rem}.mobile-booking-bar{z-index:900;padding:.5rem .6rem calc(.5rem + env(safe-area-inset-bottom));color:#fff;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#140f0ef5;border-top:1px solid #ffffff24;grid-template-columns:.75fr 1.25fr;display:grid;position:fixed;inset:auto 0 0;box-shadow:0 -12px 36px #0003}.mobile-booking-bar a{text-align:center;border-radius:999px;place-items:center;min-width:0;min-height:3.1rem;font-size:.75rem;font-weight:900;line-height:1.2;display:grid}.mobile-booking-bar a:last-child{background:var(--red)}.mobile-booking-bar span{color:#ffffff94;letter-spacing:.06em;text-transform:uppercase;font-size:.56rem;font-weight:700;display:block}.site-footer{padding-bottom:1rem}.footer-grid{grid-template-columns:1fr}.footer-signature{grid-column:auto}.admin-main{padding:.85rem}.admin-header{margin-bottom:1.4rem}.admin-header h1{font-size:2.25rem}.admin-header>.button-row .button{flex:none}.kpi{padding:.9rem}.kpi strong{font-size:1.8rem}.admin-card-head{flex-direction:column;align-items:flex-start}.admin-card-head .button,.admin-card-head .button-row,.admin-form>.button{width:100%}.announcement-admin-intro,.media-admin-intro{flex-direction:column;align-items:flex-start}.media-admin-intro .content-scope,.public-hours-card .content-scope,.public-hours-form .button,.announcement-scope{width:100%}.announcement-actions{flex-direction:column;align-items:stretch}.announcement-actions .button,.announcement-dismiss{width:100%}.quick-actions .button{flex:auto}.kpi-grid-service{grid-template-columns:repeat(2,minmax(0,1fr))}.service-period>header{flex-direction:column;align-items:flex-start;gap:.15rem}.service-reservation{padding:.72rem}.attendance-actions form{flex:calc(50% - .4rem)}.attendance-actions .attendance-reset-form{flex-basis:100%}.attendance-button,.attendance-reset{width:100%}.occ-pagination{justify-content:center}.occ-pagination-step{flex:calc(50% - .4rem)}.occ-pagination-pages{flex:1 0 100%;order:3}.login-panel .button{width:100%}}@media (width<=380px){.brand span{display:none}.hero-content h1{font-size:clamp(3.15rem,18vw,4.2rem)}.hero-lead{font-size:.95rem}.proof-grid>div{flex-direction:column;align-items:flex-start;gap:.1rem}.intro-photo figcaption{display:none}.photo-grid{gap:.45rem}.gate-choices span{font-size:1.7rem}.kpi-grid{grid-template-columns:1fr}}@media print{.admin-sidebar,.admin-scrim,.admin-mobile-toggle,.button,.filter-bar,.site-header,.site-footer,.mobile-booking-bar,.attendance-actions{display:none!important}.admin-shell{display:block}.admin-main{padding:0}.admin-card{border:0;padding:0}.admin-table{min-width:0}.service-reservation{break-inside:avoid;grid-template-columns:70px 1fr 70px 110px}body{background:#fff;padding:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.hero-frame-primary{opacity:1}.hero-frame-secondary{opacity:0}.reveal{opacity:1;transform:none}}
