*, *::before, *::after { box-sizing: border-box; }
html {
    min-width: 0;
    min-height: 100%;
    width: 100%;
    overflow-x: hidden;
    background: var(--color-page);
    color: var(--color-text);
    font-family: var(--font-body);
    font-synthesis: none;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}
body {
    min-width: 0;
    min-height: 100%;
    width: 100%;
    margin: 0;
    overflow-x: hidden;
    font-size: var(--text-body);
}

html.lenis,
html.lenis body {
    height: auto;
}

.lenis:not(.lenis-autoToggle).lenis-stopped {
    overflow: clip;
}

.lenis [data-lenis-prevent],
.lenis [data-lenis-prevent-wheel],
.lenis [data-lenis-prevent-touch] {
    overscroll-behavior: contain;
}

.lenis.lenis-smooth iframe {
    pointer-events: none;
}

@supports (overflow: clip) {
    html,
    body {
        overflow-x: clip;
    }
}

main, section, picture, figure { display: block; }
h1, h2, h3, p, ul, figure { margin: 0; }
ul { padding: 0; list-style: none; }
img { display: block; max-width: 100%; }
