/* =========================================================================
 * UDAI 全站移动端视觉&交互对齐桌面端 - v6.15zzj
 * - 仅在 @media 小屏内做覆盖，桌面端 (>=1200px) 零回归
 * - class 命名空间：mob-* / v615zzj-*
 * - 不 reset 已有样式，只对现有组件做 padding/字号/排列方式补丁
 * ========================================================================= */

/* ---------- 1. 全局基础：仅在 <=767px 内生效 ---------- */
@media (max-width: 767px) {

  /* 1.1 防溢出 + 字号底线 + 行高 */
  html, body {
    -webkit-text-size-adjust: 100%;
    overflow-x: hidden;
  }
  body {
    font-size: 15px !important;
    line-height: 1.7 !important;
    word-break: break-word;
    overflow-wrap: anywhere;
  }
  img, video, iframe {
    max-width: 100% !important;
    height: auto !important;
  }
  .container, .container-fluid {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  /* 1.2 通用 section padding 收缩（沿用 v615h，再做加固） */
  .v69-ai-era, .v69-products, .v614-industries,
  .v615-partner-rich, .v615-video-area, .v615b-final-cta-area,
  .v615n-dark, .v615n-white, .v615n-gray,
  section[class*="-area"] {
    padding: 56px 0 !important;
  }

  /* 1.3 通用大标题、副标题字号梯度 */
  h1 { font-size: 28px !important; line-height: 1.3 !important; }
  h2 { font-size: 24px !important; line-height: 1.35 !important; }
  h3 { font-size: 20px !important; line-height: 1.4 !important; }
  h4 { font-size: 18px !important; line-height: 1.45 !important; }
  h5 { font-size: 16px !important; line-height: 1.5 !important; }
  h6 { font-size: 15px !important; line-height: 1.5 !important; }
  p  { font-size: 15px !important; line-height: 1.75 !important; }

  /* 1.4 v615n 自定义标题（About 页等） */
  .v615n-section-title { font-size: 24px !important; line-height: 1.3 !important; margin-bottom: 12px !important; }
  .v615n-section-sub   { font-size: 14px !important; line-height: 1.7 !important; margin-bottom: 32px !important; }
  .v615n-hero-title    { font-size: 28px !important; line-height: 1.35 !important; }
  .v615n-hero-sub      { font-size: 14px !important; line-height: 1.75 !important; }
  .v615n-hero-tag      { font-size: 11px !important; letter-spacing: 1.5px !important; padding: 5px 14px !important; }
  .v615n-about-hero    { padding: 80px 0 56px !important; }

  /* 1.5 CTA / 按钮：手机端最低可点尺寸 44px，字号 ≥ 14px */
  .btn, .header-btn, .header-btn2, a.header-btn, a.header-btn2,
  .v615n-hero-cta, .v615n-cta-big,
  button.btn, input[type="submit"], input[type="button"] {
    min-height: 44px !important;
    padding: 12px 22px !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  /* hero CTA 单独再大一档 */
  .v615n-hero-cta, .slider-caption .btn, .hero-caption2 .btn {
    font-size: 16px !important;
    padding: 14px 28px !important;
  }
}

/* ---------- 2. 顶部导航 / 汉堡菜单（移动端） ---------- */
@media (max-width: 991px) {
  /* 2.1 让 logo 不被挤压 */
  .header-area .logo img { max-height: 36px !important; width: auto !important; }
  .header-area .menu-wrapper { padding: 8px 0 !important; }
  .header-area .header-btn2.border-btn2 { display: none !important; }

  /* 2.2 主菜单在 <=991px 隐藏（桌面端不影响） */
  .header-area .main-menu { display: none !important; }
  .header-area .mobile_menu { display: block !important; }

  /* 2.3 自建汉堡按钮（mob-hamburger） */
  .mob-hamburger {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: none;
    background: transparent;
    color: #232F55;
    cursor: pointer;
    padding: 0;
    margin-left: 8px;
    border-radius: 8px;
    position: relative;
    z-index: 100001;
  }
  .mob-hamburger .mob-hamburger-bar {
    display: block;
    width: 22px;
    height: 2px;
    background: currentColor;
    border-radius: 2px;
    position: relative;
    transition: transform .25s ease, opacity .15s ease;
  }
  .mob-hamburger .mob-hamburger-bar::before,
  .mob-hamburger .mob-hamburger-bar::after {
    content: '';
    position: absolute;
    left: 0;
    width: 22px;
    height: 2px;
    background: currentColor;
    border-radius: 2px;
    transition: transform .25s ease, top .25s ease;
  }
  .mob-hamburger .mob-hamburger-bar::before { top: -7px; }
  .mob-hamburger .mob-hamburger-bar::after  { top:  7px; }
  .mob-hamburger.is-open .mob-hamburger-bar { background: transparent; }
  .mob-hamburger.is-open .mob-hamburger-bar::before { top: 0; transform: rotate(45deg); }
  .mob-hamburger.is-open .mob-hamburger-bar::after  { top: 0; transform: rotate(-45deg); }

  /* dark hero 区域 header 时让汉堡变白 */
  .header-area.header-transparent:not(.sticky-bar) .mob-hamburger {
    color: #ffffff;
  }

  /* 2.4 全屏菜单遮罩 */
  .mob-menu-mask {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(10, 22, 50, 0.55);
    z-index: 99998;
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease, visibility .25s;
  }
  .mob-menu-mask.is-open { opacity: 1; visibility: visible; }

  /* 2.5 抽屉式菜单面板 */
  .mob-menu-panel {
    position: fixed;
    top: 0;
    right: 0;
    width: 82vw;
    max-width: 340px;
    height: 100vh;
    background: #ffffff;
    z-index: 99999;
    transform: translateX(100%);
    transition: transform .3s cubic-bezier(.4,.0,.2,1);
    box-shadow: -8px 0 32px rgba(35,47,85,.18);
    display: flex;
    flex-direction: column;
    padding: 18px 0 24px;
  }
  .mob-menu-panel.is-open { transform: translateX(0); }

  .mob-menu-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4px 20px 14px;
    border-bottom: 1px solid #eef0f5;
  }
  .mob-menu-head .mob-menu-logo { font-weight: 800; color: #232F55; font-size: 18px; letter-spacing: 1px; }
  .mob-menu-head .mob-menu-close {
    width: 36px; height: 36px; border: none; background: transparent;
    color: #232F55; font-size: 22px; cursor: pointer; line-height: 1;
    border-radius: 8px;
  }
  .mob-menu-head .mob-menu-close:active { background: #f5f7fa; }

  .mob-menu-list {
    list-style: none;
    padding: 8px 0;
    margin: 0;
    overflow-y: auto;
    flex: 1;
  }
  .mob-menu-list > li > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 20px;
    color: #232F55;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    border-bottom: 1px solid #f3f4f8;
  }
  .mob-menu-list > li > a:active { background: #f5f7fa; }
  .mob-menu-list .mob-sub {
    list-style: none;
    padding: 0;
    margin: 0;
    background: #fafbfd;
    max-height: 0;
    overflow: hidden;
    transition: max-height .3s ease;
  }
  .mob-menu-list .mob-has-sub.is-open .mob-sub { max-height: 600px; }
  .mob-menu-list .mob-has-sub > a::after {
    content: '\\203A';
    display: inline-block;
    transition: transform .25s ease;
    font-size: 22px;
    color: #8893ab;
  }
  .mob-menu-list .mob-has-sub.is-open > a::after { transform: rotate(90deg); }
  .mob-menu-list .mob-sub > li > a {
    display: block;
    padding: 12px 32px;
    color: #4a5670;
    font-size: 15px;
    text-decoration: none;
    border-bottom: 1px solid #eef0f5;
  }
  .mob-menu-list .mob-sub > li > a:active { background: #eef2f7; }

  .mob-menu-cta {
    padding: 16px 20px 4px;
    border-top: 1px solid #eef0f5;
  }
  .mob-menu-cta a {
    display: block;
    width: 100%;
    text-align: center;
    background: #FF4495;
    color: #fff;
    font-weight: 700;
    padding: 14px 16px;
    border-radius: 8px;
    text-decoration: none;
    font-size: 16px;
    box-shadow: 0 6px 18px rgba(255,68,149,.32);
  }
  .mob-menu-cta a:active { background: #e6377f; }

  /* 滚动锁定 */
  body.mob-menu-lock { overflow: hidden !important; touch-action: none !important; }
}

/* ---------- 3. Hero 区 ---------- */
@media (max-width: 767px) {
  .slider-area, .slider-area2 { padding: 70px 0 50px !important; min-height: auto !important; }
  .slider-active, .hero-caption, .hero-caption2 { padding: 0 4px !important; text-align: center !important; }
  .hero-caption2 h2, .uu-hero-title, .slider-caption h2 {
    font-size: 26px !important; line-height: 1.3 !important; margin-bottom: 14px !important;
  }
  .hero-caption2 p, .uu-hero-sub, .slider-caption p {
    font-size: 14px !important; line-height: 1.75 !important; margin-bottom: 22px !important;
  }
  /* hero 配图等比缩到 ≤ 80vw 居中 */
  .hero-img, .slider-img, .uu-hero-img,
  img[class*="hero"], img[src*="hero"] {
    display: block !important;
    max-width: 80vw !important;
    margin: 24px auto 0 !important;
  }
}

/* ---------- 4. 产品矩阵 3 卡片 ---------- */
@media (max-width: 767px) {
  .v69-products .row > [class*="col-"] {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    margin-bottom: 18px !important;
  }
  .v69-products .col-lg-4 > a,
  .v69-products .col-lg-4 > div {
    padding: 26px 22px !important;
    border-radius: 12px !important;
  }
  .v69-products h3 { font-size: 22px !important; }
  .v69-products p { min-height: 0 !important; font-size: 14px !important; }
}

/* ---------- 5. 6 大行业卡片 ---------- */
@media (max-width: 991px) {
  .v614-industries .row > [class*="col-"] {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }
}
@media (max-width: 767px) {
  .v614-industries .row > [class*="col-"] {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    margin-bottom: 16px !important;
  }
  .v614-industries .col-lg-4 > div,
  .v614-industries .col-lg-4 > a {
    padding: 24px 20px !important;
    border-radius: 12px !important;
  }
  .v614-industries h4 { font-size: 18px !important; }
  .v614-industries p { font-size: 14px !important; min-height: 0 !important; }
  /* emoji 图标稍微缩小 */
  .v614-industries [style*="font-size:48px"],
  .v614-industries [style*="font-size:56px"] {
    font-size: 40px !important;
  }
}
/* ≤480 时强制 1 列（避免双列字段过窄） */
@media (max-width: 480px) {
  .v614-industries .row > [class*="col-"] {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

/* ---------- 6. WHY UDAI · 4 步 STEP 流程 ---------- */
@media (max-width: 767px) {
  .v615-partner-rich .row > [class*="col-"] {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    margin-bottom: 16px !important;
  }
  .v615-partner-rich .step-card,
  .v615-partner-rich .promise-card {
    padding: 22px 18px !important;
    border-radius: 12px !important;
  }
  /* 把 step 卡片之间桌面端横向连接线藏起来 */
  .v615-partner-rich .step-line,
  .v615-partner-rich .step-arrow,
  .v615-partner-rich [class*="connector"],
  .v615-partner-rich .step-card::after {
    display: none !important;
  }
  /* 3 数字承诺竖向排列 */
  .v615-partner-rich [style*="font-size:48px"],
  .v615-partner-rich [style*="font-size:42px"] {
    font-size: 36px !important;
  }
}

/* ---------- 7. 数据展示 50+/6大/24h ---------- */
@media (max-width: 767px) {
  /* 数据栏整行居中堆叠（用通用选择器，覆盖多种历史 class） */
  .stats-row, .v615-stats, .v615-partner-rich .stats,
  .udai-stats, .number-list {
    text-align: center !important;
  }
  .stats-row > [class*="col-"],
  .v615-stats > [class*="col-"],
  .udai-stats > [class*="col-"] {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    margin-bottom: 22px !important;
  }
  /* 兜底：所有大数字 h1/h2 在数据栏里居中 */
  .number h1, .number2 h1, .number h2, .number2 h2 {
    font-size: 36px !important;
    text-align: center !important;
  }
}

/* ---------- 8. 视频占位区（COMING SOON） ---------- */
@media (max-width: 767px) {
  .v615-video-area #udai-video-box,
  .v615-video-area .video-placeholder,
  .v615-video-area .video-box {
    border-radius: 12px !important;
    min-height: 220px !important;
    padding: 28px 18px !important;
  }
  .v615-video-area h2 { font-size: 22px !important; }
  .v615-video-area .coming-soon, .v615-video-area [class*="coming"] {
    font-size: 13px !important;
    letter-spacing: 2px !important;
  }
}

/* ---------- 9. Footer 适配 ---------- */
@media (max-width: 991px) {
  .footer-area .row > [class*="col-"] {
    flex: 0 0 50% !important;
    max-width: 50% !important;
    margin-bottom: 28px !important;
  }
}
@media (max-width: 767px) {
  .footer-area { padding-top: 50px !important; padding-bottom: 20px !important; }
  .footer-area .row > [class*="col-"] {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    margin-bottom: 24px !important;
    text-align: left !important;
  }
  .footer-area .single-footer-caption { margin-bottom: 24px !important; }
  .footer-area .footer-logo img { max-height: 40px !important; }
  .footer-area .footer-pera p { font-size: 14px !important; line-height: 1.75 !important; }
  .footer-area .footer-tittle h4 { font-size: 16px !important; margin-bottom: 12px !important; }
  /* footer 三图标（微信/电话/抖音）排成一行，加大点击区，居中 */
  .footer-area .footer-social {
    display: flex !important;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: flex-start;
  }
  .footer-area .footer-social a {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 44px !important;
    height: 44px !important;
    border-radius: 50%;
    background: rgba(255,255,255,.08);
    color: #fff !important;
    font-size: 18px !important;
    text-decoration: none;
  }
  .footer-area .footer-social a:active { background: rgba(255,68,149,.85); }
  /* 备案号居中显示 */
  .footer-bottom-area, .footer-copy-right { text-align: center !important; font-size: 12px !important; }
}

/* ---------- 10. About 页 timeline / team / 创始人 ---------- */
@media (max-width: 767px) {
  .v615n-timeline-wrap { padding: 0 4px !important; }
  .v615n-tl-row { flex-direction: column !important; }
  .v615n-tl-left, .v615n-tl-right {
    width: 100% !important;
    text-align: left !important;
    padding: 0 !important;
  }
  .v615n-tl-dot { display: none !important; }
  .v615n-tl-item {
    padding: 14px 16px !important;
    margin-bottom: 14px !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.04);
  }
  .v615n-tl-date { font-size: 13px !important; }
  .v615n-tl-event { font-size: 15px !important; }

  .v615n-team-card {
    padding: 22px 18px !important;
    margin-bottom: 16px !important;
  }
  .v615n-team-avatar, .v615n-team-avatar-placeholder {
    width: 88px !important; height: 88px !important;
  }
  .v615n-talk-grid { grid-template-columns: 1fr !important; gap: 16px !important; }
  .v615n-talk-card { padding: 20px 18px !important; }
  .v615n-bridge-table { font-size: 13px !important; }
  .v615n-bridge-table th, .v615n-bridge-table td {
    padding: 10px 8px !important;
  }
  .v615n-founder-img { max-width: 80vw !important; }
  .v615n-founder-title { font-size: 20px !important; }
  .v615n-founder-text { font-size: 14px !important; line-height: 1.75 !important; }
}

/* ---------- 11. Contact 页 ---------- */
@media (max-width: 767px) {
  /* 联系大电话号字号 */
  .contact-info h1, .contact-info h2,
  [class*="contact"] h1, [class*="contact"] h2 {
    font-size: 28px !important;
    word-break: break-all !important;
  }
  /* QR 二维码缩到合理宽度 */
  img[src*="qr"], img[src*="wechat"], img[src*="douyin"] {
    max-width: 200px !important;
    height: auto !important;
  }
  /* form 全宽，字段间距加大 */
  .contact-form input, .contact-form textarea,
  form input[type="text"], form input[type="email"], form input[type="tel"],
  form textarea, form select {
    width: 100% !important;
    font-size: 15px !important;
    padding: 12px 14px !important;
    min-height: 44px !important;
    margin-bottom: 12px !important;
    border-radius: 8px !important;
  }
  form textarea { min-height: 120px !important; }
}

/* ---------- 12. Blog 列表 / 详情 ---------- */
@media (max-width: 767px) {
  .blog-area .row > [class*="col-"],
  .blog-list .row > [class*="col-"] {
    flex: 0 0 100% !important; max-width: 100% !important; margin-bottom: 18px !important;
  }
  .blog-thumb img { width: 100% !important; }
  .blog-details-area .blog-thumb img { border-radius: 10px !important; }
  .blog-details-area h2 { font-size: 22px !important; }
  .blog-details-area h3 { font-size: 18px !important; }
  .blog-details-area p, .blog-details-area li { font-size: 15px !important; line-height: 1.85 !important; }
}

/* ---------- 13. v615zzi 联系卡：移动端 tap 显示 + 关闭按钮 ---------- */
@media (max-width: 767px) {
  .udai-cp-wrap {
    position: fixed !important;
    left: 16px !important;
    right: 16px !important;
    top: auto !important;
    bottom: 16px !important;
    max-width: none !important;
    min-width: 0 !important;
    width: auto !important;
    padding: 22px 18px !important;
    border-radius: 16px !important;
    transform: translateY(20px) !important;
    box-shadow: 0 -10px 40px rgba(35,47,85,.22) !important;
  }
  .udai-cp-wrap.show {
    transform: translateY(0) !important;
  }
  .udai-cp-wrap::before { display: none !important; }
  /* 移动端关闭按钮（由 JS 注入） */
  .udai-cp-wrap .v615zzj-cp-close {
    position: absolute;
    top: 6px;
    right: 8px;
    width: 36px;
    height: 36px;
    border: none;
    background: transparent;
    color: #8893ab;
    font-size: 24px;
    cursor: pointer;
    line-height: 1;
    border-radius: 8px;
    z-index: 1;
  }
  .udai-cp-wrap .v615zzj-cp-close:active { background: #f5f7fa; color: #232F55; }
  /* 二维码统一缩放 */
  .udai-cp-wrap img.udai-cp-qr { width: 200px !important; height: 200px !important; }
  /* tap-mask：QR 弹出时阻挡背景点击 */
  .v615zzj-cp-mask {
    position: fixed; top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(10,22,50,.42);
    z-index: 99997;
    opacity: 0;
    visibility: hidden;
    transition: opacity .22s ease, visibility .22s;
  }
  .v615zzj-cp-mask.show { opacity: 1; visibility: visible; }
}

/* ---------- 14. <=480 极窄屏：再压一档 ---------- */
@media (max-width: 480px) {
  body { font-size: 14px !important; }
  .container, .container-fluid {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  /* section padding 再小 */
  .v69-ai-era, .v69-products, .v614-industries,
  .v615-partner-rich, .v615-video-area, .v615b-final-cta-area,
  .v615n-dark, .v615n-white, .v615n-gray {
    padding: 44px 0 !important;
  }
  h1 { font-size: 24px !important; }
  h2 { font-size: 22px !important; }
  h3 { font-size: 18px !important; }
  .v615n-hero-title, .hero-caption2 h2, .uu-hero-title, .slider-caption h2 {
    font-size: 22px !important;
  }
  .v615n-section-title { font-size: 22px !important; }
  /* hero 配图再缩 */
  .hero-img, .slider-img, .uu-hero-img,
  img[class*="hero"], img[src*="hero"] {
    max-width: 78vw !important;
  }
  /* footer 三图标 + 微信抖音二维码居中 */
  .footer-area { text-align: center !important; }
  .footer-area .footer-social { justify-content: center !important; }
  .footer-area .footer-pera p,
  .footer-area .footer-tittle h4 { text-align: center !important; }
  /* 抽屉宽度再窄一点也没事 */
  .mob-menu-panel { width: 86vw !important; }
}

/* ---------- 15. 触屏专属：禁用残留 hover 提示 ---------- */
@media (hover: none) and (pointer: coarse) {
  /* 强制重置 hover 阴影残留（避免点完按钮一直高亮） */
  a:hover, button:hover { transition: none !important; }
}
