/* Artwork and live typography remain separate so both posters stay crisp on small screens. */
.home-hero .hero-slide { position: relative; overflow: hidden; background: #e6edf2; }
.home-hero .hero-art { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.home-hero .hero-copy { position: absolute; top: 50%; left: max(7%, calc((100% - 1400px) / 2)); transform: translateY(-46%); z-index: 1; color: #172e45; }
.home-hero .hero-eyebrow { margin: 0 0 24px; font-size: 15px; font-weight: 500; letter-spacing: 4px; }
.home-hero .hero-copy h1, .home-hero .hero-copy h2 { margin: 0; color: inherit; font-size: clamp(40px, 3.7vw, 72px); line-height: 1.27; font-weight: 700; letter-spacing: 4px; }
.home-hero .hero-copy strong { color: #d62e40; font-weight: 700; }
.home-hero .hero-description { margin: 24px 0 0; color: #516577; font-size: clamp(14px, 1.05vw, 20px); letter-spacing: 2px; line-height: 1.8; }
.home-hero .hero-link { display: inline-flex; align-items: center; gap: 22px; margin-top: 34px; color: inherit; font-size: 15px; letter-spacing: 2px; transition: color .2s; }
.home-hero .hero-arrow { width: 22px; height: 22px; flex-shrink: 0; }
.home-hero .hero-link:hover, .home-hero .hero-link:focus-visible { color: #dc3344; }
.home-hero .hero-track { background: #051b33; }
.home-hero .hero-track .hero-copy { color: #fff; }
.home-hero .hero-track strong { color: #fff; }
.home-hero .hero-track .hero-description { color: #ced9e4; }
.home-hero .swiper-button-prev, .home-hero .swiper-button-next { box-sizing: border-box; width: 38px; height: 38px; left: auto; bottom: 52px; border: 1px solid rgba(255,255,255,.6); background: rgba(14,35,55,.48) !important; opacity: 1; cursor: pointer; transform: none; }
.home-hero .swiper-button-prev { right: calc(7% + 144px); }
.home-hero .swiper-button-next { right: calc(7% + 96px); }
.home-hero .swiper-button-prev::before, .home-hero .swiper-button-next::before { content: ''; position: absolute; width: 7px; height: 7px; top: 14px; left: 16px; border: solid white; border-width: 0 0 1px 1px; transform: rotate(45deg); }
.home-hero .swiper-button-next::before { left: 12px; transform: rotate(225deg); }
.home-hero .swiper-button-prev:hover, .home-hero .swiper-button-next:hover { background: #d62e40 !important; border-color: #d62e40; }
.home-hero .swiper-button-prev:focus-visible, .home-hero .swiper-button-next:focus-visible { outline: 2px solid #d62e40; outline-offset: 3px; }
.home-hero .swiper-pagination-fraction { right: 7%; bottom: 53px; color: white; text-shadow: 0 1px 4px #172e45; }
.home-hero .swiper-pagination::before { display: none; }
@media (max-width: 1440px) {
    .home-hero .hero-eyebrow { margin-bottom: 18px; font-size: 13px; }
    .home-hero .hero-description { margin-top: 18px; }
    .home-hero .hero-link { margin-top: 26px; }
}
@media (max-width: 1080px) {
    .home-hero .hero-copy { left: 6%; }
    .home-hero .hero-description { font-size: 13px; letter-spacing: 1px; }
    .home-hero .swiper-button-prev, .home-hero .swiper-button-next { bottom: 26px; }
    .home-hero .swiper-pagination-fraction { bottom: 27px; }
}
@media (max-width: 767px) {
    .home-hero .swiper-container1 { height: 380px; }
    .home-hero .hero-art { object-position: 60% center; }
    .home-hero .hero-stadium::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(234,241,246,.94), rgba(234,241,246,.62) 47%, rgba(234,241,246,0) 85%); }
    .home-hero .hero-track::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(3,23,47,.72), rgba(3,23,47,.18) 80%); }
    .home-hero .hero-copy { left: 7%; top: 42%; transform: translateY(-40%); z-index: 2; }
    .home-hero .hero-eyebrow { margin-bottom: 18px; font-size: 11px; letter-spacing: 2px; }
    .home-hero .hero-copy h1, .home-hero .hero-copy h2 { font-size: 38px; line-height: 1.28; letter-spacing: 2px; }
    .home-hero .hero-description { max-width: 285px; margin-top: 17px; font-size: 12px; line-height: 1.8; letter-spacing: .5px; }
    .home-hero .hero-link { margin-top: 23px; gap: 18px; font-size: 12px; }
    .home-hero .hero-arrow { width: 20px; height: 20px; }
    .home-hero .swiper-button-prev, .home-hero .swiper-button-next { bottom: 20px; width: 32px; height: 32px; }
    .home-hero .swiper-button-prev { right: calc(7% + 126px); left: auto; }
    .home-hero .swiper-button-next { right: calc(7% + 84px); left: auto; }
    .home-hero .swiper-button-prev::before { left: 13px; top: 11px; }
    .home-hero .swiper-button-next::before { left: 10px; top: 11px; }
    .home-hero .swiper-pagination-fraction { right: 7%; bottom: 20px; }
}
@media (max-width: 360px) {
    .home-hero .swiper-container1 { height: 350px; }
    .home-hero .hero-copy h1, .home-hero .hero-copy h2 { font-size: 34px; }
    .home-hero .hero-description { max-width: 260px; font-size: 11px; }
}

/* Two photographic banners: quiet architecture and a focused equipment scene. */
.home-hero .swiper-container1 { height: clamp(500px, 38vw, 680px); }
.home-hero .hero-stadium { background: #f1eee8; }
.home-hero .hero-track { background: #0c1422; }
.home-hero .hero-copy { top: 50%; transform: translateY(-38%); max-width: 46%; color: #23343c; }
.home-hero .hero-eyebrow { margin-bottom: 24px; font-size: 13px; font-weight: 400; letter-spacing: 2px; color: #606e72; }
.home-hero .hero-copy h1, .home-hero .hero-copy h2 { font-size: clamp(36px, 3.25vw, 62px); line-height: 1.3; letter-spacing: 1px; font-weight: 600; }
.home-hero .hero-lead { margin: 20px 0 0; font-size: clamp(19px, 1.5vw, 28px); line-height: 1.5; letter-spacing: 1px; }
.home-hero .hero-description { margin-top: 16px; color: #657378; font-size: clamp(13px, .85vw, 16px); line-height: 1.9; letter-spacing: .5px; }
.home-hero .hero-link { margin-top: 32px; gap: 24px; padding: 12px 20px; border-radius: 2px; color: #fff; background: #a52c38; font-size: 14px; letter-spacing: 1px; }
.home-hero .hero-link:hover, .home-hero .hero-link:focus-visible { color: #fff; background: #862330; }
.home-hero .hero-link:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.home-hero .hero-track .hero-eyebrow { color: #aab5c5; }
.home-hero .hero-track .hero-lead { color: #e3e9ef; }
.home-hero .hero-track .hero-description { color: #afbdcc; }
.home-hero .hero-track .hero-link { background: #fff; color: #172737; }
.home-hero .hero-track .hero-link:hover, .home-hero .hero-track .hero-link:focus-visible { background: #e2e9ef; color: #172737; }
.home-hero .hero-stadium::after, .home-hero .hero-track::after { display: none; }
.home-hero .swiper-button-prev, .home-hero .swiper-button-next { bottom: 38px; width: 36px; height: 36px; border-radius: 50%; background: rgba(20,35,49,.65) !important; border-color: rgba(255,255,255,.45); }
.home-hero .swiper-button-prev::before { top: 13px; left: 15px; }
.home-hero .swiper-button-next::before { top: 13px; left: 11px; }
.home-hero .swiper-pagination-fraction { bottom: 40px; font-weight: 400; }
.home-hero .swiper-pagination-current, .home-hero .swiper-pagination span { font-size: 20px !important; }
.home-hero span.swiper-pagination-total { font-size: 14px !important; }
@media (min-width: 768px) and (max-width: 1080px) {
    .home-hero .swiper-container1 { height: 460px; }
    .home-hero .hero-copy { max-width: 49%; }
    .home-hero .hero-copy h1, .home-hero .hero-copy h2 { font-size: 34px; }
    .home-hero .hero-description { max-width: 320px; }
}
@media (max-width: 767px) {
    .home-hero .swiper-container1 { height: 550px; }
    .home-hero .hero-art { top: 245px; height: 305px; object-position: 80% center; }
    .home-hero .hero-copy { top: 32px; left: 7%; right: 7%; max-width: none; transform: none; }
    .home-hero .hero-eyebrow { margin-bottom: 18px; font-size: 11px; letter-spacing: 1.5px; }
    .home-hero .hero-copy h1, .home-hero .hero-copy h2 { font-size: 32px; letter-spacing: .5px; }
    .home-hero .hero-lead { margin-top: 12px; font-size: 18px; letter-spacing: 0; }
    .home-hero .hero-description { margin-top: 10px; max-width: none; font-size: 12px; letter-spacing: 0; }
    .home-hero .hero-link { margin-top: 20px; padding: 10px 16px; font-size: 12px; gap: 20px; }
    .home-hero .hero-slide::after { display: block; content: ''; position: absolute; inset: 235px 0 auto; height: 64px; z-index: 1; pointer-events: none; }
    .home-hero .hero-stadium::after { background: linear-gradient(#f1eee8, rgba(241,238,232,0)); }
    .home-hero .hero-track::after { background: linear-gradient(#0c1422, rgba(12,20,34,0)); }
    .home-hero .swiper-button-prev, .home-hero .swiper-button-next { bottom: 18px; }
    .home-hero .swiper-pagination-fraction { bottom: 24px; }
}

.hotkw_search { width: 59%; max-width: none; margin-left: 5%; margin-right: 0; padding-left: 0; gap: 24px; }
.hotkw_search .hotkw_left { display: flex; align-items: center; flex-wrap: wrap; flex: 1; width: auto; min-width: 0; gap: 8px 18px; overflow: visible; white-space: normal; }
.hotkw_search .hotkw-label { display: inline-flex; align-items: center; flex-shrink: 0; }
.hotkw_search .hotkw_left a { padding: 4px 0; font-size: 14px; color: #596674; white-space: nowrap; }
.hotkw_search .hotkw_left a:hover, .hotkw_search .hotkw_left a:focus-visible { color: #d62e40; }
.hotkw_search .search_right { width: 26%; flex-shrink: 0; }
@media (max-width: 1080px) {
    .hotkw_search { width: 94%; margin-left: auto; margin-right: auto; padding: 0; }
    .hotkw_search .search_right { width: 210px; }
}
@media (min-width: 1701px) {
    .hotkw_search { margin-left: 13%; width: 51%; }
}
@media (max-width: 767px) {
    .hotkw_search { flex-direction: column; align-items: stretch; gap: 12px; padding: 10px 0; }
    .hotkw_search .hotkw_left { display: flex; gap: 6px 14px; }
    .hotkw_search .hotkw-label { width: 100%; }
    .hotkw_search .search_right { width: 100%; }
}
