.product-carousel{border-radius:8px;overflow:hidden;background:#edf5ee}.product-carousel .slide{height:auto;min-height:0;aspect-ratio:4/3}.product-carousel .slide>img{inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.product-carousel .carousel-controls{left:12px;right:12px;width:auto;bottom:12px;background:#fffffff0;border-radius:5px;padding:3px 6px;justify-content:center;gap:1px}.product-carousel .carousel-controls>button{width:36px;min-width:36px;height:44px;border:0;background:transparent;font-size:1rem}.product-carousel .carousel-controls>button[data-pause]{font-size:.7rem;min-width:46px;padding:0 5px;margin-left:0}.product-carousel .dots button{width:24px}.product-carousel .dots button:after{left:8px}.product-carousel .dots button[aria-current=true]:after{left:7px}.product-carousel .slide-count{font-size:.65rem;margin-left:5px}.product-carousel .slide>img{padding-bottom:48px;background:#edf5ee}
@media(max-width:767px){.product-carousel .slide{min-height:0;height:auto}.product-carousel .slide>img{height:100%;inset:0;object-position:center}.product-carousel .carousel-controls{left:6px;right:6px;bottom:6px;padding-inline:1px}.product-carousel .carousel-controls>button{width:32px;min-width:32px}.product-carousel .dots button{width:23px}.product-carousel .slide-count{margin-left:0}.product-carousel .carousel-controls>button[data-pause]{min-width:40px;font-size:.63rem}}
@media(max-width:374px){.product-carousel .dots button{width:21px}.product-carousel .carousel-controls>button{width:29px;min-width:29px}.product-carousel .carousel-controls>button[data-pause]{min-width:37px}.product-carousel .slide-count{font-size:.58rem}}

.product-carousel .slide>img{padding-bottom:0}.product-carousel .carousel-controls{position:static;display:flex;flex-wrap:wrap;justify-content:center;margin:0;width:100%;padding:4px 6px;border-radius:0;min-height:52px}.product-carousel .carousel-controls>button{width:44px;min-width:44px;height:44px}.product-carousel .dots button{width:26px;height:44px}.product-carousel .carousel-controls>button[data-pause]{min-width:44px}.product-carousel .slide-count{padding-inline:4px}@media(max-width:767px){.product-carousel .carousel-controls{position:static;padding:4px 5px;min-height:96px;gap:1px}.product-carousel .carousel-controls>button{width:44px;min-width:44px;height:44px}.product-carousel .dots button{width:26px;height:44px}.product-carousel .carousel-controls>button[data-pause]{min-width:44px;font-size:.72rem}.product-carousel .slide-count{font-size:.7rem}}

@media(max-width:767px){.carousel:not(.product-carousel) .carousel-controls{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;grid-template-rows:44px 44px;left:20px;right:20px;width:auto;column-gap:5px;row-gap:0}.carousel:not(.product-carousel) .carousel-controls [data-prev]{grid-column:1;grid-row:1}.carousel:not(.product-carousel) .carousel-controls .dots{grid-column:2;grid-row:1;justify-content:center}.carousel:not(.product-carousel) .carousel-controls [data-next]{grid-column:3;grid-row:1}.carousel:not(.product-carousel) .carousel-controls [data-pause]{grid-column:1;grid-row:2}.carousel:not(.product-carousel) .carousel-controls .slide-count{grid-column:2;grid-row:2;justify-self:start;margin-left:8px}.product-carousel .carousel-controls{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;grid-template-rows:44px 44px;column-gap:2px;row-gap:0}.product-carousel .carousel-controls [data-prev]{grid-column:1;grid-row:1}.product-carousel .carousel-controls .dots{grid-column:2;grid-row:1;justify-content:center}.product-carousel .carousel-controls [data-next]{grid-column:3;grid-row:1}.product-carousel .carousel-controls [data-pause]{grid-column:1;grid-row:2}.product-carousel .carousel-controls .slide-count{grid-column:2;grid-row:2;justify-self:start;margin-left:8px}}@media(max-width:374px){.carousel:not(.product-carousel) .carousel-controls{left:16px;right:16px}}

/* Preserve each carousel's document position and controls; fit the complete source. */
.home-carousel .slide>img,
.inner-carousel .slide>img{object-fit:contain;object-position:right center}
.product-carousel .slide>img{object-fit:contain;object-position:center}

/* Keep tablet copy beside the photograph, clear of the can and pouch details. */
@media(min-width:768px) and (max-width:1279px){
 .home-carousel .slide>img,.inner-carousel .slide>img{inset:0 0 0 auto;width:48%;height:calc(100% - 90px)}
 .home-carousel .slide-shade,.inner-carousel .slide-shade{display:none}
 .home-carousel .slide-content{padding-top:60px;padding-bottom:110px}
 .inner-carousel .slide-content{padding-top:45px;padding-bottom:100px}
 .home-carousel .slide-content h1,.home-carousel .slide-content h2,
 .inner-carousel .slide-content h2{max-width:48%;font-size:clamp(1.7rem,3.5vw,2.5rem)}
 .home-carousel .slide-content p,.inner-carousel .slide-content p{max-width:46%;font-size:.95rem;line-height:1.55}
 .home-carousel .slide-content>.button,.inner-carousel .slide-content>.button{max-width:46%;font-size:.85rem;padding:12px 18px}
}

/* Reserve separate mobile space for text, the uncropped photograph and controls. */
@media(max-width:767px){
 .home-carousel .slide>img,.inner-carousel .slide>img{bottom:115px;height:calc(100% - 444px);aspect-ratio:auto;object-position:center}
 .inner-carousel[aria-label="Product directions"] .slide>img{height:300px}
 .home-carousel .slide-shade,.inner-carousel .slide-shade{display:none}
}

/* Shared dot-only controls: one centered row across every carousel. */
.carousel[data-carousel] .carousel-controls{position:absolute;left:0;right:0;bottom:18px;width:100%;margin:0;padding:0;min-height:44px;display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;gap:0;background:transparent;border-radius:0;grid-template-columns:none;grid-template-rows:none}
.carousel[data-carousel] .carousel-controls .dots{display:flex;justify-content:center;align-items:center;gap:0;grid-column:auto;grid-row:auto}
.carousel[data-carousel] .carousel-controls .dots button{position:relative;width:32px;min-width:32px;height:44px;margin:0;padding:0;border:0;background:transparent}
.carousel[data-carousel] .carousel-controls .dots button:after{top:50%;left:50%;width:7px;height:7px;transform:translate(-50%,-50%)}
.carousel[data-carousel] .carousel-controls .dots button[aria-current=true]:after{top:50%;left:50%;width:10px;height:10px}
.carousel.product-carousel[data-carousel] .carousel-controls{position:static;min-height:44px;padding:0;bottom:auto;left:auto;right:auto}
