@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-body:"Inter","Inter Fallback"}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Playfair Display Fallback;src:local("Times New Roman");ascent-override:97.25%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:111.26%}.__className_0a80b4{font-family:Playfair Display,Playfair Display Fallback;font-style:normal}.__variable_0a80b4{--font-display:"Playfair Display","Playfair Display Fallback"}:root{--color-primary-h:22;--color-primary-s:85%;--color-primary-l:50%;--color-primary:hsl(var(--color-primary-h),var(--color-primary-s),var(--color-primary-l));--color-primary-light:hsl(var(--color-primary-h),var(--color-primary-s),65%);--color-primary-dark:hsl(var(--color-primary-h),var(--color-primary-s),35%);--color-secondary-h:46;--color-secondary-s:88%;--color-secondary-l:53%;--color-secondary:hsl(var(--color-secondary-h),var(--color-secondary-s),var(--color-secondary-l));--color-accent-h:80;--color-accent-s:80%;--color-accent-l:45%;--color-accent:hsl(var(--color-accent-h),var(--color-accent-s),var(--color-accent-l));--color-brand-brown-h:30;--color-brand-brown-s:70%;--color-brand-brown-l:18%;--color-brand-brown:hsl(var(--color-brand-brown-h),var(--color-brand-brown-s),var(--color-brand-brown-l));--color-bg:hsl(30,20%,98%);--color-bg-secondary:hsl(30,15%,95%);--color-bg-tertiary:hsl(30,10%,90%);--color-surface:hsl(0,0%,100%);--color-surface-elevated:hsl(0,0%,100%);--color-text-primary:var(--color-brand-brown);--color-text-secondary:hsl(20,10%,35%);--color-text-muted:hsl(20,8%,55%);--color-border:hsl(30,10%,88%);--color-border-light:hsl(30,10%,93%);--color-success:hsl(145,60%,42%);--color-warning:hsl(38,90%,50%);--color-error:hsl(0,72%,51%);--color-info:hsl(210,80%,55%);--font-display:"Playfair Display",Georgia,serif;--font-body:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"JetBrains Mono","Fira Code",monospace;--text-xs:clamp(0.7rem,0.65rem + 0.25vw,0.75rem);--text-sm:clamp(0.8rem,0.75rem + 0.25vw,0.875rem);--text-base:clamp(0.9rem,0.85rem + 0.25vw,1rem);--text-lg:clamp(1.05rem,1rem + 0.25vw,1.125rem);--text-xl:clamp(1.15rem,1.05rem + 0.5vw,1.25rem);--text-2xl:clamp(1.4rem,1.2rem + 1vw,1.5rem);--text-3xl:clamp(1.7rem,1.4rem + 1.5vw,1.875rem);--text-4xl:clamp(2rem,1.5rem + 2.5vw,2.25rem);--text-5xl:clamp(2.5rem,1.8rem + 3.5vw,3rem);--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.25rem;--radius-full:9999px;--shadow-sm:0 1px 2px hsla(0,0%,0%,0.05);--shadow-md:0 4px 6px -1px hsla(0,0%,0%,0.07),0 2px 4px -2px hsla(0,0%,0%,0.05);--shadow-lg:0 10px 15px -3px hsla(0,0%,0%,0.08),0 4px 6px -4px hsla(0,0%,0%,0.04);--shadow-xl:0 20px 25px -5px hsla(0,0%,0%,0.1),0 8px 10px -6px hsla(0,0%,0%,0.05);--shadow-glow:0 0 20px hsla(var(--color-primary-h),var(--color-primary-s),var(--color-primary-l),0.25);--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:250ms cubic-bezier(0.4,0,0.2,1);--transition-slow:350ms cubic-bezier(0.4,0,0.2,1);--transition-bounce:500ms cubic-bezier(0.34,1.56,0.64,1);--z-dropdown:100;--z-sticky:200;--z-modal-backdrop:300;--z-modal:400;--z-toast:500;--z-tooltip:600;--header-height:80px;--mobile-nav-height:64px;--sidebar-width:260px;--container-max:1200px;--container-narrow:800px}[data-theme=dark]{--color-bg:hsla(0,0%,12%,1);--color-bg-secondary:hsla(0,0%,15%,1);--color-bg-tertiary:hsla(0,0%,18%,1);--color-surface:hsla(0,0%,14%,1);--color-surface-elevated:hsla(0,0%,16%,1);--color-text-primary:hsl(30,20%,95%);--color-text-secondary:hsl(30,10%,75%);--color-text-muted:hsl(20,8%,55%);--color-border:hsl(20,10%,25%);--color-border-light:hsl(20,10%,20%)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text-primary);background-color:var(--color-bg);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.main-content{padding-top:var(--header-height);min-height:calc(100vh - var(--header-height))}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;background:none}button,input,select,textarea{font:inherit;color:inherit}.w-full{width:100%}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--space-4)}.container-narrow{max-width:var(--container-narrow)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes slideInLeft{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.category-card{transition:transform var(--transition-bounce),box-shadow var(--transition-bounce)}.category-card:hover .category-img{transform:scale(1.05);transition:transform var(--transition-slow)}.menu-card{transition:transform var(--transition-bounce),box-shadow var(--transition-bounce);animation:fadeInVar var(--transition-base)}@keyframes fadeInVar{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.menu-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-sm);font-weight:600;font-size:var(--text-base);transition:all var(--transition-fast);text-align:center;cursor:pointer}.btn:active{transform:scale(.96)}.btn-primary{background-color:var(--color-primary);color:white;box-shadow:var(--shadow-md)}.btn-primary:hover{background-color:var(--color-primary-dark);color:white;transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary{background-color:white;color:var(--color-text-primary);box-shadow:var(--shadow-sm)}.btn-secondary:hover{background-color:var(--color-bg-secondary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-secondary-outline{background:transparent;border:2px solid var(--color-primary);color:var(--color-primary);border-radius:var(--radius-md)}.btn-secondary-outline:hover{background:var(--color-primary);color:white}.btn-sm{padding:.35rem .75rem;font-size:.8125rem}.cart-button:hover .lucide-shopping-bag{animation:bounce .5s ease-in-out}.mobile-bottom-nav{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:hsla(0,0%,100%,.85)}[data-theme=dark] .mobile-bottom-nav{background-color:hsla(0,0%,12%,.85)}h1,h2,h3{letter-spacing:-.02em}.hero-title{text-shadow:0 4px 12px rgba(0,0,0,.3)}