 :root {
            --orange-primary: #ff6600;
            --orange-light: #fff0e6;
            --blue-primary:#003367;
            --blue-light: #E9F0F8 ;
            --gray-bg: #f8f9fa;
}

.text-orange { color: var(--orange-primary); }
.bg-orange { background-color: var(--orange-primary); }
.bg-orange-light { background-color: var(--orange-light); }
        
.field--name-body {
	padding:0 !important;
}


.banner-container {
  background: linear-gradient(138deg, #f59d29 10%, #EA4903);
  border-radius: 20px;
  overflow: hidden;
}
.banner-text-box {
  background-color: var(--orange-primary);
  border-radius: 15px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

.bg-peach {
  background-color: #fcd5c8;
}
.intro-box p {
  font-size: 1rem;
  color: #212529;
  line-height: 1.5;
}
.intro-box--icon img {
	max-width:75px     	
}

 /* Tarjetas de mecanismos */
 .parcticipa-block--espacios .col {
 	margin-bottom:1rem;
 }
.card-custom {
            background-color: var(--gray-bg);
            border: none;
            border-radius: 15px;
            box-shadow: 0 4px 10px rgba(0,0,0,0.05);
            transition: transform 0.2s;
            height: 100%;
            min-height:auto;
            position:relative;
        }
        .card-custom:hover {
            transform: translateY(-5px);
        }
           .card-icon {
            width: 70px;
            height: 70px;
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto;
        }
         .parcticipa-block--espacios  .card-icon {
            background-color: var(--orange-primary);
            border-radius: 15px;
        }
        .card-icon img {
        	max-width:50px;
        }
        .orange-link {
    background-color: var(--orange-primary);
    color: white;
    border-radius: 20px;
    padding: 5px 25px;
    font-weight: 400;
    border: none;
    position: absolute;
    bottom: -2rem;
    font-family: 'Work Sans' !important;
    text-decoration:none;
    width: max-content;
        transform: translate(-50%, -50%);
        }
        .orange-link:hover {
            background-color: #e05500;
            color: white;
        }
        .card-footer-line {
            border-bottom: 5px solid var(--orange-primary);
            width: 100%;
            position: absolute;
            bottom: 0;
            left: 0;
            border-radius: 0 0 15px 15px;
        }

.parcticipa-block--accesos {
	background-color: var(--blue-primary);
	padding:1rem 2rem 3rem;
}
.parcticipa-block--accesos .card-custom {
	background-color: var(--blue-light);
    overflow: visible;
    padding-top: 3rem !important;
}
.parcticipa-block--accesos .card-icon {
	  position: absolute;
    top: -40px;
    left: 50%;
    transform: translateX(-50%);
}
.parcticipa-block--accesos .card-icon img {
    max-width: 90px;
}

.divider {
    height: 4px;
    width: 114%;
    background: linear-gradient(to right, #f15a24 50%, #fdd835 50%);
    border-radius: 2px;
    left: -7%;
    position: relative;
}
.parcticipa-block--quehacemos {
		background-color: var(--blue-light);
	padding:1rem 2rem 3rem;
}
.parcticipa-block--quehacemos h2 {
		color: var(--blue-primary);
}
.parcticipa-block--quehacemos .card-custom{
background: #FFF;
box-shadow: 0 4px 6.2px -3px rgba(0, 0, 0, 0.25);
}


.parcticipa-block--tablero h2 {
	color: var(--orange-primary);
}

.parcticipa-block--tablero .description-box {
	border-radius: 15px;
	background: var(--orange-primary);
	box-shadow: 0 4px 6.2px -3px rgba(0, 0, 0, 0.25);
	padding: 2rem;
}

.parcticipa-block--tablero .description-box p  {
	color:#fff;
}
.parcticipa-block--tablero .description-box p:last-child  {
	margin-bottom:0;
}



 /* Más información  Links */
 
    .custom-header {
      background-color: var(--orange-primary);
      color: white;
      border-top-left-radius: 0.5rem;
      border-bottom-left-radius: 0.5rem;
      border-top-right-radius: 2.5rem;
      border-bottom-right-radius: 2.5rem;
    }
      .custom-header p {
      color: white;
    }
    .custom-header p,
    .info-link p {
    	margin-bottom: 0;
    }
.info-link a {
    text-decoration: none;
    width: 100%;
    display: flex;
}

    /* Línea vertical izquierda (Timeline) */
    .info-container {
      position: relative;
      padding-left: 1.5rem;
    }

    .info-container::before {
      content: '';
      position: absolute;
      top: 0;
      bottom: 2rem;
      left: 0.5rem;
      width: 2px;
      background-color: var(--orange-primary);
    }

    /* Elemento de lista (Tarjeta) */
    .info-item {
      position: relative;
      margin-bottom: 1rem;
    }

    /* Punto con conector horizontal hacia la tarjeta */
    .info-item::before {
      content: '';
      position: absolute;
      left: -1rem;
      top: 50%;
      transform: translateY(-50%);
      width: 1rem;
      height: 2px;
      background-color: var(--orange-primary);
      z-index: 1;
    }

    .info-node {
      position: absolute;
      left: -1.25rem;
      top: 50%;
      transform: translateY(-50%);
      width: 10px;
      height: 10px;
      background-color: var(--orange-primary);
      border-radius: 50%;
      z-index: 2;
    }

    /* Botón/Tarjeta clicable */
    .list-card-btn {
      background-color: var(--gray-bg);
      border-radius: 1.2rem;
      border: 1px solid rgba(0,0,0,0.03);
      box-shadow: 0 4px 12px rgba(0,0,0,0.06);
      transition: all 0.2s ease-in-out;
      text-decoration: none;
      color: #333;
    }

    .list-card-btn:hover {
      transform: translateY(-2px);
      box-shadow: 0 6px 16px rgba(0,0,0,0.1);
      color: #000;
    }

    /* Badge numérico */
    .number-badge {
      background-color: var(--orange-primary);
      color: white;
      font-weight: 700;
      border-radius: 1rem;
      padding: 0.2rem 0.6rem;
      font-size: 0.85rem;
      display: inline-block;
      white-space: nowrap;
      display: flex;
    align-items: center;
    margin-right: 1rem;
    }

    /* Círculo naranja a la derecha */
    .orange-circle-icon {
      width: 26px;
      height: 26px;
      background-color: var(--orange-primary);
      border-radius: 50%;
      flex-shrink: 0;
      margin-left: auto !important;
    }

@media (max-width: 576px) {
  .info-participacion h2 {
    font-size: 1.5rem;
  }
  .card {
    padding: 1.5rem;
  }
}


        
/* Móvil */

@media (min-width: 769px){
	
	.banner-img {
	position:relative;
	margin-bottom:-2rem;
	}	
	
}