.hero.has-carousel { touch-action:pan-y; }
.hero-carousel-controls { position:absolute; bottom:16px; right:20px; display:flex; align-items:center; gap:4px; padding:4px; border-radius:8px; background:#172d27; color:#fff; }
.hero-carousel-controls[hidden] { display:none; }
.hero-carousel-controls button { display:grid; place-items:center; width:36px; height:36px; padding:0; border:0; border-radius:4px; color:inherit; background:transparent; cursor:pointer; }
.hero-carousel-controls button:hover { background:#354b44; }
.hero-carousel-controls button:focus-visible { outline:2px solid #fff; outline-offset:-2px; }
.hero-carousel-controls .hero-carousel-toggle { width:48px; font-size:12px; }
.hero-carousel-dots { display:flex; align-items:center; }
.hero-carousel-dots button { width:24px; }
.hero-carousel-dots button[hidden] { display:none; }
.hero-carousel-dots span { width:6px; height:6px; border-radius:50%; background:#8da59d; }
.hero-carousel-dots .active span { width:16px; border-radius:4px; background:#fff; }
.hero-carousel-count { font-size:12px; min-width:36px; text-align:center; font-variant-numeric:tabular-nums; }
@media(max-width:700px) { .hero.has-carousel .hero-copy { padding-bottom:76px; }.hero-carousel-controls { right:12px; bottom:12px; gap:0; } }
