/* NVOOH · formulario de leads + botón flotante de WhatsApp (v26 · paleta y tipografía manual v3) */
.lead { scroll-margin-top: 100px; margin-top: 60px; padding: 36px 30px; background: rgba(237,28,36,0.10); border: 1px solid rgba(237,28,36,0.6); color: #fff; font-family: 'Barlow', sans-serif; }
.lead h2 { font-size: clamp(1.4rem, 3vw, 2rem); font-weight: 900; text-transform: uppercase; margin: 0 0 10px; line-height: 1.15; letter-spacing: -0.5px; border: 0; padding: 0; }
.lead-intro { color: rgba(255,255,255,0.88); line-height: 1.55; margin: 0 0 24px; max-width: 640px; font-size: 1rem; }
.lead-form { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 18px; }
.lead-form .full { grid-column: 1 / -1; }
.lead-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.lead-field label { font-size: 0.72rem; font-weight: 500; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.88); }
.lead-field label .req { color: #ED1C24; margin-left: 2px; }
.lead-field input, .lead-field select, .lead-field textarea { width: 100%; font: inherit; font-size: 1rem; color: #fff; background: #3D3D3F; border: 1px solid #595A5C; border-radius: 0; padding: 13px 14px; transition: border-color .2s ease; -webkit-appearance: none; appearance: none; }
.lead-field select { background-image: linear-gradient(45deg, transparent 50%, #ED1C24 50%), linear-gradient(135deg, #ED1C24 50%, transparent 50%); background-position: calc(100% - 20px) 55%, calc(100% - 14px) 55%; background-size: 6px 6px; background-repeat: no-repeat; padding-right: 40px; }
.lead-field select option { color: #4D4D4F; }
.lead-field textarea { min-height: 110px; resize: vertical; }
.lead-field input::placeholder, .lead-field textarea::placeholder { color: rgba(255,255,255,0.7); }
.lead-field input:focus, .lead-field select:focus, .lead-field textarea:focus { outline: none; border-color: #ED1C24; box-shadow: 0 0 0 2px rgba(237,28,36,0.35); }
.lead-field.invalid input, .lead-field.invalid select, .lead-field.invalid textarea { border-color: #ED1C24; }
.lead-err { font-size: 0.82rem; color: #FFFFFF; border-left: 3px solid #ED1C24; padding-left: 8px; min-height: 0; }
.lead-err:empty { display: none; }
.lead-hp { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }
.lead-submit { justify-self: start; background: #ED1C24; color: #fff; border: 2px solid #ED1C24; padding: 17px 40px; font: inherit; font-family: 'Montserrat', sans-serif; font-weight: 900; text-transform: uppercase; letter-spacing: 1px; font-size: 19px; cursor: pointer; transition: all .25s ease; }
.lead-submit:hover { background: #fff; border-color: #fff; color: #4D4D4F; }
.lead-submit:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.lead-submit[disabled] { opacity: .6; cursor: wait; }
.lead-micro { font-size: 0.9rem; color: rgba(255,255,255,0.88); margin: 0; line-height: 1.5; }
.lead-micro strong { color: #fff; }
.lead-micro a { color: #fff; }
.lead-alert { grid-column: 1 / -1; background: rgba(237,28,36,0.18); border-left: 4px solid #ED1C24; padding: 12px 14px; color: #fff; font-size: 0.95rem; margin: 0; }
.lead-alert:empty { display: none; }
.lead-alt { margin-top: 26px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,0.2); }
.lead-alt p { color: rgba(255,255,255,0.8); font-size: 0.9rem; margin: 0 0 12px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.whatsapp-float { position: fixed; bottom: 25px; right: 25px; width: 60px; height: 60px; background-color: #25D366; border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 12px rgba(0,0,0,0.3); z-index: 2000; transition: opacity .25s ease, transform .3s ease, background-color .3s ease; text-decoration: none; }
.whatsapp-float i { color: #fff; font-size: 2rem; }
.whatsapp-float:hover { background-color: #1ebe57; transform: scale(1.08); }
.whatsapp-float:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
@media (max-width: 700px) {
  .lead { padding: 28px 18px; margin-left: -4px; margin-right: -4px; }
  .lead-form { grid-template-columns: 1fr; }
  .lead-submit { width: 100%; justify-self: stretch; }
  .whatsapp-float { width: 52px; height: 52px; bottom: 18px; right: 18px; }
  .whatsapp-float i { font-size: 1.7rem; }
  /* En mobile el botón se oculta mientras el formulario está en pantalla, para no tapar campos ni el envío */
  body.lead-on-screen .whatsapp-float { opacity: 0; pointer-events: none; transform: translateY(20px); }
}
