@import "https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700&family=Cormorant+Garamond:ital,wght@0,400;0,600;0,700;1,400;1,600&family=DM+Sans:opsz,wght@9..40,300;9..40,400;9..40,500&family=Great+Vibes&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap";:root{--bg-cream:#f4efe6;--bg-white:#fff;--bg-cream-dark:#e6decd;--primary-maroon:#6a1c1a;--primary-maroon-light:#8a2522;--accent-gold:#b58e52;--text-primary:#333;--text-muted:#666;--text-maroon:#6a1c1a;--font-heading:"Cormorant Garamond", serif;--font-body:"DM Sans", sans-serif;--font-display:"Cinzel", serif;--font-menu:"Playfair Display", serif;--border-structural:1px solid var(--primary-maroon);--border-subtle:1px solid #6a1c1a33;--radius-sharp:0px;--transition-slow:.6s cubic-bezier(.25, 1, .5, 1);--transition-normal:.3s ease}*{box-sizing:border-box;scroll-behavior:smooth;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--bg-cream);color:var(--text-primary);background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M54.627 0l.83.83v58.34l-.83.83H5.373l-.83-.83V.83l.83-.83h49.254zM53.5 1.5H6.5v57h47v-57z' fill='%23e4decd' fill-opacity='0.4' fill-rule='evenodd'/%3E%3Cpath d='M44.64 15.36c-2.48-2.48-5.88-4.08-9.64-4.08-3.76 0-7.16 1.6-9.64 4.08-2.48 2.48-4.08 5.88-4.08 9.64 0 3.76 1.6 7.16 4.08 9.64 2.48 2.48 5.88 4.08 9.64 4.08 3.76 0 7.16-1.6 9.64-4.08 2.48-2.48 4.08-5.88 4.08-9.64 0-3.76-1.6-7.16-4.08-9.64zm-1.06 18.22c-2.2 2.2-5.24 3.62-8.58 3.62-3.34 0-6.38-1.42-8.58-3.62-2.2-2.2-3.62-5.24-3.62-8.58 0-3.34 1.42-6.38 3.62-8.58 2.2-2.2 5.24-3.62 8.58-3.62 3.34 0 6.38 1.42 8.58 3.62 2.2 2.2 3.62 5.24 3.62 8.58 0 3.34-1.42 6.38-3.62 8.58z' fill='%23e4decd' fill-opacity='0.4' fill-rule='evenodd'/%3E%3C/svg%3E");line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--primary-maroon);font-weight:600}a{color:inherit;text-decoration:none}button{font-family:var(--font-body);cursor:pointer;background:0 0;border:none}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 40px}.section{padding:120px 0;position:relative}.section-title{text-align:left;letter-spacing:-.5px;border-bottom:var(--border-structural);margin-bottom:4rem;padding-bottom:20px;font-size:3.5rem;font-style:italic;display:inline-block}@media (width<=768px){.container{padding:0 1.25rem}.section{padding:clamp(4rem,15vw,6rem) 0}.section-title{text-align:center;margin-bottom:clamp(1.5rem,8vw,3rem);margin-left:auto;margin-right:auto;font-size:clamp(2rem,10vw,3rem);display:block}}.btn-primary{background-color:var(--primary-maroon);color:var(--bg-white);font-family:var(--font-body);letter-spacing:2px;text-transform:uppercase;border:1px solid var(--primary-maroon);transition:all var(--transition-slow);align-items:center;gap:15px;padding:16px 40px;font-size:.9rem;font-weight:500;display:inline-flex;position:relative;overflow:hidden}.btn-primary:hover{background-color:var(--bg-white);color:var(--primary-maroon)}.btn-secondary{color:var(--primary-maroon);border:1px solid var(--primary-maroon);letter-spacing:2px;text-transform:uppercase;transition:all var(--transition-slow);background-color:#0000;padding:16px 40px;font-size:.9rem;font-weight:500}.btn-secondary:hover{background-color:var(--primary-maroon);color:var(--bg-white)}.app-wrapper{min-height:100vh;padding-bottom:70px;position:relative}@media (width>=768px){.app-wrapper{padding-bottom:0}}.navbar{z-index:1000;width:100%;transition:all var(--transition-slow);color:var(--primary-maroon);background-color:#0000;border-bottom:1px solid #0000;padding:clamp(1.5rem,2.083vw + .5rem,2.25rem) 0;position:fixed;top:0;left:0}.navbar-scrolled{background-color:var(--bg-white);border-bottom:var(--border-structural);padding:clamp(1rem,1.389vw + .5rem,1.5rem) 0;box-shadow:0 4px 20px #6a1c1a0d}.navbar-container{justify-content:space-between;align-items:center;display:flex}.navbar-logo{flex-direction:column;line-height:1;display:flex}.navbar-logo span{font-family:var(--font-heading);letter-spacing:2px;color:var(--primary-maroon);font-size:2rem;font-weight:600}.navbar-logo small{font-family:var(--font-body);letter-spacing:.375rem;color:var(--accent-gold);text-transform:uppercase;margin-top:.25rem;font-size:.65rem}.nav-brand-logo{width:auto;height:clamp(4.5rem,6.25vw + .5rem,6.75rem);transition:height var(--transition-normal)}.navbar-links{align-items:center;gap:clamp(2rem,2.778vw + .5rem,3rem);display:flex}.nav-link{font-family:var(--font-body);letter-spacing:2px;text-transform:uppercase;color:var(--text-primary);transition:color var(--transition-normal);font-size:.85rem;font-weight:500;position:relative}.nav-link:hover{color:var(--primary-maroon)}.nav-link:after{content:"";background-color:var(--primary-maroon);width:0;height:1px;transition:width var(--transition-slow);position:absolute;bottom:-.375rem;left:0}.nav-link:hover:after{width:100%}.mobile-only{display:none}.desktop-only{display:flex}.mobile-toggle{color:var(--primary-maroon)}@media (width<=768px){.desktop-only{display:none}.mobile-only{display:block}.navbar{padding:clamp(.75rem,1.042vw + .5rem,1.125rem) 0}.navbar-scrolled{padding:.625rem 0}.mobile-menu{background-color:var(--bg-white);border-bottom:var(--border-structural);text-align:center;flex-direction:column;align-items:center;gap:clamp(1.25rem,1.736vw + .5rem,1.875rem);width:100%;padding:clamp(1rem,1.389vw + .5rem,1.5rem) clamp(1.5rem,2.083vw + .5rem,2.25rem) clamp(2rem,2.778vw + .5rem,3rem);display:flex;position:absolute;top:100%;left:0;box-shadow:0 10px 20px #0000000d}.mobile-nav-link{color:var(--primary-maroon);letter-spacing:2px;text-transform:uppercase;font-size:1.1rem;font-family:var(--font-body);width:100%;font-weight:500;display:block}.nav-brand-logo{height:clamp(2.25rem,3.125vw + .5rem,3.375rem)}}.hero-section{--navbar-clearance:calc(clamp(4.5rem, 6.25vw + .5rem, 6.75rem) + 2 * clamp(1.5rem, 2.083vw + .5rem, 2.25rem) + 1.25rem);height:100vh;padding-top:var(--navbar-clearance);box-sizing:border-box;align-items:center;display:flex;position:relative;overflow:hidden}.hero-background{background:linear-gradient(to right, var(--bg-cream), #f4efe6b3), url(/hero-bg.jpeg) center/cover no-repeat;z-index:-1;filter:sepia(.2)saturate(1.2);width:100%;height:100%;position:absolute;top:0;left:0}.hero-section:after{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#6a1c1a0d 1px,#0000 1px),linear-gradient(90deg,#6a1c1a0d 1px,#0000 1px);background-size:100px 100px;position:absolute;inset:0}.hero-content{color:var(--primary-maroon);z-index:1;width:100%;max-width:min(100%,clamp(32.5rem,45.139vw + .5rem,48.75rem));position:relative}.hero-title{color:var(--primary-maroon);margin-bottom:clamp(1.5rem,2.083vw + .5rem,2.25rem);font-size:5.5rem;line-height:1.1;animation:1.5s cubic-bezier(.2,.8,.2,1) fadeUp}.hero-subtitle{letter-spacing:1px;color:var(--text-muted);border-left:2px solid var(--primary-maroon);margin-bottom:clamp(2.5rem,3.472vw + .5rem,3.75rem);padding-left:clamp(1rem,1.389vw + .5rem,1.5rem);font-size:1.1rem;font-weight:400}.hero-buttons{flex-wrap:wrap;gap:clamp(1rem,1.389vw + .5rem,1.5rem);display:flex}.about-section{background-color:var(--bg-white);border-top:var(--border-structural)}.about-content{grid-template-columns:1fr;gap:clamp(2.5rem,3.472vw + .5rem,3.75rem);display:grid}@media (width>=992px){.about-content{grid-template-columns:1fr 1.5fr;align-items:center}}.about-text p{color:var(--text-muted);margin-bottom:clamp(1.5rem,2.083vw + .5rem,2.25rem);font-size:1.25rem;font-weight:400}.established-badge{color:var(--accent-gold);font-family:var(--font-heading);margin-top:clamp(2rem,2.778vw + .5rem,3rem);font-size:1.8rem;font-style:italic;font-weight:600}.popular-dishes{background-color:var(--bg-cream);border-top:var(--border-subtle);border-bottom:var(--border-subtle)}.special-carousel{width:min(100%,clamp(20rem,72vw,56rem));margin:0 auto;position:relative}.special-stage{touch-action:pan-y;height:clamp(24.5rem,38vw,32rem);position:relative;overflow:hidden}.special-menu-card{background-color:var(--bg-white);text-align:left;opacity:0;pointer-events:none;border-radius:8px;flex-direction:column;padding:clamp(2rem,3.5vw,3.25rem);transition:opacity .65s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1);display:flex;position:absolute;inset:0;transform:translate(36%);box-shadow:0 4px 20px #00000008}.special-menu-card.is-maroon{border-top:4px solid var(--primary-maroon)}.special-menu-card.is-gold{border-top:4px solid var(--accent-gold)}.special-menu-card.is-active{opacity:1;pointer-events:auto;z-index:3;transform:translate(0)}.special-menu-card.is-prev{opacity:0;z-index:1;transform:translate(-36%)}.special-menu-card.is-next{opacity:0;z-index:1;transform:translate(36%)}.special-menu-card.is-hidden{opacity:0;z-index:0;transform:translate(36%)}.special-menu-header{margin-bottom:clamp(1.25rem,2.5vw,2rem)}.special-menu-kicker{color:var(--accent-gold);font-family:var(--font-display);letter-spacing:.28em;text-transform:uppercase;margin:0 0 .5rem;font-size:clamp(.82rem,1.1vw,.95rem);font-weight:600}.special-menu-title{color:var(--primary-maroon);font-family:var(--font-display);letter-spacing:.06em;margin:0;font-size:clamp(2.2rem,3.8vw,3rem);font-style:normal;font-weight:600;line-height:1.15}.special-menu-badge{color:var(--accent-gold);font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;margin-top:.75rem;font-size:.72rem;font-weight:600;display:inline-block}.special-menu-items{color:var(--text-muted);gap:clamp(10px,1.5vw,16px);margin:0;padding:0;font-size:clamp(1.1rem,1.5vw,1.25rem);line-height:1.7;list-style:none;display:grid}.special-menu-item{border-bottom:1px solid var(--border-structural);grid-template-columns:minmax(9rem,1fr) 2fr;align-items:baseline;gap:clamp(12px,2vw,20px);padding-bottom:clamp(10px,1.2vw,14px);display:grid}.special-menu-item:last-child{border-bottom:none;padding-bottom:0}.special-menu-item strong{color:var(--accent-gold);font-family:var(--font-heading);font-size:clamp(1.15rem,1.6vw,1.35rem);font-style:italic;font-weight:600}.special-menu-item span{color:var(--primary-maroon);font-family:var(--font-menu);font-size:clamp(1.22rem,1.8vw,1.45rem);font-style:italic;font-weight:500}.special-dots{justify-content:center;gap:.65rem;margin-top:1.5rem;display:flex}.special-dot{background:#6a1c1a2e;border-radius:999px;width:.65rem;height:.65rem;transition:width .35s,background-color .35s}.special-dot.is-active{background:var(--primary-maroon);width:1.7rem}.special-dot:focus-visible{outline:2px solid var(--accent-gold);outline-offset:3px}.special-confirm-note{width:min(100%,clamp(20rem,72vw,56rem));color:var(--text-muted);font-family:var(--font-body);margin:1.5rem auto 0;font-size:.9rem;font-weight:400;line-height:1.6}@media (width<=640px){.special-carousel{max-width:100%}.special-stage{height:clamp(24.5rem,96vw,29rem)}}@media (prefers-reduced-motion:reduce){.special-menu-card{transition:opacity .2s}.special-menu-card.is-prev,.special-menu-card.is-next,.special-menu-card.is-hidden{transform:translate(0)}.special-menu-card.is-active{transform:none}}.menu-section{background-color:var(--bg-white)}.menu-tabs-container{align-items:center;gap:.5rem;margin-bottom:clamp(3rem,4.167vw + .5rem,4.5rem);display:flex;position:relative}.menu-tabs{scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth;border-bottom:1px solid #6a1c1a1a;flex:1;gap:clamp(1.75rem,2.431vw + .5rem,2.625rem);min-width:0;padding-bottom:0;display:flex;overflow-x:auto}.menu-scroll-btn{z-index:1;background-color:var(--bg-white);color:var(--primary-maroon);cursor:pointer;opacity:0;pointer-events:none;border:1px solid #6a1c1a26;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:clamp(2rem,2.778vw + .5rem,2.5rem);height:clamp(2rem,2.778vw + .5rem,2.5rem);transition:opacity .25s,background-color .2s,color .2s;display:flex;position:relative;box-shadow:0 4px 16px #6a1c1a26}.menu-scroll-btn.visible{opacity:1;pointer-events:auto}.menu-scroll-btn:hover{background-color:var(--primary-maroon);color:var(--bg-white)}.menu-tabs::-webkit-scrollbar{display:none}.menu-tab{color:var(--text-muted);font-weight:600;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.188rem;white-space:nowrap;transition:color var(--transition-normal);opacity:.7;padding:clamp(.75rem,1.042vw + .5rem,1.125rem) 0;font-size:.85rem;position:relative}.menu-tab:hover{opacity:1;color:var(--primary-maroon)}.menu-tab.active{color:var(--primary-maroon);opacity:1}.menu-tab:after{content:"";background-color:var(--primary-maroon);width:0;height:2px;transition:width var(--transition-normal);position:absolute;bottom:0;left:0}.menu-tab.active:after{width:100%}.menu-content{width:100%;min-width:0;max-width:100%}.menu-category-title{color:var(--primary-maroon);letter-spacing:1px;margin-bottom:clamp(2rem,2.778vw + .5rem,3rem);padding:.5rem 0;font-family:Great Vibes,cursive;font-size:3.5rem;font-weight:400}.menu-items-grid{grid-template-columns:1fr;gap:clamp(.75rem,1.042vw + .5rem,1.125rem);max-width:min(100%,clamp(45rem,62.5vw + .5rem,67.5rem));display:grid}@media (width>=768px){.menu-items-grid{grid-template-columns:1fr 1fr;gap:clamp(1rem,1.389vw + .5rem,1.5rem) clamp(4rem,5.556vw + .5rem,6rem)}}.menu-item{border-bottom:1px dotted var(--text-muted);flex-direction:column;gap:.25rem;min-width:0;padding-bottom:.9375rem;display:flex}.menu-item-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem;width:100%;display:grid}.menu-item-name-wrap{flex:1;align-items:flex-start;min-width:0;display:flex}.menu-item-size{color:var(--text-muted);font-size:.8rem;font-family:var(--font-body);margin-left:1.625rem}.veg-icon{border:1px solid #4caf50;justify-content:center;align-items:center;width:.75rem;height:.75rem;margin-right:.75rem;display:inline-flex;position:relative;top:-2px}.veg-icon:after{content:"";background-color:#4caf50;border-radius:50%;width:.375rem;height:.375rem}.menu-item-name{color:var(--text-primary);overflow-wrap:break-word;flex:1;min-width:0;font-size:1.1rem;font-weight:500}.menu-item-price{font-family:var(--font-body);color:var(--text-primary);text-align:right;white-space:nowrap;background-color:var(--bg-white);flex-shrink:0;padding-left:.5rem;font-size:1.1rem;font-weight:600}.offers-section{background-color:var(--bg-cream-dark)}.offers-container{border:var(--border-structural);background-color:var(--bg-white);flex-direction:column;gap:0;display:flex}@media (width>=768px){.offers-container{flex-direction:row}}.offer-card{text-align:center;flex:1;padding:clamp(3rem,4.167vw + .5rem,4.5rem) clamp(2rem,2.778vw + .5rem,3rem);position:relative}.offer-card:first-child{border-bottom:var(--border-structural)}@media (width>=768px){.offer-card:first-child{border-bottom:none;border-right:var(--border-structural)}}.offer-price{color:var(--primary-maroon);font-size:4.5rem;font-family:var(--font-heading);margin:clamp(1.5rem,2.083vw + .5rem,2.25rem) 0;font-weight:600}.offer-price span{color:var(--text-primary);vertical-align:top;margin-right:.313rem;font-size:2rem}.gallery-marquee-container{border:none;width:100%;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.gallery-marquee-track{gap:clamp(1rem,1.5vw,1.5rem);width:max-content;animation:45s linear infinite marquee;display:flex}.gallery-marquee-track:hover{animation-play-state:paused}.gallery-marquee-item{background-color:var(--bg-mocha-dark);border-radius:8px;flex-shrink:0;width:clamp(17.5rem,24.306vw + .5rem,26.25rem);height:clamp(15rem,20.833vw + .5rem,22.5rem);overflow:hidden}.gallery-marquee-item img{object-fit:cover;filter:grayscale(20%)sepia(30%);width:100%;height:100%;transition:filter var(--transition-slow), transform var(--transition-slow);display:block}.gallery-marquee-item img:hover{filter:grayscale(0%)sepia(0%)}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.mobile-dock{background-color:var(--bg-white);border-top:var(--border-structural);z-index:1000;justify-content:space-around;width:100%;padding:clamp(.75rem,1.042vw + .5rem,1.125rem) 0;display:flex;position:fixed;bottom:0;left:0;box-shadow:0 -4px 20px #6a1c1a0d}@media (width>=768px){.mobile-dock{display:none}}.dock-item{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;flex-direction:column;align-items:center;gap:.375rem;font-size:.7rem;display:flex}.dock-item.highlight{color:var(--primary-maroon)}@media (width<=768px){.nav-brand-logo{height:clamp(2.75rem,3.819vw + .5rem,4.125rem)}.menu-tabs-container{gap:.375rem}.menu-scroll-btn{width:2rem;height:2rem}.menu-tab{letter-spacing:.125rem;font-size:.75rem}.menu-category-title{text-align:center;font-size:2.75rem}.menu-item-name,.menu-item-price{font-size:1rem}.hero-section{--navbar-clearance:calc(clamp(2.75rem, 3.819vw + .5rem, 4.125rem) + 2 * clamp(.75rem, 1.042vw + .5rem, 1.125rem) + 1rem)}.hero-content{text-align:center;flex-direction:column;align-items:center;width:100%;max-width:100%;display:flex}.hero-title{overflow-wrap:break-word;max-width:100%;font-size:clamp(2rem,7.2vw,3.2rem);line-height:1.15}.hero-subtitle{overflow-wrap:break-word;border-left:none;width:100%;max-width:100%;margin-bottom:clamp(1.25rem,1.736vw + .5rem,1.875rem);padding-left:0;font-size:.95rem}.hero-buttons{flex-direction:column;justify-content:center;width:100%}.hero-buttons a{text-align:center;justify-content:center;width:100%}}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.testimonials-section{background-color:var(--bg-white)}.testimonials-description{font-family:var(--font-body);color:var(--text-muted);max-width:640px;margin-top:-30px;margin-bottom:50px;font-size:1.1rem;font-weight:400}.testimonials-track{scroll-snap-type:x mandatory;border:var(--border-structural);gap:0;padding-bottom:20px;display:flex;overflow-x:auto}.testimonial-card{border-right:var(--border-structural);scroll-snap-align:start;background-color:#0000;min-width:min(100%,350px);padding:40px}.testimonial-card:last-child{border-right:none}.testimonial-stars{color:var(--accent-gold);letter-spacing:5px;margin-bottom:20px;font-size:1.2rem}.testimonial-quote{font-family:var(--font-heading);color:var(--primary-maroon);margin:0 0 30px;font-size:1.5rem;font-style:italic}.testimonial-author{font-family:var(--font-body);color:var(--text-muted);text-transform:uppercase;letter-spacing:2px;font-size:.85rem;font-weight:500}.testimonials-footnote{color:var(--text-muted);margin-top:1.5rem;font-size:.9rem;line-height:1.6}.testimonials-link{color:var(--primary-maroon);text-underline-offset:3px;text-decoration:underline}.testimonials-link:hover{color:var(--primary-maroon-light)}
