:root{--bg:#fbf6f0;--fg:#2b1d1a;--muted:#7a6660;--card:#ffffff;--line:#eaddd2;--accent:#9c3d54;--accent-fg:#ffffff;--err:#b3261e}@media (prefers-color-scheme:dark){:root{--bg:#1a1413;--fg:#f5ebe4;--muted:#b09c94;--card:#241c1a;--line:#3d302c;--accent:#e59ab0;--accent-fg:#2a0f17;--err:#f2b8b5}}h1,h2,h3{font-family:Georgia,Times New Roman,serif;font-weight:600}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.5}main{padding:24px 16px 64px}.site-header,main{max-width:1100px;margin:0 auto}.site-header{padding:8px 16px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line)}.brand-link{display:block;width:150px;justify-self:start}.brand-link img{display:block;width:100%;height:auto}.site-title{font-family:Georgia,Times New Roman,serif;font-size:1.25rem;font-weight:600;white-space:nowrap}.site-header nav{justify-self:end}.site-header nav a{font-weight:600;text-decoration:none}.hero{padding:24px 0}.hero h1{margin:0 0 4px;font-size:2.2rem;letter-spacing:-.02em}.hero-banner{position:relative;overflow:hidden;border-radius:14px}.hero-image{display:block;width:100%;height:clamp(260px,51vw,560px);object-fit:cover;object-position:center top}.hero-copy{position:absolute;top:50%;left:clamp(20px,5vw,64px);width:min(43%,450px);transform:translateY(-50%);color:#3b2118}.hero-copy h1{margin:0 0 14px;font-size:clamp(1.8rem,3.7vw,3.4rem);line-height:1.02;font-weight:750;letter-spacing:-.04em}.hero-copy p{margin:0;font-size:clamp(.95rem,1.4vw,1.15rem);line-height:1.5}.hero-copy .hero-chinese{margin-bottom:8px;font-size:clamp(1.05rem,1.7vw,1.35rem);font-weight:600;letter-spacing:.05em}.hero-cta{display:inline-block;margin-top:20px;padding:11px 22px;border-radius:8px;background:#9c3d54;color:#fff;font-weight:700;text-decoration:none}.hero-cta:hover{background:#812f44}.hero-cta:focus-visible{outline:3px solid #2b1d1a;outline-offset:3px}.menu-section{scroll-margin-top:20px}.about-copy{max-width:680px}.about-copy p{margin:0 0 16px}.about-signoff{font-style:italic}.layout{display:grid;grid-template-columns:1fr;grid-gap:24px;gap:24px}@media (min-width:860px){.layout{grid-template-columns:1fr 320px;align-items:start}}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:16px;gap:16px}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.card img,.noimg{width:100%;aspect-ratio:1;object-fit:cover;background:var(--line);display:block}.card .body{padding:12px;display:flex;flex-direction:column;gap:8px;flex:1 1}.card h3{margin:0;font-size:1rem}.desc{margin:0;color:var(--muted);font-size:.875rem}.row{display:flex;align-items:center;justify-content:space-between;margin-top:auto}button,input,select{font:inherit;border-radius:8px;border:1px solid var(--line);background:var(--card);color:var(--fg);padding:6px 12px;cursor:pointer}input{width:100%;cursor:text}button.primary,button:hover{border-color:var(--accent)}button.primary{width:100%;background:var(--accent);color:var(--accent-fg);padding:10px;font-weight:600}button:disabled{opacity:.6;cursor:default}.cart{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;position:-webkit-sticky;position:sticky;top:16px}.cart h2{margin:0 0 8px;font-size:1.1rem}.line{display:grid;grid-template-columns:1fr auto auto;grid-gap:8px;gap:8px;padding:8px 0;border-bottom:1px solid var(--line);font-size:.9rem}.line,.qty{align-items:center}.qty{display:flex;gap:6px}.qty button{padding:0 8px}.total{display:flex;justify-content:space-between;padding:12px 0 4px}.wechat-field{display:grid;grid-gap:6px;gap:6px;margin:12px 0;font-size:.9rem}.muted{color:var(--muted);font-size:.85rem}.error{color:var(--err)}.center{text-align:center;padding-top:96px}a{color:var(--accent)}@media (max-width:520px){.brand-link{width:110px}.site-title{font-size:1rem}.hero-image{height:300px}.hero-copy{left:16px;width:52%}.hero-copy h1{margin-bottom:8px;font-size:clamp(1.5rem,6vw,1.9rem)}.hero-copy p{font-size:.9rem;line-height:1.35}.hero-cta{margin-top:12px;padding:9px 16px}}