/*==================================
        HERO
==================================*/

.hero-contato{

    background:linear-gradient(rgba(107,63,29,.75),rgba(107,63,29,.75)),
    url("/static/img/banner-contato.jpg") center/cover;

    color:#fff;

    text-align:center;

    padding:90px 20px;

}

.hero-contato .tag{

    display:inline-block;

    background:#d68d52;

    padding:8px 18px;

    border-radius:30px;

    font-weight:600;

    margin-bottom:20px;

}

.hero-contato h1{

    font-size:48px;

    margin-bottom:15px;

}

.hero-contato p{

    font-size:19px;

    opacity:.95;

    line-height:1.7;

}

/*==================================
        CARDS
==================================*/

.contato-cards{

    padding:70px 0;

}

.cards-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

}

.card-contato{

    background:#fff;

    border-radius:22px;

    padding:35px;

    text-align:center;

    box-shadow:0 12px 35px rgba(0,0,0,.08);

    transition:.35s;

}

.card-contato:hover{

    transform:translateY(-10px);

    box-shadow:0 20px 45px rgba(0,0,0,.15);

}

.card-contato i{

    font-size:55px;

    color:#d68d52;

    margin-bottom:20px;

}

.card-contato h3{

    color:#6b3f1d;

    margin-bottom:10px;

}

.card-contato p{

    color:#666;

    margin-bottom:20px;

}

.card-contato strong{

    color:#28a745;

}

.card-contato a{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    width:100%;

    height:46px;

    border-radius:14px;

    background:#d68d52;

    color:#fff;

    text-decoration:none;

    font-weight:600;

    transition:.3s;

}

.card-contato a:hover{

    background:#b96d30;

}

/*==================================
        FORMULÁRIO
==================================*/

.formulario-contato{

    background:#fff8f2;

    padding:80px 0;

}

.form-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:60px;

    align-items:center;

}

.texto-form h2{

    color:#6b3f1d;

    font-size:38px;

    margin-bottom:20px;

}

.texto-form p{

    color:#666;

    line-height:1.8;

}

#formContato{

    display:flex;

    flex-direction:column;

    gap:18px;

}

#formContato input,
#formContato textarea{

    border:1px solid #ddd;

    border-radius:16px;

    padding:18px;

    font-size:16px;

    outline:none;

    transition:.3s;

    resize:none;

}

#formContato input:focus,
#formContato textarea:focus{

    border-color:#d68d52;

    box-shadow:0 0 0 4px rgba(214,141,82,.18);

}

#formContato button{

    border:none;

    height:55px;

    border-radius:16px;

    background:#25D366;

    color:#fff;

    font-size:17px;

    font-weight:600;

    cursor:pointer;

    transition:.3s;

}

#formContato button:hover{

    transform:translateY(-3px);

    background:#1fa854;

}

/*==================================
        MAPA
==================================*/

.mapa{

    padding:80px 0;

}

.mapa h2{

    text-align:center;

    color:#6b3f1d;

    margin-bottom:35px;

}

.mapa iframe{

    width:100%;

    height:450px;

    border:none;

    border-radius:25px;

    box-shadow:0 10px 35px rgba(0,0,0,.12);

}

/*==================================
        FAQ
==================================*/

.faq{

    padding:80px 0;

    background:#fff8f2;

}

.faq h2{

    text-align:center;

    color:#6b3f1d;

    margin-bottom:45px;

    font-size:38px;

}

.faq-item{

    background:#fff;

    border-radius:18px;

    margin-bottom:18px;

    overflow:hidden;

    box-shadow:0 8px 20px rgba(0,0,0,.08);

}

.faq-item button{

    width:100%;

    background:none;

    border:none;

    padding:22px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    cursor:pointer;

    font-size:18px;

    color:#6b3f1d;

    font-weight:600;

}

.faq-item button i{

    transition:.35s;

}

.faq-item.active button i{

    transform:rotate(45deg);

}

.faq-resposta{

    max-height:0;

    overflow:hidden;

    transition:max-height .4s ease,padding .3s;

    color:#666;

    line-height:1.8;

    padding:0 22px;

}

.faq-item.active .faq-resposta{

    max-height:220px;

    padding:0 22px 22px;

}

/*==================================
        RODAPÉ
==================================*/

.final-contato{

    padding:90px 20px;

    text-align:center;

}

.final-contato h2{

    color:#6b3f1d;

    margin-bottom:15px;

    font-size:36px;

}

.final-contato p{

    color:#777;

    font-size:18px;

}

/*==================================
        MOBILE
==================================*/

@media(max-width:768px){

.cards-grid{

    grid-template-columns:1fr;

}

.form-grid{

    grid-template-columns:1fr;

    gap:35px;

}

.hero-contato{

    padding:70px 20px;

}

.hero-contato h1{

    font-size:34px;

}

.hero-contato p{

    font-size:16px;

}

.texto-form{

    text-align:center;

}

.texto-form h2{

    font-size:30px;

}

.mapa iframe{

    height:300px;

}

.faq h2{

    font-size:30px;

}

.faq-item button{

    font-size:16px;

}

.final-contato h2{

    font-size:28px;

}

}