/* 联系我们页面补充样式：添加到现有全站CSS之后 */
.xz-contact-hero {
  min-height:470px;
  background:linear-gradient(110deg,#fff 0%,#f7fbfa 58%,#eaf6f3 100%);
  overflow:hidden
}
.xz-contact-hero-row {
  min-height:470px
}
.xz-contact-hero h1 {
  margin:18px 0 22px;
  color:var(--xz-ink);
  font-size:50px;
  font-weight:650;
  line-height:1.25;
  letter-spacing:-1px
}
.xz-contact-hero h1 span {
  color:var(--xz-dark)
}
.xz-contact-hero .lead {
  max-width:650px;
  color:#5b6b68;
  font-size:17px;
  line-height:1.9
}
.xz-contact-visual {
  position:relative;
  width:410px;
  height:250px;
  max-width:100%;
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px
}
.xz-contact-visual:before,.xz-contact-visual:after {
  content:"";
  position:absolute;
  border:1px solid rgba(44,174,153,.18);
  border-radius:50%
}
.xz-contact-visual:before {
  inset:-30px 50px
}
.xz-contact-visual:after {
  inset:5px 85px
}
.xz-contact-visual>div {
  position:relative;
  z-index:2;
  width:94px;
  height:94px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background:#fff;
  border:1px solid #d4e5e1;
  box-shadow:0 12px 30px rgba(20,65,59,.09)
}
.xz-contact-visual>div:nth-of-type(2) {
  background:var(--xz-dark);
  color:#fff
}
.xz-contact-visual span {
  color:var(--xz-green);
  font-size:11px;
  font-weight:700
}
.xz-contact-visual strong {
  margin-top:5px;
  font-size:13px
}
.xz-contact-visual>i {
  position:relative;
  z-index:2;
  width:20px;
  height:1px;
  background:var(--xz-green)
}
.xz-contact-visual>small {
  position:absolute;
  bottom:8px;
  color:#748481;
  font-size:10px;
  letter-spacing:1.5px
}
.xz-contact-main h2,.xz-contact-process h2,.xz-contact-services h2 {
  color:var(--xz-ink);
  font-size:38px;
  font-weight:650;
  line-height:1.4;
  letter-spacing:-1px
}
.xz-contact-info>.col-inner {
  padding:15px 50px 15px 0
}
.xz-contact-info p {
  color:var(--xz-muted);
  font-size:15px;
  line-height:1.85
}
.xz-contact-details {
  border-top:1px solid var(--xz-line)
}
.xz-contact-details>div {
  padding:16px 0;
  border-bottom:1px solid var(--xz-line)
}
.xz-contact-details small,.xz-contact-details strong {
  display:block
}
.xz-contact-details small {
  margin-bottom:3px;
  color:#83908d;
  font-size:11px
}
.xz-contact-details strong {
  color:var(--xz-ink);
  font-size:14px;
  font-weight:600
}
.xz-contact-note {
  margin-top:18px;
  padding:14px 16px;
  background:#f3f8f7;
  border-left:2px solid var(--xz-green)
}
.xz-contact-note p {
  margin:0;
  font-size:12px
}
.xz-contact-form-col>.col-inner {
  padding:38px 42px;
  background:#fff;
  border:1px solid #dfe9e6;
  box-shadow:0 18px 48px rgba(24,70,64,.09)
}
.xz-contact-form-title small {
  color:var(--xz-green);
  font-size:12px;
  font-weight:700;
  letter-spacing:1px
}
.xz-contact-form-title h3 {
  margin:6px 0 4px;
  color:var(--xz-ink);
  font-size:26px
}
.xz-contact-form-title p {
  margin:0 0 25px;
  color:var(--xz-muted);
  font-size:12px
}
.xz-contact-form-col label {
  display:block;
  margin-bottom:6px;
  color:#42534f;
  font-size:13px;
  font-weight:600
}

/* 输入框和文本域 */
.xz-contact-form-col input[type=text],
.xz-contact-form-col input[type=email],
.xz-contact-form-col input[type=tel],
.xz-contact-form-col textarea {
  box-sizing:border-box;
  width:100%;
  margin:0 0 16px;
  padding:11px 13px;
  background:#f8faf9;
  border:1px solid #dce6e3;
  border-radius:0;
  box-shadow:none;
  color:var(--xz-ink);
  font-size:14px;
  line-height:1.5
}

/* 咨询类型下拉菜单 */
.xz-contact-form-col select {
  display:block;
  box-sizing:border-box;
  width:100%;
  height:52px!important;
  min-height:52px!important;
  margin:0 0 16px;
  padding:0 42px 0 13px!important;
  background-color:#f8faf9;
  border:1px solid #dce6e3;
  border-radius:0;
  box-shadow:none;
  color:var(--xz-ink);
  font-size:14px;
  line-height:normal!important;
  vertical-align:middle
}

/* 下拉选项 */
.xz-contact-form-col select option {
  padding:8px 12px;
  color:var(--xz-ink);
  background:#fff;
  font-size:14px;
  line-height:1.5
}

.xz-contact-form-col input:focus,.xz-contact-form-col select:focus,.xz-contact-form-col textarea:focus {
  background:#fff;
  border-color:var(--xz-green);
  box-shadow:0 0 0 2px rgba(44,174,153,.1)
}
.xz-contact-form-col textarea {
  min-height:130px;
  resize:vertical
}
.xz-contact-form-col input[type=submit] {
  margin:5px 0 0;
  padding:12px 26px;
  background:var(--xz-dark);
  border:0;
  color:#fff;
  font-size:14px;
  font-weight:600
}
.xz-contact-form-col .wpcf7-spinner {
  vertical-align:middle
}
.xz-contact-form-col .wpcf7-not-valid-tip {
  margin-top:-12px;
  margin-bottom:12px;
  font-size:11px
}
.xz-contact-form-col .wpcf7-response-output {
  margin:18px 0 0!important;
  padding:10px 13px!important;
  font-size:12px
}
.xz-contact-process-row>.col {
  border-right:1px solid var(--xz-line);
  padding:22px 35px
}
.xz-contact-process-row>.col:last-child {
  border:0
}
.xz-contact-process-row b {
  display:flex;
  width:38px;
  height:38px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--xz-deep);
  color:#fff;
  font-size:11px
}
.xz-contact-process-row h3 {
  margin:15px 0 6px;
  font-size:18px
}
.xz-contact-process-row p {
  margin:0;
  color:var(--xz-muted);
  font-size:13px;
  line-height:1.75
}
.xz-contact-services h2 {
  margin:10px 0;
  color:#fff;
  font-size:32px
}
.xz-contact-service-tags {
  display:flex;
  flex-wrap:wrap;
  gap:9px
}
.xz-contact-service-tags span {
  padding:8px 13px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(134,220,205,.28);
  color:#d6e8e5;
  font-size:12px
}

@media(max-width:849px) {
  .xz-contact-hero,.xz-contact-hero-row {
    min-height:auto
  }
  .xz-contact-hero-row {
    padding-top:65px;
    padding-bottom:50px
  }
  .xz-contact-hero h1 {
    font-size:40px
  }
  .xz-contact-hero-side {
    margin-top:25px
  }
  .xz-contact-info>.col-inner {
    padding-right:0
  }
  .xz-contact-form-col {
    margin-top:35px
  }
  .xz-contact-process-row>.col:nth-child(2) {
    border-right:0
  }
  .xz-contact-services>.section-content>.row>.col:last-child {
    margin-top:20px
  }
}

@media(max-width:549px) {
  .xz-contact-hero h1 {
    font-size:34px
  }
  .xz-contact-visual {
    transform:scale(.86);
    transform-origin:left center;
    margin-top:-15px;
    margin-bottom:-15px
  }
  .xz-contact-main h2,.xz-contact-process h2 {
    font-size:30px
  }
  .xz-contact-form-col>.col-inner {
    padding:28px 22px
  }
  .xz-contact-process-row>.col {
    padding:22px 15px;
    border-right:0;
    border-bottom:1px solid var(--xz-line)
  }
}
.xz-contact-form-col .xz-form-privacy {
  margin:3px 0 18px;
  color:#758480;
  font-size:12px;
  font-weight:400;
  line-height:1.75
}