/**
 * 手机 / 平板 / 电脑自适应
 * 同一套内容结构，按屏幕自动切换版式
 */
img, video, iframe {
  max-width: 100%;
  height: auto;
}
html {
  -webkit-text-size-adjust: 100%;
}
.pagebox img,
.newsview img {
  max-width: 100% !important;
  height: auto !important;
}

/* 覆盖旧皮肤强制桌面最小宽度，避免手机横向溢出 */
body.pf-site,
body.pf-site .header,
body.pf-site .menu,
body.pf-site .flink,
body.pf-site .foot,
body.pf-site .row1 {
  min-width: 0 !important;
}

/* ========== 平板：768px ~ 1024px ========== */
@media (max-width: 1024px) {
  :root {
    --pf-wrap: 960px;
  }

  .site-wrap,
  body.pf-site .fyMain,
  body.pf-site .main,
  body.pf-site .pf-content {
    width: min(100% - 28px, 960px) !important;
    max-width: 960px !important;
    box-sizing: border-box;
  }

  .site-header-bar {
    min-height: 68px;
    gap: 14px;
  }

  .site-brand-text strong {
    font-size: 18px;
  }

  .site-header-phone {
    font-size: 18px !important;
  }

  .site-nav a {
    padding: 11px 12px;
    font-size: 13px;
  }

  .pf-hero {
    min-height: min(62vh, 520px);
  }

  .pf-hero-content {
    padding: 48px 0 44px;
    width: min(100% - 28px, 640px);
    margin-left: max(14px, calc((100% - 960px) / 2));
  }

  .pf-hero-brand {
    font-size: clamp(26px, 4.5vw, 36px);
  }

  .pf-section {
    padding: 44px 0 36px;
  }

  .home-grid {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 14px !important;
  }

  .pf-split {
    grid-template-columns: 1fr 0.85fr;
    gap: 20px;
  }

  body.pf-site .pro_list {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 14px !important;
    padding: 18px !important;
  }

  .site-footer-inner {
    grid-template-columns: 1fr 1fr;
    gap: 18px;
  }

  .site-footer-search {
    grid-column: 1 / -1;
  }
}

/* ========== 手机 / 小平板：<= 767px ========== */
@media (max-width: 767px) {
  :root {
    --pf-wrap: 100%;
  }

  .site-wrap {
    width: calc(100% - 24px) !important;
    max-width: none !important;
    padding-left: 0;
    padding-right: 0;
  }

  body.pf-site .fyMain,
  body.pf-site .main,
  body.pf-site .pf-content {
    width: calc(100% - 24px) !important;
    max-width: none !important;
    margin: 16px auto 28px !important;
  }

  /* 顶栏：品牌 + 菜单；电话条始终可见可点 */
  .mobile-nav-toggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    min-width: 64px;
    min-height: 40px;
    border-radius: 2px;
  }

  .site-header-bar {
    flex-wrap: wrap;
    gap: 8px 12px;
    min-height: 56px;
    padding-top: 8px;
    padding-bottom: 8px;
  }

  .site-brand {
    flex: 1 1 auto;
    min-width: 0;
  }

  .site-brand-text strong {
    font-size: 17px;
  }

  .site-brand-text em {
    display: none;
  }

  .site-header-contact {
    order: 3;
    width: 100%;
    margin: 0;
    border-left: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    padding: 10px 0 2px;
    flex-direction: row;
    align-items: center;
    gap: 10px;
  }

  .site-header-label {
    margin-bottom: 0;
    font-size: 11px;
  }

  .site-header-phone {
    font-size: 17px !important;
  }

  /* 折叠导航：竖排，便于手指点击 */
  .site-nav {
    border-top: 0;
  }

  .site-nav .site-wrap {
    width: 100% !important;
    max-width: none !important;
  }

  .site-nav ul {
    display: none;
    flex-direction: column;
    background: #152033;
  }

  .site-nav.is-open ul {
    display: flex;
  }

  .site-nav li {
    width: 100% !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
  }

  .site-nav a {
    padding: 14px 16px !important;
    font-size: 15px;
  }

  .site-nav a.on::after,
  .site-nav a:hover::after {
    left: 16px;
    right: auto;
    width: 28px;
    bottom: 8px;
  }

  /* 首页：结构同电脑，间距更紧凑 */
  .pf-hero {
    min-height: 58vh;
    align-items: flex-end;
  }

  .pf-hero-content {
    width: calc(100% - 24px) !important;
    max-width: none !important;
    margin: 0 auto !important;
    padding: 40px 0 36px;
  }

  .pf-hero-brand {
    font-size: clamp(24px, 7vw, 32px);
    letter-spacing: 0.06em;
  }

  .pf-hero-title {
    font-size: 16px;
  }

  .pf-hero-desc {
    font-size: 13px;
    margin-bottom: 20px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .pf-hero-actions {
    gap: 10px;
  }

  .pf-btn {
    min-height: 42px;
    padding: 0 16px;
    font-size: 13px;
    flex: 1 1 auto;
  }

  .pf-section {
    padding: 28px 0 22px;
  }

  .pf-section-head {
    margin-bottom: 16px;
    padding-bottom: 12px;
  }

  .pf-section-head h2 {
    font-size: 20px;
  }

  .pf-section-head p {
    font-size: 12px;
  }

  .pf-more {
    position: static;
    display: inline-block;
    margin-top: 8px;
  }

  .home-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
  }

  .home-card-name {
    font-size: 12px !important;
    padding: 8px !important;
    min-height: 2.6em;
  }

  .pf-split {
    grid-template-columns: 1fr !important;
    gap: 16px;
  }

  .pf-news-list a {
    padding: 12px 14px;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }

  .pf-news-title {
    white-space: normal;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }

  .pf-contact-block {
    padding: 20px 18px 24px;
  }

  .pf-partners {
    gap: 10px;
  }

  .pf-partners li {
    padding: 8px 10px;
    flex: 1 1 calc(50% - 10px);
  }

  .pf-partners img {
    max-height: 44px;
    margin: 0 auto;
  }

  /* 内容页 */
  body.pf-site .title_view {
    padding: 14px 16px !important;
    flex-direction: column;
    align-items: flex-start;
  }

  body.pf-site .title_view .fl {
    font-size: 18px !important;
  }

  body.pf-site .pf-list a {
    padding: 12px 12px;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }

  body.pf-site .pf-list-title {
    white-space: normal;
  }

  body.pf-site .pro_list {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
    padding: 12px !important;
  }

  body.pf-site .padding25 {
    padding: 16px 14px 24px !important;
    max-width: none;
  }

  body.pf-site h2.center {
    font-size: 18px !important;
    text-align: left;
  }

  body.pf-site .title_s {
    text-align: left;
    font-size: 12px;
  }

  body.pf-site .pagebox,
  body.pf-site .newsview {
    font-size: 15px;
    line-height: 1.75;
    overflow-x: auto;
  }

  .site-footer {
    padding: 28px 0 24px;
  }

  .site-footer-inner {
    grid-template-columns: 1fr !important;
    gap: 16px;
  }

  .site-footer-search form {
    width: 100%;
  }

  .site-backtop {
    right: 12px;
    bottom: 16px;
    width: 40px;
    height: 40px;
  }

  .pointer .fl,
  .pointer .fr {
    float: none !important;
    display: block !important;
  }

  .pointer .fr {
    color: #999;
    font-size: 12px;
    margin-top: 2px;
  }
}

/* 超小屏手机 */
@media (max-width: 380px) {
  .home-grid,
  body.pf-site .pro_list {
    grid-template-columns: 1fr 1fr !important;
  }

  .site-header-phone {
    font-size: 15px !important;
  }

  .pf-btn {
    width: 100%;
  }
}
