.promo-carousel{position:relative;width:100%;aspect-ratio:3/1;overflow:hidden;border-radius:var(--promo-carousel-radius);background:#14331f;isolation:isolate}.promo-slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .6s ease}.promo-slide--active{opacity:1;pointer-events:auto}.promo-slide__link{display:block;width:100%;height:100%}.promo-slide__img{width:100%;height:100%;object-fit:cover;object-position:center}.promo-arrow{position:absolute;top:50%;z-index:3;display:none;width:38px;height:38px;transform:translateY(-50%);align-items:center;justify-content:center;border:0;border-radius:50%;background:rgba(255,255,255,.16);color:#fff;cursor:pointer;backdrop-filter:blur(6px);transition:background .15s ease}.promo-arrow:hover{background:rgba(255,255,255,.3)}.promo-arrow svg{width:18px;height:18px}.promo-arrow--prev{left:12px}.promo-arrow--next{right:12px}@media (min-width:768px){.promo-arrow{display:flex}}.promo-dots{position:absolute;bottom:var(--promo-carousel-padding-y);left:var(--promo-carousel-padding-x);z-index:3;gap:16px}.promo-dot,.promo-dots{display:flex;align-items:center}.promo-dot{position:relative;height:24px;width:8px;padding:0;border:none;background:none;cursor:pointer;transition:width .5s cubic-bezier(.16,1,.3,1)}.promo-dot--active{width:34px}.promo-dot:before{content:"";position:absolute;inset:-8px}.promo-dot__track{position:relative;width:100%;height:8px;overflow:hidden;border-radius:100px;background:rgba(20,51,31,.28);transition:background .3s ease}.promo-dot:hover .promo-dot__track{background:rgba(20,51,31,.5)}.promo-dot__fill{position:absolute;inset:0;transform:scaleX(0);transform-origin:left center;border-radius:inherit;background:#14331f}.promo-dot--active .promo-dot__fill{animation:promo-progress var(--promo-carousel-interval) linear both}.promo-carousel[data-paused=true] .promo-dot--active .promo-dot__fill{animation-play-state:paused}@keyframes promo-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.promo-dot,.promo-dot--active .promo-dot__fill,.promo-slide{animation:none;transition:none}.promo-dot--active .promo-dot__fill{transform:scaleX(1)}}