.key-contacts {
  padding: 52px 0 145px;
  background: #FFFFFF;
  color: #0A3D68;
}
.key-contacts-intro { text-align: center; }
.key-contacts-eyebrow { margin: 0; color: #2E9C91; font-size: 18px; line-height: 24px; }
.key-contacts-heading {
  margin: 3px 0 0;
  font-family: "Anton", Impact, 'Arial Narrow', sans-serif;
  font-size: 40px;
  font-weight: 400;
  line-height: 42px;
}
.key-contacts-intro-rule {
  display: block;
  width: 52px;
  height: 2px;
  margin: 15px auto 0;
  background: #2E9C91;
}
.key-contacts-description {
  max-width: 690px;
  margin: 26px auto 0;
  color: #000000;
  font-size: 16px;
  line-height: 30px;
}
.key-contacts-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 23px;
  margin-top: 105px;
}
.key-contact-card {
  position: relative;
  min-width: 0;
  min-height: 291px;
  padding: 109px 20px 54px;
  border: 1px solid #D1DEEF;
  border-radius: 5px;
  background: #FBFCFF;
  text-align: center;
}
.key-contact-icon {
  position: absolute;
  top: -26px;
  left: calc(50% - 36px);
  display: block;
  width: 72px;
  height: 72px;
  transform-origin: center;
}
.key-contact-connector {
  position: absolute;
  top: 60px;
  left: 50%;
  width: 1px;
  height: 24px;
  background: #2E9C91;
}
.key-contact-card h3 {
  margin: 0;
  font-family: "Anton", Impact, 'Arial Narrow', sans-serif;
  font-size: 19px;
  font-weight: 400;
  line-height: 24px;
}
.key-contact-position { margin: 13px 0 0; font-size: 16px; line-height: 30px; }
.key-contact-email {
  display: block;
  max-width: 100%;
  color: #0A3D68;
  font-size: 16px;
  line-height: 30px;
  overflow-wrap: anywhere;
  text-decoration: none;
  transition: color .2s ease;
}
.key-contact-email:hover { color: #2E9C91; }
.key-contact-accent {
  position: absolute;
  bottom: 33px;
  left: calc(50% - 36px);
  width: 72px;
  height: 2px;
  background: #2E9C91;
}
@media (max-width: 950px) {
  .key-contacts-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 55px 23px; }
}
@media (max-width: 620px) {
  .key-contacts { padding: 64px 0 92px; }
  .key-contacts-inner { width: calc(100% - 32px); }
  .key-contacts-heading { font-size: clamp(32px, 9vw, 40px); line-height: 1.1; }
  .key-contacts-description { font-size: 15px; line-height: 1.7; }
  .key-contacts-grid { grid-template-columns: minmax(0, 1fr); gap: 55px; margin-top: 85px; }
}
