@import url('https://fonts.googleapis.com/css2?family=Karla:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,800;1,200;1,300;1,400;1,500;1,600;1,700;1,800&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;0,800;0,900;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
*{
    font-family: 'Karla', sans-serif;
}
main .header{
    background: #f9f9f9;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 40px 4vw;
    border-width: 1px 0;
    text-align: center;
}
main .header h3{
    font-size: 27px;
    line-height: 21px;
    color: #a8a8a8;
    margin: 0 0 10px;
    padding: 0px;
    text-transform: uppercase;
    font-weight: 400;
}
main .header ul{
    height: 21px;
    line-height: normal;
    margin: 0;
    padding: 0;
    list-style: none;
}
main .header ul li{
    border-right: 1px solid #707070;
    display: inline-block;
    padding: 0 20px;
    height: 100%;
    margin: 0;
}
main .header ul li:last-child{
    border-right: none;
}
main .header ul li a{
    line-height: 21px;
    color: #00a800;
    display: inline-block;
    height: 100%;
    text-decoration: none;
    font-size: 15px;
}
@media only screen and (max-width: 786px) {
    main .header{
        padding: 40px 0px;
    }
    main .header ul li a{
        font-size: 13.5px;
    }
}
@media only screen and (max-width: 640px) {
    main .header h3{
        font-size: 22px;
    }
    main .header ul{
        width: 100%;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    main .header ul li a{
        font-size: 12px;
        border: none;
    }
    main .header ul li{
        border: none;
    }
}
/* #END MAIN HEADER ################################################################################*/
/* #START PILARES ###################################################################################*/
main .section-1{
    width: 90%;
    max-width: 1280px;
    padding: 0;
    margin: 100px auto;
}
main .section-1 h3{
    margin: 50px 0 20px 0;
    word-wrap: break-word;
    text-align: center;
    color: #333;
}
main .section-1 .pilares{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
main .pilares .pilar{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
main .pilares .pilar .icon{
    color: #00a800;
    background-color: transparent;
    text-shadow: 0.1em 0.1em 0 rgb(100 117 133 / 10%);
    font-size: 70px;
}
main .pilar .title{
    font-size: 20px;
    margin: 10px auto;
    font-weight: 600;
    line-height: 1.2;
    text-align: center;
    color: #333;
} 
main .pilar .text{
    margin-bottom: 0;
    padding: 0 24px;
    font-size: 16px;
    color: #647585;
    text-align: center;
    line-height: 1.8;
}
@media only screen and (max-width: 916px) {
    main .section-1{
        width: 96%;
    }
    main .section-1 .pilares{
        font-size: 14px;
    }
    main .pilar .text{
        font-size: 14px;
    }
    main .pilar .title{
        font-size: 17px;
    }
}
@media only screen and (max-width: 640px) {
    main .section-1{
        margin: 50px auto;
    }
    main .section-1 .pilares{
        flex-direction: column;
    }
    main .pilares .pilar{
        width: 100%;
    }
}
/* #MAIN SERVIÇOS ####################################################################################*/
.section-2{
    background-color: #f9f9f9;
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 0;
    margin: 100px auto;
    min-height: 150vh;
}
.section-2 .header{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-end;
    width: 90%;
    margin: 5%;
}
.section-2 .header h3{
    font-size: 23px;
}
.section-2 .header p{
    padding: 12px 40px;
    text-transform: uppercase;
    background-color: #13478a;
    color: #ffffff;
    outline: none;
    border: none;
    font-family: sans-serif;
    font-size: 15px;
    font-weight: 600;
    transition: all .2s ease-in;
}


@media only screen and (max-width: 1075px) {
    .section-2 .header{
        width: 94%;
        margin: 3%;
    }
    .section-2 .header h3{
        font-size: 21px;
    }
    .section-2 .body{
        width: 96%;
        margin: 0 2%;
    }
}
@media only screen and (max-width: 1041px) {
    .section-2 .body{
        width: 99%;
        margin: 0 0.5%;
    }
    .section-2 .header{
        width: 98%;
        margin: 1%;
    }
    .section-2 .header h3{
        font-size: 20px;
    }
}
@media only screen and (max-width: 983px) {
    .section-2 .body{
        justify-content: space-around;
    }
    .section-2 .body .panel-1{
        width: 26%;
        height: auto;   
    }   
}
@media only screen and (max-width: 916px) {
    .section-2 .body .panel-1{
        width: 29%; 
    }   
    .section-2 .panel-1 a{
        font-size: 13px;
    }
}
@media only screen and (max-width: 786px) {
    .section-2 .panel-2 .btn{
        width: 100%;
    }
}
@media only screen and (max-width: 640px) {
    .section-2 .header{
        flex-direction: column;
    }
    .section-2 .header h3{
        font-size: 18px;
    }
    .section-2 .body{
        flex-direction: column;
        justify-content: center;
    }
    .section-2 .header p{
        margin-right: 20px;
    }
    .section-2 .body .panel-1{
        width: 95%;
    }
}
.service-container {
            display: flex;
            justify-content: flex-end; /* Alinha os itens à direita */
            flex-wrap: wrap;
            width: 88%;
            margin-left: 6%;
        }
        .service-item {
            flex: 1 1 calc(25% - 20px); /* Quatro colunas */
            box-sizing: border-box;
            display: flex;
            flex-direction: column;
            padding: 15px;
            margin: 10px; /* Adiciona espaçamento entre os itens */
            border: 1px solid #ddd;
            border-radius: 8px;
            background-color: #f9f9f9;
        }
        .section-2 .panel-1 h3:before {
            content: "";
            position: absolute;
            left: 0;
            top: 0px;
            height: 1px;
            width: 20%;
            border-bottom: 2px solid #13478a;
            margin-top: 50px;
        }
        .section-2 .panel-1 h3:after {
            content: "";
            position: absolute;
            left: 60px;
            top: 0px;
            height: 1px;
            width: 72%;
            border-bottom: 2px solid #e4e2e2;
            margin-top: 50px;
        }
        .panel-1 span{
            line-height: 1.5;
            text-align: justify
        }
        .service-item img {
            max-width: 100%;
            height: auto; /* Ajusta a altura para manter a proporção da imagem */
            border-radius: 8px;
            margin-bottom: 15px;
        }
        .service-group {
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            flex-grow: 1;
        }
        .service-group .desc {
            font-size: 18px;
            font-weight: bold;
            margin-bottom: 10px;
            text-transform: uppercase;
            font-weight: 400;
            font-family: 'Playfair Display', serif;
        }
        .service-group .service_desc {
            font-size: 14px;
            margin-bottom: 15px;
            line-height: 1.5;
        }
        .service-group .service-btn {
            padding: 8px 16px;
            background-color: #13478a;
            color: #fff;
            text-decoration: none;
            border-radius: 4px;
            text-align: center;
        }
        .service-group .service-btn:hover {
            background-color: #0d3b6e;
        }
        .section-2 .panel-1 h3{
            font-size: 20px;
            line-height: 45px;
            color: #a8a8a8;
            margin: 0 0 10px 0;
            padding: 0px;
            text-transform: uppercase;
            font-weight: 400;
            font-family: 'Playfair Display', serif;
            width: auto;
            height: 60px;
            position: relative;
            z-index: 1;
        }
        @media (max-width: 1024px) {
            .service-item {
                flex: 1 1 calc(33.333% - 20px); /* Três colunas */
            }
        }

        @media (max-width: 768px) {
            .service-item {
                flex: 1 1 calc(50% - 20px); /* Duas colunas */
            }
        }

        @media (max-width: 480px) {
            .service-item {
                flex: 1 1 calc(100% - 20px); /* Uma coluna */
            }
        }
/* #MAIN IT SERVICES ######################################################################################*/
.section-3{
    display: flex;
    flex-direction: column;
    align-items: center;
}
.section-3 .header{
    display: flex;
    flex-direction: column;
    margin: 0px 200px;
    background: transparent;
}
.section-3 .header h2{
    text-align: center;
    font-size: 40px;
    font-family: 'Raleway', sans-serif;
    font-weight: 300;
    text-transform: uppercase;
    margin-top: 0;
    line-height: 1.3;
    color: #333;
}
.section-3 .header hr{
    background: #00a800;
    width: 50px;
    margin: 20px auto;
    display: block;
    height: 3px;
    border: none;
    box-sizing: content-box;
}
.section-3 .header p{
    text-align: center;
    font-size: 18px;
    font-family: 'Karla', sans-serif;
    font-weight: 300;
    color: #424242;
    line-height: 1.8;
    margin: 0 0 10px;
}
.section-3 .body{
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    width: 100%;
    padding: 10px 100px;
}
.section-3 .body .sv{
    display: flex;
    flex-direction: column;
    align-items: center;
    box-sizing: border-box;
    padding: 0!important;
    clear: both!important;
    position: relative!important;
    min-height: 1em!important;
    margin: 0 0 30px!important;
    line-height: 100%;
    overflow: visible;
    width: 21%;
}
.section-3 .body a{
    text-decoration: none;
    transition: color .25s ease;
    color: #000;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.section-3 .body i{
    font-size: 55px;
    color: #00a800;
    margin: 0 auto;
    float: none;
}

.section-3 .body hr{
    background: #e6e6e6;
    width: 50px;
    margin: 20px auto;
    display: block;
    height: 3px;
    border: none;
    box-sizing: content-box;
}

.section-3 .body h4{
    font-size: 14.5px;
    line-height: 18px;
    font-weight: 600;
    font-family: 'Karla', sans-serif;
    text-transform: uppercase;
    text-align: center;
}
.section-3 .body span{
    font-size: 13px;
    line-height: 18px;
    text-align: center;
}
@media only screen and (min-width: 1361px) {
    .section-3 .body i{
        font-size: 65px;
    }
    .section-3 .body h4{
        font-size: 17px;
    }
    .section-3 .body span{
        font-family: 'Karla', sans-serif;
        font-size: 16px;
        font-weight: 300;
    }
}
@media only screen and (max-width: 1075px) {
    .section-3 .header{
        margin: 0 100px;
    }
    .section-3 .body{
        padding: 10px 30px;
    }
}
@media only screen and (max-width: 786px) {
    .section-3 .header h2{
        font-size: 35px;
    }
    .section-3 .header{
        margin: 0 40px;
    }
    .section-3 .header p{
        font-size: 15px;
    }
    .section-3 .body .sv{
        width: 23%;
    }
}
@media only screen and (max-width: 640px) {
    .section-3 .body{
        flex-direction: column;
    }
    .section-3 .body .sv{
        width: 100%;
    }
}   
@media only screen and (max-width: 533px) {
    .section-3 .header h2{
        font-size: 28px;
    }
}
@media only screen and (max-width: 442px) {
    .section-3 .header h2{
        font-size: 24px;
    }
    .section-3 .header{
        width: 97%;
    }
    .section-3 .header p{
        font-size: 13.5px;
    }
}
/* #MAIN SECÇÃO 4 #####################################################################################*/
.section-4{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 20px 130px;
    min-height: 60vh;
} 
.section-4 .sv{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    height: 270px;
    width: 500px;
    background-position: center;
    text-decoration: none;
}
.section-4 .sv1{
    background: linear-gradient(to right, rgba(15, 0, 228, 0.5), rgba(0, 4, 231, 0.5)), url(../img/suporte\ tecnico.jpg);
    color: #f9f9f9;
}
.section-4 .sv2{
    background: linear-gradient(to right, rgba(214, 214, 214, 0.9), rgba(184, 184, 184, 0.9)), url(../img/consultoria.jpg);
}
.section-4 .sv2{
    color: #000;
}
.section-4 .sv .top{
    width: 100%;
    padding: 50px 80px;
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: center;
}    
.section-4 .sv .top i{
    font-size: 70px;
}
.section-4 .sv2 .top i{
    color: #0046ab;
}
.section-4 .sv .top h3{
    font-size: 25px;
    line-height: 18px;
    font-weight: 300;
    font-family: 'Karla', sans-serif;
}
.section-4 .sv .top strong{
    font-size: 13px;
    text-transform: uppercase;
    font-weight: 700;
}
.section-4 .sv2 .top strong{
    font-size: 25px;
    font-weight: 700;
}
.section-4 .sv p{
    color: #e8eaf6;
    font-size: 14px;
    font-family: 'Karla', sans-serif;
    line-height: 1.5;
    letter-spacing: 1px;
    text-align: center;
    padding: 0 40px;
}
.section-4 .sv2 p{
    color: #333;
}
@media only screen and (max-width: 1075px) {
    .section-4{
        padding: 20px;
    }
}
@media only screen and (max-width: 983px) {
    .section-4{
        padding: 0px;
        margin: 1%;
        width: 98%;
        justify-content: space-around;
    }
    .section-4 .sv{
        width: 47%;
    }
}
@media only screen and (max-width: 786px) {
    .section-4 .sv .top{
        padding: 50px 20px;
    }
}
@media only screen and (max-width: 640px) {
    .section-4{
        flex-direction: column;
    }
    .section-4 .sv{
        width: 100%;
        margin-top: 10px;
    }
}
/* #MAIN SECTION 5 ######################################################################################*/
.section-5{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 35vh;
    background-color: #13478a;
    color: #fff;
    margin-top: 30px;
}
.section-5 h4{
    color: #fff;
    font-size: 28px;
    font-weight: 700;
    font-family: 'Karla', sans-serif;
    margin-top: 0;
    margin-bottom: 0.5rem;
    line-height: 1.2;
}
.section-5 p{
    margin-top: 0;
    margin-bottom: 1rem;
    font-family: 'Karla', sans-serif;
}
.section-5 a{
    text-decoration: none;
    font-family: 'Karla', sans-serif;
    font-weight: 600;
    font-size: 14px;
    letter-spacing: 1px;
    display: inline-block;
    padding: 10px 35px;
    border-radius: 5px;
    transition: 0.5s;
    margin-top: 10px;
    border: 2px solid #fff;
    color: #fff;
}
.section-5 a:hover{
    background-color: #fff;
    color: #006bbd;
}
@media only screen and (min-width: 1361px) {
    .section-5 h4{
        font-size: 35px;
    }
    .section-5 p, .section-5 a{
        font-size: 16px;
    }
}
@media only screen and (max-width: 453px) {
    .section-5 h4{
        font-size: 24px;
    }
    .section-5 p{
        text-align: center;
        font-size: 13.5px;
    }

}
/* #FOOTER ###############################################################################################*/

/* #MAIN FUNCIONAMENTO ###############################################################################*/
.funcionamento{
    display: flex;
    flex-direction: column;
    align-items: center;
    background: linear-gradient(to right, rgba(2, 0, 27, 0.6), rgba(0, 1, 41, 0.6)), url(../img/IMG_4382.JPG);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100%;
    color: #fff;
    transition: 10s ease-in;
}
.funcionamento:hover{
    background-size: 150%;
}
@keyframes zoomIn {
    0%{
        background-size: 100%;
    }
    100%{
        
    }
}
.funcionamento .header{
    background-color: transparent;
}
.funcionamento .header h3{
    padding: 15px;
    font-family: 'Karla', sans-serif;
    color: #FFF;
    font-weight: 600;
}
.funcionamento .header p{
    font-family: 'Karla', sans-serif;
}
.funcionamento .body{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: 80%;
    border-top: 2px dotted rgb(179, 170, 170);
    margin-top: 80px;
    font-family: 'Karla', sans-serif;
}
.funcionamento .body .panel{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    margin: 0 20px;
}
.funcionamento .body .panel i{
    position: absolute;
    font-size: 50px;
    color: #00a800;
    background-color: #f9f9f9;
    border: 3px solid #00a800;
    width: 100px;
    height: 100px;
    border-radius: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    top: -50px;
} 
.funcionamento .body .panel h4{
    margin-top: 60px;
    text-transform: uppercase;
    font-size: 15px;
    font-weight: 700;
    color: #FFF;
    padding: 20px 0px;
    text-align: center;
}
.funcionamento .body .panel span{
    text-align: center;
}
.funcionamento a{
    text-decoration: none;
    color: #ffffff!important;
    border-width: 6px!important;
    border-color: #00a800;
    background-color: #00a800;
    display: inline-block;
    transition: all 300ms ease 0ms;
    padding: 13px 20px;
    margin: 40px 0 70px 0;
    text-transform: uppercase;
    font-size: 16px;
    cursor: pointer;
    border-radius: 4px;
}
.funcionamento a i{
    font-size: 18px;
    transform: scale(1);
    animation: pulse 1s infinite;
}
@keyframes pulse {
	0% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.7);
	}

	70% {
		transform: scale(1);
		box-shadow: 0 0 0 10px rgba(0, 0, 0, 0);
	}

	100% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
	}
}
@media only screen and (min-width: 1361px) {
    .funcionamento .body .panel h4{
        font-size: 18px;
    }
    .funcionamento .body .panel span, .funcionamento .header p{
        font-size: 16px;
    }
}
@media only screen and (max-width: 983px) {
    .funcionamento .body{
        width: 90%;
    }
}
@media only screen and (max-width: 786px) {
    .funcionamento{
        height: 90vh;
    }
    .funcionamento .body{
        margin-top: 50px;
    }
    .funcionamento .body .panel i{
        height: 80px;
        width: 80px;
    }
    .funcionamento .body .panel h4{
        margin-top: 40px;
        font-size: 14px;
        padding: 10px 0px;
    }
    .funcionamento .body .panel span{
        font-size: 13px;
    }
    .funcionamento .header p{
        font-size: 14px;
    }
}
@media only screen and (max-width: 640px) {
    .funcionamento .body{
        width: 100%;
    }
    .funcionamento .body .panel i{
        width: 60px;
        height: 60px;
        font-size: 40px;
        top: -35px;
    }
    .funcionamento .body .panel h4{
        font-size: 12px;
        font-weight: 600;
        margin-top: 30px;
    }
    .funcionamento .body .panel span{
        font-size: 11px;
    }
    .funcionamento a{
        margin: 30px;
        font-size: 14px;
    }
    .funcionamento .header h3{
        font-size: 18px;
    }
    .funcionamento .header p{
        font-size: 13px;
    }
}
@media only screen and (max-width: 560px) {
    .funcionamento{
        height: 135vh;
    }
    .funcionamento .body{
        flex-direction: column;
        border: none;
        margin-top: 10px;
    }
    .funcionamento .body .panel{
        min-height: 150px;
    }
    .funcionamento .body .panel i{
        width: 80px;
        height: 80px;
        font-size: 50px;
        top: -10px;
    }
    .funcionamento .body .panel h4{
        font-size: 12px;
        font-weight: 600;
        margin-top: 30px;
    }
    .funcionamento .body .panel span{
        font-size: 11px;
    }
    .funcionamento a{
        margin: 30px;
        font-size: 14px;
    }
    .funcionamento .header h3{
        font-size: 18px;
    }
    .funcionamento .header p{
        font-size: 13px;
    }
}