@import url("base.css");

/* Main */
main{
    display: flex;
    flex-direction: column;
    gap: 100px;
    padding: 80px 50px;
}

/* Título da section do serviço */
section.servicos > h1{
    text-align: center;
    font-size: 48px;
    font-family: var(--montesserat);
    color: var(--vermelho);
}

/* Container que engloba título + carrossel/cards + botão Solicitar Orçamento */
section.servicos{
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* Carrossel */
div.carrossel{
    margin: 20px 0 30px 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 40px;
}

/* Engloba a img e as info do card */
div.card{
    width: 400px; /* Tem que ter mesmo width que .card-img */
    display: flex; /* Usei o flex pq estava com um espaçamento entre a img e a div debaixo e eu não estava sabendo o motivo */
    flex-direction: column;
}

/* Engloba a img e o texto oculto do card */
div.card-divImg{
    display: flex;
    align-items: center;
    position: relative; /* Faz com que o texto oculto fique "dentro" da img */
    border-radius: 15px 15px 0 0;
    border: 5px solid var(--vermelho);
}

/* Imagem do card */
img.card-img{
    width: 400px; /* Tem que ter mesmo width que .card */
    height: 450px;
    border-radius: 10px 10px 0 0;
}

img.card-img:hover{
    transition: 300ms;
    filter: brightness(0.45);
}

/* Ao passar o cursos do mouse pela img do card, o texto irá aparecer */
.card-img:hover + .img-textoHover {
    transition: 400ms;
    display: block;
}

/* Texto que aparece apenas com hover */
.img-textoHover{
    position: absolute;
    padding: 0 20px;
    font-size: 20px;
    text-align: center;
    font-family: var(--montesserat);
    color: var(--branco);
    display: none;
}

/* Informações do card */
div.card-divInfo{
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 10px 0;
    border-radius: 0 0 10px 10px;
    border: 5px solid var(--vermelho);
    background-color: var(--vermelho);
}

/* Título do card */
h2.card-tituloNormal{
    font-size: 30px;
    font-family: var(--montesserat);
    color: var(--branco);
}

/* Título menor do card (pra poder caber no card e não quebrar) */
h2.card-tituloMenor{
    text-align: center;
    font-size: 25px;
    font-family: var(--montesserat);
    color: var(--branco);
}

/* Linha divisória do serviço */
.card-linhaDivisoria{
    height: 2px;
    width: 95%;
    margin: 5px 0 15px 0;
    background-color: var(--branco);
}

/* Modelo do serviço */
div.card h3{
    padding: 5px 15px;
    border-radius: 15px;
    font-size: 20px;
    font-family: var(--montesserat);
    color: var(--cinza);
    background-color: var(--branco);
}

/* Botão Solicitar Orçamento */
.buttons-inicio button{
    background-color: var(--branco);
    margin-top: 30px;
    padding: 10px 20px;
    border: solid 3px var(--vermelho);

    color: var(--vermelho);
    font-size: 20px;
    font-family: 'Montserrat',sans-serif;
    font-weight: 500;

    transition: 300ms;
    box-shadow: var(--shadow);
}

.buttons-inicio button:hover{
    background-color: var(--vermelho);
    transform: scale(1.05);
    color: var(--branco);
}

/* Container do botões do Carrossel */
div.carrossel-botoes{
    display: flex;
    align-items: center;
    gap: 20px;
    cursor: pointer;
    display: none;
}

/* Botão esquerdo/direito do carrossel */
i.btn-carrossel{
    font-size: 40px;
    color: var(--vermelho);
}

/* Linha divisória dos botões do carrossel */
div.carrossel-botoesLinhaDivisoria{
    width: 4px;
    height: 30px;
    background-color: var(--vermelho);
}


/* Footer */
footer{
    padding: 30px 110px 30px 110px;
    color: var(--branco);
    background-color: var(--vermelho);
}

/* Parte de Cima */
section.parteDeCima{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 50px;
}

/* Logo + Informaçõe */
div.footer-containerInfo{
    display: flex;
    gap: 90px;
}

/* Logo do footer */
img.footer-img{
    width: 310px;
    height: 70px;
    margin-bottom: 20px;
}

/* Localização, Whatsapp e Localização */
div.footer-infos{
    width: fit-content;
    gap: 5px;
}

i.info-icon{
    font-size: 20px;
}

div.footer-infos span{
    font-size: 20px;
    font-weight: bold;
    font-family: var(--lora);
}

/* Informação */
div.footer-infos p{
    margin-top: 10px;
    font-size: 20px;
    font-weight: 200;
    font-family: var(--lora);
}

/* Link da localização */
div.footer-infos a{
    color: var(--branco);
}

div.footer-infos a:hover{
    text-decoration: underline;
}

/* Linha divisória */
div.footer-linhaDivisoria{
    height: 1px;
    width: 100%;
    margin: 50px 0 25px 0;
    background-color: var(--branco);
}

/* Parte de baixo */
section.parteDeBaixo{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

section.parteDeBaixo p, a{
    font-size: 15px;
}

section.parteDeBaixo a{
    color: var(--branco);
}

section.parteDeBaixo a:hover{
    text-decoration: underline;
}

section.parteDeBaixo > div{
    display: flex;
    gap: 20px;
}

section.parteDeBaixo i{
    font-size: 25px;
}

section.parteDeBaixo i:hover{
    transition: 300ms;
    color: var(--azul-pastel);
}



/* Media Query */
@media screen and (max-width: 389px) {
    /* Main */
    main{
        padding: 50px 20px;
    }

    /* Título da section do serviço */
    section.servicos > h1{
        font-size: 35px;
    }

    /* Container do Carrossel */
    div.carrossel{
        width: 100%;
        justify-content: start;
        flex-wrap: unset;
        gap: 30px;
        overflow: hidden;
        scroll-behavior: smooth;  /* Suavize quando passa o card do carrossel */
    }

    /* Card */
    div.card{
        width: 250px; /* Tem que ter mesmo width que .card-img */
    }
    
    /* Imagem do card */
    img.card-img{
        width: 250px; /* Tem que ter mesmo width que .card */
        height: 250px;
    }

    /* Título do card */
    h2.card-tituloNormal{
        font-size: 15px;
    }

    /* Título menor do card (pra poder caber no card e não quebrar) */
    h2.card-tituloMenor{
        font-size: 13px;
    }

    /* Modelo do serviço */
    div.card h3{
        font-size: 13px;
    }

    /* Container do botões do Carrossel */
    div.carrossel-botoes{
        display: flex; /* Serve para os botões aparecerem, se usar o valor block os botões quebrarão */
    }


    /* Footer */
    footer{
        padding: 30px 20px;
    }

    /* Logo do footer */
    img.footer-img{
        width: 200px;
        height: 50px;
    }
    
    /* Logo + Informaçõe */
    div.footer-containerInfo{
        width: 100%;
        gap: 40px;
        flex-direction: column;
    }

    /* Acessando a div que envolve Localização */
    div.footer-containerInfo div.footer-infos:nth-child(2){
        order: 3;
    }

    /* Parte de baixo */
    section.parteDeBaixo{
        flex-direction: column-reverse;
        gap: 20px;
    }

    section.parteDeBaixo p{
        text-align: center;
    }

    /* Container do ícones do Instagram e do Facebook */
    section.parteDeBaixo > div{
        display: flex;
        gap: 50px;
    }

    /* Ícones do Instagram e do Facebook */
    section.parteDeBaixo i{
        font-size: 35px;
    }
}

@media only screen and (min-width: 390px) and  (max-width: 458px) {
    /* Main */
    main{
        padding: 50px 20px;
    }

    /* Título da section do serviço */
    section.servicos > h1{
        font-size: 35px;
    }

    /* Container do Carrossel */
    div.carrossel{
        width: 100%;
        justify-content: start;
        flex-wrap: unset;
        gap: 30px;
        overflow: hidden;
        scroll-behavior: smooth;  /* Suavize quando passa o card do carrossel */
    }

    /* Card */
    div.card{
        width: 250px; /* Tem que ter mesmo width que .card-img */
    }
    
    /* Imagem do card */
    img.card-img{
        width: 250px; /* Tem que ter mesmo width que .card */
        height: 250px;
    }

    /* Título do card */
    h2.card-tituloNormal{
        font-size: 17px;
    }

    /* Título menor do card (pra poder caber no card e não quebrar) */
    h2.card-tituloMenor{
        font-size: 17px;
    }

    /* Modelo do serviço */
    div.card h3{
        font-size: 13px;
    }

    /* Container do botões do Carrossel */
    div.carrossel-botoes{
        display: flex; /* Serve para os botões aparecerem, se usar o valor block os botões quebrarão */
    }


    /* Footer */
    footer{
        padding: 30px 20px;
    }

    /* Logo do footer */
    img.footer-img{
        width: 220px;
        height: 50px;
    }
    
    /* Logo + Informaçõe */
    div.footer-containerInfo{
        width: 100%;
        gap: 40px;
        flex-direction: column;
    }

    /* Acessando a div que envolve Localização */
    div.footer-containerInfo div.footer-infos:nth-child(2){
        order: 3;
    }

    /* Acessando a tag p de Localização */
    div.footer-infos:nth-child(2) p{
        width: 100%;
    }

    /* Remove a quebra de linha causado pela tag <br> */
    br{
        display: none;
    }

    /* Parte de baixo */
    section.parteDeBaixo{
        flex-direction: column-reverse;
        gap: 20px;
    }

    section.parteDeBaixo p{
        text-align: center;
    }


    /* Container do ícones do Instagram e do Facebook */
    section.parteDeBaixo > div{
        display: flex;
        gap: 50px;
    }

    /* Ícones do Instagram e do Facebook */
    section.parteDeBaixo i{
        font-size: 35px;
    }
}

@media only screen and (min-width: 459px) and (max-width: 598px) {
    /* Main */
    main{
        padding: 50px 20px;
    }

    /* Título da section do serviço */
    section.servicos > h1{
        font-size: 35px;
    }

    /* Container do Carrossel */
    div.carrossel{
        width: 100%;
        justify-content: start;
        flex-wrap: unset;
        gap: 30px;
        overflow: hidden;
        scroll-behavior: smooth;  /* Suavize quando passa o card do carrossel */
    }

    /* Card */
    div.card{
        width: 220px; /* Tem que ter mesmo width que .card-img */
    }
    
    /* Imagem do card */
    img.card-img{
        width: 220px; /* Tem que ter mesmo width que .card */
        height: 250px;
    }

    /* Título do card */
    h2.card-tituloNormal{
        font-size: 15px;
    }

    /* Título menor do card (pra poder caber no card e não quebrar) */
    h2.card-tituloMenor{
        font-size: 15px;
    }

    /* Modelo do serviço */
    div.card h3{
        font-size: 13px;
    }

    /* Container do botões do Carrossel */
    div.carrossel-botoes{
        display: flex; /* Serve para os botões aparecerem, se usar o valor block os botões quebrarão */
    }


    /* Footer */
    footer{
        padding: 30px 40px;
    }
    
    /* Logo + Informaçõe */
    div.footer-containerInfo{
        width: 100%;
        gap: 40px;
        flex-direction: column;
    }

    /* Acessando a div que envolve Localização */
    div.footer-containerInfo div.footer-infos:nth-child(2){
        order: 3;
    }

    /* Acessando a tag de Localização */
    div.footer-infos:nth-child(2) p{
        width: 100%;
    }

    /* Remove a quebra de linha causado pela tag <br> */
    br{
        display: none;
    }

    /* Parte de baixo */
    section.parteDeBaixo{
        flex-direction: column-reverse;
        gap: 20px;
    }

    section.parteDeBaixo p{
        text-align: center;
    }
}

@media only screen and (min-width: 599px) and (max-width: 798px) {
    /* Container do Carrossel */
    div.carrossel{
        width: 100%;
        justify-content: start;
        flex-wrap: unset;
        gap: 30px;
        overflow: hidden;
        scroll-behavior: smooth;  /* Suavize quando passa o card do carrossel */
    }

    /* Card */
    div.card{
        width: 280px; /* Tem que ter mesmo width que .card-img */
    }
    
    /* Imagem do card */
    img.card-img{
        width: 280px; /* Tem que ter mesmo width que .card */
        height: 330px;
    }

    /* Id exclusivo pro card de Modernização de Elevadores */
    img#imgModernizacao{
        width: 270.4px;
    }

    /* Título do card */
    h2.card-tituloNormal{
        font-size: 20px;
    }

    /* Título menor do card (pra poder caber no card e não quebrar) */
    h2.card-tituloMenor{
        font-size: 18px;
    }

    /* Modelo do serviço */
    div.card h3{
        font-size: 15px;
    }

    /* Container do botões do Carrossel */
    div.carrossel-botoes{
        display: flex; /* Serve para os botões aparecerem, se usar o valor block os botões quebrarão */
    }


    /* Footer */
    footer{
        padding: 30px 50px;
    }
    
    /* Logo + Informaçõe */
    div.footer-containerInfo{
        gap: 40px;
        flex-wrap: wrap-reverse; 
        justify-content: space-between;
    }

    /* Acessando a div que envolve Localização */
    div.footer-containerInfo div.footer-infos:nth-child(2){
        order: 1;
    }

    /* Acessando a tag p de Localização */
    div.footer-infos:nth-child(2) p{
        width: 100%;
    }

    /* Remove a quebra de linha causado pela tag <br> */
    br{
        display: none;
    }
    
    /* Parte de baixo */
    section.parteDeBaixo{
        flex-direction: column-reverse;
        gap: 20px;
    }
}

@media only screen and (min-width: 799px) and (max-width: 940px){
    /* Container do Carrossel */
    div.carrossel{
        width: 100%;
        justify-content: start;
        flex-wrap: unset;
        gap: 30px;
        overflow: hidden;
        scroll-behavior: smooth;  /* Suavize quando passa o card do carrossel */
    }

    /* Uso exclusivo para o carrossel de Manutenção*/
    #contentSlideManutencao{
        justify-content: center;
    }

    /* Card */
    div.card{
        width: 280px; /* Tem que ter mesmo width que .card-img */
    }
    
    /* Imagem do card */
    img.card-img{
        width: 280px; /* Tem que ter mesmo width que .card */
        height: 330px;
    }

    /* Id exclusivo pro card de Modernização de Elevadores */
    img#imgModernizacao{
        width: 100%;
    }

    /* Título do card */
    h2.card-tituloNormal{
        font-size: 20px;
    }

    /* Título menor do card (pra poder caber no card e não quebrar) */
    h2.card-tituloMenor{
        font-size: 18px;
    }

    /* Modelo do serviço */
    div.card h3{
        font-size: 15px;
    }

    /* Container do botões do Carrossel */
    div.carrossel-botoes{
        display: flex; /* Serve para os botões aparecerem, se usar o valor block os botões quebrarão */
    }


    /* Footer */
    footer{
        padding: 30px 50px;
    }

    /* Logo + Informaçõe */
    div.footer-containerInfo{
        gap: 40px;
    }
}

/* Exclusivo pro footer */
@media only screen and (min-width: 941px) and (max-width: 1005px){
    /* Footer */
    footer{
        padding: 30px 50px;
    }
}