/* The active media defines the carousel ratio, including portrait videos. */
.rf-site .rf-banner {
    height:var(--ar-banner-height,auto)!important;
    aspect-ratio:var(--ar-banner-ratio,2.5)!important;
    max-height:none;
    max-width:var(--ar-banner-max-width,100%);
    margin-left:auto!important;
    margin-right:auto!important;
    background:var(--rf-soft,#f5f5f7);
    transition:height .22s ease;
}
.rf-banner .swiper-wrapper,.rf-banner .banner { height:100%!important; }
.rf-banner .banner { overflow:hidden;background:transparent; }
.rf-banner .banner img,.rf-banner .ar-banner-video>video {
    display:block;
    width:100%!important;
    height:100%!important;
    object-fit:contain;
    background:transparent;
}
.rf-banner .ar-banner-video { position:relative;background:transparent; }
.rf-banner .ar-banner-visit { position:absolute;right:14px;top:12px;z-index:3;display:inline-flex;align-items:center;gap:9px;background:#ffffffed;color:#215ca6;border:1px solid #fff8;box-shadow:0 2px 8px #0002;border-radius:20px;padding:7px 12px;font-size:12px;text-decoration:none; }
.rf-banner .ar-banner-visit:focus { outline:2px solid #fff;outline-offset:3px; }
.rf-banner.ar-has-video .swiper-pagination { bottom:5px!important;pointer-events:none; }
.rf-banner.is-empty .swiper-pagination { display:none; }
@media (prefers-reduced-motion:reduce) { .rf-site .rf-banner { transition:none; } }
