.landing-hero {
  position: relative;
  overflow: hidden;
  padding: var(--dc-space-12) 0 var(--dc-space-16);
}

.landing-hero-blobs {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  z-index: 0;
}

.landing-blob {
  position: absolute;
  opacity: 0.35;
}

.landing-blob-uno {
  width: 24rem;
  height: 24rem;
  top: -7rem;
  left: -9rem;
}

.landing-blob-dos {
  width: 20rem;
  height: 20rem;
  bottom: -8rem;
  right: -7rem;
}

.landing-blob-color-celeste {
  fill: var(--dc-accent-celeste);
}

.landing-blob-color-fucsia {
  fill: var(--dc-accent-fucsia);
}

.landing-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  gap: var(--dc-space-10);
  align-items: center;
}

.landing-hero-acciones {
  display: flex;
  flex-wrap: wrap;
  gap: var(--dc-space-3);
  margin-top: var(--dc-space-8);
}

.landing-hero-imagen img {
  width: 100%;
  height: auto;
  border-radius: var(--dc-radius-2xl);
  box-shadow: var(--dc-shadow-lg);
  object-fit: cover;
}

.landing-seccion {
  padding: var(--dc-space-16) 0;
}

.landing-seccion-alterna {
  background: var(--dc-bg-elevated);
  border-top: 1px solid var(--dc-border);
  border-bottom: 1px solid var(--dc-border);
}

.landing-bento {
  display: grid;
  gap: var(--dc-space-6);
  margin-top: var(--dc-space-8);
}

.landing-bento-item {
  display: flex;
  flex-direction: column;
  gap: var(--dc-space-3);
}

.landing-bento-icono {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: var(--dc-radius-lg);
  background: var(--dc-primary-50);
  color: var(--dc-primary);
}

.landing-pasos {
  list-style: none;
  display: grid;
  gap: var(--dc-space-8);
  margin: var(--dc-space-8) 0 0;
  padding: 0;
}

.landing-paso {
  display: flex;
  flex-direction: column;
  gap: var(--dc-space-2);
}

.landing-paso-numero {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: var(--dc-radius-pill);
  background: var(--dc-primary);
  color: var(--dc-fg-on-primary);
  font-weight: var(--dc-fw-bold);
}

.landing-honestidad-grid {
  display: grid;
  gap: var(--dc-space-4);
  margin-top: var(--dc-space-8);
}

.landing-honestidad-item {
  padding: var(--dc-space-5);
}

.landing-cta-final {
  text-align: center;
}

.landing-cta-final-contenido {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--dc-space-4);
  max-width: 40rem;
  margin: 0 auto;
}

.landing-pie {
  border-top: 1px solid var(--dc-border);
  padding: var(--dc-space-12) 0 var(--dc-space-8);
}

.landing-pie-grid {
  display: grid;
  gap: var(--dc-space-8);
}

.landing-pie-marca picture {
  margin-bottom: var(--dc-space-3);
}

.landing-pie-columna {
  display: flex;
  flex-direction: column;
  gap: var(--dc-space-3);
}

.landing-pie-lista {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: var(--dc-space-2);
}

.landing-pie-sociales {
  flex-direction: row;
  gap: var(--dc-space-3);
}

.landing-pie-social {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: var(--dc-radius-pill);
  border: 1px solid var(--dc-border);
  color: var(--dc-fg-muted);
}

.landing-pie-social:hover {
  color: var(--dc-primary);
  border-color: var(--dc-primary);
}

.landing-pie-legal {
  margin-top: var(--dc-space-8);
  max-width: 60rem;
}

@media (min-width: 768px) {
  .landing-pasos {
    grid-template-columns: repeat(3, 1fr);
  }

  .landing-honestidad-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .landing-pie-grid {
    grid-template-columns: 2fr 1fr 1fr;
  }
}

@media (min-width: 1280px) {
  .landing-hero-grid {
    grid-template-columns: 1.1fr 0.9fr;
  }

  .landing-bento {
    grid-template-columns: repeat(3, 1fr);
  }
}
