@charset "UTF-8";

@media screen and (max-width: 1200px) {
    html {
        font-size: 55%;
    }
}

@media screen and (max-width: 991px) {
    .cabecalho {
        padding: 2rem 3%;
    }

    section {
        padding: 10rem 3% 2rem;
    }

    .habilidades {
        padding-bottom: 7rem;
    }

    .portfolio {
        padding-bottom: 7rem;
    }

    .contacto {
        min-height: auto;
    }

    .rodape {
        padding: 2rem 3%;
    }
}

@media screen and (max-width: 768px) {
    #icone-menu {
        display: block;
    }

    .navbar {
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        padding: 1rem 3%;
        background: var(--cor-fundo);
        border-top: .1rem solid rgba(0, 0, 0, .2);
        box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .2);
        display: none;
    }

    .navbar.activo {
        display: block;
    }

    .navbar a {
        display: block;
        font-size: 2rem;
        margin: 3rem 0;
    }

    .inicio {
        flex-direction: column;
    }

    .conteudo-inicio h3 {
        font-size: 2.6rem;
    }

    .conteudo-inicio h1 {
        font-size: 5rem;
    }

    .imagem-inicio img {
        width: 70vw;
        margin-top: 4rem;
    }

    .sobre {
        flex-direction: column-reverse;
    }

    .sobre img {
        width: 70vw;
        margin-top: 4rem;
    }

    .habilidades h2{
        margin-bottom: 3rem;
    }

    .container-portfolio {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 617px) {
    .container-portfolio {
        grid-template-columns: 1fr;
    }
}

@media screen and (max-width: 450px) {
    html {
        font-size: 50%;
    }

    .contacto form .caixas-entrada input {
        width: 100%;
    }
}

@media screen and (max-width: 365px) {
    .imagem-inicio img, .imagem-sobre img {
        width: 90vw;
    }

    .rodape {
        flex-direction: column-reverse;
    }

    .rodape p {
        text-align: center;
        margin-top: 2rem;
    }
}