/* Figma 7047:17407. Layout follows the Hero → title/footer auto-layout tree. */
.home-page .home { min-height: max(747px, 100svh); padding-top: calc(var(--header-height) + 3px); }
.hero-composition { position: relative; display: flex; flex-direction: column; align-items: center; gap: 150px; padding: 110px var(--page-gutter) 50px; min-height: calc(max(747px, 100svh) - var(--header-height) - 3px); background: #fff; }
.hero-title { position: relative; margin: 0; width: 100%; color: #1d1d1d; font: 500 min(73px, calc((100vw - 2 * var(--page-gutter)) / 17.55)) / 1.8 'Helvetica Neue', Helvetica, Arial, sans-serif; text-align: center; letter-spacing: 0; }
.hero-title-row { display: flex; justify-content: center; align-items: flex-start; }
.hero-word { display: inline-block; white-space: pre; }
.hero-letter-mask { display: inline-block; overflow: hidden; vertical-align: top; }
.hero-letter { display: inline-block; }
.hero-line-mask { display: block; overflow: hidden; margin: 0; }
.hero-title-rest, .hero-summary-line { display: block; }
.hero-art { flex: 0 0 auto; display: block; width: 2.739726em; height: 1.780822em; margin-inline: 20px; perspective: 600px; overflow: hidden; }
.hero-art-inner { display: block; position: relative; width: 100%; height: 100%; transform-origin: center; }
.hero-art img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: contain; opacity: 0; }
.hero-art img.is-current { opacity: 1; }
.hero-footer { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: space-between; width: min(782px, 100%); min-height: 107px; margin-top: auto; }
.hero-summary { width: 100%; padding: 0 80px; color: #222; font: 300 14px/1.35 Helvetica, Arial, sans-serif; text-align: center; }
.home-page .hero-footer .scroll-cue { position: static; width: 44px; height: 21px; transform: none; margin-bottom: 0; }
.home-page .hero-footer .scroll-cue img { width: 16px; height: 7px; animation: hero-cue-breathe 3.6s ease-in-out infinite; }
.home-page .hero-footer .scroll-cue.is-obscured { visibility: hidden; pointer-events: none; }
@keyframes hero-cue-breathe { 0%, 100% { opacity: 1; } 50% { opacity: .4; } }
@media (prefers-reduced-motion: reduce) {
 .home-page .hero-footer .scroll-cue img { animation: none; }
}
html[lang='zh-CN'] .hero-title { font-family: 'Helvetica Neue', 'PingFang SC', 'Microsoft YaHei', sans-serif; }
@media (max-width: 1024px) {
 .hero-composition { gap: clamp(32px, 6vh, 64px); }
 .hero-footer { margin-top: 0; flex: 1; gap: 48px; }
 .home-page .hero-footer .scroll-cue { margin-top: auto; }
}
@media (max-width:760px) {
 .home-page .home { min-height: max(650px, 100svh); }
 .hero-composition { padding-top: 80px; min-height: calc(max(650px, 100svh) - var(--header-height) - 3px); }
 .hero-title { font-size: clamp(20px, 5.2vw, 39px); line-height: 1.6; }
 .hero-title-rest { max-width: 22ch; margin: 0 auto; line-height: 1.3; padding-top: 16px; }
 .hero-art { width: 2.4em; height: 1.56em; }
 .hero-summary { padding: 0; }
 .hero-footer { gap: 30px; }
}
/* Chinese hero has its own reading order: headline, artwork, supporting copy. */
html[lang='zh-CN'] .hero-title { display: flex; flex-direction: column; align-items: center; gap: 28px; font-size: min(73px, calc((100vw - 2 * var(--page-gutter)) / 12.5)); line-height: 1.4; }
html[lang='zh-CN'] .hero-title > .hero-line-mask { order: -1; }
html[lang='zh-CN'] .hero-title-rest { max-width: none; padding-top: 0; white-space: nowrap; line-height: 1.4; }
html[lang='zh-CN'] .hero-word { display: none; }
html[lang='zh-CN'] .hero-art { width: min(200px, 26vw); height: min(130px, 16.9vw); margin-inline: 0; }
html[lang='zh-CN'] .hero-composition { gap: clamp(48px, 8vh, 110px); }
