.contact-page { max-width: 950px; margin: 0 auto; padding: 55px 20px 65px; color: #58687a; }
.contact-page header { max-width: 730px; margin-bottom: 30px; }
.contact-page h1 { color: #3a6351; font-size: 3rem; line-height: 1.15; margin: 0 0 20px; }
.contact-eyebrow { font-size: .75rem; text-transform: uppercase; letter-spacing: .12em; color: #3a6351; margin-bottom: 12px; }
.contact-page p { line-height: 1.7; }
.contact-intro { font-size: 1.2rem; color: #364b40; }
.contact-options { display: grid; grid-template-columns: 1.2fr 1fr; gap: 24px; }
.contact-option { display: flex; flex-direction: column; padding: 28px; border: 1px solid #e2e8f0; border-radius: 12px; background: #fff; }
.contact-option-primary { border-top: 3px solid #3a6351; }
.contact-option h2 { font-size: 1.35rem; color: #3a6351; margin: 0 0 12px; }
.contact-option p { font-size: .95rem; margin: 0 0 20px; }
.contact-page a { color: #3a6351; }
.contact-page .contact-action { align-self: start; padding: 10px 15px; margin-top: auto; border: 1px solid #3a6351; border-radius: 8px; font-size: .9rem; font-weight: 600; }
.contact-option-primary .contact-action { background: #3a6351; color: #fff; }
.contact-action:hover { background: #f2f7f3; text-decoration: none; }
.contact-option-primary .contact-action:hover { background: #2d4e40; }
.contact-page a:focus-visible { outline: 2px solid #3a6351; outline-offset: 4px; }
.contact-work { font-size: .9rem; margin-top: 28px; }
@media (max-width: 650px) { .contact-page { padding-top: 35px; } .contact-page h1 { font-size: 2.5rem; } .contact-options { grid-template-columns: 1fr; } .contact-option { padding: 22px; } }
