/* ------------------------------------------------------------------
   reclamos.css — Clínica Odontológica Mayer
   Estilos propios de /reclamos/ (Felicitaciones, Reclamos y Sugerencias).
   Hoja aparte para no alterar css/style.css, que comparten todas las
   páginas del sitio.
   ------------------------------------------------------------------ */

/* ---------- Legibilidad ----------
   El sitio define 14px de base y 13,33px en los campos. En un formulario
   con texto legal eso se lee mal, así que acá se suben los tamaños SOLO
   en esta página: el resto del sitio queda igual. */
.seccion > .contenedor > p {
  font-size: 17px;
  line-height: 1.7;
}

.aviso-legal {
  font-size: 16px;
  line-height: 1.7;
}

.aviso-legal p {
  margin-bottom: 10px;
}

.contacto-form label {
  font-size: 16px;
  line-height: 1.4;
  padding-bottom: 6px;
}

.contacto-form input[type="text"],
.contacto-form input[type="email"],
.contacto-form input[type="tel"],
.contacto-form input[type="date"],
.contacto-form select,
.contacto-form textarea {
  font-size: 17px;
  line-height: 1.4;
}

.contacto-form input[type="text"],
.contacto-form input[type="email"],
.contacto-form input[type="tel"],
.contacto-form select {
  height: 46px;
}

.contacto-form textarea {
  min-height: 150px;
}

.contacto-form .form-check {
  font-size: 15px;
  line-height: 1.5;
}

.contacto-form .form-check label {
  font-size: 15px;
  line-height: 1.5;
  padding-bottom: 0;
}

.contacto-form .form-group {
  margin-bottom: 18px;
}

.contacto-datos {
  font-size: 17px;
  line-height: 1.75;
}

/* Honeypot: invisible para personas, visible para robots simples. */
.hp-field {
  position: absolute !important;
  left: -9999px !important;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

/* Asterisco de campo obligatorio. */
.contacto-form .req {
  color: #c0392b;
  font-weight: 700;
}

/* Bloque de datos del reclamo (art. 7 del Decreto 35). */
.bloque-reclamo {
  border: 1px solid #dfe4ea;
  border-radius: 8px;
  padding: 20px 18px 6px;
  margin: 24px 0 8px;
  background: #fafbfc;
}

.bloque-reclamo legend {
  padding: 0 8px;
  font-weight: 700;
  font-size: 18px;
  color: #22313f;
}

.bloque-reclamo[hidden] {
  display: none;
}

/* Aviso de estado del envío. */
.rec-estado {
  margin-top: 14px;
  font-size: 16px;
  line-height: 1.55;
  text-align: center;
  color: #5b6470;
}

.rec-estado.rec-ok {
  color: #1e7e34;
}

.rec-estado.rec-error {
  color: #c0392b;
}

/* Campos de texto largos dentro del bloque legal. */
.bloque-reclamo textarea,
.contacto-form textarea {
  resize: vertical;
}
