/* Contenedor de las columnas */
#nuevas-columnas {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; /* Espaciado horizontal */
    gap: 20px; /* Separación entre columnas */
    max-width: 1200px;
    margin: 30px auto; /* Espaciado respecto a otros elementos */
}

/* Cada columna */
#nuevas-columnas .columns {
    flex: 1 1 calc(33.333% - 30px); /* Tres columnas con espacio entre ellas */
    padding: 20px; /* Espaciado interno */
    border: 1px solid #ddd;
    border-radius: 10px;
    background-color: #fff;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    text-align: center;
}

/* Imágenes */
#nuevas-columnas img {
    max-width: 100%;
    height: auto;
    border-radius: 5px;
    margin-bottom: 15px; /* Separación entre imagen y contenido */
    display: block;
    margin-left: auto;
    margin-right: auto;
}

/* Títulos */
#nuevas-columnas h2 {
    font-size: 1.8em;
    margin-bottom: 15px;
    color: #333;
}

#nuevas-columnas h3 {
    font-size: 1.4em;
    margin-bottom: 15px;
    color: #555;
}

/* Párrafos */
#nuevas-columnas p {
    font-size: 1em;
    line-height: 1.6;
    margin-bottom: 15px; /* Separación con el botón */
    color: #666;
    text-align: justify; /* Mejor legibilidad */
}

/* Botón */
#nuevas-columnas .button {
    display: inline-block;
    padding: 10px 20px;
    background-color: #0078d7;
    color: #fff;
    text-decoration: none;
    border-radius: 5px;
    transition: background-color 0.3s;
}

#nuevas-columnas .button:hover {
    background-color: #0056a3;
}

/* Reducir el interlineado de los títulos */
h2, h3 {
    line-height: 1.2;
}

/* Si deseas hacerlo solo en un contexto específico (por ejemplo, dentro de .custom-sections), */
.custom-sections h2, .custom-sections h3 {
    line-height: 1.2;
}

/* ===== Convocatoria IX 2027 (scoped) ===== */
#convocatoria-ix { 
  margin: clamp(32px, 4vw, 60px) auto clamp(28px, 3vw, 48px);
  scroll-margin-top: 96px; /* para anclas */
  max-width: 1200px; /* mantener alineado con otras secciones */
}

/* Tarjeta */
#convocatoria-ix .hero-ix__card {
  background: linear-gradient(180deg, rgba(0,0,0,0.04), rgba(0,0,0,0));
  border-radius: 1.25rem;
  padding: 2.5rem 2rem; /* más espacio interno */
  overflow: hidden;
}

/* Títulos y texto */
#convocatoria-ix .hero-ix__title {
  font-size: clamp(1.6rem, 2.8vw, 2.4rem);
  line-height: 1.15;
  margin: 0 0 1rem;
  font-weight: 800;
}

#convocatoria-ix .hero-ix__subtitle {
  font-size: clamp(1rem, 1.3vw, 1.15rem);
  margin: 0 0 1.25rem;
}

#convocatoria-ix .hero-ix__bullets {
  margin: 0 0 1.5rem 1rem;
  padding-left: 0.75rem;
  list-style: disc;
}

/* CTA: separar de la imagen de abajo en todas las vistas */
#convocatoria-ix .hero-ix__cta { 
  display: flex; 
  flex-wrap: wrap; 
  gap: 0.75rem; 
  margin-bottom: 1.25rem; /* <-- separación consistente respecto de la imagen */
}

/* Imagen */
#convocatoria-ix .hero-ix__media { margin: 0; }
#convocatoria-ix .hero-ix__media img {
  width: 100%; height: auto; object-fit: cover;
  border-radius: 1rem; box-shadow: 0 10px 24px rgba(0,0,0,0.12);
}

/* Botones */
#convocatoria-ix .btn {
  --btn-pad-y: 0.8rem; --btn-pad-x: 1.1rem; --btn-radius: 0.75rem;
  display: inline-flex; align-items: center; justify-content: center;
  padding: var(--btn-pad-y) var(--btn-pad-x);
  border-radius: var(--btn-radius);
  font-weight: 700; text-decoration: none; border: 2px solid transparent;
  transition: transform 0.06s ease, box-shadow 0.2s ease, background 0.2s ease, border-color 0.2s ease;
  cursor: pointer; line-height: 1;
}
#convocatoria-ix .btn:active { transform: translateY(1px); }

#convocatoria-ix .btn--primary {
  background: #0b63f6; color: #fff; box-shadow: 0 8px 20px rgba(11,99,246,0.25);
}
#convocatoria-ix .btn--primary:hover { filter: brightness(0.95); }

#convocatoria-ix .btn--ghost { background: transparent; border-color: currentColor; color: #111; }
#convocatoria-ix .btn--ghost:hover { background: rgba(0,0,0,0.06); }

/* Bases */
#bases-convocatoria { margin: 20px auto 0; max-width: 1200px; }
#bases-convocatoria .hero-ix__bases-title {
  font-size: clamp(1.3rem, 2.1vw, 1.8rem);
  margin: 0 0 0.75rem; font-weight: 800;
}
#bases-convocatoria .hero-ix__bases-intro { margin: 0 0 1rem; }
#bases-convocatoria .hero-ix__bases-list { margin-left: 1.25rem; }

/* Divider más llamativo */
.section-divider--accent {
  margin: clamp(2rem, 4vw, 3rem) 0;
  border: 0; height: 4px;
  background: linear-gradient(90deg, rgba(11,99,246,0), rgba(11,99,246,0.85), rgba(11,99,246,0));
  box-shadow: 0 4px 12px rgba(11,99,246,0.25);
  border-radius: 2px;
}

/* Responsive: mayor separación entre CTA e imagen en móvil */
@media (max-width: 900px) {
  #convocatoria-ix { margin-top: 36px; }
  #convocatoria-ix .hero-ix__card { padding: 1.8rem 1.2rem; }
  #convocatoria-ix .hero-ix__cta { margin-bottom: 1.5rem; } /* +espacio en mobile */
  #convocatoria-ix .hero-ix__media { margin-top: 0.25rem; }  /* colchón visual */
}

/* === Países Aliados CTA (scoped to #convocatoria-ix) === */
#convocatoria-ix .hero-ix__paises-cta{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  margin-bottom: .6rem;
}

#convocatoria-ix .btn-paises-aliados{
  --pa-red: #c62828;
  --pa-red-hover: #a91f1f;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  padding:.7rem 1.1rem;
  border-radius:.75rem;
  background: var(--pa-red);
  color:#fff;
  font-weight:800;
  text-decoration:none;
  line-height:1;
  border:2px solid transparent;
  box-shadow: 0 8px 18px rgba(198,40,40,.18);
  transition: filter .15s ease, background .15s ease, transform .06s ease;
}
#convocatoria-ix .btn-paises-aliados:hover{
  background: var(--pa-red-hover);
  filter: brightness(.98);
}
#convocatoria-ix .btn-paises-aliados:active{
  transform: translateY(1px);
}

@media (max-width: 640px){
  #convocatoria-ix .hero-ix__paises-cta{
    padding-right:.25rem;
  }
}
