.campaign-hero.image-carousel{background:#f7f5ed;border:0;border-radius:20px;box-shadow:none;overflow:visible;margin-bottom:24px}
.image-carousel .campaign-track{height:auto;aspect-ratio:3/1;overflow:hidden;border-radius:20px;touch-action:pan-y}
.image-carousel .campaign-slide{position:absolute;inset:0;display:block;width:100%;height:100%;padding:0;border:0;border-radius:0;background:#123f32;cursor:pointer;text-decoration:none;min-height:0;box-shadow:none}
.image-carousel .campaign-slide[hidden]{display:none}
.image-carousel .campaign-slide:after{display:none}
.image-carousel .campaign-art{position:static;display:block;width:100%;height:100%;padding:0;object-fit:cover;max-width:none;animation:banner-appear .25s ease}
.image-carousel .campaign-dots{display:flex;justify-content:center;align-items:center;gap:8px;padding:11px 0 0;margin:0}
.image-carousel .campaign-dots button{position:relative;display:block;width:24px;height:24px;padding:0;border:0;border-radius:50%;background:transparent;min-height:0;box-shadow:none;cursor:pointer}
.image-carousel .campaign-dots button:after{content:'';position:absolute;width:6px;height:6px;inset:9px;border-radius:50%;background:#bbcabd;transition:background .2s,transform .2s}
.image-carousel .campaign-dots button[aria-current=true]:after{background:#ff800a;transform:scale(1.35)}
.image-carousel :is(button,a):focus-visible{outline:3px solid #ff800a;outline-offset:3px}
@keyframes banner-appear{from{opacity:.55}to{opacity:1}}
@media(max-width:720px){.campaign-hero.image-carousel{margin-bottom:16px;border-radius:14px}.image-carousel .campaign-track{border-radius:14px}.image-carousel .campaign-dots{padding-top:5px;gap:5px}}
@media(prefers-reduced-motion:reduce){.image-carousel .campaign-art{animation:none}.image-carousel .campaign-dots button:after{transition:none}}
