@import url('https://fonts.googleapis.com/css2?family=Overpass:wght@300&family=Ubuntu&display=swap');

body, ul {
    padding: 0;
    margin: 0;
    font-family: 'Ubuntu', sans-serif;
    font-size: 16px;
}
a {
    text-decoration: none;
}
.header {
    background-image: linear-gradient(90deg, hsl(13, 100%, 72%), hsl(353, 100%, 62%));
    border-bottom-left-radius: 100px;
}
.cabecalho {
    background-image: url(../images/bg-pattern-intro-desktop.svg);
    background-repeat: no-repeat;
    background-position: 25% 50%;
}
.cabecalho__logo {
    width: 100%;
}

/* Accordion */

.accordion__header {
    display: flex;
    justify-content: space-around;
    cursor: pointer;
}
.accordion__arrow {
    align-items: center;
    background-image: url('../images/icon-arrow-light.svg');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat; 
    width: 10px;
    height: 10px;
    margin: auto auto auto 5px;
    
}
.accordion__content {
    display: none;
}
.accordion__container.active .accordion__content {
    display: block;
    height: auto;
    max-height: 200px;
}
.accordion__container.active .accordion__arrow {
    transform: rotate(180deg);
}

/* Login e Sign up */

.cabecalho__entrada__mobile {
    display: flex;
    flex-direction: column;
}
.cabecalho__login {
    color: #000000;
    text-decoration: none;
}
.cabecalho__signup {
    background-color: hsl(356, 100%, 66%);
    border-radius: 50px;
    color: #ffffff;
    padding: 1.25rem;
    text-decoration: none;
}

/* section intro */

.intro {
    color: hsl(0, 0%, 100%);
    text-align: center;
    padding: 1.5rem;
    height: 45vh;
}
.intro__button {
    display: flex;
    justify-content: space-around;
    margin-top: 2rem;
}
.intro__start {
    background-color: hsl(0, 0%, 100%);
    border: none;
    border-radius: 50px;
    color: hsl(356, 100%, 66%);
    cursor: pointer;
    font-weight: 600;
    padding: .5rem .75rem;
}
.intro__learn {
    background-color: hsl(356, 100%, 66%);
    border: 1px solid hsl(0, 0%, 100%);
    border-radius: 50px;
    color: hsl(0, 0%, 100%);
    cursor: pointer;
    font-weight: 600;
    padding: .5rem .75rem;
}

/* MAIN DESIGNER*/

.blogr {
    text-align: center;
}
.designed p, .description p {
    color: hsl(207, 13%, 34%);
}
.designed, .description {
    margin: auto;
    width: 80%;
}
.designed__img__mobile, .infra__img, .description__img__mobile {
    width: 100%;
}
.infra {
    background-color: hsl(208, 49%, 24%);
    background-image: url("../images/bg-pattern-circles.svg");
    background-size: contain;
    background-repeat: no-repeat; 
    border-radius: 0 100px 0 100px;
    color: hsl(0, 0%, 100%);
    position: relative;
    padding: 1rem 3rem;
    height: 65vh;
    margin-top: 250px;
}
.infra__content {
    position: relative;
    top: 100px;
}
.infra__img {
    position: absolute;
    left: 0;
    bottom: 320px;
}

/* FOOTER */

.footer {
    background-color: hsl(240, 10%, 16%);
    border-top-right-radius: 100px;
    text-align: center;
    padding: 5rem;
    margin-top: 70px;
}
.footer__img {
    margin-bottom: 4rem;
}
.footer a, .footer h4 {
    color: hsl(240, 2%, 79%);
    text-decoration: none;
}
.footer__content {
    display: flex;
    flex-direction: column;
    line-height: 30px;
}

@media screen and (max-width: 767px) {
    .cabecalho {
        display: flex;
        justify-content: space-between;
        height: 50px;
        padding: 2rem;
        background-image: linear-gradient(90deg, hsl(13, 100%, 72%), hsl(353, 100%, 62%));
    }
    .cabecalho__desktop {
        display: flex;
        flex: auto;
    }
    .cabecalho__nav {
        display: block;
    }
    .cabecalho__select {
        background-color: #ffffff;
        border-radius: 5px;
        height: 0;
        position: absolute;
        text-align: center;
        transition: .6s;
        top: 80px;
        left: 18px;
        width: 90%;
        z-index: 1000;
        visibility: hidden;
        overflow-y: hidden;
    }
    .cabecalho__nav .cabecalho__select div {
        /*border: none;*/
        font-size: 1.25rem;
        /*margin: 0 auto 0 auto;*/

    }
    .cabecalho__nav.active .cabecalho__select {
        display: flex;
        flex-direction: column;
        height: calc(85vh);
        visibility: visible;
        overflow-y: auto;
    }
    .cabecalho__botao {
        background: none;
        border: none;
        cursor: pointer;
        display: flex;
        padding: .5rem 1rem;
    }
    .cabecalho__entrada__desktop {
        display: none;
    }
    .designed__img__desktop, .description__img__desktop {
        display: none;
    }
    .hamburguer {
        border-top: 2px solid;
        display: block;
        width: 20px;
        color: #ffffff;
    }
    .hamburguer::after, .hamburguer::before {
        content: '';
        display: block;
        width: 20px;
        height: 2px;
        background: currentColor;
        margin-top: 5px;
        transition: .3s;
        position: relative;
    }
    .cabecalho__nav.active .hamburguer {
        border-top-color: transparent;
    }
    .cabecalho__nav.active .hamburguer::before {
        transform: rotate(135deg);
    }
    .cabecalho__nav.active .hamburguer::after {
        transform: rotate(-135deg);
        top: -7px;
    }
    .cabecalho__esquerdo {
        padding: 1rem;
        margin: 0 auto 0 auto;
    }
    .accordion__header {
        padding: 1rem;
    }
    .accordion__container.active .accordion__content{
        background-color: #e7e7e7;
        border-radius: 10px;
        display: flex;
        flex-direction: column;
        line-height: 25px;
        padding: 1.5rem;
        margin-top: 10px;
        margin-bottom: 15px;
        transition: .6s;
    }
    .accordion__link {
        margin: 8px 0px;
        color: #727070;
    }
    .accordion__arrow {
        background: url(../images/icon-arrow-dark.svg);
        background-repeat: no-repeat;
        background-size: contain;
    }
}

@media screen and (min-width: 768px) {
    .cabecalho {
        display: flex;
        color: #e7e7e7;
        justify-content: space-between;
        padding: 2rem;
    }
    .cabecalho__desktop, .cabecalho__entrada__desktop {
        align-items: center;
        display: flex;
        justify-content: space-around;
    }
    .cabecalho__nav {
        margin-left: 50px;
    }
    .cabecalho__esquerdo {
        display: flex;
    }
    .cabecalho__login {
        color: #e7e7e7;
    }
    .cabecalho__signup {
        background-color: #ffffff;
        border-radius: 50px;
        color: hsl(356, 100%, 66%);
        padding: 1rem;
        text-decoration: none;
        margin-left: 15px;
        font-weight: 500;
    }
    .cabecalho__signup:hover {
        background-color: hsl(355, 100%, 74%);
        color: hsl(0, 0%, 100%);
    }

    .cabecalho__botao, .designed__img__mobile, .description__img__mobile, .cabecalho__entrada__mobile {
        display: none;
    }

    .accordion__header {
        margin-left: 30px;
    }
    .accordion__container.active .accordion__content {
        background-color: #e7e7e7;
        border-radius: 10px;
        display: flex;
        flex-direction: column;
        line-height: 30px;
        padding: 1rem;
        position: absolute;
    }

    .intro h1 {
        font-size: 45px;
        font-weight: 400;
    }
    .intro__button {
        display: block;
        margin-top: 60px;
    }
    .intro__learn {
        margin-left: 15px;
    }
    .intro__start:hover {
        background-color: hsl(355, 100%, 74%);
        color: hsl(0, 0%, 100%);
    }
    .intro__learn:hover {
        background-color: hsl(0, 0%, 100%);
        color: hsl(355, 100%, 74%);
    }
    .designed {
        overflow: hidden;
        width: 100%;
    }
    .designed__title {
        font-size: 32px;
        margin-top: 80px;
    }
    .designed__container {
        display: flex;
        justify-content: flex-end;
    }
    .designed__content {
        margin-top: auto;
        margin-bottom: auto;
        font-size: 14px;
        line-height: 25px;
        text-align: initial;
        width: 35%;
    }
    .designed__image {
        width: 50%;
    }
    .designed__img__desktop {
        position: relative;
        left: 30%;
        width: 100%;
    }
    .infra {
        background: linear-gradient(90deg, hsl(237, 17%, 21%), hsl(237, 23%, 32%));
        height: auto;
        margin-top: 100px;
        padding: 4rem 0;
    }
    .infra__container {
        display: flex;
        justify-content: space-between;
    }
    .infra__img {
        position: absolute;
        left: 80px;
        bottom: 0;
        top: 0;
        margin-top: -55px;
        width: 35%;
    }
    .infra__content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        line-height: 30px;
        position: initial;
        text-align: initial;
        width: 45%;
    }
    .description {
        display: flex;
        width: 100%;
        overflow: hidden;
        margin-top: 150px;
    }

    .description__container {
        display: flex;
        width: 100%;
    }
    .description__image {
        display: flex;
        width: 40%;
    }
    .description__img__desktop {
        position: relative;
        right: 28%;
        width: 100%;
        height: fit-content;
        align-self: center;
    }
    .description__content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        width: 35%;
        line-height: 25px;
        text-align: initial;
    }
    .footer__container {
        display: flex;
        justify-content: space-around;
        text-align: initial;
    }
    .footer__image {
        height: 50%;
        margin-top: 10px;
    }
}