/* contact */
.contact {
  padding-top: 30px;
  padding-bottom: 30px;
}

.contact iframe {
  width: 100%;
  height: 100%;
  display: block;
  aspect-ratio: 5 / 4;
  border: 1px solid #e1e1e1;
}

.contact .item {
  padding: 20px;
}

.contact .title {
  color: #fff;
  text-align: left;
  line-height: 1.5;
  margin-bottom: 15px;
}

.contact .cont-list li {
  display: flex;
  align-items: center;
  line-height: 22px;
  color: #fff;
}

.contact .cont-list li:not(:last-child) {
  margin-bottom: 14px;
}

.contact .cont-list li i {
  width: 36px;
  height: 36px;
  font-size: 13px;
  line-height: 1;
  flex-shrink: 0;
  margin-right: 12px;
  border-radius: 50%;
  border: 1px solid #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}

.contact .code-wrap {
  margin-top: 25px;
  display: flex;
  gap: 30px;
}

.contact .code-img {
  width: 130px;
  height: 130px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.contact .code-img::before, .contact .code-img::after {
  content: '';
  position: absolute;
  width: 125px;
  height: 125px;
  border: 1px solid rgba(255, 255, 255, .3);
}

.contact .code-img::before {
  left: 0;
  bottom: 0;
}

.contact .code-img::after {
  top: 0;
  right: 0;
}

.contact .code-img img {
  width: 105px;
  height: 105px;
}

.contact .sub-tit {
  color: #fff;
  font-size: 13px;
  line-height: 35px;
  text-align: center;
}

@media (min-width: 768px) {
  .contact iframe {
    aspect-ratio: 3 / 2;
  }
}

@media (min-width: 1200px) {
  .contact {
    padding-top: 60px;
    padding-bottom: 60px;
  }

  .contact .item-wrap {
    height: 530px;
    position: relative;
  }

  .contact iframe {
    aspect-ratio: 1278 / 528;
  }

  .contact .item {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: fit-content;
    padding-left: 45px;
    padding-right: 45px;
    background-size: 100% 100%;
    background-position: left center;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .contact .item>* {
    max-width: 441px;
  }

  .contact .title {
    margin-bottom: 28px;
  }

  .footer .code-wrap {
    gap: 40px;
  }
}

@media (min-width: 1440px) {
  .contact {
    padding-top: 74px;
    padding-bottom: 80px;
  }

  .contact .item {
    padding-left: 60px;
    padding-right: 60px;
  }
}

@media (max-width: 1199px) {
  .contact .item {
    background-image: none !important;
    background: var(--style-color);
  }
}


/* contact-bottom */
.contact-bottom {
  padding: 30px 0;
}

.contact-bottom .sub-info {
  margin-top: 15px;
  color: #767676;
  text-align: center;
  margin-bottom: 25px;
}

.contact-bottom .block {
  text-align: center;
}

.contact-bottom .img {
  width: 175px;
  height: 175px;
  margin-left: auto;
  margin-right: auto;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0px 0px 13px 0px rgba(116, 120, 127, 0.07);
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.contact-bottom .img img:first-child {
  width: 157px;
  height: 157px;
  border-radius: 50%;
}

.contact-bottom .img img:last-child {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 98px;
  height: 99px;
  opacity: 0;
}

.contact-bottom .tit {
  font-size: 15px;
  margin-top: 20px;
  color: #3c3c3c;
  line-height: 1.75;
}

.contact-bottom .info {
  font-size: 14px;
  line-height: 24px;
}

@media (min-width: 1200px) {
  .contact-bottom {
    padding: 60px 0;
  }

  .contact-bottom .sub-info {
    margin-top: 28px;
    margin-bottom: 48px;
  }

  .contact-bottom .row {
    margin-left: -25px;
    margin-right: -25px;
    margin-bottom: -50px;
  }

  .contact-bottom .row>div {
    padding: 0 25px;
    margin-bottom: 50px;
  }

  .contact-bottom .img img {
    transition: all .5s;
  }

  .contact-bottom .block:hover img:first-child {
    visibility: hidden;
    opacity: 0;
  }

  .contact-bottom .block:hover img:last-child {
    visibility: visible;
    opacity: 1;
  }
}

@media (min-width: 1440px) {
  .contact-bottom {
    padding-top: 74px;
    padding-bottom: 80px;
  }
}