/* Theme-owned button transitions. Retains the existing template class names. */
.hvr-shutter-out-horizontal,
.hvr-shutter-in-horizontal {
    display: inline-block;
    position: relative;
    isolation: isolate;
    vertical-align: middle;
    transition: color .3s ease;
}
.hvr-shutter-out-horizontal::before,
.hvr-shutter-in-horizontal::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background: currentColor;
    transform-origin: center;
    transition: transform .3s ease;
}
.hvr-shutter-out-horizontal::before { transform: scaleX(0); }
.hvr-shutter-in-horizontal::before { transform: scaleX(1); }
.hvr-shutter-out-horizontal:is(:hover, :focus-visible, :active)::before { transform: scaleX(1); }
.hvr-shutter-in-horizontal:is(:hover, :focus-visible, :active)::before { transform: scaleX(0); }
@media (prefers-reduced-motion: reduce) {
    .hvr-shutter-out-horizontal, .hvr-shutter-in-horizontal,
    .hvr-shutter-out-horizontal::before, .hvr-shutter-in-horizontal::before {
        transition: none;
    }
}
