/*
Version: 1.0.0
*/

* {
	box-sizing: border-box;
}

body {
/*  font-family: Inter,system-ui,sans-serif;*/
  font-family: sans-serif;
}
/*** Home ***/
.icono_logo_c, .icono_logotipo.icono_logotipo_pie, .icono_logotipo{
    font-size: 24px;
    font-weight: 700;
    line-height: 32px;
    padding: 0.4em 0.5em 0.4em 0.2em;
    border-radius: 10px;
    margin-right: 0.5em;
}
.icono_logotipo{
    color:#fff;
    background-color: #22354F;
}
.icono_logotipo_pie{
    color:#102541;
    background-color: #F9C31F;
}
.icono_logo_c{ 
	background: linear-gradient(to left, #f9c31f, #F59F0A);align-content
}
.btn_home_cab_trans{
	
}
.btn_trans .elementor-button{
	background-image:none;
}
.ancho_auto{
	width:auto;
}
.amarillo{ 
	color:#F9C31F;
}
.margen-izq-0 .e-con-inner{ margin-left:0;}
.ico_redondo{
	
}
.edi_tex_caja li::marker, .marco_serv li::marker {
	color:#F9C31F;
}
.caja_marco{
	border:1px solid #b2b8c2;
	border-radius:10px;
	margin:0.5em;
}
.bc_blanco{
	background-color:#fff;
}
.edi_tex_caja{
	border:1px solid #b2b8c2;
	border-radius:10px;
	background-color:#fff;
}
/*** Fin Home ***/
/*** barrios ***/
.degra_barrio{
	-webkit-background-clip: text;
  	background-clip: text;
  	color: transparent;
  	background-image: linear-gradient(135deg,#f6a823,#fbd051);	
}
.ico_barrio_degra .elementor-icon, .degra_bc_barrio a{
	background: linear-gradient(135deg,#f59f0a,#fac938)!important;
}
.amarillo_naranja{ 
	color:#f59f0a;
}
.bc_gris_barrio{
	background-color:#23262B;	
}
.bc_blanca{
	background-color:#ffffff;		
}
.bc_gris_claro{
	background-color:#F7F8F9;
}
.caja_marco_barrio{
	border:1px solid #262b30;
	border-radius:10px;
	margin:0.5em;
}
.caja_sin_marco_barrio{
	border-radius:10px;
	border:0px solid;
}
.tabla_barrios{
	border:1px solid #b2b8c2;
	border-radius:10px;
 	width: 100%;
  	border-collapse: separate; /* Importante para que los bordes redondeados funcionen */
  	border-spacing: 0; /* Elimina el espacio entre celdas */	
}
.tabla_barrios th:first-child {
  border-top-left-radius: 10px; /* Esquina superior izquierda */
}
.tabla_barrios th:last-child {
  border-top-right-radius: 10px; /* Esquina superior derecha */
}
.tabla_barrios thead th{
	background-color:#f59f0a;
	text-align:left;
	border:0;
}
.tabla_barrios td{
	border: 0;
	text-align:left;
}
.list_num_circulos ol {
  counter-reset: li;
  list-style: none;
  padding-left: 0;
}

.list_num_circulos ol li {
  position: relative;
  margin-bottom: 10px;
  padding-left: 30px;
  counter-increment: li;
}

.list_num_circulos ol li::before {
  content: counter(li);
  position: absolute;
  left: 0;
  top: 0;
  width: 24px;
  height: 24px;
  background: linear-gradient(135deg,#f59f0a,#fac938)!important;	
  border-radius: 50%; /* Forma de disco */
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  color: black;
}
.bc_blanca{}

/* Headers */

/* Desktop (default) */
h1 {
	font-size: 3.75rem;
	font-weight: 700;
}
h2 {
	font-size: 2.25rem;
	font-weight: 700;
}
h3 {
	font-size: 1.15rem;
	font-weight: 600;
}
h4 {
	font-size: 1rem;
	font-weight: 600;
}
h5 {
	font-size: 0.9rem;
	font-weight: 600;
}

/* Tablet */
@media (max-width: 1024px) {
  h1 { font-size: 3.5rem; }
  h2 { font-size: 1.9rem; }
}

/* Móvil */
@media (max-width: 768px) {
  h1 { font-size: 3rem; }
  h2 { font-size: 1.85rem; }
  h3 { font-size: 1.1rem; }
}

/* Texto */
.texto-sobre-oscuro {
	color: #b2b8c2;
}

.texto-base {
	color: #627084;
	font-size: 0.95rem;
}

.cards {
	font-size: 0.85rem;
}

/*** Menu de barrios ***/
/* =========================
   1) ESTILO GRID (cuando esté abierto)
   ========================= */

/* Cuando Barrios esté abierto por click (aria-expanded=true) */
.menu_barrios li.menu-item-1318 > a[aria-expanded="true"] + ul.sub-menu{
  display: grid !important;
  grid-template-columns: repeat(4, minmax(180px, 1fr));
  gap: 6px 18px;
  width: min(1000px, calc(100vw - 24px)) !important;
  max-width: calc(100vw - 24px) !important;
  padding: 12px 14px;

  left: auto !important;
  right: 0 !important;
  transform: none !important;
}

/* Quitar floats */
.menu_barrios li.menu-item-1318 > ul.sub-menu > li{
  float: none !important;
  width: auto !important;
}

/* Enlaces */
.menu_barrios li.menu-item-1318 > ul.sub-menu a.elementor-sub-item{
  display: block;
  padding: 6px 8px;
  white-space: nowrap;
}


/* =========================
   2) DESKTOP: abrir con hover (solo si hay ratón)
   ========================= */
@media (hover: hover) and (pointer: fine){
  /* Oculto por defecto SOLO en desktop */
  .menu_barrios li.menu-item-1318 > ul.sub-menu{
    display: none !important;
  }

  /* Abre al pasar el cursor */
  .menu_barrios li.menu-item-1318:hover > ul.sub-menu{
    display: grid !important;
    grid-template-columns: repeat(4, minmax(180px, 1fr));
    gap: 6px 18px;
    width: min(1000px, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
    padding: 12px 14px;

    left: auto !important;
    right: 0 !important;
    transform: none !important;
  }

  /* También con teclado: Tab y entrar al submenú */
  .menu_barrios li.menu-item-1318:focus-within > ul.sub-menu{
    display: grid !important;
  }
}


/* =========================
   3) RESPONSIVE COLUMNAS
   ========================= */
@media (max-width: 1024px){
  .menu_barrios li.menu-item-1318 > a[aria-expanded="true"] + ul.sub-menu{
    grid-template-columns: repeat(2, minmax(180px, 1fr));
  }
}
@media (max-width: 520px){
  .menu_barrios li.menu-item-1318 > a[aria-expanded="true"] + ul.sub-menu{
    grid-template-columns: 1fr;
  }
  .menu_barrios li.menu-item-1318 > ul.sub-menu a.elementor-sub-item{
    white-space: normal;
  }
}

/*** Fin de barrios ***/
