@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap";@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap";html,body,#root{width:100%;min-height:100%;margin:0}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background:#f5f0e8;font-family:DM Sans,sans-serif}button,input,textarea,select{border-radius:0}button{appearance:none}::selection{color:#fff;background:#a98a59}::-webkit-scrollbar{width:7px}::-webkit-scrollbar-track{background:#f5f0e8}::-webkit-scrollbar-thumb{background:#b7aa95}.admin-shell{color:#f5f0e8;background:#171612;min-height:100vh;font-family:DM Sans,sans-serif;display:flex}.admin-side{border-right:1px solid #ffffff1a;flex-direction:column;gap:8px;width:240px;height:100vh;padding:34px 22px;display:flex;position:sticky;top:0}.admin-logo{letter-spacing:4px;margin-bottom:30px;font-family:Playfair Display,serif;font-size:25px}.admin-logo small{letter-spacing:3px;color:#a98a59;margin-top:5px;font:700 7px DM Sans;display:block}.admin-side button{color:#aaa49b;text-align:left;text-transform:uppercase;letter-spacing:2px;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:12px 14px;font-size:10px}.admin-side button.active,.admin-side button:hover{color:#fff;background:#ffffff14}.admin-side .logout{margin-top:auto}.admin-main{flex:1;min-width:0;padding:50px 5vw}.admin-main header{justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px;display:flex}.admin-main h1{margin:0;font:400 54px/1 Playfair Display}.admin-main header button,.admin-form button,.auth button{color:#fff;letter-spacing:1.5px;cursor:pointer;background:#a98a59;border:0;padding:13px 20px;font-size:9px;font-weight:700}.admin-main header button:hover,.admin-form button:hover,.auth button:hover{filter:brightness(1.08)}.admin-eyebrow{color:#a98a59;letter-spacing:3px;font-size:9px;font-weight:700}.stats{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px;display:grid}.stats>div,.admin-form,.table-wrap,.cards article,.category-chip{background:#211f1b;border:1px solid #ffffff14;border-radius:12px;padding:22px}.stats strong{font:400 34px Playfair Display;display:block}.stats span{color:#918b82;font-size:11px}.admin-alert{border:1px solid #ffffff1a;border-radius:8px;margin-bottom:18px;padding:12px 15px}.success-alert{color:#b8d6bc;background:#1f3022}.error{color:#d89a8e;font-size:12px}.admin-form{margin-bottom:24px}.admin-form h2{margin:0 0 20px;font:400 24px Playfair Display}.admin-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;display:grid}.admin-grid label{letter-spacing:1.5px;color:#a9a39a;text-transform:uppercase;font-size:9px}.admin-grid input,.admin-grid select,.auth input,.admin-form input,.admin-form select{color:#fff;background:#171612;border:1px solid #3b3831;outline:0;width:100%;margin-top:7px;padding:12px}.wide-field{grid-column:span 2}.checkbox{align-items:center;gap:8px;display:flex!important}.checkbox input{width:auto!important;margin:0!important}.table-wrap{padding:0;overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #ffffff12;padding:15px}th{color:#a98a59;letter-spacing:2px;text-transform:uppercase;font-size:8px}td small{color:#777168;margin-top:4px;display:block}td b{font-weight:600}td>button,td>select{margin-right:6px}.table-wrap select,.actions select{color:#fff;background:#171612;border:1px solid #3b3831;min-width:100px;padding:7px}.status{text-transform:uppercase;letter-spacing:1px;background:#38352e;border-radius:20px;padding:5px 7px;font-size:8px}.status.confirmed,.status.active,.status.handled{background:#334a38}.status.cancelled{background:#4d302f}.status.completed,.status.redeemed{background:#31424d}.status.read{background:#3d3b34}.danger,.danger-link{color:#d89a8e!important}.danger-link{cursor:pointer;background:0 0!important;border:0!important;padding:7px 4px!important}.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cards{grid-template-columns:repeat(4,1fr);gap:15px;display:grid}.cards article{padding:22px}.cards article>span{letter-spacing:2px;color:#a98a59;font-size:9px}.cards article h2{font:400 28px Playfair Display}.cards article p{color:#888}.card-actions{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.card-actions button,.table-wrap button,.secondary-action{color:#eee;letter-spacing:1px;cursor:pointer;background:#2b2822;border:1px solid #4a453b;padding:8px 10px;font-size:9px}.secondary-action{margin-left:8px}.category-row{flex-wrap:wrap;gap:10px;margin:-5px 0 24px;display:flex}.category-chip{align-items:center;gap:10px;padding:10px 12px;display:flex}.category-chip span{font-size:11px}.category-chip button{color:#aaa;letter-spacing:1px;cursor:pointer;background:0 0;border:0;font-size:8px}.admin-shell:has(.auth){justify-content:center;align-items:center}.admin-card{background:#211f1b;border:1px solid #ffffff1a;border-radius:14px;width:90%;max-width:420px;padding:40px}.admin-card h1{font:400 42px Playfair Display}.auth{flex-direction:column;gap:12px;display:flex}.auth a{color:#aaa;margin-top:10px;font-size:11px;text-decoration:none}.message-cell{white-space:pre-wrap;max-width:420px;line-height:1.6}@media (width<=1100px){.admin-grid,.cards,.stats{grid-template-columns:repeat(2,1fr)}}@media (width<=650px){.admin-shell{display:block}.admin-side{flex-direction:row;width:100%;height:auto;position:static;overflow:auto}.admin-logo{display:none}.admin-side button{white-space:nowrap}.admin-main{padding:28px 18px}.admin-main h1{font-size:40px}.stats,.admin-grid,.cards{grid-template-columns:1fr}.wide-field{grid-column:auto}.admin-main header{flex-direction:column;align-items:flex-start}}:root{--cream:#f5f0e8;--paper:#fbf9f5;--ink:#171612;--muted:#777168;--gold:#a98a59;--line:#17161221}*{box-sizing:border-box}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.restaurant{background:var(--cream);min-height:100vh;color:var(--ink);overflow-x:hidden}.navbar{z-index:100;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f5f0e8e0;border-bottom:1px solid #17161214;justify-content:space-between;align-items:center;height:86px;padding:0 5vw;display:flex;position:fixed;inset:0 0 auto}.brand{cursor:pointer;text-align:left;background:0 0}.brand span{letter-spacing:5px;font-family:Playfair Display,serif;font-size:24px;display:block}.brand small{letter-spacing:3px;color:var(--gold);margin-top:3px;font-size:7px;display:block}.navbar nav{gap:32px;display:flex}.navbar nav button{color:#625d55;cursor:pointer;letter-spacing:2px;text-transform:uppercase;background:0 0;font-size:9px;font-weight:600;position:relative}.navbar nav button:after{content:"";background:var(--gold);height:1px;transition:all .3s;position:absolute;bottom:-7px;left:0;right:100%}.navbar nav button:hover:after,.navbar nav button.active:after{right:0}.nav-reserve,.hero-actions button,.submit-booking,.contact-actions a{border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;letter-spacing:1.5px;padding:14px 21px;font-size:9px;font-weight:700}.nav-reserve:hover,.hero-actions button:hover,.submit-booking:hover,.contact-actions a:hover{background:var(--gold);border-color:var(--gold)}.hero{align-items:center;min-height:100vh;padding:120px 8vw 80px;display:flex;position:relative;overflow:hidden}.hero-image{background:url(https://images.unsplash.com/photo-1517248135467-4c7edcad34c4?auto=format&fit=crop&w=2200&q=90) 50%/cover;animation:15s ease-in-out infinite alternate heroZoom;position:absolute;inset:0}@keyframes heroZoom{0%{transform:scale(1)}to{transform:scale(1.06)}}.hero-overlay{background:linear-gradient(90deg,#0e0d0ad6,#0e0d0a61,#0e0d0a14);position:absolute;inset:0}.hero-content{z-index:2;color:#fff;max-width:760px;position:relative}.eyebrow{color:var(--gold);letter-spacing:4px;margin:0 0 20px;font-size:10px;font-weight:700}.hero h1,.page h2{letter-spacing:-4px;margin:0;font-family:Playfair Display,serif;font-size:clamp(68px,8vw,125px);font-weight:400;line-height:.92}.hero h1 em,.page h2 em{color:var(--gold);font-weight:400}.hero-copy{color:#ffffffc7;max-width:530px;margin:30px 0;font-size:16px;line-height:1.8}.hero-actions{gap:12px;display:flex}.hero-actions .ghost{background:0 0;border-color:#ffffff8c}.hero-actions .ghost:hover{color:var(--ink);background:#fff}.hero-bottom{z-index:3;color:#ffffff9e;letter-spacing:2px;justify-content:space-between;font-size:8px;display:flex;position:absolute;bottom:28px;left:8vw;right:8vw}.page{min-height:100vh;padding:150px 8vw 110px;animation:.5s pageIn}@keyframes pageIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.page-intro{max-width:720px}.page-intro>p:last-child{max-width:560px;color:var(--muted);margin-top:25px;font-size:16px;line-height:1.8}.centered{text-align:center;margin:0 auto}.centered>p:last-child{margin-left:auto;margin-right:auto}.menu-tabs{flex-wrap:wrap;gap:10px;margin:65px 0 25px;display:flex}.menu-tabs button{border:1px solid var(--line);color:var(--muted);cursor:pointer;letter-spacing:2px;text-transform:uppercase;background:0 0;padding:12px 18px;font-size:9px}.menu-tabs button.selected,.menu-tabs button:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.menu-grid{grid-template-columns:repeat(2,1fr);gap:0 70px;display:grid}.dish{border-top:1px solid var(--line);justify-content:space-between;gap:30px;min-height:145px;padding:32px 0;display:flex}.dish h3{margin:0 0 10px;font-family:Playfair Display,serif;font-size:25px;font-weight:400}.dish p{max-width:390px;color:var(--muted);margin:0;font-size:12px;line-height:1.7}.dish strong{color:var(--gold);white-space:nowrap;font-size:15px}.experience-section{grid-template-columns:1fr 1fr;align-items:center;gap:8vw;display:grid}.experience-image{background:url(https://images.unsplash.com/photo-1515003197210-e0cd71810b5f?auto=format&fit=crop&w=1400&q=90) 50%/cover;min-height:600px}.experience-content>p:not(.eyebrow){max-width:530px;color:var(--muted);margin:35px 0;font-size:16px;line-height:1.9}.experience-stats{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.experience-stats div{padding-top:20px}.experience-stats strong{color:var(--gold);letter-spacing:2px;font-size:11px;display:block}.experience-stats span{color:var(--muted);margin-top:12px;font-size:11px;line-height:1.5;display:block}.reviews-section{background:var(--paper)}.reviews-grid{grid-template-columns:repeat(3,1fr);gap:25px;max-width:1200px;margin:90px auto 0;display:grid}.review{border:1px solid var(--line);background:#fff;padding:40px 30px}.stars{color:var(--gold);letter-spacing:5px;font-size:11px}.review p{margin:28px 0;font-family:Playfair Display,serif;font-size:22px;line-height:1.5}.review strong{letter-spacing:1px;font-size:11px;display:block}.review span{color:var(--muted);letter-spacing:1px;margin-top:5px;font-size:8px;display:block}.booking-section{grid-template-columns:.8fr 1fr;align-items:center;gap:8vw;display:grid}.booking-copy>p:not(.eyebrow){max-width:430px;color:var(--muted);margin:30px 0;font-size:16px;line-height:1.8}.booking-contact{border-top:1px solid var(--line)}.booking-contact span{color:var(--gold);letter-spacing:3px;margin-top:22px;font-size:8px;display:block}.booking-contact a{color:var(--ink);margin-top:6px;font-family:Playfair Display,serif;font-size:20px;text-decoration:none;display:inline-block}.booking-form{border:1px solid var(--line);background:#fff;padding:42px;box-shadow:0 30px 90px #00000012}.form-row{grid-template-columns:1fr 1fr;gap:15px;display:grid}.booking-form label{color:var(--muted);letter-spacing:2px;margin-bottom:18px;font-size:8px;font-weight:700;display:block}.booking-form input,.booking-form select,.booking-form textarea{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);letter-spacing:0;outline:none;margin-top:8px;padding:14px;font-size:12px}.booking-form textarea{resize:vertical}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:var(--gold)}.submit-booking{width:100%;padding:17px}.success{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:470px;display:flex}.success>span{border:1px solid var(--gold);width:58px;height:58px;color:var(--gold);border-radius:50%;place-items:center;font-size:25px;display:grid}.success h3{margin:25px 0 10px;font-family:Playfair Display,serif;font-size:34px;font-weight:400}.success p{max-width:350px;color:var(--muted);line-height:1.7}.success button{border:1px solid var(--ink);cursor:pointer;letter-spacing:2px;background:0 0;margin-top:25px;padding:12px 18px;font-size:8px}.contact-section{grid-template-columns:1fr 1fr;align-items:center;gap:8vw;display:grid}.contact-details{max-width:500px;margin-top:55px}.contact-details div{border-top:1px solid var(--line);padding:22px 0}.contact-details span{color:var(--gold);letter-spacing:3px;margin-bottom:9px;font-size:8px;display:block}.contact-details strong,.contact-details a{color:var(--ink);font-family:Playfair Display,serif;font-size:21px;font-weight:400;line-height:1.5;text-decoration:none}.contact-actions{gap:10px;margin-top:25px;display:flex}.contact-actions a{text-decoration:none}.contact-actions a:last-child{color:var(--ink);background:0 0}.map-card{background:linear-gradient(#1414121a,#1414128c),url(https://images.unsplash.com/photo-1477959858617-67f85cf4f1df?auto=format&fit=crop&w=1400&q=85) 50%/cover;min-height:570px;position:relative;overflow:hidden}.map-card>div{background:#ffffffeb;padding:22px;position:absolute;bottom:30px;left:30px}.map-card span,.map-card strong,.map-card small{display:block}.map-card span{color:var(--gold);letter-spacing:2px;font-size:8px}.map-card strong{margin-top:7px;font-family:Playfair Display,serif;font-size:25px;font-weight:400}.map-card small{color:var(--muted);margin-top:5px}footer{border-top:1px solid var(--line);min-height:75px;color:var(--muted);letter-spacing:2px;justify-content:space-between;align-items:center;padding:0 8vw;font-size:7px;display:flex}footer button{color:var(--ink);cursor:pointer;letter-spacing:1.5px;background:0 0;border:0;font-size:8px;font-weight:700}@media (width<=900px){.navbar{height:72px;padding:0 20px}.brand span{font-size:17px}.navbar nav{display:none}.nav-reserve{padding:11px 13px;font-size:7px}.hero{padding:120px 25px 70px}.hero h1,.page h2{letter-spacing:-3px;font-size:clamp(55px,15vw,90px)}.hero-copy{font-size:13px}.hero-bottom{left:25px;right:25px}.hero-bottom span:last-child{display:none}.page{padding:115px 25px 80px}.menu-grid,.experience-section,.booking-section,.contact-section{grid-template-columns:1fr}.menu-tabs{margin-top:45px}.dish{min-height:auto}.experience-image{min-height:380px}.reviews-grid{grid-template-columns:1fr;margin-top:55px}.booking-form{padding:25px}.map-card{min-height:380px}footer{padding:20px 25px}footer span:nth-child(2){display:none}}@media (width<=520px){.hero-actions{flex-direction:column;align-items:stretch}.hero-actions button{width:100%}.form-row{grid-template-columns:1fr;gap:0}.experience-stats{grid-template-columns:1fr}.contact-actions{flex-direction:column}.contact-actions a{text-align:center}}.data-warning{z-index:200;color:#fff;letter-spacing:.8px;background:#a98a59f2;max-width:min(680px,90vw);padding:10px 14px;font-size:10px;position:fixed;top:96px;left:50%;transform:translate(-50%)}.field-note{color:#9a4c4c;letter-spacing:.4px;margin-top:8px;font-size:9px;display:block}.booking-form select:disabled{opacity:.55;cursor:not-allowed}.contact-stack{gap:25px;display:grid}.contact-form-card{border:1px solid var(--line);background:#fff;box-shadow:0 30px 90px #0000000d}.contact-form-public{gap:12px;padding:30px;display:grid}.contact-form-public h3{margin:0 0 5px;font:400 28px/1.1 Playfair Display,serif}.contact-form-public input,.contact-form-public textarea,.contact-form-public select{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);outline:none;padding:14px}.contact-form-public button{border:1px solid var(--ink);background:var(--ink);color:#fff;letter-spacing:1.5px;cursor:pointer;padding:15px 18px;font-size:9px;font-weight:700}.contact-form-public button:hover{background:var(--gold);border-color:var(--gold)}.form-success{color:#4c684f;margin:0;font-size:13px;line-height:1.7}.compact{min-height:330px}.gift-card-section{background:var(--cream)}.gift-card-form{border:1px solid var(--line);background:#fff;max-width:900px;margin:65px auto 0;padding:42px;box-shadow:0 30px 90px #00000012}.gift-card-form label{color:var(--muted);letter-spacing:2px;margin-bottom:18px;font-size:8px;font-weight:700;display:block}.gift-card-form input,.gift-card-form textarea,.gift-card-form select{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);outline:none;margin-top:8px;padding:14px;font-size:12px}.gift-card-form input:focus,.gift-card-form textarea:focus,.gift-card-form select:focus{border-color:var(--gold)}.gift-success{border:1px solid var(--line);background:#fff;max-width:900px;margin:65px auto 0}@media (width<=900px){.contact-stack{gap:18px}.gift-card-form{margin-top:45px;padding:25px}}.menu-empty-state{text-align:center;border:1px solid var(--line);grid-column:1/-1;padding:3rem 1rem}.menu-empty-state h3{margin:0 0 .5rem}.menu-empty-state p{color:var(--muted);margin:0}.gift-request-summary{border:1px solid var(--line,#17161221);background:var(--paper,#fbf9f5);text-align:left;grid-template-columns:1fr auto;gap:8px 24px;max-width:420px;margin:24px auto;padding:18px 20px;display:grid}.gift-request-summary small{letter-spacing:.18em;color:var(--muted,#777168);font-size:10px}.gift-request-summary strong{text-align:right;font-size:14px}.gift-whatsapp-button{color:#fff;letter-spacing:.12em;background:#171612;justify-content:center;align-items:center;min-height:48px;margin:4px 0 12px;padding:0 24px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.gift-whatsapp-button:hover{opacity:.88}
