/* ==========================================================================
   Corporativo — página 1727 (`cid.paginas/corporativo`)
   ========================================================================== */
.cid-quienes {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 80px;
  align-items: center;
  max-width: var(--ancho);
  margin: 0 auto;
  padding: 70px 10px 90px;
}

.cid-quienes-collage { position: relative; padding-bottom: 40px; }

.cid-quienes-equipo { position: relative; width: 72%; }

.cid-quienes-equipo img:first-child { width: 100%; aspect-ratio: 450 / 485; object-fit: cover; filter: grayscale(1); }

.cid-quienes-logo { position: absolute; left: 0; bottom: 0; width: 44%; padding: 12px 18px; background: var(--azul); }

.cid-quienes-directora { position: absolute; right: 8%; bottom: 0; width: 41%; margin: 0; }

.cid-quienes-directora img { width: 100%; aspect-ratio: 248 / 330; object-fit: cover; box-shadow: 0 10px 30px rgba(0, 0, 0, .25); }

.cid-quienes-directora figcaption { margin-top: 8px; color: var(--tinta); font-size: 14px; font-style: italic; text-align: center; }

.cid-quienes-texto { display: grid; gap: 18px; }

.cid-quienes-texto h2 { color: var(--azul); font-size: 32px; font-weight: 700; line-height: 1.15; }

.cid-quienes-texto p { color: var(--tinta); font-size: 15px; line-height: 1.6; }

.cid-quienes-texto strong { color: var(--azul); }

/* Íconos propios: el SVG es la máscara y el color lo pone `background`. */
.cid-icono-propio {
  display: block;
  background: currentColor;
  -webkit-mask: var(--icono) center / contain no-repeat;
  mask: var(--icono) center / contain no-repeat;
}

/* --- Principios ---------------------------------------------------------------- */
.cid-principios { padding: 100px 4%; background: var(--azul); color: var(--blanco); }

.cid-principios .cid-titulo-seccion { color: var(--blanco); }

.cid-principios-lista { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; max-width: var(--ancho); margin: 60px auto 0; }

.cid-principio { display: grid; justify-items: center; gap: 26px; text-align: center; }

/* La foto arriba y el círculo montado a medias sobre su borde inferior. */
.cid-principio-foto { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 4px; box-shadow: 0 18px 40px rgba(0, 0, 0, .25); }

.cid-principio-foto + .cid-principio-circulo { margin-top: -76px; box-shadow: 0 0 0 6px var(--azul); }

.cid-principio-circulo { display: grid; place-items: center; width: 100px; height: 100px; border-radius: 50%; background: var(--rojo); color: var(--blanco); transition: transform .3s; }

.cid-principio:hover .cid-principio-circulo { transform: translateY(-6px); }

.cid-principio-circulo .cid-icono-propio { width: 52px; height: 52px; }

.cid-principio p { max-width: 400px; font-size: 15px; line-height: 1.6; }

/* --- Visión y misión ------------------------------------------------------------- */
.cid-vision-mision { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; max-width: var(--ancho); margin: 0 auto; padding: 100px 10px 60px; }

.cid-vm {
  position: relative;
  isolation: isolate;
  display: grid;
  align-content: center;
  gap: 14px;
  min-height: 430px;
  padding: 50px 32px;
  color: var(--blanco);
  overflow: hidden;
}

.cid-vm::before { content: ""; position: absolute; inset: 0; z-index: -2; background: var(--fondo) center / cover; }

.cid-vm::after { content: ""; position: absolute; inset: 0; z-index: -1; background: rgba(30, 50, 92, .78); }

.cid-vm .cid-icono-propio { width: 50px; height: 40px; color: var(--blanco); }

.cid-vm h4 { font-size: 32px; font-weight: 700; }

.cid-vm p { font-size: 15px; line-height: 1.65; }

/* --- Valores ------------------------------------------------------------------------ */
.cid-valores { max-width: var(--ancho); margin: 0 auto; padding: 60px 10px 110px; }

.cid-valores-cuerpo { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 50px; align-items: center; margin-top: 50px; }

.cid-valores-foto { width: 100%; aspect-ratio: 2 / 3; object-fit: cover; border-radius: 4px; box-shadow: 0 18px 40px rgba(30, 50, 92, .2); }

.cid-valores-lista { display: grid; grid-template-columns: repeat(2, 1fr); gap: 40px 30px; }

.cid-valor { display: grid; justify-items: center; gap: 14px; text-align: center; }

.cid-valor-circulo { display: grid; place-items: center; width: 104px; height: 104px; border: 3px solid var(--rojo); border-radius: 50%; color: var(--rojo); transition: background .3s, color .3s; }

.cid-valor:hover .cid-valor-circulo { background: var(--rojo); color: var(--blanco); }

.cid-valor-circulo .cid-icono-propio { width: 54px; height: 54px; }

.cid-valor h3 { margin-top: 6px; color: var(--azul); font-size: 21px; font-weight: 600; }

.cid-valor p { max-width: 380px; color: var(--gris); font-size: 15px; line-height: 1.6; }

@media (max-width: 1024px) {
  .cid-quienes { grid-template-columns: 1fr; gap: 50px; padding: 60px 40px; }

  .cid-principios-lista,
  .cid-valores-lista { grid-template-columns: 1fr 1fr; }

  .cid-valores-cuerpo { grid-template-columns: 1fr; }

  .cid-valores-foto { aspect-ratio: 16 / 9; }

  .cid-vision-mision { grid-template-columns: 1fr; padding: 70px 40px 40px; }
}

@media (max-width: 767px) {
  .cid-quienes { padding: 40px 20px; }

  .cid-principios-lista,
  .cid-valores-lista { grid-template-columns: 1fr; }

  .cid-vision-mision { padding: 50px 20px 20px; }

  .cid-vm { min-height: 0; }
}
