.elementor-152 .elementor-element.elementor-element-da221b2{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-152 .elementor-element.elementor-element-054461c{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-152 .elementor-element.elementor-element-078a1b5{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-152 .elementor-element.elementor-element-078a1b5:not(.elementor-motion-effects-element-type-background), .elementor-152 .elementor-element.elementor-element-078a1b5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F8FA;}.elementor-152 .elementor-element.elementor-element-056e879{--display:flex;}.elementor-152 .elementor-element.elementor-element-056e879:not(.elementor-motion-effects-element-type-background), .elementor-152 .elementor-element.elementor-element-056e879 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F8FA;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-152 .elementor-element.elementor-element-0862c21{padding:58px 0px 0px 0px;text-align:center;}.elementor-152 .elementor-element.elementor-element-0862c21 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:36px;font-weight:700;color:#333333;}.elementor-152 .elementor-element.elementor-element-cedc08a{padding:0px 0px 0px 0px;}@media(min-width:768px){.elementor-152 .elementor-element.elementor-element-078a1b5{--content-width:1500px;}.elementor-152 .elementor-element.elementor-element-056e879{--content-width:1500px;}}@media(max-width:767px){.elementor-152 .elementor-element.elementor-element-da221b2{--min-height:0px;}}/* Start custom CSS for html, class: .elementor-element-0a960c3 *//* ===== Hero Banner ===== */
.elementor-152 .elementor-element.elementor-element-0a960c3 .contact-hero {
  position: relative;
  width: 100%;
  height: 700px;
  overflow: hidden;
}
.elementor-152 .elementor-element.elementor-element-0a960c3 .contact-hero-bg {
  position: absolute;
  inset: 0;
}
.elementor-152 .elementor-element.elementor-element-0a960c3 .contact-hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.elementor-152 .elementor-element.elementor-element-0a960c3 .contact-hero-overlay {
  position: absolute;
  inset: 0;
  
}
.elementor-152 .elementor-element.elementor-element-0a960c3 .contact-hero-content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  height: 100%;
  padding-left: calc((100% - 1500px) / 2 + 40px);
  font-family: Helvetica, Verdana, sans-serif;
}
.elementor-152 .elementor-element.elementor-element-0a960c3 .contact-hero-title {
  font-size: 64px;
  font-weight: 700;
  color: #fff;
  letter-spacing: 4px;
  margin-bottom: 16px;
}
.elementor-152 .elementor-element.elementor-element-0a960c3 .contact-hero-sub {
  font-size: 18px;
  color: rgba(255,255,255,0.85);
  font-weight: 400;
  line-height: 1.6;
}
.elementor-152 .elementor-element.elementor-element-0a960c3 .contact-hero-highlight {
  color: #fff;
  font-weight: 400;
}
.elementor-152 .elementor-element.elementor-element-0a960c3 .contact-hero-line {
  width: 60px;
  height: 4px;
  background: #fff;
  margin-top: 24px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d1beae5 *//* ===== Sticky Nav 全局 ===== */
.elementor-152 .elementor-element.elementor-element-d1beae5 .contact-sticky-nav {
  background: #fff;
  border-bottom: 1px solid #e5e5e5;
  position: sticky;
  top: 0;
  z-index: 100;
  overflow: visible;
}
.elementor-152 .elementor-element.elementor-element-d1beae5 .contact-sticky-nav::before {
  content: '';
  position: absolute;
  top: 0;
  left: -200vw;
  right: -200vw;
  bottom: 0;
  background: #fff;
  border-bottom: 1px solid #e5e5e5;
  z-index: -1;
}
.elementor-152 .elementor-element.elementor-element-d1beae5 .contact-nav-inner {
  max-width: 1500px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 20px;
  height: 56px;
  box-sizing: border-box;
}
.elementor-152 .elementor-element.elementor-element-d1beae5 .contact-nav-tab {
  font-family: Helvetica, Verdana, sans-serif;
  font-size: 15px;
  font-weight: 700;
  color: #333333;
  padding: 16px 0;
  border-bottom: 3px solid #19a1d8;
  white-space: nowrap;
}
.elementor-152 .elementor-element.elementor-element-d1beae5 .contact-breadcrumb {
  font-family: Helvetica, Verdana, sans-serif;
  font-size: 13px;
  color: #999;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 60%;
}

/* ===== Contact Body 基础 ===== */
.elementor-152 .elementor-element.elementor-element-d1beae5 .contact-body {
  background: #f7f8fa;
  padding: 60px 20px 0;
  box-sizing: border-box;
}
.elementor-152 .elementor-element.elementor-element-d1beae5 .contact-body-inner {
  max-width: 1500px;
  margin: 0 auto;
}
.elementor-152 .elementor-element.elementor-element-d1beae5 .contact-page-title {
  font-family: Helvetica, Verdana, sans-serif;
  font-size: 32px;
  font-weight: 700;
  color: #333333;
  text-align: left;
  margin: 0 0 50px;
}

/* ===== 联系卡片 桌面三列 ===== */
.elementor-152 .elementor-element.elementor-element-d1beae5 .contact-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  padding-bottom: 60px;
}
.elementor-152 .elementor-element.elementor-element-d1beae5 .contact-card {
  display: flex;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  padding: 30px;
  gap: 20px;
  align-items: flex-start;
  box-sizing: border-box;
}
.elementor-152 .elementor-element.elementor-element-d1beae5 .contact-card-bar {
  width: 4px;
  min-height: 60px;
  background: #19a1d8;
  border-radius: 2px;
  flex-shrink: 0;
}
.elementor-152 .elementor-element.elementor-element-d1beae5 .contact-card-body {
  flex: 1;
}
.elementor-152 .elementor-element.elementor-element-d1beae5 .contact-card-icon {
  margin-bottom: 12px;
}
.elementor-152 .elementor-element.elementor-element-d1beae5 .contact-card-label {
  font-family: Helvetica, Verdana, sans-serif;
  font-size: 18px;
  font-weight: 600;
  color: #333333;
  margin-bottom: 8px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.elementor-152 .elementor-element.elementor-element-d1beae5 .contact-card-value {
  font-family: Helvetica, Verdana, sans-serif;
  font-size: 18px;
  color: #555;
  line-height: 1.6;
  word-break: break-all; /* 长地址自动换行，不溢出屏幕 */
}

/* ======================================
           移动端断点适配
====================================== */
/* 1. 平板 1024px 以下：3列 → 2列 */
@media (max-width: 1024px) {
  .elementor-152 .elementor-element.elementor-element-d1beae5 .contact-cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
  .elementor-152 .elementor-element.elementor-element-d1beae5 .contact-page-title {
    font-size: 28px;
    margin-bottom: 40px;
  }
  .elementor-152 .elementor-element.elementor-element-d1beae5 .contact-body {
    padding-top: 40px;
  }
}

/* 2. 手机端 768px 以下：2列 → 单列铺满 */
@media (max-width: 768px) {
  /* 导航栏缩小高度 */
  .elementor-152 .elementor-element.elementor-element-d1beae5 .contact-nav-inner {
    height: 48px;
    padding: 0 15px;
  }
  .elementor-152 .elementor-element.elementor-element-d1beae5 .contact-nav-tab {
    font-size: 14px;
  }
  .elementor-152 .elementor-element.elementor-element-d1beae5 .contact-breadcrumb {
    font-size: 12px;
    max-width: 55%;
  }

  /* 卡片改为1列，全屏宽度 */
  .elementor-152 .elementor-element.elementor-element-d1beae5 .contact-cards {
    grid-template-columns: 1fr;
    gap: 20px;
    padding-bottom: 40px;
  }
  .elementor-152 .elementor-element.elementor-element-d1beae5 .contact-card {
    padding: 24px 20px;
  }

  /* 标题缩小 */
  .elementor-152 .elementor-element.elementor-element-d1beae5 .contact-page-title {
    font-size: 24px;
    margin-bottom: 30px;
  }
  .elementor-152 .elementor-element.elementor-element-d1beae5 .contact-body {
    padding: 35px 15px 0;
  }

  /* 卡片文字适配 */
  .elementor-152 .elementor-element.elementor-element-d1beae5 .contact-card-label {
    font-size: 13px;
  }
  .elementor-152 .elementor-element.elementor-element-d1beae5 .contact-card-value {
    font-size: 14px;
  }
}

/* 3. 超小屏手机 480px 极致优化 */
@media (max-width: 480px) {
  .elementor-152 .elementor-element.elementor-element-d1beae5 .contact-nav-inner {
    padding: 0 10px;
  }
  .elementor-152 .elementor-element.elementor-element-d1beae5 .contact-breadcrumb {
    max-width: 50%;
  }
  .elementor-152 .elementor-element.elementor-element-d1beae5 .contact-page-title {
    font-size: 22px;
  }
  .elementor-152 .elementor-element.elementor-element-d1beae5 .contact-card {
    padding: 20px 16px;
  }
  .elementor-152 .elementor-element.elementor-element-d1beae5 .contact-cards {
    gap: 16px;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-cedc08a *//* 外层深色背景容器 */
.quote-container {
  background: #2a2a2a;
  padding: 80px 20px;
}

.quote-container {
  max-width: 1500px;
  margin: 0 auto;
}

.quote-header {
  text-align: center;
  margin-bottom: 50px;
}

.quote-title {
  font-family: 'Helvetica', 'Verdana', sans-serif;
  font-size: 36px;
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 15px 0;
  letter-spacing: 2px;
}

/* === 表单整体 === */
.wpcf7 {
  max-width: 1500px;
  margin: 0 auto;
}

.wpcf7-form {
  max-width: 1500px;
  margin: 0 auto;
}

.quote-form-wrapper {
  width: 100%;
}

/* 隐藏CF7自动插入的br换行 */
.wpcf7-form br {
  display: none;
}

/* 三列等宽网格布局 */
.quote-form-row {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 15px;
  margin-bottom: 15px;
  width: 100%;
}

.quote-form-row > p {
  margin: 0;
  padding: 0;
}

.wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

/* 单行输入框样式 纯白无边框直角 */
input[type="text"],
input[type="tel"],
input[type="email"] {
  width: 100%;
  padding: 14px 16px;
  border: none;
  border-radius: 0;
  background: #ffffff;
  color: #333333;
  font-family: 'Helvetica', 'Verdana', sans-serif;
  font-size: 14px;
  outline: none;
  box-sizing: border-box;
}

input::placeholder {
  color: #999999;
}

/* 文本域通栏 */
.quote-form-full {
  margin-bottom: 15px;
  width: 100%;
}

.quote-form-full > p {
  margin: 0;
  padding: 0;
}

textarea {
  width: 100%;
  padding: 14px 16px;
  border: none;
  border-radius: 0;
  background: #ffffff;
  color: #333333;
  font-family: 'Helvetica', 'Verdana', sans-serif;
  font-size: 14px;
  outline: none;
  box-sizing: border-box;
  min-height: 120px;
  resize: vertical;
}

textarea::placeholder {
  color: #999999;
}

/* 提交按钮通栏青色 */
.quote-form-submit {
  width: 100%;
}

.quote-form-submit > p {
  margin: 0;
  padding: 0;
}

.wpcf7-submit {
  width: 100%;
  background: #00b4cc !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 16px 0 !important;
  font-family: 'Helvetica', 'Verdana', sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  letter-spacing: 2px !important;
  transition: background 0.3s !important;
}

.wpcf7-submit:hover {
  background: #009daf !important;
}

/* 加载转圈隐藏 */
.wpcf7-spinner {
  display: none;
}

/* 错误提示文字颜色 */
.wpcf7-not-valid-tip {
  color: #ff6b6b;
  font-size: 12px;
}/* End custom CSS */