html:has(.fig-contact-intro), body:has(.fig-contact-intro) { overflow-x: hidden; }
html:has(.fig-contact-intro) .fig-about-hero { min-height: 520px; }
.fig-contact-intro, .fig-contact-details, .fig-contact-form, .fig-contact-map { background: #111; color: #fff; }
.fig-contact-intro { padding: 64px 24px 72px; text-align: center; }
.fig-contact-intro .fig-kicker { color: #e00000; line-height: 1.2; }
.fig-contact-intro h2 { color: #fff; font-weight: 700; line-height: .98; margin: 17px auto 0; }
.fig-contact-details { display: grid; gap: 44px; padding: 72px 24px 0; }
.fig-contact-details__item { align-items: flex-start; display: flex; gap: 22px; margin: 0 auto; max-width: 315px; width: 100%; }
.fig-contact-details__icon { color: #e00000; line-height: 1; min-width: 28px; text-align: center; }
.fig-contact-details__item strong, .fig-contact-details__item address { color: #fff; display: block; font-style: normal; line-height: 1.5; }
.fig-contact-form { background: #080808; border: 1px solid #3a3a3a; margin: 0 auto; max-width: 680px; padding: 40px 38px 34px; }
.fig-contact-form h3 { color: #fff; font-weight: 700; line-height: 1.1; margin: 0; text-align: center; text-transform: uppercase; }
.fig-contact-form > p { color: #aaa; margin: 17px auto 36px; max-width: 420px; text-align: center; }
.fig-contact-form form { display: grid; gap: 22px; }
.fig-contact-form label { color: #aaa; display: grid; gap: 8px; text-transform: uppercase; }
.fig-contact-form input, .fig-contact-form textarea { background: #202020; border: 1px solid #4a4a4a; border-radius: 0; color: #fff; font: inherit; min-height: 42px; padding: 12px; }
.fig-contact-form textarea { min-height: 92px; resize: vertical; }
.fig-contact-form button { background: #e00000; border: 0; border-radius: 5px; color: #fff; font-weight: 700; justify-self: center; margin-top: 2px; padding: 13px 25px; text-transform: uppercase; }
.fig-contact-map { background: #0b0b0b; padding: 58px 24px 90px; text-align: center; }
.fig-contact-map h2 { color: #fff; font-weight: 600; letter-spacing: .02em; margin: 0 0 34px; text-transform: uppercase; }
.fig-contact-map > div { height: 420px; margin: 0 auto; max-width: 1100px; }
.fig-contact-map iframe { border: 0; height: 100%; width: 100%; }
@media (min-width: 768px) { .fig-contact-details { display: block; min-height: 470px; padding: 82px max(24px, calc((100% - 1240px) / 2)) 0; position: relative; }.fig-contact-details__item { margin: 0; position: absolute; }.fig-contact-details__item:nth-child(1) { left: max(24px, calc((100% - 1240px) / 2)); top: 87px; }.fig-contact-details__item:nth-child(2) { left: max(24px, calc((100% - 1240px) / 2)); top: 186px; }.fig-contact-details__item:nth-child(3) { left: max(24px, calc((100% - 1240px) / 2)); top: 285px; }.fig-contact-details + .fig-contact-form { margin-top: -470px; position: relative; }.fig-contact-form { margin-left: auto; margin-right: max(24px, calc((100% - 1240px) / 2)); } }
@media (max-width: 767px) { html:has(.fig-contact-intro) .fig-about-hero { min-height: 350px; }.fig-contact-intro { padding: 48px 20px 52px; }.fig-contact-details { padding: 42px 20px 28px; }.fig-contact-details__item { max-width: 320px; }.fig-contact-form { margin: 0 20px; padding: 30px 20px; }.fig-contact-map { padding: 46px 20px 64px; }.fig-contact-map > div { height: 280px; } }
