﻿html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, th {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: top;
	text-decoration: none;
    vertical-align:baseline;
}

body {
    margin: 0;
}


/* Estilos específicos para WebKit (Chrome, Safari) */
::-webkit-scrollbar {
    width: 4px; /* Define a largura da barra de rolagem */
}

::-webkit-scrollbar-track {
    background: #ddd; /* Cor do fundo da barra de rolagem */
}

::-webkit-scrollbar-thumb {
    background: #222; /* Cor do "polegar" da barra de rolagem */
    border-radius: 0px; /* Torna a barra de rolagem mais arredondada */
}

::-webkit-scrollbar-thumb:hover {
    background: #555; /* Cor ao passar o mouse sobre o polegar da barra de rolagem */
}



/* Estilos específicos para Firefox */
/*html {
    scrollbar-width: thin;
    scrollbar-color: #222 #ddd;
}*/


/*nao deixa o width ser afetado pelo padding*/
*{ 
    -moz-box-sizing: border-box; 
    -webkit-box-sizing: border-box; 
     box-sizing: border-box; 
}

.menu{
    display:table;
    position:fixed;
    top:0px;
    right:10px;
    z-index:1000;
}

    .menu a {
        display: table;
        width: 15px;
        height: 15px;
        border-radius: 50px;
        background-color: rgba(0,0,0,0.3);
        /*border:2px solid #fff;*/
        margin-bottom: 6px;
        border: 2px solid rgba(255,255,255, 0.8);
        /*box-shadow: 0 0 0 4px rgb(0 0 0 / 20%), 0 0 5px rgb(0 0 0 / 20%), inset 0 1px 0 rgb(255 255 255 / 20%);*/
        position: relative;
    }

.menu a:hover span{
    display: table;
}

        .menu a span {
            background-color: rgba(0,0,0,0.7);
            position: absolute;
            padding: 5px;
            padding-top: 3px;
            padding-bottom: 3px;
            top: -4px;
            right: 25px;
            width: 120px;
            display: none;
            font-family: 'Oswald', sans-serif;
            font-size: 14px;
            line-height: 16px;
            letter-spacing: 0px;
            font-weight: 400;
            text-align: right;
            color: #fff;
            border-radius: 3px;
            text-transform: uppercase;
        }

        .menu a:hover {
            cursor: pointer;
            border: 3px solid rgba(255,255,255,0.6);
            /*box-shadow: 0 0 0 6px rgb(0 0 0 / 50%), 0 0 5px rgb(0 0 0 / 50%), inset 0 1px 0 rgb(255 255 255 / 20%);*/
        }



/* 1. No object-fit support: */
@media (min-aspect-ratio: 16/9) {
    #video {
        height: 300%;
        top: -100%;
    }

    .elementVideo {
        height: 300%;
        top: -100%;
    }
}

@media (max-aspect-ratio: 16/9) {
    #video {
        width: 300%;
        left: -100%;
    }

    .elementVideo {
        width: 300%;
        left: -100%;
    }
}
/* 2. If supporting object-fit, overriding (1): */
@supports (object-fit: cover) {
    #video {
        top: 0px;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .elementVideo {
        top: 0px;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

.intro2 {
    display: table;
    width: 100%;
    background-color: #000;
    /*background-image: url(../images/fundo-02.jpg);*/
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    position:relative;
    z-index:2;
}

.intro2 .legenda {
    display: table;
    position: absolute;
    bottom: 30px;
    right: 30px;
    background-color: rgba(0,0,0,0.5);
    padding-left: 4px;
    padding-right: 4px;
    border-radius: 5px;
    font-family: 'Oswald', sans-serif;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
    padding-bottom:3px;
    font-weight: 300;
    text-align: left;
    color: rgba(255,255,255,0.7);
}

.legenda2 {
    display: table;
    position: absolute;
    top: 10px;
    left: 50%; /* Move o início do bloco para o meio exato do ecrã */
    transform: translateX(-50%);
    max-width: 700px;
    margin: auto;
    background-color: rgba(255,255,255,0.6);
    padding: 10px;
    padding-bottom: 12px;
    border-radius: 5px;
    font-family: 'Oswald', sans-serif;
    font-size: 18px;
    line-height: 22px;
    letter-spacing: 0px;
    font-weight: 400;
    text-align: center;
    color: rgba(0,0,0,0.8);
    font-style: italic;
    z-index: 99;
}

.intro2v2 {
    display: table;
    width: 100%;
    background-color: #000;
    background-image: url(../images/fundo-02.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    position:relative;
}

.intro2v2 .legenda {
    display: table;
    position: absolute;
    bottom: 30px;
    right: 30px;
    background-color: rgba(0,0,0,0.5);
    padding-left: 4px;
    padding-right: 4px;
    border-radius: 5px;
    font-family: 'Oswald', sans-serif;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
    padding-bottom:3px;
    font-weight: 300;
    text-align: left;
    color: rgba(255,255,255,0.7);
}

.fundo2 {
    display: table;
    width: 100%;
    height: 500px;
    min-height: 500px;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    opacity: 0.8;
}

.fundo2v2 {
    display: table;
    width: 100%;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    opacity: 0.4;
}

.intro {
    display: table;
    width: 100%;
    background-color: #0b1612;
    background-image: url(../images/b1.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    position:relative;
    z-index:2;
    margin-top:0px;
}

.degrade2 {
    display: table;
    width: 100%;
    height: 30px;
    position: absolute;
    top: -28px;
    left: 0px;
    z-index: 100;
    background-image: url(../images/fundo-01.png);
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
}

.degrade {
    display: table;
    width: 100%;
    height: 30px;
    position: absolute;
    top: -28px;
    left: 0px;
    z-index: 100;
    background-image: url(../images/fundo-02.png);
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
}

.degrade3 {
    display: table;
    width: 100%;
    height: 30px;
    position: absolute;
    bottom: -28px;
    left: 0px;
    z-index: 100;
    background-image: url(../images/fundo-03.png);
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
}


.degrade4 {
    display: table;
    width: 100%;
    height: 30px;
    position: absolute;
    bottom: -28px;
    left: 0px;
    z-index: 100;
    background-image: url(../images/fundo-04.png);
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
}

.jwplayer {
    display: table !important;
    width: 100% !important;
    border-radius: 6px !important;
    margin-top: 10px !important;
    margin-bottom: 12px !important;
    opacity:0.9;
}



.fundo {
    display: table;
    width: 100%;
    height: 500px;
    min-height: 500px;
    position: relative;
    opacity: 0.4;
}

.title1 {
    width: 95%;
    margin: auto;
    display: table;
    font-family: 'Oswald', sans-serif;
    font-size: 32px;
    line-height: 36px;
    letter-spacing: 0px;
    font-weight: 700;
    text-align: center;
    color: rgba(255,255,255,1);
    padding-bottom: 20px;
    text-transform: uppercase;
    padding-bottom: 30px;
}

.title1 span {
    display: table;
    text-align: center;
    margin: auto;
    color: rgba(51, 93, 75,0.8) !important
}


.title11 {
    width: 95%;
    margin: auto;
    display: table;
    font-family: 'Oswald', sans-serif;
    font-size: 32px;
    line-height: 36px;
    letter-spacing: 0px;
    font-weight: 700;
    text-align: center;
    color: rgba(255,255,255,1);
    padding-bottom: 20px;
    text-transform: uppercase;
    padding-bottom: 0px;
    padding-top:100px;
}

    .title11 span {
        display: table;
        text-align: center;
        margin: auto;
        color: rgba(51, 93, 75,0.8) !important
    }


.title12 {
    width: 95%;
    max-width:350px;
    margin: auto;
    display: table;
    font-family: 'Oswald', sans-serif;
    font-size: 22px;
    line-height: 34px;
    letter-spacing: 0px;
    font-weight: 400;
    text-align: center;
    color: rgba(255,255,255,1);
    padding-bottom: 0px;
    padding-top: 20px;
}
.title2 {
    width: 20%;
    display: table;
    float: left;
    font-family: 'Oswald', sans-serif;
    font-size: 32px;
    line-height: 30px;
    letter-spacing: 0px;
    font-weight: 600;
    text-align: left;
    color: #768773 !important;
    padding-bottom: 20px;
    text-transform: uppercase;
    opacity: 0.9;
}

    .title2 span {
        color: rgba(0,0,0,0.9) !important;
    }

.subtitulo {
    width: 80%;
    display: table;
    float:right;
    font-family: 'Oswald', sans-serif;
    font-size: 24px;
    line-height: 34px;
    letter-spacing: 0px;
    font-weight: 400;
    text-align: left;
    color: rgba(0,0,0,0.6);
    margin-top:-4px;
}

    .subtitulo span {
        display: table;
        font-weight: 300;
        font-size: 20px;
        line-height: 30px;
        padding-top:16px;
    }

.title3 {
    width: 100%;
    display: table;
    font-family: 'Oswald', sans-serif;
    font-size: 42px;
    line-height: 46px;
    letter-spacing: 0px;
    font-weight: 700;
    text-align: left;
    color: rgba(255,255,255,0.8);
    padding-bottom: 20px;
    text-transform: uppercase;
    padding-top: 20px;
    padding-bottom: 20px;
}

    .title3 span {
        display: table;
        color: rgba(51, 93, 75,0.8) !important
    }

.title4 {
    width: 100%;
    display: table;
    font-family: 'Oswald', sans-serif;
    font-size: 42px;
    line-height: 48px;
    letter-spacing: 0px;
    font-weight: 700;
    text-align: left;
    color: rgba(255,255,255,1);
    padding-bottom: 20px;
    text-transform: uppercase;
    padding-top: 20px;
    padding-bottom: 20px;
}

    .title4 span {
        color: rgba(51, 93, 75,0.8) !important
    }


.title5 {
    width: 100%;
    display: table;
    font-family: 'Oswald', sans-serif;
    font-size: 32px;
    line-height: 36px;
    letter-spacing: 0px;
    font-weight: 700;
    text-align: left;
    color: rgba(255,255,255,0.8);
    padding-bottom: 20px;
    text-transform: uppercase;
    padding-top: 20px;
    padding-bottom: 20px;
}

    .title5 span {
        display: table;
        color: rgba(51, 93, 75,0.8) !important
    }
.intro .slogan {
    display: table;
    margin: auto;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    max-width: 850px;
    /*text-shadow: #000 1px 0 1px;*/
    z-index: 10;
    opacity: 0.9;
}

.intro .sloganv2 {
    max-width: 650px;
}


.sloganini {
    top: 100px !important;
}


.intro .txt1 {
    margin: auto;
    width: 100%;
    font-family: 'Oswald', sans-serif;
    font-size: 68px;
    line-height: 64px;
    letter-spacing: -1px;
    font-weight: 700;
    text-align: center;
    color: rgba(255,255,255,1);
    padding-bottom: 35px;
    text-transform: uppercase;
    /*text-shadow: 0 2px 0px rgba(0,0,0,1);*/
    -webkit-text-stroke: 1px #FFFFFF;
}

.icon {
    width:375px;
    margin-bottom: 20px;
    display: table;
    margin-left:4px;
}

.introfloat {
    display: table;
    width: 100%;
}

.intro .txt1ini {
    display:table;
    float: left;
    width: 45%;
    font-family: 'Oswald', sans-serif;
    font-size: 76px;
    line-height: 76px;
    letter-spacing: -2px;
    font-weight: 700;
    text-align: right;
    color: rgba(255,255,255,1);
    padding-bottom: 35px;
    text-transform: uppercase;
    /*text-shadow: 0 2px 0px rgba(0,0,0,1);*/
    -webkit-text-stroke: 1px #FFFFFF;
}

.intro .txt1v3 {
    margin: auto;
    max-width: 750px;
}

.intro .txt1 span {
    /*color: rgba(255,255,255,1) !important;*/
    /*color: transparent !important;
    -webkit-text-stroke: 1px #FFFFFF;*/
    font-weight: 700;
}

.intro .txt1ini span {
    /*color: rgba(255,255,255,1) !important;
    color: transparent !important;
    -webkit-text-stroke: 1px #FFFFFF;
    font-weight: 700;*/
}

.intro .txt1v2 {
    font-family: 'Oswald', sans-serif;
    font-size: 76px;
    line-height: 84px;
    letter-spacing: 0px;
    font-weight: 700;
    text-align: center;
    color: rgba(255,255,255,0.9);
    padding-bottom: 30px;
    text-transform: uppercase;
}

    .intro .txt1v2 span {
        color: #67795f !important
    }

.intro .txt2 {
    font-family: 'Oswald', sans-serif;
    font-size: 22px;
    line-height: 26px;
    letter-spacing: 0px;
    font-weight: 200;
    text-align: center;
    color: rgba(255,255,255,0.8);
    /*font-style:italic;*/
}

.scroll-downini{
    margin-right:0px !important;
}

.intro .txt2 b {
    font-weight: 400;
}

.intro .txt2ini {
    display: table;
    float: right;
    width: 50%;
    font-family: 'Oswald', sans-serif;
    font-size: 22px;
    line-height: 30px;
    letter-spacing: 0px;
    font-weight: 300;
    text-align: left;
    color: rgba(255,255,255,0.8);
    /*font-style:italic;*/
}

    .intro .txt2ini b {
        font-weight: 400;
    }


.intro .entrada {
    margin:auto;
    max-width: 530px;
    font-family: 'Oswald', sans-serif;
    font-size: 24px;
    line-height: 34px;
    letter-spacing: 0px;
    font-weight: 400;
    text-align: center;
    color: rgba(255,255,255,0.8);
    padding-bottom: 25px;
}

.intro .entrada b {
    /*color: #768773 !important;*/
    font-weight: 400;
    /*text-decoration:underline;*/

}
.intro .txt3 {
    font-family: 'Oswald', sans-serif;
    font-size: 22px;
    line-height: 30px;
    letter-spacing: 0px;
    font-weight: 400;
    text-align: center;
    padding-bottom:10PX;
    color: rgba(255,255,255,0.9);
}

.container1 {
    width: 100%;
    margin: auto;
    display: table;
    background-position: center center;
    background-size: cover;
    background-repeat: repeat;
    position:relative;
    padding-bottom:80px;
}

.space{
    padding-left:30px;
    padding-right:30px;
}


.container2 {
    width: 90%;
    max-width: 1350px;
    margin: auto;
    display: table;
    padding-top: 35px;
    margin-top: 40px;
    padding-bottom: 35px;
    border-top: 2px dotted rgba(0,0,0,0.3);
}

    .container2 .left {
        width: 100%;
        float: left;
        display: table;
        padding: 80px;
        padding-top: 60px;
        padding-bottom: 100px;
    }

    .container2 .leftv2 {
        padding-left: 0px !important;
        padding-right: 0px !important;
        padding-bottom: 20px !important;
    }

.container2 .left .txt1{
    width:100%;
    display:table;
    font-family: 'Oswald', sans-serif;
    font-size: 28px;
    line-height: 30px;
    letter-spacing: 0px;
    font-weight: 500;
    text-align: left;
    color: #f53939;
    padding-top:30px;
    padding-bottom: 10px;
    text-transform:uppercase;
}

.container2 .left .txt2{
    width:100%;
    display:table;
    font-family: 'Oswald', sans-serif;
    font-size: 20px;
    line-height: 30px;
    letter-spacing: 0px;
    font-weight: 300;
    text-align: left;
    padding-top: 28px;
}

.container2 .left strong {
    font-weight: 400;
}





.containercenter {
    width: 90%;
    max-width: 880px;
    margin: auto;
    display: table;
    padding-top: 0px;
    margin-top: 0px;
    padding-bottom: 35px;
    border-top: 2px dotted rgba(0,0,0,0.3);
}

    .containercenter .left {
        width: 100%;
        float: left;
        display: table;
        padding: 80px;
        padding-top: 40px;
        padding-bottom: 100px;
    }

    .containercenter .leftv2 {
        padding-left: 0px !important;
        padding-right: 0px !important;
        padding-bottom: 20px !important;
    }

    .containercenter .left .txt1 {
        width: 100%;
        display: table;
        font-family: 'Oswald', sans-serif;
        font-size: 28px;
        line-height: 30px;
        letter-spacing: 0px;
        font-weight: 500;
        text-align: left;
        color: #f53939;
        padding-top: 30px;
        padding-bottom: 10px;
        text-transform: uppercase;
    }

    .containercenter .left .txt2 {
        width: 100%;
        display: table;
        font-family: 'Oswald', sans-serif;
        font-size: 20px;
        line-height: 30px;
        letter-spacing: 0px;
        font-weight: 300;
        text-align: left;
        padding-top: 28px;
    }

    .containercenter .left strong {
        font-weight: 400;
    }

.logo {
    opacity: 0.8;
    display: table !important;
    width: 19% !important;
    float: left;
}

.container2 .left .txt3{
    width:75%;
    float:right;
    display:table;
    font-family: 'Oswald', sans-serif;
    font-size: 22px;
    line-height: 34px;
    letter-spacing: 0px;
    font-weight: 400;
    text-align: left;
}

.container2 .left .txt3 span{
    display:table;
    font-size: 24px;
    line-height: 30px;
    font-weight: 400;
    color: rgba(0,0,0,0.8);
    text-transform:none;
    padding-top:5px;
}

.container2 .left .txt4{
    width:100%;
    display:table;
    font-family: 'Oswald', sans-serif;
    font-size: 20px;
    line-height: 30px;
    letter-spacing: 0px;
    font-weight: 300;
    text-align: left;
    color: rgba(0,0,0,0.8);
}

.container2 .left .txt444{
    width:100%;
    display:table;
    font-family: 'Oswald', sans-serif;
    font-size: 20px;
    line-height: 30px;
    letter-spacing: 0px;
    font-weight: 300;
    text-align: left;
    color: rgba(0,0,0,0.8);
    padding-bottom:40px;
}

.container2v3 {
    width: 98%;
    max-width: 1200px;
    margin: auto;
    display: table;
}

.container2v3 .left {
    width: 100%;
    float: left;
    display: table;
    padding: 80px;
    padding-top: 80px;
    padding-bottom: 100px;
    position:relative;
}


.container3 {
    position: relative;
    width: 100%;
    max-width: 1000px;
    margin: auto;
}

.grafico{
    display:table;
    width:100%;
    opacity:0.75;
    margin:auto;
    max-width:650px;
    margin-bottom:50px;
}

.grafico2 {
    display: table;
    width: 100%;
    opacity: 0.75;
}

.gallery {
    display: table;
    width: 100%;
    max-width: 1400px;
    margin: auto;
    position: relative;
    opacity: 0.9;
    margin-top: 15px;
    margin-bottom: 12px;
}

    .gallery .images {
        display: table;
        width: 100%;
        max-width: 1100px;
        margin: auto;
        position: relative;
    }

        .gallery .images .img {
            display: table;
            width: 100%;
            height: 420px;
            background-position: center;
            background-repeat: no-repeat;
            background-size: cover;
            border-radius: 6px;
            border-bottom-left-radius: 0px;
            border-bottom-right-radius: 0px;
        }

    .gallery .btl {
        display: table;
        width: 50px;
        height: 50px;
        position: absolute;
        top: 40%;
        left: 10px;
        /*background-color: rgba(51, 93, 75,0.8) !important;*/
        padding: 10px;
        background-image: url(../images/arrowl.svg);
        background-position: center;
        background-repeat: no-repeat;
        background-size: 100%;
        border-radius: 100px;
        cursor: pointer;
        z-index: 1000;
        /*box-shadow: 0 0 0 6px rgba(255,255,255,0.6);*/
        transition:0.1s;
    }

.gallery .btl:hover{
    background-size:80%;
}

    .gallery .btr {
        display: table;
        width: 50px;
        height: 50px;
        position: absolute;
        top: 40%;
        right: 10px;
        /*background-color: rgba(51, 93, 75,0.8) !important;*/
        padding: 10px;
        background-image: url(../images/arrowr.svg);
        background-position: center;
        background-repeat: no-repeat;
        background-size: 100%;
        border-radius: 100px;
        cursor: pointer;
        z-index: 1000;
        /*box-shadow: 0 0 0 6px rgba(255,255,255,0.6);*/
        transition: 0.1s;
    }

.gallery .btr:hover{
    background-size:45%;
}

    .gallery .legenda {
        display: table;
        position: relative;
        background-color: rgba(22,22,22,0.8);
        padding: 10px;
        width: 100%;
        border-radius: 5px;
        border-top-left-radius: 0px;
        border-top-right-radius: 0px;
        font-family: 'Oswald', sans-serif;
        font-size: 18px;
        line-height: 22px;
        letter-spacing: 0px;
        font-weight: 400;
        text-align: left;
        font-style:italic;
        color: rgba(255,255,255,1);
    }

.gallery .legenda2{
    display:table;
    position:absolute;
    top:5px;
    left:5px;
    background-color:rgba(0,0,0,0.7);
    padding-left:4px;
    padding-right:4px;
    border-radius:3px;
    font-family: 'Oswald', sans-serif;
    font-size: 18px;
    line-height: 26px;
    letter-spacing: 0px;
    font-weight: 400;
    text-align: left;
    color: rgba(255,255,255,0.7);
}

.container4 {
    width: 92%;
    max-width: 1160px;
    margin: auto;
    display: table;
    padding-top: 0px;
    padding-bottom: 0px;
}


.container4 .left {
    width: 35%;
    float: left;
    display: table;
    padding-right:35px;
    position: sticky;
    top: 50px;
}

.container4 .left img{
    width: 100%;
    display:table;
    border-radius:6px;
    margin-bottom:10px;
}

    .container4 .left .txt1 {
        width: 100%;
        max-width: 600px;
        display: table;
        font-family: 'Oswald', sans-serif;
        font-size: 40px;
        line-height: 40px;
        letter-spacing: 0px;
        letter-spacing: -2px;
        font-weight: 700;
        text-align: right;
        padding-top: 32px;
        padding-bottom: 50px;
        padding-right:40px;
         text-transform: uppercase; 
        opacity: 1;
        /*border-right:2px solid rgba(0,0,0,0.8);*/
        background-image:url(../images/division2.svg);
        background-position:right top;
        background-repeat:repeat-y;
        background-size:10px;
        margin-bottom:50px;
    }

    .container4 .left .entrada {
        font-family: 'Oswald', sans-serif;
        font-size: 22px;
        line-height: 30px;
        font-weight: 400;
        font-style:italic;
        text-align: right;
        color: rgba(255,255,255,0.4);
    }

    .container4 .center .entrada {
        font-family: 'Oswald', sans-serif;
        font-size: 20px;
        line-height: 30px;
        font-weight: 300 !important;
        /*font-style: italic;*/
        text-align: center;
        color: rgba(0,0,0,0.9);
        /*padding-bottom:50px;
        padding-top:50px;*/
        position:relative;
    }

        /*.container4 .center .entrada::before {
            content: "";
            position: absolute;
            top: -15px;
            right: -20px;
            width: 30px;*/ /* Comprimento da linha horizontal */
            /*height: 30px;*/ /* Comprimento da linha vertical */
            /*border-top: 2px solid rgba(0,0,0,0.5);*/ /* Espessura e cor da linha */
            /*border-right: 2px solid rgba(0,0,0,0.5);
        }

        .container4 .center .entrada::after {
            content: "";
            position: absolute;
            bottom: -15px;
            left: -20px;
            width: 30px;
            height: 30px;
            border-bottom: 2px solid rgba(0,0,0,0.5);
            border-left: 2px solid rgba(0,0,0,0.5);
        }*/

.infografia {
    display: table;
    margin: auto;
    width: 100%;
    max-width: 800px;
    margin-top: 60px;
    padding-bottom: 40px;
    border-bottom: 2px solid rgba(118,135,115,0.4);
}

.info{
    display:table;
    margin:auto;
    width:37%;
    max-width:320px;
    float:left;
}

.container1 .entradaini {
    margin: auto;
    width: 62%;
    float:right;
    font-family: 'Oswald', sans-serif;
    font-size: 24px;
    line-height: 34px;
    letter-spacing: 0px;
    font-weight: 400;
    text-align: left;
    color: rgba(255,255,255,0.7);
    padding-top: 0px;
    padding-left:30px;
}

.container4 .left .txt1 span {
    color: #716c6a !important
}

        .container4 .left img {
            width:100%;
            max-width:180px;
            margin:auto;
            display:table;
        }
.container2v2 {
    max-width: 900px !important;
    padding-bottom: 20px !important;
}
.container4 .leftv2 {
    padding-top: 0px !important;
}
    .container4 .right .txt3 {
        width: 100%;
        display: table;
        font-family: 'Oswald', sans-serif;
        font-size: 22px;
        line-height: 34px;
        letter-spacing: 0px;
        font-weight: 400;
        text-align: left;
    }

.elenoresp{
    display:table !important;
}

.eleresp {
    display: none !important;
}

.left img {
    width: 100%;
    display: table;
    border-radius: 6px;
}

    .left .legendaP {
        width: 100%;
        display: table;
        font-family: 'Oswald', sans-serif;
        font-size: 18px;
        line-height: 26px;
        font-style:italic;
        letter-spacing: 0px;
        font-weight: 300;
        text-align: right;
        padding-right: 5px;
        padding-top: 5px;
    }

.container4 .left .txt2 {
    width: 100%;
    display: table;
    max-width: 600px;
    font-family: 'Oswald', sans-serif;
    font-size: 20px;
    line-height: 28px;
    letter-spacing: 0px;
    font-weight: 400;
    text-align: right;
    padding-bottom: 30px;
}

.container4 .left .txt3 {
    width: 100%;
    display: table;
    font-family: 'Oswald', sans-serif;
    font-size: 16px;
    line-height: 26px;
    letter-spacing: 0px;
    font-weight: 200;
    text-align: right;
    padding-bottom: 30px;
}

.jwplayer{
    display:table;
    width:100%;
    border-radius:10px;
}

.container4 .left .txt3 span {
    font-weight: 300;
}

.container4 .right {
    width: 65%;
    float: left;
    display: table;
    font-family: 'Oswald', sans-serif;
    font-size: 20px;
    line-height: 30px;
    letter-spacing: 0px;
    font-weight: 200;
    text-align: justify;
    padding-left: 0px;
    padding-top: 28px;
}

.container4 .right .entrada {
    font-family: 'Oswald', sans-serif;
    font-size: 24px;
    line-height: 34px;
    font-weight: 400;
    font-style: italic;
    text-align: left;
    color: rgba(255, 255, 255, 0.4);
    padding-bottom: 50px;
}

.container4 .right strong{
    font-weight: 400;
    color: rgba(0,0,0,1);
}

.container4 .right b{
    font-weight: 400;
}

.container4 .right img{
    width:100%;
    display:table;
    border-radius:6px;
}

.container4 .right .legendaP {
    width:100%;
    display: table;
    font-family: 'Oswald', sans-serif;
    font-size: 18px;
    line-height: 26px;
    letter-spacing: 0px;
    font-weight: 300;
    text-align: right;
    font-style:italic;
    padding-right: 5px;
    padding-top: 5px;
    color:rgba(255,255,255,0.4);
}

.division{
    display:table;
    width:100%;
    max-width:880px;
    margin:auto;
    height:30px;
    background-image:url(../images/division.svg);
    background-position:center;
    background-repeat:repeat-x;
    background-size:80%;
    margin-bottom:40px;
}


.container4 .center {
    width: 65%;
    margin: auto;
    display: table;
    font-family: 'Oswald', sans-serif;
    font-size: 20px;
    line-height: 30px;
    letter-spacing: 0px;
    font-weight: 200;
    text-align: justify;
    padding-left: 25px;
    padding-right: 25px;
    padding-top: 50px;
    padding-bottom: 50px;
}



    .container4 .center strong {
        font-weight: 400;
        color: rgba(0,0,0,1);
    }

    .container4 .center b {
        font-weight: 400;
    }

    .container4 .center img {
        width: 100%;
        display: table;
        border-radius: 6px;
    }

    .container4 .center .legendaP {
        width: 100%;
        display: table;
        font-family: 'Oswald', sans-serif;
        font-size: 18px;
        line-height: 26px;
        letter-spacing: 0px;
        font-weight: 300;
        font-style:italic;
        text-align: right;
        padding-right: 5px;
        padding-top: 5px;
        color:rgba(255,255,255,0.4);
    }



.fonte {
    display: table;
    width: 90%;
    max-width:800px;
    margin:auto;
    margin-top: 80px;
    padding-top: 30px;
    padding-bottom: 20px;
}

.fonte div{
    display: table;
    width:95%;
    max-width:1200px;
    margin: auto;
    font-family: 'Oswald', sans-serif;
    font-size: 20px;
    line-height: 28px;
    letter-spacing: 0px;
    font-weight: 200;
    text-align: center;
    padding-top: 0px;
}

.fonte div b{
    font-weight: 400;
}


.fonte span{
    padding-left:5px;
    padding-right:5px;
}



.fonte2 {
    display: table;
    width: 90%;
    max-width: 800px;
    margin: auto;
    margin-top: 80px;
    padding-top: 30px;
    padding-bottom: 20px;
    
}

    .fonte2 div {
        display: table;
        width: 95%;
        max-width: 1200px;
        margin: auto;
        font-family: 'Oswald', sans-serif;
        font-size: 18px;
        line-height: 28px;
        letter-spacing: 0px;
        font-weight: 200;
        text-align: center;
        padding-top: 0px;
    }

        .fonte2 div b {
            font-weight: 400;
        }


    .fonte2 span {
        padding-left: 5px;
        padding-right: 5px;
    }




.carousel-container {
    width: 100%; /* Ajuste a largura desejada para mostrar três itens */
    overflow: hidden;
    margin: 0 auto; /* Centraliza o contêiner */
    position:relative;
}

.carousel-track {
    display: flex;
    transition: transform 0.5s ease-in-out;
}

.carousel-item {
    min-width: 33.3333%; /* 33.3333% para três itens visíveis ao mesmo tempo */
    box-sizing: border-box;
}

.carousel-container img {
    width: 100%;
}

.carousel-container .legenda {
    display: table;
    position: absolute;
    bottom: 25px;
    right: 30px;
    background-color: rgba(0,0,0,0.5);
    padding-left: 4px;
    padding-right: 4px;
    border-radius: 5px;
    font-family: 'Oswald', sans-serif;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
    padding-bottom: 3px;
    font-weight: 300;
    text-align: left;
    color: rgba(255,255,255,0.7);
}




.friso {
    width: 100%;
    max-width: 100px;
    overflow-y: hidden;
    overflow-x: hidden;
    cursor:w-resize;
    margin-bottom:50px;
}

.friso .scroll{
    width:3300px;
}

.friso .item{
    width:100%;
    max-width:300px;
    float:left;
    padding:20px;
}

.friso .item img{
    display:table;
    width:100%;
    border-radius:5px;
    margin-bottom:10px;
}

.friso .item div{
    display:table;
    width:100%;
    padding-left:10px;
    padding-right:10px;
    font-family: 'Oswald', sans-serif;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
    padding-bottom: 3px;
    font-weight: 300;
    text-align: left;
    color: rgba(51, 93, 75,0.8) !important;
}

.friso .item div b{
    font-weight: 500;
}

    .friso .item strong {
        padding-left: 10px;
        padding-right: 10px;
        font-family: 'Oswald', sans-serif;
        font-size: 16px;
        line-height: 24px;
        letter-spacing: 0px;
        padding-bottom: 3px;
        text-align: left;
        color: rgba(0,0,0,0.7);
        font-weight: 500;
        text-transform: uppercase
    }

/*.scrollmap{
    overflow-x:scroll;
    max-width:200px;
}*/

.areamap {
    display: table;
    margin: auto;
    width: 100%;
    position: relative;
    -webkit-user-select: none; /* Safari */
    -ms-user-select: none; /* IE 10 and IE 11 */
    user-select: none; /* Standard syntax */
}
.mapa {
    display: table;
    width: 100%;
    opacity: 0.7;
}

.areamap .pin {
    display: table;
    width: 45px;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 10;
    opacity: 0.7;
    cursor:pointer;
}

.areamap .pin:hover img{
    display: table;
    width: 95%;
    margin:auto;
    margin-top:2.5%;
}

.areamap .pin img{
    display: table;
    width: 100%;
}

.noresp{
    display:table !important;
}

.resp {
    display: none !important;
}

.aba {
    display: none;
    width: auto;
    max-width: 250px;
    background-color: #fff;
    padding: 16px;
    padding-bottom: 20px;
    position: absolute;
    z-index: 1000;
    top: 270px;
    left: 320px;
    border-radius: 10px;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}

    .aba .close {
        display: table;
        width: 32px;
        position: absolute;
        top: 12px;
        right: 8px;
        padding: 10px;
        cursor: pointer;
    }

    .aba .txtsaba {
        display: table;
        width: 100%;
        letter-spacing: 0px;
        color: #27211d;
        text-align: left;
    }

        .aba .txtsaba .abatxt1 {
            width: 85%;
            display: table;
            padding-bottom: 10px;
            font-family: 'Oswald', sans-serif;
            font-size: 18px;
            line-height: 24px;
            letter-spacing: 0px;
            padding-bottom: 3px;
            text-align: left;
            font-weight: 600;
            color: rgba(0,0,0,0.7);
        }

        .aba .txtsaba .abatxt2 {
            width: 85%;
            display: table;
            font-family: 'Oswald', sans-serif;
            font-size: 16px;
            line-height: 24px;
            letter-spacing: 0px;
            padding-bottom: 3px;
            text-align: left;
            font-weight: 300;
            color: rgba(0,0,0,0.7);
        }


.bts1{
    display:table;
    width:100%;
    height:100%;
}

.bts2 {
    display: none;
    width: 100%;
    height: 100%;
}

.bts3 {
    display: none;
    width: 100%;
    height: 100%;
}

.bts4 {
    display: none;
    width: 100%;
    height: 100%;
}

.bts5 {
    display: none;
    width: 100%;
    height: 100%;
}

.container2v3 .btl {
    display: table;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 46%;
    left: 20px;
    background-color: rgba(0, 0, 0,0.7) !important;
    padding: 10px;
    background-image: url(../images/arrowl.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 35%;
    border-radius: 100px;
    cursor: pointer;
    z-index: 1100;
    box-shadow: 0 0 0 6px rgba(255,255,255,0.6);
}

    .container2v3 .btl:hover {
        background-size: 45%;
    }

.container2v3 .btr {
    display: table;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 46%;
    right: 20px;
    background-color: rgba(0, 0, 0,0.7) !important;
    padding: 10px;
    background-image: url(../images/arrowr.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 35%;
    border-radius: 100px;
    cursor: pointer;
    z-index: 1100;
    box-shadow: 0 0 0 6px rgba(255,255,255,0.6);
}

    .container2v3 .btr:hover {
        background-size: 45%;
    }



.group{
    display:table;
    width:100%;
    position:relative;
}

    .group .element {
        display: table;
        width: 20%;
        height: 460px;
        min-height: 460px;
        position: relative;
        float: left;
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
    }

        .group .element div {
            display: table;
            width: 100%;
            height: 460px;
            min-height: 460px;
            position: relative;
            /*background-color: rgba(0,0,0,0.7);*/
            background-image: url(../images/b1.jpg);
            background-position: center center;
            background-size: initial;
            background-repeat: repeat;
            position: absolute;
            top: 0px;
            left: 0px;
            opacity: 0.8;
            border-right: 1px solid rgba(255,255,255,0.2);
            transition: 0.5s;
        }

.group .element span {
    display: table;
    position: absolute;
    top: 42%;
    left: 40px;
    opacity: 1;
    font-family: 'Oswald', sans-serif;
    font-size: 26px;
    line-height: 28px;
    letter-spacing: 0px;
    font-weight: 600;
    padding-right:40px;
    text-align: left;
    text-transform: uppercase;
    color: rgba(255,255,255,0.6) !important;
    transition:0.5s;
}

.group .element:hover div{
    opacity: 0.6;
}

.group .element:hover span{
    opacity: 0.9;
    color: rgba(255,255,255,0.9) !important;
}

.scroll-down {
    display: table;
    margin: auto;
    width: 18px;
    height: 28px;
    cursor: pointer;
    z-index: 2;
    color: #fff;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    opacity: 0.8;
    margin-top: 40px;
}

    .scroll-down svg {
        display: table;
        float: left;
    }


    .scroll-down.svg svg {
        width: 22px;
        opacity: 1;
        -webkit-transition: opacity .5s;
        -moz-transition: opacity .5s;
        -ms-transition: opacity .5s;
        -o-transition: opacity .5s;
        transition: opacity .5s;
    }

    .scroll-down.svg .stroke {
        stroke: #fff;
    }

    .scroll-down.svg .scroller {
        fill: #fff;
        -webkit-animation: updown 1s infinite;
        -moz-animation: updown 1s infinite;
        -o-animation: updown 1s infinite;
        animation: updown 1s infinite;
    }

@-webkit-keyframes updown {
    0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0)
    }

    50% {
        -webkit-transform: translate(0, 5px);
        transform: translate(0, 5px)
    }

    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0)
    }
}

@-moz-keyframes updown {
    0% {
        -moz-transform: translate(0, 0);
        transform: translate(0, 0)
    }

    50% {
        -moz-transform: translate(0, 5px);
        transform: translate(0, 5px)
    }

    100% {
        -moz-transform: translate(0, 0);
        transform: translate(0, 0)
    }
}

@-o-keyframes updown {
    0% {
        -o-transform: translate(0, 0);
        transform: translate(0, 0)
    }

    50% {
        -o-transform: translate(0, 5px);
        transform: translate(0, 5px)
    }

    100% {
        -o-transform: translate(0, 0);
        transform: translate(0, 0)
    }
}

@keyframes updown {
    0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0)
    }

    50% {
        -webkit-transform: translate(0, 5px);
        transform: translate(0, 5px)
    }

    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0)
    }
}



.loader{
    display:table;
    position:fixed;
    top:0px;
    left:0px;
    z-index:1000;
    width:100%;
    height:100%;
    background-color:#000;
}

.loader img{
    display: table;
    position: fixed;
    top: 46%;
    left: 47%;
    z-index: 1000;
    width: 80px;
    height: 80px;
    opacity:0.7;
}
.inclinacao {
    clip-path: polygon(0 0, 100% 0, 100% 90vh, 0 100%);
}

.extra-margin-top {
    margin-top: -100px;
    padding-top: 80px;
}

.extra-margin-top2 {
    padding-top: 140px;
}

.extra-margin-top3 {
    padding-top: 80px;
}

.extra-margin-top4 {
    padding-top: 20px;
}

.extra-margin-bottom4 {
    padding-bottom: 20px !important;
}


.group2ini {
   margin-top:-240px !important;
}

.group2 {
    position: relative;
    width: 100%; /* Ocupa a largura total da janela do telemóvel nativamente */
    max-width: 100%; /* Impede que passe os limites do body */
    margin: 0 auto;
    z-index: 200;
    overflow-x: auto; /* Ativa o scroll horizontal nativo no mobile */
    overflow-y: hidden;
    /*background-color: #000000;*/
    -webkit-overflow-scrolling: touch; /* Torna o scroll no iPhone super suave */
}

    .group2 .scroll {
        display: flex;
        flex-direction: row;
        width: 100%; /* Agora que os filhos têm tamanho fixo, já vai funcionar perfeitamente */
    }

    .group2 .element {
        display: block;
        flex-shrink: 0;
        /* MODIFICAÇÃO: Em vez de 20%, dá-lhes um tamanho fixo em mobile */
        width: 20%;
        height: 240px; /* Mantém a altura menor do teu mobile original */
        min-height: 240px;
        position: relative;
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;

    }

        .group2 .element div {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0,0,0,0.8);
            background-image: url(../images/b22.jpg);
            background-position: center center;
            background-size: initial;
            background-repeat: repeat;
            opacity: 0.9;
            transition: 0.8s;
            border-right: 1px solid rgba(255,255,255,0.2);
        }

        .group2 .element span {
            display: table;
            position: absolute;
            top: 50%;
            left: 50%; /* Joga o início do span para o meio exato do pai */
            transform: translate(-50%, -50%);
            max-width: 160px;
            opacity: 1;
            font-family: 'Oswald', sans-serif;
            font-size: 18px;
            line-height: 18px;
            /*font-style:italic;*/
            letter-spacing: 0px;
            font-weight: 600;
            padding-left: 0px;
            padding-right: 0px;
            text-align: center;
            text-transform: uppercase;
            color: rgba(255,255,255,0.8) !important;
            transition: 0.5s;
            /*text-decoration: underline;*/
        }

        .group2 .element:hover div {
            opacity: 1;
        }

        .group2 .element:hover span {
            opacity: 0.9;
            color: rgba(255,255,255,0.9) !important;
            text-decoration: underline;
        }

        .group2 .select div {
            opacity: 1;
        }

    .group2 .select span {
        opacity: 1;
        text-decoration:underline;
    }





/*.group2 {*/
    /*display: table;*/
    /*width: 100%;
    position: relative;
    margin:auto;
    margin-top: 0px;
    z-index: 200;
}

.group2 .scroll{
    display:table;
    width:100%;
}

    .group2 .element {
        display: table;
        width: 20%;
        height: 240px;
        min-height: 240px;
        position: relative;
        float: left;
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
        background-image: none !important;
    }

        .group2 .element div {
            display: table;
            width: 100%;
            height: 240px;
            min-height: 240px;
            position: relative;
            background-color: rgba(0,0,0,0.8);
            background-image: url(../images/b22.jpg);
            background-position: center center;
            background-size: initial;
            background-repeat: repeat;
            position: absolute;
            top: 0px;
            left: 0px;
            opacity: 0.9;*/
            /*border-right: 1px solid rgba(255,255,255,0.2);*/
            /*transition: 0.8s;
        }

        .group2 .element span {
            display: table;
            position: absolute;
            top: 50%;
            left: 50%;*/ /* Joga o início do span para o meio exato do pai */
            /*transform: translate(-50%, -50%);
            max-width: 160px;
            opacity: 1;
            font-family: 'Oswald', sans-serif;
            font-size: 18px;
            line-height: 18px;*/
            /*font-style:italic;*/
            /*letter-spacing: 0px;
            font-weight: 600;
            padding-left: 0px;
            padding-right: 0px;
            text-align: center;
            text-transform: uppercase;
            color: rgba(255,255,255,0.8) !important;
            transition: 0.5s;*/
            /*text-decoration: underline;*/
        /*}

        .group2 .element:hover div {
            opacity: 1;
        }

        .group2 .element:hover span {
            opacity: 0.9;
            color: rgba(255,255,255,0.9) !important;
        }

        .group2 .select div {
            opacity: 1;
        }

    .group2 .select span {
        opacity: 1;
        text-decoration:underline;
    }*/


html {
    scroll-behavior: smooth;
}

.scroll-progress {
    position: fixed;
    right: 25px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 9999;
    mix-blend-mode: difference;
    /* MODIFICAÇÃO: Começa invisível e com transição suave */
    opacity: 0;
    pointer-events: none; /* Evita cliques acidentais enquanto está invisível */
    transition: opacity 0.4s ease-in-out;
}

    .scroll-progress.ativo {
        opacity: 1;
        pointer-events: auto; /* Reativa os cliques quando fica visível */
    }

.scroll-top {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    cursor: pointer;
}

/* Forçamos a cor base de tudo a BRANCO */
.scroll-text {
    font-family: 'Oswald', sans-serif;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 1px;
    writing-mode: vertical-lr;
    transform: rotate(180deg);
    margin-bottom: 15px;
    color: #FFFFFF; /* Base branca */
}

.scroll-line {
    position: relative;
    width: 1px;
    height: 80px;
    background-color: rgba(255, 255, 255, 1); /* Linha de fundo branca suave */
}

.scroll-point {
    position: absolute;
    top: 0;
    left: 0;
    width: 3px;
    height: 0%;
    background-color: #FFFFFF; /* O progresso também em branco */
    transition: height 0.1s ease-out;
}

.botao-voltar {
    position: fixed;
    top: 25px;
    left: 25px;
    z-index: 9999; /* Garante que fica acima de tudo */
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    cursor: pointer;
    /* Efeito de inversão automática de cor (Preto <-> Branco) */
    mix-blend-mode: difference;
}

    /* Desenhamos a seta e o texto a BRANCO puro para o blend-mode funcionar */
    .botao-voltar .seta-svg {
        width: 30px;
        height: 30px;
        color: #FFFFFF;
        transition: transform 0.3s ease;
    }

    .botao-voltar .texto-voltar {
        font-family: 'Oswald', sans-serif;
        font-size: 14px;
        text-transform: uppercase;
        letter-spacing: 1px;
        font-weight: 600;
        color: #FFFFFF;
        transition: opacity 0.3s ease;
    }

/* Micro-interação premium ao passar o rato (Hover) */
@media (min-width: 1025px) {
    .botao-voltar:hover .seta-svg {
        transform: translateX(-5px); /* A seta recua ligeiramente simulando o movimento de voltar */
    }
}

/* Ajuste fino para Mobile */
@media (max-width: 767px) {
    .botao-voltar {
        top: 15px;
        left: 15px;
    }

        .botao-voltar .texto-voltar {
            display: none; /* Em ecrãs muito pequenos deixa apenas a seta para não sobrecarregar o design */
        }
}



.chart-card {
    background: #d1d1d1;
    border-radius: 12px;
    padding: 24px;
    padding-top:30px;
    width: 100%;
    max-width: 800px;
    box-sizing: border-box;
    color: rgba(0,0,0,0.8);
    margin-bottom:30px;
}

.titlegraphic {
    font-family: 'Oswald', sans-serif;
    font-size: 22px;
    line-height: 22px;
    letter-spacing: -1px;
    font-weight: 600;
    text-align: left;
    padding-bottom: 15px;
    text-transform: uppercase;
    color: rgba(0,0,0,0.8);
}

.enquadramento {
    font-size: 0.95rem;
    line-height: 1.5;
    color: #555;
    margin-bottom: 24px;
}

.footergraphic {
    font-family: 'Oswald', sans-serif;
    margin-top: 16px;
    font-size: 16px;
    color: rgba(0,0,0,0.8);
    text-align: right;
}





Consegue-se perfeitamente! Para resolver o problema de um número "esmagar" o outro, a solução ideal é criar dois micro-gráficos de barras horizontais independentes, um dentro de cada bloco.

Desta forma, cada par de dados tem a sua própria escala visual a 100%, permitindo comparar perfeitamente a queda de um lado e o crescimento brutal do outro.

Aqui tens o código atualizado com barras estilizadas puramente em CSS (sem carregar mais JavaScript e com zero risco de conflitos):

HTML
<style >
/* Estilos isolados para o Bloco 3 com Barras */
.fundo-painel-3 {
    background: #ffffff;
    border-radius: 12px;
    padding: 24px;
    box-sizing: border-box;
    color: #333333;
}

.grid-comparativo-3 {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    margin-top: 20px;
    margin-bottom: 24px;
}

.card-metrica-3 {
    flex: 1;
    min-width: 280px;
    background: rgba(0, 0, 0, 0.02);
    padding: 20px;
    border-radius: 8px;
    box-shadow: inset 0 0 0 1px rgba(0,0,0,0.05);
}

.titulo-metrica-3 {
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #555555;
    margin-bottom: 16px;
    font-weight: bold;
}

/* Estrutura das Barras Horizontais */
.linha-barra-3 {
    margin-bottom: 14px;
}

    .linha-barra-3:last-child {
        margin-bottom: 0;
    }

.info-barra-3 {
    display: flex;
    justify-content: space-between;
    font-size: 0.95rem;
    margin-bottom: 5px;
    font-weight: 500;
}

.contentor-barra-3 {
    background-color: rgba(0, 0, 0, 0.06);
    border-radius: 4px;
    height: 12px;
    width: 100%;
    overflow: hidden;
}

.preenchimento-barra-3 {
    height: 100%;
    border-radius: 4px;
    transition: width 1s ease-in-out;
}

/* Cores e Percentagens Visuais Claras */
.perda .preenchimento-barra-3 {
    background-color: #cc3333;
}

.crescimento .preenchimento-barra-3 {
    background-color: rgba(0,0,0,0.5);
}

/* Destaque da Percentagem Geral */
.badge-destaque-3 {
    background: linear-gradient(135deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0.5) 100%);
    color: #ffffff;
    border-radius: 8px;
    padding: 20px;
    text-align: center;
    margin-top: 20px;
}

    .badge-destaque-3 .Percentagem-3 {
        font-size: 3.5rem;
        font-weight: 800;
        line-height: 1;
        display: block;
        margin-bottom: 5px;
    }

    .badge-destaque-3 .texto-badge-3 {
        font-size: 1rem;
        font-weight: 400;
        opacity: 0.95;
    }



/* Botão Hambúrguer (Fixo no Canto Superior Direito) */
.menu-hamburger-btn {
    position: fixed;
    top: 25px;
    right: 25px;
    z-index: 9998; /* Logo abaixo da seta de voltar ou progresso */
    background: none;
    border: none;
    cursor: pointer;
    padding: 10px;
    mix-blend-mode: difference; /* Garante visibilidade em qualquer fundo */
}

.linhas-hamburger {
    width: 22px;
    height: 18px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

    /* Forçamos a cor a branco puro para o blend-mode inverter corretamente */
    .linhas-hamburger span {
        display: block;
        width: 100%;
        height: 2px;
        background-color: #FFFFFF;
        border-radius: 2px;
        transition: transform 0.3s ease, opacity 0.3s ease;
    }

/* Painel Lateral Oculto por Padrão (Slide Out) */
.menu-painel-lateral {
    position: fixed;
    top: 0;
    right: -320px; /* Escondido à direita */
    width: 320px;
    height: 100vh;
    background-color: #111111; /* Fundo escuro premium */
    z-index: 10000;
    transition: right 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    padding: 40px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}

    /* Quando o menu ganha a classe ativa via JS, ele desliza para dentro do ecrã */
    .menu-painel-lateral.aberto {
        right: 0;
    }

/* Botão Fechar Interior */
.menu-fechar-btn {
    position: absolute;
    top: 20px;
    right: 25px;
    background: none;
    border: none;
    color: #888888;
    font-size: 25px;
    line-height:25px;
    cursor: pointer;
    line-height: 1;
    transition: color 0.3s;
}

    .menu-fechar-btn:hover {
        color: #FFFFFF;
    }

/* Links de Navegação (Estilo Oswald Editorial) */
.menu-titulo-auxiliar {
    font-family: 'Oswald', sans-serif;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #666666;
    display: block;
    margin-bottom: 30px;
    margin-top: 40px;
}

.menu-navegacao ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.menu-navegacao li {
    margin-bottom: 25px;
}

.menu-navegacao a {
    font-family: 'Oswald', sans-serif;
    font-size: 20px;
    line-height:20px;
    text-transform: uppercase;
    color: #FFFFFF;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 15px;
    transition: color 0.3s, transform 0.3s;
}

    .menu-navegacao a span {
        font-size: 16px;
        color: var(--cor-destaque, #888888); /* Usa a cor do tema atual para o número */
        font-weight: 300;
    }

    .menu-navegacao a:hover {
        color: var(--cor-destaque, rgba(255,255,255,0.5));
        transform: translateX(5px);
    }

/* Cortina Escura de Fundo */
.menu-overlay-fundo {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 9999;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.4s ease;
}

    .menu-overlay-fundo.visivel {
        opacity: 1;
        pointer-events: auto;
    }

/* Ajustes Mobile */
@media (max-width: 767px) {
    .menu-hamburger-btn {
        top: 10px;
        right: 5px;
    }

    .menu-painel-lateral {
        width: 90%;
        right: -90%;
    }
    /* Ocupa o ecrã todo em mobile */
}

.menu-item-home {
    margin-bottom: 30px; /* Dá um espaço extra para separar o "Início" dos temas numerados */
    border-bottom: 1px solid rgba(255, 255, 255, 0.08); /* Linha divisória fina premium */
    padding-bottom: 15px;
}

.icon-home-svg {
    width: 20px;
    height: 20px;
    color: var(--cor-destaque, #fff); /* Usa o azul ou a cor ativa do teu tema */
    transition: transform 0.3s ease;
}

/* Efeito ao passar o rato na casinha */
.menu-item-home a:hover .icon-home-svg {
    transform: scale(1.1); /* Dá um leve pulso no ícone */
}