:root{--form-section-gap: .625rem;--form-section-label-font-family: inherit;--form-section-label-color: inherit;--form-section-label-font-size: 1rem;--form-section-label-line-height: 1.2;--form-section-input-padding: 10px 12px;--form-section-input-border: 2px solid #d1d5db;--form-section-input-border-radius: 1rem;--form-section-input-background: rgba(255, 255, 255, .9);--form-section-input-font-family: "Pangram", sans-serif;--form-section-input-font-size: 1rem;--form-section-input-line-height: 1.5;--form-section-input-color: inherit;--form-section-input-focus-border: 2px solid #8b5cf6;--form-section-input-focus-outline: none;--form-section-valid-color: #10b981;--form-section-invalid-color: #ef4444;--form-section-error-color: #dc2626;--form-section-success-color: #059669}.form-section{display:flex;flex-direction:column;gap:var(--form-section-gap);width:100%}.form-section__label{display:none}.form-section__input-container{position:relative;display:flex;align-items:center}.form-section__input{padding:var(--form-section-input-padding);border:var(--form-section-input-border);border-radius:var(--form-section-input-border-radius);background-color:var(--form-section-input-background);font-family:var(--form-section-input-font-family);font-size:var(--form-section-input-font-size);line-height:var(--form-section-input-line-height);color:var(--form-section-input-color);width:100%;box-sizing:border-box;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-section__input:focus,.form-section__input--focused{border:var(--form-section-input-focus-border);outline:var(--form-section-input-focus-outline);box-shadow:0 0 0 3px #8b5cf61a}.form-section__input--valid{border-color:var(--form-section-valid-color);padding-right:2.5rem}.form-section__input--valid:focus{border-color:var(--form-section-valid-color);box-shadow:0 0 0 3px #10b9811a}.form-section__input--invalid{border-color:var(--form-section-invalid-color)}.form-section__input--invalid:focus{border-color:var(--form-section-invalid-color);box-shadow:0 0 0 3px #ef44441a}.form-section__success-icon{position:absolute;right:.75rem;color:var(--form-section-success-color);font-weight:700;font-size:1.1rem;pointer-events:none;display:flex;align-items:center;height:100%}.form-section__error{color:var(--form-section-error-color);font-size:.875rem;line-height:1.25rem;margin-top:.25rem;display:flex;align-items:flex-start;gap:.25rem}.form-section__error:before{content:"⚠";color:var(--form-section-error-color);font-size:.75rem;margin-top:.125rem;flex-shrink:0}:root{--phone-input-gap: .625rem;--phone-input-label-font-family: inherit;--phone-input-label-color: inherit;--phone-input-label-font-size: 1rem;--phone-input-label-line-height: 1.2;--phone-input-input-padding: 10px 12px;--phone-input-input-border: 2px solid #d1d5db;--phone-input-input-border-radius: 1rem;--phone-input-input-background: rgba(255, 255, 255, .9);--phone-input-input-font-family: "Pangram", sans-serif;--phone-input-input-font-size: 1rem;--phone-input-input-line-height: 1.5;--phone-input-input-color: inherit;--phone-input-input-focus-border: 2px solid #8b5cf6;--phone-input-input-focus-outline: none;--phone-input-valid-color: #10b981;--phone-input-invalid-color: #ef4444;--phone-input-error-color: #dc2626;--phone-input-success-color: #059669}.phone-input{display:flex;flex-direction:column;gap:var(--phone-input-gap);width:100%}.phone-input__label{display:none}.phone-input__input-container{position:relative;display:flex;align-items:center}.phone-input__input{padding:var(--phone-input-input-padding);border:var(--phone-input-input-border);border-radius:var(--phone-input-input-border-radius);background-color:var(--phone-input-input-background);font-family:var(--phone-input-input-font-family);font-size:var(--phone-input-input-font-size);line-height:var(--phone-input-input-line-height);color:var(--phone-input-input-color);width:100%;box-sizing:border-box;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.phone-input__input:focus,.phone-input__input--focused{border:var(--phone-input-input-focus-border);outline:var(--phone-input-input-focus-outline);box-shadow:0 0 0 3px #8b5cf61a}.phone-input__input--valid{border-color:var(--phone-input-valid-color);padding-right:2.5rem}.phone-input__input--valid:focus{border-color:var(--phone-input-valid-color);box-shadow:0 0 0 3px #10b9811a}.phone-input__input--invalid{border-color:var(--phone-input-invalid-color)}.phone-input__input--invalid:focus{border-color:var(--phone-input-invalid-color);box-shadow:0 0 0 3px #ef44441a}.phone-input__success-icon{position:absolute;right:.75rem;color:var(--phone-input-success-color);font-weight:700;font-size:1.1rem;pointer-events:none;display:flex;align-items:center;height:100%}.phone-input__error{color:var(--phone-input-error-color);font-size:.875rem;line-height:1.25rem;margin-top:.25rem;display:flex;align-items:flex-start;gap:.25rem}.phone-input__error:before{content:"⚠";color:var(--phone-input-error-color);font-size:.75rem;margin-top:.125rem;flex-shrink:0}:root{--error-field-color: #ef4444;--error-field-font-family: inherit;--error-field-font-size: .875rem;--error-field-line-height: 1.25;--error-field-margin: 0}.error-field{color:var(--error-field-color);margin:var(--error-field-margin);font-family:var(--error-field-font-family);font-size:var(--error-field-font-size);line-height:var(--error-field-line-height)}.privacy-terms-checkbox{margin:0}.privacy-terms-checkbox__field{display:flex;align-items:flex-start;gap:.5rem}.privacy-terms-checkbox__input{margin-top:.125rem;cursor:pointer;flex-shrink:0;transition:outline-color .15s ease-in-out;width:1.125rem;height:1.125rem;accent-color:#8b5cf6}.privacy-terms-checkbox__input--invalid{outline:2px solid #ef4444;outline-offset:2px}.privacy-terms-checkbox__label{font-family:Pangram,sans-serif;font-size:.875rem;line-height:1.25rem;color:#374151;cursor:pointer;-webkit-user-select:none;user-select:none}.privacy-terms-checkbox__link{color:#2563eb;text-decoration:underline;transition:color .15s ease-in-out}.privacy-terms-checkbox__link:hover{color:#1d4ed8}.privacy-terms-checkbox__input:focus{outline:2px solid #2563eb;outline-offset:2px}.privacy-terms-checkbox__input--invalid:focus{outline:2px solid #ef4444;outline-offset:2px}.privacy-terms-checkbox__error{color:#dc2626;font-size:.875rem;line-height:1.25rem;margin-top:.25rem;display:flex;align-items:flex-start;gap:.25rem}.privacy-terms-checkbox__error:before{content:"⚠";color:#dc2626;font-size:.75rem;margin-top:.125rem;flex-shrink:0}:root{--submit-button-background: #000000;--submit-button-background-hover: #1f2937;--submit-button-background-active: #111827;--submit-button-background-disabled: #9ca3af;--submit-button-color: #ffffff;--submit-button-padding: .875rem .75rem;--submit-button-font-size: 1rem;--submit-button-font-family: "Pangram", sans-serif;--submit-button-border: none;--submit-button-border-radius: 2rem;--submit-button-cursor: pointer;--submit-button-cursor-disabled: not-allowed;--submit-button-width: 100%;--submit-button-height: 3rem;--submit-button-transition: background-color .2s ease;--submit-button-spinner-size: 1.25rem;--submit-button-spinner-border: 2px solid #6b7280;--submit-button-spinner-border-top: 2px solid #ffffff}.submit-button{width:var(--submit-button-width);display:flex;flex-direction:column;gap:.5rem}.submit-button__button{background-color:var(--submit-button-background);padding:var(--submit-button-padding);font-size:var(--submit-button-font-size);color:var(--submit-button-color);border:var(--submit-button-border);border-radius:var(--submit-button-border-radius);font-family:var(--submit-button-font-family);cursor:var(--submit-button-cursor);display:flex;justify-content:center;align-items:center;position:relative;width:var(--submit-button-width);transition:var(--submit-button-transition);height:var(--submit-button-height);box-sizing:border-box}.submit-button__button:hover:not(:disabled){background-color:var(--submit-button-background-hover)}.submit-button__button:active:not(:disabled){background-color:var(--submit-button-background-active)}.submit-button__button:disabled{cursor:var(--submit-button-cursor-disabled);background-color:var(--submit-button-background-disabled)}.submit-button__button--disabled{background-color:var(--submit-button-background-disabled);cursor:var(--submit-button-cursor-disabled);opacity:.7}.submit-button__spinner{border:var(--submit-button-spinner-border);border-top:var(--submit-button-spinner-border-top);border-radius:50%;width:var(--submit-button-spinner-size);height:var(--submit-button-spinner-size);animation:submit-button-spin 1s linear infinite}@keyframes submit-button-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--form-footer-gap: 1rem}.form-footer{display:flex;flex-direction:column;gap:var(--form-footer-gap);width:100%}.form-footer *,.form-footer *:before,.form-footer *:after{box-sizing:border-box}.contact-form{display:flex;flex-direction:column;gap:16px;width:100%;font-family:Inter,sans-serif}.form-group{display:flex;flex-direction:column;gap:.625rem;width:100%}.form-select{padding:10px 40px 10px 12px;border:2px solid #d1d5db;border-radius:1rem;background-color:#ffffffe6;font-family:Pangram,sans-serif;font-size:1rem;line-height:1.5;color:inherit;width:100%;box-sizing:border-box;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 12px center;background-repeat:no-repeat;background-size:16px}.form-select:focus{border:2px solid #8b5cf6;outline:none;box-shadow:0 0 0 3px #8b5cf61a}.form-select.error{border-color:#ef4444}.form-select.error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.error-message{color:#dc2626;font-size:.875rem;line-height:1.25rem;margin-top:.25rem;display:flex;align-items:flex-start;gap:.25rem}.error-message:before{content:"⚠";color:#dc2626;font-size:.75rem;margin-top:.125rem;flex-shrink:0}@media (max-width: 480px){.contact-form{gap:12px}.form-select{font-size:16px;padding:14px 16px}}
