.contact-page{font-family:var(--font-body)}.contact-layout{align-items:start;gap:2rem;display:grid}.contact-card{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;min-width:0}.contact-form-card{border-top:3px solid var(--color-brand);scroll-margin-top:calc(var(--header-height) + 1rem);padding:clamp(1.25rem,3vw,2.5rem)}.contact-eyebrow{color:var(--color-text-secondary);font-family:var(--font-heading);letter-spacing:.13em;text-transform:uppercase;margin:0 0 .75rem;font-size:.75rem;font-weight:800;line-height:1.5}.contact-eyebrow:before{background:var(--color-brand);content:"";width:1.5rem;height:2px;margin:0 .6rem .2rem 0;display:inline-block}.contact-page h2{letter-spacing:-.015em;text-wrap:balance;font-size:clamp(1.875rem,2.7vw,2.5rem);line-height:1.15}.contact-intro{margin-top:1rem;font-size:1rem;line-height:1.75}.contact-form{margin-top:1.5rem}.contact-required,.contact-privacy-note{color:var(--color-text-secondary);font-size:.8125rem;line-height:1.65}.contact-required{margin-bottom:1.25rem}.contact-fields{gap:1.25rem;display:grid}.contact-fields>div{min-width:0}.contact-fields label{color:var(--color-dark);margin-bottom:.5rem;font-size:.875rem;font-weight:600;line-height:1.5;display:block}.contact-optional{color:var(--color-text-secondary);font-weight:400}.contact-page :is(input:not([type=checkbox]),textarea){border:1px solid var(--color-border-dark);width:100%;color:var(--color-dark);font:400 1rem/1.5 var(--font-body);background:#fff;border-radius:6px;padding:.8rem .9rem;transition:border-color .18s,box-shadow .18s}.contact-page textarea{resize:vertical;min-height:8rem}.contact-page :is(input:not([type=checkbox]),textarea):focus{border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-brand);outline:none}.contact-page :is(input,textarea)::placeholder{color:var(--color-text-muted);opacity:1}.contact-preferences{border-block:1px solid var(--color-border);gap:1rem;margin-block:1.5rem;padding-block:1.25rem;display:grid}.contact-check{cursor:pointer;align-items:start;gap:.75rem;min-height:2.75rem;font-size:.875rem;line-height:1.6;display:flex}.contact-check input{width:1.125rem;height:1.125rem;accent-color:var(--color-dark);flex:none;margin-top:.2rem}.contact-check small{color:var(--color-text-secondary);margin-top:.25rem;font-size:.8125rem;display:block}.contact-submit,.contact-action{border:1px solid var(--color-border-dark);border-radius:var(--radius-sm);min-height:2.875rem;font:600 .875rem/1.5 var(--font-body);text-align:center;color:var(--color-dark);cursor:pointer;background:#fff;justify-content:center;align-items:center;gap:.6rem;padding:.7rem 1rem;text-decoration:none;transition:background-color .18s,border-color .18s;display:inline-flex}.contact-submit{width:100%;min-height:3.25rem;font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.875rem;padding-inline:1.25rem;font-size:.9375rem;font-weight:800}.contact-submit,.contact-action-primary{background:var(--color-brand);border-color:var(--color-brand)}.contact-submit:hover,.contact-action-primary:hover{background:var(--color-dark);border-color:var(--color-dark);color:#fff}.contact-action:not(.contact-action-primary):hover{border-color:var(--color-brand);background:var(--color-brand)}.contact-submit svg,.contact-action svg,.contact-office-links svg{flex-shrink:0}.contact-actions{flex-wrap:wrap;gap:.75rem;margin-block:1.25rem;display:flex}.contact-result{border-top:1px solid var(--color-border);margin-top:1.75rem;padding-top:1.5rem}.contact-result-heading{align-items:start;gap:.75rem;display:flex}.contact-result-heading svg{color:#047857;flex-shrink:0}.contact-result h3{font-family:var(--font-body);margin-bottom:.75rem;font-size:1.125rem;font-weight:650;line-height:1.5}.contact-result p{font-size:.9375rem;line-height:1.75}.contact-result-note{border-top:1px solid var(--color-border);padding-top:1rem}.contact-text-link{min-height:2.75rem;color:var(--color-dark);font:600 .875rem/1.5 var(--font-body);text-underline-offset:4px;cursor:pointer;align-items:center;gap:.4rem;padding-block:.5rem;text-decoration:underline;display:inline-flex}.contact-text-link:hover{-webkit-text-decoration-color:var(--color-brand);text-decoration-color:var(--color-brand)}.contact-error{color:#b91c1c;margin-block:.875rem;font-size:.875rem;line-height:1.6}.contact-draft{margin-block:1rem}.contact-draft summary{cursor:pointer;min-height:2.75rem;padding-block:.5rem;font-size:.875rem;font-weight:600}.contact-draft textarea{margin-top:.5rem;font-size:.875rem}.contact-direct{min-width:0}.contact-info-card{border-top:3px solid var(--color-brand);margin-top:1.5rem;padding:clamp(1.25rem,2.5vw,2rem)}.contact-info-row{align-items:start;gap:1rem;padding-block:1.5rem;display:flex}.contact-info-row:first-child{padding-top:0}.contact-info-row:last-child{padding-bottom:0}.contact-info-row+.contact-info-row{border-top:1px solid var(--color-border)}.contact-info-row>svg{color:var(--color-brand);flex-shrink:0;margin-top:.15rem}.contact-info-row>div{min-width:0}.contact-info-row h3{font:600 .9375rem/1.5 var(--font-body);margin-bottom:.625rem}.contact-info-row a{overflow-wrap:anywhere;width:fit-content;font-size:.9375rem;line-height:1.8;display:block}.contact-page address{color:var(--color-text-secondary);text-align:left;font-style:normal}.contact-info-row address{font-size:.9375rem;line-height:1.8}.contact-info-row a:hover,.contact-office-links a:hover{text-underline-offset:4px;text-decoration:underline}.contact-contact-caption{color:var(--color-text-secondary);margin:.125rem 0 .75rem;font-size:.8125rem;display:block}.contact-section-heading{max-width:40rem;margin-bottom:var(--content-gap)}.contact-section-heading>p:last-child{margin-top:1rem;line-height:1.75}.contact-office-grid{gap:1.25rem;display:grid}.contact-office{border-top:3px solid var(--color-brand);background:var(--color-background-soft);flex-direction:column;padding:clamp(1.25rem,2.25vw,1.75rem);display:flex}.contact-office h3{color:var(--color-brand);letter-spacing:.06em;text-transform:uppercase;font-size:1.375rem;font-weight:800;line-height:1.3}.contact-entity{color:var(--color-dark);margin-top:.75rem;font-size:.9375rem;font-weight:600;line-height:1.6}.contact-office address{margin-top:.875rem;margin-bottom:1.5rem;font-size:.875rem;line-height:1.75}.contact-office-links{border-top:1px solid var(--color-border);margin-top:auto;padding-top:.75rem}.contact-office-links a{overflow-wrap:anywhere;align-items:center;gap:.6rem;width:fit-content;min-height:2.75rem;font-size:.875rem;line-height:1.5;display:flex}.contact-map-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.contact-map-heading h2{font-size:clamp(1.75rem,2.5vw,2.25rem)}.contact-map{border:1px solid var(--color-border);border-radius:var(--radius-sm);height:clamp(20rem,40vw,27.5rem);overflow:hidden}@media (min-width:640px){.contact-fields,.contact-office-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-field-wide{grid-column:1/-1}}@media (min-width:1024px){.contact-layout{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(2rem,4vw,3.5rem)}.contact-direct{padding-top:.75rem}.contact-office-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:479px){.contact-actions{flex-direction:column}.contact-action{width:100%}}
