.contact-form-card,.bas-form-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-6);max-width:56rem;margin:0 auto;position:relative;z-index:var(--z-raised)}@media(max-width:640px){.contact-form-card,.bas-form-card{padding:var(--space-4)}}.contact-form__row,.bas-form__row{display:grid;gap:var(--space-3);margin-bottom:var(--space-3)}.contact-form__row--2,.bas-form__row--2{grid-template-columns:1fr 1fr}.contact-form__row--3,.bas-form__row--3{grid-template-columns:2fr 1fr 1fr}.contact-form__field,.bas-form__field{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-3)}.contact-form__row .contact-form__field,.bas-form__row .bas-form__field{margin-bottom:0}.contact-form__label,.bas-form__label{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-navy-800);line-height:1;display:block;margin-bottom:.25rem}.contact-form__required,.bas-form__required{color:var(--color-error-600);margin-left:.25rem}.contact-form__optional,.bas-form__optional{color:var(--color-text-soft);font-weight:var(--weight-regular);font-size:var(--text-xs);margin-left:.25rem}.contact-form__input,.contact-form__textarea,.bas-form__input,.bas-form__textarea{font-family:var(--font-body);font-size:var(--text-md);color:var(--color-navy-800);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--input-radius);padding:.625rem var(--space-2);outline:none;width:100%;transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard);line-height:var(--lh-normal)}.contact-form__input:focus,.contact-form__textarea:focus,.bas-form__input:focus,.bas-form__textarea:focus{border-color:var(--color-teal-600);box-shadow:0 0 0 3px var(--color-teal-050)}.contact-form__input::placeholder,.contact-form__textarea::placeholder,.bas-form__input::placeholder,.bas-form__textarea::placeholder{color:var(--color-slate-500)}.contact-form__textarea,.bas-form__textarea{resize:vertical;min-height:9rem}.contact-form__select-wrap,.bas-form__select-wrap{position:relative}.contact-form__select,.bas-form__select{font-family:var(--font-body);font-size:var(--text-md);color:var(--color-navy-800);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--input-radius);padding:.625rem 2.5rem .625rem var(--space-2);outline:none;width:100%;appearance:none;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard);line-height:var(--lh-normal)}.contact-form__select:focus,.bas-form__select:focus{border-color:var(--color-teal-600);box-shadow:0 0 0 3px var(--color-teal-050)}.contact-form__select-icon,.bas-form__select-icon{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--color-text-muted);display:flex;align-items:center;width:.875rem;height:.875rem}.contact-form__select-icon svg,.bas-form__select-icon svg{width:100%;height:100%}.contact-form__fieldset,.bas-form__fieldset{border:none;padding:0;margin:0 0 var(--space-3)}.contact-form__checkbox-grid,.bas-form__checkbox-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.625rem var(--space-3);margin-top:.5rem}.contact-form__checkbox-label,.bas-form__checkbox-label{display:flex;align-items:flex-start;gap:.5rem;font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-soft);cursor:pointer;line-height:var(--lh-normal)}.contact-form__checkbox,.bas-form__checkbox{width:1rem;height:1rem;flex-shrink:0;margin-top:.125rem;border-radius:3px;accent-color:var(--color-teal-600);cursor:pointer}.contact-form__helper,.bas-form__helper{font-size:var(--text-xs);color:var(--color-text-soft);margin:.375rem 0 0;line-height:var(--lh-relaxed)}.contact-form__helper--indent,.bas-form__helper--indent{margin-left:1.5rem}.contact-form__field--checkbox-single,.bas-form__field--checkbox-single{margin:var(--space-2) 0}.contact-form__checkbox-label--standalone,.bas-form__checkbox-label--standalone{align-items:flex-start;gap:.625rem}.contact-form__checkbox-text,.bas-form__checkbox-text{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-navy-800);line-height:var(--lh-normal)}.contact-form__turnstile,.bas-form__turnstile{margin-bottom:var(--space-3)}.contact-form__submit-row,.bas-form__submit-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border);margin-top:var(--space-2)}.contact-form__privacy,.bas-form__privacy{font-size:var(--text-xs);color:var(--color-text-soft);margin:0;flex:1;min-width:14rem}@media(max-width:640px){.contact-form__row--2,.bas-form__row--2,.contact-form__row--3,.bas-form__row--3,.contact-form__checkbox-grid,.bas-form__checkbox-grid{grid-template-columns:1fr}}.contact-form__error-msg,.bas-form__error-msg{display:block;font-size:.75rem;color:var(--color-error-600);margin-top:.25rem;font-weight:500;line-height:1.4}.contact-form__input--error,.contact-form__textarea--error,.bas-form__input--error,.bas-form__textarea--error{border-color:var(--color-error-600)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--color-error-600) 12%,transparent)!important}.contact-form__select--error,.bas-form__select--error{border-color:var(--color-error-600)!important}.contact-form__fieldset--error legend,.bas-form__fieldset--error legend{color:var(--color-error-600)}.contact-form__general-error,.bas-form__general-error{display:flex;align-items:flex-start;gap:.5rem;background:color-mix(in srgb,var(--color-error-600) 7%,white);border:1px solid color-mix(in srgb,var(--color-error-600) 28%,transparent);border-radius:.5rem;padding:.875rem 1rem;margin-bottom:1.25rem;font-size:.875rem;color:var(--color-error-600);font-weight:500}.contact-form__general-error[hidden],.bas-form__general-error[hidden]{display:none}.contact-form__general-error-icon,.bas-form__general-error-icon{flex-shrink:0;margin-top:.1rem;line-height:1}.contact-form__submit:disabled,.bas-form__submit:disabled{opacity:.65;cursor:not-allowed}
