.mh-contact-page {
  width:min(1220px,100%);
  margin:0 auto;
  padding:150px 44px 64px
}
.mh-contact-heading {
  max-width:810px;
  margin-bottom:48px
}
.mh-contact-heading h1 {
  font-size:clamp(38px,5vw,66px);
  line-height:1.08;
  letter-spacing:-.045em;
  margin:20px 0 24px;
  font-weight:500
}
.mh-contact-heading>p:last-child {
  font-size:20px;
  line-height:1.7;
  color:#60665d
}
.mh-contact-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:64px;
  align-items:center
}
.mh-contact-copy h2,.mh-contact-location h2 {
  font-size:30px;
  line-height:1.25;
  font-weight:500;
  letter-spacing:-.025em;
  margin:16px 0
}
.mh-contact-copy p,.mh-contact-location p {
  line-height:1.8;
  color:#60665d
}
.mh-contact-phone {
  display:inline-block;
  font-size:26px;
  color:inherit;
  text-decoration:none;
  margin:10px 0
}
.mh-contact-appointment {
  display:flex;
  gap:22px;
  border-top:1px solid #d8dcd3;
  margin-top:36px;
  padding-top:28px
}


.mh-contact-appointment p {
  margin-bottom:0
}



.mh-contact-location {
  display: block;
  margin: 0;
  padding: 28px;
  border: 1px solid #d8dcd3;
  border-radius: 20px;
  background: #f1f3ed;
}
.mh-contact-location address {
  font-style:normal;
  line-height:1.7
}
.mh-contact-route {
  display: inline-block;
  padding: 12px 0;
  color: #46543b;
  text-decoration: underline;
  text-underline-offset: 5px;
}
.mh-contact-footer {
  width:min(1500px,100%);
  margin:40px auto 0;
  border-radius:24px;
  background:#252d26;
  color:#f3f4ef;
  padding:48px 44px;
  display:grid;
  grid-template-columns:1fr 1.1fr .8fr;
  gap:40px
}
.mh-contact-footer a {
  color:inherit;
  text-underline-offset:5px
}
.mh-contact-footer-brand>a {
  font-size:28px;
  font-weight:500;
  text-decoration:none;
  letter-spacing:-.04em
}
.mh-contact-footer-brand>a span {
  font-weight:700
}
.mh-contact-footer p {
  color:#d1d6cd;
  line-height:1.7;
  font-size:14px
}
.mh-contact-footer h2 {
  font-size:17px;
  font-weight:500;
  margin:0 0 16px
}
.mh-contact-footer-links,.mh-contact-socials {
  display:flex;
  gap:20px;
  flex-direction:column
}
.mh-contact-footer-links {
  font-size:15px;
  line-height:1.6
}
.mh-contact-sr {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0
}
.mh-contact-page a:focus-visible,.mh-contact-footer a:focus-visible {
  outline:3px solid #a8b694;
  outline-offset:6px
}
.mh-nav-links {
  gap:20px
}
@media(max-width:1100px) {
  .mh-contact-grid {
  gap:32px
}
.mh-contact-footer {
  grid-template-columns:1fr 1fr
}
.mh-contact-footer-links {
  grid-column:1/-1
}
.mh-topbar {
  gap:18px
}
.mh-nav-links {
  gap:14px
}

}
@media(max-width:700px) {
  .mh-contact-page {
  padding:100px 16px 24px
}
.mh-contact-heading {
  margin-bottom:36px
}
.mh-contact-heading>p:last-child {
  font-size:17px
}
.mh-contact-grid {
  grid-template-columns:1fr;
  gap:32px
}
.mh-contact-copy h2,.mh-contact-location h2 {
  font-size:25px
}

.mh-contact-location {
  margin-top:32px;
  padding:24px;
  flex-direction:column;
  align-items:flex-start
}
.mh-contact-footer {
  grid-template-columns:1fr;
  gap:28px;
  padding:32px 24px;
  margin-top:24px;
  border-radius:18px
}
.mh-contact-footer-links {
  grid-column:auto
}
.mh-contact-route {
  white-space:normal
}

}



.mh-contact-copy { padding-top: 32px; }
.mh-contact-copy > .mh-kicker { display: flex; width: fit-content; margin-bottom: 12px; }
.mh-contact-copy .mh-contact-phone { font-size: clamp(29px, 3.3vw, 44px); letter-spacing: -.03em; white-space: nowrap; margin: 12px 0 24px; }
.mh-contact-location h2 { margin-top: 0; font-size: 24px; }
.mh-contact-map { display: block; width: 100%; height: 250px; border: 0; border-radius: 12px; margin: 24px 0; background: #e4e8df; }
.mh-contact-appointment { display: block; margin-top: 32px; padding-top: 20px; }
.mh-contact-appointment p { margin: 0; font-size: 15px; }
@media (max-width: 700px) {
  .mh-contact-heading { margin-bottom: 24px; }
  .mh-contact-copy { padding-top: 0; }
  .mh-contact-copy .mh-contact-phone { font-size: clamp(27px, 7.7vw, 34px); }
  .mh-contact-map { height: 220px; }
  .mh-contact-location { padding: 24px; }
}

.mh-contact-heading .mh-kicker { width: fit-content; }

.mh-instagram-link { position: relative; display: flex; flex-wrap: wrap; align-items: center; gap: 10px; width: fit-content; max-width: 100%; cursor: pointer; font-size: 15px; }
.mh-instagram-link svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.5; flex-shrink: 0; }
.mh-instagram-link .mh-instagram-dot { fill: currentColor; stroke: none; }
.mh-instagram-link:focus-visible { outline: 2px solid #a8b694; outline-offset: 5px; border-radius: 4px; }
.mh-contact-copy .mh-contact-socials { margin-top: 24px; }
