/* v31: one responsive height for all existing page advertising banners. */
:root { --tm-banner-height: clamp(280px, 32.4091vw, 620px); }
body .banner, body .tm-mes-banner, body .about-banner, body #sbanner,
body .tm-banner-frame, body .banner .swiper, body .banner .swiper-slide {
  height: var(--tm-banner-height);
}
body .banner img, body .tm-mes-banner img, body .about-banner img, body #sbanner img {
  display: block; width: 100%; height: var(--tm-banner-height) !important;
  min-height: 0; max-height: none; aspect-ratio: auto !important; object-fit: cover;
}
@media (min-width: 768px) {
  body.tm-home-page > .wppc, body .banner .wppc { display: none; }
}
@media (max-width: 767px) {
  :root { --tm-banner-height: clamp(200px, 44.4444vw, 340px); }
  body.tm-home-page > .ppc, body .banner .ppc { display: none; }
  body.tm-home-page > .wppc, body .banner .wppc { display: block; }
  body.tm-home-page .banner img { object-position: left center; }
  body .tm-banner-copy h1 { font-size: clamp(20px, 5.5vw, 24px); }
}

/* First Chinese home slide: real editable text, not raster-generated lettering. */
.tm-home-banner-caption { position: absolute; z-index: 1; left: 18.6%; top: calc(50% + 4.6354vw); margin: 0; color: #fff; font-family: "Microsoft YaHei", sans-serif; font-size: clamp(16px, 2vw, 38px); line-height: 1.3; white-space: nowrap; }
@media (max-width: 767px) {
  .tm-home-banner-caption { left: max(10.2778vw, calc(var(--tm-banner-height) * .23125)); top: 61.8%; font-size: clamp(12px, 2.2222vw, 17px); }
}
