html {
    scroll-behavior: auto !important;
}

/* Acessibilidade/SEO: visível para leitores de tela e indexável,
   sem ocupar espaço visual. Usado em headings "ghost" (ex.: H2 de footer). */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

* {
    box-sizing: border-box;
    font-family: 'Inter', sans-serif !important;
}

body {
    background-color: #FEF8E8;
    margin: 0;
    padding: 0;
    overflow-x: hidden;

    /* color-orange */
    color: #f44a22;
    /* color-midnight */
    color: #161616;
    /* color-silver */
    color: #FEF8E8;
    /* color-grey */
    color: #E4E2E3;
    /* color-stone */
    color: #2E2E2E;

    color: #161616;
}

.page {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-height: 100vh;
    XXXborder: solid 1px red;
    XXXgap: 64px;
}

.page * {
    XXXborder: solid 1px red !important;
    -webkit-tap-highlight-color: transparent !important;
}

.page__header,
.page__body,
.page__footer {
    display: flex;
    width: auto;
    height: auto;
    flex-direction: column;
    XXXgap: 64px;
}

.page__header {
    position: sticky;
    top: 0;
    z-index: 3010;
    width: 100%;
}

.page__body {
    overflow-x: hidden;
    XXXgap: 64px;
}

.page__footer {
    XXXmargin-top: 64px;
}

@media (max-width: 1152px) {

    .page {
        display: flex;
        flex-direction: column;
        width: 100%;
        min-height: 100vh;
        XXXborder: solid 1px red;
        XXXgap: 48px;
    }

    .page * {
        XXXborder: solid 1px red;
    }

    .page__header,
    .page__body,
    .page__footer {
        display: flex;
        width: auto;
        height: auto;
        flex-direction: column;
        XXXgap: 64px;
    }

    .page__header {}

    .page__body {
        XXXgap: 48px;
    }

    .page__footer {}

}

@media (max-width: 832px) {

    .page {
        display: flex;
        flex-direction: column;
        width: 100%;
        min-height: 100vh;
        XXXborder: solid 1px red;
        XXXgap: 48px;
    }

    .page * {
        XXXborder: solid 1px red;
    }

    .page__header,
    .page__body,
    .page__footer {
        display: flex;
        width: auto;
        height: auto;
        flex-direction: column;
        XXXgap: 64px;
    }

    .page__header {}

    .page__body {
        XXXgap: 48px;
    }

    .page__footer {}

}