.carousel{width:100%;margin:auto;--slide-spacing:1rem;--slide-size:100%;--slide-spacing-sm:1rem;--slide-size-sm:50%;--slide-spacing-lg:2rem;--slide-size-lg:calc(calc(100% / 3) - 2%)}.carousel__viewport{width:100%;overflow:hidden}.carousel__container{width:100%;backface-visibility:hidden;display:flex;touch-action:pan-y pinch-zoom}@media (min-width:750px){.carousel__container{margin-left:calc(var(--slide-spacing-sm) * -1)}}@media (min-width:1200px){.carousel__container{margin-left:calc(var(--slide-spacing-lg) * -1)}}.carousel__slide{min-width:0;flex:0 0 var(--slide-size);padding-left:var(--slide-spacing);transition:transform .3s ease-in-out}.carousel__slide:hover{transform:scale(1.025)}@media (min-width:750px){.carousel__slide{flex:0 0 var(--slide-size-sm);padding-left:var(--slide-spacing-sm)}}@media (min-width:1200px){.carousel__slide{flex:0 0 var(--slide-size-lg);padding-left:var(--slide-spacing-lg)}}.carousel__slide__number{display:flex;flex-direction:column;user-select:none;cursor:pointer}.carousel__slide__img{width:100%;height:auto;object-fit:cover}.carousel__controls{width:100%;display:grid;grid-template-columns:1fr auto;align-items:center;gap:1.2rem}.carousel__buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem;align-items:center}.carousel__button{-webkit-tap-highlight-color:rgba(var(--text-high-contrast-rgb-value),.5);-webkit-appearance:none;appearance:none;background-color:transparent;touch-action:manipulation;display:inline-flex;text-decoration:none;cursor:pointer;border:0;padding:0;margin:0;box-shadow:inset 0 0 0 .2rem var(--detail-medium-contrast);width:3rem;height:3rem;z-index:1;border-radius:50%;color:var(--text-body);display:flex;align-items:center;justify-content:center}.carousel__button:disabled{color:var(--detail-high-contrast)}.carousel__button__svg{width:30%;height:30%}.carousel__dots{display:flex;flex-wrap:wrap;margin-right:calc((2.6rem - 1.4rem) / 2 * -1)}.carousel__dot,.carousel__dots{justify-content:center;align-items:center}.carousel__dot{-webkit-tap-highlight-color:rgba(var(--text-high-contrast-rgb-value),.5);-webkit-appearance:none;appearance:none;background-color:transparent;touch-action:manipulation;display:inline-flex;text-decoration:none;cursor:pointer;border:0;padding:0;margin:0;width:2.6rem;height:2.6rem;display:flex;border-radius:50%}.carousel__dot:after{box-shadow:inset 0 0 0 .2rem #ddd;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;content:""}.carousel__dot--selected:after{box-shadow:inset 0 0 0 .2rem #aaa}