/*
  DDSYS — Sección: La Solución (Somos tu Departamento de Tecnología)
  Fondo blanco. Vuelve la orientación del Hero (texto a la izquierda),
  cerrando el "rebote" de composición sembrado en la sección 3.
  La ilustración reutiliza el motivo de piezas encastradas del Hero,
  ya armadas y quietas — sin repetir la animación de vuelo, que es
  el gesto de marca que se gasta una sola vez (ver Design System 5.4).
*/

.solution {
  background-color: var(--surface-page);
  padding-top: var(--space-32); /* 128px: el único salto de esta escala, ver spec de sección 4 */
  padding-bottom: var(--space-24);
}

.solution__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-16);
  align-items: center;
}

.solution__content {
  max-width: 560px;
}

.solution__kicker {
  font-family: var(--font-mono);
  font-size: 0.875rem;
  font-weight: var(--weight-medium);
  letter-spacing: 0.06em;
  color: var(--blue-400);
  margin-bottom: var(--space-4);
}

.solution__title {
  font-size: var(--text-h2-mobile);
  line-height: 1.15;
  margin-bottom: var(--space-6);
}

.solution__body {
  font-size: var(--text-body-lg);
  color: var(--text-secondary);
  line-height: 1.6;
  margin-bottom: var(--space-8);
}

/* Único lugar del sitio, fuera del Hero, donde una palabra suelta
   dentro de un párrafo se destaca por color — se justifica porque
   es la palabra que nombra el concepto central de marca. */
.solution__body strong {
  color: var(--color-brand);
  font-weight: var(--weight-medium);
}

.solution__illustration {
  width: 100%;
  max-width: 260px;
  aspect-ratio: 1 / 1;
  margin-inline: auto;
}

.solution__illustration svg {
  width: 100%;
  height: 100%;
}

.solution__piece {
  fill: var(--color-brand);
  fill-opacity: 0.85;
  stroke: var(--surface-page);
  stroke-width: 2;
  stroke-opacity: 0.6;
  stroke-linejoin: round;
}

@media (min-width: 1024px) {
  .solution__grid {
    grid-template-columns: 6fr 5fr;
    gap: var(--space-8);
  }

  .solution__illustration {
    max-width: 360px;
  }

  .solution__title {
    font-size: var(--text-h2);
  }
}
