:root{--primary:#b3121d;--primary-dark:#86090f;--primary-deep:#5b060a;--primary-glow:#b3121d61;--secondary:#d9a441;--gold:#d9a441;--gold-light:#f2d391;--gold-pale:#f8e9c6;--gold-dark:#a8781f;--ink:#1c110d;--ink-soft:#2b1a14;--ink-line:#d9a44138;--pine:#1f5138;--pine-dark:#123524;--pine-light:#35745a;--cranberry:#7c1230;--harvest:#c1741b;--spice:#8a4b12;--dark:var(--ink);--light:#fffaf1;--white:#fffaf1;--surface:#fffaf1;--surface-2:#fdf2e0;--paper:#f6e9d2;--snow:#f4f8fb;--gray:#f6ead6;--gray-light:#e6d5bb;--gray-medium:#6b5748;--gray-dark:#38271e;--text:#241a14;--text-muted:#6b5748;--text-soft:#93795f;--border-gold:#d9a44173;--font-main:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-heading:"Noto Serif SC", "Songti SC", "Georgia", serif;--font-display:"Noto Serif SC", "Songti SC", "Georgia", serif;--font-script:"Ma Shan Zheng", "Noto Serif SC", cursive;--shadow:0 10px 26px -14px #3b140a52;--shadow-lg:0 26px 54px -22px #3b140a6b;--shadow-gold:0 14px 34px -16px #a8781f80;--radius:14px;--radius-sm:10px;--radius-lg:24px;--transition:all .3s ease;--pattern-fret:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='16' viewBox='0 0 32 16'%3E%3Cpath d='M0 14h4V4h8v6H8v2h6V2h8v6h-2v4h6' fill='none' stroke='%23d9a441' stroke-width='1.6'/%3E%3C/svg%3E");--pattern-cloud:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='60' viewBox='0 0 120 60'%3E%3Cg fill='none' stroke='%23b3121d' stroke-width='1.4' opacity='.5'%3E%3Cpath d='M10 40c0-11 9-20 20-20s20 9 20 20'/%3E%3Cpath d='M22 40c0-5 4-9 8-9s8 4 8 9'/%3E%3Cpath d='M70 40c0-11 9-20 20-20s20 9 20 20'/%3E%3Cpath d='M82 40c0-5 4-9 8-9s8 4 8 9'/%3E%3C/g%3E%3C/svg%3E");--pattern-lattice:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg fill='none' stroke='%23d9a441' stroke-width='1' opacity='.32'%3E%3Cpath d='M20 0l20 20-20 20L0 20z'/%3E%3Cpath d='M20 8l12 12-12 12L8 20z'/%3E%3C/g%3E%3C/svg%3E")}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-main);color:var(--text);background-color:var(--surface);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 12% 0,#b3121d0f,#0000 42%),radial-gradient(circle at 88% 8%,#d9a44117,#0000 40%),linear-gradient(#fffaf1 0%,#fdf4e6 100%);background-attachment:fixed;line-height:1.65}h1,h2,h3,h4{font-family:var(--font-heading);letter-spacing:-.01em}a{color:inherit;text-decoration:none}ul{list-style:none}img{max-width:100%;display:block}::selection{background:var(--primary);color:var(--gold-pale)}.container{max-width:1200px;margin:0 auto;padding:0 24px}.section{padding:88px 0;position:relative}.section-title{font-family:var(--font-heading);text-align:center;color:var(--ink);letter-spacing:-.5px;margin-bottom:16px;font-size:2.6rem;font-weight:800;line-height:1.2}.section-subtitle{text-align:center;color:var(--text-muted);max-width:640px;margin-bottom:48px;margin-left:auto;margin-right:auto;font-size:1.08rem}.section-dark .section-title,.section-ink .section-title{color:var(--gold-pale)}.section-dark .section-subtitle,.section-ink .section-subtitle{color:#f8e9c6b8}.zh{font-family:var(--font-script);color:var(--gold);letter-spacing:.04em;font-weight:400}.eyebrow,.menu-eyebrow{text-align:center;color:var(--gold-dark);text-transform:uppercase;letter-spacing:3px;justify-content:center;align-items:center;gap:12px;margin-bottom:14px;font-size:.82rem;font-weight:700;display:flex}.eyebrow:before,.menu-eyebrow:before,.eyebrow:after,.menu-eyebrow:after{content:"";background:linear-gradient(90deg, transparent, var(--gold));width:34px;height:1px}.eyebrow:after,.menu-eyebrow:after{background:linear-gradient(90deg, var(--gold), transparent)}.gold-rule{color:var(--gold);justify-content:center;align-items:center;gap:10px;margin:22px auto;display:flex}.gold-rule:before,.gold-rule:after{content:"";background:linear-gradient(90deg, transparent, var(--gold));width:min(150px,26vw);height:1px}.gold-rule:after{background:linear-gradient(270deg, transparent, var(--gold))}.gold-rule i{border:1px solid var(--gold);width:9px;height:9px;display:block;transform:rotate(45deg)}.seal{background:linear-gradient(150deg, var(--primary), var(--primary-deep));width:56px;height:56px;color:var(--gold-pale);font-family:var(--font-script);box-shadow:inset 0 0 0 2px #f8e9c68c, var(--shadow);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.9rem;line-height:1;display:inline-flex}.seal-sm{border-radius:8px;width:42px;height:42px;font-size:1.4rem}.section-ink{background-color:var(--ink);background-image:var(--pattern-lattice), linear-gradient(160deg, #24150f 0%, var(--ink) 55%, #160c09 100%);color:var(--gold-pale);overflow:hidden}.section-festive{background-color:#fdf2e0;background-image:radial-gradient(circle at 8% 12%,#b3121d14,#0000 45%),radial-gradient(circle at 92% 84%,#1f51381a,#0000 45%)}.fret-band{background-image:var(--pattern-fret);opacity:.75;background-repeat:repeat-x;height:16px}.btn{cursor:pointer;transition:var(--transition);font-size:1rem;font-weight:700;font-family:var(--font-main);letter-spacing:.01em;border:none;border-radius:50px;align-items:center;gap:8px;padding:14px 32px;display:inline-flex}.btn-sm{gap:7px;padding:10px 20px;font-size:.86rem}.btn-primary{background:linear-gradient(150deg, var(--primary) 0%, var(--primary-dark) 100%);color:var(--gold-pale);box-shadow:0 10px 24px -12px var(--primary-glow), inset 0 0 0 1px #d9a44180}.btn-primary:hover{box-shadow:0 18px 34px -14px var(--primary-glow), inset 0 0 0 1px #d9a441d9;transform:translateY(-2px)}.btn-secondary{color:var(--primary);border:2px solid var(--primary);background:0 0}.btn-secondary:hover{background:var(--primary);color:var(--gold-pale);transform:translateY(-2px)}.btn-dark{background:linear-gradient(150deg, var(--ink-soft), var(--ink));color:var(--gold-light);box-shadow:inset 0 0 0 1px var(--border-gold)}.btn-dark:hover{color:var(--white);box-shadow:inset 0 0 0 1px var(--gold), var(--shadow-gold);transform:translateY(-2px)}.btn-gold{background:linear-gradient(150deg, var(--gold-light), var(--gold) 55%, var(--gold-dark));color:var(--ink);box-shadow:var(--shadow-gold)}.btn-gold:hover{filter:brightness(1.06);transform:translateY(-2px)}.btn-light{color:var(--gold-pale);border:1.5px solid var(--border-gold);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffaf124}.btn-light:hover{background:var(--gold-pale);color:var(--ink);border-color:var(--gold-pale);transform:translateY(-2px)}.card-lacquer{border:1px solid var(--border-gold);border-radius:var(--radius);box-shadow:var(--shadow);background:linear-gradient(165deg,#fffffff5,#fdf2e0f0)}.tag-pill{background:var(--gray);color:var(--spice);border:1px solid #d9a44159;border-radius:50px;align-items:center;gap:6px;padding:5px 12px;font-size:.75rem;font-weight:700;display:inline-flex}.page-hero{isolation:isolate;text-align:center;color:var(--gold-pale);background-color:var(--primary-deep);background-image:var(--pattern-cloud), radial-gradient(circle at 80% 12%, #d9a4414d, transparent 48%), linear-gradient(155deg, #8f0f18 0%, var(--primary-deep) 55%, #2d0507 100%);border-bottom:2px solid var(--gold);background-size:200px 100px,auto,auto;padding:76px 0;position:relative;overflow:hidden}.page-hero .page-hero-lanterns{opacity:.8;top:0}.page-hero-inner{z-index:1;position:relative}.page-hero-eyebrow{font-family:var(--font-script);letter-spacing:.1em;color:var(--gold);margin-bottom:12px;font-size:1.2rem;display:inline-block}.page-hero h1{font-family:var(--font-heading);letter-spacing:-1px;color:#fff8ec;text-shadow:0 16px 34px #00000073;margin-bottom:12px;font-size:3.2rem;font-weight:900;line-height:1.1}.page-hero p{opacity:.9;max-width:660px;margin:0 auto;font-size:1.08rem;line-height:1.7}.page-hero-actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:26px;display:flex}.page-hero-fret{opacity:.4;position:absolute;bottom:0;left:0;right:0}.lantern{background:radial-gradient(circle at 50% 50%, #f2d3918c 0 18%, transparent 19%), repeating-linear-gradient(90deg, #ffffff29 0 2px, transparent 2px 7px), linear-gradient(160deg, #e0202f, var(--primary) 60%, var(--primary-deep));transform-origin:top;border-radius:50%/44%;width:34px;height:42px;animation:5.5s ease-in-out infinite sway;display:block;position:relative;box-shadow:0 0 26px #e0202f80,inset 0 0 10px #5b060aa6}.lantern:before,.lantern:after{content:"";background:linear-gradient(180deg, var(--gold-light), var(--gold-dark));border-radius:2px;width:16px;height:5px;position:absolute;left:50%;transform:translate(-50%)}.lantern:before{top:-5px}.lantern:after{bottom:-5px}.lantern-tassel{background:var(--gold);width:1px;height:14px;position:absolute;top:100%;left:50%}.lantern-tassel:after{content:"";background:var(--gold);opacity:.85;border-radius:0 0 4px 4px;width:7px;height:12px;position:absolute;top:12px;left:-3px}.lantern-lg{width:46px;height:58px}.snow-layer{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.snowflake{color:#ffffffd9;text-shadow:0 0 10px #d9a44159;-webkit-user-select:none;user-select:none;animation-name:snowfall;animation-timing-function:linear;animation-iteration-count:infinite;position:absolute;top:-12%}.snowflake.tinted{color:#b3121d59;text-shadow:none}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes sway{0%,to{transform:rotate(-3.5deg)}50%{transform:rotate(3.5deg)}}@keyframes snowfall{0%{opacity:0;transform:translateY(0)translate(0)rotate(0)}10%{opacity:1}90%{opacity:.8}to{opacity:0;transform:translateY(115vh)translate(38px)rotate(360deg)}}@keyframes glow{0%,to{box-shadow:0 0 20px #e0202f59}50%{box-shadow:0 0 40px #f2d39199}}@keyframes shimmer{0%{background-position:-160% 0}to{background-position:260% 0}}.fade-in-up{animation:.6s forwards fadeInUp}.shimmer-text{background:linear-gradient(100deg, var(--gold-dark) 20%, #fff2cf 48%, var(--gold-dark) 76%);-webkit-text-fill-color:transparent;background-size:220% 100%;-webkit-background-clip:text;background-clip:text;animation:4.5s linear infinite shimmer}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.snow-layer{display:none}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--paper)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg, var(--primary), var(--primary-deep));border:2px solid var(--paper);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--gold-dark)}@media (width<=768px){.section{padding:64px 0}.section-title{font-size:2rem}.page-hero{padding:56px 0 60px}.page-hero h1{font-size:2.2rem}.page-hero .page-hero-lanterns{display:none}}.lantern-row{pointer-events:none;z-index:2;justify-content:space-around;align-items:flex-start;padding:0 4%;display:flex;position:absolute;top:0;left:0;right:0}.lantern-hang{flex-direction:column;align-items:center;display:flex;position:relative}.lantern-wire{width:1px;height:var(--drop,0px);background:linear-gradient(180deg, transparent, var(--gold))}.lantern-row-xs .lantern{width:18px;height:22px}.lantern-row-xs .lantern:before,.lantern-row-xs .lantern:after{width:9px;height:3px}.lantern-row-xs .lantern-tassel{height:8px}.lantern-row-xs .lantern-tassel:after{width:4px;height:7px;top:7px;left:-1.5px}.lantern-row-lg .lantern{width:44px;height:56px}.lantern-row-lg .lantern:before,.lantern-row-lg .lantern:after{width:20px;height:6px}.lang-switch{display:inline-flex;position:relative}.lang-trigger{border:1px solid var(--border-gold);height:38px;color:var(--gold-pale);font-family:var(--font-main);letter-spacing:.06em;cursor:pointer;transition:var(--transition);background:#ffffff0f;border-radius:50px;align-items:center;gap:6px;padding:0 12px;font-size:.78rem;font-weight:800;display:inline-flex}.lang-trigger:hover{border-color:var(--gold);color:var(--gold-light);background:#d9a44129}.lang-menu{z-index:60;border:1px solid var(--border-gold);border-radius:var(--radius);background:var(--surface);min-width:168px;box-shadow:var(--shadow-lg);padding:6px;list-style:none;position:absolute;top:calc(100% + 10px);right:0}.lang-option{width:100%;color:var(--ink);font-family:var(--font-main);text-align:left;cursor:pointer;transition:var(--transition);background:0 0;border:0;border-radius:10px;justify-content:space-between;align-items:center;padding:9px 11px;font-size:.88rem;font-weight:700;display:flex}.lang-option:hover{background:#d9a44124}.lang-option.is-current{color:var(--primary);background:#d9a4411a}.lang-option-check{color:var(--gold-dark)}.header:not(.scrolled) .lang-trigger{color:var(--white);border-color:#ffffff47}@media (width<=768px){.lang-trigger{height:34px;padding:0 10px}}.header{z-index:1000;background-color:var(--ink);background-image:var(--pattern-lattice), linear-gradient(180deg, #2b1a14f7, #1c110df7);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:var(--transition);border-bottom:1px solid #d9a44159;position:fixed;top:0;left:0;right:0}.header.scrolled{background-color:#150c09fa;box-shadow:0 12px 30px -18px #000000bf}.header-inner{justify-content:space-between;align-items:center;height:72px;display:flex}.header-fret{background-image:var(--pattern-fret);opacity:.5;pointer-events:none;background-repeat:repeat-x;height:14px;position:absolute;bottom:-14px;left:0;right:0}.header .lantern-row{opacity:.9;transition:opacity .35s;top:100%}.header.scrolled .lantern-row{opacity:0}.logo{transition:var(--transition);align-items:center;gap:12px;display:flex}.logo:hover{transform:scale(1.02)}.logo .logo-seal{box-shadow:inset 0 0 0 2px #f8e9c699,0 6px 16px -8px #000c}.logo-wordmark{flex-direction:column;line-height:1.05;display:flex}.logo-text{font-family:var(--font-heading);letter-spacing:.06em;background:linear-gradient(180deg, var(--gold-light), var(--gold) 55%, var(--gold-dark));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.25rem;font-weight:900}.logo-sub{font-family:var(--font-script);letter-spacing:.18em;color:#f8e9c68c;font-size:.7rem}.nav{align-items:center;gap:28px;display:flex}.nav-link{letter-spacing:.02em;color:#f8e9c6c7;transition:var(--transition);padding:6px 0;font-size:.92rem;font-weight:600;position:relative}.nav-link:after{content:"";background:linear-gradient(180deg, var(--gold-light), var(--primary));width:0;height:6px;transition:var(--transition);border-radius:0 0 6px 6px;position:absolute;bottom:-2px;left:50%;transform:translate(-50%)}.nav-link:hover,.nav-link.active{color:var(--gold-light)}.nav-link:hover:after,.nav-link.active:after{width:100%}.header-actions{align-items:center;gap:16px;display:flex}.order-btn{padding:10px 22px;font-size:.88rem}.cart-icon{color:#f8e9c6bf;transition:var(--transition);border-radius:50%;padding:8px;position:relative}.cart-icon:hover{color:var(--gold-light);background:#d9a4411f}.cart-badge{background:var(--primary);color:var(--gold-pale);width:18px;height:18px;box-shadow:0 0 0 1.5px var(--ink);border-radius:50%;justify-content:center;align-items:center;font-size:.7rem;font-weight:700;display:flex;position:absolute;top:0;right:0}.mobile-toggle{cursor:pointer;color:var(--gold-light);background:0 0;border:1px solid #d9a44159;border-radius:8px;padding:4px 6px;display:none}@media (width<=900px){.nav{gap:18px}}@media (width<=768px){.nav{background-color:var(--ink);background-image:var(--pattern-lattice);box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transition:var(--transition);border-bottom:1px solid #d9a44166;flex-direction:column;align-items:flex-start;gap:16px;padding:24px;position:fixed;top:72px;left:0;right:0;transform:translateY(-100%)}.nav.nav-open{opacity:1;pointer-events:all;transform:translateY(0)}.nav-link{font-size:1rem}.mobile-toggle{display:block}.order-btn,.header .lantern-row{display:none}}.footer{isolation:isolate;background-color:var(--ink);background-image:var(--pattern-lattice), radial-gradient(circle at 85% 0%, #b3121d6b, transparent 55%), linear-gradient(180deg, #24150f 0%, var(--ink) 60%, #130a07 100%);color:var(--gold-pale);padding:96px 0 0;position:relative;overflow:hidden}.footer .footer-lanterns{opacity:.75;top:34px}.footer-inner{z-index:1;position:relative}.footer-grid{border-bottom:1px solid #d9a44147;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:44px;display:grid}.footer-logo{margin-bottom:18px}.footer-logo .logo-text{font-size:1.15rem}.footer-desc{color:#f8e9c699;max-width:340px;margin-bottom:20px;font-size:.9rem;line-height:1.75}.social-links{gap:12px;display:flex}.social-link{width:40px;height:40px;color:var(--gold-light);transition:var(--transition);background:#f8e9c614;border:1px solid #d9a4416b;border-radius:50%;justify-content:center;align-items:center;display:flex}.social-link:hover{background:var(--primary);border-color:var(--gold);color:var(--gold-pale);box-shadow:0 10px 22px -12px var(--primary-glow);transform:translateY(-3px)}.footer-links h4,.footer-contact h4{font-family:var(--font-heading);letter-spacing:.02em;color:var(--gold);align-items:center;gap:8px;margin-bottom:18px;font-size:1rem;font-weight:800;display:flex}.footer-links h4:after,.footer-contact h4:after{content:"";background:linear-gradient(90deg,#d9a44199,#0000);flex:1;height:1px}.footer-links a{color:#f8e9c6a6;transition:var(--transition);margin-bottom:12px;font-size:.9rem;display:block}.footer-links a:hover{color:var(--gold-light);transform:translate(4px)}.footer-link-cta{background:linear-gradient(150deg, var(--primary), var(--primary-deep));border:1px solid #d9a44199;border-radius:50px;align-items:center;gap:6px;width:fit-content;padding:5px 14px;font-weight:700;color:var(--gold-pale)!important;font-size:.8rem!important;display:inline-flex!important}.footer-link-cta:hover{box-shadow:0 8px 18px -10px var(--primary-glow);color:var(--white)!important}.opening-hours p{color:#f8e9c6b3;border-bottom:1px dashed #d9a44138;justify-content:space-between;gap:10px;padding:4px 0;font-size:.88rem;display:flex}.opening-hours p:last-child{border-bottom:none}.opening-hours p span:first-child{font-weight:600}.footer-hours-note{color:var(--gold);background:#d9a4411a;border:1px solid #d9a44159;border-radius:8px;margin-top:12px;padding:8px 12px;font-size:.78rem;line-height:1.5}.contact-item{color:#f8e9c6a6;align-items:center;gap:10px;margin-bottom:12px;font-size:.9rem;display:flex}.contact-item svg{color:var(--gold);flex-shrink:0}.footer-cta{justify-content:center;width:100%;margin-top:18px;padding:11px 20px;font-size:.85rem}.footer-bottom{justify-content:space-between;align-items:center;padding:22px 0 26px;display:flex}.footer-bottom p{color:#f8e9c66b;font-size:.84rem}.footer-bottom-links{gap:24px;display:flex}.footer-bottom-links a{color:#f8e9c66b;transition:var(--transition);font-size:.84rem}.footer-bottom-links a:hover{color:var(--gold-light)}.footer-fret{opacity:.5}@media (width<=968px){.footer{padding-top:84px}.footer-grid{grid-template-columns:1fr 1fr}}@media (width<=480px){.footer-grid{grid-template-columns:1fr}.footer .footer-lanterns{display:none}.footer-bottom{text-align:center;flex-direction:column;gap:12px}}.hero{background-color:var(--primary-deep);min-height:100vh;color:var(--gold-pale);isolation:isolate;align-items:center;padding:140px 0 96px;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:-2;background:radial-gradient(circle at 78% 18%, #d9a44147, transparent 45%), radial-gradient(circle at 12% 82%, #7c12308c, transparent 50%), linear-gradient(155deg, #7c0d13 0%, var(--primary-deep) 45%, #2b0507 100%);position:absolute;inset:0}.hero-clouds{z-index:-1;background-image:var(--pattern-cloud);opacity:.09;filter:brightness(2.4)saturate(.8);background-size:180px 90px;position:absolute;inset:0}.hero .hero-lanterns{top:72px}.hero-inner{z-index:1;grid-template-columns:1.05fr .95fr;align-items:center;gap:60px;display:grid;position:relative}.hero-badge{color:var(--gold-light);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#f8e9c61a;border:1px solid #d9a44180;border-radius:50px;align-items:center;gap:8px;margin-bottom:24px;padding:8px 18px;font-size:.85rem;font-weight:600;animation:.6s fadeInUp;display:inline-flex}.hero-badge svg{color:var(--gold)}.hero-title{font-family:var(--font-heading);letter-spacing:-1.5px;color:#fff8ec;text-shadow:0 18px 40px #00000073;margin-bottom:10px;font-size:3.9rem;font-weight:900;line-height:1.08;animation:.6s .1s both fadeInUp}.highlight{font-family:var(--font-heading);background:linear-gradient(100deg, var(--gold-dark) 15%, #ffeec4 45%, var(--gold) 80%);-webkit-text-fill-color:transparent;background-size:220% 100%;-webkit-background-clip:text;background-clip:text;animation:6s linear infinite shimmer;display:block}.hero-zh{font-family:var(--font-script);color:#d9a441d9;letter-spacing:.06em;margin-bottom:20px;font-size:1.5rem;animation:.6s .16s both fadeInUp}.hero-desc{color:#fff6e8d1;max-width:540px;margin-bottom:32px;font-size:1.1rem;line-height:1.75;animation:.6s .2s both fadeInUp}.hero-buttons{flex-wrap:wrap;gap:16px;margin-bottom:40px;animation:.6s .3s both fadeInUp;display:flex}.hero-stats{flex-wrap:wrap;gap:28px;animation:.6s .4s both fadeInUp;display:flex}.stat{color:#fff6e8e6;align-items:center;gap:8px;font-size:.88rem;font-weight:600;display:flex}.stat svg{color:var(--gold);flex-shrink:0}.hero-visual{justify-content:center;align-items:center;display:flex;position:relative}.hero-dragon{aspect-ratio:1;width:min(440px,76vw);animation:.7s .25s both fadeInUp;position:relative}.hero-dragon-img{z-index:1;object-fit:cover;border:2px solid #d9a441bf;border-radius:50%;width:100%;height:100%;animation:6s ease-in-out infinite float;position:relative;box-shadow:0 44px 84px -40px #000000d9,0 0 0 8px #2b050759,inset 0 0 40px #00000073}.hero-dragon-halo{filter:blur(8px);background:radial-gradient(circle,#d9a44157,#b3121d24 55%,#0000 72%);border-radius:50%;animation:5s ease-in-out infinite glow;position:absolute;inset:-10%}.hero-dragon-ring{border:1px dashed #d9a44180;border-radius:50%;animation:36s linear infinite dragon-spin;position:absolute;inset:-24px}.hero-dragon-ring:before,.hero-dragon-ring:after{content:"";background:var(--gold);width:8px;height:8px;box-shadow:0 0 14px var(--gold);border-radius:50%;margin-left:-4px;position:absolute;left:50%}.hero-dragon-ring:before{top:-4px}.hero-dragon-ring:after{bottom:-4px}.hero-dragon-shine{z-index:2;pointer-events:none;background:linear-gradient(115deg,#0000 42%,#fff6e838 50%,#0000 58%) 0 0/260% 260%;border-radius:50%;animation:7.5s ease-in-out infinite sheen;position:absolute;inset:0}@keyframes dragon-spin{to{transform:rotate(360deg)}}@keyframes sheen{0%{background-position:130% 0}60%,to{background-position:-30% 0}}.hero-chip{z-index:3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--gold-pale);background:#1c110ddb;border:1px solid #d9a4418c;border-radius:14px;align-items:center;gap:10px;padding:9px 14px;font-size:.8rem;animation:5.5s ease-in-out infinite chip-float;display:flex;position:absolute;box-shadow:0 20px 36px -20px #000000d9}.hero-chip-emoji{font-size:1.4rem;line-height:1}.hero-chip-text{flex-direction:column;line-height:1.25;display:flex}.hero-chip-name{white-space:nowrap;font-weight:700}.hero-chip-price{color:var(--gold);font-size:.78rem;font-weight:800}.hero-chip-1{animation-delay:.2s;top:6%;left:-4%}.hero-chip-2{animation-delay:1.1s;bottom:24%;right:-5%}.hero-chip-3{animation-delay:2s;bottom:2%;left:6%}@keyframes chip-float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.hero-seal{z-index:4;background:linear-gradient(150deg, var(--primary), var(--primary-dark));width:58px;height:58px;color:var(--gold-pale);font-family:var(--font-script);box-shadow:inset 0 0 0 2px #f8e9c699, var(--shadow-lg);border-radius:12px;justify-content:center;align-items:center;font-size:2.1rem;display:flex;position:absolute;top:4%;right:8%;transform:rotate(6deg)}.hero-scroll{z-index:1;border:1.5px solid #d9a44199;border-radius:14px;justify-content:center;width:26px;height:42px;padding-top:7px;display:flex;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.hero-scroll span{background:var(--gold);border-radius:2px;width:4px;height:9px;animation:1.8s ease-in-out infinite scroll-hint}@keyframes scroll-hint{0%{opacity:0;transform:translateY(0)}40%{opacity:1}to{opacity:0;transform:translateY(14px)}}@media (width<=968px){.hero{padding-top:120px}.hero-inner{text-align:center;grid-template-columns:1fr;gap:44px}.hero-title{font-size:2.9rem}.hero-desc{margin:0 auto 32px}.hero-buttons,.hero-stats{justify-content:center}.hero-dragon{width:min(330px,74vw)}.hero-seal{width:48px;height:48px;font-size:1.7rem;top:2%;right:12%}.hero-chip{padding:7px 11px;font-size:.72rem}.hero-chip-emoji{font-size:1.15rem}.hero .hero-lanterns{display:none}}@media (width<=480px){.hero-title{font-size:2.3rem}.hero-zh{font-size:1.2rem}.hero-stats{flex-direction:column;align-items:center;gap:12px}.hero-buttons .btn{justify-content:center;width:100%}.hero-chip-1{top:2%;left:0}.hero-chip-2{right:0}.hero-chip-3{left:2%}}.reveal{opacity:0}.reveal.is-visible{opacity:1;animation-duration:.7s;animation-timing-function:cubic-bezier(.16,.84,.44,1);animation-fill-mode:backwards}.reveal-up.is-visible{animation-name:reveal-up}.reveal-down.is-visible{animation-name:reveal-down}.reveal-left.is-visible{animation-name:reveal-left}.reveal-right.is-visible{animation-name:reveal-right}.reveal-scale.is-visible{animation-name:reveal-scale}@keyframes reveal-up{0%{opacity:0;transform:translateY(34px)}to{opacity:1;transform:none}}@keyframes reveal-down{0%{opacity:0;transform:translateY(-34px)}to{opacity:1;transform:none}}@keyframes reveal-left{0%{opacity:0;transform:translate(-44px)}to{opacity:1;transform:none}}@keyframes reveal-right{0%{opacity:0;transform:translate(44px)}to{opacity:1;transform:none}}@keyframes reveal-scale{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.reveal,.reveal.is-visible{opacity:1;animation:none}}.signature{position:relative;overflow:hidden}.signature-lanterns{opacity:.85;top:0}.signature-inner{z-index:1;position:relative}.signature-head{text-align:center;max-width:780px;margin:0 auto 44px}.signature .eyebrow-light{color:var(--gold-light)}.signature .eyebrow-light:before{background:linear-gradient(90deg, transparent, var(--gold))}.signature .eyebrow-light:after{background:linear-gradient(90deg, var(--gold), transparent)}.eyebrow-dot{color:var(--gold);opacity:.8;letter-spacing:0}.signature-grid{grid-template-columns:.95fr 1.05fr;align-items:center;gap:48px;display:grid}.signature-photo{border-radius:var(--radius-lg);border:1px solid var(--gold);margin:0;position:relative;overflow:hidden;box-shadow:0 40px 70px -34px #000000bf}.signature-photo img{aspect-ratio:5/4;object-fit:cover;width:100%;transition:transform .9s cubic-bezier(.16,.84,.44,1);display:block}.signature-visual:hover .signature-photo img{transform:scale(1.045)}.signature-photo-frame{pointer-events:none;border:1px solid #d9a44173;border-radius:16px;position:absolute;inset:12px}.signature-photo-badge{border:1px solid var(--gold);color:#fff8ec;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1c110de0;border-radius:12px;align-items:center;gap:10px;padding:10px 16px;font-size:.85rem;font-weight:700;display:flex;position:absolute;bottom:18px;left:18px}.signature-photo-badge svg{color:var(--gold)}.signature-photo-badge span{flex-direction:column;line-height:1.3;display:flex}.signature-photo-badge strong{color:var(--gold-light);font-size:.78rem;font-weight:800}.signature-photo-note{border-radius:var(--radius);color:#fff6e8cc;background:#f8e9c60f;border:1px dashed #d9a44166;gap:12px;margin-top:18px;padding:14px 16px;font-size:.9rem;line-height:1.6;display:flex}.signature-photo-note svg{color:var(--gold);flex-shrink:0}.signature-list{flex-direction:column;gap:14px;display:flex}.signature-row{border-radius:var(--radius);width:100%;color:inherit;transition:var(--transition);background:linear-gradient(150deg,#f8e9c612,#f8e9c605);border:1px solid #d9a44147;grid-template-columns:auto 1fr auto auto;align-items:center;gap:16px;padding:16px 18px;text-decoration:none;display:grid}.signature-row:hover{border-color:var(--gold);background:#d9a44124;transform:translate(6px)}.signature-row:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.signature-row-icon{background:linear-gradient(150deg, var(--gold-light), var(--gold));width:38px;height:38px;color:var(--ink);border-radius:50%;place-items:center;display:grid}.signature-row-main{flex-direction:column;gap:2px;min-width:0;display:flex}.signature-row-title{font-family:var(--font-heading);color:#fff8ec;flex-wrap:wrap;align-items:baseline;gap:8px;font-size:1.05rem;font-weight:800;display:flex}.signature-row-title .zh{font-family:var(--font-script);color:var(--gold);font-size:1rem}.signature-row-note{color:#fff6e8a6;font-size:.85rem}.signature-row-price{color:var(--gold-light);white-space:nowrap;font-size:1rem;font-weight:800}.signature-row-arrow{color:var(--gold);opacity:.6;transition:var(--transition)}.signature-row:hover .signature-row-arrow{opacity:1;transform:translate(4px)}.signature-actions{flex-wrap:wrap;gap:14px;margin-top:10px;display:flex}@media (width<=968px){.signature-grid{grid-template-columns:1fr;gap:32px}.signature-row{grid-template-columns:auto 1fr auto}.signature-row-arrow{display:none}.signature-actions .btn{flex:220px;justify-content:center}}@media (width<=480px){.signature-row{gap:12px;padding:14px}.signature-row-note{font-size:.8rem}.signature-photo-badge{font-size:.78rem;bottom:12px;left:12px}}.menu-section{background-color:var(--surface-2);background-image:radial-gradient(circle at 100% 0,#d9a44124,#0000 40%),radial-gradient(circle at 0 100%,#b3121d12,#0000 44%);position:relative}.menu-section.section{padding:54px 0}.menu-section .eyebrow{color:var(--primary)}.menu-head{margin-bottom:20px}.menu-head .section-title{margin-bottom:8px;font-size:1.95rem}.menu-head .section-subtitle{margin-bottom:0;font-size:.95rem}.menu-hot{background:linear-gradient(150deg,#b3121d0f,#d9a4411f);border:1px solid #d9a4415c;border-radius:40px;flex-wrap:nowrap;align-items:center;gap:11px;margin-bottom:18px;padding:6px 13px;display:flex}.menu-hot-label{letter-spacing:.1em;text-transform:uppercase;color:var(--primary);white-space:nowrap;flex-shrink:0;align-items:center;gap:5px;font-size:.66rem;font-weight:800;display:inline-flex}.menu-hot-list{scrollbar-width:none;flex-wrap:nowrap;align-items:center;gap:5px;min-width:0;margin:0;padding:0 0 1px;list-style:none;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 92%,#0000)}.menu-hot-list::-webkit-scrollbar{display:none}.menu-hot-list li{flex-shrink:0}.menu-hot-list a{background:var(--surface);max-width:240px;color:var(--spice);transition:var(--transition);border:1px solid #d9a4415c;border-radius:40px;align-items:center;gap:6px;padding:2px 4px 2px 9px;font-size:.72rem;font-weight:700;text-decoration:none;display:inline-flex}.menu-hot-list a span{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.menu-hot-list a em{color:var(--primary);background:#d9a44133;border-radius:40px;flex-shrink:0;padding:1px 6px;font-size:.66rem;font-style:normal;font-weight:800}.menu-hot-list a:hover{border-color:var(--primary);color:var(--primary);background:#fff}.menu-grid-new{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-items:stretch;gap:10px;display:grid}.menu-card-wrap,.menu-highlight-wrap{display:flex}.menu-category-card{background:linear-gradient(170deg, #fffdf9, var(--surface));text-align:left;min-width:0;transition:var(--transition);border:1px solid #d9a44157;border-radius:12px;flex:1;align-items:center;gap:11px;padding:9px 13px;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 2px #3b140a0f}.menu-category-card:before{content:"";background:linear-gradient(90deg, var(--primary), var(--gold));transform-origin:0;height:3px;transition:transform .35s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.menu-category-card:hover{box-shadow:var(--shadow);border-color:var(--gold);background:#fffdf7;transform:translateY(-2px)}.menu-category-card:hover:before{transform:scaleX(1)}.menu-category-card:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.menu-category-thumb{object-fit:cover;width:38px;height:38px;transition:var(--transition);border:1px solid #d9a441a6;border-radius:50%;flex-shrink:0}.menu-category-thumb.section-image-fallback{background:radial-gradient(circle at 40% 30%,#f2d391a6,#0000 62%),linear-gradient(150deg,#f7e2c4,#efcfa4);border-style:dashed;place-items:center;font-size:1.05rem;display:grid}.menu-category-card:hover .menu-category-thumb{border-color:var(--gold);transform:scale(1.08)}.menu-category-id{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.menu-category-line{align-items:center;gap:6px;min-width:0;display:flex}.menu-category-num{font-family:var(--font-heading);letter-spacing:.08em;color:#8a4b1280;flex-shrink:0;font-size:.68rem;font-weight:700}.menu-category-star{color:var(--gold-dark);flex-shrink:0}.menu-category-card-title{font-family:var(--font-heading);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:.98rem;font-weight:800;line-height:1.25;transition:color .25s;overflow:hidden}.menu-category-card:hover .menu-category-card-title{color:var(--primary)}.menu-category-meta{align-items:center;gap:10px;min-width:0;display:flex}.menu-category-count{color:var(--gold-dark);white-space:nowrap;font-size:.7rem;font-weight:700}.menu-category-price{color:var(--primary);white-space:nowrap;font-size:.76rem;font-weight:800}.menu-category-arrow{color:var(--gold-dark);flex-shrink:0;margin-left:auto;transition:transform .3s,color .3s}.menu-category-card:hover .menu-category-arrow{color:var(--primary);transform:translate(3px)}.menu-category-card.is-signature{background:var(--pattern-lattice), linear-gradient(168deg, #fdf1e6 0%, #f8e3d6 100%);border-color:var(--gold);background-size:26px 26px,auto}.menu-highlight-wrap{grid-column:1/-1;margin-top:6px}.menu-highlight{border:1px solid var(--gold);background:linear-gradient(120deg, #8f0f18 0%, var(--primary-deep) 58%, #45080d 100%);color:var(--gold-pale);border-radius:14px;flex:1;align-items:center;gap:16px;padding:10px 14px 10px 10px;display:flex;overflow:hidden;box-shadow:0 16px 30px -22px #5b060abf}.menu-highlight-photo{background:var(--ink);border-radius:10px;flex-shrink:0;width:118px;height:76px;position:relative;overflow:hidden}.menu-highlight-photo img{object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.22,.61,.36,1);display:block}.menu-highlight:hover .menu-highlight-photo img{transform:scale(1.06)}.menu-highlight-body{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.menu-highlight-title{font-family:var(--font-heading);color:#fff8ec;flex-wrap:wrap;align-items:center;gap:9px;font-size:1.02rem;font-weight:900;display:flex}.menu-highlight-flag{letter-spacing:.12em;text-transform:uppercase;color:var(--ink);background:linear-gradient(150deg, var(--gold-light), var(--gold));border-radius:40px;padding:3px 9px;font-size:.58rem;font-weight:800}.menu-highlight-tiers{flex-wrap:wrap;align-items:baseline;gap:4px 15px;margin:0;padding:0;list-style:none;display:flex}.menu-highlight-tiers li{color:#f8e9c6db;white-space:nowrap;align-items:baseline;gap:6px;font-size:.78rem;font-weight:700;display:flex}.menu-highlight-tiers strong{color:var(--gold-light);font-size:.82rem}.menu-highlight-cta{flex-shrink:0}.menu-cta{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:24px;display:flex}.eyebrow-sep{opacity:.6;margin:0 2px}@media (width<=1000px){.menu-grid-new{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (width<=768px){.menu-section.section{padding:44px 0}.menu-hot{border-radius:var(--radius-sm);flex-wrap:wrap;align-items:flex-start}.menu-hot-list{-webkit-mask-image:none}.menu-highlight{flex-wrap:wrap}.menu-highlight-photo{width:96px;height:64px}.menu-highlight-cta{margin-left:112px}}@media (width<=560px){.menu-grid-new{grid-template-columns:1fr}.menu-category-count{display:none}.menu-highlight-cta{margin-left:0}}.about{background:radial-gradient(circle at 88% 12%, #d9a44124, transparent 42%), linear-gradient(180deg, var(--surface) 0%, var(--surface-2) 100%)}.about-grid{grid-template-columns:1fr 1.2fr;align-items:center;gap:60px;margin-bottom:80px;display:grid}.about-visual{justify-content:center;display:flex}.about-image-box{aspect-ratio:1;background:var(--pattern-lattice), linear-gradient(150deg, #fdf3e2 0%, #f7e6c8 55%, #f3d9b4 100%);border-radius:var(--radius-lg);border:1px solid var(--border-gold);width:100%;max-width:420px;box-shadow:var(--shadow-lg);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.about-frame{pointer-events:none;border:1px solid #a8781f73;border-radius:18px;position:absolute;inset:16px;box-shadow:inset 0 0 0 4px #fffaf199}.about-emoji-grid{z-index:1;grid-template-columns:1fr 1fr;gap:18px;padding:32px;display:grid}.about-emoji-cell{text-align:center;background:#fffaf1b8;border:1px solid #d9a44180;border-radius:14px;flex-direction:column;align-items:center;gap:8px;padding:16px 12px 12px;display:flex}.about-glyph{font-size:2.6rem;line-height:1;animation:3.4s ease-in-out infinite float}.about-emoji-cell:nth-child(2) .about-glyph{animation-delay:.5s}.about-emoji-cell:nth-child(3) .about-glyph{animation-delay:1s}.about-emoji-cell:nth-child(4) .about-glyph{animation-delay:1.5s}.about-glyph-note{letter-spacing:.03em;color:var(--spice);font-size:.7rem;font-weight:700;line-height:1.35}.about-seal{background:linear-gradient(150deg, var(--primary), var(--primary-deep));width:54px;height:54px;color:var(--gold-pale);font-family:var(--font-script);box-shadow:inset 0 0 0 2px #f8e9c699, var(--shadow);z-index:2;border-radius:10px;justify-content:center;align-items:center;font-size:1.9rem;display:flex;position:absolute;bottom:22px;right:22px;transform:rotate(-7deg)}.eyebrow-left{justify-content:flex-start}.eyebrow-left:after{display:none}.about-title{font-family:var(--font-heading);letter-spacing:-.5px;color:var(--ink);margin-bottom:20px;font-size:2.2rem;font-weight:800;line-height:1.22}.about-text{color:var(--text-muted);margin-bottom:16px;font-size:1.03rem;line-height:1.8}.about-features{grid-template-columns:1fr 1fr;gap:14px;margin-top:32px;display:grid}.feature{color:var(--gray-dark);transition:var(--transition);background:#fffaf1cc;border:1px solid #d9a44166;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;font-size:.92rem;font-weight:600;display:flex}.feature:hover{border-color:var(--gold);box-shadow:var(--shadow);transform:translateY(-2px)}.feature-icon{font-size:1.3rem;line-height:1}.stats-grid{grid-template-columns:repeat(4,1fr);gap:22px;display:grid}.stat-card{text-align:center;background:linear-gradient(165deg, #fffdf9, var(--surface-2));border-radius:var(--radius);transition:var(--transition);border:1px solid #d9a44173;padding:30px 20px 26px;position:relative;overflow:hidden}.stat-card:before{content:"";background:linear-gradient(90deg, var(--primary), var(--gold));transform-origin:50%;height:3px;transition:transform .35s;position:absolute;inset:0 0 auto;transform:scaleX(.4)}.stat-card:hover{box-shadow:var(--shadow-lg);border-color:var(--gold);transform:translateY(-5px)}.stat-card:hover:before{transform:scaleX(1)}.stat-icon{color:var(--primary);justify-content:center;margin-bottom:12px;display:flex}.stat-value{font-family:var(--font-heading);color:var(--ink);margin-bottom:4px;font-size:2.1rem;font-weight:900;line-height:1.1}.stat-label{color:var(--text-muted);letter-spacing:.02em;font-size:.83rem;font-weight:600}@media (width<=968px){.about-grid{grid-template-columns:1fr;gap:40px}.about-title,.about-text{text-align:center}.eyebrow-left{justify-content:center}.eyebrow-left:after{background:linear-gradient(90deg, var(--gold), transparent);display:block}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.about-features{grid-template-columns:1fr}.about-title{font-size:1.75rem}}.testimonials-section{background:radial-gradient(circle at 15% 20%, #b3121d12, transparent 45%), radial-gradient(circle at 85% 80%, #1f513817, transparent 45%), linear-gradient(180deg, var(--surface-2), var(--surface))}.testimonials-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:26px;display:grid}.testimonial-card{background:linear-gradient(170deg, #fffdf9, var(--surface-2));border-radius:var(--radius);box-shadow:var(--shadow);transition:var(--transition);border:1px solid #d9a44173;flex-direction:column;padding:34px 26px 24px;display:flex;position:relative;overflow:hidden}.testimonial-card:before{content:"";background-image:var(--pattern-fret);opacity:.35;background-position:top;background-repeat:repeat-x;height:50px;position:absolute;top:0;left:0;right:0}.testimonial-card:hover{box-shadow:var(--shadow-lg);border-color:var(--gold);transform:translateY(-6px)}.testimonial-quote-mark{color:#b3121d47;z-index:1;position:absolute;top:16px;right:20px}.testimonial-header{z-index:1;align-items:center;gap:14px;margin-bottom:16px;display:flex;position:relative}.testimonial-avatar{object-fit:cover;border:2px solid var(--gold);border-radius:50%;flex-shrink:0;width:52px;height:52px;box-shadow:0 0 0 3px #b3121d2e}.testimonial-info{flex-direction:column;gap:2px;display:flex}.testimonial-name{font-family:var(--font-heading);color:var(--ink);font-size:1.02rem;font-weight:800}.testimonial-rating{color:var(--gold-dark);gap:2px;display:flex}.testimonial-quote{color:var(--gray-dark);z-index:1;flex-grow:1;font-size:.94rem;font-style:italic;line-height:1.7;position:relative}.testimonial-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--pine);z-index:1;background:#1f51381a;border:1px solid #1f513847;border-radius:50px;align-self:flex-start;margin-top:16px;padding:5px 13px;font-size:.72rem;font-weight:800;position:relative}@media (width<=768px){.testimonials-grid{grid-template-columns:1fr}}.image-gallery-section{background:radial-gradient(circle at 50% 0%, #d9a44124, transparent 55%), linear-gradient(180deg, var(--surface) 0%, var(--surface-2) 100%)}.image-gallery-grid{grid-template-rows:240px 240px;grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.gallery-cell{min-height:0;position:relative}.gallery-cell>.gallery-item{width:100%;height:100%}.gallery-item{border-radius:var(--radius);box-shadow:var(--shadow);background:var(--ink);border:1px solid #d9a4418c;margin:0;transition:transform .35s,box-shadow .35s,border-color .35s;position:relative;overflow:hidden}.gallery-item:after{content:"";pointer-events:none;z-index:2;transition:var(--transition);border:1px solid #f8e9c657;border-radius:8px;position:absolute;inset:9px}.gallery-item:hover{box-shadow:var(--shadow-lg);border-color:var(--gold);transform:translateY(-5px)}.gallery-image{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.22,.61,.36,1),filter .4s}.gallery-item:hover .gallery-image{filter:saturate(1.08)brightness(1.04);transform:scale(1.06)}.gallery-veil{z-index:1;background:linear-gradient(#1c110d00 38%,#1c110d80 68%,#38080ae0 100%);position:absolute;inset:0}.gallery-caption{z-index:3;flex-direction:column;gap:4px;padding:16px 18px 15px;display:flex;position:absolute;bottom:0;left:0;right:0}.gallery-label{font-size:.95rem;font-weight:800;font-family:var(--font-heading);color:var(--gold-pale);letter-spacing:.01em;flex-wrap:wrap;align-items:center;gap:7px;display:flex}.gallery-label svg{color:var(--gold);flex-shrink:0}.gallery-label .zh{opacity:.95;font-size:.95rem}.gallery-note{color:#f8e9c6bf;font-size:.78rem;line-height:1.45}.gallery-tall{grid-area:1/1/span 2}.gallery-wide{grid-area:2/2/auto/span 2}@media (width<=900px){.image-gallery-grid{grid-template-rows:200px 200px 200px;grid-template-columns:1fr 1fr}.gallery-tall{grid-area:1/1/auto/span 2}.gallery-wide{grid-area:3/1/auto/span 2}}@media (width<=560px){.image-gallery-grid{grid-template-rows:none;grid-template-columns:1fr;grid-auto-rows:230px}.gallery-tall,.gallery-wide{grid-area:auto}.gallery-note{display:none}}.promo{background:0 0}.promo-banner{isolation:isolate;background:var(--pattern-lattice), linear-gradient(140deg, #9c1019 0%, var(--primary-deep) 58%, #35060a 100%);border-radius:var(--radius-lg);border:1px solid var(--gold);color:var(--gold-pale);box-shadow:var(--shadow-lg);justify-content:space-between;align-items:center;gap:44px;padding:52px;display:flex;position:relative;overflow:hidden}.promo-banner:before{content:"";background-image:var(--pattern-fret);opacity:.6;background-repeat:repeat-x;height:14px;position:absolute;top:0;left:0;right:0}.promo-content{z-index:1;max-width:620px;position:relative}.promo-eyebrow{font-family:var(--font-script);letter-spacing:.08em;color:var(--gold);margin-bottom:12px;font-size:1rem;display:inline-block}.promo-content h2{font-family:var(--font-heading);color:#fff8ec;margin-bottom:12px;font-size:2.15rem;font-weight:900;line-height:1.2}.promo-content p{opacity:.9;margin-bottom:24px;font-size:1.02rem;line-height:1.7}.promo-content strong{color:var(--gold-light);letter-spacing:.06em;background:#f8e9c62e;border:1px dashed #d9a441b3;border-radius:6px;padding:2px 12px;font-weight:800}.promo-actions{flex-wrap:wrap;gap:14px;display:flex}.promo-features{z-index:1;flex-shrink:0;gap:26px;display:flex;position:relative}.promo-feature{text-align:center;color:#f8e9c6e6;flex-direction:column;align-items:center;gap:10px;max-width:116px;font-size:.82rem;font-weight:700;display:flex}.promo-feature svg{width:34px;height:34px;color:var(--gold-light);box-sizing:content-box;background:#f8e9c61a;border:1px solid #d9a4418c;border-radius:50%;padding:8px}.promo-lanterns{z-index:0;opacity:.85;gap:34px;display:flex;position:absolute;top:-10px;right:52px}@media (width<=968px){.promo-banner{flex-direction:column;align-items:flex-start;gap:32px;padding:40px 32px}.promo-lanterns{display:none}}@media (width<=768px){.promo-banner{text-align:center;padding:36px 22px}.promo-content{margin:0 auto}.promo-actions,.promo-features{justify-content:center}.promo-features{flex-flow:wrap;gap:18px}.promo-feature{max-width:96px}}.locations{background:radial-gradient(circle at 8% 90%, #b3121d14, transparent 45%), radial-gradient(circle at 92% 10%, #1f51381a, transparent 42%), var(--surface-2)}.locations-layout{grid-template-columns:1.6fr 1fr;align-items:stretch;gap:24px;display:grid}.location-map-embed{border-radius:var(--radius-lg);border:1px solid var(--border-gold);box-shadow:var(--shadow-lg);min-height:460px;position:relative;overflow:hidden}.location-map-embed:after{content:"";pointer-events:none;border:1px solid #d9a44166;border-radius:14px;position:absolute;inset:10px}.location-map-embed iframe{border:0;width:100%;height:100%;display:block}.location-panel{background:linear-gradient(170deg, #fffdf9, var(--surface));border-radius:var(--radius-lg);border:1px solid var(--border-gold);box-shadow:var(--shadow);flex-direction:column;padding:30px 26px;display:flex;position:relative;overflow:hidden}.location-panel:before{content:"";background:linear-gradient(90deg, var(--primary), var(--gold), var(--pine));height:5px;position:absolute;inset:0 0 auto}.location-panel h3{font-family:var(--font-heading);color:var(--ink);flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:16px;font-size:1.35rem;font-weight:800;display:flex}.location-panel-zh{opacity:.85;font-size:1rem}.location-detail{color:var(--text-muted);align-items:center;gap:8px;margin-bottom:10px;font-size:.9rem;display:flex}.location-detail a:hover{color:var(--primary)}.location-detail svg{color:var(--primary);flex-shrink:0}.location-hours{border-radius:var(--radius);background:#d9a4411a;border:1px solid #d9a44152;margin:16px 0 0;padding:16px 18px}.location-hours-note{background:#1f513812;border-color:#1f513847}.location-hours-title{letter-spacing:.1em;text-transform:uppercase;color:var(--spice);align-items:center;gap:8px;margin-bottom:12px;font-size:.8rem;font-weight:800;display:flex}.location-hours-note .location-hours-title{color:var(--pine)}.location-hours-title svg{color:var(--primary)}.location-hours-note .location-hours-title svg{color:var(--pine)}.location-hours li{color:var(--gray-dark);border-bottom:1px dashed #a8781f52;justify-content:space-between;gap:12px;padding:5px 0;font-size:.86rem;display:flex}.location-hours li:last-child{border-bottom:none}.location-hours li span:last-child{white-space:nowrap;text-align:right;font-weight:700}.location-hours li.closed span:last-child{color:var(--primary);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}.location-panel .btn-sm{justify-content:center;width:100%;margin:22px auto 0;padding:11px 20px;font-size:.86rem}@media (width<=900px){.locations-layout{grid-template-columns:1fr}.location-map-embed{min-height:300px}}.menu-page{padding-top:72px}.menu-page-content{padding:26px 24px 80px}.menu-toolbar{z-index:30;background:linear-gradient(180deg, #6f080e 0%, var(--primary-deep) 100%);border-bottom:1px solid #d9a4418c;padding:11px 0 10px;transition:padding .25s,box-shadow .25s;position:sticky;top:72px;box-shadow:0 12px 26px -24px #000000f2}.menu-toolbar.is-condensed{padding:5px 0 6px;box-shadow:0 20px 34px -24px #000000fa}.menu-toolbar-inner{flex-wrap:wrap;align-items:center;gap:10px 12px;display:flex}.search-box{border:1.5px solid var(--border-gold);min-width:170px;box-shadow:var(--shadow);transition:var(--transition);background:#fffaf1f7;border-radius:50px;flex:0 240px;order:1;align-items:center;gap:10px;padding:9px 16px;display:flex}.menu-toolbar.is-condensed .search-box{padding:6px 14px}.search-box:focus-within{border-color:var(--primary);background:var(--white);box-shadow:0 0 0 4px #b3121d1a}.search-box input{min-width:0;font-size:.92rem;font-family:var(--font-main);background:0 0;border:none;outline:none;flex:1}.search-box svg{color:var(--gold-dark)}.search-clear{width:28px;height:28px;color:var(--primary);cursor:pointer;transition:var(--transition);background:#b3121d1a;border:none;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.search-clear:hover{background:var(--primary);color:var(--gold-pale)}.filter-rail{flex:240px;order:2;align-items:center;gap:6px;min-width:0;display:flex}.rail-view{flex:auto;min-width:0;padding-bottom:9px;position:relative}.category-filters{scroll-behavior:smooth;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;-ms-overflow-style:none;gap:7px;padding:2px 2px 0;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 22px calc(100% - 22px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 22px calc(100% - 22px),#0000 100%)}.category-filters::-webkit-scrollbar{display:none}.rail-btn{width:27px;height:27px;color:var(--gold-light);cursor:pointer;opacity:0;pointer-events:none;background:#fffaf114;border:1px solid #d9a44173;border-radius:50%;flex-shrink:0;place-items:center;transition:opacity .2s,background .2s,color .2s,transform .2s;display:grid}.rail-btn:not(:disabled){opacity:1;pointer-events:auto}.rail-btn:hover:not(:disabled){background:linear-gradient(150deg, var(--gold-light), var(--gold));color:var(--ink);transform:scale(1.08)}.rail-btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px;opacity:1}.rail-progress{opacity:0;background:#fffaf124;border-radius:99px;height:3px;transition:opacity .25s;position:absolute;bottom:0;left:4px;right:4px}.rail-progress.is-on{opacity:1}.rail-progress i{background:linear-gradient(90deg, var(--gold-light), var(--gold));border-radius:99px;transition:left .18s,width .25s;position:absolute;top:0;bottom:0;box-shadow:0 0 10px #d9a4418c}.category-btn{scroll-snap-align:center;cursor:pointer;white-space:nowrap;transition:var(--transition);font-size:.81rem;font-weight:700;font-family:var(--font-main);color:var(--gold-pale);background:#f8e9c614;border:1px solid #d9a44173;border-radius:50px;flex-shrink:0;align-items:center;gap:7px;padding:7px 14px;display:inline-flex}.menu-toolbar.is-condensed .category-btn{padding:5px 12px;font-size:.76rem}.category-btn-count{color:var(--gold-light);background:#f8e9c624;border-radius:50px;padding:1px 8px;font-size:.7rem;font-weight:800}.category-btn:hover{border-color:var(--gold);background:#f8e9c629;transform:translateY(-2px)}.category-btn.active{background:linear-gradient(150deg, var(--gold-light), var(--gold));color:var(--ink);border-color:var(--gold);box-shadow:0 10px 20px -12px #d9a441cc}.category-btn.active .category-btn-count{color:var(--ink);background:#1c110d29}.menu-tools{flex-wrap:wrap;flex:none;order:3;align-items:center;gap:9px;margin-left:auto;display:flex}.tool-toggle{color:var(--gold-pale);font-family:var(--font-main);cursor:pointer;transition:var(--transition);background:#fffaf11a;border:1px solid #d9a44180;border-radius:50px;order:2;align-items:center;gap:6px;padding:8px 14px;font-size:.79rem;font-weight:800;display:none}.tool-toggle:hover,.tool-toggle.on{background:linear-gradient(150deg, var(--gold-light), var(--gold));color:var(--ink);border-color:var(--gold)}.tool-chip{color:var(--gold-pale);font-family:var(--font-main);cursor:pointer;transition:var(--transition);background:0 0;border:1px solid #d9a44166;border-radius:50px;align-items:center;gap:6px;padding:6px 13px;font-size:.77rem;font-weight:700;display:inline-flex}.tool-chip:hover{border-color:var(--gold)}.tool-chip.on{background:linear-gradient(150deg, var(--primary), var(--primary-deep));border-color:var(--gold);color:var(--gold-pale);box-shadow:0 8px 18px -12px var(--primary-glow)}.menu-sort{color:var(--gold-pale);align-items:center;gap:7px;font-size:.77rem;font-weight:700;display:inline-flex}.menu-sort select{font-family:var(--font-main);color:var(--gold-pale);cursor:pointer;background:#1c110d99;border:1px solid #d9a44173;border-radius:10px;padding:6px 10px;font-size:.78rem;font-weight:700}.menu-sort select:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.menu-results{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.menu-results-count{color:var(--gray-medium);font-size:.9rem;font-weight:500}.menu-results-count strong{color:var(--primary);font-weight:800}.menu-clear{color:var(--primary);font-family:var(--font-main);cursor:pointer;transition:var(--transition);background:#b3121d14;border:1px solid #b3121d59;border-radius:50px;align-items:center;gap:6px;padding:7px 15px;font-size:.8rem;font-weight:800;display:inline-flex}.menu-clear:hover{background:var(--primary);color:var(--gold-pale)}.menu-section-block{background:linear-gradient(170deg, #fffdf9, var(--surface));border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #d9a44173;margin-bottom:24px;padding:28px 28px 24px;position:relative}.menu-section-header{border-bottom:2px solid var(--gold);align-items:center;gap:16px;margin-bottom:16px;padding-bottom:16px;display:flex}.menu-section-thumb{object-fit:cover;border:2px solid var(--border-gold);border-radius:50%;flex-shrink:0;width:72px;height:72px;box-shadow:0 6px 16px -8px #3b140a73}.section-image-fallback{background:radial-gradient(circle at 40% 30%,#f2d39199,#0000 60%),linear-gradient(150deg,#f7e2c4,#efcfa4);border:2px dashed #d9a441a6;justify-content:center;align-items:center;font-size:2rem;display:flex}.menu-section-heading{min-width:0}.menu-section-heading h2{font-family:var(--font-heading);letter-spacing:-.3px;color:var(--ink);font-size:1.4rem;font-weight:900}.menu-section-blurb{color:var(--gray-medium);margin-top:2px;font-size:.85rem}.menu-section-count{color:var(--gold-dark);white-space:nowrap;background:#d9a44124;border:1px solid #d9a44166;border-radius:50px;margin-left:auto;padding:4px 12px;font-size:.78rem;font-weight:700}.menu-section-note{color:var(--gray-medium);margin-bottom:14px;font-size:.88rem;font-style:italic}.menu-section-rec-label{color:var(--secondary);text-transform:uppercase;letter-spacing:1px;align-items:center;gap:6px;margin-bottom:10px;font-size:.8rem;font-weight:700;display:inline-flex}.menu-section-rec-label svg{fill:var(--secondary)}.menu-item-list{grid-template-columns:1fr 1fr;column-gap:40px;display:grid}.menu-item-row{cursor:pointer;text-align:left;width:100%;font-family:var(--font-main);color:inherit;transition:var(--transition);background:0 0;border:none;border-radius:10px;align-items:center;gap:12px;padding:8px 10px;display:flex}.menu-item-thumb{object-fit:cover;background:linear-gradient(150deg,#f7e2c4,#efcfa4);border:1px solid #d9a44180;border-radius:11px;flex-shrink:0;width:48px;height:48px;transition:transform .25s,box-shadow .25s;box-shadow:0 5px 12px -8px #3b140a8c}.menu-item-row:hover .menu-item-thumb{box-shadow:var(--shadow-gold);transform:translateY(-2px)scale(1.05)}.dish-image-fallback{border-style:dashed;place-items:center;font-size:1.25rem;line-height:1;display:grid}.menu-item-row:hover{background:#d9a4411f}.menu-item-row:hover .menu-item-name>span{color:var(--primary)}.menu-item-name{flex-direction:column;min-width:0;display:flex}.menu-item-name>span{color:var(--gray-dark);align-items:center;gap:6px;font-size:.95rem;font-weight:600;display:inline-flex}.menu-item-name small{color:var(--gray-medium);font-size:.8rem}.spice-flame{color:var(--primary);flex-shrink:0}.rec-star{color:var(--secondary);fill:var(--secondary);flex-shrink:0}.menu-item-dots{border-bottom:2px dotted #a8781f66;flex:1;align-self:center;min-width:16px}.menu-item-price{color:var(--primary);white-space:nowrap;align-self:center;font-size:.95rem;font-weight:800}.show-more-btn{color:var(--spice);cursor:pointer;transition:var(--transition);font-size:.85rem;font-weight:700;font-family:var(--font-main);background:#fffdf9e6;border:1px solid #d9a44180;border-radius:50px;align-items:center;gap:6px;margin-top:14px;padding:9px 22px;display:inline-flex}.show-more-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--white);box-shadow:var(--shadow);transform:translateY(-2px)}.menu-empty{text-align:center;color:var(--text-muted);border:1px dashed var(--border-gold);border-radius:var(--radius-lg);background:linear-gradient(170deg, #fffdf9, var(--surface));padding:54px 24px}.menu-empty svg{color:var(--gold-dark);margin-bottom:12px}.menu-empty h3{font-family:var(--font-heading);color:var(--ink);margin-bottom:6px;font-size:1.4rem}.menu-empty p{margin-bottom:20px}.dish-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#130a07b8;justify-content:center;align-items:center;padding:24px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.dish-modal{background:linear-gradient(175deg, #fffdf9, var(--surface-2));border-radius:var(--radius);border:1px solid var(--gold);width:100%;max-width:520px;max-height:90vh;animation:.3s fadeInUp;position:relative;overflow-y:auto;box-shadow:0 40px 80px -30px #000000b3}.dish-modal-close{z-index:2;width:36px;height:36px;color:var(--dark);cursor:pointer;transition:var(--transition);background:#ffffffeb;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:14px;right:14px;box-shadow:0 2px 8px #00000026}.dish-modal-close:hover{background:var(--primary);color:#fff}.dish-modal-image{object-fit:cover;border-radius:var(--radius) var(--radius) 0 0;width:100%;height:240px;display:block}.dish-modal-image.dish-image-fallback{border-radius:var(--radius) var(--radius) 0 0;border:none;border-bottom:1px solid var(--border-gold);font-size:4.5rem}.dish-modal-body{padding:24px 28px 28px}.dish-modal-tags{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.dish-tag{border-radius:50px;align-items:center;gap:5px;padding:4px 12px;font-size:.75rem;font-weight:700;display:inline-flex}.dish-tag.category{color:var(--spice);background:#d9a44129;border:1px solid #d9a44166}.dish-tag.pick{background:linear-gradient(150deg, var(--gold-light), var(--gold));color:var(--ink);border:1px solid var(--gold-dark)}.dish-tag.pick svg{fill:var(--ink);color:var(--ink)}.dish-tag.spicy{color:var(--primary);background:#b3121d1a;border:1px solid #b3121d4d}.dish-modal-name{font-family:var(--font-heading);letter-spacing:-.3px;color:var(--ink);margin-bottom:8px;font-size:1.55rem;font-weight:900}.dish-modal-note-inline{color:var(--gray-medium);font-size:1rem;font-weight:500}.dish-modal-desc{color:var(--gray-medium);margin-bottom:10px;font-size:.95rem;line-height:1.6}.dish-modal-section-note{color:var(--spice);background:#d9a44121;border:1px solid #d9a44159;border-radius:10px;margin-bottom:6px;padding:10px 14px;font-size:.85rem;font-style:italic}.dish-modal-footer{border-top:1px solid var(--gray-light);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:18px;padding-top:18px;display:flex}.dish-modal-price{color:var(--primary);font-size:1.6rem;font-weight:800}.dish-modal-price.ask{font-size:1rem;font-weight:700}.dish-modal-prices{gap:10px;display:flex}.price-chip{color:var(--spice);background:#d9a44121;border:1px solid #d9a44161;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:8px 14px;font-size:.85rem;display:flex}.price-chip strong{color:var(--primary);font-size:1.1rem;font-weight:800}.btn-order{padding:12px 24px;font-size:.9rem}.menu-page-footer{border-radius:var(--radius);border:1px solid var(--border-gold);background:var(--pattern-lattice), linear-gradient(165deg, #fdf3e2 0%, #f7e7ca 100%);background-size:40px 40px,auto;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-top:40px;padding:22px 26px;display:flex}.menu-page-footer p{color:var(--spice);max-width:620px;font-size:.9rem;line-height:1.65}@media (width<=1080px){.search-box{flex:240px}.menu-tools{order:3;margin-left:0}.filter-rail{flex:100%;order:4}}@media (width<=860px){.menu-toolbar{padding:8px 0}.search-box{flex:150px;order:1}.tool-toggle{order:2;margin-left:auto;display:inline-flex}.filter-rail{order:4}.menu-tools{flex:100%;order:5;gap:8px;display:none}.menu-toolbar.is-filter-open .menu-tools{display:flex}.menu-sort{justify-content:space-between;width:100%}}@media (width<=768px){.menu-page-content{padding:22px 16px 64px}.menu-item-list{grid-template-columns:1fr}.menu-section-block{padding:20px 18px}.menu-section-thumb{width:56px;height:56px}.section-image-fallback,.dish-image-fallback{font-size:1.5rem}.menu-item-thumb{width:44px;height:44px}.menu-item-price{white-space:normal;text-align:right;max-width:78px;line-height:1.25}.menu-section-blurb{display:none}.dish-modal-overlay{padding:16px}.dish-modal-image{height:190px}.dish-modal-body{padding:20px}}.about-page{padding-top:72px}.about-story{grid-template-columns:1fr 1.5fr;align-items:center;gap:60px;display:grid}.about-story-visual{justify-content:center;display:flex}.about-story-box{aspect-ratio:1;border-radius:var(--radius-lg);border:1px solid var(--gold);background:var(--pattern-cloud), linear-gradient(150deg, #f8e6cd 0%, var(--gold-pale) 55%, #f4ddba 100%);width:100%;max-width:350px;box-shadow:var(--shadow-lg);background-size:140px 70px,auto;justify-content:center;align-items:center;gap:18px;display:flex;position:relative}.about-story-box:after{content:"";border:1px solid var(--border-gold);pointer-events:none;border-radius:18px;position:absolute;inset:12px}.about-story-lantern,.about-story-dish{filter:drop-shadow(0 10px 14px #5b060a4d);font-size:3.4rem;animation:3.4s ease-in-out infinite float}.about-story-dish{font-size:3rem;animation-delay:.6s}.about-story-seal{color:var(--gold-pale);background:linear-gradient(150deg, var(--primary), var(--primary-deep));border:2px solid var(--gold);box-shadow:var(--shadow-gold);font-size:2.4rem}.about-story-content h2{font-family:var(--font-heading);color:var(--ink);margin-bottom:20px;padding-bottom:14px;font-size:2rem;font-weight:900;position:relative}.about-story-content h2:after{content:"";background:linear-gradient(90deg, var(--primary), var(--gold));border-radius:3px;width:92px;height:3px;position:absolute;bottom:0;left:0}.about-story-content p{color:var(--text-muted);margin-bottom:16px;font-size:1.02rem;line-height:1.85}.about-house-line{border-radius:var(--radius);border:1px solid var(--border-gold);border-left:4px solid var(--pine);background:var(--pattern-lattice), linear-gradient(160deg, #f2f6ea 0%, #e7efdd 100%);color:var(--ink-soft);background-size:34px 34px,auto;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;padding:16px 20px;font-size:.96rem;line-height:1.7;display:flex}.about-house-line .zh{font-family:var(--font-script);color:var(--pine);margin-right:4px;font-size:1.4rem}.about-house-line a{color:var(--primary);text-underline-offset:3px;white-space:nowrap;font-weight:700;text-decoration:underline}.about-house-line a:hover{color:var(--primary-deep)}.values-section{background:var(--pattern-fret), linear-gradient(180deg, var(--surface-2), var(--paper));background-position:top,50%;background-repeat:repeat-x,no-repeat;background-size:32px 16px,auto;padding-top:84px}.values-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.value-card{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border-gold);box-shadow:var(--shadow);text-align:center;transition:var(--transition);padding:32px 24px}.value-card:hover{border-color:var(--gold);box-shadow:var(--shadow-lg);transform:translateY(-6px)}.value-icon{width:68px;height:68px;color:var(--primary-deep);background:linear-gradient(150deg, var(--gold-light), var(--gold-pale));border:1px solid var(--gold);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;display:flex}.value-card h3{font-family:var(--font-heading);color:var(--ink);margin-bottom:8px;font-size:1.1rem;font-weight:800}.value-card p{color:var(--text-muted);font-size:.9rem;line-height:1.65}@media (width<=968px){.about-story{text-align:center;grid-template-columns:1fr;gap:36px}.about-story-content h2:after{left:50%;transform:translate(-50%)}}@media (width<=700px){.values-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto}}.locations-page{padding-top:72px}.locations-page-content{padding:48px 24px 84px}.locations-full-grid{grid-template-columns:minmax(0,1fr);gap:28px;max-width:1080px;margin:0 auto;display:grid}.location-full-card{background:var(--surface);border-radius:var(--radius-lg);transition:var(--transition);box-shadow:var(--shadow);border:1px solid var(--border-gold);overflow:hidden}.location-full-card:hover{box-shadow:var(--shadow-lg);border-color:var(--gold);transform:translateY(-4px)}.location-full-map{background:var(--pattern-cloud), linear-gradient(150deg, #e9f1e6, var(--gold-pale));height:300px;color:var(--primary);justify-content:center;align-items:center;display:flex;position:relative}.location-full-map iframe{border:0;width:100%;height:100%;display:block}.location-full-distance{background:var(--pine);color:var(--gold-pale);letter-spacing:.05em;box-shadow:var(--shadow);border:1px solid #d9a44180;border-radius:50px;align-items:center;gap:6px;padding:5px 14px;font-size:.76rem;font-weight:800;display:inline-flex;position:absolute;top:12px;right:12px}.location-full-rating{background:var(--surface);border:1px solid var(--gold);color:var(--ink);border-radius:50px;align-items:center;gap:5px;padding:5px 14px;font-size:.82rem;font-weight:800;display:flex;position:absolute;top:12px;left:12px}.location-full-info{padding:28px 30px 32px}.location-full-info h3{font-family:var(--font-heading);color:var(--ink);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:4px;font-size:1.5rem;font-weight:900;display:flex}.location-full-zh{font-family:var(--font-script);color:var(--primary);font-size:1.3rem;font-weight:400}.location-full-tagline{color:var(--text-muted);border-bottom:1px dashed var(--border-gold);margin-bottom:18px;padding-bottom:16px;font-size:.94rem}.location-full-detail{color:var(--text-muted);align-items:center;gap:10px;margin-bottom:10px;font-size:.94rem;display:flex}.location-full-detail svg{color:var(--primary);flex-shrink:0}.location-full-detail a{color:var(--primary);font-weight:700}.location-full-detail a:hover{color:var(--primary-deep)}.location-hours-block{border-radius:var(--radius);border:1px solid var(--border-gold);background:linear-gradient(165deg, var(--surface-2), var(--paper));margin-top:20px;padding:16px 18px}.location-full-detail-title{font-family:var(--font-heading);color:var(--ink);align-items:center;gap:8px;margin-bottom:10px;font-size:.95rem;font-weight:800;display:flex}.location-full-detail-title svg{color:var(--gold-dark)}.location-hours-list{gap:6px;list-style:none;display:grid}.location-hours-list li{color:var(--text-muted);border-bottom:1px dotted #a8781f59;justify-content:space-between;gap:12px;padding-bottom:6px;font-size:.88rem;display:flex}.location-hours-list li:last-child{border-bottom:none;padding-bottom:0}.location-hours-list li.closed span:last-child{color:var(--primary);font-weight:700}.location-hours-note{border-color:#1f513866;border-left:4px solid var(--pine);background:var(--pattern-lattice), linear-gradient(160deg, #eff5e9 0%, #e2eede 100%);background-size:34px 34px,auto}.location-hours-note .location-full-detail-title svg{color:var(--pine)}.location-hours-note .location-hours-list li{color:var(--ink-soft);border-bottom-color:#1f513847}.location-hours-note .location-hours-list li span:last-child{color:var(--pine-dark);font-weight:700}.location-full-actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.location-full-actions .btn{flex:200px;justify-content:center;align-items:center;gap:8px;display:inline-flex}@media (width<=768px){.locations-full-grid{grid-template-columns:1fr}.location-full-map{height:220px}.location-full-info{padding:22px 20px 26px}}.catering-page{padding-top:72px}.catering-features{text-align:center;grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.catering-feature{background:linear-gradient(170deg, #fffdf9, var(--surface-2));border-radius:var(--radius);transition:var(--transition);border:1px solid #d9a44173;padding:32px 24px}.catering-feature:hover{border-color:var(--gold);box-shadow:var(--shadow-lg);transform:translateY(-4px)}.catering-feature svg{color:var(--primary);margin-bottom:16px}.catering-feature h3{font-family:var(--font-heading);color:var(--ink);margin-bottom:8px;font-size:1.1rem;font-weight:800}.catering-feature p{color:var(--text-muted);font-size:.9rem}.catering-deadline{text-align:center;max-width:640px;color:var(--pine);background:#1f513814;border:1px dashed #1f513866;border-radius:50px;margin:28px auto 0;padding:10px 22px;font-size:.9rem;font-weight:600}.tray-section{background:radial-gradient(circle at 90% 5%, #b3121d14, transparent 45%), var(--surface-2)}.tray-grid{grid-template-columns:1fr 1fr;align-items:start;gap:22px;display:grid}.tray-panel{background:linear-gradient(170deg, #fffdf9, var(--surface));border-radius:var(--radius);box-shadow:var(--shadow);transition:var(--transition);border:1px solid #d9a44166;position:relative;overflow:hidden}.tray-panel:hover{border-color:var(--gold);box-shadow:var(--shadow-lg)}.tray-panel:before{content:"";background:linear-gradient(90deg, var(--primary), var(--gold) 55%, var(--pine));height:3px;position:absolute;inset:0 0 auto}.tray-panel-wide{grid-column:1/-1}.tray-head{background:linear-gradient(#d9a4411c,#d9a44105);border-bottom:1px solid #d9a44147;align-items:center;gap:14px;padding:15px 20px;display:flex}.tray-emblem{border:1px solid var(--gold-dark);background:linear-gradient(150deg, var(--primary), var(--primary-deep));width:38px;height:38px;box-shadow:0 6px 16px -8px var(--primary-glow);border-radius:12px;flex-shrink:0;place-items:center;font-size:1.05rem;display:grid}.tray-head-text{min-width:0}.tray-head-text h3{font-family:var(--font-heading);color:var(--ink);font-size:1.08rem;font-weight:900;line-height:1.25}.tray-yield{color:var(--pine);letter-spacing:.07em;text-transform:uppercase;background:#1f513817;border:1px solid #1f513833;border-radius:50px;margin-top:5px;padding:2px 9px;font-size:.66rem;font-weight:800;display:inline-block}.tray-zh{color:var(--spice);letter-spacing:.14em;white-space:nowrap;margin-left:auto;font-size:.82rem;font-weight:700}.tray-list{padding:6px 12px 12px;list-style:none}.tray-panel-wide .tray-list{grid-template-columns:repeat(2,1fr);gap:0 28px;display:grid}.tray-item{transition:var(--transition);border-bottom:1px solid #d9a4412e;border-radius:10px;align-items:baseline;gap:10px;padding:11px 10px;display:flex}.tray-item:hover{background:#d9a44117}.tray-item:hover .tray-name{color:var(--primary)}.tray-item:last-child{border-bottom:none}.tray-name{color:var(--ink);transition:var(--transition);flex-wrap:wrap;align-items:baseline;gap:4px 8px;font-size:.93rem;font-weight:700;display:flex}.tray-badge,.tray-badge-alt{color:var(--text-muted);background:#1f513814;border:1px solid #1f513838;border-radius:50px;padding:2px 9px;font-size:.7rem;font-weight:700}.tray-badge-alt{background:#d9a44124;border-color:#a8781f52}.tray-spicy{color:var(--primary);letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:4px;font-size:.66rem;font-weight:800;display:inline-flex}.tray-leader{border-bottom:1px dotted #a8781f80;flex:24px;min-width:18px;transform:translateY(-3px)}.tray-price{font-family:var(--font-heading);color:var(--primary);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.98rem;font-weight:900}.tray-per{color:var(--text-muted);font-family:var(--font-main);letter-spacing:.08em;text-transform:uppercase;margin-left:4px;font-size:.62rem;font-weight:700}.tray-note{color:var(--text-muted);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 8px;margin-top:24px;font-size:.84rem;display:flex}.tray-note svg{color:var(--pine)}.tray-note a{color:var(--primary);font-weight:700}.catering-success{text-align:center;background:linear-gradient(170deg, #fffdf9, var(--surface-2));border:1px solid var(--border-gold);border-radius:var(--radius-lg);padding:60px 20px}.catering-success svg{color:var(--pine);margin-bottom:16px}.catering-success h3{font-family:var(--font-heading);color:var(--ink);margin-bottom:8px;font-size:1.6rem;font-weight:900}.catering-success p{color:var(--text-muted);margin-bottom:24px}.catering-form{background:linear-gradient(170deg, #fffdf9, var(--surface));border-radius:var(--radius-lg);border:1px solid var(--border-gold);max-width:720px;box-shadow:var(--shadow-lg);margin:0 auto;padding:40px;position:relative;overflow:hidden}.catering-form:before{content:"";background:linear-gradient(90deg, var(--primary), var(--gold), var(--pine));height:5px;position:absolute;inset:0 0 auto}.form-row{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.form-group{margin-bottom:16px}.form-group label{letter-spacing:.02em;color:var(--spice);margin-bottom:6px;font-size:.86rem;font-weight:700;display:block}.form-group input,.form-group select,.form-group textarea{width:100%;font-size:.95rem;font-family:var(--font-main);transition:var(--transition);color:var(--text);background:#fffdf9e6;border:1.5px solid #d9a44173;border-radius:10px;padding:12px 16px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary);background:var(--white);outline:none;box-shadow:0 0 0 4px #b3121d1a}.form-group textarea{resize:vertical}@media (width<=968px){.catering-features{grid-template-columns:1fr;max-width:420px;margin:0 auto}.tray-grid,.tray-panel-wide .tray-list{grid-template-columns:1fr}}@media (width<=480px){.form-row{grid-template-columns:1fr}.catering-form{padding:28px 20px}.tray-list{padding:4px 4px 10px}.tray-zh{display:none}}
