.contact-form{display:flex;flex-direction:column;gap:var(--space-6)}.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-progress{position:relative;height:4px;background:var(--color-border);border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--space-2)}.form-progress-bar{height:100%;width:var(--progress, 0%);background:var(--gradient-gold);border-radius:var(--radius-full);transition:width .4s cubic-bezier(.4,0,.2,1)}.form-progress-text{position:absolute;right:0;top:calc(100% + var(--space-1));font-size:var(--font-size-xs);color:var(--color-text-light)}.form-required-note{margin-top:calc(var(--space-2) * -1);font-size:var(--font-size-xs);color:var(--color-text-light)}.form-field{position:relative}.input-icon{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);pointer-events:none;color:var(--color-text-light);transition:color var(--transition-fast);display:flex;align-items:center}.form-field-textarea .input-icon{top:var(--space-4);transform:none}.form-field input,.form-field textarea{width:100%;padding:var(--space-3) var(--space-4) var(--space-3) calc(var(--space-4) + 24px);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text);background:var(--color-bg);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-field label{position:absolute;left:calc(var(--space-4) + 24px);top:50%;transform:translateY(-50%);font-weight:500;font-size:var(--font-size-sm);color:var(--color-text-light);pointer-events:none;transition:all var(--transition-fast);background:transparent;padding:0}.form-field-textarea label{top:var(--space-4);transform:none}.field-optional{font-weight:400;font-size:.85em;opacity:.75}.field-hint{display:block;margin-top:calc(var(--space-4) * -1);font-size:var(--font-size-xs);color:var(--color-text-light)}.form-field input:focus+label,.form-field input:not(:placeholder-shown)+label,.form-field input:-webkit-autofill+label,.form-field input:autofill+label{top:-8px;transform:none;font-size:var(--font-size-xs);color:var(--color-gold-text);background:var(--color-bg);padding:0 var(--space-1)}.form-field textarea:focus+label,.form-field textarea:not(:placeholder-shown)+label{top:-8px;transform:none;font-size:var(--font-size-xs);color:var(--color-gold-text);background:var(--color-bg);padding:0 var(--space-1)}.form-field input:focus,.form-field textarea:focus{outline:none;border-color:var(--color-primary)}.form-field input:focus-visible,.form-field textarea:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #f5d56126;animation:focus-ring-expand .3s ease}.form-field:has(input:focus) .input-icon,.form-field:has(textarea:focus) .input-icon{color:var(--color-primary)}.form-field input:hover,.form-field textarea:hover{border-color:var(--color-text-light)}.form-field textarea{resize:vertical;min-height:120px}.contact-form label{font-weight:500;font-size:var(--font-size-sm);color:var(--color-secondary)}.field-error{font-size:var(--font-size-sm);color:var(--color-error)}.field-error:empty{display:none}.altcha-wrap{display:flex;flex-direction:column;gap:var(--space-2)}.form-noscript-notice{font-size:var(--font-size-sm);color:var(--color-text-light);margin:0;padding:var(--space-2);background:#f5d5611a;border-left:3px solid var(--color-primary);border-radius:4px}.form-privacy{font-size:var(--font-size-sm);color:var(--color-text-light);margin:0}.form-privacy a{color:var(--color-accent);text-decoration:underline}.form-privacy a:hover{color:var(--color-gold-text)}.form-status{font-size:var(--font-size-sm);padding:0;border-radius:var(--radius-md);min-height:0;transition:all var(--transition-fast)}.form-status.success{background:var(--color-success-bg);color:var(--color-success-text);padding:var(--space-4);border:1px solid var(--color-success-border)}.form-status.error{background:var(--color-error-bg);color:var(--color-error-text);padding:var(--space-4);border:1px solid var(--color-error-border)}.btn-retry{display:inline-block;margin-top:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--color-error-text);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:background var(--transition-fast)}.btn-retry:hover{background:var(--color-error)}.form-field input:invalid:not(:placeholder-shown):not(:focus),.form-field textarea:invalid:not(:placeholder-shown):not(:focus){border-color:var(--color-error)}.form-field input:valid:not(:placeholder-shown):not(:focus),.form-field textarea:valid:not(:placeholder-shown):not(:focus){border-color:var(--color-success)}@keyframes form-shake{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}.contact-form.shake{animation:form-shake .4s ease}@media(prefers-reduced-motion:reduce){.contact-form.shake{animation:none}}.contact-form button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.contact-form button[type=submit]{width:100%}}
