:root{--primary-green: #00843D;--primary-yellow: #FFCD00;--primary-red: #C8102E;--dark-bg: #0A0A0A;--accent: #B49B5C;--text-white: #F5F5F7;--text-muted: rgba(245, 245, 247, .6);--glass: rgba(255, 255, 255, .02);--glass-border: rgba(255, 255, 255, .08);--serif-font: "Playfair Display", serif;--sans-font: "Lato", sans-serif;--accent-font: "Cinzel", serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--sans-font);background-color:var(--dark-bg);color:var(--text-white);-webkit-font-smoothing:antialiased;overflow-x:hidden}#app-wrapper{min-height:100vh;display:flex;flex-direction:column}.premium-container{max-width:1400px;margin:0 auto;padding:0 2rem;width:100%}.navbar{position:fixed;top:0;left:0;right:0;z-index:2000;background:transparent;transition:all .4s ease;padding:2rem 0}.navbar.scrolled{background:#0a0a0af2;padding:1.25rem 0;border-bottom:1px solid var(--glass-border)}.nav-container{display:flex;justify-content:space-between;align-items:center}.nav-logo-wrapper{text-decoration:none;display:flex;flex-direction:column;transition:transform .3s ease}.nav-logo-wrapper:hover{transform:translateY(-2px)}.nav-logo{font-family:var(--accent-font);font-size:1.8rem;font-weight:700;color:var(--text-white);letter-spacing:4px;text-transform:uppercase;line-height:1}.nav-logo span{color:var(--accent)}.nav-tagline{font-family:var(--sans-font);font-size:.75rem;font-weight:400;text-transform:uppercase;color:var(--accent);letter-spacing:1.5px;margin-top:.4rem;opacity:1;white-space:nowrap}.nav-links{display:flex;gap:4rem}.nav-link{text-decoration:none;color:var(--text-white);font-weight:400;font-size:.85rem;transition:all .3s ease;text-transform:uppercase;letter-spacing:3px;position:relative}.nav-link:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--accent);transition:width .3s ease}.nav-link:hover:after,.nav-link.active:after{width:100%}.hero{position:relative;height:90vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background-attachment:fixed;padding-top:5rem}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,rgba(180,155,92,.05) 0%,transparent 70%);z-index:-1}.restaurant-name{font-family:var(--serif-font);font-size:clamp(4rem,12vw,9rem);font-weight:400;color:var(--text-white);margin-bottom:0;line-height:.9;font-style:italic}.tagline{font-family:var(--sans-font);color:var(--accent);font-size:1.1rem;font-weight:300;letter-spacing:12px;text-transform:uppercase;margin-top:1.5rem}.menu-section{padding:8rem 0}.category-title{font-family:var(--serif-font);font-size:3rem;font-weight:400;text-align:center;margin:6rem 0 3rem;color:var(--text-white);position:relative}.category-title:after{content:"";display:block;width:40px;height:1px;background:var(--accent);margin:1.5rem auto 0}.menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:4rem}.menu-card{position:relative;transition:all .5s ease;display:flex;flex-direction:column;height:100%}.menu-image-container{aspect-ratio:4/5;width:100%;overflow:hidden;border-radius:4px;margin-bottom:2rem;filter:grayscale(20%);transition:all .5s ease}.menu-card:hover .menu-image-container{filter:grayscale(0%)}.menu-image{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.25,1,.5,1)}.menu-card:hover .menu-image{transform:scale(1.05)}.menu-content{text-align:left;display:flex;flex-direction:column;flex:1}.menu-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1rem;border-bottom:.5px solid rgba(180,155,92,.2);padding-bottom:.5rem}.menu-title{font-family:var(--serif-font);font-size:1.5rem;font-weight:500;color:var(--text-white)}.menu-price{font-family:var(--sans-font);font-weight:300;color:var(--accent);font-size:1.1rem}.menu-description{font-family:var(--sans-font);font-size:1rem;color:var(--text-muted);line-height:1.7;font-weight:300;flex:1}.about-section{padding:10rem 0}.about-header{margin-bottom:8rem;text-align:left}.about-header h1{font-family:var(--serif-font);font-size:clamp(3.5rem,8vw,6rem);font-weight:400;font-style:italic;margin-bottom:1rem}.about-content{display:grid;grid-template-columns:1.2fr 1fr;gap:10rem;align-items:start}.about-text h2{font-family:var(--serif-font);font-size:2.8rem;font-weight:400;margin:3rem 0 1.5rem}.about-text p{font-size:1.15rem;line-height:2;margin-bottom:2.5rem;color:var(--text-muted)}.about-image{width:100%;height:700px;object-fit:cover;border-radius:2px;box-shadow:40px -40px 0 -1px #b49b5c0d}.waiter-bubble-wrapper{position:fixed;bottom:2rem;right:2rem;display:flex;align-items:center;gap:1rem;z-index:2000;cursor:pointer}.waiter-tag{background:var(--accent);color:var(--dark-bg);padding:.5rem 1rem;border-radius:20px;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 15px #0000004d;animation:slideInRight .5s ease-out;white-space:nowrap}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.waiter-bubble{width:60px;height:60px;background:var(--dark-bg);border:1px solid var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 30px #00000080;transition:all .3s ease}.waiter-bubble:hover{transform:scale(1.1);box-shadow:0 0 20px var(--accent)}.waiter-bubble svg{width:28px;height:28px;fill:var(--accent)}.pulse{animation:pulse-red 1.5s infinite}@keyframes pulse-red{0%{transform:scale(.95);box-shadow:0 0 #b49b5cb3}70%{transform:scale(1);box-shadow:0 0 0 10px #fff0}to{transform:scale(.95);box-shadow:0 0 #fff0}}.bubble-popover{position:fixed;bottom:8rem;right:2rem;width:380px;max-width:calc(100vw - 4rem);background:#111;border:1px solid var(--accent);border-radius:4px;padding:2rem;box-shadow:0 15px 50px #000c;z-index:2001;display:none;flex-direction:column;animation:slideUp .4s cubic-bezier(.25,1,.5,1)}.bubble-popover.active{display:flex}.popover-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--glass-border)}.popover-status{width:10px;height:10px;background:var(--accent);border-radius:50%;box-shadow:0 0 10px var(--accent)}.waiter-panel{padding:6rem 0;margin-bottom:4rem;border-bottom:1px solid var(--glass-border)}.waiter-panel-content{text-align:center;max-width:800px;margin:0 auto}.waiter-panel-title{font-family:var(--serif-font);font-size:3rem;font-weight:400;margin-bottom:1.5rem}.waiter-panel-description{font-size:1.2rem;font-weight:300;color:var(--text-muted);line-height:1.6;font-style:italic;margin-bottom:3rem}.premium-button{background:var(--accent);color:var(--dark-bg);border:none;padding:1rem 2.5rem;font-family:var(--sans-font);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;cursor:pointer;transition:all .3s ease;border-radius:2px}.premium-button:hover{background:var(--text-white);transform:translateY(-2px)}.premium-button-outline{background:transparent;color:var(--text-white);border:1px solid var(--glass-border);padding:1rem 2.5rem;font-family:var(--sans-font);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;cursor:pointer;transition:all .3s ease;border-radius:2px}.premium-button-outline:hover{border-color:var(--accent);color:var(--accent)}.cart-trigger{background:transparent;border:none;color:var(--text-white);cursor:pointer;position:relative;display:flex;align-items:center;padding:.5rem;transition:all .3s ease}.cart-trigger:hover{color:var(--accent)}.cart-trigger svg{fill:currentColor}.cart-badge{position:absolute;top:-4px;right:-4px;background:var(--accent);color:var(--dark-bg);font-size:.7rem;font-weight:800;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center}.cart-overlay{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:3000;display:flex;justify-content:flex-end}.cart-drawer{width:100%;max-width:450px;background:var(--dark-bg);height:100%;border-left:1px solid var(--glass-border);display:flex;flex-direction:column;animation:slideLeft .4s cubic-bezier(.25,1,.5,1)}@keyframes slideLeft{0%{transform:translate(100%)}to{transform:translate(0)}}.cart-header{padding:2rem;border-bottom:1px solid var(--glass-border);display:flex;justify-content:space-between;align-items:center}.close-cart{background:transparent;border:none;color:var(--text-white);font-size:2rem;cursor:pointer;line-height:1}.cart-items{flex:1;overflow-y:auto;padding:2rem}.cart-item{display:flex;gap:1.5rem;margin-bottom:2rem;align-items:start}.cart-item-image{width:80px;height:80px;object-fit:cover;border-radius:4px}.cart-item-info{flex:1}.cart-item-info h4{font-family:var(--serif-font);font-size:1.1rem;margin-bottom:.25rem}.cart-item-info p{color:var(--accent);font-size:.9rem;margin-bottom:.75rem}.cart-qty-controls{display:flex;align-items:center;gap:1rem}.cart-qty-controls button{background:transparent;border:1px solid var(--glass-border);color:var(--text-white);width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:2px}.remove-item{background:transparent;border:none;color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:1px;cursor:pointer}.remove-item:hover{color:var(--primary-red)}.cart-footer{padding:2rem;border-top:1px solid var(--glass-border);background:#ffffff05}.cart-total{display:flex;justify-content:space-between;margin-bottom:2rem;font-size:1.25rem;font-family:var(--serif-font)}.empty-cart{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-muted);text-align:center;padding:2rem}.thinking-dots{font-size:.75rem;opacity:.5;font-style:italic;display:inline-block}.thinking-dots:after{content:"...";display:inline-block;width:12px;text-align:left;animation:dots 1.5s steps(4,end) infinite}@keyframes dots{0%,20%{content:""}40%{content:"."}60%{content:".."}80%{content:"..."}}.fade-in{opacity:0;transform:translateY(30px);animation:reveal 1s cubic-bezier(.25,1,.5,1) forwards}@keyframes reveal{to{opacity:1;transform:translateY(0)}}.food-carousel-section{width:100%;height:600px;position:relative;overflow:hidden;margin:4rem 0;border-radius:4px;border:1px solid var(--glass-border)}.carousel-container{width:100%;height:100%;position:relative}.carousel-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s cubic-bezier(.25,1,.5,1);background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:4rem;z-index:1}.carousel-slide.active{opacity:1;z-index:2}.carousel-content{max-width:600px;text-align:left;transform:translateY(20px);transition:transform .8s ease .4s}.carousel-slide.active .carousel-content{transform:translateY(0)}.carousel-tag{display:inline-block;font-size:.75rem;letter-spacing:3px;text-transform:uppercase;color:var(--accent);background:#b49b5c1a;padding:.5rem 1rem;border-radius:2px;margin-bottom:1.5rem;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border:1px solid rgba(180,155,92,.3)}.carousel-title{font-family:var(--serif-font);font-size:1.2rem;font-weight:300;letter-spacing:4px;text-transform:uppercase;margin-bottom:.5rem;opacity:.8}.carousel-subtitle{font-family:var(--serif-font);font-size:4rem;font-style:italic;font-weight:400;margin-bottom:1.5rem;line-height:1}.carousel-description{font-size:1.1rem;line-height:1.8;color:var(--text-muted);font-weight:300;margin-bottom:2.5rem}.carousel-indicators{display:flex;gap:1.5rem;margin-top:2rem}.indicator{width:40px;height:2px;background:var(--glass-border);cursor:pointer;transition:all .3s ease}.indicator.active{background:var(--accent);width:80px}@media(max-width:1024px){.about-content{grid-template-columns:1fr;gap:4rem}.nav-links{gap:2rem}}
