* {
    margin: 0;
    padding: 0;
}

body {
    max-width: 100vw;
    height: 100vh;
    font-family: "Montserrat", sans-serif;
}

h1 {
    line-height: 52px;
    font-weight: 650;
}

h1 b {
    font-weight: 650;
    color: #4a90e2;
    transition: ease-in-out 300ms;
}


h2 {
    font-size: 22px;
}

h3 {
    font-size: 16px;
    font-weight: 400;
    color: #333;
    line-height: 24px;
}

h3 b {
    font-weight: 400;
    line-height: 60px;
}

h5 {
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: #333;
}

.header h1 b:hover {
    cursor: pointer;
    font-size: 54px;
}


.header {
    width: 100%;
    min-height: 550px;
    background-color: #0a3d6210;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-block: 2%;
    flex-wrap: wrap;
}

#headerInfo {
    width: 800px;
    font-size: 26px;
}

#headerInfo h1 {
    width: 60%;
}

#headerInfo h3 {
    width: 71%;
    margin-top: 30px;
    text-align: justify;
}

#headerBtns {
    margin-top: 30px;
    display: flex;
    gap: 20px;
}

.btn {
    display: flex;
    padding-block: 8px;
    padding-inline: 20px;
    border-radius: 8px;
    border: none;
    align-items: center;
    gap: 5px;
    font-weight: 600;
    box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.25);
}

.blueBtn {
    background-color: #4a90e2;
    color: #fff;
    transition: ease-in-out 250ms;
}

.btn:hover {
    cursor: pointer;
}

.blueBtn:hover {
    transform: scale(1.04);
}

.whiteBtn {
    background-color: #fff;
    transition: ease-in-out 250ms;
}

.whiteBtn:hover {
    background-color: #4a90e2;
    color: #fff;
}

#headerInfo h5 {
    margin-top: 40px;
    text-align: left;
}

#headerMockup {
    background-color: #eee;
    display: flex;
    justify-content: center;
    width: 300px;
    height: 450px;
    box-shadow: 0px 0px 40px 0px #4a90e2;
    transition: ease-in-out 300ms;
}

#headerMockup:hover {
    cursor: pointer;
    transform: scale(1.05);
}

#cardsSection {
    margin-top: 50px;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    padding-bottom: 50px;
}

#cardsSection h3 {
    margin-top: 20px;
    width: 70%;
}

.cardsTitle h1 b:hover {
    cursor: pointer;
    font-size: 34px;
}

.cards {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-block: 30px 20px;
    gap: 25px;
}

.card {
    width: 400px;
    height: 250px;
    background-color: #fff;
    border-radius: 12px;
    box-shadow: 0px 3px 3px  rgba(0, 0, 0, 0.25);
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding-block: 50px;
    transition: ease-in-out 250ms;
}

.card:hover {
    transform: scale(1.05);
}

.cardIcon {
    width: 80px;
    height: 80px;
    margin-inline: 120px;
    background-color: #4a90e2;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.card h5 {
    width: 80%;
    text-align: center;
}

#comoFunciona {
    width: 100%;
    background-color: #0a3d6210;
    padding-block: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    flex-wrap: wrap;
}

.passos {
    width: 100%;
    padding-block: 40px;
    display: flex;
    justify-content: center;
}

.passosCard {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.passosIcon {
    margin-inline: 200px;
    width: 80px;
    height: 80px;
    border-radius: 100px;
    background-color: #4a90e2;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: ease-in-out 300ms;
}

.passosIcon:hover {
    transform: scale(1.1);
}

.passos h2 {
    margin-block: 20px;
}

.passos h3 {
    width: 90%;
}

#preco {
    width: 100%;
    padding-block: 40px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.precoCard {
    width: 500px;
    margin-top: 40px;
    margin-inline: 70%;
    background-color: #fff;
    box-shadow: 0px 2px 10px 1px rgba(0, 0, 0, 0.25);
    border-radius: 12px;
    display: flex;
    justify-content: center;
    padding-block: 40px;
    flex-wrap: wrap;
    padding-inline: 20px;
    transition: ease-in-out 300ms;
}

.precoCard:hover {
    transform: scale(1.02);
}

.precoIcon {
    width: 80px;
    height: 80px;
    background-color: #4a90e2;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100px;
    margin-inline: 200px;
    margin-bottom: 10px;
    transition: ease-in-out 300ms;
    cursor: pointer;
}

.precoIcon:hover {
    transform: scale(1.1);
}

#preco h3 center {
    margin-bottom: 20px;
}

.incluso {
    display: flex;
    width: 100%;
    padding-inline: 20px;
    justify-content: left;
    flex-wrap: wrap;
}

.incluso img {
    margin-top: 5px;
    margin-right: 10px;
}

.incluso h3 {
    font-weight: 500;
    padding-right: 200px;
    margin-bottom: 10px;
}

#partir {
    width: 100%;
    padding-block: 10px;
    text-align: center;
}

.priceBtn {
    padding-inline: 25%;
    padding-block: 2%;
    margin-top: 20px;
    text-justify: center;
}

#call {
    width: 100%;
    padding-block: 40px;
    background-color: #4a90e2;
    display: flex;
    justify-content: center;
    color: #fff;
    flex-wrap: wrap;
    gap: 10px;
}

#call h1 {
    color: #fff;
    width: 100%;
    text-align: center;
}

#call h3 {
    color: #fff;
    width: 40%;
    padding-inline: 30%;
    text-align: center;
}

.callBtns {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 20px;
}

.demoBtn {
    padding-inline: 30px;
    padding-block: 10px;
    color: #4a90e2;
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.25);
    transition: ease-in-out 250ms;
}

.demoBtn:hover {
    transform: scale(1.05);
}

.wppBtn {
    padding-inline: 30px;
    padding-block: 10px;
    background-color: #25D366;
    color: #fff;
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.25);
    transition: ease-in-out 250ms;
}

.wppBtn:hover {
    transform: scale(1.05);
}

.callBtns img {
    margin-right: 5px;
}

footer {
    max-width: 100%;
    padding-block: 20px;
    padding-inline: 50px;
    display: flex;
    justify-content: center;
    line-height: 80px;
    gap: 10px;
}

footer img {
    transition: ease-in-out 300ms;
}

footer img:hover {
    cursor: pointer;
    transform: scale(1.1);
}

footer h2 {
    transition: ease-in-out 300ms;
}

footer h2:hover {
    cursor: pointer;
    font-size: 24px;
}

@media (max-width: 768px) { 
    
    body {
        max-width: 100vw;
        height: 100vh;
    }

    h1 {
        line-height: 44px;
    }

    h5 {
        font-size: 12px;
    }

    .header {
        padding-block: 40px 40px;
    }

    #headerInfo {
        font-size: 20px;
        padding-inline: 20px;
    }

    #headerInfo h1 {
        width: 100%;
    }

    #headerInfo h3 {
    width: 90%;
    margin-top: 30px;
    padding-inline: 5%;
    text-align: center;
    }

    #headerBtns {
        flex-wrap: wrap;
    }

    .btn {
        padding-block: 12px;
    }

    #headerInfo h5 {
        margin-bottom: 20px;
        text-align: center;
    }

    #cardsSection {
        max-width: 100%;
    }

    .cardsTitle {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        padding-inline: 20px;
    }

    .cards {
        flex-wrap: wrap;
    }

    .card {
        width: 350px;
    }

    .cardIcon {
        width: 80px;
        height: 80px;
        margin-inline: 125px;
    }

    #cardsSection h3 {
        width: 95%;
    }

    #comoFunciona {
        max-width: 100% !important;
    }

    .passos {
        flex-wrap: wrap;
        gap: 40px;
    }

    .passosCard {
        width: 100%;
    }

    .passosIcon {
        margin-inline: 20px;
    }

    #preco {
        text-align: center;
    }

    .precoCard {
        min-width: 300px;
    }

    .precoIcon {
        margin-inline: 20px;
    }

    .incluso h3 {
        padding-right: 10%;
    }

    .priceBtn {
        padding-inline: 15%;
    }

    #call h3 {
        margin-top: 10px;
        width: 90%;
        padding-inline: 0;
    }

    .callBtns {
        flex-wrap: wrap;
    }
}