/* 响应式布局增强配置 */

/* 超大屏幕 (>1920px) */
@media screen and (min-width: 1920px) {
  html {
    font-size: 70%;
    /* 1rem = 11.2px，适当放大 */
  }
}

/* 大屏幕 (1440px - 1920px) */
@media screen and (min-width: 1440px) and (max-width: 1919px) {
  html {
    font-size: 62.5%;
    /* 1rem = 10px，标准 */
  }
}

/* 中等屏幕 (1024px - 1439px) */
@media screen and (min-width: 1024px) and (max-width: 1439px) {
  html {
    font-size: 58%;
    /* 1rem = 9.28px，略微缩小 */
  }

  .container {
    max-width: 102.4rem;
    padding: 0 3rem;
  }
}

/* 平板横屏 (768px - 1023px) */
@media screen and (min-width: 768px) and (max-width: 1199px) {
  html {
    font-size: 55%;
    /* 1rem = 8.8px */
  }

  .container {
    max-width: 100%;
    padding: 0 3rem;
  }

  /* 合作客户移动端适配 */
  .partners-logos {
    overflow: visible;
    padding: 2rem;
  }

  /* 隐藏PC端滚动容器 */
  .partners-scroll {
    display: none;
  }

  /* 显示移动端网格容器 */
  .partners-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    width: 100%;
    gap: 1.5rem;
  }

  .partner-logo {
    width: auto;
    height: auto;
    padding: 1rem;
    flex-shrink: 1;
  }

  .partner-logo:not(:last-child)::after {
    display: none;
  }

  .partner-logo img {
    max-width: 100%;
    height: auto;
    filter: none;
  }

  .partner-logo:hover {
    opacity: 1;
  }

  .partner-logo:hover img {
    filter: none;
  }

  .hero-title {
    font-size: 5rem;
  }

  .hero-subtitle {
    font-size: 2rem;
  }

  .product-wrapper,
  .product-e {
    width: 90%;
    transform: translate(-50%, -50%) scale(0.85);
  }

  /* 解决方案区域 */
  .solution-title {
    font-size: 3rem;
    margin-bottom: 1.5rem;
  }

  .solution-subtitle {
    font-size: 1.8rem;
    text-align: center;
  }

  .carousel-content {
    gap: 3rem;
  }

  .content-title {
    font-size: 2.6rem;
  }

  .content-description {
    font-size: 1.6rem;
  }

  /* 装备区域 */
  .equipment-title {
    font-size: 3rem;
    margin-bottom: 1.5rem;
  }

  .equipment-subtitle {
    font-size: 1.6rem;
  }

  .equipment-grid {
    grid-template-columns: repeat(5, 1fr);
    gap: 2rem;
  }

  .equipment-icon {
    width: 11rem;
    height: 11rem;
  }
}

/* 平板竖屏和大手机 (480px - 767px) */
@media screen and (min-width: 480px) and (max-width: 767px) {
  html {
    font-size: 50%;
    /* 1rem = 8px */
  }

  .container {
    padding: 0 2rem;
  }

  /* 合作客户移动端适配 */
  .partners-logos {
    overflow: visible;
    padding: 2rem;
  }

  /* 隐藏PC端滚动容器 */
  .partners-scroll {
    display: none;
  }

  /* 显示移动端网格容器 */
  .partners-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    width: 100%;
    gap: 1.5rem;
  }

  .partner-logo {
    width: auto;
    height: auto;
    padding: 1rem;
    flex-shrink: 1;
  }

  .partner-logo:not(:last-child)::after {
    display: none;
  }

  .partner-logo img {
    max-width: 100%;
    height: auto;
    filter: none;
  }

  .partner-logo:hover {
    opacity: 1;
  }

  .partner-logo:hover img {
    filter: none;
  }

  .hero {
    min-height: 50rem;
  }

  .hero-title {
    font-size: 4rem;
  }

  .hero-subtitle {
    font-size: 1.8rem;
  }

  .hero-buttons {
    flex-direction: row;
    width: 100%;
    gap: 1.5rem;
  }

  .hero-btn {
    width: auto;
    max-width: none;
    flex: 1;
  }

  .product-title {
    font-size: 2.8rem;
    padding: 0 2rem;
  }

  .product-subtitle {
    font-size: 1.5rem;
    padding: 0 2rem;
  }

  /* 解决方案 */
  .solution-title {
    font-size: 2.6rem;
    padding: 0 2rem;
  }

  .solution-subtitle {
    font-size: 1.5rem;
    padding: 0 2rem;
  }

  .content-title {
    font-size: 2.2rem;
  }

  .content-description {
    font-size: 1.4rem;
  }

  /* 装备 */
  .equipment-title {
    font-size: 2.8rem;
  }

  .equipment-subtitle {
    font-size: 1.5rem;
  }

  .equipment-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5rem;
  }

  .equipment-icon {
    width: 9rem;
    height: 9rem;
  }
}

/* 小手机 (<480px) */
@media screen and (max-width: 478px) {
  html {
    font-size: 45%;
    /* 1rem = 7.2px */
  }

  .container {
    padding: 0 1.5rem;
  }

  /* 合作客户移动端适配 */
  .partners-logos {
    overflow: visible;
    padding: 2rem;
  }

  /* 隐藏PC端滚动容器 */
  .partners-scroll {
    display: none;
  }

  /* 显示移动端网格容器 */
  .partners-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    width: 100%;
    gap: 1rem;
  }

  .partner-logo {
    width: auto;
    height: auto;
    padding: 1rem;
    flex-shrink: 1;
  }

  .partner-logo:not(:last-child)::after {
    display: none;
  }

  .partner-logo img {
    width: 100%;
    height: auto;
    filter: none;
  }

  .partner-logo:hover {
    opacity: 1;
  }

  .partner-logo:hover img {
    filter: none;
  }

  .hero {
    min-height: 45rem;
  }

  .hero-title {
    font-size: 5.8rem;
  }

  .hero-subtitle {
    font-size: 2.4rem;
  }

  .hero-buttons {
    flex-direction: row;
    width: 100%;
    gap: 1.5rem;
  }

  .hero-btn {
    width: auto;
    flex: 1;
    padding: 1.2rem 1.5rem;
  }

  .product-title {
    font-size: 2.4rem;
    padding: 0 1.5rem;
  }

  .product-subtitle {
    font-size: 1.4rem;
    padding: 0 1.5rem;
  }

  /* 解决方案 */
  .solution {
    padding: 4rem 0;
  }

  .solution-title {
    font-size: 3rem;
  }

  .solution-subtitle {
    font-size: 1.8rem;
    text-align: center;
  }

  .content-title {
    font-size: 2.4rem;
  }

  .content-description {
    font-size: 1.8rem;
  }

  /* 装备 */
  .equipment-title {
    font-size: 3rem;
  }

  .equipment-subtitle {
    font-size: 1.8rem;
  }

  .equipment-icon {
    width: 9rem;
    height: 9rem;
  }

  .equipment-name {
    font-size: 1.8rem;
  }
}

/* 横屏优化 */
@media screen and (max-height: 600px) and (orientation: landscape) {
  .hero {
    height: auto;
    min-height: 100vh;
    padding: 8rem 0 4rem;
  }

  .hero-content {
    position: relative;
    bottom: auto;
  }

  .product {
    height: auto;
    min-height: 100vh;
  }

  .solution {
    padding: 6rem 0;
  }

  .equipment {
    padding: 4rem 0 6rem;
  }
}

/* 高分辨率屏幕优化 */
@media screen and (-webkit-min-device-pixel-ratio: 2),
  screen and (min-resolution: 192dpi) {
  body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }

  img {
    image-rendering: -webkit-optimize-contrast;
  }
}

/* 触摸设备优化 */
@media (hover: none) and (pointer: coarse) {
  .nav-menu a,
  .footer-btn,
  .hero-btn,
  .content-btn {
    min-height: 4.4rem;
    /* 44px，符合触摸目标最小尺寸 */
  }

  .equipment-item {
    padding: 1rem;
  }

  .indicator {
    min-width: 2rem;
    min-height: 0.8rem;
    width: 4rem;
    height: 0.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  /* 移除hover效果，避免触摸设备的粘滞问题 */
  .equipment-item:hover {
    transform: none;
  }

  .equipment-icon:hover {
    transform: none;
  }

  /* 添加触摸反馈 */
  .equipment-item:active {
    transform: scale(0.95);
    transition: transform 0.1s ease;
  }

  .content-btn:active {
    transform: scale(0.95);
    transition: transform 0.1s ease;
  }
}

/* 超小屏幕 (<375px) */
@media screen and (max-width: 374px) {
  html {
    font-size: 42%;
    /* 1rem = 6.72px */
  }

  /* 合作客户移动端适配 */
  .partners-logos {
    overflow: visible;
    padding: 2rem;
  }

  /* 隐藏PC端滚动容器 */
  .partners-scroll {
    display: none;
  }

  /* 显示移动端网格容器 */
  .partners-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    width: 100%;
    gap: 1.5rem;
  }

  .partner-logo {
    width: auto;
    height: auto;
    padding: 1rem;
    flex-shrink: 1;
  }

  .partner-logo:not(:last-child)::after {
    display: none;
  }

  .partner-logo img {
    max-width: 100%;
    height: auto;
    filter: none;
  }

  .partner-logo:hover {
    opacity: 1;
  }

  .partner-logo:hover img {
    filter: none;
  }

  .hero-title {
    font-size: 3.2rem;
  }

  .hero-subtitle {
    font-size: 1.5rem;
  }

  .product-title {
    font-size: 2.2rem;
  }

  .solution-title {
    font-size: 2rem;
  }

  .equipment-title {
    font-size: 2.2rem;
  }

  .equipment-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
  }

  .equipment-icon {
    width: 7rem;
    height: 7rem;
  }
}

/* 打印样式 */
@media print {
  .navbar,
  .nav-toggle,
  .nav-overlay,
  .hero-buttons,
  .footer-buttons,
  .carousel-indicators,
  .indicator {
    display: none !important;
  }

  body {
    font-size: 12pt;
  }

  .hero {
    height: auto;
    page-break-after: always;
  }

  .product,
  .solution,
  .equipment {
    page-break-inside: avoid;
  }
}

/* 减少动画（用户偏好设置） */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* 深色模式支持（可选） */
@media (prefers-color-scheme: dark) {
  /* 如果需要深色模式，可以在这里添加样式 */
}
