/* ============================================================
   ALTARA BRIDAL SUITE — «¿Te contactamos por esta fecha?»
   Bloque de la landing después del cotizador (Interesadas, R10a).
   Usa los tokens de styles.css (--bg, --gold, --ink…); no define colores
   nuevos. Celular primero.
   ============================================================ */
.te-contactamos {
  padding: clamp(4.5rem, 10vw, 7.5rem) clamp(1rem, 5vw, 4rem);
  background: var(--bg);
  border-top: 1px solid var(--line);
}
.te-contactamos__inner { max-width: 560px; margin: 0 auto; text-align: center; }
.te-contactamos__titulo {
  font-family: var(--serif); font-weight: 400;
  font-size: clamp(2rem, 6vw, 3rem); line-height: 1.1; color: var(--ink);
}
.te-contactamos__texto { color: var(--muted); margin: 1.1rem auto 2.2rem; max-width: 44ch; }

.te-contactamos__form { text-align: left; display: grid; gap: 1.15rem; }
.te-contactamos__campo { display: grid; gap: .45rem; }
.te-contactamos__campo label {
  font-size: .74rem; letter-spacing: .16em; text-transform: uppercase;
  color: var(--gold-d); font-weight: 500;
}
.te-contactamos__campo input {
  width: 100%; min-width: 0;
  font-family: var(--sans); font-size: 1rem; color: var(--ink);
  background: #fff; border: 1px solid var(--blush); border-radius: 3px;
  padding: .8rem .9rem; min-height: 48px;
}
.te-contactamos__campo input:focus-visible,
.te-contactamos__privacidad input:focus-visible { outline: 2px solid var(--gold); outline-offset: 1px; }
.te-contactamos__campo input[aria-invalid="true"] { border-color: #A4553F; }
.te-contactamos__ayuda { font-size: .82rem; color: var(--muted); }
.te-contactamos__error { font-size: .86rem; color: #A4553F; }

.te-contactamos__privacidad {
  display: grid; grid-template-columns: auto 1fr; gap: .4rem .75rem; align-items: start;
  font-size: .86rem; color: var(--muted); line-height: 1.55;
}
.te-contactamos__privacidad input { width: 20px; height: 20px; margin-top: .15rem; accent-color: var(--gold-d); }
.te-contactamos__privacidad .te-contactamos__error { grid-column: 2; }

.te-contactamos__form .btn { justify-self: center; border: 0; margin-top: .4rem; }

.te-contactamos__gracias,
.te-contactamos__alerta {
  margin: 1.6rem auto 0; padding: 1.2rem 1.3rem; border-radius: 4px;
  background: #fff; border: 1px solid var(--blush);
}
.te-contactamos__gracias p { font-family: var(--serif); font-size: 1.35rem; line-height: 1.35; color: var(--gold-d); }
.te-contactamos__alerta { margin: 0 0 1.6rem; border-left: 3px solid #A4553F; text-align: left; }
.te-contactamos__alerta p { color: var(--ink); font-size: .95rem; }
.te-contactamos__alerta .btn { margin-top: .9rem; }

/* Campo trampa: fuera de la vista y del lector de pantalla, pero en el HTML. */
.te-contactamos__trampa {
  position: absolute !important; left: -10000px; top: auto;
  width: 1px; height: 1px; overflow: hidden;
}

@media (min-width: 640px) {
  .te-contactamos__form { grid-template-columns: 1fr 1fr; column-gap: 1rem; }
  .te-contactamos__campo:first-child,
  .te-contactamos__privacidad,
  .te-contactamos__form .btn { grid-column: 1 / -1; }
}
