@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
    --white: #FFFFFF;
    --black: #000;
    --brown: #3B240E;
    --light-brown: #792C02;
    --dark-brown: #2E1B09;
    --accent-color: #D65C19;
    --accent-color-light: #FFEED8;
    --btn-color: #296200;
}

body {
    font-family: 'Montserrat', sans-serif;
}

h1 {
    color: var(--white);
    font-size: 48px;
    font-weight: 800;
    text-transform: uppercase;
    line-height: 72px;
    letter-spacing: 0px;
}

h2 {
    color: var(--light-brown);
    font-size: 40px;
    font-weight: 800;
    line-height: 48px;
    letter-spacing: 0px;
}

h3 {
    color: var(--light-brown);
    font-size: 20px;
    font-weight: 700;
    line-height: 41.6px;
    letter-spacing: 0px;
}

p {
    color: var(--light-brown);
    line-height: 32px;
}

section {
    padding: 110px 0px 110px 0px;
}

/* nav */
.navbar {
    background-color: var(--white);
}

.logo {
    max-width: 100%;
    width: 180px;
}

.nav-link {
    color: var(--light-brown);
    font-size: 20px;
    font-weight: 300;
    line-height: 40px;
    letter-spacing: 0px;
    border-bottom: 2px solid transparent;
    transition: all 0.3s ease-in-out;
}

.nav-link:hover {
    color: var(--light-brown);
    border-bottom: 2px solid var(--light-brown);
}

/* end nav */

/* hero */
.hero-section {
    background-image: linear-gradient(to bottom, rgba(43, 31, 22, 0.7), rgba(43, 31, 22, 0.7)), url('../images/banner-principal-elegance-decora.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

.home {
    padding: 200px 10px;
}

.home .content {

    #enhance {
        font-size: 24px;
    }

    p {
        font-size: 20px;
        line-height: 40px;
    }

    .bt {
        display: grid;
        place-items: center;
    }

    .bt a {
        text-decoration: none;
        color: var(--white);
        font-size: 20px;
        font-weight: 700;
        text-transform: uppercase;
        border: none;
        border-radius: 40px;
        background-color: #3C8F00;
        padding: 15px 40px;
    }

    .bt a:hover {
        background-color: var(--btn-color);
    }

    .icon-hero {
        display: grid;
        place-items: center;

        img {
            max-width: 100%;
            width: 30px;
        }
    }
}

/* end hero */

/* porque */

.porque .container {
    padding: 0px 180px;
}

.img-porque {
    display: grid;
    place-items: center;

    img {
        max-width: 100%;
        width: 500px;
        border-radius: 20px;
    }
}

.porque .content {
    text-align: center;

    p {
        text-align: justify;
    }

    .bt a {
        text-decoration: none;
        color: var(--white);
        font-size: 20px;
        font-weight: 700;
        text-transform: uppercase;
        border: none;
        border-radius: 40px;
        background-color: #3C8F00;
        padding: 15px 40px;
    }

    .bt a:hover {
        background-color: var(--btn-color);
    }
}

/* end porque */

/* diferenciais */
.diferenciais {
    background-color: var(--accent-color-light);
}

.diferenciais .title {
    p {
        font-size: 20px;
    }
}

.diferenciais .icon-dots {
    display: grid;
    place-items: center;

    ul {
        list-style: none;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 12px;
        padding-left: 0px;
    }

    ul>li>i {
        color: var(--light-brown);
    }
}

.diferenciais .col {

    .box-dif {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 16px;
        text-align: center;
        padding: 24px 100px;

        img {
            max-width: 100%;
            width: 120px;
            border: none;
            border-radius: 20px;
            background-color: var(--white);
            padding: 16px;
        }

        .bt a {
            text-decoration: none;
            color: var(--white);
            font-weight: 700;
            line-height: 20.8px;
            border: none;
            border-radius: 50px;
            background-color: var(--accent-color);
            padding: 8px 24px;
        }
    }
}

#btnLastOne {
    background-color: #3C8F00;
}

#btnLastOne:hover {
    background-color: var(--btn-color);
}

/* end diferenciais */

/* big numbers */
.bigNum {
    background-image: linear-gradient(to bottom, rgba(43, 31, 22, 0.7), rgba(43, 31, 22, 0.7)), url('../images/banner-big--numbers.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;

    .box-bg {
        text-align: center;

        h3 {
            color: var(--white);
            font-size: 50px;
            font-weight: 800;
            line-height: 60px;
            letter-spacing: 0px;
        }

        p {
            color: var(--white);
            font-size: 20px;
            line-height: 40px;
            letter-spacing: 0px;
        }
    }
}

/* end big numbers */

/* depoimentos */
.depoimentos {
    background-color: #FBFBFB;

    .box {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-direction: column;
        gap: 6px;
        height: 340px;
        padding: 24px;

        p {
            font-style: italic;
        }
    }

    .bt {
        display: grid;
        place-items: center;
        margin-top: 64px;

        a {
            text-decoration: none;
            color: var(--white);
            font-size: 20px;
            font-weight: 700;
            text-transform: uppercase;
            border: none;
            border-radius: 40px;
            background-color: #3C8F00;
            padding: 15px 40px;
        }

        a:hover {
            background-color: var(--btn-color);
        }
    }
}

/* end depoimentos */

/* projetos */
.projetos .title {
    p {
        font-size: 20px;
    }
}

.projetos .icon-dots {
    display: grid;
    place-items: center;

    ul {
        list-style: none;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 12px;
        padding-left: 0px;
    }

    ul>li>i {
        color: var(--light-brown);
    }
}

.projetos .box {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 5px;
    text-align: center;

    img {
        max-width: 100%;
        width: 320px;
        border: none;
        border-radius: 20px;
    }

    .bt a {
        text-decoration: none;
        color: var(--white);
        font-size: 20px;
        font-weight: 700;
        line-height: 20.8px;
        border: none;
        border-radius: 50px;
        background-color: var(--accent-color);
        padding: 8px 24px;
    }
}

/* end projetos */

/* cta */
.cta {
    background-image: linear-gradient(to bottom, rgba(43, 31, 22, 0.7), rgba(43, 31, 22, 0.7)), url('../images/banner-cta-elegance-decora.jpg');
    background-size: cover;
    background-position: center;
}

.cta-content {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 32px;

    h2 {
        color: var(--white);
        font-size: 24px;
        line-height: 38.4px;
        font-weight: 400;
    }

    .bt a {
        text-decoration: none;
        color: var(--white);
        font-size: 20px;
        font-weight: 700;
        text-transform: uppercase;
        border: none;
        border-radius: 40px;
        background-color: #3C8F00;
        padding: 15px 40px;
    }

    .bt a:hover {
        background-color: var(--btn-color);
    }
}

/* end cta */

/* contact */

.mapa {
    padding-right: 200px;
}

.text-brown {
    color: var(--brown);
}

.contato {
    background-color: var(--white);

    .container {
        padding: 0px 100px;
    }

    p {
        font-weight: 700;
    }
}

.formulario {
    background-color: var(--light-brown);
}

.formulario .form-control {
    background-color: var(--white);
    border: none;
    border-radius: 5px;
    padding: 10px 15px;
}

.formulario .form-control::placeholder {
    color: #aaa;
}

.btn-accent {
    background-color: var(--accent-color);
    color: var(--white);
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    transition: background 0.3s ease;
}

.btn-accent:hover {
    background-color: #b74a15;
    /* tom mais escuro para hover */
}

.formulario label {
    color: var(--white);
}

/* end contact */

/* footer */
.footer {
    background-color: var(--brown);
    position: relative;
}

.footer h5 {
    margin-bottom: 1rem;
}

.footer ul li {
    margin-bottom: 0.5rem;
}

.btn-orcamento {
    background-color: #6BCB00;
    color: #fff;
    padding: 12px 24px;
    border-radius: 50px;
    display: inline-block;
    text-decoration: none;
    transition: background 0.3s ease;
}

.btn-orcamento:hover {
    background-color: #57a700;
}

.footer .text-center {
    background-color: var(--dark-brown);
    padding: 1rem 0;
    margin-top: 2rem;
}

#footerBottom {
    background-color: var(--dark-brown);
}

.whatsapp-float {
    position: fixed;
    width: 50px;
    height: 50px;
    bottom: 20px;
    right: 20px;
    background-color: #25D366;
    color: #fff;
    border-radius: 50%;
    text-align: center;
    font-size: 28px;
    line-height: 50px;
    z-index: 1000;
    transition: transform 0.3s ease;
}

.whatsapp-float:hover {
    transform: scale(1.1);
}

/* end footer */


/* responssivo */
@media screen and (max-width: 768px) {
    section {
        padding: 72px 10px 72px 10px;
    }

    .bt a {
        display: block;
    }

    .porque .container {
        padding: 0px 10px;
    }

    .img-porque {
        margin-bottom: 32px;
    }

    .diferenciais .col {
        flex: 0 0 100%;
        margin-bottom: 32px;

        .box-dif {
            padding: 10px;
        }
    }

    .bigNum .col {
        flex: 0 0 100%;
        margin-bottom: 32px;
    }

    .depoimentos .col {
        flex: 0 0 100%;
        margin-bottom: 32px;
    }

    .depoimentos {

        .box {
            height: fit-content;
        }
    }

    .projetos .col {
        flex: 0 0 100%;
        margin-bottom: 42px;
    }

    .projetos .box {
        height: fit-content;
    }

    .cta-content {
        flex-direction: column;

        h2 {
            text-align: center;
        }
    }

    .footer h5 {
        font-size: 1.2rem;
    }

    .btn-orcamento {
        padding: 12px 24px;
        font-size: 1rem;
    }

    .footer .text-center {
        font-size: 0.9rem;
    }

    .contato {

        .container {
            padding: 0px 10px;
        }

        .mapa {
            padding-right: 10px;
        }
    }

}

/* Responsivo para notebooks (entre 769px e 1366px) */
@media screen and (min-width: 769px) and (max-width: 1366px) {
    section {
        padding: 80px 40px 80px 40px;
    }

    .bt a {
        display: inline-block;
    }

    .porque .container {
        padding: 0 30px;
    }

    .img-porque {
        margin-bottom: 40px;
    }

    .diferenciais .col {
        flex: 0 0 48%;
        margin-bottom: 32px;
    }

    .diferenciais .box-dif {
        padding: 15px;
    }

    .bigNum .col {
        flex: 0 0 48%;
        margin-bottom: 32px;
    }

    .depoimentos .col {
        flex: 0 0 48%;
        margin-bottom: 32px;
    }

    .depoimentos .box {
        height: fit-content;
    }

    .projetos .col {
        flex: 0 0 48%;
        margin-bottom: 42px;
    }

    .projetos .box {
        height: fit-content;
    }

    .cta-content {
        flex-direction: row;

        h2 {
            text-align: left;
        }
    }

    .footer h5 {
        font-size: 1.3rem;
    }

    .btn-orcamento {
        padding: 14px 28px;
        font-size: 1.1rem;
    }

    .footer .text-center {
        font-size: 1rem;
    }

    .contato {
        .container {
            padding: 0 30px;
        }

        .mapa {
            padding-right: 20px;
        }
    }
}


/* end responssivo */