/* Explain: Base reset, typography, and global styles for the site. - */
* {
    box-sizing: border-box;
}

html {
    width: 100%;
    max-width: 100%;
    min-height: 100%;
    overflow-x: hidden;
    background: var(--background-color) !important;
    color: var(--text-color);
    scroll-padding-top: 80px;
}

body {
    position: relative;
    width: 100%;
    max-width: 100%;
    min-height: 100%;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    background: var(--background-color) !important;
    color: var(--text-color);
    font-family: var(--font-body);
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

body::before {
    position: fixed;
    inset: 0;
    z-index: -1;
    display: block;
    background: var(--background-color);
    content: "";
}

.site-header,
main,
footer,
section {
    width: 100%;
    max-width: 100%;
}

button,
a,
select {
    cursor: pointer;
}

img, video {
    display: block;
    max-width: 100%;
}

::selection {
    background: var(--accent-color);
    color: #ffffff;
}

/* Scrollbar personalizada para um visual mais agressivo */
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    background: var(--background-color);
}
::-webkit-scrollbar-thumb {
    background: #333;
}
::-webkit-scrollbar-thumb:hover {
    background: var(--accent-color);
}

/* Google Translate Overrides - Esconde barra e estilos automáticos */
.goog-te-banner-frame,
.goog-te-banner-frame.skiptranslate,
iframe.skiptranslate { display: none !important; }
body { top: 0px !important; position: relative !important; }
.goog-tooltip,
.goog-tooltip:hover,
#goog-gt-tt,
.goog-te-balloon-frame,
.VIpgJd-ZVi9od-ORHb-OEVmcd,
.VIpgJd-ZVi9od-aZ2wEe-wOHMyf { display: none !important; visibility: hidden !important; }
.goog-text-highlight { background-color: transparent !important; border: none !important; box-shadow: none !important; }