@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/space-grotesk-400.ttf') format('truetype')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/space-grotesk-500.ttf') format('truetype')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:600;font-display:swap;src:url('/assets/fonts/space-grotesk-600.ttf') format('truetype')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:700;font-display:swap;src:url('/assets/fonts/space-grotesk-700.ttf') format('truetype')}

/* Mejoras limitadas al formulario; el resto de la landing conserva su diseño. */
.pi-form { border-radius: 24px; box-shadow: 0 12px 32px -12px rgb(10 27 46 / 14%); }
.pi-form .formtitle { font-family: 'Space Grotesk', sans-serif; letter-spacing: -.025em; }
.pi-form .btn { min-height: 46px; border-radius: 10px; line-height: 1.4; }
.pi-form .btn-green { background: #24634f; color: white; border-color: #24634f; }
.pi-form .btn-green:hover { background: #164b3a; }
.pi-form .field input:not([type='checkbox']), .pi-form .field textarea, .pi-form .field select { min-height: 48px; border-color: #7c92a3; }
.pi-form .field input:focus, .pi-form .field textarea:focus, .pi-form .field select:focus { border-color: #1e5a7e; box-shadow: 0 0 0 3px #e1edf5; }
.pi-form :where(a, button, input, textarea, select, summary, [tabindex]):focus-visible { outline: 3px solid #1e5a7e; outline-offset: 3px; }
.pi-form fieldset.field { border: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.pi-form fieldset.field legend { width: 100%; margin-bottom: 8px; color: #0a1b2e; font-size: 13px; font-weight: 600; }
.pi-form fieldset.field label { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 8px 12px; border: 1px solid #7c92a3; border-radius: 10px; margin: 0; cursor: pointer; }
.pi-form fieldset.field input[type='checkbox'] { width: 18px; height: 18px; padding: 0; accent-color: #1e5a7e; }
.pi-form fieldset.field label:has(input:checked) { background: #e4f0f8; border-color: #1e5a7e; color: #1e5a7e; }
.pi-form p { overflow-wrap: anywhere; }
@media (max-width: 640px) {
  .pi-form { padding: 24px 20px; }
  .pi-form .field input, .pi-form .field textarea, .pi-form .field select { font-size: 16px; }
  .pi-form .field-row { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .pi-form .btn { transition: none !important; }
  .pi-form .btn:hover, .pi-form .btn:active { transform: none !important; }
}
