.servicio_fondo{
    background-image: url('/static/img/grafica_cifras_2.png'); 
    background-repeat: no-repeat; 
    background-size: contain; 
    background-position: center;
}

.servicio_capa{
    background-color: #ffffff84; 
    box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.19); 
    border-radius: 10px;
}

.servicio_titulo{
    color: #E62F27; text-align: center;
}

.servicio_back_transparent{
    background-color: transparent;
}

.serv_border0{
    border: 0;
}

.servicio_item_btn{
    color: #333333cd
}

.zoom-btn-mun {
  border-color: #d62728; /* tono institucional sobrio */
  color: black;
  border-radius: 8px;
  padding: 8px 12px;
  font-size: 13px;
  font-weight: bold;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  cursor: pointer;
  transition: background-color 0.3s ease, transform 0.2s ease;
}

.zoom-btn-mun:hover {
  background-color: #d62728;
  transform: scale(1.05);
}

.zoom-btn-mun:active {
  background-color: #d62728;
  transform: scale(0.98);
}



.servicio_accordion_div{
    display: none; font-size: 12px
}

.serv_accordion_section{
   flex: 1; text-align: center; 
}

.serv_accordion{
    background-color: #99999913; border-bottom: 5px solid #E62F27; min-height: 100%
}

.serv_accordion_btn{
    background-color: #006233; 
    color: white
}

.serv_accordion_flecha{
    height: 15px;
}

.serv_text_provincias{
    font-size: 18px; color: #333;
    
}

.serv_icon_provincia{
    width: 15px; height: 15px; margin-left: 1rem;
}
.serv_text_provincia{
 font-size: 12px;
 text-decoration: underline;
}

.serv_lista_municipios{
 font-size: 12px;
}

.serv_accordion_mapa{
    height: 500px; width: 100%; border-radius: 10px; overflow: hidden; box-shadow: 0 2px 8px rgba(0,0,0,0.05); 
}

.leyenda_prov{
    background-color:#7f7f7f;
}

.leyenda_municipio{
    background-color:#d62728
}

.li_municipio{
    text-align: left;
    margin-bottom: .25rem; 
}

.link_municipio{
    color: black;
}

.accordion-toggle-serv {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
    font-size: 1rem;
    text-align: left;
    border: 0;
    border-radius: 0;
    overflow-anchor: none;
    transition: var(--bs-accordion-transition)
}


@media (min-width: 505px) {
    .img_empresa_serv {
        height: 120px;
        width: 200px;
        border-radius: 10px;
        box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.19);
    }
    .body_empresa_serv {
        min-height: 200px; 
        border-top: 5px solid #E62F27; 
        overflow: visible; 
        position: relative; 
        background-color: #ffffff; 
        box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.19); 
        border-bottom-left-radius: 10px; 
        border-bottom-right-radius: 10px;  
    }
    }
@media (max-width: 505px) {
    .img_empresa_serv {
        height: 120px;
        width: 150px;
        border-radius: 10px;
        box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.19);
    }
    .body_empresa_serv {
        width: 220px; 
        min-height: 200px; 
        border-top: 5px solid #E62F27; 
        overflow: visible; 
        margin-right: 3rem;
        position: relative; 
        background-color: #ffffff; 
        box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.19); 
        border-bottom-left-radius: 10px; 
        border-bottom-right-radius: 10px;
    }
    }

.contenedor2serv {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 4px;
}


/* En móviles */
@media (max-width: 768px) {
    .contenedor2serv {
    grid-template-columns: 1fr;
    }

}