:root{--ink:#203b33;--paper:#f6f3ed;--gold:#ac8d58;--line:#dcd8cd}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,"Microsoft YaHei",sans-serif;line-height:1.8}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #ac8d58;outline-offset:5px}header{position:sticky;top:0;z-index:10;background:#f6f3edf5;display:flex;justify-content:space-between;align-items:center;padding:18px 6vw;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.wordmark{font-family:"Songti SC",SimSun,serif;font-size:24px;font-weight:700;letter-spacing:3px}.wordmark small{display:block;font:9px/1.8 system-ui;letter-spacing:5px}nav{display:flex;align-items:center;gap:28px;font-size:13px}.nav-cta,.solid{background:var(--ink);color:white;border:1px solid var(--ink);padding:10px 22px}.menu-toggle{display:none;border:1px solid var(--line);background:none;padding:5px 12px}.hero{position:relative;height:min(780px,84vh);min-height:530px;overflow:hidden;background:#4f5145}.hero img{width:100%;height:100%;object-fit:cover;object-position:center 55%}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#10271cb3,transparent 90%),linear-gradient(0deg,#14261b88,transparent 60%)}.hero-copy{position:absolute;z-index:1;left:8vw;bottom:12%;color:#fff;max-width:650px}.eyebrow,.kicker{font-size:11px;letter-spacing:4px;text-transform:uppercase}.hero h1{font:clamp(38px,4.8vw,68px)/1.35 "Songti SC",SimSun,serif;white-space:pre-line;letter-spacing:3px;margin:24px 0}.hero-copy p{max-width:480px;color:#f5f3e9d9;font-size:14px}.light-button{color:var(--ink);display:inline-block;background:#f6f3ed;border:0;padding:13px 25px;margin-top:16px}.hero-note{position:absolute;right:5vw;bottom:35px;z-index:1;color:white;font-size:10px;letter-spacing:3px}.section{padding:90px 8vw}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.section h2{font:36px/1.4 "Songti SC",SimSun,serif;margin:10px 0}.section-head p{font-size:13px;max-width:360px;color:#657369}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.intro-image{width:100%;height:480px;object-fit:cover}.intro-copy{max-width:460px}.intro-copy p{color:#667268;font-size:14px}.text-link{display:inline-block;border-bottom:1px solid #a3906d;padding-bottom:4px;font-size:13px;margin-top:15px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.service{padding:38px;background:var(--paper);transition:background .25s}.service:hover{background:#e9eade}.service .number{color:var(--gold);font-size:12px}.service h3{font:25px SimSun,serif;margin:25px 0 15px}.service p{font-size:13px;color:#6b756b;max-width:260px}.gallery-section{background:#eaece4}.filters{display:flex;gap:12px;margin-bottom:28px}.filters button{border:1px solid #c4caba;background:transparent;padding:6px 20px;font-size:12px}.filters button.active{background:var(--ink);color:white}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.gallery-item{border:0;background:transparent;text-align:left;padding:0;overflow:hidden}.gallery-item img{width:100%;height:280px;object-fit:cover;display:block;transition:transform .4s}.gallery-item:hover img{transform:scale(1.035)}.gallery-item span{display:block;font-size:11px;letter-spacing:1px;margin:10px 0 15px}.contact-banner{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:40px 0;margin-bottom:30px}.stores{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.contact-card{padding:25px;border:1px solid var(--line)}.contact-card h3{font:23px SimSun,serif}.contact-card p{font-size:13px}.contact-action{display:block;background:none;border:0;padding:9px 0;font-size:14px;text-align:left}.muted{color:#7c857b}footer{padding:40px 8vw;background:#213a31;color:#ebe9dd;font-size:12px;display:flex;justify-content:space-between;gap:25px}.footer-links{display:flex;gap:20px}dialog{border:0;background:var(--paper);color:var(--ink);padding:30px;width:min(800px,92vw);max-height:90vh;overflow:auto}dialog::backdrop{background:#14291fbb;backdrop-filter:blur(5px)}.dialog-close{float:right;background:none;border:1px solid var(--line);padding:4px 12px}.photo-dialog{width:min(1200px,95vw);background:#17271f;color:white}.photo-dialog img{width:100%;height:70vh;object-fit:contain}.photo-controls{display:flex;justify-content:space-between;align-items:center;gap:20px}.photo-controls button{background:none;color:white;border:1px solid #788477;padding:5px 15px}.page-status{background:#e6d9b9;padding:7px 8vw;font-size:12px}.page-content{min-height:55vh}.page-content h1{font:45px SimSun,serif}.catalog{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.card{padding:25px;border:1px solid var(--line)}.product-image{max-width:100%;height:200px;object-fit:cover}.image-button{background:none;border:0}.product-large{max-width:85vw;max-height:75vh}.logo-panel{width:190px;display:block;margin-bottom:15px}@media(max-width:760px){header{padding:14px 6vw}.wordmark{font-size:20px}.menu-toggle{display:block}nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:var(--paper);padding:25px}nav.open{display:flex}.hero{height:76vh;min-height:520px}.hero-copy{left:7vw;right:7vw;bottom:13%}.hero-note{font-size:8px}.section{padding:55px 6vw}.section-head{display:block}.section h2{font-size:30px}.intro-grid{grid-template-columns:1fr;gap:30px}.intro-image{height:350px}.services{grid-template-columns:1fr}.service{padding:28px}.gallery{grid-template-columns:repeat(2,1fr);gap:12px}.gallery-item img{height:200px}.stores,.catalog{grid-template-columns:1fr}.contact-banner{display:block}.contact-banner button{margin-top:20px}footer{display:block}.footer-links{flex-wrap:wrap;margin-top:20px}.photo-dialog img{height:58vh}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Keep the original text layout; center the storefront photograph. */
.hero img{object-position:50% 50%}
.hero::after{background:linear-gradient(180deg,rgba(16,39,28,.08) 0%,rgba(16,39,28,.28) 32%,rgba(16,39,28,.62) 68%,rgba(16,39,28,.86) 100%)}

/* Mobile: show the whole storefront instead of cropping a wide photograph. */
@media(max-width:760px){
.hero{height:auto;min-height:0;background:#142c22}
.hero img{display:block;width:100%;height:auto;object-fit:contain;object-position:center top}
.hero::after{background:linear-gradient(180deg,transparent 0%,rgba(20,44,34,.08) 20%,rgba(20,44,34,.72) 40%,#142c22 58%,#142c22 100%);pointer-events:none}
.hero-copy{position:relative;left:auto;right:auto;bottom:auto;width:auto;max-width:none;padding:20px 7vw 30px;margin-top:-35px;text-align:left}
.hero h1{font-size:clamp(32px,9vw,40px);margin:18px 0;letter-spacing:2px}
.hero-copy p{font-size:13px;line-height:1.9}
.hero-note{position:relative;left:auto;right:auto;bottom:auto;padding:0 7vw 24px;font-size:8px;letter-spacing:2px;text-align:center}
}

@media(max-width:760px){.hero img{-webkit-mask-image:linear-gradient(180deg,#000 65%,transparent 100%);mask-image:linear-gradient(180deg,#000 65%,transparent 100%)}.hero::after{background:none}}

/* Crop only the residential floors above the storefront in the mobile hero. */
@media(max-width:760px){.hero img{clip-path:inset(15% 0 0 0);margin-top:-8.5%;}}

.brand-entry{position:fixed;inset:0;z-index:1000;background:#142c22;display:grid;place-items:center;color:#f5f0e4;animation:entry-curtain 2s ease forwards}
.entry-mark{text-align:center;padding:24px;animation:entry-mark 1.65s ease both}.entry-mark strong{display:block;font:clamp(28px,5vw,48px)/1.8 SimSun,serif;letter-spacing:.15em;margin:16px 0}.entry-en{font-size:11px;letter-spacing:.5em;color:#c7b38a}.entry-sub{font-size:12px;letter-spacing:2px;color:#cdd6ce}.entry-skip{position:absolute;right:24px;bottom:24px;background:none;border:1px solid #809287;color:#f5f0e4;padding:8px 14px;font-size:12px}
@keyframes entry-mark{0%{opacity:0;transform:translateY(14px)}35%,80%{opacity:1;transform:translateY(0)}100%{opacity:1}}
@keyframes entry-curtain{0%,72%{opacity:1}100%{opacity:0;visibility:hidden}}
.entry-complete .hero-copy{animation:entry-content .65s ease both}@keyframes entry-content{from{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:reduce){.brand-entry{display:none}.entry-complete .hero-copy{animation:none}}

/* Warm, light entrance palette matching the brand page. */
.brand-entry{background:#f6f3ed;color:#203b33}
.brand-entry .entry-en{color:#927747}.brand-entry .entry-sub{color:#68786c}
.brand-entry .entry-skip{color:#203b33;border-color:#c9c5b8}

.contact-service{cursor:pointer}.wechat-number{font-size:clamp(1.5rem,5vw,2rem);font-weight:600;letter-spacing:.03em;overflow-wrap:anywhere;user-select:text}
