:root {
    --body-margin:1rem;
    --white: rgba(255, 255, 255);
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    text-rendering: geometricPrecision;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-tap-highlight-color: transparent;
}

html {
    overscroll-behavior-y: none;
}

html, body {
    width: 100%;
    min-height: 100%;
    margin: 0;
}

.is-hidden {
    display: none;
}

.inline {
    display: inline-block;
}

a:hover,
button:hover,
.active,
.cover:hover,
.logo:hover, .logo img:hover, .logo a img:hover,
.home-cover:hover {
    opacity: 0.5;
    cursor: pointer;
}

.logo-zone:hover, .logo-zone a:hover {
    opacity: 1;
    cursor: inherit;
}

img {
    width: 100%;
    height: auto;
    display: block;
}

.layout-error {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 50vh;
}

.footer {
    min-height: 2rem;
}

button, button *, a, a * { 
    cursor: pointer; 
}

/* mobile */
@media (max-width: 720px) {
    .desktop {
        display:none !important;
    }
}

/* desktop */
@media (min-width: 721px) {
    .mobile {
        display: none !important;
    }
}