:root{
  --ink:#14161a; --ink2:#2b2f34; --paper:#f7f3ea; --stone:#ece6d9;
  --gold:#b3935a; --gold-d:#8c6f3e; --slate:#5c6b73; --line:#d8d0c0; --white:#fff;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:"Noto Sans SC",sans-serif;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;line-height:1.7}
.en{font-family:"Cormorant Garamond",serif}
.cn{font-family:"Noto Serif SC",serif}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:1180px;margin:0 auto;padding:0 40px}
.eyebrow{font-family:"Cormorant Garamond",serif;letter-spacing:.4em;text-transform:uppercase;color:var(--gold-d);font-size:13px}
.rule{width:46px;height:1px;background:var(--gold);margin:18px 0}
.rule.c{margin:18px auto}

/* buttons */
.btn{display:inline-block;border:1px solid var(--gold);color:var(--gold);padding:11px 26px;font-family:"Cormorant Garamond",serif;letter-spacing:.18em;font-size:14px;text-transform:uppercase;transition:.25s;cursor:pointer;background:transparent}
.btn:hover{background:var(--gold);color:var(--ink)}
.btn-dark{border-color:var(--ink);color:var(--ink)}
.btn-dark:hover{background:var(--ink);color:var(--paper)}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(20,22,26,.55);backdrop-filter:blur(10px);transition:background .3s}
nav.solid{background:rgba(20,22,26,.96)}
nav .wrap{display:flex;align-items:center;justify-content:space-between;height:72px}
.logo{font-family:"Cormorant Garamond",serif;font-size:22px;letter-spacing:.24em;color:var(--paper)}
nav ul{display:flex;gap:30px;list-style:none}
nav ul a{font-size:12px;letter-spacing:.14em;color:#d3cebf;text-transform:uppercase;transition:.2s}
nav ul a:hover{color:var(--gold)}
.nav-right{display:flex;align-items:center;gap:18px}
.lang{background:none;border:none;color:var(--gold);font-family:"Cormorant Garamond",serif;letter-spacing:.1em;font-size:14px;cursor:pointer;padding:4px}
.burger{display:none;background:none;border:none;color:var(--paper);font-size:22px;cursor:pointer}

/* HERO */
.hero{height:100vh;min-height:600px;background:linear-gradient(160deg,#23262b,#14161a 55%,#0b0c0e);color:var(--paper);display:flex;align-items:center;position:relative;overflow:hidden}
.hero .bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.5}
.hero .veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,12,14,.85),rgba(11,12,14,.35))}
.hero .inner{position:relative;z-index:2}
.hero .eyebrow{color:var(--gold)}
.hero h1{font-family:"Cormorant Garamond",serif;font-weight:400;font-size:76px;line-height:1.04;margin:22px 0 8px}
.hero .h1cn{font-family:"Noto Serif SC",serif;font-weight:300;font-size:24px;letter-spacing:.14em;color:#cfcabe;margin-bottom:22px}
.hero p{font-size:14.5px;line-height:1.95;color:#cfcabe;max-width:520px}
.scrolldown{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);color:#9a958a;font-family:"Cormorant Garamond",serif;letter-spacing:.3em;font-size:11px;z-index:2}

/* sections */
section.block{padding:112px 0}
.sec-dark{background:var(--ink);color:var(--paper)}
.sec-dark2{background:#0c0d0f;color:var(--paper)}
.sec-stone{background:var(--stone)}
.sec-head{text-align:center;margin-bottom:64px}
.sec-head .rule{margin:16px auto}
.sec-head h2{font-family:"Cormorant Garamond",serif;font-weight:500;font-size:48px;margin-top:10px}
.sec-head .h2cn{font-family:"Noto Serif SC",serif;font-size:17px;letter-spacing:.22em;color:var(--slate);font-weight:400;margin-top:8px}
.sec-dark .sec-head .eyebrow,.sec-dark2 .sec-head .eyebrow{color:var(--gold)}
.sec-dark .sec-head .h2cn{color:#a59f93}

/* The House intro */
.house{text-align:center}
.house h2{font-family:"Cormorant Garamond",serif;font-size:40px;font-weight:500;max-width:760px;margin:14px auto 0}
.house .h2cn{font-family:"Noto Serif SC",serif;font-size:20px;color:var(--ink2);margin:10px 0 22px;font-weight:400}
.house p{max-width:680px;margin:0 auto;font-size:14.5px;color:var(--ink2);line-height:2}

/* Collections — alternating rows */
.collection{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;margin-bottom:96px}
.collection:last-child{margin-bottom:0}
.collection.rev .media{order:2}
.collection .media{aspect-ratio:4/5;background:linear-gradient(160deg,#e6e0d3,#d3ccbc);background-size:cover;background-position:center;position:relative}
.collection.dark .media{background:linear-gradient(160deg,#2a2d32,#16181c)}
.collection .num{font-family:"Cormorant Garamond",serif;font-size:13px;letter-spacing:.3em;color:var(--gold-d)}
.collection h3{font-family:"Cormorant Garamond",serif;font-size:52px;font-weight:500;line-height:1;margin:6px 0 2px}
.collection .zh{font-family:"Noto Serif SC",serif;font-size:16px;letter-spacing:.2em;color:var(--slate);margin-bottom:18px}
.collection .tagline{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:23px;color:var(--gold-d);margin-bottom:18px;line-height:1.4}
.collection p{font-size:14px;color:var(--ink2);line-height:1.95;max-width:460px}
.collection .meta{display:flex;align-items:center;gap:18px;margin-top:24px}
.collection .spec{font-family:"Cormorant Garamond",serif;font-size:14px;letter-spacing:.08em;color:var(--slate)}
.coming-badge{display:inline-block;border:1px solid var(--slate);color:var(--slate);font-family:"Cormorant Garamond",serif;font-size:12px;letter-spacing:.2em;text-transform:uppercase;padding:6px 14px}
.media .coming-tag{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#8b8170;font-family:"Cormorant Garamond",serif;letter-spacing:.3em;font-size:13px;text-transform:uppercase}

/* Finishes */
.finishes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}
.fin{border-top:1px solid var(--line);padding-top:22px}
.fin h4{font-family:"Cormorant Garamond",serif;font-size:24px;font-weight:500}
.fin .zh{font-family:"Noto Serif SC",serif;font-size:13px;letter-spacing:.18em;color:var(--slate);margin:3px 0 12px}
.fin p{font-size:13px;color:var(--ink2);line-height:1.85}
.fin-note{text-align:center;margin-top:40px;font-size:12.5px;letter-spacing:.06em;color:var(--slate)}

/* Craft */
.craft-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.craft-step .ph{aspect-ratio:1/1;background:linear-gradient(135deg,#23262b,#15171a);border:1px solid #2c2f34;display:flex;align-items:flex-end;padding:16px;color:#6f757c;font-family:"Cormorant Garamond",serif;font-size:12px;letter-spacing:.18em}
.craft-step h4{font-family:"Cormorant Garamond",serif;font-size:21px;margin:16px 0 4px;font-weight:500}
.craft-step .zh{font-family:"Noto Serif SC",serif;font-size:13px;color:var(--gold);margin-bottom:8px}
.craft-step p{font-size:12.5px;line-height:1.8;color:#b9b4a8}
.craft-foot{text-align:center;margin-top:44px;font-family:"Cormorant Garamond",serif;font-size:13px;letter-spacing:.16em;color:#9a958a}

/* Design (manifesto) */
.manifesto{max-width:760px;margin:0 auto;text-align:center}
.manifesto h2{font-family:"Cormorant Garamond",serif;font-size:44px;font-weight:500;margin:12px 0}
.manifesto .h2cn{font-family:"Noto Serif SC",serif;font-size:19px;color:var(--ink2);font-weight:400;margin-bottom:26px}
.manifesto p{font-size:15px;line-height:2.05;color:var(--ink2)}
.manifesto .sign{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:16px;color:var(--gold-d);margin-top:26px;letter-spacing:.04em}

/* Heritage */
.heritage-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:60px;align-items:center}
.heritage-grid .ph{aspect-ratio:4/3;background:linear-gradient(135deg,#ddd6c7,#cabfac);background-size:cover;background-position:center}
.heritage-grid h2{font-family:"Cormorant Garamond",serif;font-size:42px;font-weight:500;line-height:1.1}
.heritage-grid .h2cn{font-family:"Noto Serif SC",serif;font-size:17px;color:var(--slate);margin-top:6px;font-weight:400}
.heritage-grid p{font-size:14px;line-height:2;color:var(--ink2);margin-top:18px}

/* Contact + form */
.contact{text-align:center}
.contact h2{font-family:"Cormorant Garamond",serif;font-size:44px;font-weight:500}
.contact .h2cn{font-family:"Noto Serif SC",serif;font-size:18px;color:#cfcabe;font-weight:400;margin-top:8px}
.contact .blurb{font-size:13.5px;color:#cfcabe;max-width:560px;margin:18px auto 0;line-height:1.9}
.contact .emails{font-family:"Cormorant Garamond",serif;font-size:18px;letter-spacing:.06em;color:var(--gold);margin-top:22px;line-height:2}
.inq{max-width:620px;margin:38px auto 0;text-align:left}
.inq-row{display:flex;gap:14px;margin-bottom:14px}
.inq input,.inq textarea{width:100%;background:rgba(255,255,255,.05);border:1px solid rgba(179,147,90,.4);border-radius:2px;padding:13px 15px;color:var(--paper);font-size:14px;font-family:inherit;outline:none}
.inq input::placeholder,.inq textarea::placeholder{color:#8b8576}
.inq input:focus,.inq textarea:focus{border-color:var(--gold)}
.inq textarea{margin-bottom:14px;resize:vertical}
.inq .center{text-align:center}
#inqResult{margin-top:14px;font-size:13px;text-align:center;min-height:18px}

/* footer */
footer{background:#0a0b0d;color:#8b9097;text-align:center;padding:46px 0;font-size:12px;letter-spacing:.08em}
footer .en{color:var(--gold);font-size:19px;letter-spacing:.24em;display:block;margin-bottom:12px}
footer .fnote{display:block;margin-top:10px;color:#565b62}

/* chat widget */
.chat-fab{position:fixed;right:22px;bottom:22px;z-index:90;background:var(--gold);color:var(--ink);border:none;padding:12px 22px;font-family:"Cormorant Garamond",serif;letter-spacing:.14em;font-size:14px;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.3)}
.chat-fab:hover{background:#c6a767}
.chat-panel{position:fixed;right:22px;bottom:22px;z-index:95;width:360px;max-width:calc(100vw - 32px);height:520px;max-height:calc(100vh - 40px);background:var(--paper);border-radius:4px;box-shadow:0 24px 70px rgba(0,0,0,.4);display:flex;flex-direction:column;overflow:hidden}
.chat-panel[hidden]{display:none}
.chat-head{background:var(--ink);color:var(--paper);padding:15px 18px;display:flex;justify-content:space-between;align-items:center;font-family:"Cormorant Garamond",serif;letter-spacing:.12em;font-size:16px}
.chat-head button{background:none;border:none;color:var(--paper);font-size:22px;cursor:pointer}
.chat-body{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}
.msg{max-width:84%;padding:10px 13px;font-size:13.5px;line-height:1.6;border-radius:2px;white-space:pre-wrap;word-break:break-word}
.msg.bot{background:#fff;border:1px solid var(--line);align-self:flex-start}
.msg.me{background:var(--ink);color:var(--paper);align-self:flex-end}
.msg.typing{color:var(--slate);font-style:italic}
.chat-input{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line);background:var(--paper)}
.chat-input input{flex:1;border:1px solid var(--line);border-radius:2px;padding:10px 13px;font-size:13.5px;outline:none;background:#fff}
.chat-input input:focus{border-color:var(--gold)}
.chat-input button{background:var(--gold);color:var(--ink);border:none;padding:10px 16px;font-family:"Cormorant Garamond",serif;letter-spacing:.1em;cursor:pointer}

.clickable{cursor:pointer}

/* responsive */
@media(max-width:880px){
  nav ul{position:fixed;top:72px;right:0;width:240px;height:calc(100vh - 72px);background:var(--ink);flex-direction:column;padding:30px;gap:22px;transform:translateX(100%);transition:.25s}
  nav ul.open{transform:translateX(0)}
  .burger{display:block}
  .wrap{padding:0 24px}
  .hero h1{font-size:46px}
  .sec-head h2{font-size:34px}
  .collection{grid-template-columns:1fr;gap:28px;margin-bottom:64px}
  .collection.rev .media{order:0}
  .collection h3{font-size:40px}
  .finishes-grid,.craft-grid{grid-template-columns:1fr 1fr;gap:22px}
  .heritage-grid{grid-template-columns:1fr;gap:28px}
  .inq-row{flex-direction:column}
}
