.contact-hero{background:linear-gradient(180deg, var(--grey-bg) 0%, var(--white) 100%);padding:96px 48px 80px}.contact-hero-inner{grid-template-columns:1fr minmax(0,520px);align-items:start;gap:72px;max-width:1200px;margin:0 auto;display:grid}.contact-hero-copy h1{font-family:var(--font-sans);color:var(--navy);letter-spacing:-.025em;max-width:18ch;margin:0 0 28px;font-size:clamp(32px,4.6vw,56px);font-weight:500;line-height:1.04}.contact-hero-copy .lede{color:var(--text-light);max-width:540px;margin-bottom:32px;font-size:19px;font-weight:400;line-height:1.7}.contact-direct{grid-template-columns:1fr 1fr;gap:14px;margin:36px 0 28px;display:grid}.contact-direct-card{background:var(--navy);color:var(--white);border:1px solid var(--navy);padding:22px 24px 20px;text-decoration:none;transition:background .2s,transform .2s;display:block;position:relative;overflow:hidden}.contact-direct-card:before{content:"";background:var(--teal);transform-origin:0;height:3px;transition:transform .4s cubic-bezier(.16,.84,.44,1);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.contact-direct-card:hover{background:var(--navy-deep);transform:translateY(-2px)}.contact-direct-card:hover:before{transform:scaleX(1)}.contact-direct-label{letter-spacing:.18em;text-transform:uppercase;color:var(--teal-light);align-items:center;gap:10px;margin-bottom:12px;font-size:11.5px;font-weight:600;display:flex}.contact-direct-dot{background:var(--teal-light);border-radius:50%;width:8px;height:8px;animation:2.4s ease-in-out infinite floatPulse;box-shadow:0 0 0 4px #00a8b038}.contact-direct-card--email .contact-direct-dot{animation-delay:1.2s}.contact-direct-value{font-family:var(--font-sans);color:var(--white);letter-spacing:-.01em;word-break:break-word;margin-bottom:10px;font-size:24px;font-weight:500;line-height:1.15}.contact-direct-card--email .contact-direct-value{font-size:18px}.contact-direct-hint{color:#fff9;letter-spacing:.02em;font-size:12.5px;line-height:1.5}.contact-or{letter-spacing:.2em;text-transform:uppercase;color:var(--silver);align-items:center;gap:16px;margin:0 0 28px;font-size:11px;font-weight:600;display:flex}.contact-or:before,.contact-or:after{content:"";background:var(--grey-light);flex:1;height:1px}@media (width<=700px){.contact-direct{grid-template-columns:1fr}.contact-direct-card--email .contact-direct-value{font-size:16px}}.contact-bullets{border-top:1px solid var(--grey-light);margin:32px 0 0;padding:0;list-style:none}.contact-bullets li{border-bottom:1px solid var(--grey-light);color:var(--text-light);padding:18px 0;font-size:15.5px;line-height:1.55}.contact-bullets strong{color:var(--navy);font-weight:600}.contact-form{background:var(--white);border:1px solid var(--grey-light);padding:40px;position:sticky;top:96px}.form-head{border-bottom:1px solid var(--grey-light);margin-bottom:28px;padding-bottom:20px}.form-title{font-family:var(--font-sans);color:var(--navy);letter-spacing:-.005em;font-size:20px;font-weight:600;line-height:1.25}.form-sub{color:var(--silver);letter-spacing:.02em;margin-top:6px;font-size:13px}.form-for{color:var(--navy);border-left:3px solid var(--teal);background:#00838a12;margin-top:12px;padding:10px 14px;font-size:14px}.form-for strong{font-weight:600}.form-error{color:#c4362c;background:#fff1f0;border-left:3px solid #c4362c;margin-bottom:20px;padding:12px 16px;font-size:14px;font-weight:500}.field{margin-bottom:18px;display:block}.field-label{letter-spacing:.12em;text-transform:uppercase;color:var(--navy);margin-bottom:8px;font-size:11.5px;font-weight:600;display:block}.field input,.field select,.field textarea{width:100%;font-family:var(--font-sans);border:1px solid var(--grey-light);background:var(--white);color:var(--text);padding:12px 14px;font-size:16px;transition:border-color .2s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--teal);outline:none}.field textarea{resize:vertical;min-height:120px;font-family:var(--font-sans)}.field-hint{color:var(--silver);margin-top:6px;font-size:12px;display:block}.field-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.contact-submit{cursor:pointer;width:100%;font-family:var(--font-sans);border:none;margin-top:8px}.form-foot{color:var(--silver);border-top:1px solid var(--grey-light);margin-top:20px;padding-top:20px;font-size:13.5px;line-height:1.5}.form-foot a{color:var(--teal);font-weight:600;text-decoration:none}.contact-offices{background:var(--grey-bg);padding:96px 48px 112px}.contact-offices .band-inner{max-width:1200px;margin:0 auto}.contact-offices h2{font-family:var(--font-sans);color:var(--navy);letter-spacing:-.02em;max-width:760px;margin:8px 0 48px;font-size:clamp(26px,3vw,38px);font-weight:500;line-height:1.1}.contact-offices-grid{border-top:1px solid var(--grey-light);grid-template-columns:repeat(3,1fr);gap:40px;padding-top:40px;display:grid}.contact-office-state{letter-spacing:.16em;text-transform:uppercase;color:var(--teal);margin-bottom:8px;font-size:11px;font-weight:600}.contact-office-name{font-family:var(--font-sans);color:var(--navy);letter-spacing:-.01em;margin-bottom:12px;font-size:24px;font-weight:500}.contact-office-addr{color:var(--text-light);margin-bottom:14px;font-size:14px;line-height:1.55}.contact-office-phone{color:var(--navy);border-bottom:1px solid;padding-bottom:1px;font-size:15px;font-weight:600;text-decoration:none}.contact-office-phone:hover{color:var(--teal)}.contact-offices-cta{margin-top:40px}@media (width<=900px){.contact-hero{padding:56px 20px 48px}.contact-hero-inner{grid-template-columns:1fr;gap:40px}.contact-form{padding:24px;position:static}.field-row{grid-template-columns:1fr}.contact-offices{padding:56px 20px 72px}.contact-offices-grid{grid-template-columns:1fr;gap:32px}}
