.haven-carousel-dots { display: none; }

@media (max-width: 620px) {
  .haven-carousel-dots {
    align-items: center;
    display: flex;
    justify-content: safe center;
    margin: .15rem auto 1.25rem;
    max-width: min(100%, 280px);
    overflow-x: auto;
    scrollbar-width: none;
  }
  .haven-carousel-dots::-webkit-scrollbar { display: none; }
  .haven-carousel-dots[hidden],
  #offer-grid[hidden] + .haven-carousel-dots { display: none !important; }
  .haven-carousel-dot {
    align-items: center;
    background: transparent;
    border: 0;
    cursor: pointer;
    display: inline-flex;
    flex: 0 0 36px;
    height: 36px;
    justify-content: center;
    padding: 0;
  }
  .haven-carousel-dots.is-dense .haven-carousel-dot { flex-basis: 28px; }
  .haven-carousel-dots.is-very-dense .haven-carousel-dot { flex-basis: 24px; }
  .haven-carousel-dot::before {
    border: 1.5px solid var(--muted, #627587);
    border-radius: 50%;
    content: '';
    height: 7px;
    width: 7px;
  }
  .haven-carousel-dot.is-active::before {
    background: var(--ink, #17344f);
    border-color: var(--ink, #17344f);
    height: 9px;
    width: 9px;
  }
  .haven-carousel-dot:focus-visible { outline: 2px solid var(--ink, #17344f); outline-offset: -3px; }
}
