/* Shared vector icons render consistently without emoji fonts. */
.icon{display:inline-block;width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.12em;flex:none;pointer-events:none}
.button .icon,.text-link .icon,.header-cta .icon{width:24px;height:24px;vertical-align:middle}
.sport-product-arrow .icon{width:25px;height:25px}
.category-page-link>.icon,.catalogue-note .icon{width:19px;height:19px;margin-left:5px}
.select-wrap .icon{width:22px;height:22px;display:block}
.motion-icon{display:inline-flex;align-items:center;justify-content:center;flex:none}
.motion-icon .icon{width:18px;height:18px}
.mockup-zoom-symbol{display:inline-flex;align-items:center;justify-content:center}
.mockup-zoom-symbol .icon{width:21px;height:21px}
.hotspot>span{display:flex;align-items:center;justify-content:center}
.hotspot .icon{width:23px;height:23px}
.faq-item summary>span{display:inline-flex;align-items:center;justify-content:center}
.faq-item summary .icon{width:24px;height:24px}
.marquee i{display:inline-flex;align-items:center}
.marquee i .icon{width:23px;height:23px}
.back-top{display:inline-flex;align-items:center;justify-content:center}
.back-top .icon{width:30px;height:30px}
.contact-details i{display:inline-flex;align-items:center;justify-content:center}
.contact-details i .icon{width:26px;height:26px}
.contact-title-arrow .icon{width:1em;height:1em;stroke-width:1.3}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}

/* Loaded action photographs crossfade on a two-second cadence. */
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease;pointer-events:none;overflow:hidden}
.hero-slide.is-active{opacity:1}
.hero-campaign-media .hero-slide img{object-position:var(--hero-image-position,76% top);transform:none}
.hero-slide.is-active img{animation:hero-photo-approach 2.6s linear both}
@keyframes hero-photo-approach{from{transform:scale(1.015)}to{transform:scale(1.045)}}
.no-motion .hero-slide{transition:none!important}
.no-motion .hero-slide img{animation:none!important;transform:none!important}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none!important}.hero-slide img{animation:none!important;transform:none!important}}
