/* v62: clearer hierarchy and photo framing; shared v31 banner heights remain. */
.tm-home-page .tm-home-hero{position:relative;isolation:isolate;overflow:hidden;background:#10354a}
.tm-home-page .tm-home-hero>img{display:block;width:100%;object-fit:cover!important;object-position:center!important}
.tm-home-page .tm-home-hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(3,25,40,.66) 0%,rgba(3,25,40,.42) 36%,rgba(3,25,40,.04) 57%,transparent 72%),linear-gradient(0deg,rgba(3,25,40,.25),transparent 30%)}
.tm-home-page .tm-home-hero-copy{position:absolute;inset:0;z-index:2;width:min(1200px,calc(100% - 64px));height:100%;margin:auto;box-sizing:border-box;padding:20px 0 74px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;pointer-events:none;text-align:left;color:#fff}
.tm-home-page .tm-home-hero-kicker{display:inline-flex;align-items:center;gap:12px;margin:0 0 clamp(12px,1.4vw,22px);font-size:11px;line-height:1.4;letter-spacing:.13em;font-weight:600;color:#8ed8eb}
.tm-home-page .tm-home-hero-kicker::before{content:"";width:24px;height:2px;flex-shrink:0;background:currentColor}
.tm-home-page .tm-home-hero-kicker-detail{letter-spacing:.04em;color:#d3e8f0;font-weight:400}
.tm-home-page .tm-home-hero-copy h2{width:50%;max-width:10em;margin:0;font-size:clamp(34px,3.5vw,60px);line-height:1.16;font-weight:600;letter-spacing:-.025em;text-align:left;text-wrap:balance;color:#fff}
.tm-home-page:lang(en) .tm-home-hero-copy h2{width:52%;max-width:12ch;letter-spacing:-.035em}
.tm-home-page .tm-home-hero-copy p{width:47%;max-width:30em;margin:clamp(14px,1.6vw,24px) 0 0;font-size:clamp(15px,1.12vw,19px);line-height:1.65;color:#e2edf3;text-align:left;text-wrap:pretty}
.tm-home-page .tm-home-hero>.tm-home-hero-link{position:absolute;inset:0;z-index:3;display:block;background:transparent;border:0;padding:0;margin:0;border-radius:0}
.tm-home-page .tm-home-hero>.tm-home-hero-link:focus-visible{outline:3px solid #fff;outline-offset:-6px}
.tm-home-page .banner .swiper-pagination{width:min(1200px,calc(100% - 64px))!important;left:50%!important;right:auto!important;bottom:28px!important;transform:translateX(-50%);display:flex;align-items:center;gap:10px;text-align:left}
.tm-home-page .banner .swiper-pagination-bullet{width:36px;height:3px;border-radius:0;margin:0!important;background:#fff;opacity:.4;transition:width .2s,opacity .2s}
.tm-home-page .banner .swiper-pagination-bullet-active{width:64px;background:#7bd4eb;opacity:1}
@media(min-width:768px) and (max-width:1100px){.tm-home-page .tm-home-hero-copy{padding-bottom:60px}.tm-home-page .tm-home-hero-copy h2{font-size:clamp(32px,3.5vw,39px)}.tm-home-page .tm-home-hero-copy p{font-size:15px;line-height:1.5}.tm-home-page .banner .swiper-pagination{bottom:22px!important}}
@media(max-width:767px){
 .tm-home-page .tm-home-hero>img{object-fit:cover!important;object-position:63% center!important}
 .tm-home-page .tm-home-hero::before{background:linear-gradient(90deg,rgba(3,25,40,.86),rgba(3,25,40,.7) 38%,rgba(3,25,40,.42) 60%,rgba(3,25,40,.06)),linear-gradient(0deg,rgba(3,25,40,.3),transparent 25%)}
 .tm-home-page .tm-home-hero-copy{width:calc(100% - 40px);padding:18px 0 38px}
 .tm-home-page .tm-home-hero-kicker{margin-bottom:10px;font-size:9.5px;gap:8px;letter-spacing:.14em}
 .tm-home-page .tm-home-hero-kicker::before{width:18px;height:1px}
 .tm-home-page .tm-home-hero-kicker-detail{display:none}
 .tm-home-page .tm-home-hero-copy h2,.tm-home-page:lang(en) .tm-home-hero-copy h2{width:59%;max-width:none;font-size:clamp(18px,5.2vw,27px);line-height:1.15;letter-spacing:-.02em}
 .tm-home-page .tm-home-hero-copy p{width:58%;max-width:28em;margin:10px 0 0;font-size:clamp(12px,2.1vw,14px);line-height:1.45}
 .tm-home-page .banner .swiper-pagination{width:calc(100% - 40px)!important;bottom:16px!important;gap:8px}
 .tm-home-page .banner .swiper-pagination-bullet{width:20px;height:2px}
 .tm-home-page .banner .swiper-pagination-bullet-active{width:34px}
}
@media(prefers-reduced-motion:reduce){.tm-home-page .banner .swiper-pagination-bullet{transition:none}}
