.contact-form{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 4px 16px #00000014}.contact-form h2{color:var(--color-primary, #C31721);margin-bottom:2rem;font-size:1.6rem;text-align:center}.contact-form__hp{position:absolute;left:-9999px;height:0;overflow:hidden;opacity:0;pointer-events:none}.contact-form__columns{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;margin-bottom:2rem}.contact-form__section-title{font-family:var(--font-family-heading, Inter, sans-serif);font-size:1.1rem;font-weight:700;color:var(--color-primary, #C31721);text-transform:uppercase;letter-spacing:.04em;margin:0 0 1.25rem;padding-bottom:.5rem;border-bottom:2px solid var(--color-primary, #C31721)}.contact-form__field{margin-bottom:1.25rem}.contact-form__field label{display:block;font-weight:600;color:var(--color-text-primary, #333);margin-bottom:.4rem;font-size:.95rem}.contact-form__field input[type=text],.contact-form__field input[type=email],.contact-form__field input[type=tel],.contact-form__field textarea{width:100%;padding:.75rem 1rem;border:1.5px solid var(--color-gray-200, #e5e5e5);border-radius:8px;font-family:inherit;font-size:1rem;color:var(--color-text-primary, #333);background:var(--color-gray-50, #f8f9fa);transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.contact-form__field input:focus,.contact-form__field textarea:focus{outline:none;border-color:var(--color-primary, #C31721);box-shadow:0 0 0 3px #c317211f;background:#fff}.contact-form__field input[aria-invalid=true],.contact-form__field textarea[aria-invalid=true]{border-color:#dc3545}.contact-form__field textarea{resize:vertical;min-height:120px}.contact-form__checkboxes{display:flex;flex-direction:column;gap:.6rem}.contact-form__checkbox-label{display:flex;align-items:center;gap:.75rem;font-weight:400;cursor:pointer;padding:.5rem .75rem;border-radius:6px;transition:background .15s}.contact-form__checkbox-label:hover{background:var(--color-gray-50, #f8f9fa)}.contact-form__checkbox-label input[type=checkbox]{width:18px;height:18px;min-width:18px;accent-color:var(--color-primary, #C31721);cursor:pointer;flex-shrink:0;margin:0 .5rem 0 0;vertical-align:middle}.contact-form__checkbox-label span{font-size:.95rem;color:var(--color-text-primary, #333)}.contact-form__file-upload{display:flex;align-items:center;gap:.75rem}.contact-form__file-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.contact-form__file-btn{display:inline-flex;align-items:center;padding:.6rem 1.2rem;background:var(--color-gray-100, #f0f0f0);color:var(--color-text-primary, #333);border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s;white-space:nowrap}.contact-form__file-btn:hover{background:var(--color-gray-200, #e5e5e5)}.contact-form__file-name{font-size:.9rem;color:var(--color-text-secondary, #666);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-form__file-hint{display:block;font-size:.8rem;color:var(--color-text-secondary, #999);margin-top:.3rem}.contact-form__error{display:block;color:#dc3545;font-size:.85rem;margin-top:.3rem}.contact-form__error-banner{background:#fdf2f2;border:1px solid #f5c6cb;color:#721c24;padding:.75rem 1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.95rem}.contact-form__error-banner a{color:#721c24;font-weight:600}.contact-form__btn{display:inline-flex;align-items:center;justify-content:center;padding:.85rem 2rem;border:none;border-radius:8px;font-family:inherit;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s,transform .1s}.contact-form__btn:active{transform:scale(.98)}.contact-form__btn--primary{width:100%;background:var(--color-primary, #C31721);color:#fff;font-size:1.1rem;padding:1rem 2rem}.contact-form__btn--primary:hover:not(:disabled){background:var(--color-primary-dark, #a01018)}.contact-form__btn--primary:disabled{opacity:.7;cursor:not-allowed}.contact-form__btn--secondary{background:var(--color-gray-100, #f0f0f0);color:var(--color-primary, #C31721)}.contact-form__btn--secondary:hover{background:var(--color-gray-200, #e5e5e5)}.contact-form__privacy{margin-top:1rem;font-size:.8rem;color:var(--color-text-secondary, #666);text-align:center}.contact-form__privacy a{color:var(--color-primary, #C31721)}.contact-form__success{background:#fff;border-radius:12px;padding:3rem 2rem;box-shadow:0 4px 16px #00000014;text-align:center}.contact-form__success-icon{width:64px;height:64px;background:#d4edda;color:#28a745;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;margin:0 auto 1.5rem}.contact-form__success h3{color:var(--color-primary, #C31721);margin-bottom:.5rem;font-size:1.5rem}.contact-form__success p{color:var(--color-text-secondary, #666);margin-bottom:1.5rem}@media(max-width:768px){.contact-form{padding:1.5rem}.contact-form__columns{grid-template-columns:1fr;gap:1.5rem}.contact-form__success{padding:2rem 1.5rem}}@media(max-width:480px){.contact-form{padding:1.25rem;border-radius:8px}.contact-form__field{margin-bottom:1rem}.contact-form__field input[type=text],.contact-form__field input[type=email],.contact-form__field input[type=tel],.contact-form__field textarea{padding:.65rem .75rem;font-size:16px}.contact-form__btn{padding:.75rem 1.5rem}.contact-form__success{padding:1.5rem 1rem}.contact-form__file-upload{flex-direction:column;align-items:flex-start}}@media(prefers-reduced-motion:reduce){.contact-form__field input,.contact-form__field textarea,.contact-form__btn{transition:none}.contact-form__btn:active{transform:none}}
