@charset "UTF-8";
:root{--green:#24382e;--green-deep:#1b2c24;--cream:#f2ebdf;--paper:#f5efe5;--ink:#39372f;--muted:#777264;--amber:#c3a16b;--line:#bdb09a;--calligraphy:"Kaiti TC","BiauKai","STKaiti",serif;--serif:"Baskerville","Georgia",serif;--body:"PingFang TC","Hiragino Sans GB",sans-serif;--ease:cubic-bezier(.2,.7,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--green);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}img,svg{display:block}button:focus-visible,a:focus-visible{outline:2px solid #c3a16b;outline-offset:6px}::selection{background:#b78950;color:#fff9ed}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--cream);color:var(--green);padding:14px}.skip:focus{top:12px}.en{display:block;font-family:var(--serif);font-weight:400}body:not(.english) .en{color:var(--muted)}.zh{display:block}.english-hero{display:none}button .zh,button .en,a .zh,a .en{pointer-events:none}
.header{position:absolute;top:0;left:0;right:0;height:90px;padding:25px 30px;display:flex;justify-content:space-between;align-items:center;color:var(--cream);z-index:10}.wordmark{font-family:var(--serif);font-size:22px;letter-spacing:.03em}.wordmark>span{font-size:8px;letter-spacing:.24em;margin-left:5px}.header-controls{display:flex;gap:20px;align-items:center}.languages{display:flex;align-items:center;gap:6px;font-size:10px;color:#c9c7b7}.languages button,.languages a{border:0;background:none;padding:10px 3px;font-size:11px;color:inherit;min-height:40px}.languages [aria-pressed=true],.languages [aria-current=page]{color:#fff8e9;border-bottom:1px solid #a89570}.languages>span{opacity:.5}.menu-toggle{width:34px;height:44px;display:flex;justify-content:center;flex-direction:column;gap:6px;padding:5px;border:0;background:none}.menu-toggle span{height:1px;width:26px;background:#e6ddca}.menu-toggle span:last-child{width:19px;align-self:flex-end}.menu[hidden]{display:none}.menu{position:fixed;inset:0;background:var(--green-deep);z-index:30;color:var(--cream);padding:80px 40px}.menu-inner{max-width:420px;margin:auto;padding-top:8vh}.menu-inner>a{display:block;margin:35px 0;font-family:var(--calligraphy);font-size:29px}.menu .en{font-size:16px;color:#c2b9a7;margin-top:8px;font-style:italic}.menu-note{font-family:var(--serif);font-size:10px;letter-spacing:.2em;color:#bcaa86}.menu-close{position:absolute;right:24px;top:20px;width:44px;height:44px;font-size:33px;background:none;border:0;color:#fff3df}.menu-motto{font:italic 27px var(--serif);color:#d2b985;padding-top:60px}
.hero{position:relative;overflow:hidden;min-height:840px;background:radial-gradient(ellipse at 80% 25%,#3b4d3d33,transparent 56%),var(--green);color:var(--cream)}.hero:after,.paper:after,.company:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='170' height='170'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.83' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.6' filter='url(%23n)'/%3E%3C/svg%3E")}.hero-inner{position:relative;z-index:2;padding:125px 33px 70px;max-width:800px}.eyebrow{margin:0 0 17px;font-size:10px;letter-spacing:.19em;color:#d0c8b3}.eyebrow .en{font-family:var(--serif);font-size:9px;letter-spacing:.09em;color:#c4bba8!important;margin-top:7px}.hero-logo{width:89px;height:auto;object-fit:contain;margin-left:-11px;margin-bottom:23px}.hero h1{font:400 33px/1.75 var(--calligraphy);letter-spacing:.12em;margin:0;white-space:nowrap}.hero-motto{font:italic 25px/1.5 var(--serif);color:#d8bf8f;margin:12px 0 30px}.hero-description{font-size:12px;line-height:1.9;color:#ddd5c5;letter-spacing:.08em;margin:0 0 32px}.hero-description .en{font-size:12px;letter-spacing:.01em;font-style:italic;color:#c6bfad!important;margin-top:5px}.quiet-link{display:flex;align-items:center;justify-content:space-between;gap:26px;width:210px;border:0;border-bottom:1px solid #c4ae805e;background:none;padding:0 0 13px;text-align:left;color:inherit;font-size:13px;letter-spacing:.08em}.quiet-link .en{font-size:11px;font-style:italic;letter-spacing:.02em;margin-top:5px;color:#c0b69f!important}.arrow{font:26px var(--serif);color:#d5bb86}.hero-orbit{position:absolute;width:340px;right:-125px;top:135px;opacity:.88;pointer-events:none}.hero-orbit svg{width:100%;height:auto}.amber-shape{opacity:.82}.hero-foot{position:absolute;bottom:27px;left:33px;right:28px;display:flex;justify-content:space-between;font:8px var(--serif);letter-spacing:.2em;color:#d1c8b4}.scroll-note{display:flex;align-items:center;gap:9px}.scroll-note .zh{font:9px var(--body);letter-spacing:.07em}.scroll-note .en{display:none}.scroll-note i{height:26px;width:1px;background:#d1c8b4;display:block;position:relative;transform:translateY(6px)}.scroll-note i:after{position:absolute;content:"";width:4px;height:4px;bottom:0;left:-2px;border-right:1px solid;border-bottom:1px solid;transform:rotate(45deg)}
.paper{background:var(--paper);position:relative;overflow:hidden}.section-kicker{display:flex;align-items:center;gap:14px;font-size:10px;letter-spacing:.13em;position:relative;z-index:1}.section-kicker>span:first-child{font:italic 12px var(--serif);padding-right:4px;color:#ab9066}.section-kicker .en{font-size:8px;letter-spacing:.1em;margin-left:auto;color:#756c5c!important}.about{padding:74px 33px 123px;min-height:565px}.about h2{position:relative;z-index:1;font:400 32px/1.75 var(--calligraphy);letter-spacing:.1em;margin:42px 0 27px}.about h2 .en{font-size:23px;line-height:1.4;letter-spacing:0;font-style:italic;margin:16px 0 0;color:#8a7960}.about-copy{position:relative;z-index:1;max-width:380px}.about-copy p{font-size:12px;line-height:2.2;letter-spacing:.035em;margin:0}.about-copy p.en{font-size:13px;line-height:1.7;letter-spacing:0;margin-top:17px;max-width:300px}.about-stroke{width:290px;position:absolute;right:-23px;bottom:13px;color:#b79b72;opacity:.7;transform:rotate(-7deg)}.small-seal{position:absolute;bottom:64px;right:41px;color:#996a49;font:12px/1.1 var(--calligraphy);border:1px solid #a17b5d;padding:4px 3px;transform:rotate(4deg);opacity:.55}
.moments{padding:35px 33px 50px}.moments h2{font:400 32px/1.75 var(--calligraphy);letter-spacing:.1em;margin:40px 0 35px}.moments h2 .en{font:italic 22px/1.35 var(--serif);letter-spacing:0;margin-top:12px;color:#8a7960}.moment-list{margin-top:50px}.moment{position:relative;min-height:230px}.moment-number{position:absolute;top:8px;left:0;font:italic 11px var(--serif);color:#9e896a;letter-spacing:.09em}.moment-art{position:absolute;stroke:#a18b66;stroke-width:1;fill:none;width:116px;height:128px;top:0;right:-3px;transform:rotate(6deg)}.moment-text{padding-top:96px;position:relative;z-index:1}.moment h3{font:400 20px/1.5 var(--calligraphy);letter-spacing:.06em;margin:0 0 11px}.moment h3 .en{font:italic 15px/1.5 var(--serif);letter-spacing:0;color:#887b66}.moment p{font-size:11px;line-height:1.8;margin:0;letter-spacing:.04em}.moment p .en{font-size:11px;letter-spacing:0;color:#777264;margin-top:4px}.moment-two{margin-left:50px;margin-top:17px;min-height:245px}.moment-two .moment-art{right:10px;top:-10px;transform:rotate(-6deg)}.moment-three{margin-top:4px;min-height:225px}.moment-three .moment-art{right:2px;top:-3px}.company{background:#e9dfcb;position:relative;overflow:hidden;padding:80px 33px 79px}.company>p{position:relative;font:italic 44px/1.25 var(--serif);letter-spacing:-.02em;color:#74623f;margin:0;z-index:1}.company>p>span{display:block;margin-left:30px}.company-caption{font-size:11px;line-height:1.9;letter-spacing:.09em;margin-top:31px;color:#74674e;position:relative;z-index:1}.company-caption .en{font-size:12px;font-style:italic;letter-spacing:0;margin-top:6px;color:#74674e}.company-mark{position:absolute;width:235px;height:235px;border:1px solid #bd995b;border-radius:50%;right:-125px;top:-135px;opacity:.6}
.visit{padding:66px 33px 25px;background:#272e27;color:var(--cream)}.visit .section-kicker .en{color:#bcb09b!important}.visit h2{font:400 30px/1.7 var(--calligraphy);letter-spacing:.08em;margin:42px 0 22px}.visit h2 .en{font:italic 22px/1.4 var(--serif);letter-spacing:0;color:#c1b79f;margin-top:14px}.visit-copy{font-size:11px;line-height:1.9;letter-spacing:.04em;color:#d8cfbd;margin-bottom:33px}.visit-copy .en{font-size:12px;letter-spacing:0;max-width:250px;margin-top:6px;color:#c1b79f!important}.contact-link{width:100%;max-width:320px;padding-bottom:17px}.visit-info{display:flex;align-items:flex-start;justify-content:space-between;margin-top:58px;font-size:11px;letter-spacing:.06em}.visit-info p{margin:0;line-height:1.8}.visit-info .en{font-size:11px;letter-spacing:0;color:#bcb09b!important}.menu-preview{border:0;background:none;color:var(--cream);padding:0 0 7px;text-align:left;position:relative;padding-right:26px;line-height:1.8;font-size:11px}.menu-preview>span:last-child{position:absolute;right:0;top:6px;font-size:20px;color:#c8b182}.visit-note{font-size:10px;color:#c1b79f;line-height:1.8;margin:28px 0 52px}.visit-note .en{font-size:10px;max-width:260px;color:#a99f8e!important;margin-top:4px}footer{border-top:1px solid #b5a47a40;padding-top:21px;display:grid;grid-template-columns:1fr auto;align-items:center;font:italic 15px var(--serif);color:#c7bda7}footer>a{font-size:24px;padding:4px 10px}footer small{display:flex;grid-column:1/-1;justify-content:space-between;align-items:center;margin-top:26px;color:#a89f8d;font:8px/1.8 var(--body);letter-spacing:.06em}footer small .en{margin-right:auto;margin-left:7px;font-size:9px}
dialog{width:calc(100% - 44px);max-width:410px;background:var(--paper);border:0;color:var(--ink);padding:43px 28px 28px;box-shadow:0 30px 100px #0005}dialog::backdrop{background:#14231dcc;backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:11px;top:7px;border:0;background:none;width:44px;height:44px;font-size:29px;color:#827456}.dialog-kicker{font:10px var(--serif);letter-spacing:.16em;color:#8d7856;margin:0 0 26px}dialog h2{font:26px/1.7 var(--calligraphy);font-weight:400;margin:0 0 25px}dialog h2 .en{font:italic 24px/1.4 var(--serif);color:#8d7856;margin-top:8px}dialog p{font-size:12px;line-height:1.8}dialog p .en{font-size:13px;margin-top:5px}.line-id{font:26px var(--serif);margin:8px 0 24px}.copy-line,.dialog-back{display:flex;align-items:center;gap:10px;flex-wrap:wrap;width:100%;background:var(--green);color:var(--cream);border:0;padding:15px 16px;font-size:12px}.copy-line .en,.dialog-back .en{font-size:12px;color:#d4c8ae!important}.copy-line>span:last-child,.dialog-back>span:last-child{margin-left:auto;font-size:23px}.copy-status{min-height:20px;font-size:11px!important}.dialog-note{font-size:10px!important;color:#827965;border-top:1px solid #d5c9b7;padding-top:17px}.dialog-note .en{font-size:11px}.menu-dialog-copy{margin-bottom:30px!important}
body.english .zh{display:none}body.english .english-hero{display:block;white-space:normal;font:italic 66px/1.02 var(--serif);letter-spacing:-.025em}body.english .hero-motto{display:none}body.english .hero h1{margin:0 0 30px;white-space:normal}body.english .hero-logo{margin-bottom:29px}body.english .hero-description .en{font-size:15px}body.english .eyebrow .en{font-size:10px;color:#d0c8b3!important}body.english .quiet-link .en{font-size:15px}body.english .about h2 .en,body.english .moments h2 .en{font-size:37px;margin-top:0;line-height:1.22}body.english .about-copy p.en{font-size:16px;line-height:1.7}body.english .moment h3 .en{font-size:20px}body.english .moment p .en{font-size:13px}body.english .visit h2 .en{font-size:33px;line-height:1.3}body.english .visit-copy .en{font-size:14px}body.english .scroll-note .en{display:block;font-size:10px}body.english .menu .en{font-size:28px}body.english .section-kicker .en{margin-left:0}body.english .visit-note .en{font-size:12px}body.english .visit-info .en{font-size:13px}body.english footer small .en{margin-left:0}body.menu-open{overflow:hidden}
@media(min-width:700px){.header{height:105px;padding:30px 7%}.hero{min-height:930px}.hero-inner{padding:145px 10% 100px}.hero-logo{width:115px;margin-bottom:20px}.hero h1{font-size:44px}.hero-orbit{width:540px;right:3%;top:165px}.hero-motto{font-size:31px;margin:9px 0 30px}.hero-description{font-size:14px}.hero-description .en{font-size:15px}.hero-foot{left:10%;right:8%;bottom:38px}.about,.moments,.company,.visit{padding-left:10%;padding-right:10%}.about{padding-top:100px;min-height:640px}.about h2{font-size:41px}.about h2 .en{font-size:29px}.about-copy{margin-left:36%;margin-top:-80px;max-width:500px}.about-copy p{font-size:15px}.about-copy p.en{font-size:16px;max-width:470px}.about-stroke{width:420px;right:12%;bottom:26px}.small-seal{right:12%;bottom:97px}.section-kicker{max-width:1000px}.section-kicker .en{margin-left:15px}.moments{padding-top:50px;padding-bottom:100px}.moments h2{font-size:40px}.moment-list{display:grid;grid-template-columns:1fr 1fr 1fr;gap:45px;margin-top:80px}.moment{min-height:260px}.moment-two{margin-left:0;margin-top:85px}.moment-three{margin-top:165px}.moment-art{right:12%;width:130px}.moment-text{padding-top:126px}.moment h3{font-size:22px}.moment h3 .en{font-size:18px}.moment p{font-size:13px}.moment p .en{font-size:13px}.company{padding-top:110px;padding-bottom:100px;display:flex;align-items:center;justify-content:space-between;gap:40px}.company>p{font-size:64px}.company>p>span{margin-left:55px}.company-caption{font-size:13px;margin-top:60px}.company-caption .en{font-size:15px}.visit{padding-top:95px}.visit h2{font-size:40px}.visit h2 .en{font-size:28px}.visit-copy{font-size:13px}.visit-copy .en{font-size:15px;max-width:380px}.visit-info{max-width:630px}.contact-link{max-width:440px}.visit-note{font-size:12px}.visit-note .en{font-size:13px;max-width:440px}footer{margin-top:55px}footer small{margin-bottom:15px}body.english .hero h1{max-width:500px}body.english .english-hero{font-size:90px}.moment-three .moment-art{right:2%}}
@media(max-width:359px){.header{padding-left:23px;padding-right:23px}.header-controls{gap:11px}.wordmark{font-size:19px}.hero-inner{padding-left:27px;padding-right:27px}.hero h1{font-size:28px;letter-spacing:.1em}.hero-orbit{right:-157px}.hero-foot{left:27px;right:25px}.hero{min-height:820px}.about,.moments,.company,.visit{padding-left:27px;padding-right:27px}.section-kicker{gap:9px}.section-kicker .en{font-size:7px}.company>p{font-size:36px}.company>p>span{margin-left:19px}.about h2,.moments h2{font-size:29px}.moment-two{margin-left:23px}.moment p .en{max-width:240px}.visit h2{font-size:27px}.hero-description{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
