/* Contact page reuses the shared form, controls and navigation. */
.contact-page-hero { padding-block: 28px 44px; }
.contact-breadcrumb { display: flex; gap: 12px; margin-bottom: 30px; font-size: var(--type-breadcrumb); line-height: 1.8; }
.contact-breadcrumb a:hover { text-decoration: underline; text-underline-offset: 5px; }
.contact-page h1 { text-transform: uppercase; color: var(--accent-orange); letter-spacing: -.015em; font: 600 var(--type-page-title)/1.03 var(--display); }
.contact-page-hero > p { margin-top: 24px; max-width: 630px; }
.contact-page-grid { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, .8fr); gap: 100px; padding-bottom: 76px; align-items: start; }
.contact-page h2 { font-weight: 650; letter-spacing: -.025em; font-size: var(--type-small-section-title); line-height: var(--leading-item-title); }
.contact-page-form > h2 { margin-bottom: 24px; }
.contact-page #contact-form { gap: 19px; }
.contact-page #contact-form input, .contact-page #contact-form textarea { font: inherit; line-height: 1.6; }
.contact-company { background: #f3f3f3; padding: 34px; }
.contact-direct { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; margin-block: 25px 30px; }
.contact-direct a { overflow-wrap: anywhere; }
.contact-direct a:hover { text-decoration: underline; text-underline-offset: 5px; }
.contact-company dl { margin: 0 0 27px; display: grid; gap: 22px; border-top: 1px solid #d7dcd8; padding-top: 26px; }
.contact-company dt { font-size: 12px; color: #526259; }
.contact-company dd { margin: 4px 0 0; }
.contact-company .text-button { display: inline-block; }
.contact-privacy { font-size: var(--type-small); }
.contact-privacy a { text-decoration: underline; text-underline-offset: 4px; }
.contact-page .form-bottom .action-button { background: var(--accent-blue); color: var(--ink); }
@media (max-width: 1100px) { .contact-page-grid { gap: 44px; } .contact-company { padding: 26px; } }
@media (max-width: 800px) {
  .contact-page-grid { grid-template-columns: 1fr; gap: 40px; padding-bottom: 48px; }
  .contact-page-hero { padding-bottom: 34px; }
}
@media (max-width: 540px) {
  .contact-page-hero { padding-top: 22px; }
  .contact-breadcrumb { margin-bottom: 26px; }
  .contact-page .form-row { grid-template-columns: 1fr; gap: 19px; }
  .contact-page .form-bottom { flex-direction: column; align-items: flex-start; gap: 18px; }
  .contact-company { padding: 24px; }
}
