/* IMAGE */

.contact-decor-img{
  width:220px;
  height:260px;
  object-fit:cover;
  border-radius:74px;
  margin-bottom:45px;

  transition:all .45s ease;

  box-shadow:
    0 20px 60px rgba(0,0,0,.08);
}

.contact-decor-img:hover{
  transform:translateY(-8px) scale(1.02);
}

/* TITLE */

.contact-title{
  font-family:"Playfair Display", serif;
  color:#3d3d3d;

  line-height:1.02;
  text-transform:uppercase;

  font-size:clamp(42px,3vw,78px);

  margin-bottom:10px;
  letter-spacing:-0.03em;
}

/* CONTACT LINKS */

.contact-info-link{
  display:flex;
  align-items:center;
  gap:18px;

  text-decoration:none;

  padding:16px 18px;
  border-radius:18px;

  transition:all .35s ease;

  color:#3d3d3d;

  background:rgb(255 255 255 / 11%);

  border:1px solid rgba(61,61,61,.08);

  min-width:320px;
}

.contact-info-link:hover{
  transform:translateX(8px);
  background:#c9d0b5;

  box-shadow:
    0 14px 40px rgba(0,0,0,.08);
}

/* ICON */

.contact-icon{
  width:52px;
  height:52px;

  border-radius:50%;

  display:flex;
  align-items:center;
  justify-content:center;

  background:#3E4427;
  color:#fff;

  font-size:18px;

  flex-shrink:0;

  transition:all .35s ease;
}

.contact-info-link:hover .contact-icon{
  transform:rotate(-8deg) scale(1.08);
  background:#2f341f;
}

/* LABEL */

.contact-label{
  display:block;

  font-size:11px;
  letter-spacing:.18em;

  color:#8a8a8a;

  margin-bottom:6px;
}

.contact-info-link p{
  margin:0;

  font-size:16px;
  font-weight:500;

  color:#222;
}

/* MOBILE */

@media(max-width:991px){

  .contact-decor-img{
    width:170px;
    height:210px;
    margin-bottom:32px;
  }

  .contact-title{
    font-size:clamp(34px,10vw,54px);
  }

}