:root{--green:#102c23;--gold:#e5b453;--paper:#f7f4e9;--ink:#172a23;--muted:#59685e;--line:#d7dccf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:16px;line-height:1.8}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}h1,h2,h3,p,figure{margin:0}img{display:block;max-width:100%;height:auto}.skip-link{position:absolute;left:1rem;top:-6rem;padding:.6rem 1rem;background:white;z-index:10}.skip-link:focus{top:1rem}.header{max-width:1280px;margin:auto;padding:24px 48px;display:flex;justify-content:space-between;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:14px}.seal{background:var(--green);color:var(--gold);width:50px;height:54px;display:grid;place-items:center;border:3px double var(--gold);font-family:serif;font-weight:700;font-size:22px;letter-spacing:0}.brand-name{font-size:23px;font-weight:750;letter-spacing:1px;line-height:1.3}.brand-name small{display:block;margin-top:6px;font-size:12px;font-weight:500;letter-spacing:2px;color:var(--muted)}nav{display:flex;gap:32px;font-size:15px}nav a{border-bottom:1px solid transparent}nav a:hover{border-color:currentColor}.hero{background:var(--green);color:var(--paper);max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1.15fr;align-items:center;overflow:hidden;min-height:580px;padding:58px 48px 46px}.hero-copy{z-index:1}.eyebrow{font-size:14px;letter-spacing:2px;color:var(--gold);margin-bottom:18px}.eyebrow.dark{color:#816126}.hero h1{font-size:19px;font-weight:500;letter-spacing:4px;margin-bottom:20px}.hero-title{font-family:"Songti SC","Noto Serif CJK SC",serif;font-size:clamp(40px,4.5vw,66px);font-weight:700;line-height:1.35;letter-spacing:2px}.hero-description{color:#dce1d1;font-size:17px;margin:24px 0 28px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border:1px solid transparent;padding:10px 25px;font-weight:650;font-size:15px;cursor:pointer;transition:background .18s,color .18s}.button-gold{background:var(--gold);color:var(--green)}.button-gold:hover{background:#f2c979}.hero-hours{display:flex;align-items:center;gap:18px;margin-top:32px;padding-top:24px;border-top:1px solid #456052;max-width:305px}.hero-hours>span{font-size:13px;color:#d3dbc9}.hero-hours strong{font-size:25px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.hero-hours strong span{font-size:14px;padding:0 5px;font-weight:400}.hero-art{width:114%;margin-left:-3%;position:relative}.hero-art img{width:100%;mix-blend-mode:screen}.hero-art figcaption{font-size:12px;text-align:right;color:#cfdbc8;padding-right:40px;margin-top:-26px;position:relative}.facts{max-width:1184px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);padding:40px 0;border-bottom:1px solid var(--line)}.facts>div{padding:0 34px;border-right:1px solid var(--line)}.facts>div:first-child{padding-left:0}.facts>div:last-child{border:0}.facts p{font-size:13px;color:var(--muted);margin-bottom:7px}.facts strong{display:block;font-size:21px;font-weight:650}.facts span{font-size:14px;color:var(--muted);display:block;margin-top:3px}.section{max-width:1184px;margin:auto;padding:80px 0}.section-heading h2{font-family:"Songti SC","Noto Serif CJK SC",serif;font-size:36px;line-height:1.45}.section-heading>p:last-child{margin-top:18px;color:var(--muted)}.dish-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:35px}.dish{display:flex;align-items:flex-start;gap:28px;border-top:2px solid var(--green);padding:26px 30px 32px;background:#eceee2}.dish-number{font-family:Georgia,serif;font-size:52px;font-style:italic;color:#83917a;line-height:1.2}.dish-kind{font-size:13px;color:var(--muted);letter-spacing:3px}.dish h3{font-family:"Songti SC",serif;font-size:34px;margin-top:4px}.dish>div>p:last-child{font-size:15px;color:var(--muted);margin-top:7px}.visit-section{max-width:1280px;background:var(--green);color:var(--paper);padding:68px 48px;display:grid;grid-template-columns:1fr 1fr;gap:80px}.visit-intro h2{font-family:"Songti SC",serif;font-size:48px;line-height:1.45;letter-spacing:3px}.visit-intro h2 span{color:var(--gold)}.visit-intro>p:not(.eyebrow):not(.copy-status){margin-top:22px;font-size:15px;color:#d4decf}.button-outline{background:transparent;color:var(--paper);border-color:#809785;margin-top:22px}.button-outline:hover{background:#244337}.copy-status{min-height:28px;font-size:14px;color:var(--gold);margin-top:8px}.visit-detail{padding-top:32px}.visit-row{display:flex;justify-content:space-between;gap:24px;padding:18px 0;border-bottom:1px solid #496153}.visit-row>span{font-size:14px;color:#d4decf}.visit-row strong{font-size:18px;font-weight:550}.map-links{display:flex;flex-wrap:wrap;gap:18px;margin-top:30px}.map-links a{font-size:15px;color:var(--gold);border-bottom:1px solid var(--gold);min-height:38px}.map-links a:hover{color:white;border-color:white}.map-note{font-size:14px;color:#d4decf;margin-top:16px}.questions-section{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.faq-list article{padding:20px 0;border-bottom:1px solid var(--line)}.faq-list article:first-child{padding-top:0}.faq-list h3{font-size:18px;font-weight:650;margin-bottom:7px}.faq-list p{color:var(--muted);font-size:16px}footer{max-width:1280px;margin:auto;padding:32px 48px;border-top:1px solid var(--line);display:flex;gap:26px;align-items:center;justify-content:space-between;color:var(--muted);font-size:13px}.footer-brand{font-size:19px;font-weight:700;letter-spacing:2px;color:var(--green)}@media(min-width:1440px){.hero{margin-top:10px}}@media(max-width:1279px){.header{padding:22px 32px}.hero{padding-left:32px;padding-right:32px}.facts,.section:not(.visit-section){margin-left:32px;margin-right:32px}.visit-section{padding-left:32px;padding-right:32px;gap:48px}.hero-title{font-size:clamp(42px,5.2vw,62px)}}@media(max-width:760px){.header{padding:18px 20px;gap:14px}.brand-name{font-size:20px}.seal{width:42px;height:46px;font-size:19px}.brand-name small{font-size:12px;letter-spacing:1px}nav{gap:17px;font-size:14px}nav a:last-child{display:none}.hero{grid-template-columns:1fr;padding:34px 24px 28px;min-height:unset}.hero h1{font-size:17px;margin-bottom:14px}.eyebrow{font-size:13px;letter-spacing:1px;margin-bottom:14px}.hero-title{font-size:46px}.hero-description{font-size:16px;margin:18px 0 22px}.hero-hours{margin-top:24px;padding-top:16px}.hero-art{width:100%;max-width:480px;margin:16px auto 0}.hero-art figcaption{padding-right:0;margin-top:-20px}.facts{margin:0 24px!important;grid-template-columns:1fr;padding:8px 0 16px;gap:0}.facts>div{display:grid;grid-template-columns:90px 1fr;padding:17px 0!important;border-right:0;border-bottom:1px solid var(--line)}.facts>div:last-child{border-bottom:0}.facts p{grid-row:span 2;padding-top:3px}.facts strong{font-size:18px}.facts span{font-size:14px}.section:not(.visit-section){padding:48px 0;margin-left:24px;margin-right:24px}.section-heading h2{font-size:29px}.section-heading>p:last-child{font-size:15px;margin-top:14px}.dish-grid{gap:14px;margin-top:26px}.dish{display:block;padding:22px 20px}.dish-number{font-size:35px;display:block;margin-bottom:15px}.dish h3{font-size:28px}.dish>div>p:last-child{font-size:14px}.visit-section{display:block;padding:40px 24px}.visit-intro h2{font-size:41px}.visit-detail{padding-top:12px}.visit-row{padding:15px 0}.visit-row strong{font-size:17px}.questions-section{display:block}.faq-list{margin-top:28px}.faq-list h3{font-size:17px}footer{padding:26px 24px;flex-wrap:wrap;gap:9px 20px}footer p:nth-child(2){width:100%;order:3}.footer-brand{font-size:18px}}@media(max-width:360px){nav{gap:12px}.header{padding-left:16px;padding-right:16px}.brand{gap:9px}.hero-title{font-size:40px}.hero-hours strong{font-size:23px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
.note-line{margin-top:26px;font-size:17px;color:var(--muted)}
.card-row{display:grid;grid-template-columns:repeat(2,minmax(0,340px));gap:24px;margin-top:34px}
.card-row figure{background:#eceee2;padding:10px}
.card-row figcaption{font-size:13px;color:var(--muted);padding:8px 4px 2px}
@media(max-width:760px){.card-row{grid-template-columns:1fr;max-width:420px}}
