:root{--ink:#171411;--paper:#f3efe7;--red:#751f20;--gold:#b9975b;--muted:#8e8579;--line:rgba(23,20,17,.16)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans SC",sans-serif;font-weight:300}button,a{font:inherit}button{cursor:pointer}.site-header{position:fixed;z-index:50;top:0;left:0;right:0;height:84px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;color:#fff;border-bottom:1px solid rgba(255,255,255,.18);transition:.35s}.site-header.scrolled{height:70px;background:rgba(20,16,13,.94);backdrop-filter:blur(14px)}.brand{color:inherit;text-decoration:none;display:flex;align-items:center;gap:13px}.brand span{font:600 28px "Noto Serif SC";letter-spacing:.15em}.brand small{font-size:10px;letter-spacing:.22em;border-left:1px solid #ffffff55;padding-left:12px}.site-header nav{display:flex;gap:2.5vw}.site-header nav a{color:inherit;text-decoration:none;font-size:13px;letter-spacing:.12em}.nav-cta{color:#fff;background:transparent;border:1px solid #ffffff88;padding:10px 18px}.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:22px}.hero{height:100svh;min-height:720px;position:relative;color:#fff;display:flex;align-items:center;padding:120px 8vw}.hero-media{position:absolute;inset:0;background:url('assets/hero-banquet.jpg') center/cover no-repeat;transform:scale(1.01)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,8,6,.87) 0%,rgba(12,8,6,.45) 50%,rgba(12,8,6,.2)),linear-gradient(0deg,rgba(0,0,0,.72),transparent 42%)}.hero-content{position:relative;z-index:2;max-width:800px}.eyebrow,.section-kicker{font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);font-weight:500}.hero h1,.section h2,.reserve-banner h2,dialog h2{font:500 clamp(48px,6.6vw,92px)/1.2 "Noto Serif SC";letter-spacing:.06em;margin:24px 0}.hero h1 em{font-style:normal;color:#d9bd88}.hero-copy{font:300 17px/2 "Noto Serif SC";letter-spacing:.08em}.hero-actions{display:flex;gap:16px;margin-top:38px}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid;padding:14px 25px;font-size:13px;letter-spacing:.12em}.primary{background:var(--red);border-color:var(--red);color:#fff}.ghost{border-color:#ffffff88;color:#fff;background:transparent}.hero-facts{position:absolute;z-index:2;bottom:42px;right:6vw;display:flex;align-items:center;gap:30px}.hero-facts div{display:flex;flex-direction:column}.hero-facts strong{font:500 22px "Noto Serif SC";color:#e4c993}.hero-facts span{font-size:11px;letter-spacing:.12em;margin-top:5px}.hero-facts i{width:1px;height:32px;background:#ffffff55}.scroll-hint{position:absolute;z-index:2;bottom:38px;left:8vw;color:#ffffffaa;text-decoration:none;font-size:10px;letter-spacing:.2em}.scroll-hint span{margin-left:12px}.section{padding:130px 8vw}.intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:10vw}.section h2{font-size:clamp(38px,4.4vw,66px);margin:20px 0}.section h2 span{color:var(--red)}.intro-copy{padding-top:50px}.intro-copy p,.section-heading>p,.cuisine-copy>p,.gallery-head>p{font:300 15px/2 "Noto Serif SC";color:#5d554c}.text-link{display:inline-block;margin-top:16px;background:none;border:0;border-bottom:1px solid var(--gold);padding:5px 0;color:var(--ink);text-decoration:none}.rooms{background:#1d1a17;color:#f4efe7}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:60px}.section-heading>p{max-width:440px;color:#a9a096}.rooms .section-kicker{color:#bd9d66}.rooms h2 span{color:#d4b578}.room-stage{display:grid;grid-template-columns:1fr 1fr;min-height:500px;border:1px solid #ffffff22}.room-visual{position:relative;padding:60px;background:linear-gradient(135deg,#642023,#2a1717);overflow:hidden}.room-visual:after{content:"禧";position:absolute;right:-20px;bottom:-100px;font:500 360px "Noto Serif SC";color:#ffffff08}.room-number{font:500 clamp(120px,18vw,260px)/1 "Noto Serif SC";color:#c6a66e}.room-visual p{letter-spacing:.5em;color:#ffffff77}.room-options{padding:25px 50px;display:flex;flex-direction:column;justify-content:center}.room-options article{display:grid;grid-template-columns:45px 1fr 30px;align-items:center;gap:16px;padding:32px 0;border-bottom:1px solid #ffffff22;color:#ffffff77;cursor:pointer;transition:.25s}.room-options article.active,.room-options article:hover{color:#fff;transform:translateX(8px)}.room-options span{font-size:11px;color:#b59665}.room-options h3{font:500 24px "Noto Serif SC";margin:0 0 8px}.room-options p{font-size:12px;margin:0}.occasion-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}.occasion{min-height:550px;position:relative;padding:30px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;background-size:cover;background-position:center;overflow:hidden}.occasion:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.82),rgba(0,0,0,.08));transition:.35s}.occasion:hover:before{background:linear-gradient(0deg,rgba(92,20,22,.88),rgba(0,0,0,.05))}.occasion.business{background-image:url('assets/ceremony.jpg')}.occasion.family{background-image:url('assets/yunnan-flavor.jpg')}.occasion.celebration{background-image:url('assets/seasonal-dish.jpg')}.occasion>span,.occasion>div{position:relative}.occasion>span{font-size:10px;letter-spacing:.3em}.occasion h3{font:500 30px "Noto Serif SC";margin:0}.occasion p{font-size:13px;line-height:1.9;color:#ffffffcc}.occasion button{color:#fff;background:none;border:0;padding:0}.cuisine{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:center;background:#e7dfd2;position:relative}.cuisine-image img,.service-image img{width:100%;display:block;aspect-ratio:1/1.12;object-fit:cover}.cuisine-note{position:absolute;right:5vw;bottom:70px;background:var(--red);color:#fff;padding:22px 28px;display:flex;gap:18px}.cuisine-note span{font:500 24px "Noto Serif SC";color:#dfc28e}.cuisine-note p{font-size:11px;line-height:1.8;margin:0}.gallery-head{display:flex;align-items:end;justify-content:space-between}.gallery-head>p{max-width:400px}.dish-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-template-rows:360px 360px;gap:14px}.dish-grid figure{margin:0;position:relative;overflow:hidden;background:#222}.dish-grid .wide{grid-row:span 2}.dish-grid figure:last-child{grid-column:2/4}.dish-grid img{width:100%;height:100%;object-fit:cover;transition:.6s}.dish-grid figure:hover img{transform:scale(1.04)}.dish-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:45px 25px 22px;background:linear-gradient(transparent,rgba(0,0,0,.8));color:#fff;display:flex;justify-content:space-between}.dish-grid b{font:500 20px "Noto Serif SC"}.dish-grid span{font-size:11px;letter-spacing:.15em}.service{background:#201d1a;color:#eee;display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center}.service h2 span{color:#d4b578}.service-copy ol{list-style:none;padding:0;margin:35px 0 0}.service-copy li{display:flex;gap:24px;padding:20px 0;border-top:1px solid #ffffff1f}.service-copy li>b{color:#b99963;font-size:11px}.service-copy h3{font:500 18px "Noto Serif SC";margin:0 0 6px}.service-copy li p{font-size:12px;color:#ffffff88;margin:0}.reserve-banner{padding:140px 8vw;background:linear-gradient(90deg,rgba(75,17,18,.95),rgba(75,17,18,.64)),url('assets/premium-seafood.jpg') center/cover;color:#fff;text-align:center}.reserve-banner h2{font-size:clamp(36px,4vw,58px)}.reserve-banner p{font-family:"Noto Serif SC"}.primary.light{background:#e5d0aa;border-color:#e5d0aa;color:#4d1818;margin-top:24px}footer{background:#100f0e;color:#c2bbb1;padding:70px 8vw 35px;display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:50px;font-size:12px}footer p{color:#806f5b;letter-spacing:.15em}footer button{background:none;border:0;color:#ddd;padding:0;border-bottom:1px solid #666}.footer-brand{display:flex;flex-direction:column}.footer-brand strong{font:600 40px "Noto Serif SC";letter-spacing:.2em;color:#d5b77f}.copyright{grid-column:1/-1;border-top:1px solid #ffffff18;padding-top:25px;color:#5e5852}dialog{width:min(580px,92vw);max-height:92vh;overflow:auto;border:0;padding:50px;background:#f4efe6;color:var(--ink);box-shadow:0 20px 80px #0008}dialog::backdrop{background:#0b0807cc;backdrop-filter:blur(5px)}dialog h2{font-size:36px;margin:14px 0}.dialog-close{position:absolute;right:20px;top:15px;border:0;background:none;font-size:28px}.dialog-intro{font-size:13px;line-height:1.8;color:#756b61}form label{display:block;font-size:11px;letter-spacing:.08em;margin:16px 0}input,select,textarea{width:100%;padding:12px 0;border:0;border-bottom:1px solid #bcb1a3;background:transparent;border-radius:0;outline:none;margin-top:6px}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}form .button{width:100%;margin-top:15px}form small{display:block;margin-top:12px;color:#968b7e}.form-success{text-align:center;padding:50px 0}.form-success span{font-size:42px;color:var(--red)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}@media(max-width:900px){.site-header nav,.nav-cta{display:none}.menu-toggle{display:block}.site-header.menu-open nav{display:flex;position:absolute;top:70px;left:0;right:0;background:#171311;padding:25px 5vw;flex-direction:column}.hero{padding:110px 6vw}.hero-facts{left:6vw;right:auto;gap:15px}.scroll-hint{display:none}.section{padding:90px 6vw}.intro-grid,.room-stage,.cuisine,.service{grid-template-columns:1fr}.section-heading,.gallery-head{align-items:start;flex-direction:column}.occasion-grid{grid-template-columns:1fr}.occasion{min-height:420px}.room-options{padding:20px 30px}.dish-grid{grid-template-columns:1fr 1fr;grid-template-rows:400px 300px 300px}.dish-grid .wide{grid-column:1/-1;grid-row:auto}.dish-grid figure:last-child{grid-column:1/-1}.cuisine-note{position:static;margin-left:auto}.service-image{order:2}footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}@media(max-width:560px){.hero h1{font-size:46px}.hero-copy br{display:none}.hero-facts div:nth-of-type(2),.hero-facts i:nth-of-type(2){display:none}.intro-grid{gap:20px}.occasion{min-height:380px}.dish-grid{display:block}.dish-grid figure{height:360px;margin-bottom:10px}.form-row{grid-template-columns:1fr}footer{grid-template-columns:1fr}.copyright{grid-column:1}.cuisine-note{margin:0}.room-visual{min-height:340px}.section-heading{margin-bottom:35px}}
