/* ==========================================================================
   SIMULADOR — Figma node 3157:1914

   La página es un único hero a sangre: texto (638px) a la izquierda y la
   tarjeta del simulador (638px) a la derecha, 6 + 6 columnas con su gutter.
   La tarjeta en sí vive en simulador-card.css, compartida con HOME.
   ========================================================================== */

.sim-hero {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 100vh;
  padding: clamp(120px, 12vw, 180px) var(--grid-margin) clamp(60px, 8vw, 100px);
  background-color: var(--color-blanco);
  color: var(--color-blanco);
  box-sizing: border-box;
}

.sim-hero__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 0;
}

.sim-hero__bg picture {
  display: block;
  width: 100%;
  height: 100%;
}

.sim-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.sim-hero__content {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  width: 100%;
  max-width: var(--container-max);
  margin: 0 auto;
  box-sizing: border-box;
}

.sim-hero__txt {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
  flex: 1 1 auto;
  max-width: var(--w-6col);
  color: var(--color-blanco);
}

.sim-hero__txt h1 {
  font-family: var(--font-display);
  font-weight: var(--fw-bold);
  font-size: var(--fs-h1);
  color: var(--color-blanco);
  line-height: var(--lh-base);
  width: 100%;
}
/* "¿Sabes cuánto necesitas?" en Light y en su propia línea */
.sim-hero__txt h1 em { font-style: normal; font-weight: 300; display: block; }

.sim-hero__txt p {
  font-family: var(--font-heading);
  font-size: var(--fs-body-lg);
  color: var(--color-blanco);
  width: 100%;
  max-width: var(--w-4col);
}

/* La tarjeta ocupa las otras 6 columnas */
.sim-hero .simulador-demo__card {
  flex: 0 0 auto;
  width: 100%;
  max-width: var(--w-6col);
}

@media (max-width: 1024px) {
  .sim-hero {
    min-height: auto;
    /* 140px no llegaban: hasta 1023px la cabecera mide 160px y tapaba el <h1>. */
    padding: calc(var(--header-h) + 24px) var(--grid-margin) 80px;
    background-size: cover;
  }
  .sim-hero__content {
    flex-direction: column;
    align-items: center;
    gap: 48px;
  }
  .sim-hero__txt {
    width: 100%;
    max-width: 100%;
    align-items: center;
    text-align: center;
  }
  .sim-hero__txt h1 {
    font-size: clamp(28px, 4.4vw, 44px);
    text-align: center;
  }
  .sim-hero__txt p {
    width: 100%;
    max-width: 519px;
    text-align: center;
  }
  .sim-hero .simulador-demo__card {
    flex: 1 1 auto;
    width: 100%;
    max-width: 600px;
  }
}

@media (max-width: 767px) {
  .sim-hero {
    padding: calc(var(--header-h) + 16px) var(--grid-margin) 60px;
  }
  .sim-hero__bg img {
    object-position: center bottom;
  }
  .sim-hero__txt {
    gap: 12px;
  }
  .sim-hero__txt h1 {
    font-size: clamp(17px, 4.6vw, 22px);
    line-height: 1.22;
  }
  .sim-hero__txt p {
    font-size: 12.5px;
    line-height: 1.3;
  }
}

/* ==========================================================================
   TABLET EN VERTICAL — ALTO COMPLETO DEL HERO

   A partir de 768px el <picture> sirve el banner VERTICAL (1440 x 2480,
   proporcion 0.58) porque la pantalla esta en retrato. Pero el bloque de
   tablet deja el hero en `height: auto; min-height: 560px`: una caja de
   768x560 (proporcion 1.37) contra una imagen de 0.58 obliga a `cover` a
   recortar mas del 50% de la foto, y la composicion se pierde (se veia un
   primer plano gigante).

   Con el alto completo de pantalla la caja queda en 0.75 y solo se recorta
   unbuen 23%. Solo aplica en retrato: la tablet apaisada sigue recibiendo el
   banner de escritorio y conserva su alto de 560px.
   ========================================================================== */
@media (max-width: 1023px) and (max-aspect-ratio: 1/1) {
  .sim-hero {
    height: auto;
    min-height: 100svh;
    box-sizing: border-box;
    /* Los banners verticales dejan el aire arriba y colocan a las personas en
       la mitad inferior. Centrado en vertical, el texto (y sobre todo el
       boton rosa) caia justo encima de la foto y dejaba de leerse. Anclado
       arriba cae sobre la zona limpia, que es para lo que se diseno. */
    align-items: flex-start;
  }
}
