@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap";:root{color:#f5f1e8;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#171715;font-family:DM Sans,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}a{color:inherit;text-decoration:none}button{font:inherit}.site-shell{background:#171715;min-height:100svh}.hero-section{isolation:isolate;background:#171715 url(https://images.unsplash.com/photo-1515003197210-e0cd71810b5f?auto=format&fit=crop&w=2400&q=85) 50%/cover;min-height:100svh;position:relative;overflow:hidden}.hero-section:before{z-index:-1;content:"";background:linear-gradient(90deg,#0d0e0ce6 0%,#121210a1 46%,#10100e66 100%),linear-gradient(#0c0d0b40 0%,#0000 55%,#0c0d0bd1 100%);position:absolute;inset:0}.navbar,.hero-content{width:min(100% - 144px,1240px);margin-inline:auto}.navbar{justify-content:space-between;align-items:center;padding:30px 0;display:flex}.brand{letter-spacing:.24em;align-items:center;gap:11px;display:inline-flex}.brand-mark{color:#c6a77b;letter-spacing:0;border:1px solid #c6a77b;place-items:center;width:28px;height:28px;font:500 14px/1 Playfair Display,serif;display:grid;transform:rotate(45deg)}.brand-name{color:#fbf8f1;font-size:14px;font-weight:600}.nav-content{align-items:center;gap:58px;display:flex}.nav-links{gap:36px;margin:0;padding:0;list-style:none;display:flex}.nav-links a{color:#f9f5ecb8;letter-spacing:.08em;font-size:12px;transition:color .25s;position:relative}.nav-links a:after{content:"";transform-origin:100%;background:#c6a77b;height:1px;transition:transform .25s;position:absolute;bottom:-8px;left:0;right:0;transform:scaleX(0)}.nav-links a:hover,.nav-links a:focus-visible{color:#fffaf0}.nav-links a:hover:after,.nav-links a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.button{color:#1b1a17;letter-spacing:.1em;background:#c6a77b;border:1px solid #c6a77b;justify-content:center;align-items:center;gap:18px;min-height:54px;padding:0 24px;font-size:11px;font-weight:600;transition:background .25s,color .25s,transform .25s;display:inline-flex}.button:hover,.button:focus-visible{color:#f6f0e5;background:0 0;transform:translateY(-2px)}.button span{font-size:18px;font-weight:400;line-height:0}.button-small{min-height:42px;padding:0 19px;font-size:10px}.hero-content{flex-direction:column;justify-content:center;min-height:calc(100svh - 104px);padding:88px 0 44px;display:flex}.hero-copy{max-width:720px;margin-top:-30px}.eyebrow{color:#c6a77b;letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:13px;margin:0 0 28px;font-size:11px;display:flex}.eyebrow span{background:#c6a77b;width:34px;height:1px}h1{color:#f8f4eb;letter-spacing:-.045em;max-width:700px;margin:0;font:400 clamp(3.6rem,7vw,7.25rem)/.95 Playfair Display,Georgia,serif}h1 em{color:#d6bf9c;font-style:italic}.hero-description{color:#f6f1e7ad;max-width:410px;margin:36px 0 38px 5px;font-size:14px;line-height:1.8}.hero-actions{align-items:center;gap:33px;margin-left:5px;display:flex}.text-link{color:#eee8dc;letter-spacing:.11em;align-items:center;gap:15px;font-size:11px;display:inline-flex}.text-link span{color:#c6a77b;font-size:18px;transition:transform .25s}.text-link:hover span,.text-link:focus-visible span{transform:translateY(3px)}.hero-footer{color:#f6f1e77a;letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:17px;margin-top:auto;font-size:10px;display:flex}.hero-footer-line{background:#f6f1e754;width:78px;height:1px}.menu-toggle{color:#f5f1e8;cursor:pointer;background:0 0;border:0;padding:8px 0 8px 8px;display:none}.menu-toggle span{background:currentColor;width:25px;height:1px;margin:5px 0;display:block}@media (width<=760px){.navbar,.hero-content{width:min(100% - 48px,1240px)}.navbar{padding:23px 0}.menu-toggle{z-index:3;display:block}.nav-content{z-index:2;visibility:hidden;opacity:0;background:#181815fa;flex-direction:column;align-items:flex-start;gap:32px;padding:87px 22px 30px;transition:opacity .25s,transform .25s,visibility .25s;display:flex;position:absolute;top:0;left:0;right:0;transform:translateY(-12px)}.nav-content.is-open{visibility:visible;opacity:1;transform:translateY(0)}.nav-links{flex-direction:column;gap:24px}.nav-links a{font-size:14px}.button-small{width:100%}.hero-content{min-height:calc(100svh - 82px);padding-top:78px;padding-bottom:28px}.hero-copy{margin-top:0}.eyebrow{letter-spacing:.13em;margin-bottom:23px;font-size:9px}h1{font-size:clamp(3.3rem,15vw,5rem)}.hero-description{max-width:330px;margin:28px 0 30px;font-size:13px}.hero-actions{flex-wrap:wrap;gap:23px;margin-left:0}.hero-footer{margin-top:70px}}@media (width>=761px) and (width<=1050px){.navbar,.hero-content{width:min(100% - 96px,1180px)}.nav-content{gap:25px}.nav-links{gap:20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.section-wrap{width:min(100% - 144px,1240px);margin-inline:auto}.about-section,.dishes-section{color:#f2ede4;width:100%;padding:150px 7vw}.about-section{background:#202827;position:relative}.about-section:before,.dishes-section:before{content:"";background:#f2ede429;height:1px;position:absolute;top:0;left:0;right:0}.section-kicker{color:#9a7953;letter-spacing:.18em;text-transform:uppercase;font-size:10px;font-weight:600}.about-section>.section-kicker,.about-grid,.dishes-heading,.dish-grid{width:min(100%,1240px);margin-left:auto;margin-right:auto}.about-grid{grid-template-columns:minmax(0,1.08fr) minmax(260px,.92fr) minmax(250px,.9fr);align-items:start;gap:clamp(42px,6vw,92px);margin-top:78px;display:grid}.section-number{color:#9a7953;letter-spacing:.12em;margin:4px 0 26px;font-size:10px}.about-heading h2,.dishes-heading h2{color:#f2ede4;letter-spacing:-.04em;max-width:420px;margin:0;font:400 clamp(2.6rem,4.4vw,4.8rem)/1.02 Playfair Display,Georgia,serif}.about-heading h2 em,.dishes-heading h2 em{color:#c6a77b;font-style:italic}.about-copy{max-width:390px;padding-top:58px}.about-copy p{color:#f2ede49e;max-width:390px;margin:0 0 25px;font-size:13px;line-height:1.95}.about-copy .about-lead{color:#f2ede4;font:400 19px/1.55 Playfair Display,Georgia,serif}.underlined-link{color:#f2ede4;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #c6a77b;gap:14px;margin-top:16px;padding-bottom:8px;font-size:10px;font-weight:600;display:inline-flex}.underlined-link span{color:#c6a77b;font-size:16px;line-height:.7}.about-image-wrap{margin:0;position:relative}.about-image-wrap:before{z-index:0;content:"";border:1px solid #c6a77b73;width:70%;height:75%;position:absolute;top:-15px;right:-15px}.about-image{z-index:1;aspect-ratio:4/5;object-fit:cover;filter:saturate(.75)contrast(.95);width:100%;display:block;position:relative}.about-image-wrap figcaption{z-index:1;color:#f2ede47a;letter-spacing:.1em;text-transform:uppercase;margin-top:15px;font-size:10px;position:relative}.dishes-section{color:#f2ede4;background:#1b1b18;position:relative}.dishes-section:before{background:#f2ede429}.dishes-heading{justify-content:space-between;align-items:end;gap:30px;display:flex}.dishes-heading h2{color:#f2ede4}.dishes-intro{color:#f2ede48c;max-width:200px;margin:0 0 4px;font-size:12px;line-height:1.7}.dish-grid{grid-template-columns:repeat(3,1fr);gap:24px;margin-top:70px;display:grid}.dish-card{min-width:0}.dish-image-wrap{background:#2a2925;position:relative;overflow:hidden}.dish-image{aspect-ratio:1/1.12;object-fit:cover;filter:saturate(.82);width:100%;transition:transform .7s cubic-bezier(.2,.65,.3,1),filter .7s;display:block}.dish-card:hover .dish-image{filter:saturate();transform:scale(1.04)}.dish-index{color:#fffaf0d9;letter-spacing:.16em;font-size:10px;position:absolute;top:16px;left:17px}.dish-details{border-top:1px solid #f2ede433;justify-content:space-between;align-items:start;gap:15px;padding-top:23px;display:flex}.dish-details h3{color:#f2ede4;margin:0 0 9px;font:400 22px/1.2 Playfair Display,Georgia,serif}.dish-details p{color:#f2ede48c;margin:0;font-size:11px;line-height:1.55}.dish-price{color:#c6a77b;flex:none;font:400 15px Playfair Display,Georgia,serif}@media (width<=760px){.section-wrap{width:min(100% - 48px,1240px)}.about-section,.dishes-section{width:100%;padding:108px 6vw}.about-section>.section-kicker,.about-grid,.dishes-heading,.dish-grid{width:100%}.about-grid{flex-direction:column;gap:0;margin-top:56px;display:flex}.about-copy{max-width:500px;padding-top:38px}.about-copy p{max-width:none}.about-image-wrap{width:calc(100% - 16px);margin:70px 16px 0 0}.about-image-wrap:before{top:-10px;right:-10px}.dishes-heading{display:block}.dishes-intro{margin-top:25px}.dish-grid{grid-template-columns:1fr;gap:54px;margin-top:48px}.dish-image{aspect-ratio:1.15}}@media (width>=761px) and (width<=1050px){.section-wrap{width:min(100% - 96px,1180px)}.about-section,.dishes-section{width:100%;padding-left:7vw;padding-right:7vw}.about-section>.section-kicker,.about-grid,.dishes-heading,.dish-grid{width:100%}.about-grid{grid-template-columns:minmax(0,1fr) minmax(220px,.88fr) minmax(210px,.8fr);gap:42px}.about-copy{max-width:340px;padding-top:46px}.dish-details{display:block}.dish-price{margin-top:10px;display:block}}.menu-section{color:#f2ede4;background:#202827;width:100%;padding:150px 7vw;position:relative}.menu-section:before{content:"";background:#f2ede429;height:1px;position:absolute;top:0;left:0;right:0}.menu-section-inner{width:min(100%,1240px);margin-inline:auto}.menu-heading{justify-content:space-between;align-items:end;gap:30px;display:flex}.menu-heading h2{color:#f2ede4;letter-spacing:-.04em;max-width:420px;margin:0;font:400 clamp(2.6rem,4.4vw,4.8rem)/1.02 Playfair Display,Georgia,serif}.menu-heading h2 em{color:#c6a77b;font-style:italic}.menu-intro{color:#f2ede48c;max-width:220px;margin:0 0 4px;font-size:12px;line-height:1.7}.menu-controls{-ms-overflow-style:none;scrollbar-width:none;border-bottom:1px solid #f2ede42e;gap:30px;margin-top:72px;display:flex;overflow-x:auto}.menu-controls::-webkit-scrollbar{display:none}.menu-tab{color:#f2ede480;cursor:pointer;letter-spacing:.14em;text-transform:uppercase;background:0 0;border:0;flex:none;padding:0 0 17px;font-size:10px;transition:color .25s;position:relative}.menu-tab:after{content:"";background:#c6a77b;height:1px;transition:transform .25s;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.menu-tab:hover,.menu-tab:focus-visible,.menu-tab.is-active{color:#f2ede4}.menu-tab.is-active:after{transform:scaleX(1)}.menu-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(44px,8vw,130px);display:grid}.menu-item{border-bottom:1px solid #f2ede429;justify-content:space-between;align-items:start;gap:20px;min-height:132px;padding:30px 0 26px;display:flex}.menu-item-copy h3{color:#f2ede4;margin:0 0 10px;font:400 22px/1.2 Playfair Display,Georgia,serif}.menu-item-copy p{color:#f2ede48c;max-width:250px;margin:0;font-size:11px;line-height:1.6}.menu-item-price{color:#c6a77b;flex:none;font:400 15px Playfair Display,Georgia,serif}.menu-note{color:#f2ede466;letter-spacing:.06em;margin:35px 0 0;font-size:10px}@media (width<=760px){.menu-section{padding:108px 6vw}.menu-heading{display:block}.menu-intro{margin-top:25px}.menu-controls{gap:24px;margin-top:50px}.menu-list{display:block}.menu-item{min-height:0;padding:25px 0 23px}.menu-item-copy h3{font-size:20px}.menu-item-copy p{max-width:210px}}@media (width>=761px) and (width<=1050px){.menu-section{padding-left:7vw;padding-right:7vw}.menu-list{column-gap:44px}}.reservation-section{color:#f2ede4;background:#171b1b;width:100%;padding:150px 7vw 165px;position:relative}.reservation-section:before{content:"";background:#f2ede429;height:1px;position:absolute;top:0;left:0;right:0}.reservation-inner{width:min(100%,1240px);margin-inline:auto}.reservation-heading{justify-content:space-between;align-items:end;gap:40px;display:flex}.reservation-heading h2{color:#f2ede4;letter-spacing:-.04em;max-width:650px;margin:0;font:400 clamp(2.6rem,4.4vw,4.8rem)/1.02 Playfair Display,Georgia,serif}.reservation-heading h2 em{color:#c6a77b;font-style:italic}.reservation-heading>p{color:#f2ede48c;max-width:250px;margin:0 0 4px;font-size:12px;line-height:1.7}.reservation-form{margin-top:76px}.reservation-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px clamp(36px,7vw,110px);display:grid}.form-field{flex-direction:column;min-width:0;display:flex}.form-field-wide{grid-column:1/-1;max-width:calc(50% - clamp(18px,3.5vw,55px))}.form-field label{color:#f2ede4b8;letter-spacing:.13em;text-transform:uppercase;margin-bottom:12px;font-size:10px}.form-field label span{color:#f2ede466;letter-spacing:.04em;text-transform:none}.form-field input,.form-field textarea{color:#f2ede4;background:0 0;border:0;border-bottom:1px solid #f2ede447;border-radius:0;outline:none;width:100%;padding:11px 0 13px;font:400 15px/1.4 DM Sans,Arial,sans-serif;transition:border-color .25s}.form-field textarea{resize:vertical;min-height:76px}.form-field input::placeholder,.form-field textarea::placeholder{color:#f2ede44d}.form-field input:focus,.form-field textarea:focus{border-color:#c6a77b}.form-field input[type=date],.form-field input[type=time]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.form-field input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.form-field input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.form-field input[type=number]{appearance:textfield}.form-field.has-error input,.form-field.has-error textarea{border-color:#b9826e}.field-error{color:#d4a18b;margin-top:8px;font-size:11px;line-height:1.4}.reservation-submit-row{align-items:center;gap:28px;margin-top:54px;display:flex}.reservation-success{color:#c6a77b;max-width:390px;margin:0;font-size:11px;line-height:1.5}.reservation-error{color:#d4a18b;max-width:390px;margin:0;font-size:11px;line-height:1.5}.reservation-submit-row .button:disabled{cursor:wait;opacity:.65;transform:none}@media (width<=760px){.reservation-section{padding:108px 6vw 120px}.reservation-heading{display:block}.reservation-heading>p{margin-top:25px}.reservation-form{margin-top:52px}.reservation-fields{display:block}.form-field,.form-field-wide{max-width:none;margin-bottom:28px}.reservation-submit-row{margin-top:38px;display:block}.reservation-success{margin-top:20px}}@media (width>=761px) and (width<=1050px){.reservation-section{padding-left:7vw;padding-right:7vw}.form-field-wide{max-width:calc(50% - 22px)}}.admin-shell{color:#f2ede4;background:#171b1b;min-height:100svh}.admin-header{border-bottom:1px solid #f2ede429;justify-content:space-between;align-items:center;width:min(100% - 144px,1240px);margin-inline:auto;padding:30px 0;display:flex}.admin-brand{color:#fbf8f1;letter-spacing:.24em;align-items:center;gap:11px;font-size:14px;font-weight:600;display:inline-flex}.admin-brand-mark{color:#c6a77b;letter-spacing:0;border:1px solid #c6a77b;place-items:center;width:28px;height:28px;font:500 14px/1 Playfair Display,serif;display:grid;transform:rotate(45deg)}.admin-header-meta{color:#f2ede473;letter-spacing:.08em;align-items:center;gap:30px;font-size:10px;display:flex}.admin-header-meta a{color:#c6a77b;transition:color .25s}.admin-header-meta a:hover,.admin-header-meta a:focus-visible{color:#f2ede4}.admin-content{width:min(100% - 144px,1240px);margin-inline:auto;padding:76px 0 120px}.admin-page-heading{justify-content:space-between;align-items:end;gap:30px;display:flex}.admin-eyebrow{color:#c6a77b;letter-spacing:.16em;text-transform:uppercase;margin:0 0 17px;font-size:10px}.admin-page-heading h1{color:#f2ede4;letter-spacing:-.04em;max-width:650px;margin:0;font:400 clamp(2.7rem,5vw,5.3rem)/.98 Playfair Display,Georgia,serif}.admin-page-heading h1 em{color:#c6a77b;font-style:italic}.admin-date{color:#f2ede480;letter-spacing:.06em;margin:0 0 5px;font-size:11px}.admin-summary{border-top:1px solid #f2ede429;border-bottom:1px solid #f2ede429;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:78px;display:grid}.summary-item{border-right:1px solid #f2ede429;grid-template-columns:1fr auto;column-gap:18px;padding:25px 28px 27px 0;display:grid}.summary-item:not(:first-child){padding-left:28px}.summary-item:last-child{border-right:0}.summary-label,.summary-note{color:#f2ede480;letter-spacing:.12em;text-transform:uppercase;align-self:end;font-size:10px}.summary-note{color:#f2ede459;letter-spacing:.04em;text-transform:none;grid-column:1;margin-top:8px}.summary-item strong{color:#f2ede4;grid-row:span 2;font:400 39px/1 Playfair Display,Georgia,serif}.admin-reservations{margin-top:91px}.admin-section-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px;display:flex}.admin-section-heading h2{color:#f2ede4;letter-spacing:-.03em;margin:0;font:400 clamp(2rem,3vw,3.2rem)/1 Playfair Display,Georgia,serif}.admin-outline-button{color:#c6a77b;cursor:pointer;letter-spacing:.1em;background:0 0;border:1px solid #c6a77ba6;padding:12px 17px;font-size:10px;transition:background .25s,color .25s}.admin-outline-button:hover,.admin-outline-button:focus-visible{color:#171b1b;background:#c6a77b}.reservation-table-wrap{border-top:1px solid #f2ede433;overflow-x:auto}.reservation-table{border-collapse:collapse;text-align:left;width:100%;min-width:970px}.reservation-table th{color:#f2ede466;letter-spacing:.13em;text-transform:uppercase;padding:17px 16px 15px 0;font-size:9px;font-weight:500}.reservation-table td{color:#f2ede49e;vertical-align:top;border-top:1px solid #f2ede41f;padding:22px 16px 22px 0;font-size:11px}.reservation-table td strong,.reservation-table td>span{display:block}.reservation-table td strong{color:#f2ede4;margin-bottom:7px;font:400 16px/1.2 Playfair Display,Georgia,serif}.reservation-table td span+span{margin-top:5px}.reservation-id{color:#f2ede44d;letter-spacing:.1em;font-size:9px}.request-cell{max-width:170px;line-height:1.5}.status-pill{letter-spacing:.08em;text-transform:uppercase;border:1px solid;padding:6px 9px;font-size:9px;display:inline-block!important}.status-pending{color:#c6a77b;border-color:#c6a77b80}.status-confirmed{color:#9ac3a2;border-color:#91b49980}.action-cell{white-space:nowrap}.table-action{cursor:pointer;letter-spacing:.06em;background:0 0;border:0;padding:0;font-size:10px;transition:color .25s}.table-action+.table-action{margin-left:15px}.table-action.confirm{color:#c6a77b}.table-action.cancel{color:#f2ede473}.table-action:hover,.table-action:focus-visible{color:#f2ede4}.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}@media (width<=760px){.admin-header{width:min(100% - 48px,1240px);padding:23px 0}.admin-header-meta span{display:none}.admin-content{width:min(100% - 48px,1240px);padding:56px 0 90px}.admin-page-heading{display:block}.admin-date{margin-top:24px}.admin-summary{grid-template-columns:1fr;margin-top:54px}.summary-item,.summary-item:not(:first-child){border-bottom:1px solid #f2ede429;border-right:0;padding:20px 0}.summary-item:last-child{border-bottom:0}.summary-item strong{font-size:32px}.admin-reservations{margin-top:65px}.admin-section-heading{flex-direction:column;align-items:start;gap:20px}.reservation-table-wrap{margin-right:-1px}}@media (width>=761px) and (width<=1050px){.admin-header,.admin-content{width:min(100% - 96px,1180px)}.reservation-table{min-width:900px}}.admin-auth-state{color:#f2ede4;letter-spacing:.08em;background:#171b1b;place-items:center;min-height:100svh;font-size:12px;display:grid}.admin-logout-button{color:#f2ede473;cursor:pointer;font:inherit;letter-spacing:.08em;background:0 0;border:0;padding:0;font-size:10px;transition:color .25s,opacity .25s}.admin-logout-button:hover,.admin-logout-button:focus-visible{color:#f2ede4}.admin-logout-button:disabled{cursor:wait;opacity:.5}.admin-login-shell{color:#f2ede4;background:#171b1b;place-items:center;min-height:100svh;padding:48px 7vw;display:grid}.admin-login-panel{width:min(100%,470px)}.admin-login-brand{margin-bottom:88px}.admin-login-panel h1{color:#f2ede4;letter-spacing:-.04em;margin:0;font:400 clamp(2.8rem,5vw,5rem)/.98 Playfair Display,Georgia,serif}.admin-login-panel h1 em{color:#c6a77b;font-style:italic}.admin-login-intro{color:#f2ede48c;margin:22px 0 0;font-size:13px;line-height:1.7}.admin-login-form{margin-top:48px}.admin-login-form .form-field{margin-bottom:30px}.admin-login-error{color:#d4a18b;margin:-4px 0 24px;font-size:11px;line-height:1.5}.admin-login-button{margin-top:5px}.admin-login-button:disabled{cursor:wait;opacity:.65;transform:none}@media (width<=760px){.admin-login-shell{padding:35px 6vw}.admin-login-brand{margin-bottom:64px}.admin-login-panel h1{font-size:clamp(2.7rem,13vw,4.5rem)}.admin-login-button{width:100%}}
