@import url('https://fonts.googleapis.com/css2?family=Ma+Shan+Zheng&family=Noto+Serif+SC:wght@400;500;600;700;900&family=ZCOOL+XiaoWei&display=swap');
:root{--paper:#f3efe6;--paper2:#e9e1d2;--ink:#201d18;--muted:#6e675d;--red:#8b1e17;--gold:#b08a4b;--dark:#231d18;--line:rgba(32,29,24,.18);--serif:"Noto Serif SC","Songti SC",serif;--display:"ZCOOL XiaoWei","STKaiti",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);line-height:1.8}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.23;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.16'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}button{font:inherit}.skip-link{position:fixed;left:1rem;top:-100px;background:#fff;padding:.7rem 1rem;z-index:100}.skip-link:focus{top:1rem}.site-header{height:82px;padding:0 clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(243,239,230,.94);backdrop-filter:blur(12px);z-index:20}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:46px;height:46px;border:1px solid var(--red);color:var(--red);display:grid;place-items:center;font-family:"Ma Shan Zheng",cursive;font-size:20px;transform:rotate(-2deg)}.brand-name{font-family:var(--display);font-size:24px;letter-spacing:.12em;line-height:1}.brand-name small{display:block;font-family:var(--serif);font-size:8px;letter-spacing:.28em;margin-top:8px;color:var(--muted)}#site-nav{display:flex;gap:2rem;font-size:13px}#site-nav a{position:relative}#site-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--red);transition:.3s}#site-nav a:hover:after{right:0}.header-cta{border:1px solid var(--ink);padding:8px 18px;font-size:12px;letter-spacing:.1em}.menu-toggle{display:none;background:transparent;border:0}.hero{min-height:calc(100vh - 82px);display:grid;grid-template-columns:1.05fr .95fr;padding:clamp(48px,7vw,110px) clamp(20px,7vw,110px) 80px;gap:7vw;overflow:hidden}.hero-copy{align-self:center;max-width:720px}.eyebrow,.index{font-size:12px;letter-spacing:.28em;color:var(--red);font-weight:700}.hero h1{font-family:var(--display);font-size:clamp(58px,7.5vw,112px);font-weight:400;line-height:1.08;letter-spacing:.02em;margin:24px 0 30px}.hero h1 em{font-style:normal;color:var(--red)}.hero-lead{font-size:clamp(15px,1.35vw,19px);max-width:590px;color:#514a41}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:40px}.button{min-height:50px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;letter-spacing:.12em}.button.primary{background:var(--red);color:#fff;padding:0 28px}.button.text span{margin-left:12px;color:var(--red);font-size:20px}.scene-list{list-style:none;padding:0;margin:50px 0 0;display:flex;flex-wrap:wrap;gap:10px 24px;font-size:12px;color:var(--muted)}.scene-list li:before{content:"◆";font-size:6px;color:var(--gold);margin-right:10px}.hero-visual{position:relative;display:flex;align-items:center}.photo-placeholder{background:linear-gradient(135deg,#d9cbb7,#a99578);position:relative;overflow:hidden;display:grid;place-items:center;text-align:center;color:rgba(255,255,255,.9);min-height:260px}.photo-placeholder:before,.photo-placeholder:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.25);border-radius:50%}.photo-placeholder:before{width:65%;aspect-ratio:1}.photo-placeholder:after{width:45%;aspect-ratio:1}.photo-placeholder span{font-family:var(--display);font-size:28px;z-index:1}.photo-placeholder small{position:absolute;bottom:24px;font-size:11px;line-height:1.6;z-index:1}.hero-photo{width:100%;height:min(68vh,680px);clip-path:polygon(9% 0,100% 5%,93% 100%,0 91%)}.hero-photo span{font-size:clamp(28px,3vw,52px)}.seal{position:absolute;left:-50px;bottom:5%;background:var(--red);color:#fff;width:112px;height:112px;border-radius:50%;display:grid;place-content:center;text-align:center;line-height:1.5;font-size:11px;letter-spacing:.2em;transform:rotate(-8deg)}.seal b{font-family:var(--display);font-size:18px}.vertical-note{writing-mode:vertical-rl;letter-spacing:.25em;font-size:11px;color:var(--muted);position:absolute;right:-38px;top:0}.intro-band{background:var(--red);color:#f5e9dc;min-height:90px;display:flex;align-items:center;justify-content:center;gap:clamp(14px,4vw,60px);font-family:var(--display);font-size:clamp(17px,2.2vw,28px);letter-spacing:.15em}.intro-band span{color:#d4a97d}.section{padding:clamp(80px,10vw,150px) clamp(20px,7vw,110px)}.section-heading{display:grid;grid-template-columns:minmax(180px,.7fr) 1.6fr;gap:5vw;margin-bottom:70px}.section-heading h2,.occasion-title h2{font-family:var(--display);font-size:clamp(42px,5vw,72px);font-weight:400;line-height:1.25;margin:0}.section-heading>p:last-child:not(.index){color:var(--muted);max-width:260px;align-self:end}.story{display:grid;grid-template-columns:1.35fr .65fr;gap:8vw}.story .section-heading{display:block}.story-content{padding-top:60px;font-size:15px}.story-content .lead{font-size:clamp(21px,2vw,30px);color:var(--red);line-height:1.65}.pending{border-left:2px solid var(--gold);padding:5px 0 5px 22px;margin-top:38px;color:var(--muted);font-size:13px}.pending strong{display:block;color:var(--ink);letter-spacing:.1em}.dishes{background:#e9e1d2}.dish-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px 28px}.dish-card .photo-placeholder{aspect-ratio:4/3;margin-bottom:24px}.dish-card.featured{grid-column:1/-1;display:grid;grid-template-columns:1.35fr .65fr;gap:50px;align-items:end}.dish-card.featured .photo-placeholder{margin:0}.dish-no{font-size:10px;letter-spacing:.22em;color:var(--red)}.dish-card h3{font-family:var(--display);font-size:clamp(29px,3vw,44px);font-weight:400;margin:6px 0}.dish-card p:last-child{color:var(--muted);font-size:14px}.occasions{background:var(--paper)}.occasion-title{text-align:center;margin-bottom:65px}.occasion-title .index{margin-bottom:20px}.occasion-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.occasion-grid article{padding:45px 28px;min-height:270px;border-right:1px solid var(--line);transition:.35s}.occasion-grid article:last-child{border:0}.occasion-grid article:hover{background:var(--red);color:#fff;transform:translateY(-8px)}.occasion-grid b{font-family:var(--display);font-size:42px;color:var(--red)}.occasion-grid article:hover b,.occasion-grid article:hover p{color:#fff}.occasion-grid h3{font-size:18px;margin:40px 0 8px}.occasion-grid p{font-size:12px;color:var(--muted)}.stores{background:var(--dark);color:#f0e9df}.section-heading.light .index{color:#cc9c67}.store-card{border-top:1px solid rgba(255,255,255,.25);border-bottom:1px solid rgba(255,255,255,.25);padding:50px 0;display:grid;grid-template-columns:1fr 240px;gap:70px}.status{display:inline-block;border:1px solid #b58d65;color:#d9b087;padding:3px 12px;font-size:11px;letter-spacing:.15em}.store-card h3{font-family:var(--display);font-weight:400;font-size:34px}.store-card dl>div{display:grid;grid-template-columns:70px 1fr;border-top:1px solid rgba(255,255,255,.13);padding:12px 0}.store-card dt{color:#b9a896;font-size:12px}.store-card dd{margin:0;font-size:13px}.qr-placeholder{aspect-ratio:1;border:1px dashed rgba(255,255,255,.35);display:grid;place-content:center;text-align:center}.qr-placeholder span{font-size:17px}.qr-placeholder small{color:#aa9d90;margin-top:12px}.store-note{font-size:11px;color:#a99e94;margin-top:24px}.knowledge{background:var(--paper)}.article-list article{display:grid;grid-template-columns:90px 1fr;border-top:1px solid var(--line);padding:30px 0;max-width:900px;margin-left:auto}.article-list article>p{color:var(--red);font-size:12px}.article-list h3{font-family:var(--display);font-size:28px;font-weight:400;margin:0 0 10px}.article-list div p{color:var(--muted);font-size:14px;max-width:660px}.faq{background:#ded2c1}.faq-list{max-width:900px;margin-left:auto}.faq-list details{border-top:1px solid rgba(32,29,24,.3);padding:0}.faq-list summary{list-style:none;cursor:pointer;padding:24px 0;font-size:17px;display:flex;justify-content:space-between;align-items:center}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:28px;font-weight:300;transition:.3s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{margin:-5px 45px 25px 0;color:var(--muted);font-size:14px}footer{background:#171310;color:#e9e0d4;padding:80px clamp(20px,7vw,110px) 30px}.footer-brand{display:flex;align-items:center;gap:16px}.footer-brand h2{font-family:var(--display);font-size:32px;font-weight:400;letter-spacing:.12em}.footer-brand h2 small{display:block;font-family:serif;font-size:8px;letter-spacing:.2em;color:#988b7d}.footer-brand+.footer-brand{}footer>p{color:#a99b8d;font-size:13px}footer nav{display:flex;gap:30px;margin:55px 0;font-size:12px;color:#c2b5a7}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:25px;display:flex;justify-content:space-between;color:#82786d;font-size:10px}.mobile-action{display:none}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
@media(max-width:900px){.site-header{height:70px;padding:0 20px}.brand-mark{width:40px;height:40px}.brand-name{font-size:20px}.header-cta{display:none}.menu-toggle{display:flex;flex-direction:column;gap:4px;align-items:flex-end}.menu-toggle span{display:block;width:23px;height:1px;background:var(--ink)}.menu-toggle b{font-size:8px;font-weight:400;letter-spacing:.2em}#site-nav{position:fixed;top:70px;left:0;right:0;background:var(--paper);padding:25px 20px 35px;display:none;flex-direction:column;gap:18px;border-bottom:1px solid var(--line)}#site-nav.open{display:flex}.hero{min-height:auto;grid-template-columns:1fr;padding:64px 20px 45px;gap:55px}.hero h1{font-size:clamp(54px,17vw,78px);margin:18px 0 25px}.hero-lead{font-size:14px}.hero-actions{margin-top:30px}.scene-list{margin-top:35px;gap:8px 16px}.hero-visual{margin:0 14px}.hero-photo{height:440px}.seal{left:-25px;width:88px;height:88px}.vertical-note{right:-24px}.intro-band{padding:20px;flex-wrap:wrap;gap:4px 10px;min-height:80px}.intro-band p{margin:0;font-size:16px}.section{padding:80px 20px}.section-heading{display:block;margin-bottom:45px}.section-heading .index{margin-bottom:20px}.section-heading h2,.occasion-title h2{font-size:42px}.story{grid-template-columns:1fr}.story-content{padding-top:0}.dish-grid{grid-template-columns:1fr}.dish-card.featured{grid-column:auto;display:block}.dish-card.featured .photo-placeholder{margin-bottom:24px}.occasion-grid{grid-template-columns:1fr 1fr}.occasion-grid article{min-height:210px;padding:30px 20px;border-bottom:1px solid var(--line)}.occasion-grid article:nth-child(2){border-right:0}.occasion-grid h3{margin:25px 0 6px}.store-card{grid-template-columns:1fr;gap:35px}.qr-placeholder{width:210px}.article-list article{grid-template-columns:45px 1fr}.faq-list summary{font-size:15px}.footer-bottom{display:block}.mobile-action{display:block;position:fixed;bottom:12px;left:12px;right:12px;z-index:19;background:var(--red);color:#fff;text-align:center;box-shadow:0 10px 30px rgba(0,0,0,.25)}.mobile-action a{display:block;padding:13px;font-size:12px;letter-spacing:.12em}footer{padding-bottom:90px}}
@media(max-width:480px){.occasion-grid{grid-template-columns:1fr}.occasion-grid article{border-right:0;min-height:auto}.store-card dl>div{grid-template-columns:55px 1fr}.hero-actions{gap:18px}.button.primary{padding:0 20px}footer nav{flex-wrap:wrap;gap:12px 22px}}
