.btl-banners{display:block;max-width:100%;padding-block:var(--banner-space,32px);background:var(--banner-background,#FFFFFF);color:var(--banner-text,#292723)}
.btl-banners__inner{max-width:var(--page-width,1400px);margin-inline:auto;padding-inline:24px}.btl-banners--full .btl-banners__inner{max-width:none}
.btl-banners__heading{margin:0 0 20px;font:inherit;font-family:var(--font-heading-family,inherit);font-size:clamp(22px,2.6vw,32px);font-weight:600;color:inherit}
.btl-banners__viewport{position:relative}
.btl-banners__track{display:flex;gap:var(--banner-gap,16px);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;position:relative;border-radius:var(--banner-radius,12px)}
.btl-banners__track::-webkit-scrollbar{display:none}
.btl-banners__slide{flex:0 0 calc((100% - var(--banner-gap,16px) * var(--banner-visible,2)) / (var(--banner-visible,2) + .14));min-width:0;scroll-snap-align:start;position:relative}
.btl-banners__image{display:block;overflow:hidden;border-radius:var(--banner-radius,12px);aspect-ratio:var(--banner-ratio,2);background:color-mix(in srgb,currentColor 5%,var(--banner-background,#FFFFFF));color:inherit}
.btl-banners picture,.btl-banners img,.btl-banners__placeholder{display:block;width:100%;height:100%;object-fit:cover}
.btl-banners__caption{margin:10px 0 0;font-size:14px;line-height:1.4}
.btl-banners__controls{display:flex;position:relative;align-items:center;justify-content:center;margin-top:8px;min-height:44px}
.btl-banners [hidden]{display:none!important}
.btl-banners button{appearance:none;border:0;background:transparent;color:var(--banner-control,inherit);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
.btl-banners__dots{display:block;position:relative;overflow:hidden;height:44px;max-width:172px;margin-inline:auto}
.btl-banners .btl-banners__dot{position:absolute;top:0;display:flex;align-items:center;justify-content:center;width:24px;min-width:0;height:44px;padding:0;transform:translateX(var(--banner-dot-offset,0px));transition:left 220ms cubic-bezier(.22,.61,.36,1),width 220ms cubic-bezier(.22,.61,.36,1),transform 220ms cubic-bezier(.22,.61,.36,1)}
.btl-banners .btl-banners__dot[aria-current=true]{width:52px}
.btl-banners__dot-track{display:block;position:relative;overflow:hidden;flex:none;width:12px;height:6px;border-radius:999px;background:color-mix(in srgb,currentColor 13%,transparent);transform:scale(var(--banner-dot-scale,1));transition:width 220ms cubic-bezier(.22,.61,.36,1),background-color 160ms ease}
.btl-banners__dot[aria-current=true] .btl-banners__dot-track{width:40px;background:currentColor}
.btl-banners__progress{display:block;position:absolute;inset:0;border-radius:inherit;background:currentColor;transform:scaleX(0);transform-origin:left center;opacity:0;pointer-events:none}
.btl-banners[data-banner-running] .btl-banners__dot[aria-current=true] .btl-banners__dot-track{background:color-mix(in srgb,currentColor 13%,transparent)}
.btl-banners[data-banner-running] .btl-banners__dot[aria-current=true] .btl-banners__progress{opacity:1}
.btl-banners .btl-banners__dot:focus-visible{outline-offset:-2px;border-radius:4px}
.btl-banners__arrows{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity 160ms ease}
.btl-banners .btl-banners__arrow{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;padding:10px;border-radius:50%;border:1px solid color-mix(in srgb,currentColor 20%,transparent);background:var(--banner-background,#FFFFFF);color:var(--banner-control,var(--banner-text,#292723));pointer-events:none;transition:background-color 200ms ease}
.btl-banners__arrow--prev{left:12px}.btl-banners__arrow--next{right:12px}.btl-banners__arrow svg{display:block;width:100%;height:100%}
.btl-banners .btl-banners__arrow:hover,.btl-banners .btl-banners__arrow:focus-visible{background:color-mix(in srgb,currentColor 8%,var(--banner-background,#FFFFFF))}
@media(min-width:990px) and (hover:hover){.btl-banners__viewport:is(:hover,:focus-within) .btl-banners__arrows{opacity:1}.btl-banners__viewport:is(:hover,:focus-within) .btl-banners__arrow{pointer-events:auto}}
.btl-banners .btl-banners__pause{position:absolute;width:1px;min-width:0;height:1px;min-height:0;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.btl-banners .btl-banners__pause:focus-visible{left:50%;top:100%;transform:translateX(-50%);width:auto;height:44px;min-width:72px;margin:0;padding-inline:12px;overflow:visible;clip-path:none;white-space:normal;z-index:3;border:1px solid currentColor;border-radius:8px;background:var(--banner-background,#FFFFFF);font-size:12px}
.btl-banners :focus-visible{outline:2px solid currentColor;outline-offset:3px}.btl-banners__track:focus-visible{outline-offset:4px}
@media(max-width:989px){.btl-banners__inner{padding-inline:16px}.btl-banners__slide{flex-basis:calc((100% - var(--banner-mobile-gap,0px)) / var(--banner-mobile-visible,1))}.btl-banners__track{gap:12px}.btl-banners__arrows{display:none}}
@media(hover:none){.btl-banners__arrows{display:none}}
@media(prefers-reduced-motion:reduce){.btl-banners__dot,.btl-banners__dot-track,.btl-banners__arrows,.btl-banners__arrow{transition:none!important}.btl-banners__track{scroll-behavior:auto}}
