:root{--cream:#f7f3eb;--ink:#33271f;--muted:#73685e;--accent:#955137;--line:#dfd7ca}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--cream);color:var(--ink);font-family:system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;line-height:1.8}a{color:inherit;text-decoration:none}button,input,select{font:inherit}a,button,input,select{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #a86535;outline-offset:5px}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 0}.brand{font-size:21px;font-weight:700;letter-spacing:2px;display:flex;align-items:center;gap:12px}.brand small{display:block;font-size:10px;font-weight:400;letter-spacing:2px;color:var(--muted)}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--ink);border-radius:50%;font-family:serif;font-size:25px}nav{display:flex;gap:28px;font-size:13px}nav a{padding:8px 0}nav a:hover{color:var(--accent)}.hero{display:grid;grid-template-columns:1fr 1.06fr;align-items:center;padding:28px 0 64px;gap:40px}.eyebrow{font-size:12px;letter-spacing:3px;color:var(--accent);font-weight:600;margin:0 0 22px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:"Songti SC",SimSun,serif;font-weight:500;line-height:1.35}h1{font-size:clamp(50px,6vw,78px);letter-spacing:3px;margin-bottom:26px}.intro{max-width:330px;color:var(--muted);font-size:16px;margin-bottom:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;border:0;background:var(--accent);color:#fff8f0;padding:14px 24px;border-radius:3px;font-size:14px;cursor:pointer;transition:background .2s}.button:hover{background:#773b26}.hero-note{font-size:11px;color:var(--muted);letter-spacing:2px;margin:22px 0 0}.hero-art{position:relative;overflow:hidden;border-radius:48% 48% 3px 3px;background:#d8b38b}.hero-art img{display:block;width:100%;height:auto}.art-caption{position:absolute;bottom:22px;left:25px;color:#fff7e6;font-size:12px;letter-spacing:3px}.ribbon{background:#eae4d8;border-block:1px solid var(--line);display:flex;justify-content:center;gap:48px;padding:18px 20px;font-size:12px;letter-spacing:3px}.ribbon span{color:var(--accent)}.section{padding-top:88px;padding-bottom:88px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:36px}.section-heading p:last-child{color:var(--muted);font-size:13px}.section-heading .eyebrow{margin-bottom:12px}h2{font-size:36px;margin-bottom:20px}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px 30px}.drink{display:flex;align-items:center;gap:16px;padding:24px 0;border-bottom:1px solid var(--line)}.drink>div{flex:1}.drink-icon{width:64px;height:74px;display:grid;place-items:center;background:#ddd0bd;border-radius:50% 50% 6px 6px;font-size:30px;flex-shrink:0}.dark{background:#d1c2ad}.latte{background:#e4ceb0}.oat{background:#dedac3}.orange{background:#edccab}.mocha{background:#d9c0ad}.tea{background:#e6dbb7}h3{font-size:15px;margin-bottom:6px;font-weight:600}h3 span{float:right;color:var(--accent);margin-left:8px}.drink p{font-size:11px;color:var(--muted);margin-bottom:2px}.drink small,.subnote{font-size:11px;color:var(--muted)}.subnote{margin:22px 0 0}.story{background:#eae5d9;padding:72px 0}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.story-quote>span{font-family:serif;color:var(--accent);font-size:65px;line-height:1}.story-quote h2{font-size:36px}.story-quote p{font-size:12px;letter-spacing:3px;color:var(--muted)}.story-text{padding-top:20px;font-size:14px;color:#64594d}.story-text p{margin-bottom:22px}.story-sign{font-family:serif;font-size:13px;color:var(--accent)}.visit-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:100px}.visit-details{margin-top:30px}.visit-details dt{font-size:12px;font-weight:600;margin-top:22px}.visit-details dd{margin:6px 0 0;font-size:14px;color:var(--muted)}.visit-details small{font-size:11px}.booking{padding:32px;background:#fffaf2;border:1px solid var(--line);border-radius:6px;align-self:start}.booking .eyebrow{margin-bottom:12px}.booking h2{font-size:27px;margin-bottom:14px}.booking>p:not(.eyebrow){font-size:12px;color:var(--muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}label{font-size:12px;display:block;min-width:0}input,select{display:block;width:100%;min-width:0;border:1px solid #d7cbbb;border-radius:3px;background:#fffdf8;color:var(--ink);padding:11px 10px;margin-top:7px;font-size:13px;min-height:44px}.booking button{margin-top:22px;width:100%}#form-status{font-size:14px;color:#466249;margin:16px 0 0}#form-status:empty{display:none}footer{border-top:1px solid var(--line);padding:30px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.footer-inner .brand{display:block;font-size:18px}.footer-inner a,.footer-inner p{font-size:11px}.footer-inner p{color:var(--muted);margin:6px 0 0}@media(max-width:1000px){.menu-grid{grid-template-columns:repeat(2,1fr)}.story-grid,.visit-grid{gap:45px}.ribbon{gap:20px;letter-spacing:1px}}@media(max-width:650px){.wrap{width:calc(100% - 36px)}.header{padding:18px 0}.brand{font-size:17px;gap:8px}.brand-mark{width:36px;height:36px;font-size:21px}nav{gap:16px;font-size:11px}nav a:nth-child(2){display:none}.hero{grid-template-columns:1fr;padding:24px 0 36px;gap:30px}.hero-copy{padding-top:6px}h1{font-size:56px}.intro{font-size:14px;max-width:290px}.hero-art{max-height:400px}.hero-art img{margin-top:-25px}.ribbon{font-size:10px;gap:18px;flex-wrap:wrap}.ribbon span:last-of-type,.ribbon span:last-of-type~*{display:none}.section{padding-top:52px;padding-bottom:52px}.section-heading{align-items:start;gap:20px;margin-bottom:18px}.section-heading>p{font-size:11px!important}h2{font-size:30px}.menu-grid{grid-template-columns:1fr;gap:0}.drink{padding:18px 0}.drink p{font-size:12px}h3{font-size:16px}.drink-icon{width:60px;height:65px}.story{padding:48px 0}.story-grid,.visit-grid{grid-template-columns:1fr;gap:28px}.story-quote h2{font-size:30px}.story-text{padding-top:0}.booking{padding:24px 18px}.form-row{gap:12px}.footer-inner{flex-wrap:wrap;align-items:start}.footer-inner>div:nth-child(2){width:100%;order:3}.hero-note{font-size:10px}.eyebrow{letter-spacing:2px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

fieldset{border:0;padding:0;margin:0;min-width:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
