/* Featured homepage carousel — November 2026 */
.ahl-home-carousel{width:min(100%,1600px);margin:0 auto 2rem;padding:clamp(.5rem,1.5vw,1.25rem);box-sizing:border-box}
.ahl-carousel-window{position:relative;overflow:hidden;aspect-ratio:16/9;border-radius:clamp(12px,2vw,24px);background:#103b22;box-shadow:0 15px 42px rgba(13,48,28,.18)}
.ahl-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .55s ease,visibility .55s;pointer-events:none}
.ahl-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}
.ahl-slide a{display:block;width:100%;height:100%}
.ahl-slide img{width:100%;height:100%;object-fit:contain;display:block;background:#103b22}
.ahl-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:44px;height:44px;border:1px solid #fff8;border-radius:50%;background:#123d2aba;color:white;font-size:2rem;line-height:1;cursor:pointer;display:grid;place-items:center}
.ahl-nav:hover{background:#123d2a}.ahl-prev{left:clamp(8px,2vw,24px)}.ahl-next{right:clamp(8px,2vw,24px)}
.ahl-dots{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:12px}
.ahl-dot{width:12px;height:12px;border-radius:50%;border:1px solid #366444;background:#d8e2d8;cursor:pointer;padding:0}
.ahl-dot[aria-current=true]{background:#245f38;border-color:#245f38}
.ahl-caption{text-align:center;font-weight:700;color:#1e4c30;margin:.4rem 0 0;font-size:clamp(.9rem,1.5vw,1.05rem)}
.ahl-home-carousel button:focus-visible,.ahl-home-carousel a:focus-visible{outline:3px solid #dba93f;outline-offset:3px}
@media(max-width:600px){.ahl-nav{width:34px;height:34px;font-size:1.5rem}.ahl-home-carousel{padding:6px}.ahl-carousel-window{border-radius:12px}}
@media(prefers-reduced-motion:reduce){.ahl-slide{transition:none}}
