.php-email-form .error-message,.php-email-form .sent-message,.php-email-form .loading{border-radius:var(--radius-sm);border:1px solid #0000;align-items:center;gap:12px;margin-bottom:24px;padding:15px 18px;font-weight:500;line-height:1.6;display:none}.php-email-form .error-message{color:#fff;background-color:var(--error-color);text-align:left;border-color:#ffffff14}.php-email-form .sent-message{color:#fff;background-color:var(--success-color);text-align:center;border-color:#ffffff14;justify-content:center}.php-email-form .loading{color:var(--default-color);background-color:var(--surface-color);border-color:var(--border-color);text-align:center;justify-content:center}.php-email-form .loading:before{content:"";border:3px solid var(--accent-color);border-top-color:#0000;border-radius:50%;flex-shrink:0;width:22px;height:22px;animation:.8s linear infinite form-loading-spinner}@keyframes form-loading-spinner{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.php-email-form .loading:before{animation:none}}.contact .contact-form{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-md);height:100%;box-shadow:var(--shadow-soft);padding:3rem}.contact .contact-form h2{color:var(--heading-color);margin-bottom:1rem;font-size:clamp(1.75rem,3vw,2rem);font-weight:700;line-height:1.3}.contact .contact-form>p{color:var(--muted-color);margin-bottom:2rem;line-height:1.8}.contact .contact-form .form-label{color:var(--heading-color);margin-bottom:.5rem;font-size:.95rem;font-weight:600}.contact .contact-form .form-control{min-height:52px;color:var(--default-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background-color var(--transition-fast);background-color:#0000;padding:.875rem 1rem}.contact .contact-form textarea.form-control{resize:vertical;min-height:160px}.contact .contact-form .form-control::placeholder{color:var(--muted-color)}.contact .contact-form .form-control:focus{color:var(--default-color);border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-focus-ring);background-color:#0000;outline:none}.contact .contact-form .form-control.is-invalid{border-color:var(--bs-danger)}.contact .contact-form .invalid-feedback{margin-top:.45rem;font-size:.875rem}.contact .contact-form .alert{border-radius:var(--radius-sm);border:0;margin-bottom:0;font-size:.95rem;line-height:1.6}.contact .contact-form .btn{min-height:50px;color:var(--accent-color);background-color:var(--accent-soft-bg);border:1px solid var(--accent-soft-border);border-radius:var(--radius-sm);transition:color var(--transition-fast), background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);justify-content:center;align-items:center;gap:8px;padding:12px 18px;font-weight:600;text-decoration:none;display:inline-flex}.contact .contact-form .btn i{font-size:1rem;line-height:1}.contact .contact-form .btn:hover,.contact .contact-form .btn:focus{color:#061018;background-color:var(--accent-color);border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-focus-ring);outline:none}.contact .contact-form .btn:disabled{cursor:not-allowed;opacity:.7}.contact .contact-form .spinner-border-sm{width:1rem;height:1rem}@media (width<=991.98px){.contact .contact-form{padding:2rem}}@media (width<=767.98px){.contact .contact-form h2{font-size:1.65rem}}@media (width<=575.98px){.contact .contact-form{padding:1.5rem}.contact .contact-form .btn{width:100%}}@media (prefers-reduced-motion:reduce){.contact .contact-form .form-control,.contact .contact-form .btn{transition:none}}
