html,
body {
    overflow-x: clip;
    background: var(--bsh-color-bg);
}

body {
    min-width: 320px;
}

body.bsh-menu-open {
    overflow: hidden;
}

::selection {
    color: var(--bsh-color-white);
    background: var(--bsh-color-pastel-1);
}

:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 4px;
}

.bshMain {
    min-height: 60vh;
    background: var(--bsh-color-bg);
}

.alignwide {
    width: min(calc(100% - (var(--bsh-container-pad) * 2)), var(--bsh-container-max));
    margin-inline: auto;
}

.alignfull {
    width: 100%;
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}
