.carousel-controls[hidden]{display:none!important}
@media(max-width:700px){
  .mobile-carousel{display:grid!important;grid-template-columns:none!important;grid-auto-flow:column!important;grid-auto-columns:calc(100% - 24px)!important;gap:16px!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory;scroll-padding:0;overscroll-behavior-x:contain;scrollbar-width:none;position:relative;max-width:100%;padding-bottom:4px}
  .mobile-carousel::-webkit-scrollbar{display:none}
  .mobile-carousel>*{min-width:0;scroll-snap-align:start;scroll-snap-stop:always;margin:0!important}
  .mobile-carousel:focus-visible{outline:2px solid #315e0e;outline-offset:5px}
  .carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:18px 0 0;color:#315e0e}
  .carousel-controls>button{font:inherit;font-size:13px;font-weight:650;min-height:44px;padding:9px 12px;border:1px solid #ccd8c2;border-radius:24px;background:#fff;color:#315e0e;cursor:pointer}
  .carousel-controls>button:disabled{opacity:.35;cursor:default}
  .carousel-controls button:focus-visible{outline:2px solid #315e0e;outline-offset:2px}
  .carousel-status{display:flex;flex-direction:column;align-items:center;min-width:0;gap:1px}
  .carousel-hint{font-size:11px;color:#66705f;line-height:1.4}
  .carousel-dots{display:flex;align-items:center;justify-content:center;gap:0;height:30px}
  .carousel-dots button{border:0;background:transparent;padding:0;width:24px;height:30px;cursor:pointer;display:grid;place-items:center}
  .carousel-dots button::after{content:'';width:6px;height:6px;border-radius:50%;background:#cbd5c4;transition:width .2s,background .2s}
  .carousel-dots button[aria-current=true]::after{width:16px;border-radius:5px;background:#315e0e}
  .carousel-count{font-size:11px;line-height:1.2;color:#66705f}
}
@media(prefers-reduced-motion:reduce){.carousel-dots button::after{transition:none}}
