/* Landing AI Form (front) — responsive + legible */

.lag-form-wrapper,
.lag-form-wrapper * {
  box-sizing: border-box;
}

.lag-form-wrapper{
  max-width: 860px;
  margin: 24px auto;
  padding: clamp(14px, 3vw, 24px);
}

.lag-form{
  line-height: 1.5;
}

.lag-form h3{
  margin: 0 0 10px;
}

.lag-form-intro{
  margin: 0 0 8px;
}

.lag-form-note{
  margin: 0 0 14px;
}

.lag-form-section-title{
  margin: 18px 0 8px;
  padding-left: 9px;
}

.lag-form label{
  display:block;
  margin: 10px 0 12px;
}

.lag-form input[type=text],
.lag-form input[type=email],
.lag-form input[type=number],
.lag-form select,
.lag-form textarea{
  width:100%;
  padding: 12px 14px;
  margin-top:6px;
  line-height: 1.4;
}

.lag-form select{
}

.lag-form input::placeholder,
.lag-form textarea::placeholder{
}

.lag-form input:focus,
.lag-form select:focus,
.lag-form textarea:focus{
}

.lag-form .lag-field-hint{
  margin: 6px 0 0;
}

.lag-form .lag-field-hint-inline{
  margin: 4px 0 0;
}

.lag-form .lag-field-error{
  margin-top: 6px;
}

.lag-form-error-global,
.lag-global-error{
  display:none;
  padding: 10px 12px;
  margin: 8px 0 12px;
}

/* Presets */
.lag-presets{
  padding: 12px;
  margin-bottom: 10px;
}

/* Submit */
.lag-form .lag-btn{
  display:block;
  width:100%;
  padding: 12px 16px;
  cursor:pointer;
  margin-top: 6px;
}
.lag-form .lag-btn:active{transform: translateY(1px)}

/* Honeypot */
.lag-hp{position:absolute;left:-99999px;opacity:0;height:0;width:0}

/* Progress overlay */
.lag-progress{
  position:fixed;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  padding: 18px 20px;
  width: min(520px, calc(100vw - 32px));
  z-index:9999;
  text-align:center;
  background:#ffffff;
  color:#0f172a;
  border-radius:14px;
  box-shadow:0 18px 40px rgba(15,23,42,0.16);
  border:1px solid rgba(148,163,184,0.35);
}
.lag-progress-close{
  position:absolute;
  top:8px;
  right:10px;
  cursor:pointer;
  line-height:1;
  padding:0;
}

.lag-progress-inner{
  height:10px;
}
.lag-progress-text{
  display:block;
  margin-top:8px;
}
.lag-progress-msg{
  margin: 10px 0 0;
  font-size: 0.95rem;
}

.lag-progress-msg strong{
  font-weight:600;
}
.lag-progress-msg-success{
}
.lag-progress-actions{
  margin-top: 12px;
}
.lag-wa-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding: 10px 14px;
}
.lag-progress[hidden]{display:none}

@media (min-width: 640px){
  .lag-form .lag-btn{width:auto;display:inline-block}
}


/* Live validation + counters */
.lag-char-counter{
  margin-top: 4px;
  text-align: right;
}
.lag-char-counter.is-over{
}

.lag-form input.is-invalid,
.lag-form textarea.is-invalid{
}
.lag-form input.is-valid,
.lag-form textarea.is-valid{
}


/* Versión móvil tipo "app" (tipografía más grande y legible) */
@media (max-width: 640px){
  .lag-form-wrapper{
    margin: 8px auto 18px;
    padding: 18px 16px;
  }

  .lag-form h3{
    text-align: left;
    margin-bottom: 10px;
  }

  .lag-form-intro{
    margin-bottom: 8px;
  }

  .lag-form-note{
    margin-bottom: 14px;
  }

  .lag-form-section-title{
    margin: 18px 0 8px;
    padding-left: 8px;
  }

  .lag-presets{
    padding: 12px 12px 10px;
    margin-bottom: 12px;
  }

  .lag-form label{
    margin: 10px 0 12px;
    padding: 12px 12px 10px;
  }

  .lag-form input[type=text],
  .lag-form input[type=email],
  .lag-form input[type=number],
  .lag-form select,
  .lag-form textarea{
    padding: 10px 12px;
  }

  .lag-form .lag-field-hint{
    margin-top: 4px;
  }

  .lag-form .lag-field-hint-inline{
  }

  .lag-form .lag-char-counter{
  }

  .lag-form .lag-field-error{
  }

  .lag-form .lag-btn{
    width: 100%;
    padding: 12px 18px;
    margin-top: 6px;
  }

  .lag-form-error-global,
  .lag-global-error{
  }
}



/* Campos clave destacados */
.lag-form label.lag-field-key{
  padding-left: 10px;
}

.lag-form label.lag-field-key-main{
}

.lag-form label.lag-field-key-secondary{
}

/* En móvil se ve más tipo app-card */
@media (max-width: 640px){
  .lag-form label.lag-field-key{
  }
  .lag-form label.lag-field-key-main{
  }
  .lag-form label.lag-field-key-secondary{
  }
}
