.hero-image { min-width: 0; }
.achilles-hero-carousel { width: 100%; max-width: 520px; min-width: 0; }
.achilles-hero-carousel__slides { display: grid; }
.achilles-hero-carousel__slide {
    grid-area: 1 / 1; display: block; min-width: 0; opacity: 0;
    visibility: hidden; pointer-events: none;
    transition: opacity .6s ease, visibility .6s;
}
.achilles-hero-carousel__slide.is-active { opacity: 1; visibility: visible; pointer-events: auto; }
.hero-image .achilles-hero-carousel__slide img {
    display: block; width: 100%; height: auto; aspect-ratio: 1;
    object-fit: contain; background: #fff; margin: 0 auto;
}
.achilles-hero-carousel__controls {
    display: flex; align-items: center; justify-content: center; gap: .5rem; margin-top: 1.25rem;
}
.achilles-hero-carousel__controls[hidden] { display: none; }
.achilles-hero-carousel__controls button {
    display: inline-flex; align-items: center; justify-content: center;
    width: 32px; height: 32px; padding: 0; border: 0; border-radius: 50%;
    background: #f1f5f9; color: #64748b; cursor: pointer; font-size: 22px;
    transition: color .2s, background .2s;
}
.achilles-hero-carousel__controls button:hover { color: #dc2626; background: #fee2e2; }
.achilles-hero-carousel button:focus-visible,
.achilles-hero-carousel__slide:focus-visible { outline: 2px solid #dc2626; outline-offset: 4px; }
.achilles-hero-carousel__indicators { display: flex; flex-wrap: wrap; justify-content: center; }
.achilles-hero-carousel__indicators button { width: 24px; background: transparent; }
.achilles-hero-carousel__indicators span { width: 6px; height: 6px; border-radius: 50%; background: #cbd5e1; transition: background .2s, transform .2s; }
.achilles-hero-carousel__indicators [aria-current="true"] span { background: #dc2626; transform: scale(1.3); }
.achilles-hero-carousel__controls [data-pause] { font-size: 10px; }
@media (prefers-reduced-motion: reduce) {
    .hero-image { animation: none !important; }
    .achilles-hero-carousel__slide, .hero-image .achilles-hero-carousel__slide img { transition: none; }
}
