
:root {
  /* 基准尺寸 - 1920px宽度 */
  --base-width: 1920;
  --base-height:1080;
  /* 精确的缩放比例 - 确保页面完全铺满浏览器宽度 */
  --scale-ratio: calc(100vw / var(--base-width));
  --scale-ratioHeight: calc(100vh / var(--base-height));
  
  /* 保持1920px下的字体大小 */
  --fz-12: 1.33rem;
  --fz-13: 1.47rem;
  --fz-14: 1.6rem;
  --fz-16: 1.87rem;
  --fz-18: 2.13rem;
  --fz-20: 2.4rem;
  --fz-24: 2.67rem;
  --fz-28: 3.2rem;
  --fz-32: 3.47rem;
  --fz-48: 4.27rem;
  --fz-64: 6.4rem;
  --fz-96: 12rem;
  
  /* 保持1920px下的间距 */
  --space-xs: 0.67rem;
  --space-sm: 1.33rem;
  --space-md: 2.67rem;
  --space-lg: 4rem;
  --space-xl: 5.33rem;
  --space-2xl: 8rem;
  --space-3xl: 10.67rem;
}

/* ========== 智能缩放系统 ========== */
/* 确保页面在所有分辨率下都能完全显示，同时保持1920px视觉效果 */
.scale-container {
  width: 100vw;
  height: 100vh;
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  box-sizing: border-box;
  overflow-x: hidden;
  overflow-y: auto;
  /* 确保容器完全铺满 */
  margin: 0;
  padding: 0;
}

.scale-wrapper {
  width: var(--base-width);
  height: auto;
  transform-origin: top center;
  transform: scale(var(--scale-ratio));
  position: relative;
  box-shadow: 0 0 20px rgba(0,0,0,0.1);
  /* 优化渲染质量 */
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  /* 启用硬件加速 */
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  /* 确保完全铺满宽度且不被截断 */
  max-width: none;
  min-height: 100vh;
  /* 确保没有额外边距 */
  margin: 0;
  padding: 0;
}

/* 内容容器 */
.aspect-ratio-container {
  width: 100%;
  height: auto;
  position: relative;
  /* 确保内容完全铺满 */
  margin: 0;
  padding: 0;
}

/* 移除16:9比例限制，确保页面完全铺满浏览器宽度 */

/* ========== 字体优化 ========== */
/* 全局字体渲染优化 */
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-feature-settings: "kern" 1;
  font-kerning: normal;
}

/* 进一步优化文字渲染，减少失真 */
html {
  /* 启用子像素渲染 */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* 优化文字渲染 */
  text-rendering: optimizeLegibility;
  /* 防止文字模糊 */
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
  /* 确保html不会影响缩放容器 */
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  width: 100vw;
  height: 100vh;
}

body {
  /* 确保基础字体渲染质量 */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  /* 防止文字模糊 */
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
  /* 确保body不会影响缩放容器 */
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  width: 100vw;
  height: 100vh;
}

@font-face {
  font-family: 'Source Han Sans CN';
  src: url('https://yjgweb.yuanjia101.com/gweb/ty/font/CN-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+4E00-9FFF, U+3400-4DBF, U+20000-2A6DF, U+2A700-2B73F, U+2B740-2B81F, U+2B820-2CEAF, U+F900-FAFF, U+2F800-2FA1F;
}

@font-face {
  font-family: 'Source Han Sans CN';
  src: url('https://yjgweb.yuanjia101.com/gweb/ty/font/CN-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
  unicode-range: U+4E00-9FFF, U+3400-4DBF, U+20000-2A6DF, U+2A700-2B73F, U+2B740-2B81F, U+2B820-2CEAF, U+F900-FAFF, U+2F800-2FA1F;
}

@font-face {
  font-family: 'Source Han Sans CN';
  src: url('https://yjgweb.yuanjia101.com/gweb/ty/font/CN-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  unicode-range: U+4E00-9FFF, U+3400-4DBF, U+20000-2A6DF, U+2A700-2B73F, U+2B740-2B81F, U+2B820-2CEAF, U+F900-FAFF, U+2F800-2FA1F;
}

@font-face {
  font-family: 'Source Han Sans CN';
  src: url('https://yjgweb.yuanjia101.com/gweb/ty/font/CN-Heavy.otf') format('opentype');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+4E00-9FFF, U+3400-4DBF, U+20000-2A6DF, U+2A700-2B73F, U+2B740-2B81F, U+2B820-2CEAF, U+F900-FAFF, U+2F800-2FA1F;
}

/* ========== 图片和背景优化 ========== */
/* 所有图片优化 */
img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* 背景图片优化 */
[class*="bg-"], 
[style*="background"] {
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  transition: transform 0.3s ease;
}

/* 特定背景区域优化 */
.band-y-bg {
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  min-height: clamp(300px, 40vh, 465px) !important;
  padding-block: clamp(40px, 6vh, 70px) !important;
  position: relative;
}

/* ========== 锦旗展示区域 - 修复倒影显示问题 ========== */
/* 锦旗区域背景 - 原始样式 */
.honor-grid-bg {
  padding: 20px 0 80px;
  position: relative;
  z-index: 1;
  border-radius: 12px;
  overflow: hidden;
  perspective: 1000px;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  min-height: 320px;
}

/* 锦旗容器 - 修复高度问题 */
.honor-container {
  width: 95%;
  max-width: 90%;
  overflow: visible;
  position: relative;
  z-index: 2;
  height: auto;
  min-height: 400px;
  margin: 0 auto;
}

/* 锦旗网格 - 原始样式 */
.honor-grid {
  display: flex;
  gap: 20px;
  width: fit-content;
}

/* 锦旗项目 - 原始样式 */
.honor {
  background: transparent;
  border: none;
  padding: 0;
  text-align: center;
  position: relative;
  z-index: 2;
  transition: all 0.3s ease;
  box-shadow: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow: visible;
  width: 24rem;
  flex-shrink: 0;
  opacity: 1;
  transform: scale(1) translateY(0);
}

/* 锦旗图片 - 原始样式 */
.honor .ph {
  width: 100%;
  aspect-ratio: 386/528;
  object-fit: cover;
  display: block;
  border: none;
  background: transparent;
  margin-bottom: 0;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* 锦旗倒影效果 - 确保显示 */
.honor .ph-reflection {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block !important;
  border: none;
  background: transparent;
  transform: scaleY(1) scaleX(0.62) perspective(1260px) rotateX(102deg);
  opacity: 0.8 !important;
  filter: blur(2px);
  transform-origin: top center;
  z-index: 1;
  margin-top: 174px;
  mask-image:linear-gradient(to top, rgba(0,0,0,0.5) 0%,rgba(0,0,0,0.18) 10%,rgba(0,0,0,0.18) 20%,rgba(0,0,0,0.15) 30%, rgba(0,0,0,0.1) 35%, rgba(0,0,0,0.05) 40%,rgba(0,0,0,0) 45%, rgba(0,0,0,0) 50%, rgba(0,0,0,0) 65%, transparent 100%);
  box-shadow: 0 10px 80px rgba(0,0,0,0.2);
  /* 确保倒影图片可见 */
  visibility: visible !important;
  position: relative;
  max-width: 100%;
}

/* 图片容器 - 原始样式 */
.image-container {
  position: relative;
  width: 100%;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0,0,0,0.1);
}

/* 锦旗覆盖层 - 原始样式 */
.honor-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0,0,0,0.6);
  padding: 16px;
  transform: translateY(100%);
  transition: transform 0.4s ease;
  z-index: 3;
  opacity: 0;
  pointer-events: none;
  height: auto;
  min-height: 60px;
  transform-origin: bottom center;
}

.honor-info {
  text-align: center;
  position: relative;
  z-index: 2;
  width: 100%;
}

.case-type {
  font-size: 1rem;
  color: #fff;
  margin-bottom: 6px;
  font-weight: 600;
}

.case-highlight {
  font-size: 0.8rem;
  color: rgba(255,255,255,0.9);
  line-height: 1.4;
}

/* 锦旗悬停效果 - 原始样式 */
.honor:hover .honor-overlay {
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.honor:hover {
  transform: translateY(-8px);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.honor:hover .ph {
  transform: scale(1.05);
}

/* 锦旗标题和计数器 - 原始样式 */
.honor-title {
  text-align: center;
  color: #B79044;
  font-weight: 700;
  font-size: 2rem;
  margin-bottom: 10px;
}

.honor-sub {
  text-align: center;
  margin-top: 4px;
  font-size: 2rem;
  margin-bottom: 20px;
}

.honor-counter {
  color: var(--fig-gold);
  font-weight: 700;
  font-size: 68px;
  transition: color 0.3s ease;
}

/* 业务卡片图片优化 */
.biz-card .ph {
  transform-origin: center center;
}

.biz-card:hover .ph {
  transform: scale(1.12) !important; /* 悬停时放大 */
}

/* 团队照片优化 */
.team-member img {
  transform-origin: center center;
}

/* 案例图片优化 */
.case-image {
  transform-origin: center center;
}

/* 书籍图片优化 */
.book-item img {
  transform-origin: center center;
}

/* 讲座图片优化 */
.lecture-speaker img {
  transform-origin: center center;
}

/* ========== 响应式覆盖样式 ========== */
/* 导航栏响应式 */
.nav {
  height: clamp(4rem, 8vw, 5rem) !important;
  padding: 0 clamp(1.67rem, 2vw, 1.25rem) !important;
  transform-origin: top center;
}

.brand img {
  height: clamp(1.5rem, 3vw, 2.3rem) !important;
}

.menu {
  gap: clamp(2.03rem, 2vw, 1.875rem) !important;
}

.menu a {
  font-size: var(--fz-12) !important;
}

/* 英雄区域响应式优化 */
.hero-section {
  margin-top: calc(-1 * clamp(4rem, 8vw, 5rem)) !important;
  transform-origin: center center;
  /* 确保英雄区填充满首屏 */
  width: 100% !important;
  position: relative !important;
  overflow: hidden !important;
}

.hero-wrap {
  width: 100% !important;
  position: relative !important;
  overflow: hidden !important;
}

.hero-img {
  width: 100% !important;
  position: relative !important;
  overflow: hidden !important;
  /* 优化背景渐变 */
}

.hero-img > img,
.hero-video,
.hero-placeholder {
  transform-origin: center center;
  /* 确保图片和视频不被拉伸，保持正常比例 */
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  /* height: 100% !important; */
  /* object-fit: cover !important; */
  object-position: center center !important;
  /* 防止拉伸变形 */
  /* 优化渲染质量 */
  image-rendering: -webkit-optimize-contrast !important;
  image-rendering: crisp-edges !important;
  /* 启用硬件加速 */
  will-change: transform, opacity !important;
  backface-visibility: hidden !important;
  -webkit-backface-visibility: hidden !important;
  transform: translateZ(0) !important;
  -webkit-transform: translateZ(0) !important;
}

/* 标题响应式 */
.section-center .sub {
  font-size: var(--fz-28) !important;
}

.h-hero-title {
  font-size: var(--fz-28) !important;
  line-height: var(--fz-64) !important;
}

.section-center p {
  font-size: var(--fz-16) !important;
}

/* 英雄区内容优化 */
.hero-content {
  /* 确保英雄区内容正确显示 */
  position: relative !important;
  z-index: 10 !important;
  /* 防止内容失真 */
  transform: translateZ(0) !important;
  -webkit-transform: translateZ(0) !important;
}

.hero-title {
  /* 英雄区标题优化 */
  font-size: var(--fz-32) !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  /* 防止标题失真 */
  transform: translateZ(0) scale(1) !important;
  -webkit-transform: translateZ(0) scale(1) !important;
  /* 文字渲染优化 */
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: optimizeLegibility !important;
}

.hero-subtitle {
  /* 英雄区副标题优化 */
  font-size: var(--fz-18) !important;
  font-weight: 500 !important;
  letter-spacing: 0.01em !important;
  /* 防止副标题失真 */
  transform: translateZ(0) !important;
  -webkit-transform: translateZ(0) !important;
  /* 文字渲染优化 */
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: optimizeLegibility !important;
}

/* KPI响应式 */
.kpi-wrap {
  padding: clamp(1.5rem, 3vw, 1.75rem) clamp(1.25rem, 2.5vw, 1.5rem) !important;
  transform-origin: center center;
}

.kpi b, .kpi .counter {
  font-size: var(--fz-48) !important;
  line-height: var(--fz-64) !important;
}

.kpi span {
  font-size: var(--fz-16) !important;
}

/* 业务领域响应式 */
.biz-grid {
  row-gap: 4rem;
  column-gap: 1.5rem;
  /* gap: clamp(1rem, 2vw, 1.25rem) !important; */
  transform-origin: center center;
}

.biz-tag {
  font-size: var(--fz-18) !important;
}

.biz-desc {
  font-size: var(--fz-12) !important;
  /* 鼠标悬浮时调整间距 */
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  transition: all 1s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* 业务领域悬浮效果优化 */
.biz-card:hover .biz-desc {
  /* 鼠标悬浮时文本内容与标题上下间距为10px */
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}

/* 间距响应式 */
.band {
  padding: clamp(3rem, 6vw, 5rem) 0 !important;
  transform-origin: center center;
}

.container {
  /* padding-inline: 6rem !important; */
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}
.bgContainer{
  padding-inline: 4rem !important;
}

/* 业务领域区域保持4rem边距 */
.biz-grid {
  padding-inline: 0rem !important;
  box-sizing: border-box !important;
}

/* 为特殊容器类添加6rem左右边距 */
.honor-container,
.cases-container,
.contact-form-container {
  padding-inline: 6rem !important;
  box-sizing: border-box !important;
}

/* ========== 移动端优化 ========== */
@media (max-width: 768px) {
  .biz-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  
  .kpi-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 480px) {
  .biz-grid {
    grid-template-columns: 1fr !important;
  }
  
  .kpi-grid {
    grid-template-columns: 1fr !important;
  }
}

/* ========== 智能缩放策略 ========== */
/* 不同分辨率下的缩放策略 */

/* 小于1920px - 缩小显示 */
@media (max-width: 1919px) {
  :root {
    --scale-ratio: calc(100vw / var(--base-width));
  }
  
  .scale-wrapper {
    transform: scale(var(--scale-ratio));
    width: var(--base-width);
  }
}

/* 1920px - 原始大小 */
@media (min-width: 1920px) and (max-width: 2559px) {
  :root {
    --scale-ratio: 1.0;
  }
  
  .scale-wrapper {
    transform: scale(1.0);
    width: var(--base-width);
  }
}

/* 2560px及以上 - 放大显示，但保持内容完整 */
@media (min-width: 2560px) {
  :root {
    --scale-ratio: calc(100vw / var(--base-width));
  }
  header.top{
    width: 100%!important;
    transform:scale(1)!important;
    min-width: 2560px!important;
  }
  .scale-wrapper {
    transform: scale(var(--scale-ratio));
    width: var(--base-width);
    /* 确保内容不被截断 */
    max-width: none;
  }
  
  .scale-container {
    /* 允许内容超出视口宽度 */
    overflow-x: visible;
  }
}

/* 超宽屏幕特殊处理 */
@media (min-width: 3840px) {
  .scale-wrapper {
    /* 在超宽屏幕上保持合理的最大缩放 */
    transform: scale(min(var(--scale-ratio), 2.0));
  }
}

/* ========== 性能优化 ========== */
/* 减少动画偏好设置 */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
@media (min-width: 1920px) and (max-width: 2560px){
  header.top{
    width: 100%!important;
    transform:scale(1)!important;
    min-width: 1920px!important;
    max-width: 2560px!important;
  }
}

/* 特定元素渲染优化 */
.nav, .hero-section, .biz-grid, .kpi-grid, .honor-grid, .lecture-panel, .book-grid {
  /* 启用硬件加速 */
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

/* 文字元素优化 */
h1, h2, h3, h4, h5, h6, p, span, div {
  /* 优化文字渲染 */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  /* 防止文字模糊 */
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
}

/* 特定文字元素进一步优化 */
h1, h2, h3 {
  /* 标题文字特别优化 */
  font-weight: 700;
  letter-spacing: -0.02em;
  /* 防止标题文字失真 */
  transform: translateZ(0) scale(1);
  -webkit-transform: translateZ(0) scale(1);
}

/* 导航文字优化 */
.nav a, .menu a {
  /* 导航文字特别优化 */
  font-weight: 600;
  letter-spacing: 0.01em;
  /* 防止导航文字失真 */
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
}

/* 按钮文字优化 */
button, .btn {
  /* 按钮文字特别优化 */
  font-weight: 600;
  letter-spacing: 0.02em;
  /* 防止按钮文字失真 */
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
}

/* ========== 图片加载优化 ========== */
/* 清理全局图片硬件加速，避免模糊；按需在局部类上单独开启 */

/* 确保图片在加载时不会闪烁 */
img[loading="lazy"] {
  opacity: 0;
  transition: opacity 0.3s ease;
}

img[loading="lazy"].loaded {
  opacity: 1;
}

/* ========== 布局完整性保证 ========== */
/* 确保所有内容在任何尺寸下都能完整显示 */
* {
  box-sizing: border-box;
}

/* 防止内容溢出 */
.overflow-hidden {
  overflow: hidden !important;
}

/* 确保文本不会被截断 */
.text-ellipsis {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

/* 多行文本截断 */
.text-ellipsis-multiline {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}


