.emc-ed-body .emc-contacts {
  display: grid;
  gap: 10px;
  margin: 12px 0 32px;
}
.emc-contact {
  display: grid;
  grid-template-columns: 68px minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  padding: 12px 20px 12px 12px;
  background: #faf8f5;
  border: 1px solid #e5dfd8;
}
.emc-contact img {
  width: 68px;
  height: 76px;
  object-fit: cover;
  object-position: center 12%;
  background: white;
  display: block;
}
.emc-contact .emc-name {
  color: #572420;
  font-size: 21px;
  line-height: 1.2;
  text-decoration: none;
}
.emc-contact small {
  display: block;
  margin-top: 4px;
  font-size: 15px;
  line-height: 1.4;
  color: #504941;
}
.emc-contact .emc-cities {font-size: 15px; line-height: 1.5;}
.emc-contact .emc-cities a {color: #782925; text-decoration: underline; text-underline-offset: 3px;}
.emc-contact .emc-name:hover {text-decoration: underline;}
.emc-ed-body a.emc-consult {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  max-width: 100%;
  min-height: 48px;
  margin-top: 5px;
  padding: 12px 24px;
  background: #872a29;
  color: #fff;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
  text-align: center;
}
.emc-ed-body a.emc-consult:hover {background: #66201f; color: white;}
.emc-ed-body a.emc-consult:focus-visible, .emc-contact a:focus-visible {outline: 3px solid #54201f; outline-offset: 3px;}
@media(max-width: 640px) {
  .emc-contact {grid-template-columns: 56px minmax(0,1fr); gap: 5px 12px; padding: 12px;}
  .emc-contact img {grid-row: span 2; width: 56px; height: 72px;}
  .emc-contact .emc-cities {grid-column: 2;}
  .emc-ed-body a.emc-consult {width: 100%;}
}
