.contact-page{background:#fff}.contact-hero{background:#fff;padding:88px 0 48px}.contact-hero-inner{max-width:var(--content);margin:0 auto;padding:0}.contact-hero h1{max-width:700px;font-family:var(--serif);letter-spacing:-.045em;margin:14px 0 22px;font-size:clamp(44px,5.4vw,76px);font-weight:400;line-height:1.02}.contact-hero p{color:#526178;max-width:760px;margin:0;font-size:18px;line-height:1.65}.contact-direct{padding:48px 0 72px}.contact-direct-grid,.contact-review-grid,.contact-local-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:72px;display:grid}.contact-direct h2,.contact-review h2,.contact-local h2{margin:12px 0 20px}.contact-direct-grid>div:first-child p,.contact-review-copy p,.contact-local-grid>p{color:#526178;max-width:540px;margin:0;font-size:16px;line-height:1.65}.contact-details{border-top:1px solid var(--rule)}.contact-details>a,.contact-details>div{border-bottom:1px solid var(--rule);color:inherit;justify-content:space-between;gap:24px;padding:20px 0;text-decoration:none;display:flex}.contact-details span{color:#526178;font-size:14px}.contact-details strong{color:var(--navy);text-align:right;font-size:16px;font-weight:500}.contact-details a:hover strong,.contact-details a:focus-visible strong{color:var(--blue)}.contact-details a:focus-visible{outline:2px solid var(--blue);outline-offset:5px}.contact-details a:focus-visible strong{text-underline-offset:4px;text-decoration:underline}.contact-details>p{color:#526178;max-width:520px;margin:24px 0 0;font-size:14px;line-height:1.65}.contact-review{background:var(--ivory);padding:64px 0 72px}.contact-review-copy h2{max-width:520px}.contact-review-copy p{max-width:560px}.contact-review .form-card{margin:0}.contact-local{padding:48px 0 64px}.contact-local-grid{padding-top:24px}.contact-local h2{max-width:560px;font-family:var(--serif);letter-spacing:-.04em;font-size:38px;font-weight:400;line-height:1.06}.contact-local-grid>p{max-width:600px}@media (max-width:900px){.contact-hero{padding:56px 0 36px}.contact-direct{padding:36px 0 56px}.contact-review{padding:52px 0 60px}.contact-local{padding:40px 0 56px}.contact-direct-grid,.contact-review-grid,.contact-local-grid{grid-template-columns:1fr;gap:36px}}@media (max-width:640px){.contact-hero-inner{margin-left:14px}.contact-hero h1{margin-bottom:18px}.contact-hero p{font-size:16px}.contact-details>a,.contact-details>div{display:block}.contact-details strong{text-align:left;margin-top:6px;display:block}}
