@import url("https://fonts.googleapis.com/css?family=Raleway:100,200,300,400,500,600,700,800,900&display=swap");
@import url('https://fonts.cdnfonts.com/css/termina-test');

body {
    font-family: 'Raleway', sans-serif;
    margin: 0;
    padding: 0;
    height: 100%;
}

:root {
    --cor-creme-1: #D8B38C;
    --cor-creme-2: #D3AC8D;
    --cor-vermelho-pastel: #C67264;
    --cor-laranja: #DB854F;
    --cor-verde-claro-pastel: #ABB283;
    --cor-verde-escuro: #9E9858;
}

.mainNav {
    width: 96%;
    height: 80px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1;
    display: flex;
    justify-content: space-around;
    align-items: center;
    text-transform: uppercase;
    padding: 0 2%;
    background-color: white;
    transition: top 0.3s ease;
    box-shadow: 0 0 20px 1px rgba(0, 0, 0, 0.2);
}

.mainNav__links {
    display: flex;
}

.mainNav__link {
    letter-spacing: 1px;
    font-size: 14px;
    margin-left: 20px;
    font-weight: 600;
    transition: all 0.4s ease, transform 0.2s ease;
    padding: 2px 4px;
    transform: translateY(0px);
    color: #727b60;
    text-decoration: none;
}

.mainNav__link:hover {
    transform: translateY(-5px);
    box-shadow: inset 0px -20px 0px var(--cor-creme-1);
}

.mainHeading {
    width: 100%;
    height: 100%;
    position: relative;
    background-image: linear-gradient(to top, var(--cor-verde-claro-pastel) 0%, #b5bc8e 100%);
}

.mainHeading__content {
    width: 1110px;
    height: 600px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}

.mainHeading__text {
    z-index: 1;
    color: rgb(248, 248, 248);
    background-color: rgba(216, 179, 140, 0.6);
    padding: 40px;
    max-width: 620px;
    margin-top: 100px;
    width: 70%;
    backdrop-filter: blur(8px);
    animation: text 0.8s 0.6s ease backwards;
    position: relative;
}

.mainHeading__text:before {
    content: "";
    position: absolute;
    width: 5px;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.5);
    top: 0;
    left: 0;
    animation: line 0.8s 0.6s ease backwards;
}

.mainHeading__title,
.mainHeading__description {
    letter-spacing: 0.5px;
}

.mainHeading__preTitle {
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 2px;
    margin-bottom: 16px;
    color: #f0f0f0;
}

.mainHeading__title {
    text-transform: uppercase;
    font-weight: 200;
    letter-spacing: 2px;
    margin-bottom: 24px;
    font-size: 40px;
    color: #efefef;
}

.mainHeading__description {
    font-size: 16px;
    line-height: 26px;
}

.mainHeading__image {
    right: 0;
    max-width: 600px;
    width: 60%;
    height: 600px;
    transform: translatey(100px);
    position: absolute;
    overflow: hidden;
    animation: image 0.6s 0.2s ease backwards;
}

.mainHeading__image:before,
.mainHeading__image:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 0%;
    top: 100%;
}

.mainHeading__image:before {
    animation: imageBefore 1s 0.2s ease backwards;
}

.mainHeading__image:after {
    background-image: linear-gradient(to top, #accbee 0%, #e7f0fd 100%);
    height: 100%;
    top: 0;
    opacity: 0.2;
}

.mainHeading__image img {
    width: 100%;
    height: 100%;
    transform: rotateY(180deg);
}

.cta {
    padding: 16px 32px;
    color: #ececec;
    background-color: transparent;
    border: 1px solid rgba(219, 133, 79, 0.5);
    font-family: "Raleway", sans-serif;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 600;
    margin-top: 32px;
    cursor: pointer;
    box-shadow: inset 0px 0px 0px rgba(219, 133, 79, 0.2);
    transition: all 0.4s ease;
}

.cta:hover {
    box-shadow: inset 0px -80px 0px rgba(219, 133, 79, 0.2);
    transform: translateY(-5px);
}

.servicos {
    width: 100%;
    height: 385px;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding-top: 95px;
}

.servicos-card {
    width: 300px; 
    height: auto; 
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin: 25px 35px 0 35px;
    text-align: center; 
}

.servicos-icons-box {
    width: 88px;
    height: 88px;
    background-color: var(--cor-creme-1);
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.servicos-icons-box img {
    width: 57px;
    height: auto;
}

.servicos-card h3 {
    width: 100%;
    height: 25px;
    font-size: 20px; 
    font-weight: 400;
    padding-top: 10px;
    padding-bottom: 10px; 
}

.servicos-card p {
    font-size: 16px;
    font-weight: 300;
}

.formacao {
    display: flex;
    width: 100%;
    height: 470px;
    background-color: var(--cor-creme-2);
    justify-content: center;
    align-items: center;
    flex-direction: row;
    color: rgb(12, 12, 12);
}

.formacao-texto {
    width: 25%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: start;
    padding-left: 3%;
    scrollbar-width: none;
    scroll-behavior: smooth;
    overflow-y: auto;
    text-align: center;
}

.formacao-texto-titulo h3 {
    font-size: 26px;
    font-weight: 300;
    font-family: 'Times New Roman', Times, serif;
    margin: 15px 0 0 0;
}

.formacao-texto p {
    font-size:  20px;
    font-weight: 300;
    margin: 15px 0 15px 0;
}

.formacao-img {
    width: 25%;
    height: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-right: 3%;
}

.formacao-img img {
    width: auto;
    height: 500px;
}

.local {
    display: flex;
    width: 100%;
    height: 470px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: rgb(12, 12, 12);
    margin-top: 40px;
}

.local h3 {
    font-weight: 300;
    font-family: 'Times New Roman', Times, serif;
    font-size: 26px;
}

.icon-button {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 999;
    display: flex;
    flex-direction: column;
}

.icon-button a img {
    width: 40px;
    height: auto;
    margin-top: 5px;
}

.icon-button a img:hover {
    transform: scale(1.1);
    transition: transform 0.3s ease;
}

gmp-map {
    width: 55%;
    height: 85%;
    box-shadow: 0 0 3px 1px rgb(171, 178, 131);
}

.MainFooter {
    background-color: var(--cor-verde-claro-pastel);
    padding: 20px 0;
    font-weight: 300;
}

.MainFooter h4 {
    font-weight: 600;
}

.BoxFooter {
    display: flex;
    justify-content: space-between;
    align-items: start;
    max-width: 1200px;
    margin: 0 auto;
}

.FooterContact,
.FooterQuickLinks,
.FooterSocial {
    flex: 1;
    margin-right: 20px;
}

.FooterContact,
.FooterQuickLinks {
    margin-right: 40px;
}

.FooterContact h4,
.FooterQuickLinks h4,
.FooterSocial h4 {
    font-size: 18px;
    margin-bottom: 10px;
}

.ContactItem {
    display: flex;
    align-items: center;
}

.ContactItem a {
    color: #000;
    text-decoration: none;
}

.ContactItem img {
    margin-right: 10px; /* Espaçamento entre a imagem e o texto */
}

.ContactText h4 {
    font-size: 18px;
    margin-bottom: 5px;
}

.ContactText p {
    margin: 0;
}

.FooterQuickLinks ul {
    list-style: none;
    padding: 0;
}

.FooterQuickLinks ul li {
    margin-bottom: 5px;
}

.FooterQuickLinks ul li a {
    color: #333;
    text-decoration: none;
}

.FooterQuickLinks ul li a:hover {
    text-decoration: underline;
}

.FooterSocial ul {
    list-style: none;
    padding: 0;
    display: flex;
    justify-content: start; /* Centralizando os elementos horizontalmente */
    align-items: center; /* Centralizando os elementos verticalmente */
}

.FooterSocial ul li {
    margin-right: 10px;
}

.FooterSocial ul li a {
    display: flex; /* Para alinhar a imagem e o texto na mesma linha */
    align-items: center; /* Alinhando verticalmente */
    text-decoration: none;
    color: #333;
}

.FooterSocial ul li a img {
    margin-right: 5px; /* Espaçamento entre a imagem e o texto */
}

.FooterCredits {
    text-align: center;
    margin-top: 20px;
    font-size: 14px;
    color: #333;
}

.FooterCredits a {
    color: #333;
}

.menu-icon {
    display: none;
}

.mainHeading__content2 {
    display: none;
}

@media screen and (max-width: 1000px) {
    .mainHeading__content {
        width: 90%; /* Redefinir a largura do conteúdo principal */
    }

    .mainHeading__image {
        display: none; /* Ocultar a imagem de cabeçalho em telas menores */
    }

    .mainNav {
        width: 96%;
        height: 80px;
        top: 0;
        left: 0;
        z-index: 1;
        display: flex;
        justify-content: space-between;
        align-items: center;
        text-transform: uppercase;
        background-color: white;
        transition: top 0.5s ease;
        box-shadow: 0 0 20px 1px rgba(0, 0, 0, 0.2);
        padding-right: 2%;
        padding-left: 2%;
    }
    
    .menu-icon {
        display: block;
    }

    .menu-icon img {
        width: 30px;
        height: auto;
    }

    .mainNav__links {
        display: flex;
        flex-direction: row; /* Alteração aqui para exibir os links na vertical */
        position: absolute; /* Alteração aqui para posicionar absolutamente */
        top: 100%; /* Alteração aqui para posicioná-lo abaixo da barra de navegação */
        left: 0;
        width: 100%;
        background-color: white;
        box-shadow: 0 0 5px 1px rgba(0, 0, 0, 0.2);
        z-index: 1;
        visibility: hidden;
        opacity: 0;
        height: 80px;
        align-items: center;
        justify-content: space-evenly;
        }

    .mainNav__link:hover {
        transform: none;
        box-shadow: none;
    }
    
    .mainNav.open .mainNav__links {
        visibility: visible;
        opacity: 1;
    }

    .servicos {
        width: 100%;
        height: 950px;
        padding-top: 45px;
        padding-bottom: 45px;
        flex-direction: column; /* Permitir que os cartões de serviços quebrem para baixo em telas menores */
        align-items: center; /* Centralizar os cartões de serviços */
    }

    .servicos-card {
        margin-top: 20px;
        margin-bottom: 20px;
        margin-left: 0;
        margin-right: 0;
    }


    .formacao {
        width: 100%;
        height: auto;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .formacao-img {
        width: 100%; /* Garantir que a imagem de formação seja responsiva */
        height: auto;
        justify-content: center;
        padding: 0;
    }

    .formacao-img img {
        width: 100%;
        height: auto;
    }

    .formacao-texto-titulo {
        display: none;
    }

    .formacao-texto {
        width: 90%;
        height: auto;
        padding: 5%;
    }

    .formacao-texto p {
        font-size: 22px;
        margin: 0;
    }

    .icon-button {
        display: none; /* Ocultar o botão de ícone em telas menores */
    }

    .local {
        width: 100%
    }

    gmp-map {
        width: 95%; /* Garantir que o mapa seja responsivo */
        height: 300px;
    }

    .local p {
        width: 95%;
    }

    .BoxFooter {
        flex-direction: column; /* Exibir os itens do rodapé verticalmente */
        align-items: center; /* Centralizar os itens */
    }

    .FooterContact,
    .FooterQuickLinks,
    .FooterSocial {
        margin-right: 0; /* Remover margem direita nos itens do rodapé */
        margin-bottom: 20px; /* Adicionar espaçamento entre os itens do rodapé */
    }
}
