/* ============================================================
   联系我们 (page-contact) — 设计稿 819:4607
   banner(1920×464 品质服务背景) + 留言咨询(标题+在线客服banner+热线/邮箱卡+扫码)
   + 公司地址(双图+3组地址) + 底部
   ============================================================ */
body.page-contact { background: #fff; }

/* ---------- 顶部导航: 白色底子 ---------- */
/* ---------- 顶部导航: 白色底子 ---------- */
body.page-contact .site-header {
  background: #fff;
  box-shadow: inset 0 -1px 0 0 #EBEBEB;
}
body.page-contact .site-header .logo .logo-dark { display: block; }
body.page-contact .site-header .logo .logo-light { display: none; }
body.page-contact .site-header .navbar > li > a { color: #2E3033; }
body.page-contact .site-header .navbar > li > a:hover { color: #2168E5; opacity: 1; }
body.page-contact .site-header .navbar > li.active > a { color: #2168E5; }
body.page-contact .site-header .vr-pill { border-color: #5C6066; color: #2E3033; }
body.page-contact .site-header:not(.is-scrolled):not(.dd-open) .icon-btn img { filter: none; }
body.page-contact .site-header:not(.is-scrolled):not(.dd-open) .nav-toggle span { background: #2E3033; }
body.page-contact .site-header.is-scrolled,
body.page-contact .site-header.is-solid {
  background: #fff;
  box-shadow: inset 0 -1px 0 0 #EBEBEB;
}

/* ---------- banner (设计稿 1094:19269: 1920×464 品质服务背景) ---------- */
.ct-banner {
  position: relative;
  height: 464px;
  overflow: hidden;
  margin-top: 64px;
}
.ct-banner-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ct-banner-img--m { display: none; }
.ct-banner-inner {
  position: relative;
  z-index: 1;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;         /* 标题+描述 在 hero 图上垂直居中 (原 flex-start + padding-top:154px 顶对齐) */
}
.ct-banner-title {
  font-size: 48px;
  font-weight: 749;
  line-height: 72px;
  color: #222426;
  max-width: 700px;                /* 英文标题较长 (48px 时约 1141px), 限制宽度折成 2 行 */
}
.ct-banner-sub {
  margin-top: 12px;
  font-size: 22px;
  font-weight: 513;
  line-height: 40px;
  color: #393C40;
  max-width: 700px;                /* 英文描述更长, 限制宽度折成 3 行 (与标题同宽, 左对齐成一块) */
}

/* ============================================================
   区块1: 留言咨询 (设计稿 1094:19270: 标题 y592)
   ============================================================ */
.ct-msg { margin-top: 64px; }      /* banner 底 528 → 标题 592 */
.ct-msg-head { text-align: center; }
.ct-msg-title {
  margin: 0;
  font-size: 36px;
  font-weight: 749;
  line-height: 46px;
  color: #222426;
}
.ct-msg-sub {
  margin-top: 12px;
  font-size: 16px;
  font-weight: 489;
  line-height: 28px;
  color: #393C40;
}

/* ---------- 联系我们 (设计稿 1117:19716, 1:1 同售后服务页) ---------- */
.as-contact {
  margin-top: 64px;
  background: #fff;
}
.as-contact-inner { padding: 0 24px; }  /* 保留 .container 水平 24px, 无纵向留白(顶部已有标题区) */
.as-contact-title {
  text-align: center;
  font-size: 36px;
  font-weight: 749;
  line-height: 46px;
  color: #222426;
}
/* 小 banner (1440×334 图 + 渐变遮罩 + 左文) */
.as-contact-banner {
  position: relative;
  margin-top: 64px;
  height: 334px;
  border-radius: 12px;
  overflow: hidden;
}
.as-contact-banner-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.as-contact-banner-text {
  position: relative;
  z-index: 1;
  padding: 100px 0 0 120px;
}
.as-contact-banner-text h3 {
  font-size: 28px;
  font-weight: 666;
  line-height: 42px;
  color: #fff;
}
.as-contact-banner-text p {
  margin-top: 8px;
  font-size: 18px;
  font-weight: 489;
  line-height: 28px;
  color: #EAEBED;
}
.as-contact-banner-text a {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 22px;
  width: fit-content;
  height: 36px;
  padding: 0 14px 0 20px;
  font-size: 14px;
  font-weight: 489;
  color: #fff;
  text-decoration: none;
  border: 1px solid #ffffff;
  border-radius: 18px;
}
/* 联系卡片 (热线 708 / 邮箱 708 / 扫码 1440) */
.as-contact-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  margin-top: 24px;
}
.as-contact-card {
  position: relative;
  height: 334px;
  background: #F4F5F7;
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.as-contact-icon { width: 56px; height: 56px; }
.as-contact-card b {
  margin-top: 24px;
  font-size: 28px;
  font-weight: 749;
  line-height: 42px;
  color: #222426;
}
.as-contact-card > span {
  margin-top: 12px;
  font-size: 18px;
  font-weight: 489;
  line-height: 28px;
  color: #393C40;
}
/* 扫码卡: 左文 + 两个二维码 */
.as-contact-scan {
  grid-column: 1 / -1;
  flex-direction: row;
  justify-content: flex-start;
  padding: 0 120px;
  gap: 0;
}
.as-scan-text { margin-right: auto; }
.as-scan-text h4 {
  font-size: 28px;
  font-weight: 749;
  line-height: 42px;
  color: #222426;
}
.as-scan-text p {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 24px;
  font-size: 18px;
  font-weight: 489;
  line-height: 28px;
  color: #393C40;
}
.as-scan-qr {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-left: 40px;
}
.as-scan-qr-img {
  width: 162px;
  height: 162px;
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
}
.as-scan-qr-img img { width: 100%; height: 100%; object-fit: contain; }
.as-scan-qr > span:last-child {
  margin-top: 14px;
  font-size: 20px;
  font-weight: 749;
  line-height: 30px;
  color: rgb(45 47 51 / 75%);
}

/* ============================================================
   区块2: 公司地址 (设计稿 1094:19284 精确坐标)
   标题 y1856 → 卡片 (240,1950) 1440×1122 #F5F6F7
   图 870×550 + 466×550 → 3行地址(行高92, 行距170, 线在38/40) + 图标72右对齐
   ============================================================ */
.ct-addr { margin-top: 80px; }     /* 联系我们底 2004? 设计: 扫码底 1776 → 标题 1856 = 80 */
.ct-addr-head { text-align: center; }
.ct-addr-title {
  margin: 0;
  font-size: 36px;
  font-weight: 749;
  line-height: 46px;
  color: #222426;
}
.ct-addr-card {
    margin-top: 55px;
    background: #F5F6F7;
    padding: 40px 40px 56px;
    margin-bottom: 80px;
    border-radius: 12px;
}
.ct-addr-imgs {
  display: grid;
  grid-template-columns: 870fr 466fr;
  gap: 24px;                       /* 图1 右 1150 → 图2 左 1174 */
}
.ct-addr-img {
  width: 100%;
  height: 550px;
  object-fit: cover;
  display: block;
}
.ct-addr-rows {
  margin-top: 42px;                /* 图底 2540 → 行1 顶 2582 */
}
.ct-addr-row {
  display: flex;
  align-items: center;             /* 行组 92 高, 图标垂直居中 */
  justify-content: space-between;
  gap: 24px;
  min-height: 92px;                /* 行高 92 = 标题48 + 16 + 地址28 */
  padding: 0 16px;                 /* 文字 x296 = 卡片内容 280 + 16 */
}
.ct-addr-txt {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.ct-addr-name {
  margin: 0;
  font-size: 32px;
  font-weight: 749;
  line-height: 48px;
  color: #2E3033;
}
.ct-addr-desc {
  margin-top: 16px;                /* 标题底 → 地址 (设计 2646-2630=16) */
  font-size: 18px;
  font-weight: 666;
  line-height: 28px;
    color: rgb(46 48 51 / 85%);
}
.ct-addr-ic {
  flex: none;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 72px;
  height: 72px;
}
.ct-addr-ic svg { width: 72px; height: 72px; display: block; }
/* 行间分隔线 (设计 Line 1/2: (296,2712/2884) 1328 宽)
   设计: 行1→线 38, 线→行2 40 (距 170); 行2→线 40, 线→行3 40 (距 172) */
.ct-addr-sep {
  margin: 38px 16px 40px;
  border-top: 1px solid #E5E5E5;
}
.ct-addr-sep:nth-of-type(2) {
  margin-top: 40px;
}

/* ============================================================
   自适应
   ============================================================ */
@media (max-width: 1100px) {
  .ct-addr-card { padding: 32px; }
  .ct-addr-img { height: 440px; }
  .as-contact-grid { grid-template-columns: 1fr; }
  .as-contact-card { width: 100%; }
  .ct-addr-name { font-size: 26px; line-height: 40px; }
  .ct-addr-desc { font-size: 16px; line-height: 26px; }
  .ct-addr-row { min-height: 84px; }
  .ct-addr-sep { margin: 30px 16px 34px; }
  .ct-addr-sep:nth-of-type(2) { margin-top: 34px; }
}

@media (max-width: 900px) {
  .as-contact-scan { flex-wrap: wrap; padding: 32px 24px; gap: 24px; }
  .as-scan-text { margin-right: 0; width: 100%; }
  .as-scan-qr { margin-left: 0; }
  .ct-addr-imgs { grid-template-columns: 1fr; }
  .ct-addr-img { height: auto; aspect-ratio: 870/550; }
}

@media (max-width: 767px) {
  .ct-banner { height: 320px; }
  .ct-banner-inner { padding-top: 0; }   /* 垂直居中由 justify-content:center 控制 (原 padding-top:90px) */
  .ct-banner-title { font-size: 34px; line-height: 52px; }
  .ct-banner-sub { font-size: 17px; line-height: 28px; }
  .ct-msg { margin-top: 40px; }
  .ct-msg-title { font-size: 28px; line-height: 40px; }
  .ct-msg-sub { font-size: 14px; line-height: 24px; }
  .as-scan-text { text-align: center; }
  .as-scan-text p { justify-content: center; }
  .as-contact { margin-top: 0; }
  .as-contact-inner { padding: 48px 24px 64px; }
  .as-contact-title { font-size: 28px; line-height: 40px; }
  .as-contact-banner { margin-top: 32px; height: 240px; }
  .as-contact-banner-text { padding: 56px 0 0 24px; }
  .as-contact-banner-text h3 { font-size: 24px; line-height: 36px; }
  .as-contact-banner-text p { font-size: 16px; line-height: 26px; }
  .as-contact-grid { margin-top: 16px; }
  .as-contact-card { height: 260px; }
  .as-contact-scan { height: auto; justify-content: center; }
  .as-scan-qr-img { width: 120px; height: 120px; }
  .ct-addr { margin-top: 48px; }
  .ct-addr-title {
    margin: 0;
    font-size: 28px;
    font-weight: 749;
    line-height: 46px;
    color: #222426;
  }
  .ct-addr-card { margin-top: 32px; margin-bottom: 48px; padding: 20px; }
  .ct-addr-rows { margin-top: 24px; }
  .ct-addr-row { min-height: auto; padding: 12px 8px; align-items: center; gap: 16px; }
  .ct-addr-name { font-size: 20px; line-height: 30px; }
  .ct-addr-desc { margin-top: 10px; font-size: 14px; line-height: 22px; }
  .ct-addr-ic { width: 48px; height: 48px; flex: none; }
  .ct-addr-ic svg { width: 48px; height: 48px; }
  .ct-addr-sep { margin: 24px 8px 24px; }
}

@media (max-width: 400px) {
  .ct-banner-title { font-size: 28px; line-height: 42px; }
  .ct-banner-sub { font-size: 15px; line-height: 24px; }
  .ct-addr-name { font-size: 18px; line-height: 28px; }
  .ct-addr-desc { font-size: 13px; line-height: 20px; }
  .ct-addr-row { padding: 10px 4px; gap: 12px; }
}

/* ---------- 询价表单嵌入 (联系页, 替代原扫码卡) ---------- */
/* 占满整行; 宽度与 /message-form/ 一致 (932px 居中, 同 .mf-form-wrap), 字段样式复用 message-form.css */
.ct-mf-embed {
  grid-column: 1 / -1;
  margin-top: 8px;
  width: 932px;
  max-width: calc(100% - 48px);
  margin-left: auto;
  margin-right: auto;
}
.ct-mf-embed .mf-form { width: 100%; }
/* 表单上方标题 (规格同 .as-contact-title) */
.ct-mf-title {
  margin: 0 0 32px;
  text-align: center;
  font-size: 36px;
  font-weight: 749;
  line-height: 46px;
  color: #222426;
}

/* ============ 移动端 banner 图 (后台可上传; 留空回退 PC 图) ============ */

@media (max-width: 767px) {
  .ct-banner-img--pc { display: none; }
  .ct-banner-img--m { display: block; }
}
