/* =========================
   Texto inicio
========================= */
.cont{
  margin: 100px 0 12px;
}

/* =========================
   MAPA
========================= */

.mapa {
  width: 100%;
  border: 0;
  display: block;
  height: 550px;
}

/* responsivo do mapa */
@media (max-width: 992px) {
  .mapa {
    height: 420px;
  }
}

@media (max-width: 768px) {
  .mapa {
    height: 320px;
  }
}


/* =========================
   LOCALIZAÇÃO
========================= */

#localizacao .card {
  border-radius: 25px;
  overflow: hidden;
}

#localizacao i {
  transition: 0.3s;
}

#localizacao .col-md-3:hover i {
  transform: scale(1.15);
}


/* =========================
   FOOTER
========================= */

.footer-modern {
  background: #111;
}

.footer-links {
  padding: 0;
  margin: 0;
}

.footer-links li {
  margin-bottom: 12px;
}

.footer-links a {
  color: #cfcfcf;
  text-decoration: none;
  transition: 0.3s;
}

.footer-links a:hover {
  color: #f0ab2a;
}


/* =========================
   SOCIAL ICON (FOOTER)
========================= */

.social-icon {
  width: 55px;
  height: 55px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;
  background: #222;
  color: #fff;

  font-size: 22px;
  transition: 0.3s;
}

.social-icon:hover {
  background: #f0ab2a;
  color: #000;
  transform: translateY(-4px);
}

/* =====================================================
   RESPONSIVIDADE EXTRA
===================================================== */

/* Monitores menores */
@media (max-width:1400px){

    .cont{
        margin:90px 0 12px;
    }

}

/* Notebook */
@media (max-width:1200px){

    .mapa{
        height:500px;
    }

}

/* Tablet */
@media (max-width:992px){

    .cont{
        margin:80px 0 10px;
    }

    #localizacao .row{
        row-gap:20px;
    }

    #localizacao .col-md-3{
        margin-bottom:20px;
    }

    .footer-modern{
        text-align:center;
    }

    .footer-modern .row>div{
        margin-bottom:35px;
    }

    .footer-links{
        display:flex;
        flex-direction:column;
        align-items:center;
    }

    .social-icon{
        width:50px;
        height:50px;
        font-size:20px;
    }

}

/* Tablet pequeno */
@media (max-width:768px){

    .cont{
        margin:70px 0 10px;
    }

    .mapa{
        height:320px;
    }

    #localizacao .card{
        border-radius:18px;
    }

    #localizacao h5{
        font-size:1.1rem;
    }

    #localizacao p{
        font-size:.95rem;
    }

    .footer-modern{
        padding-top:50px;
    }

    .footer-modern h5{
        margin-top:15px;
    }

    .footer-links li{
        margin-bottom:10px;
    }

    .social-icon{
        width:46px;
        height:46px;
        font-size:18px;
    }

}

/* Celulares */
@media (max-width:576px){

    .cont{
        margin:60px 0 10px;
    }

    .mapa{
        height:260px;
    }

    #localizacao .card{
        border-radius:15px;
    }

    #localizacao .card-body{
        padding:20px 15px;
    }

    #localizacao i{
        font-size:2rem !important;
    }

    #localizacao h5{
        font-size:1rem;
    }

    #localizacao p{
        font-size:.9rem;
    }

    .footer-modern{
        text-align:center;
    }

    .footer-modern .d-flex{
        justify-content:center !important;
        flex-wrap:wrap;
        gap:12px;
    }

    .footer-links li{
        margin-bottom:8px;
    }

    .social-icon{
        width:42px;
        height:42px;
        font-size:17px;
    }

}

/* Celulares muito pequenos */
@media (max-width:400px){

    .cont{
        margin:55px 0 10px;
    }

    .mapa{
        height:220px;
    }

    .footer-modern{
        font-size:.9rem;
    }

    .footer-links a{
        font-size:.9rem;
    }

    .social-icon{
        width:38px;
        height:38px;
        font-size:15px;
    }

}