/* Keep Japanese headings readable when browser zoom narrows the CSS viewport. */
.hero-logo { display: none; }
.about { overflow-x: auto; }
.about .eyebrow,
.about h2,
.about-copy p,
.about-copy .mini-sign { white-space: nowrap; word-break: keep-all; }
.about-copy br { display: block !important; }
.hero-gallery.is-carousel { display: block; overflow: hidden; }
.hero-gallery-track { display: flex; width: max-content; height: 100%; animation: hero-carousel 110s linear infinite; }
.hero-gallery-track img { width: clamp(260px, 30vw, 430px); height: 100%; flex: 0 0 auto; object-fit: cover; object-position: center 20%; }
.movie-link iframe { width: 100%; height: 100%; border: 0; display: block; }
@keyframes hero-carousel { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) {
  .hero-gallery.is-carousel { overflow-x: auto; }
  .hero-gallery-track { animation: none; }
}
@media (max-width: 600px) {
  .hero-gallery-track img { width: 62vw; }
  .about { padding-inline: max(16px, 5vw); }
  .about h2 { font-size: clamp(22px, 6.5vw, 28px); line-height: 1.55; letter-spacing: .02em; word-break: keep-all; }
  .about-copy { width: 100%; max-width: 34rem; margin-inline: auto; text-align: center; line-height: 2.1; word-break: normal; overflow-wrap: normal; }
  .about-copy p { max-width: 100%; margin-inline: auto; }
}
