html,body,#root{padding:0;margin:0;width:100%;overflow-x:hidden}:root{--deep-red: #8B0000;--olive-green: #708238;--cream: #F8F5F0;--charcoal: #2E2E2E;--gold: #C0A060;--heading-font: "Playfair Display", serif;--body-font: "Lato", sans-serif;--section-padding: 80px;--max-width: 1200px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--body-font);background-color:var(--cream);color:var(--charcoal);line-height:1.6}h1,h2,h3,h4,h5{font-family:var(--heading-font);color:var(--deep-red);margin-bottom:20px;letter-spacing:.5px}a{text-decoration:none;color:var(--deep-red);transition:color .3s ease}a:hover{color:var(--gold)}button{font-family:var(--body-font);background-color:var(--deep-red);color:#fff;border:none;padding:12px 24px;cursor:pointer;transition:background-color .3s ease}button:hover{background-color:var(--gold);color:var(--charcoal)}.nav-link.active{color:var(--gold);font-weight:700;border-bottom:2px solid var(--gold)}section{padding:var(--section-padding) 20px;margin:0 auto;transition:opacity .6s ease}section:not(.italian-vibe-section):not(.hero):not(.gallery-section):not(.welcome-section):not(.private-dining-section):not(.event-booking-section){max-width:var(--max-width)}.scroll-btn{margin-top:30px;background:transparent;border:2px solid white;color:#fff;font-size:30px;border-radius:50%;width:60px;height:60px;cursor:pointer;transition:all .3s ease;animation:bounce 2s infinite}.scroll-btn:hover{background-color:#fff;color:var(--deep-red)}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-thumb{background:var(--deep-red);border-radius:5px}::-webkit-scrollbar-track{background:var(--cream)}@media (max-width: 768px){h2{font-size:32px}button{padding:10px 20px;font-size:14px}.scroll-btn{width:50px;height:50px;font-size:24px}}body::-webkit-scrollbar{width:0;background:transparent}body{position:relative;overflow-x:hidden!important}@media (max-width: 480px){.container,.main-container{padding:10px;margin:0}h1{font-size:1.8rem}h2{font-size:1.5rem}h3{font-size:1.3rem}.menu-grid{grid-template-columns:1fr;gap:15px}input,textarea,select{width:100%;box-sizing:border-box}.btn{width:100%;padding:12px;margin:5px 0}.hero-section{height:50vh;text-align:center}.menu-item-card{padding:15px;margin:10px 0}.cart-page .checkout-section{position:static;width:100%}}@media (max-width: 768px){.navbar{padding:0}.nav-inner{padding:0 20px;height:70px}.nav-brand{font-size:18px}.nav-auth{display:none}.hamburger{display:block;background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:5px;z-index:1001}.nav-links{position:fixed;top:0;right:-100%;width:80%;height:100vh;background:#1a1a1afa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:100px 30px 30px;transition:right .3s ease;z-index:1000;overflow-y:auto}.nav-links.mobile-open{right:0}.nav-links a{width:100%;padding:20px 0;border-bottom:1px solid rgba(244,244,244,.1);font-size:18px;color:#f4f4f4}.nav-location-dropdown{width:100%;padding:20px 0;border-bottom:1px solid rgba(244,244,244,.1)}.dropdown-label{font-size:18px;color:#f4f4f4}}@media (min-width: 481px) and (max-width: 768px){.menu-grid{grid-template-columns:repeat(2,1fr)}.container{padding:20px}}@media (min-width: 769px) and (max-width: 1024px){.menu-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 769px){.hamburger{display:none}}:root{--container-pad: 24px;--container-max: 1200px;--radius: 12px}.container,.main-container{max-width:var(--container-max);margin:0 auto;padding:0 var(--container-pad);box-sizing:border-box}h1{font-size:clamp(1.8rem,2.6vw + 1rem,3rem)}h2{font-size:clamp(1.4rem,2vw + .8rem,2.2rem)}h3{font-size:clamp(1.2rem,1.4vw + .8rem,1.6rem)}p,li{line-height:1.55}button,.btn,[type=submit]{cursor:pointer;border-radius:var(--radius)}input,select,textarea{width:100%;border-radius:10px;padding:10px 12px;border:1px solid #ddd;box-sizing:border-box}.navbar{position:sticky;top:0;-webkit-backdrop-filter:saturate(140%) blur(8px);backdrop-filter:saturate(140%) blur(8px);z-index:50}.nav-inner{display:flex;align-items:center;justify-content:space-between;height:64px;padding:0 var(--container-pad)}.hamburger{display:none;background:none;border:0;font-size:28px;color:#fff}.nav-links{display:flex;gap:20px;align-items:center}@media (max-width: 768px){.hamburger{display:block}.nav-links{position:fixed;inset:0 0 0 auto;width:78%;right:-100%;flex-direction:column;align-items:flex-start;padding:90px 26px 26px;background:#141414f5;color:#f4f4f4;transition:right .28s ease;z-index:100;overflow-y:auto}.nav-links.mobile-open{right:0}.nav-links a{width:100%;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.08)}}.hero-section{min-height:56vh;display:grid;place-items:center;text-align:center;padding:40px var(--container-pad);background-position:center;background-size:cover}@media (max-width: 480px){.hero-section{min-height:46vh}}.menu-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}@media (max-width: 1024px){.menu-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.menu-grid{grid-template-columns:repeat(2,1fr);gap:16px}}@media (max-width: 480px){.menu-grid{grid-template-columns:1fr}}.menu-item-card{border:1px solid #eee;border-radius:var(--radius);overflow:hidden;background:#fff;display:flex;flex-direction:column}.menu-item-card .media{aspect-ratio:4/3;background:#f6f6f6}.menu-item-card .body{padding:12px;display:flex;flex-direction:column;gap:10px}.menu-item-card .actions{margin-top:auto;display:flex;gap:8px}@media (max-width: 480px){.menu-item-card .actions .btn{flex:1;padding:12px}}.product-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:start}@media (max-width: 900px){.product-layout{grid-template-columns:1fr}}.cart-page{display:grid;grid-template-columns:2fr 1fr;gap:28px;align-items:start}.checkout-summary{position:sticky;top:84px;border:1px solid #eee;border-radius:var(--radius);padding:16px;background:#fff}@media (max-width: 900px){.cart-page{grid-template-columns:1fr}.checkout-summary{position:static}}.order-list{display:grid;gap:12px}.order-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:12px;border:1px solid #eee;border-radius:10px}@media (max-width: 560px){.order-row{grid-template-columns:1fr}.order-row .qty{order:-1;margin-bottom:6px}}.mobile-sticky-cta{position:sticky;bottom:0;z-index:30;background:#fff;border-top:1px solid #eee;padding:12px}@media (min-width: 769px){.mobile-sticky-cta{display:none}}.table-wrap{overflow-x:auto;border-radius:10px;border:1px solid #eee}.table-wrap table{width:100%;border-collapse:collapse}.table-wrap th,.table-wrap td{padding:10px}.form-section{display:grid;gap:12px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 680px){.form-row{grid-template-columns:1fr}}.hide-on-mobile{display:unset}.show-on-mobile{display:none}@media (max-width: 768px){.hide-on-mobile{display:none!important}.show-on-mobile{display:block!important}}.page{padding:clamp(12px,2.2vw,28px) 0}.section{margin:clamp(16px,3vw,40px) 0}:focus-visible{outline:2px solid #222;outline-offset:2px}@media (max-width: 480px){[class*=grid]{display:grid!important;grid-template-columns:1fr!important;gap:14px!important}}.table-wrap,table{width:100%;border-collapse:collapse}@media (max-width: 768px){.table-wrap,table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 480px){button,.btn,[type=submit]{width:100%}}@media (max-width: 480px){[class*=hero],[class*=banner]{min-height:46vh!important;height:auto!important}}img,svg,video,canvas{max-width:100%;height:auto}input,select,textarea{width:100%;box-sizing:border-box}@media (max-width: 768px){.sticky-bottom,.mobile-sticky-cta{position:sticky;bottom:0;z-index:30;background:#fff;border-top:1px solid #eee;padding:12px}}
