/* Override template and theme button geometry without changing hero content. */
[data-rg-home-hero] .three-r-hero__dots { display: flex; gap: 0; margin: 0; }
[data-rg-home-hero] .three-r-hero__dots .three-r-hero__dot {
    appearance: none;
    box-sizing: border-box;
    display: grid;
    place-items: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    min-width: 44px;
    max-width: 44px;
    min-height: 44px;
    max-height: 44px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #fff;
    box-shadow: none;
    font-size: 0;
    line-height: 1;
    cursor: pointer;
}
[data-rg-home-hero] .three-r-hero__dot::before {
    content: '';
    box-sizing: border-box;
    width: 12px;
    height: 12px;
    border: 1px solid #fff;
    border-radius: 50%;
    background: transparent;
    box-shadow: 0 0 0 1px rgb(0 0 0 / 75%);
}
[data-rg-home-hero] .three-r-hero__dot[aria-current="true"]::before { background: #fff; }
[data-rg-home-hero] .three-r-hero__dots .three-r-hero__dot:is(:hover, :focus, :active) {
    border: 0;
    background: transparent;
    color: #fff;
    box-shadow: none;
}
[data-rg-home-hero] .three-r-hero__dots .three-r-hero__dot:focus-visible {
    outline: 2px solid #fff;
    outline-offset: -5px;
    box-shadow: inset 0 0 0 3px #000;
}
@media (prefers-reduced-motion: reduce) {
    [data-rg-home-hero] .three-r-hero__slide,
    [data-rg-home-hero] .three-r-hero__slide .three-r-hero__art,
    [data-rg-home-hero] .three-r-hero__slide.is-active .three-r-hero__art { transition: none; transform: none; }
}
