/* Homepage editorial rhythm — shared by Chinese and English. */
.home-page { --showcase-radius: 24px; }
.home-page :is(.home-versions, .material-spotlight, .craft, .capacity, .spaces) { background: var(--paper, #f5f3ee); padding-block: clamp(64px, 7vw, 104px); }
.home-page :is(.home-versions, .material-layout, .craft) { gap: clamp(40px, 6vw, 90px); align-items: center; }
.home-page :is(.home-version-copy, .craft-panel) { padding-block: 12px; }
.home-page :is(.home-version-copy h2, .craft-panel h2, .section-head h2) { max-width: 620px; font-size: clamp(30px, 3.1vw, 46px); line-height: 1.4; letter-spacing: -.025em; color: #3c352f; text-wrap: balance; }
.home-page :is(.home-version-copy > p, .craft-panel > p, .section-head > p) { color: #6c665e; line-height: 1.95; font-size: 15px; }
.home-page :is(.home-version-media, .craft-media) { min-height: 0; height: auto; border-radius: var(--showcase-radius); overflow: hidden; }
.home-page :is(.home-version-media img, .craft-media img) { display: block; width: 100%; height: auto; min-height: 0; aspect-ratio: 1 / 1.06; object-fit: cover; border-radius: inherit; filter: none; }
.home-page :is(.home-version-media, .craft-media, .capacity-card, .space-card)::after { display: none; }
.home-page .version-points { margin-block: 26px 30px; }
.home-page .version-points li { padding-block: 13px; color: #6c665e; line-height: 1.7; }
.home-page .editorial-link { border-radius: 999px; padding: 13px 22px; }
.home-page .material-feature { position: static; }
.home-page .material-feature > div { border: 0; padding: 0; margin-bottom: 28px; }
.home-page .material-feature h3 { color: #3c352f; font-size: clamp(28px, 2.6vw, 38px); line-height: 1.45; }
.home-page .material-feature img { display: block; border-radius: var(--showcase-radius); aspect-ratio: 7 / 6; filter: none; }
.home-page .material-summary { color: #6c665e; line-height: 1.95; }
.home-page .material-row { padding-block: 23px; border-color: #dcd8d0; }
.home-page .material-row > span { color: #988979; font-size: 12px; }
.home-page .material-row h3 { color: #3c352f; }
.home-page .material-row p { color: #6c665e; line-height: 1.85; }
.home-page .craft-media { order: 2; }
.home-page .craft-media img { transform: scale(1.14); }
.home-page .home-version-copy h2 { max-width: none; }
.home-page .craft-panel { order: 1; }
.home-page .quality-list div { grid-template-columns: 1fr; gap: 7px; padding-block: 19px; border-color: #dcd8d0; }
.home-page .quality-list dt { color: #3c352f; font-size: 18px; }
.home-page .quality-list dd { color: #6c665e; line-height: 1.85; }
.home-page .section-head { align-items: end; margin-bottom: 36px; }
.home-page .capacity-grid { gap: 32px; }
.home-page .capacity-card { display: block; background: transparent; border: 0; border-radius: 0; overflow: visible; box-shadow: none; }
.home-page .capacity-card > img { width: 100%; height: auto; min-height: 0; aspect-ratio: 3 / 2; object-fit: cover; border-radius: var(--showcase-radius); filter: none; }
.home-page .capacity-card > div { background: transparent; padding: 24px 4px 0; }
.home-page .capacity-card h3 { font-size: clamp(24px, 2.2vw, 32px); color: #3c352f; line-height: 1.5; }
.home-page .capacity-card p { color: #6c665e; line-height: 1.9; }
.home-page .metrics { margin-top: 46px; border-bottom: 0; border-color: #dcd8d0; }
.home-page .metrics > div { border: 0; min-height: 0; padding: 28px 12px 0; }
.home-page .metrics strong { font-size: clamp(28px, 3vw, 42px); color: #675847; }
.home-page .metrics span { color: #6c665e; }
.home-page .space-strip { gap: 28px; align-items: start; }
.home-page .space-card { min-height: 0; overflow: visible; border-radius: 0; background: transparent; }
.home-page .space-card img { display: block; width: 100%; height: auto; min-height: 0; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--showcase-radius); }
.home-page .space-card h3 { position: static; margin: 20px 2px 0; color: #3c352f; font-size: 24px; }
.home-page .editorial { background: #f5f3ee; color: #3c352f; min-height: 360px; padding-block: 64px 100px; }
.home-page .editorial-copy { max-width: 780px; }
.home-page .editorial h2 { color: #3c352f; font-size: clamp(30px, 3.2vw, 46px); line-height: 1.45; }
.home-page .editorial p { color: #6c665e; line-height: 1.95; }
.home-page .editorial-lines { opacity: .12; }
.home-page .contact { border-radius: 32px 32px 0 0; }
.home-page .contact button[type="submit"] { border-radius: 999px; }
@media (max-width: 980px) {
  .home-page :is(.home-versions, .material-layout, .craft) { grid-template-columns: 1fr; }
  .home-page :is(.home-version-media img, .craft-media img) { aspect-ratio: 4 / 3; }
  .home-page :is(.craft-media, .craft-panel) { order: 0; }
  .home-page .space-strip { gap: 18px; }
}
@media (max-width: 760px) {
  .home-page { --showcase-radius: 18px; }
  .home-page :is(.home-versions, .material-spotlight, .craft, .capacity, .spaces) { padding: 54px 22px; }
  .home-page :is(.home-versions, .material-layout, .craft) { gap: 30px; }
  .home-page :is(.home-version-copy h2, .craft-panel h2, .section-head h2) { font-size: 30px; }
  .home-page .section-head { display: block; margin-bottom: 28px; }
  .home-page .section-head > p { margin-top: 20px; }
  .home-page .capacity-grid { grid-template-columns: 1fr; gap: 36px; }
  .home-page .capacity-card > div { padding-top: 18px; }
  .home-page .metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 32px; }
  .home-page .metrics > div { padding-left: 0; }
  .home-page .space-strip { display: grid; grid-template-columns: 1fr; gap: 30px; overflow: visible; }
  .home-page .space-card img { aspect-ratio: 5 / 4; }
  .home-page .space-card h3 { font-size: 22px; margin-top: 14px; }
  .home-page .editorial { min-height: 0; padding: 44px 22px 64px; }
  .home-page .contact { border-radius: 24px 24px 0 0; }
}
.home-page .hero-copy{white-space:nowrap;font-style:italic}
.home-page .hero-media{background:linear-gradient(90deg,rgba(18,17,15,.72),rgba(18,17,15,.3) 44%,rgba(18,17,15,.08)),url('./assets/hero-original-haolun-20260922.webp') center/cover;transform:none;animation:none}
@media(max-width:800px){.home-page .hero-media{background:linear-gradient(180deg,rgba(18,17,15,.18),rgba(18,17,15,.82)),linear-gradient(90deg,rgba(18,17,15,.48),rgba(18,17,15,.08)),url('./assets/hero-original-haolun-20260922.webp') 67% center/cover}}
.home-page .home-version-media img{aspect-ratio:3/2;object-fit:contain}
/* English keeps the same composition, with Latin typography instead of CJK spacing. */
html[lang="en"] .home-page :is(h2,h3){font-family:Georgia,"Times New Roman",serif;letter-spacing:-.02em}
html[lang="en"] .home-page .hero-subtitle{letter-spacing:.035em}
html[lang="en"] .home-page .color-card-showcase-copy h2{line-height:1.3}
@media(max-width:800px){
 .home-page .hero-actions{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:10px}
 .home-page .hero-actions .editorial-link{min-width:0;width:auto;flex:0 0 auto;gap:6px;padding:9px 10px;min-height:36px;white-space:nowrap;letter-spacing:0;font-size:11px;justify-content:center}
 .home-page .hero-actions .editorial-link::after{margin-left:0;flex-shrink:0;width:13px}
 html[lang="en"] .home-page .hero-actions .editorial-link{min-width:0;padding:12px 0;gap:6px;letter-spacing:0;text-transform:none;white-space:normal;font-size:11px}
}
@media(max-width:360px){.home-page .hero-actions{gap:7px}.home-page .hero-actions .editorial-link{padding-inline:5px;font-size:11px}}
@media(max-width:800px){.home-page .hero-copy{font-size:clamp(28px,9.5vw,64px);line-height:1.12;letter-spacing:-.035em}}
