.formulario-container{position:relative;max-width:600px;margin:0 auto;padding:4rem 2rem;background:linear-gradient(180deg,#151515,#0d0d0d);border-radius:8px;box-shadow:0 20px 60px #00000080,0 0 30px #d4af3714;overflow:hidden;border:1px solid rgba(212,175,55,.1)}.formulario-container:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 10% 20%,rgba(212,175,55,.03) 1px,transparent 1px),radial-gradient(circle at 90% 80%,rgba(212,175,55,.03) 1px,transparent 1px),radial-gradient(circle at 50% 50%,rgba(212,175,55,.02) 1px,transparent 1px);background-size:40px 40px,50px 50px,30px 30px;pointer-events:none}.form-header{text-align:center;margin-bottom:2.5rem;position:relative}.form-badge{display:inline-block;background:linear-gradient(135deg,#d4af3726,#f5a6231a);color:#d4af37;font-family:var(--font-body);font-size:.75rem;font-weight:600;padding:.5rem 1.25rem;border-radius:4px;letter-spacing:2px;text-transform:uppercase;margin-bottom:1rem;border:1px solid rgba(212,175,55,.3)}.form-title{font-family:var(--font-title);font-size:2rem;font-weight:700;color:#fff;margin:0 0 .75rem;letter-spacing:2px;text-transform:uppercase}.form-subtitle{font-family:var(--font-subtitle);font-size:1rem;color:#fff9;margin:0;font-style:italic}.formulario{position:relative;display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-label{font-family:var(--font-body);font-size:.85rem;font-weight:500;color:#ffffffb3;letter-spacing:1px;text-transform:uppercase}.form-input,.form-textarea{font-family:var(--font-body);font-size:.95rem;padding:1rem;border:1px solid rgba(212,175,55,.2);border-radius:4px;background:#ffffff0d;color:#fff;transition:all .3s ease;outline:none}.form-input::placeholder,.form-textarea::placeholder{color:#ffffff4d}.form-input:focus,.form-textarea:focus{border-color:#d4af37;box-shadow:0 0 0 3px #d4af3726;background:#ffffff14}.form-input.error,.form-textarea.error{border-color:#e74c3c}.form-textarea{resize:vertical;min-height:120px}.form-error{font-family:var(--font-body);font-size:.75rem;color:#e74c3c;margin-top:.25rem;min-height:1rem;opacity:0;transition:opacity .3s ease}.form-error.visible{opacity:1}.form-success{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#228b2226;border-radius:4px;color:#22c55e;font-family:var(--font-body);font-size:.9rem;border:1px solid rgba(34,139,34,.3)}.form-success svg{width:20px;height:20px;flex-shrink:0}.form-error-global{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#dc262626;border-radius:4px;color:#ef4444;font-family:var(--font-body);font-size:.9rem;border:1px solid rgba(220,38,38,.3)}.form-error-global svg{width:20px;height:20px;flex-shrink:0}.form-submit{display:flex;align-items:center;justify-content:center;gap:.75rem;background:transparent;color:#d4af37;font-family:var(--font-body);font-size:.9rem;font-weight:500;padding:1rem 2rem;border:1px solid rgba(212,175,55,.5);border-radius:4px;cursor:pointer;transition:all .4s ease;letter-spacing:1px;text-transform:uppercase}.form-submit svg{width:18px;height:18px}.form-submit:hover:not(:disabled){background:#d4af3726;border-color:#d4af37;transform:translateY(-2px);box-shadow:0 8px 25px #d4af3733}.form-submit:disabled{opacity:.7;cursor:not-allowed}.box-message{margin-top:1rem;padding:1rem;border-radius:4px;text-align:center;font-family:var(--font-body);border:1px solid}.box-message h3{margin:0;font-size:1rem;font-weight:600}.box-message h3.green{text-transform:uppercase;color:#22c55e;border-color:#228b224d;background:#228b221a}.box-message h3.red{text-transform:uppercase;color:#ef4444;border-color:#dc26264d;background:#dc26261a}.loading-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#d4af37;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.formulario-container{padding:3rem 1.5rem}.form-row{grid-template-columns:1fr}.form-title{font-size:1.6rem}}@media(max-width:480px){.formulario-container{padding:2rem 1rem}.form-submit{padding:.85rem 1.5rem;font-size:.8rem}}.spinner-dots{display:flex;gap:8px;align-items:center;justify-content:center;margin-top:1rem}.spinner-dots span{width:12px;height:12px;background:#d4af37;border-radius:50%;animation:bounce 1.4s infinite ease-in-out both}.spinner-dots span:nth-child(1){animation-delay:-.32s}.spinner-dots span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}
