@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:300;font-display:swap;src:url(../media/8019ea673c0f7f03-s.0ezg78l~njug~.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:300;font-display:swap;src:url(../media/ea7ba055a7c7f319-s.0c-odir1ej9fg.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:300;font-display:swap;src:url(../media/6df41cde2a2af212-s.0dfr-yk4~f__i.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:300;font-display:swap;src:url(../media/6c74be07116c0f2f-s.0v8fqrvfat0io.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:300;font-display:swap;src:url(../media/c4392aaa0a01de36-s.0d-0.axt0rekf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:300;font-display:swap;src:url(../media/82d428ed54f45c7b-s.0-5_~kln_tt3_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Roboto Condensed;font-style:italic;font-weight:300;font-display:swap;src:url(../media/e3dc64e5202dfaef-s.p.0odhj95tsb1nd.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:400;font-display:swap;src:url(../media/8019ea673c0f7f03-s.0ezg78l~njug~.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:400;font-display:swap;src:url(../media/ea7ba055a7c7f319-s.0c-odir1ej9fg.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:400;font-display:swap;src:url(../media/6df41cde2a2af212-s.0dfr-yk4~f__i.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:400;font-display:swap;src:url(../media/6c74be07116c0f2f-s.0v8fqrvfat0io.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:400;font-display:swap;src:url(../media/c4392aaa0a01de36-s.0d-0.axt0rekf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:400;font-display:swap;src:url(../media/82d428ed54f45c7b-s.0-5_~kln_tt3_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Roboto Condensed;font-style:italic;font-weight:400;font-display:swap;src:url(../media/e3dc64e5202dfaef-s.p.0odhj95tsb1nd.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:700;font-display:swap;src:url(../media/8019ea673c0f7f03-s.0ezg78l~njug~.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:700;font-display:swap;src:url(../media/ea7ba055a7c7f319-s.0c-odir1ej9fg.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:700;font-display:swap;src:url(../media/6df41cde2a2af212-s.0dfr-yk4~f__i.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:700;font-display:swap;src:url(../media/6c74be07116c0f2f-s.0v8fqrvfat0io.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:700;font-display:swap;src:url(../media/c4392aaa0a01de36-s.0d-0.axt0rekf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto Condensed;font-style:italic;font-weight:700;font-display:swap;src:url(../media/82d428ed54f45c7b-s.0-5_~kln_tt3_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Roboto Condensed;font-style:italic;font-weight:700;font-display:swap;src:url(../media/e3dc64e5202dfaef-s.p.0odhj95tsb1nd.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:300;font-display:swap;src:url(../media/9c282a6db290773d-s.12aru~tnao-l3.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:300;font-display:swap;src:url(../media/537f068cf010a382-s.0yaejf~~fqghh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:300;font-display:swap;src:url(../media/c300beac511639d2-s.0utl6m0teb.k-.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:300;font-display:swap;src:url(../media/a01ece5cbe79cced-s.0g23aeesqt~zo.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:300;font-display:swap;src:url(../media/825d4e07c4597d86-s.05l7hn0r~4rr9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:300;font-display:swap;src:url(../media/65645b6ef686c6a1-s.0uqkhmfuijbtt.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Roboto Condensed;font-style:normal;font-weight:300;font-display:swap;src:url(../media/ef1484efef1c9752-s.p.09utjot42e~ja.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9c282a6db290773d-s.12aru~tnao-l3.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:400;font-display:swap;src:url(../media/537f068cf010a382-s.0yaejf~~fqghh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:400;font-display:swap;src:url(../media/c300beac511639d2-s.0utl6m0teb.k-.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a01ece5cbe79cced-s.0g23aeesqt~zo.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:400;font-display:swap;src:url(../media/825d4e07c4597d86-s.05l7hn0r~4rr9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:400;font-display:swap;src:url(../media/65645b6ef686c6a1-s.0uqkhmfuijbtt.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Roboto Condensed;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ef1484efef1c9752-s.p.09utjot42e~ja.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9c282a6db290773d-s.12aru~tnao-l3.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(../media/537f068cf010a382-s.0yaejf~~fqghh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(../media/c300beac511639d2-s.0utl6m0teb.k-.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(../media/a01ece5cbe79cced-s.0g23aeesqt~zo.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(../media/825d4e07c4597d86-s.05l7hn0r~4rr9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(../media/65645b6ef686c6a1-s.0uqkhmfuijbtt.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Roboto Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(../media/ef1484efef1c9752-s.p.09utjot42e~ja.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto Condensed Fallback;src:local(Arial);ascent-override:104.44%;descent-override:27.48%;line-gap-override:0.0%;size-adjust:88.83%}.roboto_condensed_54ff9f7b-module__B2C5ua__className{font-family:Roboto Condensed,Roboto Condensed Fallback}.roboto_condensed_54ff9f7b-module__B2C5ua__variable{--font-roboto-condensed:"Roboto Condensed", "Roboto Condensed Fallback"}
*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--primary:#163d82;--primary-light:#1e4fa6;--primary-dark:#0f2d5e;--accent:#e8a838;--bg:#fff;--bg-warm:#fafafa;--bg-card:#fff;--text:#1a1a1a;--text-secondary:#5a5a5a;--text-muted:#8a8a8a;--border:#e2e2e2;--border-light:#f0f0f0;--success:#2d8a4e;--error:#c43030;--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 4px 16px #00000014;--shadow-lg:0 8px 32px #0000001a;--radius-sm:6px;--radius-md:12px;--radius-lg:18px;--font:var(--font-roboto-condensed), "Arial Narrow", sans-serif;--transition:.18s ease}@keyframes riseFadeIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes softScaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes badgeBounce{0%{transform:scale(1)}28%{transform:scale(1.22)translateY(-2px)}55%{transform:scale(.95)}to{transform:scale(1)}}@keyframes qtyControlsEnter{0%{opacity:0;transform:translate(10px)scale(.96)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes cartItemSlideIn{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes confirmationHalo{0%{opacity:0;transform:scale(.65)}45%{opacity:.45}to{opacity:0;transform:scale(1.4)}}@keyframes confirmationBadgeIn{0%{opacity:0;transform:translateY(18px)scale(.8)}65%{opacity:1;transform:translateY(-4px)scale(1.05)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes checkmarkDraw{0%{stroke-dashoffset:26px}to{stroke-dashoffset:0}}@keyframes confettiBurst{0%{opacity:0;transform:translate3d(0, -18px, 0) rotate(var(--confetti-rotate))}12%{opacity:1}to{opacity:0;transform:translate3d(calc((50% - var(--confetti-left)) * .35), 180px, 0) rotate(calc(var(--confetti-rotate) * 2.3))}}@keyframes pageContentOut{0%{opacity:1;filter:blur();transform:translateY(0)scale(1)}to{opacity:0;filter:blur(4px);transform:translateY(-18px)scale(.985)}}@keyframes pageContentIn{0%{opacity:0;filter:blur(4px);transform:translateY(18px)scale(.99)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-gutter:stable;font-size:17px;overflow-y:scroll}body{font-family:var(--font);color:var(--text);background:var(--bg);isolation:isolate;min-height:100vh;font-weight:400;line-height:1.55;position:relative}body:before{content:"";opacity:.05;pointer-events:none;z-index:-1;background-image:url(/backgrounds/sushi-rolls-tile.webp);background-repeat:repeat;background-size:520px;position:fixed;inset:0}.page-shell{will-change:opacity, transform, filter}.page-shell--leaving{animation:.26s cubic-bezier(.22,1,.36,1) forwards pageContentOut}.page-shell--entering{animation:.32s cubic-bezier(.22,1,.36,1) both pageContentIn}.page-transition-loader{pointer-events:none;opacity:0;z-index:350;justify-content:center;align-items:center;transition:opacity .18s;display:flex;position:fixed;inset:0}.page-transition-loader--visible{opacity:1}.page-transition-loader-bubble{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;border-radius:50%;justify-content:center;align-items:center;width:68px;height:68px;display:flex;box-shadow:0 18px 40px #163d8224}.page-transition-loader-spinner{margin:0}h1,h2,h3,h4{text-transform:uppercase;letter-spacing:.04em;color:var(--primary);font-weight:700;line-height:1.2}h1{font-size:1.65rem}h2{font-size:1.3rem}h3{font-size:1.1rem}p{color:var(--text-secondary)}a{color:var(--primary);transition:color var(--transition);text-decoration:none}a:hover{color:var(--primary-light)}.page-container{max-width:1200px;margin:0 auto;padding:0 20px}.page-header{border-bottom:1px solid var(--border-light);z-index:100;background-color:#163d82;background-image:linear-gradient(#ffffff14,#ffffff14),url(/branding/navbar-pattern.webp);background-position:50%,top;background-repeat:no-repeat,repeat-x;background-size:100% 100%,auto 100%;position:sticky;top:0}.header-inner{align-items:center;gap:16px;max-width:1200px;margin:0 auto;padding:14px 20px;display:flex}.header-inner a{justify-self:center;align-items:center;gap:12px;padding:8px 14px;display:inline-flex}.header-logo{flex-shrink:0;width:120px;height:auto}.header-title-art{flex-shrink:1;width:auto;max-width:min(220px,42vw);height:66px;display:block}main,.page-footer{z-index:1;position:relative}.page-footer{border-top:1px solid var(--border-light);text-align:center;margin-top:80px;padding:32px 20px}.footer-inner{flex-wrap:wrap;justify-content:center;align-items:center;gap:24px;max-width:1200px;margin:0 auto;display:flex}.footer-link{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;transition:color var(--transition);align-items:center;font-size:.82rem;line-height:1;display:inline-flex}.footer-link:hover{color:var(--primary)}.footer-link--btn{cursor:pointer;appearance:none;background:0 0;border:none;padding:0;font-family:inherit}.restaurant-list-heading{margin:40px 0 8px;animation:.56s cubic-bezier(.22,1,.36,1) both riseFadeIn}.restaurant-list-subtitle{color:var(--text-muted);margin-bottom:28px;font-size:.92rem;animation:.56s cubic-bezier(.22,1,.36,1) 80ms both riseFadeIn}.location-consent-banner{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffd1;border:1px solid #163d821f;flex-direction:column;gap:14px;margin-bottom:28px;padding:18px 20px;animation:.56s cubic-bezier(.22,1,.36,1) .12s both riseFadeIn;display:flex}.location-consent-main{justify-content:space-between;align-items:center;gap:18px;display:flex}.location-consent-text{color:var(--text-secondary);flex:1;margin:0;font-size:.9rem}.location-consent-button{flex-shrink:0;justify-content:center;align-items:center;gap:10px;display:inline-flex}.location-consent-button-icon{flex-shrink:0}.location-consent-button-spinner{width:18px;height:18px}.location-consent-note{color:var(--error);margin:0;font-size:.8rem}.restaurant-grid{gap:16px;display:grid}.restaurant-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color var(--transition), box-shadow var(--transition), transform .12s ease;cursor:pointer;color:inherit;opacity:0;align-items:flex-start;gap:16px;padding:20px;text-decoration:none;animation:.56s cubic-bezier(.22,1,.36,1) both riseFadeIn;display:flex;position:relative;overflow:hidden}.restaurant-grid>:first-child{animation-delay:60ms}.restaurant-grid>:nth-child(2){animation-delay:.12s}.restaurant-grid>:nth-child(3){animation-delay:.18s}.restaurant-grid>:nth-child(4){animation-delay:.24s}.restaurant-grid>:nth-child(5){animation-delay:.3s}.restaurant-grid>:nth-child(6){animation-delay:.36s}.restaurant-card:hover{border-color:var(--primary);box-shadow:var(--shadow-md);color:inherit;transform:translateY(-1px)}.restaurant-card--pending{border-color:#163d8257;box-shadow:0 14px 30px #163d821f}.restaurant-card--closed{opacity:.5}.restaurant-card--closed:hover{border-color:var(--border);box-shadow:var(--shadow-sm);transform:none}.restaurant-card-body{flex:1;min-width:0}.restaurant-card-name{color:var(--text);text-transform:uppercase;letter-spacing:.03em;font-size:1.05rem;font-weight:700}.restaurant-card-address{color:var(--text-muted);margin-top:3px;font-size:.85rem}.restaurant-card-meta{flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;display:flex}.restaurant-status{text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:5px;font-size:.8rem;font-weight:700;display:inline-flex}.restaurant-status--open{color:var(--success)}.restaurant-status--closing-soon{color:var(--accent)}.restaurant-status--closed{color:var(--text-muted)}.restaurant-status--opening-soon{color:var(--primary)}.status-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.status-dot--open{background:var(--success)}.status-dot--closing-soon{background:var(--accent);animation:2s infinite pulse}.status-dot--closed{background:var(--text-muted)}.status-dot--opening-soon{background:var(--primary);animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.restaurant-distance{color:var(--text-muted);font-size:.8rem}.restaurant-card-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.maps-link{background:var(--bg-warm);width:36px;height:36px;color:var(--primary);cursor:pointer;transition:background var(--transition);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.maps-link:hover{background:var(--primary);color:#fff}.section-divider{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin:32px 0 20px;font-size:.75rem;font-weight:700;animation:.52s cubic-bezier(.22,1,.36,1) both riseFadeIn}.menu-layout{align-items:flex-start;gap:32px;display:flex}.menu-main{flex:1;min-width:0}.menu-heading{margin:32px 0 4px;animation:.56s cubic-bezier(.22,1,.36,1) both riseFadeIn}.menu-subtext{color:var(--text-muted);margin-bottom:28px;font-size:.88rem;animation:.56s cubic-bezier(.22,1,.36,1) 80ms both riseFadeIn}.restaurant-banner{border-radius:var(--radius-md);text-transform:uppercase;letter-spacing:.04em;margin-bottom:20px;padding:12px 20px;font-size:.88rem;font-weight:700;animation:.52s cubic-bezier(.22,1,.36,1) .14s both riseFadeIn}.restaurant-banner--closed{color:var(--error);background:#fef2f2;border:1px solid #fecaca}.restaurant-banner--closing-soon{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.restaurant-banner--opening-soon{color:var(--primary);background:#eff6ff;border:1px solid #bfdbfe}.restaurant-info{color:var(--text-secondary);margin-bottom:24px;animation:.52s cubic-bezier(.22,1,.36,1) .18s both riseFadeIn}.restaurant-info-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.restaurant-info-name{color:var(--text);font-weight:700}.restaurant-info-address{color:var(--text-secondary)}.restaurant-info-link{font-size:.82rem}.restaurant-info-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.info-link{background:var(--bg-warm);width:36px;height:36px;color:var(--primary);cursor:pointer;transition:background var(--transition);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.info-link:hover{background:var(--primary);color:#fff}.info-overlay-backdrop{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;animation:.12s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.info-overlay{background:var(--bg-card);border-radius:var(--radius-lg);width:100%;max-width:480px;max-height:90vh;box-shadow:var(--shadow-lg);padding:28px;animation:.15s slideUp;position:relative;overflow-y:auto}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.info-overlay-close{background:var(--bg-warm);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;transition:background var(--transition);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:16px;right:16px}.info-overlay-close:hover{background:var(--border)}.info-overlay-title{color:var(--primary);margin-bottom:6px;padding-right:40px;font-size:1.2rem}.info-overlay-address{color:var(--text-secondary);white-space:pre-line;margin-bottom:20px;font-size:.88rem}.info-overlay:has(.info-overlay-phone) .info-overlay-address{margin-bottom:4px}.info-overlay-phone{color:var(--text-secondary);margin-bottom:20px;font-size:.88rem}.info-overlay-phone a{color:var(--primary)}.info-overlay-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:10px;font-size:.75rem;font-weight:700}.info-overlay-hours{border-collapse:collapse;width:100%;margin-bottom:20px;font-size:.9rem}.info-overlay-hours-day{width:36px;color:var(--text);white-space:nowrap;padding:3px 16px 3px 0;font-weight:700}.info-overlay-hours-times{color:var(--text-secondary);padding:3px 0}.info-overlay-closed{color:var(--error,#c0392b);font-weight:600}.info-overlay-extra{color:var(--text-secondary);border-top:1px solid var(--border-light);padding-top:16px;font-size:.88rem;line-height:1.65}.info-overlay-extra a{color:var(--primary);text-underline-offset:2px;text-decoration:underline}.info-overlay-extra a:hover{color:var(--primary-light)}.menu-grid{gap:14px;display:grid}.menu-item{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);transition:border-color var(--transition), transform .22s ease, box-shadow .22s ease;gap:14px;padding:16px;display:flex}.menu-item:hover{border-color:var(--primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.menu-item--unavailable{opacity:.45;pointer-events:none}.menu-item-image{border-radius:var(--radius-sm);object-fit:cover;background:var(--bg-warm);flex-shrink:0;width:125px;height:125px}.menu-item-image-btn{cursor:zoom-in;background:0 0;border:none;padding:0;line-height:0}.menu-item-image--placeholder{color:var(--text-muted);justify-content:center;align-items:center;font-size:.7rem;display:flex}.menu-item-body{flex-direction:column;flex:1;min-width:0;display:flex}.menu-item-name{text-transform:uppercase;letter-spacing:.02em;color:var(--text);font-size:.95rem;font-weight:700}.menu-item-subtitle{color:var(--text-secondary);margin-top:1px;font-size:.82rem}.menu-item-allergens{color:var(--text-muted);letter-spacing:.08em;margin-top:4px;font-size:.72rem}.menu-item-unavailable-text{color:var(--error);margin-top:4px;font-size:.78rem;font-style:italic}.menu-item-footer{justify-content:space-between;align-items:flex-end;margin-top:auto;padding-top:8px;display:flex}.menu-item-price{color:var(--text);font-size:1rem;font-weight:700}.menu-item-tax{color:var(--text-muted);font-size:.68rem;font-weight:400;display:block}.qty-controls{align-items:center;gap:0;display:flex}.qty-controls--enter{animation:.32s cubic-bezier(.22,1,.36,1) qtyControlsEnter}.qty-btn{border:2px solid var(--primary);width:34px;height:34px;color:var(--primary);cursor:pointer;transition:background var(--transition), color var(--transition);background:0 0;justify-content:center;align-items:center;font-size:1.1rem;font-weight:700;line-height:1;display:flex}.qty-btn:active{transform:scale(.92)}.qty-btn:hover{background:var(--primary);color:#fff}.qty-btn:disabled{opacity:.45;cursor:not-allowed}.qty-btn:disabled:hover{color:var(--primary);background:0 0}.qty-btn--minus{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.qty-btn--plus{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.qty-btn--add{border-radius:var(--radius-sm);background:var(--primary);color:#fff;border:none;width:38px;height:38px;font-size:1.3rem}.qty-btn--add:hover{background:var(--primary-light)}.qty-btn--add:disabled,.qty-btn--add:disabled:hover{background:var(--primary);color:#fff}.qty-value{border-top:2px solid var(--primary);border-bottom:2px solid var(--primary);width:36px;height:34px;color:var(--primary);justify-content:center;align-items:center;font-size:.92rem;font-weight:700;display:flex}.cart-sidebar{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);width:360px;max-height:calc(100vh - 100px);box-shadow:var(--shadow-sm);flex-shrink:0;padding:24px;transition:border-color .22s,box-shadow .22s;position:sticky;top:80px;overflow-y:auto}.cart-sidebar--pulse{border-color:#163d8257;box-shadow:0 0 0 1px #163d8214,0 16px 30px #163d8224}.cart-title{margin-bottom:16px;font-size:1rem}.cart-empty{color:var(--text-muted);text-align:center;padding:32px 0;font-size:.88rem}.cart-items{flex-direction:column;gap:12px;display:flex}.cart-content{transition:opacity .18s,filter .18s}.cart-items--pulse .cart-item:last-child{animation:.36s cubic-bezier(.22,1,.36,1) cartItemSlideIn}.cart-item{justify-content:space-between;align-items:center;gap:10px;display:flex}.cart-item-info{flex:1;min-width:0}.cart-item-name{text-transform:uppercase;letter-spacing:.02em;font-size:.88rem;font-weight:700}.cart-item-price{color:var(--text-secondary);font-size:.82rem}.cart-divider{border:none;border-top:1px solid var(--border-light);margin:16px 0}.cart-total-row{text-transform:uppercase;letter-spacing:.04em;justify-content:space-between;align-items:center;font-size:1.05rem;font-weight:700;display:flex}.cart-total-row--pulse{animation:.36s cubic-bezier(.22,1,.36,1) riseFadeIn}.cart-bottom-bar{z-index:200;pointer-events:none;padding:0 16px 16px;animation:.42s cubic-bezier(.22,1,.36,1) both riseFadeIn;position:fixed;bottom:0;left:0;right:0}.cart-bottom-btn{pointer-events:auto;background:var(--primary);color:#fff;border-radius:var(--radius-md);width:100%;font-family:var(--font);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;box-shadow:var(--shadow-lg);transition:background var(--transition), transform .1s ease, box-shadow .22s ease;border:none;justify-content:space-between;align-items:center;padding:16px 22px;font-size:.95rem;font-weight:700;display:flex}.cart-bottom-btn:hover{background:var(--primary-light)}.cart-bottom-btn:active{transform:scale(.98)}.cart-bottom-btn--pulse{transform:translateY(-3px);box-shadow:0 18px 34px #163d8238}.cart-bottom-badge{background:#fff3;border-radius:20px;padding:3px 10px;font-size:.85rem}.cart-bottom-badge--pulse{animation:.56s cubic-bezier(.22,1,.36,1) badgeBounce}.cart-overlay{z-index:300;background:#0006;align-items:flex-end;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.cart-sheet{background:var(--bg);border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-height:85vh;padding:24px 20px 32px;animation:.25s cubic-bezier(.16,1,.3,1) slideUp;overflow-y:auto}.cart-sheet-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.cart-sheet-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:4px;font-size:1.5rem}.btn{border-radius:var(--radius-sm);font-family:var(--font);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;transition:background var(--transition), transform .1s ease;appearance:none;box-sizing:border-box;border:none;justify-content:center;align-items:center;padding:14px 28px;font-size:.92rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.98)}.btn--primary{background:var(--primary);color:#fff;border:2px solid #0000}.btn--primary:hover{background:var(--primary-light);color:#fff}.btn--primary:disabled{background:var(--text-muted);cursor:not-allowed}.btn--outline{border:2px solid var(--primary);color:var(--primary);background:0 0}.btn--outline:hover{background:var(--primary);color:#fff}.btn--full{width:100%;display:flex}.btn--danger{background:var(--error);color:#fff}.btn--danger:hover{color:#fff;background:#a52828}.btn--secondary{background:var(--bg-warm);color:var(--text);border:1px solid var(--border)}.btn--secondary:hover{background:var(--border-light)}.checkout-container{max-width:640px;margin:0 auto;padding-bottom:40px}.checkout-container--leaving{animation:.26s cubic-bezier(.22,1,.36,1) forwards pageContentOut}.checkout-container--entering{animation:.32s cubic-bezier(.22,1,.36,1) both pageContentIn}.checkout-loading{animation:.22s both riseFadeIn}.checkout-submitting{flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:260px;display:flex}.checkout-submitting-spinner{border:3px solid var(--border-light);border-top-color:var(--primary);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.checkout-submitting-label{color:var(--text-secondary);margin:0;font-size:.95rem}.checkout-heading{margin:32px 0 24px;animation:.56s cubic-bezier(.22,1,.36,1) both riseFadeIn}.checkout-section{margin-bottom:28px;animation:.52s cubic-bezier(.22,1,.36,1) both riseFadeIn}.checkout-section:first-of-type{animation-delay:80ms}.checkout-section:nth-of-type(2){animation-delay:.14s}.checkout-section:nth-of-type(3){animation-delay:.2s}.checkout-section:nth-of-type(4){animation-delay:.26s}.checkout-section-title{margin-bottom:12px;font-size:.85rem}.checkout-summary{background:var(--bg-warm);border-radius:var(--radius-md);padding:18px}.checkout-summary-item{justify-content:space-between;padding:6px 0;font-size:.9rem;display:flex}.checkout-summary-item--total{border-top:1px solid var(--border);margin-top:8px;padding-top:12px;font-size:1rem;font-weight:700}.checkout-summary-tax{color:var(--text-muted);text-align:right;margin-top:4px;font-size:.78rem}.form-group{margin-bottom:16px}.form-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);margin-bottom:6px;font-size:.8rem;font-weight:700;display:block}.form-input{border:1.5px solid var(--border);border-radius:var(--radius-sm);width:100%;font-family:var(--font);color:var(--text);background:var(--bg);transition:border-color var(--transition);outline:none;padding:12px 14px;font-size:.95rem}.form-input:focus{border-color:var(--primary)}.form-input--error{border-color:var(--error)}.form-error{color:var(--error);margin-top:4px;font-size:.78rem}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-select{border:1.5px solid var(--border);border-radius:var(--radius-sm);width:100%;font-family:var(--font);color:var(--text);background:var(--bg);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M6 8L1 3h10z' fill='%235a5a5a'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;outline:none;padding:12px 36px 12px 14px;font-size:.95rem}.form-select:focus{border-color:var(--primary)}.payment-overlay{z-index:400;background:#00000080;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.payment-modal{background:var(--bg);border-radius:var(--radius-lg);text-align:center;width:calc(100% - 40px);max-width:400px;box-shadow:var(--shadow-lg);padding:40px 36px;animation:.26s cubic-bezier(.16,1,.3,1) softScaleIn}.payment-modal--alert{max-width:520px}.payment-modal-icon{width:64px;height:64px;margin-bottom:18px}.payment-title{text-transform:uppercase;letter-spacing:.04em;color:var(--primary);font-size:1.3rem;font-weight:700}.payment-message{color:var(--text-secondary);margin:14px 0 0;font-size:.95rem}.payment-contact-card{border-radius:var(--radius-md);background:var(--bg-warm);border:1px solid var(--border);text-align:left;margin-top:22px;padding:16px 18px}.payment-contact-name{color:var(--text);margin-bottom:10px;font-size:1rem;font-weight:700}.payment-contact-row{color:var(--text-secondary);margin:6px 0;font-size:.9rem}.payment-amount{color:var(--primary);margin:16px 0;font-size:2rem;font-weight:700}.payment-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:.88rem}.payment-actions{gap:12px;margin-top:28px;display:flex}.payment-actions .btn{flex:1}.confirmation-container{text-align:center;max-width:560px;margin:0 auto;padding:60px 20px;position:relative;overflow:hidden}.confirmation-container--success,.confirmation-container--error{animation:.62s cubic-bezier(.22,1,.36,1) both softScaleIn}.confirmation-confetti{pointer-events:none;position:absolute;inset:0;overflow:hidden}.confirmation-confetti-piece{top:20px;left:var(--confetti-left);background:var(--confetti-color);opacity:0;width:10px;height:18px;transform:translate3d(0, -18px, 0) rotate(var(--confetti-rotate));animation:confettiBurst var(--confetti-duration) cubic-bezier(.16, 1, .3, 1) var(--confetti-delay) forwards;border-radius:999px;position:absolute}.confirmation-confetti-piece:nth-child(3n){width:8px;height:14px}.confirmation-confetti-piece:nth-child(4n){width:6px;height:16px}.confirmation-icon{background:var(--success);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin:0 auto 24px;font-size:2rem;animation:.72s cubic-bezier(.22,1,.36,1) .16s both confirmationBadgeIn;display:flex;position:relative;box-shadow:0 14px 32px #2d8a4e3d}.confirmation-icon:after{content:"";background:radial-gradient(circle,#2d8a4e47 0%,#2d8a4e00 70%);border-radius:50%;animation:1.1s ease-out .42s both confirmationHalo;position:absolute;inset:-14px}.confirmation-icon--error{background:linear-gradient(#d94848 0%,#b42323 100%);box-shadow:0 14px 32px #c4303047}.confirmation-icon--error:after{background:radial-gradient(circle,#c4303047 0%,#c4303000 70%)}.confirmation-checkmark{z-index:1;position:relative}.confirmation-checkmark-path{stroke-dasharray:26;stroke-dashoffset:26px;animation:.54s cubic-bezier(.2,.9,.25,1) .54s forwards checkmarkDraw}.confirmation-heading{margin-bottom:8px;animation:.56s cubic-bezier(.22,1,.36,1) .32s both riseFadeIn}.confirmation-order-number{color:var(--primary);letter-spacing:.05em;margin:20px 0 8px;font-size:1.8rem;font-weight:700;animation:.56s cubic-bezier(.22,1,.36,1) .46s both riseFadeIn}.confirmation-detail{color:var(--text-secondary);margin:6px 0;font-size:.92rem;animation:.56s cubic-bezier(.22,1,.36,1) .4s both riseFadeIn}.confirmation-detail--phone{border-radius:var(--radius-md);background:#fff4f4;border:1px solid #f5c2c2;margin-top:18px;padding:16px 18px}.confirmation-detail--order-number{border-radius:var(--radius-md);color:var(--primary);background:#f8f4ff;border:1px solid #ddd0ff;margin-top:18px;padding:14px 18px;font-size:1rem}.confirmation-detail--emphasis{color:var(--text);margin-top:4px}.confirmation-detail--phone a{font-size:1.1rem;font-weight:700}.confirmation-note{background:var(--bg-warm);border-radius:var(--radius-md);color:var(--text-secondary);margin-top:28px;padding:16px;font-size:.88rem;animation:.56s cubic-bezier(.22,1,.36,1) .56s both riseFadeIn}.confirmation-actions{margin-top:32px;animation:.56s cubic-bezier(.22,1,.36,1) .68s both riseFadeIn}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton{background:linear-gradient(90deg, var(--border-light) 25%, var(--bg-warm) 50%, var(--border-light) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.4s infinite shimmer}.skeleton--text{width:75%;height:18px;margin-bottom:8px}.skeleton--wide{width:100%}.skeleton--heading{width:40%;height:28px;margin-bottom:24px}.skeleton--label{width:35%;height:14px;margin-bottom:12px}.skeleton--input{width:100%;height:46px;margin-bottom:12px}.skeleton--btn{width:100%;height:50px;margin-top:8px}.skeleton--row{gap:12px;margin-bottom:12px;display:flex}.loading-spinner{border:2.5px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.6s linear infinite spin;display:inline-block}.loading-spinner--dark{border-color:#0000001a;border-top-color:var(--primary);width:28px;height:28px;margin:40px auto}.restaurant-route-loading{animation:.22s both riseFadeIn}.restaurant-route-loading-banner{border-radius:var(--radius-md);width:100%;height:52px;margin-bottom:20px}.restaurant-route-loading-meta{width:58%;height:22px;margin-bottom:24px}.restaurant-route-loading-grid{gap:14px;display:grid}.restaurant-route-loading-card{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-card);gap:14px;padding:16px;display:flex}.restaurant-route-loading-image{border-radius:var(--radius-sm);flex-shrink:0;width:125px;height:125px}.restaurant-route-loading-content{flex:1;min-width:0}.restaurant-route-loading-footer{justify-content:space-between;align-items:center;margin-top:18px;display:flex}.restaurant-route-loading-add{border-radius:var(--radius-sm);width:38px;height:38px}.restaurant-route-loading-cart{animation:none}.lightbox-overlay{z-index:500;cursor:zoom-out;background:#000000b3;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.lightbox-close{color:#fff;cursor:pointer;width:40px;height:40px;transition:background var(--transition);background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;line-height:1;display:flex;position:absolute;top:16px;right:16px}.lightbox-close:hover{background:#000000b3}.lightbox-img{border-radius:var(--radius-md);max-width:min(90vw,600px);max-height:80vh;box-shadow:var(--shadow-lg);object-fit:contain}@media (max-width:768px){.location-consent-banner{align-items:stretch}.location-consent-main{flex-direction:column;align-items:stretch}.location-consent-button{width:100%}.menu-layout{flex-direction:column;align-items:stretch}.header-title-art{max-width:min(168px,42vw);height:46px}.cart-sidebar{display:none}.menu-item-image{width:100px;height:100px}.form-row{grid-template-columns:1fr}h1{font-size:1.35rem}.restaurant-card{padding:16px}}@media (prefers-reduced-motion:reduce){.restaurant-list-heading,.restaurant-list-subtitle,.page-shell--leaving,.page-shell--entering,.section-divider,.restaurant-card,.menu-heading,.menu-subtext,.restaurant-banner,.restaurant-info,.menu-item,.cart-sidebar,.cart-items--pulse .cart-item:last-child,.cart-total-row--pulse,.cart-bottom-bar,.cart-bottom-badge--pulse,.checkout-heading,.checkout-section,.payment-modal,.confirmation-container--success,.confirmation-container--error,.confirmation-icon,.confirmation-icon:after,.confirmation-heading,.confirmation-order-number,.confirmation-detail,.confirmation-note,.confirmation-actions,.confirmation-confetti-piece,.confirmation-checkmark-path{filter:none!important;animation:none!important;transform:none!important}.menu-item,.cart-sidebar,.cart-sidebar--pulse,.cart-bottom-btn,.cart-bottom-btn--pulse{transition:none!important}}@media (min-width:769px){.cart-bottom-bar{display:none}.restaurant-grid{grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}}@media (min-width:1024px){.page-container{padding:0 32px}}
