.contact-page { max-width: 1440px; margin: 0 auto; }
.contact-page__hero { position: relative; height: 501px; overflow: hidden; }
.contact-page__hero-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.contact-page__hero h1 { position: relative; margin: 0; padding: 153px 80px 0; color: #fff; font-size: 72px; font-weight: 700; line-height: 72px; letter-spacing: 0; }
.contact-page__body { min-height: 785px; padding: 0 80px 220px; background: url('../images/webp/2 sickles background-image.webp') center top / 1440px auto no-repeat; }
.contact-page__panel { display: grid; grid-template-columns: 390px minmax(0, 1fr); gap: 113.32px; min-height: 564px; padding: 55px 80px 30px; background: #fff; }
.contact-page__eyebrow { margin: 0 0 3px; font-family: 'Bebas Neue', sans-serif; font-size: 24px; line-height: 28px; font-weight: 400; letter-spacing: 1.1px; }
.contact-page__intro h2 { margin: 0 0 49px; font-size: 40px; line-height: 48px; letter-spacing: -.8px; }
.contact-page__intro > p:not(.contact-page__eyebrow) { margin: 0 0 26px; font-size: 21px; line-height: 27px; letter-spacing: -.45px; }
.contact-page__instructions { margin: 0 0 27px; padding-left: 7px; font-family: 'Lato Reference', 'Lato', sans-serif; font-size: 16px; line-height: 22px; font-weight: 900; letter-spacing: -.18px; white-space: nowrap; }
.contact-page__form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 29px; row-gap: 33.38px; }
.contact-page__form label { display: block; min-width: 0; }
.contact-page__form input:not([type='hidden']), .contact-page__form textarea { display: block; width: 100%; border: 1px solid transparent; border-radius: 4px; background: #f1f1f3; padding: 10px 15px; color: #231f20; font: 400 14px/19px 'Lato Reference', 'Lato', sans-serif; }
.contact-page__form input:not([type='hidden']) { height: 40px; }
.contact-page__form input::placeholder, .contact-page__form textarea::placeholder { color: #231f20; opacity: 1; }
.contact-page__form input:focus-visible, .contact-page__form textarea:focus-visible, .contact-page__actions button:focus-visible { outline: 3px solid #0086ba; outline-offset: 3px; }
.contact-page__message, .contact-page__actions { grid-column: 1 / -1; }
.contact-page__form textarea { min-height: 216px; resize: vertical; }
.contact-page__actions { margin-top: -12px; }
.contact-page__actions button { border: 0; background: #0086ba; padding: 11px 24px; color: #fff; font: 700 15px/20px 'Lato', sans-serif; cursor: pointer; }
.contact-page__actions button:hover { background: #006d99; }
.contact-page__honeypot { display: none; }
.contact-page__status, .contact-page__context { margin: 0 0 20px; font-size: 16px; line-height: 1.5; }
.contact-page__status { border-left: 4px solid #0086ba; background: #f0f0f2; padding: 12px; }
@media (min-width: 1441px) {
  .contact-page { max-width: none; }
  .contact-page__hero h1 { max-width: 1440px; margin: 0 auto; }
  .contact-page__body { padding-left: max(80px, calc((100vw - 1280px) / 2)); padding-right: max(80px, calc((100vw - 1280px) / 2)); background-size: cover; }
}
@media (max-width: 1199px) {
  .contact-page__hero h1 { padding-left: 5.5%; font-size: clamp(48px, 5vw, 72px); line-height: 1.05; }
  .contact-page__body { padding: 0 5.5% 130px; min-height: 0; }
  .contact-page__panel { padding: 45px 5.5%; grid-template-columns: 35% minmax(0,1fr); gap: 7%; }
  .contact-page__instructions { white-space: normal; padding: 0; }
  .contact-page__intro h2 { font-size: 34px; margin-bottom: 30px; }
  .contact-page__intro > p:not(.contact-page__eyebrow) { font-size: 19px; line-height: 1.4; }
}
@media (max-width: 767px) {
  .contact-page__hero { height: 350px; }
  .contact-page__hero-image { object-position: 45% center; }
  .contact-page__hero h1 { padding: 98px 24px 0; font-size: clamp(34px, 7.8vw, 56px); }
  .contact-page__body { padding: 0 20px 75px; }
  .contact-page__panel { display: block; min-height: 0; padding: 35px 24px; }
  .contact-page__intro h2 { margin-bottom: 24px; }
  .contact-page__intro { margin-bottom: 35px; }
  .contact-page__form { column-gap: 15px; row-gap: 20px; }
  .contact-page__form input:not([type='hidden']), .contact-page__form textarea { padding-left: 10px; padding-right: 10px; }
  .contact-page__actions { margin-top: 0; }
}
@media (max-width: 420px) {
  .contact-page__form { grid-template-columns: 1fr; }
}
