.contact-hero{background:var(--color-bg-subtle);border-bottom:var(--border-width) solid var(--color-border-subtle);padding-block:var(--space-7) var(--space-7)}.contact-hero__inner{max-width:60rem}.contact-hero__title{max-width:18ch;margin:var(--space-2) 0 0 0;font-family:var(--font-editorial);font-weight:var(--fw-regular);font-size:clamp(2.25rem, 5vw, var(--text-3xl));line-height:var(--lh-snug);letter-spacing:var(--ls-tight);color:var(--color-text-primary)}.contact-hero__body{max-width:52ch;margin:var(--space-4) 0 0 0;font-family:var(--font-editorial);font-size:var(--text-md);line-height:var(--lh-relaxed);color:var(--color-text-secondary)}.contact-layout-section{padding-block:var(--space-8)}.contact-layout{gap:var(--space-7);grid-template-columns:1.7fr 1fr;align-items:start;display:grid}.contact-form-card{min-width:0;padding:var(--space-6);background:var(--color-bg-primary);border:var(--border-width) solid var(--color-border-subtle);border-radius:5px;box-shadow:0 1px 3px #4646460d,0 8px 24px #4646460a}.contact-form{gap:var(--space-5);flex-direction:column;display:flex}.contact-form__note{font-size:var(--text-2xs);font-weight:var(--fw-semibold);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--color-text-secondary);margin:0}.contact-form__req{color:var(--color-accent)}.contact-form-grid{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.contact-field{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.contact-field--full{grid-column:1/-1}.contact-field__label{font-family:var(--font-body);font-size:var(--text-2xs);font-weight:var(--fw-semibold);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--color-text-secondary);margin:0;padding:0}.contact-field__optional{font-weight:var(--fw-regular);color:var(--color-text-muted);letter-spacing:var(--ls-normal)}.contact-field__input,.contact-field__select{width:100%;font-family:var(--font-body);font-size:var(--text-sm);line-height:var(--lh-normal);color:var(--color-text-primary);background:var(--color-bg-primary);border:var(--border-width) solid var(--color-border-subtle);padding:var(--space-3) var(--space-4);appearance:none;transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);border-radius:6px}.contact-field__input::placeholder{color:var(--color-text-muted)}.contact-field__input:hover,.contact-field__select:hover{border-color:var(--color-border)}.contact-field__input:focus-visible,.contact-field__select:focus-visible{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #8c172c1f}.contact-field__input[aria-invalid=true],.contact-field__select[aria-invalid=true]{border-color:var(--color-accent)}.contact-field__input[aria-invalid=true]:focus-visible,.contact-field__select[aria-invalid=true]:focus-visible{box-shadow:0 0 0 3px #8c172c1f}.contact-field__error{font-family:var(--font-body);font-size:var(--text-2xs);line-height:var(--lh-snug);color:var(--color-accent);margin:0}.contact-field__textarea{resize:vertical;min-height:9rem;font-size:var(--text-sm)}.contact-field__select-wrap{position:relative}.contact-field__select-wrap:after{content:"";top:50%;right:var(--space-4);border-right:2px solid var(--color-text-secondary);border-bottom:2px solid var(--color-text-secondary);pointer-events:none;width:.65rem;height:.65rem;position:absolute;transform:translateY(-60%)rotate(45deg)}.contact-field__select{padding-right:var(--space-7);cursor:pointer}.contact-field__select:invalid{color:var(--color-text-muted)}.contact-fieldset{border:0;margin:0;padding:0}.contact-checkbox-grid{margin:var(--space-1) 0 0 0;gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));padding:0;list-style:none;display:grid}.contact-checkbox{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-primary);border:var(--border-width) solid var(--color-border-subtle);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);border-radius:6px;display:flex}.contact-checkbox:hover{border-color:var(--color-border)}.contact-checkbox:has(input:checked){border-color:var(--color-accent);background:var(--color-test-light-red)}.contact-checkbox input[type=checkbox]{appearance:none;border:1px solid var(--color-border);background:var(--color-bg-primary);cursor:pointer;width:1.05rem;height:1.05rem;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);border-radius:3px;flex-shrink:0;margin:0;position:relative}.contact-checkbox input[type=checkbox]:checked{background:var(--color-accent);border-color:var(--color-accent)}.contact-checkbox input[type=checkbox]:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:4px;height:9px;position:absolute;top:1px;left:5px;transform:rotate(45deg)}.contact-checkbox input[type=checkbox]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.contact-form__error{padding:var(--space-3) var(--space-4);font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-accent);border:var(--border-width) solid var(--color-accent);background:var(--color-test-light-red);border-radius:6px;margin:0}.contact-form__summary{padding:var(--space-4) var(--space-5);background:var(--color-test-light-red);border:var(--border-width) solid var(--color-accent);border-left-width:3px;border-radius:6px}.contact-form__summary-title{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--color-accent);margin:0}.contact-form__summary-text{margin:var(--space-1) 0 0 0;font-family:var(--font-body);font-size:var(--text-xs);line-height:var(--lh-snug);color:var(--color-text-secondary)}.contact-form__submit{align-self:flex-start}.contact-form__submit:disabled{opacity:.6;cursor:not-allowed}.contact-form__success{align-items:flex-start;gap:var(--space-3);padding:var(--space-6);background:var(--color-brand-teal-60);border:var(--border-width) solid var(--color-brand-teal);border-left:3px solid var(--color-secondary);border-radius:8px;flex-direction:column;display:flex}.contact-form__success-icon{border-radius:var(--radius-pill);background:var(--color-brand-teal);width:2.5rem;height:2.5rem;color:var(--color-text-primary);justify-content:center;align-items:center;display:inline-flex}.contact-form__success-title{font-family:var(--font-editorial);font-weight:var(--fw-regular);font-size:var(--text-xl);line-height:var(--lh-snug);letter-spacing:var(--ls-tight);color:var(--color-text-primary);margin:0}.contact-form__success-text{max-width:48ch;font-family:var(--font-body);font-size:var(--text-sm);line-height:var(--lh-relaxed);color:var(--color-text-secondary);margin:0}.contact-info-panel{gap:var(--space-5);flex-direction:column;min-width:0;display:flex}.contact-info-card{padding:var(--space-6);background:var(--color-bg-subtle);border:var(--border-width) solid var(--color-border-subtle);border-radius:5px}.contact-panel+.contact-panel{margin-top:var(--space-4)}.contact-panel--divided{padding-top:var(--space-4);border-top:var(--border-width) solid var(--color-border-subtle)}.contact-panel__head{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.contact-panel__badge{border-radius:var(--radius-pill);flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:inline-flex}.contact-panel__icon{background-color:var(--color-accent);width:1.25rem;height:1.25rem;display:block}.contact-panel__title{font-family:var(--font-editorial);font-weight:var(--fw-regular);font-size:var(--text-lg);line-height:var(--lh-snug);letter-spacing:var(--ls-tight);color:var(--color-text-primary);margin:0}.contact-panel__body{font-family:var(--font-body);font-size:var(--text-sm);line-height:var(--lh-relaxed);color:var(--color-text-secondary);margin:0}.contact-panel__note{margin:var(--space-3) 0 0 0;font-family:var(--font-body);font-size:var(--text-xs);line-height:var(--lh-relaxed);color:var(--color-text-muted)}.contact-panel__link{color:var(--color-accent);border-bottom:1px solid var(--color-accent);text-decoration:none}.contact-panel__link:hover{color:var(--color-accent-hover)}.contact-office-card{gap:var(--space-3);padding:var(--space-4);border:var(--border-width) solid var(--color-border-subtle);background:var(--color-bg-primary);border-radius:6px;display:flex}.contact-office-card+.contact-office-card{margin-top:var(--space-3)}.contact-office-card__icon{flex-shrink:0;width:1.5rem;height:1.5rem;display:inline-flex}.contact-office-card__icon .contact-panel__icon{width:1.5rem;height:1.5rem}.contact-office-card__name{font-family:var(--font-editorial);font-size:var(--text-md);font-weight:var(--fw-semibold);line-height:var(--lh-snug);color:var(--color-text-primary);margin:0}.contact-office-card__role{margin:var(--space-1) 0 var(--space-2) 0;font-size:var(--text-2xs);line-height:var(--lh-snug);color:var(--color-text-muted)}.contact-office-card__address{font-family:var(--font-body);font-size:var(--text-xs);line-height:var(--lh-relaxed);color:var(--color-text-secondary);margin:0;font-style:normal}@media (max-width:960px){.contact-layout{gap:var(--space-6);grid-template-columns:1fr}}@media (max-width:520px){.contact-form-card{padding:var(--space-5)}.contact-form-grid,.contact-checkbox-grid{grid-template-columns:1fr}}
