 /* 全局字体设置 */
 * {
   font-family: 'Source Han Sans CN', 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
   /* 全局文字渲染优化 - 不影响尺寸 */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-rendering: optimizeLegibility;
 }

 /* 全局图片基础规则（避免全局硬件加速导致的模糊） */
 img {
   max-width: 100%;
   display: block;
   height: auto;
 }

 :root {
   --bg: #FBFBFB;
   /* 页面米白底 */
   --white: #FFFFFF;
   --ink: #222222;
   --muted: #000;
   --gold: #E7C078;
   /* 金色主体（通用） */
   --gold-deep: #D3A55A;
   /* 深金（强调/按钮） */
   --fig-gold: #E3C78D;
   /* Figma 标注金色（#E3C78D） */
   --line: #EFE7DA;
   /* 分割线 */
   --shadow: 0 0.625rem 1.5rem rgba(0, 0, 0, .06);
   --container: 100%;
   /* 渐变（来自设计稿风格的暖金色系） */
   --grad-gold-text: linear-gradient(90deg, #F5D9A5 0%, #E7C078 45%, #D3A55A 100%);
   /* Figma: 纵向金色透明渐变（整体不透明度约0.6*stop0.5≈0.3）叠加白底 */
   --grad-kpi-figma: linear-gradient(180deg, rgba(227, 199, 141, 0.30) 0%, rgba(227, 199, 141, 0.00) 100%);
   --radius-lg: 1rem;
   --radius-md: 0.75rem;
   --radius-sm: 0.5rem;
   --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;
   /* 导航高度（本页默认导航高度） */
   --nav-h: 80px;
   /* 实际可见导航高度（考虑缩放比例） */
   --effective-nav-h: calc(var(--nav-h) * var(--scale-ratio, 1));
 }

 * {
   box-sizing: border-box
 }

 html,
 body {
   height: 100%
 }

 body {
   margin: 0;
   font-family: "Source Han Sans CN", "PingFang SC", "Microsoft YaHei", -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
   color: var(--ink);
   line-height: 1.65
 }

 .fit-cover {
   width: 100%;
   height: 100%;
   object-fit: contain;  /*修改地图大小使用*/
 }

 a {
   text-decoration: none;
   color: inherit
 }

 .container {
   max-width: 100%;
   margin: 0;
   padding: 0 6rem;
   width: 100%;
   box-sizing: border-box;
 }

 /* ========== 页面进入过渡（整体） ========== */
 #app {
   opacity: 0;
   transform: translateY(-1rem)
 }

 #app.ready {
   opacity: 1;
   transform: none;
   transition: opacity .6s ease, transform .6s ease
 }

 /* ========== 顶部导航 / 汉堡 ========== */
 header.top {
   position: fixed !important;
   top: 0 !important;
   left: 0 !important;
   right: 0 !important;
   z-index: 999999 !important;
   background: transparent;
   /* box-shadow: 0 0.17rem 0.83rem rgba(0, 0, 0, 0.1) !important; */
   width: 1920px ;
   transition: all 0.3s ease;
   margin: 0 !important;
   padding: 0 !important;
   /* 跟随页面缩放 */
   transform-origin: top left !important;
   /* 初始隐藏，避免闪烁 */
   visibility: hidden;
   opacity: 0;
   /* 导航栏文字渲染优化 - 不影响尺寸 */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-rendering: optimizeLegibility;
 }

 /* 滚动时导航栏样式 */
 header.top.scrolled {
   background: rgba(255, 255, 255, 1);
   backdrop-filter: blur(10px);
   box-shadow: 0 0.33rem 1.67rem rgba(0, 0, 0, 0.15);
 }

 /* 向上滚动时隐藏导航栏 */
 header.top.nav-up {
   transform: scale(var(--scale-ratio, 1)) translateY(-100%);
 }

 /* 向下滚动时显示导航栏 */
 header.top.nav-down {
   transform: scale(var(--scale-ratio, 1)) translateY(0);
 }

 /* 导航栏基础缩放状态 */
 header.top {
   transform: scale(var(--scale-ratio, 1));
 }

 /* 导航栏准备就绪状态 */
 header.top.nav-ready {
   visibility: visible !important;
   opacity: 1 !important;
   transition: visibility 0s, opacity 0.3s ease;
 }

 /* 导航栏内容滚动时的微调 */
 header.top.scrolled .nav {
   height: 80px;
   /* 滚动时保持80px高度 */
   transition: height 0.3s ease;
 }

 header.top.scrolled .brand img {
   height: 2rem;
   /* 滚动时稍微减小logo大小 */
   transition: height 0.3s ease;
 }

 header.top.scrolled .menu a {
   font-size: 1.2rem;
   /* 滚动时稍微减小字体大小 */
   transition: font-size 0.3s ease;
 }

 .nav {
   height: 80px;
   display: flex;
   align-items: center;
   justify-content: space-between;
   max-width: 100%;
   margin: 0;
   padding: 0 1.67rem;
   position: relative;
   z-index: 99999;
 }

 .brand {
   display: flex;
   align-items: center;
   gap: 0.83rem
 }

 .brand img {
   height: 2.5rem
 }

 .brand-text {
   display: flex;
   flex-direction: column
 }

 .brand-text h1 {
   font-size: 1.5rem;
   font-weight: bold;
   color: #333;
   margin: 0;
   /* 品牌标题渲染优化 - 不影响尺寸 */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-rendering: optimizeLegibility;
 }

 .brand-text p {
   font-size: 1rem;
   color: #666;
   margin: 0;
   /* 品牌副标题渲染优化 - 不影响尺寸 */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-rendering: optimizeLegibility;
 }

 .menu {
   margin-left: auto;
   display: flex;
   list-style: none;
   gap: 2.5rem;
   margin: 0;
   padding: 0
 }

 .menu a {
   text-decoration: none;
   color: #333;
   font-size: 1.33rem;
   transition: color 0.3s;
   /* 菜单链接渲染优化 - 不影响尺寸 */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-rendering: optimizeLegibility;
 }

 .menu a:hover,
 .menu a.active {
   color: #E3C78D
 }

 .nav-actions {
   display: flex;
   align-items: center;
   gap: 1rem;
   margin-left: 1.67rem
 }

 .search-btn {
   width: 2rem;
   height: 2rem;
   border: none;
   background: transparent;
   cursor: pointer;
   opacity: 0.7
 }

 .lang-select {
   font-size: var(--fz-12);
   padding: 0.33rem 0.67rem;
   border: 1px solid var(--line);
   border-radius: 0.5rem;
   background: var(--white);
   /* 语言选择器渲染优化 - 不影响尺寸 */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-rendering: optimizeLegibility;
 }

 .hamburger {
   display: none;
   margin-left: auto;
   width: 3.17rem;
   height: 2.83rem;
   border: none;
   background: transparent;
   padding: 0;
   cursor: pointer
 }

 .hamburger span {
   display: block;
   height: 0.25rem;
   background: #333;
   border-radius: 0.17rem;
   margin: 0.5rem 0;
   transition: transform .3s ease, opacity .3s ease
 }

 .nav.open .hamburger span:nth-child(1) {
   transform: translateY(0.75rem) rotate(45deg)
 }

 .nav.open .hamburger span:nth-child(2) {
   opacity: 0
 }

 .nav.open .hamburger span:nth-child(3) {
   transform: translateY(-0.75rem) rotate(-45deg)
 }

 /* 移动端菜单抽屉 */
 @media (max-width:1024px) {
   .menu {
     position: absolute;
     right: 1rem;
     top: 80px;
     background: var(--white);
     border: 1px solid var(--line);
     border-radius: 1rem;
     box-shadow: var(--shadow);
     display: none;
     flex-direction: column;
     padding: 0.83rem;
     width: 18.33rem
   }

   .nav.open .menu {
     display: flex
   }

   .hamburger {
     display: block
   }

   .nav-actions {
     display: none
   }

   /* 移动端滚动时导航栏样式 */
   header.top.scrolled .nav {
     height: 80px;
   }

   header.top.scrolled .brand img {
     height: 1.8rem;
   }

   header.top.scrolled .menu a {
     font-size: 1.1rem;
   }
 }

 /* ≤1024 导航高度变量覆盖为滚动态 80px */
 @media (max-width:1024px) {
   :root {
     --nav-h: 80px;
   }
 }

 /* 平板区间（768–1024）采用移动端导航并适配字号与间距 */
 @media (min-width: 750px) and (max-width: 1024px) {
   .hamburger {
     display: block
   }

   .nav-actions {
     display: none
   }

   .menu {
     position: absolute;
     right: 1.25rem;
     top: 80px;
     width: 22rem;
     padding: 1rem
   }

   .menu a {
     font-size: 1.2rem
   }

   .brand img {
     height: 2.2rem
   }

   header.top.scrolled .nav {
     height: 80px
   }

   header.top.scrolled .brand img {
     height: 2rem
   }
 }

 /* ========== 英雄区 ========== */
 .hero-section {
   position: relative;
   width: 100%;
   overflow: hidden;
   margin-top: 0;
   /* 使用减去导航高度的方式精确一屏 */
 }

 .hero-wrap {
   position: relative;
   padding: 0;
   width: 100%;
   overflow: hidden;
   height: 100dvh;
   height: 100svh;
   height: 100vh;
 }

 .hero-img {
   position: relative;
   height: 100dvh;
   height: 100svh;
   height: 100vh;
   width: 100%;
   border-radius: 0;
   overflow: hidden;
 }

 .hero-img>img {
   position: absolute;
   inset: 0;
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: center center;
 }

 .hero-placeholder {
   position: absolute;
   inset: 0;
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: center top;
   z-index: 1;
   transition: opacity 0.5s ease;
 }

 .hero-video {
   position: absolute;
   inset: 0;
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: center center;
   z-index: 2;
   opacity: 0;
   transition: opacity 0.5s ease;
   will-change: opacity;
 }

 /* 全分辨率强制首屏全屏视频（允许拉伸/溢出） */
 #app {
   padding-top: 0 !important;
   position: relative;
   z-index: 1;
 }

 .hero-section {
   height: 100dvh !important;
   height: 100svh !important;
   height: 100vh !important;
   margin-top: 0 !important;
   overflow: hidden !important;
 }

 .hero-wrap,
 .hero-img {
   height: 100dvh !important;
   height: 100svh !important;
   height: 100vh !important;
   overflow: hidden !important;
 }

 .hero-video,
 .hero-placeholder,
 .hero-img>img {
   width: 100% !important;
   height: 100% !important;
   object-fit: fill !important;
   object-position: center center !important;
 }

 /* 让视频脱离缩放容器，固定铺满视口；内容自由缩放不影响视频 */
 .hero-fixed-layer {
   position: fixed;
   inset: 0;
   z-index: 0;
   pointer-events: none;
   overflow: hidden;
   opacity: 0;
   transition: opacity .3s ease;
 }

 .hero-fixed-layer.visible {
   opacity: 1;
 }

 .hero-fixed-layer video {
   width: 100% !important;
   height: 100% !important;
   object-fit: cover !important;
   object-position: center center !important;
 }

 /* 视频激活后隐藏占位图 */
 .hero-section.hero-video-active .hero-placeholder {
   opacity: 0 !important;
 }

 /* ========== Hero 透明遮罩和文字 ========== */
 .hero-overlay {
   position: absolute;
   inset: 0;
   z-index: 10;
   display: flex;
   align-items: center;
   justify-content: center;
   background: rgba(0, 0, 0, 0.2);
   pointer-events: none;
 }

 .hero-text {
   text-align: center;
   color: white;
   font-family: 'Source Han Sans CN', sans-serif;
 }

 .hero-text-line1 {
   font-size: 96px;
   font-weight: bold;
   line-height: 1.2;
   margin-bottom: 100px;
   letter-spacing: 5px;
 }

 .hero-text-line2 {
   font-size: 54px;
   font-weight: bold;
   line-height: 1.3;
 }

 /* 中等屏幕响应式 */
 @media (max-width: 1024px) {
   .hero-text-line1 {
     font-size: 96px;
     letter-spacing: 30px;
     margin-bottom: 80px;
   }

   .hero-text-line2 {
     font-size: 42px;
   }
 }

 /* 1440-2560 全屏开屏动画：以视频高度为主，严禁溢出 */
 @media (min-width: 1440px) {
   #app {
     padding-top: 0 !important;
   }

   .hero-section {
     height: calc(100dvh + var(--effective-nav-h)) !important;
     height: calc(100svh + var(--effective-nav-h)) !important;
     height: calc(100vh + var(--effective-nav-h)) !important;
     min-height: 100vh !important;
     overflow: hidden !important;
   }

   .hero-wrap {
     height: calc(100dvh + var(--effective-nav-h)) !important;
     height: calc(100svh + var(--effective-nav-h)) !important;
     height: calc(100vh + var(--effective-nav-h)) !important;
     min-height: 100vh !important;
     overflow: hidden !important;
   }

   .hero-img {
     height: calc(100dvh + var(--effective-nav-h)) !important;
     height: calc(100svh + var(--effective-nav-h)) !important;
     height: calc(100vh + var(--effective-nav-h)) !important;
     min-height: 100vh !important;
     overflow: hidden !important;
   }

   .hero-video {
     width: 100% !important;
     height: 100% !important;
     object-fit: fill !important;
     object-position: center center !important;
   }

   .hero-placeholder,
   .hero-img>img {
     width: 100% !important;
     height: 100% !important;
     object-fit: cover !important;
     object-position: center center !important;
   }
 }

 .hero-video.loaded {
   opacity: 1;
 }

 .hero-video.loaded~.hero-placeholder {
   opacity: 0;
 }

 /* 响应式优化 */
 /* @media (max-width: 768px) {

   .hero-video,
   .hero-placeholder,
   .hero-img>img {
     object-position: center center;
   }

   .hero-text-line1 {
     font-size: 64px;
     letter-spacing: 20px;
     margin-bottom: 50px;
   }

   .hero-text-line2 {
     font-size: 28px;
   }
 } */

 @media (max-width: 480px) {
   .hero-institutions {
     padding: 0.75rem 1rem;
     margin: 0 1rem;
   }

   .hero-institutions h2 {
     font-size: var(--fz-16);
   }

   .institution-list {
     font-size: var(--fz-12);
     gap: 0.5rem;
   }

   /* Hero文字小屏幕响应式 */
   .hero-text-line1 {
     font-size: 32px;
     letter-spacing: 10px;
     margin-bottom: 30px;
   }

   .hero-text-line2 {
     font-size: 18px;
   }
 }

 /* 确保在横屏设备上也能正确显示 */
 @media (orientation: landscape) and (max-height: 500px) {
   .hero-section {
     height: 100vh;
   }

   .hero-wrap {
     height: 100vh;
   }

   .hero-img {
     height: 100vh;
   }
 }

 /* Google浏览器兼容性修复 */
 @media screen and (-webkit-min-device-pixel-ratio: 0) {

   .hero-video,
   .hero-placeholder {
     width: 100% !important;
     height: 100% !important;
     display: block !important;
     object-fit: cover !important;
   }

   .hero-section,
   .hero-wrap,
   .hero-img {
     width: 100% !important;
     height: calc(100vh + var(--effective-nav-h)) !important;
     min-height: 600px !important;
   }
 }

 /* 关于天用部分响应式优化 */
 /* @media (max-width: 800px) {
   .about-grid {
     padding: 1.5rem;
     min-height: 25rem;
   }

   .about-card {
     width: 85%;
     padding: 3%;
     padding-right: 45%;
     font-size: 1.2rem;
   }

   .about-video {
     right: 1.5rem;
     top: -8rem;
     width: 45%;
   }
 } */

 @media (max-width: 768px) {
   .about-grid {
     padding: 1rem;
     min-height: 20rem;
     flex-direction: column;
     gap: 1rem;
   }

   .about-card {
     width: 100%;
     padding: 1rem;
     padding-right: 1rem;
     position: relative;
     bottom: auto;
     left: auto;
     font-size: 1.1rem;
     margin-bottom: 1rem;
   }

   .about-video {
     position: relative;
     right: auto;
     top: auto;
     width: 100%;
     margin-top: 1rem;
   }

   .about-title {
     margin-bottom: 2rem;
     font-size: 1.8rem;
   }
 }

 @media (max-width: 480px) {
   .about-grid {
     padding: 0.75rem;
     min-height: 18rem;
   }

   .about-card {
     padding: 0.75rem;
     font-size: 1rem;
     line-height: 1.5;
   }

   .about-video {
     margin-top: 0.75rem;
   }

   .about-title {
     margin-bottom: 1.5rem;
     font-size: 1.6rem;
     gap: 0.5rem;
   }

   .about-title i {
     width: 0.3rem;
     height: 2rem;
   }
 }

 .hero-content {
   position: absolute;
   inset: 0;
   display: flex;
   align-items: center;
   justify-content: center;
   z-index: 3;
 }

 .hero-institutions {
   background: rgba(255, 255, 255, .95);
   border-radius: 16px;
   padding: 21.33px 32px;
   text-align: center;
   box-shadow: var(--shadow);
   backdrop-filter: blur(10px);
   -webkit-backdrop-filter: blur(10px);
 }

 .titleBand {
   padding-block: 32px !important;
 }

 .titleBandTop {
   padding-top: 10px !important;
 }

 .hero-institutions h2 {
   margin: 0 0 16px;
   color: var(--gold-deep);
   font-size: var(--fz-18);
   font-weight: 500
 }

 .institution-list {
   display: flex;
   gap: 21.33px;
   flex-wrap: wrap;
   justify-content: center;
   font-size: var(--fz-14);
   color: var(--muted)
 }

 /* ========== 中心标题段落 ========== */
 .section-center {
   text-align: center;
   padding: 3.33rem 0 2rem
 }

 .section-center .sub {
   font-size: 2.93rem;
   font-weight: 600;
   letter-spacing: .5px;
   padding-bottom: 1.67rem;
   padding-top: 1rem;
 }

 /* 设计稿：标题64/96px、700、颜色#E3C78D */
 .h-hero-title {
   font-size: 2.93rem;
   line-height: 8rem;
   font-weight: 600;
   color: #E3C78D;
 }

 .section-center p {
   margin: 0.83rem 0 0;
   color: #353333;
   max-width: 100%;
   width: 100%;
   font-size: 1.6rem;
   text-align: left;
   padding: 0 7rem;
 }

 /* ========== KPI ========== */
 .kpi-wrap {
   background-color: #fff;
   background-image: var(--grad-kpi-figma);
   border-radius: 1.33rem;
   padding: 3.33rem 2rem;
   transition: all .3s ease;
   cursor: pointer
 }

 .kpi-grid {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   gap: 0
 }

 .kpi {
   background: transparent;
   border: none;
   text-align: center;
   padding: 0.5rem 0.67rem
 }

 /* 设计稿：Nunito 800 96px，颜色#E3C78D */
 .kpi b,
 .kpi .counter {
   display: block;
   font-size: 4rem;
   line-height: 8.83rem;
   color: var(--fig-gold);
   font-weight: 800;
   transition: color .3s ease
 }

 .kpi span {
   display: block;
   color: #000;
   font-size: 1.6rem;
   margin-top: 0.5rem;
   transition: color .3s ease
 }

 .kpi-wrap:hover {
   background: linear-gradient(180deg, rgba(228, 200, 142, 1), rgba(236, 217, 178, 0.1));
 }

 .kpi-wrap:hover .kpi b,
 .kpi-wrap:hover .kpi .counter {
   color: #FFFFFF
 }

 /* ========== 业务领域 ========== */
 .biz-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 1rem;
   padding: 0 4rem;
   box-sizing: border-box;
   row-gap: 4rem;
 }

 .biz-card {
   position: relative;
   border-radius: 0.6rem;
   overflow: hidden;
   background: #eaeaea;
   border: 1px solid var(--line);
   box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
   transition: box-shadow 0.3s ease, transform 0.3s ease;
 }

 .biz-card .ph {
   aspect-ratio: 16/10;
   background: linear-gradient(135deg, #f3f3f3, #e6e6e6);
   width: 100%;
   height: 100%;
   object-fit: cover;
   transform: scale(1);
   transition: transform 1s ease;
   will-change: transform
 }

 .biz-card:hover .ph {
   transform: scale(1.12)
 }

 .biz-tag {
   position: absolute;
   left: 0;
   top: 0;
   padding: 0.67rem 1rem;
   background: transparent;
   color: var(--fig-gold);
   font-weight: 510;
   font-size: 2.13rem;
   z-index: 2;
   transition: all .6s cubic-bezier(0.4, 0, 0.2, 1);
   border-radius: 0.5rem;
   transform: scale(1)
 }

 .biz-info {
   position: absolute;
   inset: 0;
   padding: 1rem 1.5rem;
   z-index: 2;
   pointer-events: none;
   display: flex;
   flex-direction: column;
   gap: 0.67rem;
   transition: gap 0.3s ease
 }

 .biz-info .biz-tag {
   position: relative;
   left: auto;
   top: auto
 }

 .biz-desc {
   color: #666;
   font-size: 1.33rem;
   line-height: 1.6;
   max-width: 100%;
   opacity: 0;
   transform: translateY(3.33rem);
   max-height: 0;
   overflow: hidden;
   transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
   visibility: hidden;
   filter: blur(0.25rem);
   word-wrap: break-word;
   word-break: break-word;
 }

 /* 业务卡片：悬停半透明遮罩 + 文案变色并右移 */
 .biz-card::after {
   content: "";
   position: absolute;
   inset: 0;
   background: rgba(0, 0, 0, .35);
   opacity: 0;
   transition: opacity 0.3s ease;
   pointer-events: none;
   z-index: 1
 }

 .biz-card:hover::after {
   opacity: 1
 }

 .biz-card .biz-tag {
   transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
   will-change: color, transform, background
 }

 .biz-card:hover .biz-tag {
   transform: translate(0.67rem, -0.5rem) scale(1.1);
   margin-bottom: 0 !important;
   padding-bottom: 0 !important;
 }

 .biz-card:hover {
   box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
   transform: translateY(-2px);
 }

 .biz-card:hover .biz-info {
   gap: 0 !important
 }

 .biz-card:hover .biz-desc {
   padding-left: 0.2rem;
   opacity: 1;
   transform: translateY(0);
   max-height: 11.67rem;
   color: #fff;
   visibility: visible;
   filter: blur(0);
   word-wrap: break-word;
   word-break: break-word;
   margin-top: 0 !important;
   padding-top: 0 !important;
 }

 @media (prefers-reduced-motion: reduce) {
   .biz-card .biz-tag {
     transition: none
   }

   .biz-card .ph {
     transition: none
   }
 }

 /* ========== 关于 ========== */
 .about-title {
   display: flex;
   align-items: center;
   gap: 1.11rem;
   margin: 1.11rem 0 1.56rem;
   font-weight: 600;
   font-size: 3rem;
   color: var(--fig-gold);
   margin-bottom: 6.23rem;
 }

 .about-title i {
   width: 0.71rem;
   height: 4.27rem;
   background: var(--fig-gold);
   border-radius: 0.23rem
 }

 .about-grid {
   position: relative;
   min-height: 26.67rem
 }

 .about-card {
   width: 90%;
   padding: 3.67rem;
   padding-right: 50%;
   padding-left: 100px;
   font-size: 1.87rem;
   line-height: 1.6;
   color: #000000;
   text-align: left;
   position: relative;
   bottom: 0.176rem;
   left: 0px;
   overflow: hidden;
   background-color: #E3C78D;
 }








 .about-video {
   position: absolute;
   right: 2rem;
   top: -10rem;
   width: 60rem;
   aspect-ratio: 16/9;
   overflow: hidden;
   background: #f5f5f5;
 }

 .video-container {
   position: relative;
   width: 100%;
   height: 100%
 }

 .video-container video {
   width: 100%;
   height: 100%;
   object-fit: cover
 }

 .video-poster {
   position: absolute;
   inset: 0;
   width: 100%;
   height: 100%;
   object-fit: cover;
   z-index: 1;
   transition: opacity 0.5s ease;
   pointer-events: none;
   background: #000
 }

 .video-overlay {
   position: absolute;
   inset: 0;
   display: flex;
   align-items: center;
   justify-content: center;
   background: rgba(0, 0, 0, .2);
   transition: opacity .3s ease;
   z-index: 2
 }

 .play-btn {
   width: 6.67rem;
   height: 6.67rem;
   border-radius: 50%;
   background: rgba(255, 255, 255, .95);
   border: none;
   cursor: pointer;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--fig-gold);
   transition: all .3s ease;
   box-shadow: 0 0.33rem 1rem rgba(0, 0, 0, .15);
   position: relative;
   z-index: 3
 }

 .play-btn:hover {
   background: rgba(255, 255, 255, 1);
   transform: scale(1.05);
   box-shadow: 0 0.5rem 1.67rem rgba(0, 0, 0, .2)
 }

 .play-btn.playing {
   opacity: 0;
   pointer-events: none
 }

.video-overlay.hidden {
  opacity: 0;
  pointer-events: none
}

/* ========== 关于天用视频音量控制 ========== */
.volume-control {
  position: absolute;
  top: 20px;
  right: 20px;
  display: flex;
  align-items: center;
  gap: 10px;
  background: rgba(0, 0, 0, 0.7);
  padding: 8px 12px;
  border-radius: 25px;
  backdrop-filter: blur(10px);
  z-index: 10;
}

.volume-btn {
  background: none;
  border: none;
  color: #fff;
  cursor: pointer;
  padding: 4px;
  border-radius: 50%;
  transition: background-color 0.2s ease;
}

.volume-btn:hover {
  background: rgba(255, 255, 255, 0.1);
}

.volume-slider {
  width: 80px;
  height: 4px;
  background: rgba(255, 255, 255, 0.3);
  border-radius: 2px;
  outline: none;
  cursor: pointer;
}

.volume-slider::-webkit-slider-thumb {
  appearance: none;
  width: 16px;
  height: 16px;
  background: #E3C78D;
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.2s ease;
}

.volume-slider::-moz-range-thumb {
  width: 16px;
  height: 16px;
  background: #E3C78D;
  border-radius: 50%;
  border: none;
  cursor: pointer;
  transition: all 0.2s ease;
}

 /* ========== 地图 ========== */
.map-title {
  text-align: center;
  color: #E3C78D;
  font-weight: 600;
  font-size: 2.4rem;
  padding-bottom: 8px;
}

.map-card {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 12px
}

.map {
  width: 100%;
  aspect-ratio: 16/8;
  border-radius: 10px;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, .04) 1px, transparent 1px) 0 0/53.33px 53.33px,
    linear-gradient(180deg, rgba(0, 0, 0, .04) 1px, transparent 1px) 0 0/53.33px 53.33px
}

.map-note {
  margin-top: 2px;
  font-size: var(--fz-12);
  color: #8d8d8d
}

 /* ========== 解决方式 ========== */
 .sol-subtitle-bar {
   display: inline-block;
   border-radius: 26.67px;
   padding: 10.67px 13.33px;
   padding-top: 20px;
   margin: 0 auto
 }

 .sol-subtitle-bar span {
   color: #666;
   font-size: 2.13rem;
   font-weight: 600;
   white-space: nowrap
 }

 .sol-options {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 25%;
   padding-bottom: 13.33px
 }

 .sol-option-img {
   height: 5.67rem;
   width: 5.67rem;
   object-fit: contain;
 }

 .sol-or-img {
   height: 3.67rem;
   width: 3.67rem;
   object-fit: contain;
 }

 .sol-grid {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 133.33px;
 }

 .sol-card {
   position: relative;
   border-radius: 2.67rem;
   overflow: hidden;
   background: #eaeaea;
   border: 1px solid var(--line);
   transition: all 0.3s ease
 }

 .sol-card .ph {
   min-width: 100%;
   aspect-ratio: 16/9;
   background: linear-gradient(135deg, #f3f3f3, #e7e7e7);
   transition: transform 0.3s ease
 }

 .sol-card:hover .ph {
   transform: scale(1.05)
 }

 .sol-overlay {
   position: absolute;
   bottom: 0;
   left: 0;
   right: 0;
   background: linear-gradient(transparent, rgba(0, 0, 0, 0.8));
   display: flex;
   flex-direction: column;
   justify-content: flex-end;
   padding: 0 40px;
   padding-bottom: 30px;
   opacity: 1
 }

 .sol-overlay h3 {
   color: #fff;
   font-size: var(--fz-24);
   font-weight: 500;
   transition: transform .5s ease
 }

 .sol-overlay ul {
   list-style: none;
   padding: 0;
   margin: 0;
   transition: transform .5s ease
 }

 .sol-card:hover .sol-overlay h3 {
   transform: translateY(-21.33px)
 }

 .sol-card:hover .sol-overlay ul {
   transform: translateY(-21.33px)
 }

 .sol-overlay h3 {
   color: #fff;
   font-size: 34px;
   font-weight: 600;
   margin-bottom: 0
 }

 .sol-overlay ul {
   list-style: none;
   padding: 0;
   margin: 0
 }

 .sol-overlay li {
   font-size: 1.6rem;
   line-height: 1.2;
   color: #fff;
   margin-bottom: 10.67px;
   font-weight: 500;
 }

 .sol-card .mask {
   position: absolute;
   inset: auto 0 0 0;
   padding: 18.67px;
   color: #fff;
   background: linear-gradient(180deg, transparent 30%, rgba(0, 0, 0, .65))
 }

 .sol-card .mask b {
   font-size: var(--fz-20)
 }

 .sol-separator {
   text-align: center;
   font-size: var(--fz-18);
   font-weight: 500;
   color: var(--gold-deep);
   margin: 26.67px 0
 }

 /* ========== 荣誉 ========== */
 .honor-title {
   text-align: center;
   color: #B79044;
   font-weight: 600;
   font-size: 2.67rem;
   margin-bottom: 13.33px;
   /* position: absolute;
      top: 20px;
      width: 100%; */
 }

 .honor-sub {
   text-align: center;
   margin-top: 5.33px;
   font-size: 2.67rem;
   margin-bottom: 26.67px
 }

 .honor-container {
   width: 1364px;
   max-width: 1364px;
   overflow: hidden;
   position: relative;
   z-index: 2;
   height: 0rem;
   min-height: 610px;
   margin: 0 auto;
   padding: 0;
   box-sizing: border-box;
   opacity: 0;
   transform: translateY(30px);
   transition: opacity 1s ease, transform 1s ease;
 }

 .honor-container.show {
   opacity: 1;
   transform: translateY(0);
 }

 .honor-grid {
   display: flex;
   gap: 40px;
   width: fit-content;
   justify-content: flex-start
 }

 .honor {
   background: transparent;
   border: none;
   padding: 0;
   text-align: center;
   position: relative;
   z-index: 2;
   box-shadow: none;
   display: flex;
   flex-direction: column;
   align-items: center;
   overflow: visible;
   width: 21.33rem;
   flex-shrink: 0;
   opacity: 0;
   transform: scale(0.9) translateY(30px)
 }

 .honor.show {
   opacity: 1;
   transform: scale(1) translateY(0);
   animation: honorAppear 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
   position: relative;
 }

 .honor.show::before {
   content: '';
   position: absolute;
   top: -10px;
   left: -10px;
   right: -10px;
   bottom: -10px;
   background: linear-gradient(45deg, transparent, rgba(227, 199, 141, 0.05), transparent);
   border-radius: 12px;
   z-index: -1;
   animation: honorGlow 0.75s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
 }

 @keyframes honorGlow {
   0% {
     opacity: 0;
     transform: scale(0.9);
   }

   50% {
     opacity: 1;
     transform: scale(1.05);
   }

   100% {
     opacity: 0;
     transform: scale(1);
   }
 }

 @keyframes honorAppear {
   0% {
     opacity: 0;
     transform: scale(0.9) translateY(30px);
   }

   100% {
     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;
   border: 4px solid #fff;
   opacity: 0;
   transform: scale(0.95) rotateY(-10deg);
   transition: opacity 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
 }

 .honor.show .ph {
   opacity: 1;
   transform: scale(1) rotateY(0deg);
 }

 @keyframes imageAppear {
   0% {
     opacity: 0;
     transform: scale(0.9) rotateY(-15deg);
   }

   100% {
     opacity: 1;
     transform: scale(1) rotateY(0deg);
   }
 }

 .honor .ph-reflection {
   width: 100%;
   object-fit: cover;
   display: block;
   border: none;
   background: transparent;
   /* 修复倒影显示问题 - 覆盖全局图片渲染设置 */
   transform: scaleY(-0.3) scaleX(0.95) perspective(2260px) rotateX(0deg) !important;
   opacity: 0;
   filter: blur(2px);
   transform-origin: top center !important;
   z-index: 1;
   margin-top: 143px;
   mask-image: linear-gradient(to top, rgba(0, 0, 0, 0.5) 0%, 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.8);
   transition: opacity 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
   /* 确保倒影不受全局图片渲染影响 */
   -webkit-backface-visibility: visible !important;
   backface-visibility: visible !important;
   -webkit-perspective: none !important;
   perspective: none !important;
   will-change: opacity, transform !important;
 }

 .honor.show .ph-reflection {
   opacity: 0.8;
 }

 @keyframes reflectionAppear {
   0% {
     opacity: 0;
     transform: scaleY(-0.3) scaleX(0.95) perspective(2260px) rotateX(0deg) translateY(20px) !important;
   }

   100% {
     opacity: 0.8;
     transform: scaleY(-0.3) scaleX(0.95) perspective(2260px) rotateX(0deg) translateY(0) !important;
   }
 }

 .image-container {
   position: relative;
   width: 100%;
   overflow: hidden;
   transform: translateZ(0) scale(1);
   transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
 }

 .honor.show .image-container {
   transform: translateZ(0) scale(1.02);
 }

 @keyframes containerShadow {
   0% {
     box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
     transform: translateZ(0) scale(0.95);
   }

   50% {
     box-shadow: 0 8px 30px rgba(0, 0, 0, 0.2);
     transform: translateZ(0) scale(1.02);
   }

   100% {
     box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
     transform: translateZ(0) scale(1);
   }
 }

 .honor-overlay {
   border-radius: 4px 0 0 4px;
   position: absolute;
   bottom: 0;
   left: 0;
   right: 0;
   background: rgba(0, 0, 0, 0.5);
   padding: 16px;
   transform: translateY(100%);
   transition: transform .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: 1.2rem;
   color: #fff;
   margin-bottom: 8px;
   font-weight: 400;
   text-align: left;
 }

 .case-highlight {
   font-size: 1.2rem;
   color: #fff;
   line-height: 1.4;
   text-align: left;
 }

 .honor:hover .honor-overlay {
   transform: translateY(0);
   opacity: 1;
   pointer-events: auto;
   transition: transform .4s cubic-bezier(0.4, 0, 0.2, 1), opacity .4s cubic-bezier(0.4, 0, 0.2, 1)
 }

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

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

 .band-y-bg {
   padding-block: clamp(8rem, 8vw, 7rem) 0 !important;
   height: 100%;
   background: var(--bg) url(../../assets/honor/bg.jpg) no-repeat center center;
   background-size: cover;
   min-height: 465px;
   display: flex;
   align-items: center;
 }

 .honor-counter {
   color: var(--fig-gold);
   font-weight: 800;
   font-size: 84px;
   transition: color .3s ease
 }

 .honor-grid-bg {
   padding: 40px 0 100px;
   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-grid-bg::after{content:''; position:absolute; bottom:0; left:0; right:0; height:120px; background: url(../../assets/honor/bg2.png) no-repeat center center; background-size: cover; transform: perspective(500px) rotateX(60deg) translateY(60px); z-index:0; border-radius:12px; box-shadow: inset 0 10px 20px rgba(235,180,69,0.3)} */
 /* .honor-grid-bg::before{content:''; position:absolute; bottom:0; left:0; right:0; height:120px; background:linear-gradient(180deg, transparent 0%, rgba(235,180,69,0.1) 30%, rgba(235,180,69,0.2) 60%, rgba(235,180,69,0.3) 100%); transform: perspective(500px) rotateX(60deg) translateY(60px); z-index:0; border-radius:12px; pointer-events:none} */
 /* .honor-grid-bg::before{content:''; position:absolute; top:0; left:0; right:0; bottom:0; background:linear-gradient(180deg, transparent 0%, rgba(235,180,69,0.05) 20%, rgba(235,180,69,0.1) 40%, rgba(235,180,69,0.15) 60%, rgba(235,180,69,0.2) 80%, rgba(235,180,69,0.25) 100%); z-index:1; pointer-events:none} */
 .bg-container {
   position: relative;
 }

 .honor-area.container {
   padding: 0;
   max-width: 1364px;
   margin: 0 auto;
 }

 /* ========== 讲座 ========== */
 .lecture {
   padding: 6.33rem 0;
   background: #fbfbfb url(../../assets/lecture/bg.png) no-repeat 1.67rem bottom;
   background-size: 18%;
   padding-top: 1rem;
 }

 .lecture .wrap {
   display: flex;
   flex-direction: column;
   gap: 0
 }

 /* 讲座面板 */
 .lecture-panel {
   display: flex;
   gap: 10.67rem;
   width: 100%;
   margin: 0 auto;
   border-radius: 1.67rem;
   /* max-width: 88%; */
   /* padding: 5.33rem; */
   min-height: 50rem;
   margin-left: 8rem;
   padding-top: 2.5rem;
 }

 /* 标题 */
 .lecture-title i {
   width: 0.38rem;
   height: 3.36rem;
   background: #E3C78D;
   padding-top: 3rem;
 }

 .lecture-title {
   display: flex;
   align-items: center;
   gap: 1rem;
   margin: 1.48rem 0 2.08rem;
   font-weight: 600;
   font-size: 2.41rem;
   color: var(--fig-gold);
   position: absolute;
   top: 0;
 }

 .about-title i {
   width: 0.53rem;
   height: 3.2rem;
   background: var(--fig-gold);
 }

 .lecture-bg .container {
   padding-top: 0rem;
 }

 /* 左侧内容 */
 .lecture-left {
   position: relative;
   border-radius: 1.33rem;
   min-height: 41.67rem;
   flex: 1;
   text-align: center;
   overflow: hidden
 }

 .lecture-list {
   padding-top: 6.5rem;
   display: flex;
   flex-direction: column;
   gap: 1.3rem;
   align-items: center;
   position: relative;
   min-height: 100%
 }

 /* 统一列表项宽度，确保对齐 */
 .lecture-list-item {
   font-size: 1.87rem;
   line-height: 1.6;
   color: #767676;
   opacity: 0;
   transform: translateY(300px) scale(1.6);
   transition: all 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
   position: relative;
   z-index: 2;
   background: #fff;
   padding: 1rem 1.67rem;
   border-radius: 1rem;
   box-shadow: 0 0.17rem 0.67rem rgba(0, 0, 0, 0.1);
   width: 33.33rem;
   min-height: 4.5rem;
   text-align: center;
   display: flex;
   align-items: center;
   justify-content: center;
   box-sizing: border-box;
   display: inline-flex;
   align-items: center !important;
   justify-content: center;
   padding: 8px 16px;
   background: #fff;
 }

 .lecture-list-item.show {
   opacity: 1;
   transform: translateY(0) scale(1) !important
 }

 .lecture-list-item .highlight {
   color: var(--fig-gold);
   font-weight: 700;
   font-size: 2.93rem;
   line-height: 0.5;
 }

 .lecture-list-item .highlight+span {
   color: var(--fig-gold);
   font-weight: 500;
   font-size: 2.93rem;
   line-height: 0.5;
 }

 .lecture-list-item:has(.highlight) {
   align-items: flex-end
 }

 /* 为包含数字的列表项预留空间，防止宽度闪烁 */
 .lecture-list-item:has(.lecture-counter) {
   min-width: 33.33rem;
   width: 33.33rem;
   justify-content: center;
 }

 /* 为不同位数的数字预留空间 */
 .lecture-list-item:has([data-target="150"]) .lecture-counter {
   min-width: 3ch;
   display: inline-block;
 }

 .lecture-list-item:has([data-target="15000"]) .lecture-counter {
   min-width: 5ch;
   display: inline-block;
 }

 .lecture-list-item:has([data-target="268"]) .lecture-counter {
   min-width: 3ch;
   display: inline-block;
 }

 /* 背景数字 */
 .bg-number {
   position: absolute;
   bottom: 1.67rem;
   left: 1.67rem;
   font-size: 4rem;
   font-weight: 900;
   color: rgba(255, 165, 0, 0.1);
   z-index: 1;
   font-family: 'Source Han Sans CN', 'Arial', sans-serif
 }

 /* 右侧轮播区域 */
 .lecture-right {
   padding-top: 0.83rem;
   display: flex;
   flex-direction: column;
   align-items: center;
   gap: 1.5rem;
   flex: 1.5;
   justify-content: flex-end;
   padding-bottom: 1.67rem;
   width: 100%;
   padding-right: 5%;
 }

 .lecture-carousel {
   position: relative;
   width: 95%;
   max-width: 55.41rem
 }

 .lecture-swiper {
   width: 100%;
   height: 30.5rem;
   border-radius: 1rem;
   overflow: hidden
 }

 /* 演讲者图片 */
 .speaker-image {
   width: 100%;
   height: 30.5rem;
   overflow: hidden;
   border-radius: 1rem
 }

 .speaker-image img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   display: block;
   border-radius: 1rem;
 }

 /* 控制区域 */
 .lecture-controls {
   display: flex;
   flex-direction: column;
   gap: 2.08rem;
   width: 90%;
   align-items: center;
 }

 /* 讲座轮播图控制点 - 外部显示 */
 .lecture-pagination {
   display: flex !important;
   justify-content: center;
   gap: 0.67rem;
   margin-top: 1.67rem;
   z-index: 10
 }

 .lecture-pagination .swiper-pagination-bullet {
   width: 0.83rem;
   height: 0.83rem;
   background: #ddd !important;
   opacity: 1 !important;
   border-radius: 50%;
   transition: all 0.3s ease;
   margin: 0 !important;
   display: block !important
 }

 .lecture-pagination .swiper-pagination-bullet-active {
   background: #E3C78D !important;
   width: 1.67rem;
   border-radius: 0.83rem
 }

 /* 天用著作轮播图控制点 */
 .books-pagination {
   display: flex !important;
   justify-content: center;
   gap: 0.67rem;
   margin-top: 1.67rem;
   z-index: 10
 }

 .books-pagination .swiper-pagination-bullet {
   width: 0.83rem;
   height: 0.83rem;
   background: #ddd !important;
   opacity: 1 !important;
   border-radius: 50%;
   transition: all 0.3s ease;
   margin: 0 !important;
   display: block !important
 }

 .books-pagination .swiper-pagination-bullet-active {
   background: #E3C78D !important;
   width: 1.67rem;
   border-radius: 0.83rem
 }

 /* 案例轮播图控制点 */
 .cases-pagination {
   display: flex !important;
   justify-content: center;
   gap: 0.67rem;
   margin-top: 1.67rem;
   z-index: 10
 }

 .cases-pagination .swiper-pagination-bullet {
   width: 0.83rem;
   height: 0.83rem;
   background: #ddd !important;
   opacity: 1 !important;
   border-radius: 50%;
   transition: all 0.3s ease;
   margin: 0 !important;
   display: block !important
 }

 .cases-pagination .swiper-pagination-bullet-active {
   background: #E3C78D !important;
   width: 1.67rem;
   border-radius: 0.83rem
 }

 /* 案例轮播图独立左右箭头控制器 */
 .cases-nav-prev,
 .cases-nav-next {
   position: absolute;
   top: 46%;
   transform: translateY(-50%);
   width: 8.33rem;
   height: 8.33rem;
   /* background: rgba(255, 255, 255, 0.95); */
   /* border: 2px solid #E3C78D; */
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   cursor: pointer;
   transition: all 0.3s ease;
   z-index: 999;
   /* box-shadow: 0 0.33rem 1rem rgba(0, 0, 0, 0.15); */
   pointer-events: auto;
 }

 .cases-nav-prev:hover,
 .cases-nav-next:hover {

   transform: translateY(-50%) scale(1.1);
 }

 .cases-nav-prev {
   left: -1rem;
 }

 .cases-nav-next {
   right: -1rem;
 }

 .cases-nav-prev {
   background-image: url('../../assets/cases/left.png');
   background-size: 60%;
   background-repeat: no-repeat;
   background-position: center;
 }

 .cases-nav-next {
   background-image: url('../../assets/cases/right.png');
   background-size: 60%;
   background-repeat: no-repeat;
   background-position: center;
 }

 /* .cases-nav-prev:hover,
    .cases-nav-next:hover {
      background-color: #E3C78D;
      transform: translateY(-50%) scale(1.1);
      border-color: #E3C78D;
    } */

 /* 报名按钮 */
 .register-btn {
   background: var(--fig-gold);
   border: none;
   color: #fff;
   padding: 0.5rem 2rem;
   border-radius: 0.67rem;
   font-size: 1.6rem;
   font-weight: 600;
   cursor: pointer;
   transition: all 0.3s ease;
   align-self: flex-end;
   margin-right: 0;
   position: relative;
   padding-right: 3.5rem;
 }

 .register-btn::after {
   content: '';
   position: absolute;
   right: 1.5rem;
   top: 50%;
   transform: translateY(-50%);
   width: 1.2rem;
   height: 1.2rem;
   background-image: url('../../assets/lecture/Subtract.png');
   background-size: contain;
   background-repeat: no-repeat;
   background-position: center;
 }

 .register-btn:hover {
   background: #CC9522;
   transform: translateY(-0.17rem)
 }

 /* 入场动画 */
 .fx-drop {
   opacity: 0;
   transform: translateY(-3.125rem);
   transition: all 0.8s ease
 }

 .fx-drop.show {
   opacity: 1;
   transform: translateY(0)
 }

 .fx-slide-left {
   opacity: 0;
   transform: translateY(3.125rem);
   transition: all 0.8s ease 0.3s
 }

 .fx-slide-left.show {
   opacity: 1;
   transform: translateY(0)
 }

 .fx-slide-right {
   opacity: 0;
   transform: translateX(3.125rem);
   transition: all 0.8s ease 0.6s
 }

 .fx-slide-right.show {
   opacity: 1;
   transform: translateX(0)
 }

 @keyframes fadeIn {
   from {
     opacity: 0
   }

   to {
     opacity: 1
   }
 }

 /* 讲座部分响应式优化 */

 /* ========== 团队 ========== */
 .team-title {
   text-align: center;
   color: #B79044;
   font-weight: 600;
   font-size: 3rem;
   padding-top: 2rem;
 }

 .team-rail {
   position: relative;
   background: var(--white);
   border: 1px solid var(--line);
   border-radius: 12px;
   padding: 34px;
   overflow: hidden
 }

 .rail {
   display: flex;
   gap: 20px;
   overflow: auto;
   scroll-snap-type: x mandatory;
   padding-bottom: 6px
 }

 .member {
   min-width: 220px;
   scroll-snap-align: start;
   background: #fff;
   border: 1px solid var(--line);
   border-radius: 12px;
   padding: 32px
 }

 .avatar {
   aspect-ratio: 3/4;
   background: #eee;
   border-radius: 10px;
   width: 100%;
   height: 100%;
   object-fit: cover
 }

 .rail-btn {
   position: absolute;
   top: 50%;
   transform: translateY(-50%);
   width: 38px;
   height: 38px;
   border-radius: 50%;
   border: 1px solid var(--line);
   background: rgba(255, 255, 255, .95);
   display: grid;
   place-items: center
 }

 .rail-btn.prev {
   left: 6px
 }

 .rail-btn.next {
   right: 6px
 }

 /* ========== 著作 ========== */
 .books-title {
   display: flex;
   align-items: center;
   gap: 13.33px;
   font-weight: 600;
   font-size: 2.67rem;
   margin: 0px 0 53.33px;
   margin-bottom: 26.67px;
   height: 2.67rem !important;
   position: absolute;
   top: 30px;
 }

 .books-title i {
   margin-top: 5rem;
   width: 0.38rem;
   height: 3.2rem;
   background: #E3C78D;
 }

 .book-panel {
   background: var(--white);
   border: 1px solid var(--line);
   border-radius: 16px;
   padding: 38.67px
 }

 .book-main {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 32px;
   align-items: center
 }

 .book-featured {
   background: #fbfbfb;
   border: 1px solid var(--line);
   border-radius: 13.33px;
   padding: 41.33px
 }

 .book-featured .cover {
   aspect-ratio: 3/4;
   background: #eee;
   border-radius: 8px;
   margin-bottom: 16px
 }

 .book-featured h3 {
   margin: 0;
   font-size: var(--fz-16);
   color: var(--gold-deep)
 }

 .book-grid {
   display: grid;
   grid-template-columns: repeat(5, 1fr);
   gap: 21.33px
 }

 .book {
   background: #fbfbfb;
   border: 1px solid var(--line);
   border-radius: 13.33px;
   padding: 33.33px
 }

 .book .cover {
   aspect-ratio: 3/4;
   background: #eee;
   border-radius: 8px;
   width: 100%;
   height: 100%;
   object-fit: cover
 }

 .books-title .title {
   padding-top: 5rem;
 }

 /* ========== 天用著作 ========== */
 .books-bg {
   background: url(../../assets/books/bg.jpg) no-repeat center center !important;
   /* background-size: cover!important; */
   background-position: center center !important;
   height: 1080px;
   padding: 100px 0 80px 0 !important;
   position: relative;
   overflow: hidden;
 }

 .books-panel {
   display: flex;
   flex-direction: column;
   /* gap: 50px; */
   max-width: 100%;
   position: relative;
   margin-top: 30px;
 }

 .books-subtitle {
   font-size: 2.13rem;
   color: var(--muted);
   font-weight: 400;
   text-align: center;
   margin: 0;
   text-align: left;
   padding-left: 20px;
   padding-top: 0;
   color: #000000;
   position: absolute;
   top: 1.5rem;
 }

 .books-content {
   display: flex;
   gap: 70px;
   align-items: flex-start;
   max-width: 100%;
   width: 100%;
   margin-top: 4.5rem;
 }

 /* 左侧轮播图 */
 .books-carousel {
   flex: 1;
   max-width: 40%;
   padding-top: 14.5rem;
   position: relative;
 }

 .books-swiper {
   width: 100%;
   height: 533px;
   border-radius: 16px;
   overflow: hidden;
 }

 .book-slide {
   display: flex;
   height: 100%;
   align-items: flex-end;
 }

 .book-image {
   flex: 1;
   display: flex;
   align-items: center;
   justify-content: center;
   padding-bottom: 10px;
   filter: drop-shadow(0 4px 5.67px rgba(0, 0, 0, 0.35));
 }

 .book-image img {
   width: 15rem !important;
   height: auto !important;
   object-fit: contain !important;
   border-radius: 10.67px;
   image-rendering: auto;
 }

 .book-content {
   flex: 1.5;
   padding: 4rem 13.33px;
   display: flex;
   flex-direction: column;
   justify-content: flex-end;
   align-items: center;
 }

 .book-title {
   font-weight: 700;
   color: #E3C78D;
   margin: 0 0 26.67px 0;
   line-height: 1.6;
   text-align: center;
   text-shadow: 0 2.67px 5.33px rgba(0, 0, 0, 0.1);
   padding-top: 2rem;
 }

 .book-description {
   line-height: 1.6;
   color: #000;
   margin: 0;
   display: -webkit-box;
   line-clamp: 4;
   -webkit-line-clamp: 4;
   -webkit-box-orient: vertical;
   overflow: hidden;
   text-overflow: ellipsis;
   height: 6.67rem;
   text-shadow: 0 1.33px 4px rgba(0, 0, 0, 0.1);
 }

 /* 右侧书籍展示 */
 .books-grid {
   padding-top: 0rem !important;
   flex: 1;
   display: flex;
   flex-direction: column;
   gap: 35px;
   max-width: 55%;
 }

 .books-grid-row {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   gap: 18px;
   align-items: start;
 }

 .book-item {
   display: flex;
   flex-direction: column;
   align-items: center;
   text-align: center;
   transition: transform 0.3s ease;
   border-radius: 10.67px;
   width: 100%;
   filter: drop-shadow(0 5.33px 10.67px rgba(0, 0, 0, 0.35));
   padding-bottom: 1.33rem;
   min-height: 160px;
   justify-content: flex-start;
 }

 .book-item:hover {
   transform: translateY(-5.33px);
   filter: drop-shadow(0 6.67px 10.67px rgba(0, 0, 0, 0.35));
 }

 .book-item img {
   max-width: 12rem !important;
   height: 14.5rem !important;
   object-fit: cover !important;
   border-radius: 8px;
   margin-bottom: 28px;
   image-rendering: auto;
 }

 /* 图书封面清晰度增强（仅作用于图书模块，不影响全局图片） */
 .books-swiper .book-image img,
 .books-grid .book-item img {
   image-rendering: -webkit-optimize-contrast;
   /* WebKit 提升对比与清晰度 */
   image-rendering: optimizeQuality;
   /* 其他实现的兼容写法（被忽略也无副作用） */
   filter: none !important;
   /* 禁止滤镜引入的二次采样 */
   -webkit-backface-visibility: visible !important;
   backface-visibility: visible !important;
   display:inline-block;
 }

 /* 1920 附近微调书籍区域尺寸与边距，降低放大比例以提升清晰度 */
 @media (min-width: 1600px) and (max-width: 2000px) {
   .books-swiper {
     height: 500px;
   }

   .book-image img {
     width: 14rem !important;
   }

   .book-content {
     padding: 3.5rem 13.33px;
   }

   .books-grid {
     gap: 30px;
   }

   .book-item img {
     max-width: 11rem !important;
   }

   .book-item {
     min-height: 150px;
   }
 }

 .book-title {
   font-size: 1.87rem;
   font-weight: 700;
   color: #E3C78D;
   margin: 0 0 8px 0;
   line-height: 1.3;
   overflow: hidden;
   text-overflow: ellipsis;
   white-space: nowrap;
   width: 100%;
   max-width: 100%;
   padding-bottom: 34.67px;
 }

 .book-description {
   font-size: 1.33rem;
   line-height: 1.6;
   color: var(--muted);
   margin: 0 0 8px 0;
   overflow: hidden;
   text-overflow: ellipsis;
   display: -webkit-box;
   line-clamp: 3;
   -webkit-line-clamp: 3;
   -webkit-box-orient: vertical;
   width: 100%;
   max-width: 100%;
 }

 .book-name {
   font-size: 0.85rem;
   color: #333;
   font-weight: 500;
   overflow: hidden;
   text-overflow: ellipsis;
   white-space: nowrap;
   width: 100%;
   max-width: 100%;
   text-align: center;
   line-height: 1.2;
   padding: 0 3px;
 }

 /* Swiper分页器样式 */
 .books-swiper .swiper-pagination {
   bottom: -53.33px;
   position: relative;
   margin-top: 26.67px;
 }

 .books-swiper .swiper-pagination-bullet {
   width: 10.67px;
   height: 10.67px;
   background: rgba(255, 255, 255, 0.5);
   opacity: 1;
 }

 .books-swiper .swiper-pagination-bullet-active {
   background: var(--gold-deep);
   width: 26.67px;
   border-radius: 5.33px;
 }


 /* ========== 联系表单 ========== */
 .contact-form {
   border-radius: 12px;
   padding: 44px;
   max-width: 600px;
   margin: 0 auto
 }

 .form-grid {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 16px;
   margin-bottom: 16px
 }

 .form-group {
   display: flex;
   flex-direction: column;
   gap: 6px
 }

 .form-group.full {
   grid-column: 1/-1
 }

 .form-group input,
 .form-group textarea {
   padding: 10px 12px;
   border: 1px solid var(--line);
   border-radius: 8px;
   font-size: var(--fz-14)
 }

 .form-group textarea {
   resize: vertical;
   min-height: 80px
 }

 .submit-btn {
   background: var(--gold-deep);
   color: #fff;
   border: none;
   padding: 12px 24px;
   border-radius: 8px;
   font-size: var(--fz-16);
   font-weight: 600;
   cursor: pointer;
   width: 100%
 }

 /* ========== CTA ========== */
 .cta-wrap {
   text-align: center
 }

 .cta-title {
   color: #BF8F3D;
   font-size: var(--fz-28);
   font-weight: 700;
   letter-spacing: .5px;
   margin: 0 0 14px
 }

 .cta-actions {
   display: flex;
   gap: 12px;
   justify-content: center;
   flex-wrap: wrap
 }

 .btn {
   display: inline-block;
   padding: 10px 16px;
   border-radius: 999px;
   border: 1px solid var(--gold-deep);
   font-weight: 600
 }

 .btn.primary {
   background: var(--gold-deep);
   color: #fff;
   border: none
 }

 /* ========== 全宽色带（背景分区统一） ========== */
 .band {
   padding-block: 84px;
 }

 .band.no-border {
   border-top: none
 }

 .band-white {
   background: var(--bg)
 }

 /* .band-grad1{background:linear-gradient(90deg, #f8f8f8 0%, #f8f8f8 2px, transparent 2px, transparent 4px), linear-gradient(180deg, #fafafa, #f5f5f7); background-size: 4px 4px, 100% 100%;padding-top: 120px;} */
 .band-grad1 {
   background: url(../../assets/sol/bg.jpg) no-repeat center center;
   margin-bottom: 40px;
 }

 .band-grad2 {
   background: linear-gradient(180deg, #F9F2E7, #FBF6EE)
 }

 /* ========== 页脚 ========== */


 /* ========== 动画系统重构 ========== */

 /* 基础动画类 */
 .animate {
   opacity: 0;
   transform: translateY(50px);
   transition: opacity 1.8s cubic-bezier(.4, 0, .2, 1), transform 1.8s cubic-bezier(.4, 0, .2, 1);
 }

 .animate.in {
   opacity: 1;
   transform: none;
 }

 /* 动画效果变体 */
 .animate-up {
   transform: translateY(-60px);
 }

 .animate-scale {
   transform: scale(.85);
   transform-origin: 50% 60%;
 }

 .animate-rise {
   transform: translateY(60px);
 }

 .animate-tilt {
   transform: perspective(800px) rotateX(10deg);
   transform-origin: 50% 0;
 }

 .animate-pop {
   transform: scale(.8);
   filter: blur(3px);
 }

 .animate-slide-up {
   transform: translateY(100px);
 }

 .animate-slide-down {
   transform: translateY(-100px);
 }

 .animate-slide-left {
   transform: translateX(-100px);
 }

 .animate-slide-right {
   transform: translateX(100px);
 }

 /* 文字逐行出现动画 */
 .animate-typewriter {
   overflow: hidden;
   /* 保持容器尺寸固定 */
   min-height: 120px;
 }

 .animate-typewriter .about-text {
   display: block;
   opacity: 0;
   color: #7a6a50;
   transform: translateY(20px);
   animation: textReveal 2s ease-out forwards;
   animation-delay: 0.5s;
   animation-play-state: paused;
   /* 保持文字样式 */
   line-height: 1.6;
   font-size: 1.9rem;
   white-space: normal;
 }

 @keyframes textReveal {
   0% {
     opacity: 0;
     transform: translateY(20px);
   }

   100% {
     opacity: 1;
     transform: translateY(0);
   }
 }

 .animate.in.animate-typewriter .about-text {
   animation-play-state: running;
 }

 /* 动画激活状态 */
 .animate.in.animate-up,
 .animate.in.animate-scale,
 .animate.in.animate-rise,
 .animate.in.animate-tilt,
 .animate.in.animate-pop,
 .animate.in.animate-slide-up,
 .animate.in.animate-slide-down,
 .animate.in.animate-slide-left,
 .animate.in.animate-slide-right {
   transform: none;
   filter: none;
 }



 /* 兼容旧类名 */
 .reveal {
   opacity: 0;
   transform: translateY(50px);
   transition: opacity 1.8s cubic-bezier(.4, 0, .2, 1), transform 1.8s cubic-bezier(.4, 0, .2, 1);
 }

 .reveal.in {
   opacity: 1;
   transform: none;
 }

 .fx-up {
   transform: translateY(-60px);
 }

 .fx-scale {
   transform: scale(.85);
   transform-origin: 50% 60%;
 }

 .fx-rise {
   transform: translateY(60px);
 }

 .fx-tilt {
   transform: perspective(800px) rotateX(10deg);
   transform-origin: 50% 0;
 }

 .fx-pop {
   transform: scale(.8);
   filter: blur(3px);
 }

 .fx-slide-up {
   transform: translateY(100px);
 }

 .fx-slide-down {
   transform: translateY(-100px);
 }

 .fx-slide-left {
   transform: translateX(-100px);
 }

 .fx-slide-right {
   transform: translateX(100px);
 }

 /* 旧类名的激活状态 */
 .reveal.in.fx-up,
 .reveal.in.fx-scale,
 .reveal.in.fx-rise,
 .reveal.in.fx-tilt,
 .reveal.in.fx-pop,
 .reveal.in.fx-slide-up,
 .reveal.in.fx-slide-down,
 .reveal.in.fx-slide-left,
 .reveal.in.fx-slide-right {
   opacity: 1;
   transform: none;
   filter: none;
 }

 /* ========== Hero 视频动画 ========== */
 .hero-video {
   opacity: 1;
   transform: scale(1);
   filter: brightness(1);
   transition: all 2s cubic-bezier(0.4, 0, 0.2, 1);
   display: block !important;

 }

 .hero-video.video-loading {
   opacity: 0;
   transform: scale(1.1);
   filter: brightness(0.8);
 }

 .hero-video.video-loaded {
   opacity: 1;
   transform: scale(1);
   filter: brightness(1);
 }

 /* 占位图保持静态显示，不参与动画 */
 .hero-placeholder {
   opacity: 1 !important;
   transform: none !important;
   transition: none !important;
   filter: none !important;
   display: block !important;
   max-width: 100% !important;
   max-height: 100% !important;
 }

 /* ========== Hero 区域样式 ========== */

 .hero-section {
   position: relative;
   overflow: hidden;
   width: 100%;
   height: 100vh;
   min-height: 600px;
 }

 .hero-wrap {
   position: relative;
   z-index: 2;
   width: 100%;
   height: 100%;
 }

 .hero-img {
   position: relative;
   z-index: 3;
   overflow: hidden;
   width: 100%;
   height: 100%;
 }

 /* Hero 内容动画 - 使用动画系统 */
 .hero-wrap.animate {
   transition-delay: 0.3s;
 }

 .hero-img.animate {
   transition-delay: 0.6s;
 }

 /* 视频加载时的遮罩效果 */
 .hero-video::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   background: rgba(0, 0, 0, 0.3);
   opacity: 1;
   transition: opacity 1.5s ease;
   z-index: 1;
   pointer-events: none;
 }

 .hero-video.video-loaded::before {
   opacity: 0;
 }

 /* 视频出现时的光效 */
 .hero-video::after {
   content: '';
   position: absolute;
   top: 0;
   left: -100%;
   width: 100%;
   height: 100%;
   background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
   transition: left 2s ease;
   z-index: 2;
   pointer-events: none;
 }

 .hero-video.video-loaded::after {
   left: 100%;
 }

 /* 视频加载时的脉冲效果 */
 @keyframes videoPulse {
   0% {
     transform: scale(1.1);
   }

   50% {
     transform: scale(1.05);
   }

   100% {
     transform: scale(1.1);
   }
 }

 .hero-video:not(.video-loaded) {
   animation: videoPulse 2s ease-in-out infinite;
 }

 /* 视频出现时的渐变效果 */
 .hero-video {
   background: linear-gradient(45deg, #000, #333);
 }

 .hero-video.video-loaded {
   background: none;
 }

 /* 占位图淡出时的模糊效果 */
 .hero-placeholder.fade-out {
   filter: blur(5px);
   transform: scale(1.05);
 }

 /* 响应式视频动画 */
 /* @media (max-width: 768px) {
   .hero-video {
     transition: all 1.5s cubic-bezier(0.4, 0, 0.2, 1);
   }

   .hero-video.video-loaded {
     transition: all 1.5s cubic-bezier(0.4, 0, 0.2, 1);
   }

   .hero-placeholder {
     transition: opacity 0.8s ease;
   }
 } */

 @media (max-width: 480px) {
   .hero-video {
     transition: all 1s cubic-bezier(0.4, 0, 0.2, 1);
   }

   .hero-video.video-loaded {
     transition: all 1s cubic-bezier(0.4, 0, 0.2, 1);
   }

   .hero-placeholder {
     transition: opacity 0.6s ease;
   }

   /* 移动端hero动画优化 - 使用reveal系统 */
   .hero-wrap {
     transition: opacity 1.5s cubic-bezier(.4, 0, .2, 1), transform 1.5s cubic-bezier(.4, 0, .2, 1);
     transition-delay: 0.2s;
     transform: translateY(50px);
   }

   .hero-section.in .hero-wrap {
     transform: none;
   }

   .hero-img {
     transition: opacity 1.5s cubic-bezier(.4, 0, .2, 1), transform 1.5s cubic-bezier(.4, 0, .2, 1);
     transition-delay: 0.4s;
     transform: translateY(50px);
   }

   .hero-section.in .hero-img {
     transform: none;
   }
 }

 /* ========== 标题样式系统 ========== */

 /* 基础标题样式 */
 .title {
   display: inline-block;
   background-image: linear-gradient(90deg, currentColor, currentColor);
   -webkit-background-clip: text;
   background-clip: text;
   background-size: 0% 100%;
   background-repeat: no-repeat;
   /* 标题渲染优化 - 不影响尺寸 */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-rendering: optimizeLegibility;
 }

 /* 标题背景动画 */
 .title.in {
   transition: background-size 2s ease;
   background-size: 100% 100%;
 }

 /* 标题颜色变体 */
 .title.gold {
   background-image: var(--grad-gold-text);
 }

 /* 标题动画效果 */
 .title.fall-in {
   opacity: 0;
   transform: translateY(-80px) scale(1) rotateX(0deg);
   filter: blur(12px) brightness(0.85) contrast(0.8);
   transition: all 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
   transform-origin: center center;
   will-change: opacity, transform, filter;
 }

 .title.fall-in.in {
   animation: fallIn 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
 }

 @keyframes fallIn {
   0% {
     opacity: 0;
     transform: translateY(-80px) scale(1) rotateX(0deg);
     filter: blur(12px) brightness(0.85) contrast(0.8);
   }

   100% {
     opacity: 1;
     transform: translateY(0) scale(1) rotateX(0deg);
     filter: blur(0px) brightness(1) contrast(1);
   }
 }

 /* 高分辨率屏幕优化 (2560px及以上) */
 @media (min-width: 2560px) {

   /* 天用著作背景图片高分辨率优化 */
   .books-bg {
     /* background-size: cover !important; */
     background-position: center center !important;
     height: 1100px;
     padding: 120px 0 100px 0 !important;
   }

   /* 图书尺寸高分辨率优化 */
   .book-image img {
     width: 20rem;
     height: 26rem;
   }

   .book-item img {
     max-width: 9rem;
     height: 12rem;
   }

   /* 高分辨率文字渲染优化 - 不影响尺寸 */
   .books-title,
   .books-subtitle,
   .book-title,
   .book-description,
   .book-item .book-title,
   .book-item .book-description,
   .book-name {
     -webkit-font-smoothing: antialiased;
     -moz-osx-font-smoothing: grayscale;
     text-rendering: optimizeLegibility;
     font-feature-settings: "kern" 1;
     font-kerning: normal;
   }

   /* 高分辨率图片渲染优化 - 保持默认设置 */
 }





 /* 中等分辨率渲染优化 (1024px-1919px) */
 @media (min-width: 750px) and (max-width: 1919px) {

   /* 中等分辨率文字渲染优化 - 不影响尺寸 */
   .books-title,
   .books-subtitle,
   .book-title,
   .book-description,
   .book-item .book-title,
   .book-item .book-description,
   .book-name {
     -webkit-font-smoothing: antialiased;
     -moz-osx-font-smoothing: grayscale;
     text-rendering: optimizeLegibility;
     font-feature-settings: "kern" 1;
     font-kerning: normal;
   }


 }

 /* 1024px以下分辨率使用上下布局，调整高度确保全部显示 */
 @media (max-width: 750px) {

   .books-bg {
     background-position: center center !important;
     height: auto;
     min-height: 1200px;
     padding: 70px 0 50px 0 !important;
   }

   .books-content {
     flex-direction: column;
     gap: 40px;
     align-items: center;
   }

   .books-carousel {
     max-width: 100%;
     width: 100%;
     padding-top: 2rem;
   }

   .books-grid {
     max-width: 100%;
     width: 100%;
   }

   .books-grid-row {
     grid-template-columns: repeat(4, 1fr);
     gap: 15px;
   }

   .books-subtitle {
     position: relative;
     top: auto;
     text-align: center;
     padding-left: 0;
   }

   .books-title,
   .books-subtitle,
   .book-title,
   .book-description,
   .book-item .book-title,
   .book-item .book-description,
   .book-name {
     -webkit-font-smoothing: antialiased;
     -moz-osx-font-smoothing: grayscale;
     text-rendering: optimizeLegibility;
     font-feature-settings: "kern" 1;
     font-kerning: normal;
   }


   .book-image img {
     width: 10rem;
     height: 14rem;
   }

   .book-item img {
     max-width: 6rem;
     height: 8rem;
   }

   .book-item {
     min-height: 140px;
     padding-bottom: 1rem;
   }

   .books-swiper {
     height: 400px;
   }
 } 

 @media (min-width: 768px) and (max-width: 1023px) {
   .books-bg {
     min-height: 1100px;
   }

    .books-swiper {
     height: 400px;
   }

   .book-slide {
     flex-direction: column;
     align-items: center;
     justify-content: center;
   }

   .book-content {
     flex: 1;
     padding: 20px 13.33px;
     justify-content: center;
   }

   .book-title {
     font-size: var(--fz-21);
     margin-bottom: 20px;
   }

   .book-description {
     font-size: var(--fz-17);
     line-clamp: 4;
     -webkit-line-clamp: 4;
   } 

   /* 平板分辨率文字渲染优化 - 不影响尺寸 */
   .books-title,
   .books-subtitle,
   .book-title,
   .book-description,
   .book-item .book-title,
   .book-item .book-description,
   .book-name {
     -webkit-font-smoothing: antialiased;
     -moz-osx-font-smoothing: grayscale;
     text-rendering: optimizeLegibility;
     font-feature-settings: "kern" 1;
     font-kerning: normal;
   }


   .books-grid-row {
     grid-template-columns: repeat(4, 1fr);
     gap: 20px;
   }

   .book-item {
     min-height: 200px;
   }

   .book-item img {
     max-width: 80px;
     height: 120px;
   }

   .book-title {
     min-height: 3rem;
   }

   .book-description {
     min-height: 6rem;
   }

   .book-name {
     font-size: var(--fz-15);
     min-height: 1.8rem;
   }

   .books-subtitle {
     font-size: var(--fz-27);
     padding-left: 20px;
     padding-top: 33.33px;
     padding-bottom: 13.33px;
   }

   /* 轮播图图书尺寸调整 */
   .book-image img {
     width: 8rem;
     height: 11rem;
   }
 }

 @media (min-width: 480px) and (max-width: 750px) {

   /* 天用著作背景图片手机端优化 */
   .books-bg {
     /* background-size: cover !important; */
     background-position: center center !important;
     height: auto;
     min-height: 1000px;
     padding: 50px 0 30px 0 !important;
   }

   .books-content {
     /* 改为上下布局，确保内容全部显示 */
     flex-direction: column;
     gap: 30px;
     align-items: center;
   }

   .books-carousel {
     max-width: 100%;
     width: 100%;
     padding-top: 1rem;
   }

   .books-grid {
     max-width: 100%;
     width: 100%;
   }

   .books-swiper {
     height: 350px;
   }

   .book-content {
     padding: 13.33px 6.67px;
   }

   .book-title {
     font-size: var(--fz-19);
     margin-bottom: 13.33px;
   }

   .book-description {
     font-size: var(--fz-16);
     line-clamp: 3;
     -webkit-line-clamp: 3;
   }

   /* 手机分辨率文字渲染优化 - 不影响尺寸 */
   .books-title,
   .books-subtitle,
   .book-title,
   .book-description,
   .book-item .book-title,
   .book-item .book-description,
   .book-name {
     -webkit-font-smoothing: antialiased;
     -moz-osx-font-smoothing: grayscale;
     text-rendering: optimizeLegibility;
     font-feature-settings: "kern" 1;
     font-kerning: normal;
   }

   /* 手机分辨率图片渲染优化 - 不影响尺寸 */
   .book-image img,
   .book-item img {

     -webkit-backface-visibility: hidden;
     backface-visibility: hidden;
     transform: translateZ(0);
     /* 手机分辨率图片质量优化 */
   }

   .books-grid-row {
     grid-template-columns: repeat(2, 1fr);
     gap: 13.33px;
   }

   .book-item {
     min-height: 180px;
   }

   .book-item img {
     max-width: 60px;
     height: 90px;
   }

   .book-title {
     min-height: 2.5rem;
   }

   .book-description {
     min-height: 5rem;
   }

   .book-name {
     font-size: var(--fz-13);
     min-height: 1.5rem;
   }

   .books-subtitle {
     font-size: var(--fz-24);
     padding-left: 13.33px;
     padding-top: 26.67px;
     padding-bottom: 10.67px;
     position: relative;
     top: auto;
     text-align: center;
   }

   .books-swiper .swiper-pagination {
     bottom: -40px;
     margin-top: 20px;
   }
 }

 /* 超小屏幕设备 (480px以下) */
 @media (max-width: 479px) {

   /* 天用著作背景图片超小屏幕优化 */
   .books-bg {
     background-size: cover !important;
     background-position: center center !important;
     height: auto;
     min-height: 900px;
     padding: 40px 0 20px 0 !important;
   }

   .books-content {
     /* 改为上下布局，确保内容全部显示 */
     flex-direction: column;
     gap: 20px;
     align-items: center;
   }

   .books-carousel {
     max-width: 100%;
     width: 100%;
     padding-top: 1rem;
   }

   .books-grid {
     max-width: 100%;
     width: 100%;
   }

   .books-swiper {
     height: 300px;
   }

   .book-content {
     padding: 10px 5px;
   }

   .book-title {
     font-size: var(--fz-18);
     margin-bottom: 10px;
   }

   .book-description {
     font-size: var(--fz-15);
     line-clamp: 3;
     -webkit-line-clamp: 3;
   }

   /* 超小屏幕文字渲染优化 - 不影响尺寸 */
   .books-title,
   .books-subtitle,
   .book-title,
   .book-description,
   .book-item .book-title,
   .book-item .book-description,
   .book-name {
     -webkit-font-smoothing: antialiased;
     -moz-osx-font-smoothing: grayscale;
     text-rendering: optimizeLegibility;
     font-feature-settings: "kern" 1;
     font-kerning: normal;
   }

   .books-grid-row {
     grid-template-columns: repeat(2, 1fr);
     gap: 10px;
   }

   .book-item {
     min-height: 160px;
   }

   .book-item img {
     max-width: 50px;
     height: 70px;
   }

   .book-title {
     min-height: 2rem;
   }

   .book-description {
     min-height: 4rem;
   }

   .book-name {
     font-size: var(--fz-12);
     min-height: 1.2rem;
   }

   .books-subtitle {
     font-size: var(--fz-20);
     padding-left: 10px;
     padding-top: 20px;
     padding-bottom: 8px;
     position: relative;
     top: auto;
     text-align: center;
   }

   .books-swiper .swiper-pagination {
     bottom: -30px;
     margin-top: 15px;
   }
 }

 /* @media (max-width:800px) {
   .lecture-panel {
     gap: 3rem;
     padding: 2rem;
     min-height: 30rem;
   }

   .lecture-list-item {
     width: 22rem;
     min-width: 22rem;
     font-size: 1.3rem;
   }

   .lecture-list-item:has(.lecture-counter) {
     width: 22rem;
     min-width: 22rem;
   }

   .lecture-swiper,
   .speaker-image {
     height: 25rem;

   }

   .cases-nav-prev,
   .cases-nav-next {
     width: 2.5rem;
     height: 2.5rem;
     background-size: 55%;
   }

   .cases-nav-prev {
     left: -2.5rem;
   }

   .cases-nav-next {
     right: -2.5rem;
   }
 } */

  @media (max-width: 750px) {
   .lecture-panel {
     flex-direction: column;
     gap: 2rem;
     padding: 1.5rem;
     min-height: auto;
   }

   .lecture-left {
     min-height: auto;
     order: 2;
   }

   .lecture-right {
     order: 1;
     padding-top: 0;
     padding-bottom: 1rem;
   }

   .lecture-list-item {
     width: 100%;
     max-width: 20rem;
     min-width: 20rem;
     font-size: 1.2rem;
     padding: 0.75rem 1rem;
   }

   .lecture-list-item:has(.lecture-counter) {
     width: 100%;
     max-width: 20rem;
     min-width: 20rem;
   }

   .lecture-swiper,
   .speaker-image {
     height: 20rem;
   }

   .lecture-carousel {
     max-width: 100%;
   }

   .cases-nav-prev,
   .cases-nav-next {
     width: 2rem;
     height: 2rem;
   }

   .cases-nav-prev {
     left: -2rem;
   }

   .cases-nav-next {
     right: -2rem;
   }

   .cases-nav-prev {
     background-size: 50%;
   }

   .cases-nav-next {
     background-size: 50%;
   }
 } 

 @media (max-width: 480px) {
   .lecture {
     padding: 2rem 0;
   }

   .lecture-panel {
     padding: 1rem;
     gap: 1.5rem;
   }

   .lecture-list-item {
     width: 100%;
     max-width: 18rem;
     min-width: 18rem;
     font-size: 1.1rem;
     padding: 0.625rem 0.875rem;
     min-height: 3rem;
   }

   .lecture-list-item:has(.lecture-counter) {
     width: 100%;
     max-width: 18rem;
     min-width: 18rem;
   }

   .lecture-swiper,
   .speaker-image {
     height: 15rem;
   }

   .lecture-title {
     font-size: 1.8rem;
     margin: 0.5rem 0 0.75rem;
   }

   .register-btn {
     padding: 0.625rem 1.25rem 0.625rem 1.25rem;
     font-size: 1.1rem;
     padding-right: 2.5rem;
   }

   .register-btn::after {
     width: 1rem;
     height: 1rem;
     right: 1rem;
   }
 }

 /* 数字样式 */
 .counter {
   color: var(--gold-deep);
   font-weight: 800;
   font-size: var(--fz-28)
 }

 /* ========== 响应式（≤800 走移动样式，800-1024 复用桌面） ========== */
 /* @media (max-width:800px) {
   .biz-grid {
     grid-template-columns: repeat(2, 1fr)
   }

   .honor-area.container {
     max-width: 1040px;
     padding: 0;
   }

   .honor-container {
     width: 1040px;
     height: 55vh;
     min-height: 400px
   }

   .honor-container::before,
   .honor-container::after {
     width: 40px
   }

   .honor-grid {
     gap: 16px;
     animation-duration: 50s;
     justify-content: flex-start
   }

   .honor {
     width: 240px
   }

   .honor .ph-reflection {
     margin-top: 80px;
     mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.7) 20%, rgba(0, 0, 0, 0.5) 40%, rgba(0, 0, 0, 0.3) 60%, rgba(0, 0, 0, 0.1) 80%, transparent 100%)
   }

   .book-grid {
     grid-template-columns: repeat(4, 1fr)
   }

   .foot-top {
     grid-template-columns: 1fr 1fr
   }

   .about-grid,
   .sol-grid {
     grid-template-columns: 1fr
   }

   .lecture-panel {
     flex-direction: column;
     gap: 53.33px;
     padding: 53.33px
   }

   .lecture-title {
     font-size: 42.67px;
     background: #fff;
     padding: 16px 32px;
     margin-left: 26.67px;
   }

   .lecture-left {
     padding: 53.33px;
     min-height: 533px
   }

   .lecture-list-item {
     font-size: 21.33px;
     background: #fff;
     padding: 16px 21.33px;
     width: 467px;
     height: 67px
   }

   .speaker-image {
     height: 400px;
     box-shadow: 0 2px 10px rgba(0, 0, 0, .15);
   }

   .cases-grid {
     grid-template-columns: repeat(4, 1fr);
     gap: 20px
   }

   .case-card {
     width: 333px;
     height: auto;
     min-height: 320px
   }

   .case-image {
     height: 240px;
     background: linear-gradient(to bottom, #E3C78D, #fff);
     display: flex;
     align-items: flex-end;
     justify-content: space-between;
     padding: 0 20px 10px 20px;
   }

   .case-content {
     height: 47px;
     padding: 13.33px;
     justify-content: flex-start
   }

   .books-content {
     flex-direction: column;
     gap: 53.33px
   }

   .books-carousel {
     max-width: 100%
   }

   .books-grid {
     max-width: 100%
   }

   .books-grid-row {
     grid-template-columns: repeat(4, 1fr)
   }
 } */

 /* @media (max-width:768px) {
   .honor-area.container {
     max-width: 848px;
     padding: 0;
   }

   .honor-container {
     width: 848px;
     height: 52vh;
     min-height: 400px
   }

   .honor-container::before,
   .honor-container::after {
     width: 30px
   }

   .honor-grid {
     gap: 12px;
     animation-duration: 40s;
     justify-content: flex-start
   }

   .honor {
     padding: 12px;
     width: 200px
   }

   .honor .ph-reflection {
     margin-top: 60px;
     mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.7) 20%, rgba(0, 0, 0, 0.5) 40%, rgba(0, 0, 0, 0.3) 60%, rgba(0, 0, 0, 0.1) 80%, transparent 100%)
   }

   .honor .ph,
   .honor .ph-reflection {
     aspect-ratio: 188/244
   }

   .case-type {
     font-size: 16px
   }

   .case-highlight {
     font-size: 14.67px
   }

   .lecture-panel {
     padding: 40px;
     gap: 40px
   }

   .lecture-title {
     font-size: 26.67px;
     background: #fff;
     padding: 10.67px 21.33px;
   }

   .lecture-list-item {
     font-size: 18.67px;
     gap: 20px;
     background: #fff;
     padding: 13.33px 18.67px;
   }

   .speaker-image {
     height: 267px
   }

   .bg-number {
     font-size: 106.67px
   }

   .books-swiper {
     height: 300px
   }

   .book-slide {
     flex-direction: column
   }

   .book-content {
     padding: 20px
   }

   .book-title {
     font-size: var(--fz-20)
   }

   .books-grid-row {
     grid-template-columns: repeat(2, 1fr)
   }

   .book-item img {
     max-width: 100px
   }

   .case-image {
     background: linear-gradient(to bottom, #E3C78D, #fff);
     display: flex;
     align-items: flex-end;
     justify-content: space-between;
     padding: 0 15px 8px 15px;
   }

   .case-image-left {
     width: 42%;
     height: 75%;
     display: flex;
     align-items: center;
     justify-content: center;
   }

   .case-image-right {
     width: 42%;
     height: 75%;
   }

   .case-image-left img {
     position: relative;
     bottom: -8px;
   }

   .books-bg {
     background-size: cover !important;
     background-position: center center !important;
     height: 840px;
     padding: 60px 0 40px 0 !important;
   }
 } */

 @media (max-width:480px) {
   .honor-area.container {
     max-width: 664px;
     padding: 0;
   }

   .honor-container {
     width: 664px;
     height: 50vh;
     min-height: 350px
   }

   .honor-container::before,
   .honor-container::after {
     width: 25px
   }

   .honor-grid {
     gap: 16px;
     animation-duration: 30s;
     justify-content: flex-start
   }

   .honor {
     padding: 16px;
     width: 150px
   }

   .honor .ph-reflection {
     margin-top: 40px;
     mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.7) 20%, rgba(0, 0, 0, 0.5) 40%, rgba(0, 0, 0, 0.3) 60%, rgba(0, 0, 0, 0.1) 80%, transparent 100%)
   }

   .honor .ph,
   .honor .ph-reflection {
     aspect-ratio: 188/244
   }

   .lecture-panel {
     padding: 33.33px;
     gap: 33.33px
   }

   .lecture-title {
     font-size: 24px;
     background: #fff;
     padding: 8px 16px;
   }

   .lecture-list-item {
     font-size: 16px;
     gap: 16px;
     background: #fff;
     padding: 10.67px 16px;
   }

   .speaker-image {
     height: 240px
   }

   .bg-number {
     font-size: 80px
   }

   .lecture-controls {
     flex-direction: column;
     gap: 20px
   }

   .books-swiper {
     height: 250px
   }

   .book-content {
     padding: 15px
   }

   .book-title {
     font-size: var(--fz-18)
   }

   .book-description {
     font-size: var(--fz-14)
   }

   .books-grid-row {
     grid-template-columns: repeat(2, 1fr)
   }

   .book-item img {
     max-width: 80px
   }

   .book-name {
     font-size: var(--fz-10)
   }

   .case-image {
     background: linear-gradient(to bottom, #E3C78D, #fff);
     display: flex;
     align-items: flex-end;
     justify-content: space-between;
     padding: 0 10px 6px 10px;
   }

   .case-image-left {
     width: 40%;
     height: 70%;
     display: flex;
     align-items: center;
     justify-content: center;
   }

   .case-image-right {
     width: 40%;
     height: 70%;
   }

   .case-image-left img {
     position: relative;
     bottom: -6px;
   }
 }

 /* @media (max-width:800px) {
   :root {
     --container: 100vw;
   }

   .kpi-grid {
     grid-template-columns: repeat(2, 1fr)
   }

   .biz-grid {
     grid-template-columns: 1fr
   }

   .book-grid {
     grid-template-columns: repeat(4, 1fr)
   }

   .nav {
     position: relative
   }

   .form-grid {
     grid-template-columns: 1fr
   }

   .honor-container {
     width: calc(320px * 4 + 35px * 3);
     height: 60vh;
     min-height: 400px
   }

   .honor {
     width: 16rem
   }

   .honor-grid {
     gap: 20px;
     animation-duration: 45s;
     justify-content: flex-start
   }

   .honor .ph-reflection {
     margin-top: 106px;
     mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.7) 20%, rgba(0, 0, 0, 0.5) 40%, rgba(0, 0, 0, 0.3) 60%, rgba(0, 0, 0, 0.1) 80%, transparent 100%)
   }

   .books-left-grid {
     grid-template-columns: repeat(2, 1fr);
     grid-template-rows: repeat(4, 1fr)
   }

   .books-bg {
     background-size: cover !important;
     background-position: center center !important;
     height: 960px;
     padding: 80px 0 60px 0 !important;
   }
 } */

 .lineght-bottom {
   line-height: 0.5 !important;
 }

 .cases-container {
   position: relative;
   width: 100%;
   overflow: hidden;
   padding-inline: 6.5rem !important;
   margin: 26.67px 0;
   min-height: 533px;
   box-sizing: border-box;
   padding-bottom: 0;
 }

 .swiper {
   width: 100%;
   height: auto;
   overflow: hidden;

 }

 .swiper-wrapper {
   transition-timing-function: ease-out;
   margin: 0;
   padding: 0;
 }

 .swiper-slide {
   justify-content: center;
   align-items: center;
   transition: transform 0.3s ease;
   margin: 0;
   padding: 0;
 }

 /* 案例轮播样式 */
 .cases-swiper {
   width: 100%;
   height: auto;
   overflow: hidden;
 }

 .cases-swiper .swiper-slide {
   display: flex;
   justify-content: center;
   align-items: center;
   width: 100%;
   height: 100%;
 }

 .cases-swiper .case-column {
   width: 467px;
   display: flex;
   flex-direction: column;
   gap: 1.25rem;
   justify-content: center;
   align-items: center;
 }

 /* 天用著作轮播样式 */
 .books-swiper {
   width: 100%;
   height: auto;
   overflow: hidden;
 }

 /* 讲座轮播样式 */
 .lecture-swiper {
   width: 100%;
   height: auto;
   overflow: hidden;
   filter: drop-shadow(0 4px 5.67px rgba(0, 0, 0, 0.35));
 }

 .cases-wrapper {
   overflow: hidden;
   display: flex;
   justify-content: center;
   width: 100%;
   align-items: center;
   height: 100%;
   padding-bottom: 26.67px;
 }

 .cases-grid {
   border-radius: 16px;
   padding: 0 13.33px;
   padding-bottom: 26.67px;
   display: flex;
   gap: 0;
   width: fit-content;
   transition: transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
   transform: translateX(0);
   max-width: calc(3 * 467px);
   margin: 0 auto;
   overflow: hidden;
   position: relative;
 }

 .case-column {
   display: flex;
   flex-direction: column;
   gap: 0;
   width: 467px;
   flex-shrink: 0;
   margin: 0;
   padding: 0;
   justify-content: center;
   align-items: center;
 }

.case-card {
  background: #fff;
  border-radius: 16px !important;
  overflow: hidden;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.15);
  transition: all 0.3s ease;
  cursor: pointer;
  width: 467px;
  display: flex;
  flex-direction: column;
  position: relative;
  margin: 0;
  padding: 0;
}

 .case-card:hover {
   box-shadow: 0 6px 16.67px rgba(0, 0, 0, 0.22);
 }

.case-image {
  width: 100%;
  height: 240px;
  overflow: hidden;
  position: relative;
  background: linear-gradient(to bottom, #E3C78D, #fff);
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  padding: 0 20px 0px 20px;
  border-radius: 16px 16px 0 0;
}

 .case-image-left {
   width: 50%;
   height: 95%;
   position: relative;
   overflow: hidden;
   border-radius: 8px;
   display: flex;
   align-items: flex-end;
   justify-content: center;
 }

 .case-image-right {
   width: 50%;
   height: 95%;
   position: relative;
   overflow: visible;
   border-radius: 8px;
   display: flex;
   align-items: flex-end;
   justify-content: center;
 }

 .case-image-left img {
   height: 75%;
   object-fit: cover;
   transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
   transform-origin: center center;
   position: relative;
   bottom: 0;
 }

 .case-image-right img {
   object-fit: contain;
   max-height: calc(100% - 25px);
   margin-top: 25px;
   transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
   transform-origin: center center;
   align-self: flex-end;
   display: block;
 }

 .case-card:hover .case-image-left img {
   transform: scale(1.06)
 }

 .case-card:hover .case-image-right img {
   transform: scale(1.06)
 }

 /* 图片清晰：仅移除全局滤镜/不必要加速，保留各模块 hover 动画 */
 img,
 .image-container {
   filter: none !important;
   will-change: auto !important;
 }

 /* 业务领域：平滑的悬浮放大效果（覆盖上面的全局禁用规则） */
 .biz-card .ph {
   transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
   transform-origin: center center !important;
   will-change: transform;
 }

 .biz-card:hover .ph {
   transform: scale(1.06) !important;
 }

 .case-content {
   padding: 11.33px;
   height: 100px;
   display: flex;
   align-items: flex-start;
   justify-content: flex-start;
   padding: 18px 30px 0 30px;
 }

 .case-content p {
   font-size: 18.67px;
   line-height: 1.4;
   color: #333;
   margin: 0;
   overflow: hidden;
   text-overflow: ellipsis;
   display: -webkit-box;
   line-clamp: 2;
   -webkit-line-clamp: 2;
   -webkit-box-orient: vertical;
   white-space: normal;
   transition: all 0.3s ease;
   position: relative;
   align-self: flex-start;
   margin-top: 0.5rem;
   text-align: left;
   width: 100%
 }

 .case-card:hover .case-content p {
   color: var(--fig-gold);
   transform: translateY(-2.67px)
 }

 .nav-btn {
   position: absolute;
   top: 48%;
   transform: translateY(-50%);
   background: rgba(255, 255, 255, 0.95);
   border: 2px solid #E3C78D;
   width: 80px;
   height: 80px;
   display: flex;
   align-items: center;
   justify-content: center;
   cursor: pointer;
   transition: all 0.3s ease;
   z-index: 10;
   border-radius: 50%;
   box-shadow: 0 5.33px 16px rgba(0, 0, 0, 0.15)
 }

 .nav-btn:hover {
   transform: translateY(-50%) scale(1.1)
 }

 .nav-btn img {
   width: 37.33px;
   height: 37.33px;
   object-fit: contain
 }

 .prev-btn {
   left: -10px
 }

 .next-btn {
   right: -10px
 }

 .warp-bg {
   padding: 0;
 }

 .warp-bg .container {
   padding: 0;
   max-width: 100%;
 }

 .warp-bg .hero-img {
   border-radius: 0;
 }

 /* 联系表单样式 */
 .contact-section {
   width: 100%;
   position: relative;
 }

 /* 联系区口号图片尺寸 */
 .contact-slogan {
   height: 96px;
   display: block;
   object-fit: contain;
 }

 /* @media (max-width: 768px) {
   .contact-slogan {
     height: 44px;
   }
 } */

 .contact-header {
   background: #fff;
   padding: 80px 0 60px 0;
   text-align: center;
   position: relative;
 }

 .contact-header::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   height: 4px;
   background: #007bff;
 }

 .contact-title {
   display: flex;
   justify-content: center;
   gap: 60px;
   align-items: center;
 }

 .title-text {
   font-size: 68px;
   font-weight: 700;
   color: #E3C78D;
   text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
 }

 .contact-form-container {
   padding: 60px 6rem;
   display: flex;
   justify-content: center;
   align-items: center;
   background: #E3C78D;
   box-sizing: border-box;
 }

 .contact-form {
   width: 100%;
   max-width: 95%;
 }

 .form-row {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 20px;
   flex-wrap: nowrap;
   max-width: 1000px;
   margin: 0 auto;
 }

 .form-label {
   color: #fff;
   font-size: 16px;
   font-weight: 500;
   white-space: nowrap;
 }

 .form-input {
   width: 160px;
   height: 40px;
   border: 1px solid #fff;
   border-radius: 6px;
   padding: 0 12px;
   font-size: 14px;
   background: transparent;
   color: #fff;
   transition: all 0.3s ease;
 }

 .form-input::placeholder {
   color: #fff;
 }

 .form-input:focus {
   /* outline: none; */
   /* border-color: #fff; */
   /* background: rgba(255, 255, 255, 0.1); */
 }

 .submit-btn {
   background: transparent;
   color: #fff;
   border: 1px solid #fff;
   border-radius: 6px;
   padding: 8px 16px;
   font-size: 14px;
   font-weight: 600;
   cursor: pointer;
   transition: all 0.3s ease;
   white-space: nowrap;
   height: 40px;
   display: flex;
   align-items: center;
   justify-content: center;
 }

 .submit-btn:hover {
   background: rgba(255, 255, 255, 0.1);
 }

 /* 响应式设计 */
 /* @media (max-width: 768px) {
   .contact-title {
     flex-direction: column;
     gap: 20px;
   }

   .title-text {
     font-size: 24px;
   }

   .form-row {
     flex-direction: column;
     gap: 15px;
   }

   .form-input {
     width: 280px;
   }

   .submit-btn {
     width: 280px;
   }
 } */

 @media (max-width: 480px) {
   .contact-header {
     padding: 60px 0 50px 0;
   }

   .title-text {
     font-size: 20px;
   }

   .contact-form-container {
     padding: 50px 0;
   }

   .form-input {
     width: 260px;
   }

   .submit-btn {
     width: 260px;
   }
 }

 /* 大屏幕适配 */




 .case-image {
   height: 240px;
 }

 .nav-btn {
   width: 60px;
   height: 60px;
 }

 .nav-btn img {
   width: 30px;
   height: 30px;
 }

 /* 其他固定尺寸修复 */
 /* .sol-option-img {
        height: 70px;

        width: 70px;
      } */



 .member {
   min-width: 275px;
 }

 .rail-btn {
   width: 48px;
   height: 48px;
 }

 .leftBtn {
   background: transparent;
   border: none;
   width: 5rem;
   height: 5rem;
   box-shadow: none;
 }

 .leftBtn img {
   width: 6rem;
   height: 6rem;
 }

 .rightBtn img {
   width: 6rem;
   height: 6rem;
 }

 .rightBtn {
   background: transparent;
   border: none;
   width: 5rem;
   height: 5rem;
   box-shadow: none;
 }

 .titleBottom {
   padding-block: 0;
   padding-bottom: 0 !important;
 }

 .noneBottom {
   margin-bottom: 0;
   padding-block: 0px !important;
 }

 .noneBottom .container {
   padding-top: 4rem;
   padding-bottom: 10rem;
 }

 .white-bg .cases-swiper .swiper-wrapper {
   padding-bottom: 10px;
 }

 .white-bg {
   background: #fff;
 }

 /* 确保案例轮播在容器内居中 */
 .cases-swiper .swiper-wrapper {
   display: flex;
   align-items: center;

 }

 .cases-swiper .swiper-slide {
   display: flex;
   justify-content: center;
   align-items: center;
   height: auto;
 }

 .consult {
   background-color: #e3c78d;
   width: 100%;
   padding: 66px 0;
 }

 .consult .container {
   width: 100%;
   max-width: 1920px;
   margin: 0 auto;
   padding: 0 100px 0 110px;
   display: flex !important;
   align-items: center !important;
   justify-content: center !important;
 }

 .consult-form {
   display: flex !important;
   align-items: center !important;
   gap: 30px !important;
   flex-wrap: nowrap !important;
   width: 100% !important;
   justify-content: center !important;
   flex-direction: row !important;
 }

 .form-group {
   display: flex !important;
   align-items: center !important;
   gap: 10px !important;
   flex-direction: row !important;
 }

 .form-group label {
   color: white;
   font-size: 28px;
   font-weight: 600;
   white-space: nowrap;
 }

 .consult input {
   width: 350px;
   height: 60px;
   padding: 0 20px;
   border: 2px solid white;
   border-radius: 8px;
   font-size: 28px !important;
   /* 增大输入框字体 */
   background-color: transparent;
   color: white;
 }

.consult input::placeholder {
  color: rgba(255, 255, 255, 0.8);
  font-weight: 600;
}

.consult input:focus {
  outline: none;
  border-color: white;
  box-shadow: none;
}

 .consult-btn {
   width: 178px !important;
   height: 60px !important;
   background-color: white !important;
   border: none !important;
   color: #e3c78d !important;
   border-radius: 8px !important;
   cursor: pointer !important;
   font-size: 28px !important;
   /* 增大按钮字体 */
   font-weight: 600 !important;
   align-self: center !important;
   margin-top: 0 !important;
   /* 按钮文字渲染优化 - 不影响尺寸 */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-rendering: optimizeLegibility;
 }

 /* 调试样式 - 确保水平排列 */
 .consult-form>* {
   display: inline-block !important;
   vertical-align: middle !important;
 }



 /* 页脚响应式适配 */
 @media (max-width: 1919px) {
   .footer-container {
     padding: calc(82px * var(--scale-ratio, 1)) 0 calc(34px * var(--scale-ratio, 1)) 0;
   }

   .footer-logo {
     width: calc(300px * var(--scale-ratio, 1));
     height: calc(180px * var(--scale-ratio, 1));
     margin-bottom: calc(21px * var(--scale-ratio, 1));
   }

   .hero-section,
   .hero-wrap,
   .hero-img {
     height: calc(110vh + var(--effective-nav-h)) !important;
   }

   .footer-left p,
   .footer-middle dt,
   .footer-middle dd,
   .footer-middle .number dt,
   .footer-middle .number dd,
   .footer-right p {
     font-size: 18px;
     /* 固定字体大小，不随分辨率变化 */
   }

   .footer-middle dt,
   .footer-middle dd,
   .footer-right p,
   .copyright {
     font-size: calc(18px * var(--scale-ratio, 1));
   }

   .footer-middle .number dt {
     margin-bottom: 0;
     color: #333;
     font-weight: 500;
     font-size: 22px;
     /* 服务热线标题渲染优化 - 解决虚化毛边问题 */
     -webkit-font-smoothing: antialiased;
     -moz-osx-font-smoothing: grayscale;
     text-rendering: optimizeLegibility;
     font-feature-settings: "kern" 1, "liga" 1, "calt" 1;
     font-kerning: normal;
     /* 强制GPU渲染，防止文字模糊 */
     -webkit-transform: translateZ(0);
     transform: translateZ(0);
     -webkit-backface-visibility: hidden;
     backface-visibility: hidden;
   }

   .footer-middle .number dd {
     margin-bottom: 10px;
     color: #333;
     font-weight: 500;
     font-size: 18px;
     /* 服务热线号码渲染优化 - 解决虚化毛边问题 */
     -webkit-font-smoothing: antialiased;
     -moz-osx-font-smoothing: grayscale;
     text-rendering: optimizeLegibility;
     font-feature-settings: "kern" 1, "liga" 1, "calt" 1;
     font-kerning: normal;
     /* 强制GPU渲染，防止文字模糊 */
     -webkit-transform: translateZ(0);
     transform: translateZ(0);
     -webkit-backface-visibility: hidden;
     backface-visibility: hidden;
   }

   .footer-middle {
     margin-top: calc((92px - 30px) * var(--scale-ratio, 1));
     gap: calc(50px * var(--scale-ratio, 1));
   }

   .footer-right {
     margin-top: calc(74px * var(--scale-ratio, 1));
     gap: calc(75px * var(--scale-ratio, 1));
   }

   .zixun-button {
     width: calc(110px * var(--scale-ratio, 1)) !important;
     height: calc(42px * var(--scale-ratio, 1)) !important;
     font-size: 18px !important;
     /* 固定字体大小，不随分辨率变化 */
   }

   .footer-divider {
     width: calc(100% - 190px * var(--scale-ratio, 1));
     margin: 0 calc(95px * var(--scale-ratio, 1));
   }

   .footer-vertical-divider {
     right: calc(-150px * var(--scale-ratio, 1));
     top: calc(74px * var(--scale-ratio, 1));
     bottom: calc(21px * var(--scale-ratio, 1));
   }

   .footer-logo {
     margin-bottom: calc(36px * var(--scale-ratio, 1));
   }

   /* 响应式间距控制 */
   .footer-container {
     padding: 0 calc(95px * var(--scale-ratio, 1));
   }

   .footer-left {
     margin-right: calc(var(--footer-left-right-margin, 0) * var(--scale-ratio, 1));
   }

   .footer-middle {
     margin-left: calc(var(--footer-middle-left-margin, 0) * var(--scale-ratio, 1));
     margin-right: calc(var(--footer-middle-right-margin, 0) * var(--scale-ratio, 1));
   }

   .footer-right {
     margin-left: calc(var(--footer-right-left-margin, 0) * var(--scale-ratio, 1));
   }
 }

 /* 响应式适配 - 1920分辨率以下等比例缩放 */
 @media (max-width: 1919px) {
   .consult .container {
     padding: 0 calc(100px * var(--scale-ratio, 1)) 0 calc(110px * var(--scale-ratio, 1));
   }

   .consult {
     padding: calc(66px * var(--scale-ratio, 1)) 0;
   }

   .consult input {
     width: calc(350px * var(--scale-ratio, 1));
     height: calc(60px * var(--scale-ratio, 1));
     padding: 0 calc(20px * var(--scale-ratio, 1));
     font-size: 20px !important;
     /* 固定字体大小，不随分辨率变化 */
     border-radius: calc(8px * var(--scale-ratio, 1));
   }

   .consult-btn {
     width: calc(178px * var(--scale-ratio, 1)) !important;
     height: calc(60px * var(--scale-ratio, 1)) !important;
     font-size: 28px !important;
     /* 固定字体大小，不随分辨率变化 */
     border-radius: calc(8px * var(--scale-ratio, 1)) !important;
   }

   /* .form-group label {
                font-size: calc(18px * var(--scale-ratio, 1));
            } */

   .consult-form {
     gap: calc(30px * var(--scale-ratio, 1));
   }

   .form-group {
     gap: calc(10px * var(--scale-ratio, 1));
   }
 }

 @media (min-width: 1020px) {

   .hero-section,
   .hero-wrap,
   .hero-img {
     height: calc(170vh + var(--effective-nav-h)) !important;
   }

 }

 @media (min-width: 1100px) {

   .hero-section,
   .hero-wrap,
   .hero-img {
     height: calc(165vh + var(--effective-nav-h)) !important;
   }

 }

 @media (min-width: 1300px) {

   .hero-section,
   .hero-wrap,
   .hero-img {
     height: calc(150vh + var(--effective-nav-h)) !important;
   }

 }

 @media (min-width: 1500px) {

   .hero-section,
   .hero-wrap,
   .hero-img {
     height: calc(130vh + var(--effective-nav-h)) !important;
   }

 }

 @media (min-width: 1620px) {

   .hero-section,
   .hero-wrap,
   .hero-img {
     height: calc(120vh + var(--effective-nav-h)) !important;
   }

 }

 @media (min-width: 1800px) {

   .hero-section,
   .hero-wrap,
   .hero-img {
     height: calc(100vh + var(--effective-nav-h)) !important;
   }

 }

 @media (min-width: 2000px) {

   .hero-section,
   .hero-wrap,
   .hero-img {
     height: calc(80vh + var(--effective-nav-h)) !important;
   }
 }

 @media (min-width: 2360px) {

   .hero-section,
   .hero-wrap,
   .hero-img {
     height: calc(70vh + var(--effective-nav-h)) !important;
   }

 }

 /* 高分辨率屏幕优化 (2560px及以上) */
 @media (min-width: 2560px) {
   .consult .container {
     padding: 0 120px 0 130px;
   }

   .consult {
     padding: 80px 0;
   }

   .consult input {
     width: 400px;
     height: 70px;
     font-size: 20px !important;
     /* 保持20px字体大小 */
   }

   .consult-btn {
     width: 200px !important;
     height: 70px !important;
     font-size: 28px !important;
     /* 保持22px字体大小 */
   }

   .form-group label {
     font-size: 20px;
   }

   .consult-form {
     gap: 40px;
   }
 }

 /* 平板设备适配 (768px - 1200px) */
 /* @media (max-width: 1200px) {
   .consult .container {
     padding: 0 60px;
   }

   .consult-form {
     flex-wrap: wrap;
     gap: 20px;
   }

   .form-group {
     width: auto;
     justify-content: center;
   }

   .consult input {
     width: 300px;
     height: 50px;
   }

   .consult-btn {
     width: 150px !important;
     height: 50px !important;
     font-size: 22px !important;
   }
 } */

 /* 手机设备适配 (480px以下) */
 @media (max-width: 480px) {
   .consult .container {
     padding: 0 20px;
   }

   .consult {
     padding: 40px 0;
   }

   .consult-form {
     flex-direction: column;
     gap: 15px;
   }

   .form-group {
     flex-direction: row;
     gap: 8px;
     align-items: center;
     justify-content: center;
   }

   .consult input {
     width: 280px;
     height: 45px;
     font-size: 20px !important;
     /* 保持20px字体大小 */
   }

   .consult-btn {
     width: 120px !important;
     height: 45px !important;
     font-size: 22px !important;
     /* 保持22px字体大小 */
   }

   .form-group label {
     font-size: 16px;
   }
 }

 footer {
   background-color: #fff;
   border-top: 1px solid #eee;
 }

 .footer-container {
   margin: 0;
   display: flex;
   justify-content: flex-start;
   align-items: flex-start;
   padding: 0 95px;
   position: relative;
   width: 100%;
   box-sizing: border-box;
   gap: 0;
 }

 /* 各部分间距控制 */
 .footer-left {
   display: flex;
   flex-direction: column;
   align-items: flex-start;
   margin-left: 0;
   margin-right: var(--footer-left-right-margin, 0);
   padding-top: calc(8rem - 75px) !important;
   position: relative;
   flex-shrink: 0;
 }

 .footer-middle {
   margin-left: var(--footer-middle-left-margin, 0);
   margin-right: var(--footer-middle-right-margin, 0);
 }

 .footer-right {
   margin-left: var(--footer-right-left-margin, 0);
 }

 .footer-logo {
   width: 250px;
   height: 150px;
   margin-bottom: 36px;
 }

 .footer-left p {
   margin-bottom: 21px;
   color: #353333;
   font-size: 18px;
   font-weight: 500;
   line-height: 1.5;
   /* 页脚文字渲染优化 - 解决虚化毛边问题 */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-rendering: optimizeLegibility;
   font-feature-settings: "kern" 1, "liga" 1, "calt" 1;
   font-kerning: normal;
   /* 强制GPU渲染，防止文字模糊 */
   -webkit-transform: translateZ(0);
   transform: translateZ(0);
   -webkit-backface-visibility: hidden;
   backface-visibility: hidden;
 }

 .footer-middle {
   display: flex;
   justify-content: space-between;
   width: auto;
   gap: 0px;
   margin-top: calc(92px - 50px);
   margin-left: 15rem;
   margin-right: 0;
   flex-shrink: 0;
 }

 .footer-middle dl {
   flex: 0 1 auto;
   min-width: 120px;
   margin: 0;
 }

 .number {
   padding-left: 11rem;
 }

 .footer-middle .number dt {
   margin-bottom: 0;
   color: #333;
   font-weight: 500;
   font-size: 22px;
   /* 服务热线标题渲染优化 - 解决虚化毛边问题 */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-rendering: optimizeLegibility;
   font-feature-settings: "kern" 1, "liga" 1, "calt" 1;
   font-kerning: normal;
   /* 强制GPU渲染，防止文字模糊 */
   -webkit-transform: translateZ(0);
   transform: translateZ(0);
   -webkit-backface-visibility: hidden;
   backface-visibility: hidden;
 }

 .footer-middle .number dd {
   margin-bottom: 10px;
   color: #333;
   font-weight: 500;
   font-size: 18px;
   /* 服务热线号码渲染优化 - 解决虚化毛边问题 */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-rendering: optimizeLegibility;
   font-feature-settings: "kern" 1, "liga" 1, "calt" 1;
   font-kerning: normal;
   /* 强制GPU渲染，防止文字模糊 */
   -webkit-transform: translateZ(0);
   transform: translateZ(0);
   -webkit-backface-visibility: hidden;
   backface-visibility: hidden;
 }

 .footer-middle dt {
   margin-bottom: 15px;
   font-size: 20px;
   color: #353333;
   /* 页脚标题渲染优化 - 解决虚化毛边问题 */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-rendering: optimizeLegibility;
   font-feature-settings: "kern" 1, "liga" 1, "calt" 1;
   font-kerning: normal;
   /* 强制GPU渲染，防止文字模糊 */
   -webkit-transform: translateZ(0);
   transform: translateZ(0);
   -webkit-backface-visibility: hidden;
   backface-visibility: hidden;
 }

 .footer-middle dd {
   margin: 0;
   margin-bottom: 15px;
   color: #353333;
   font-size: 20px;
   cursor: pointer;
   transition: color 0.3s ease;
   /* 页脚链接渲染优化 - 解决虚化毛边问题 */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-rendering: optimizeLegibility;
   font-feature-settings: "kern" 1, "liga" 1, "calt" 1;
   font-kerning: normal;
   /* 强制GPU渲染，防止文字模糊 */
   -webkit-transform: translateZ(0);
   transform: translateZ(0);
   -webkit-backface-visibility: hidden;
   backface-visibility: hidden;
 }

 .footer-middle dd:hover {
   color: #e3c78d;
 }

 .zixun-button {
   background-color: #e3c78d !important;
   color: white !important;
   border: none !important;
   width: 110px !important;
   height: 42px !important;
   border-radius: 6px !important;
   font-size: 18px !important;
   font-weight: 600 !important;
   cursor: pointer !important;
   transition: background-color 0.3s ease !important;
   /* 按钮文字渲染优化 - 解决虚化毛边问题 */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-rendering: optimizeLegibility;
   font-feature-settings: "kern" 1, "liga" 1, "calt" 1;
   font-kerning: normal;
   /* 强制GPU渲染，防止文字模糊 */
   -webkit-transform: translateZ(0);
   transform: translateZ(0);
   -webkit-backface-visibility: hidden;
   backface-visibility: hidden;
 }

 .zixun-button:hover {
   background-color: #d4b87a;
 }

 .footer-right {
   text-align: center;
   display: flex;
   gap: 75px;
   margin-top: calc(92px - 65px) !important;
   margin-left: 0;
   margin-right: 0;
   flex-shrink: 0;
   padding-left: 9rem;
 }

 .footer-right .qrcode {
   width: 120px;
   height: 120px;
   border-radius: 8px;
 }

 .footer-right p {
   color: #333;
   margin-top: 15px;
   font-size: 20px;
   /* 页脚右侧文字渲染优化 - 解决虚化毛边问题 */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-rendering: optimizeLegibility;
   font-feature-settings: "kern" 1, "liga" 1, "calt" 1;
   font-kerning: normal;
   /* 强制GPU渲染，防止文字模糊 */
   -webkit-transform: translateZ(0);
   transform: translateZ(0);
   -webkit-backface-visibility: hidden;
   backface-visibility: hidden;
 }

 .copyright {
   text-align: center;
   padding: 20px 0;
   background-color: #fff;
   color: #666;
   font-size: 18px;
   /* 版权信息渲染优化 - 解决虚化毛边问题 */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-rendering: optimizeLegibility;
   font-feature-settings: "kern" 1, "liga" 1, "calt" 1;
   font-kerning: normal;
   /* 强制GPU渲染，防止文字模糊 */
   -webkit-transform: translateZ(0);
   transform: translateZ(0);
   -webkit-backface-visibility: hidden;
   backface-visibility: hidden;
 }

 .footer-divider {
   width: calc(100% - 190px);
   height: 1px;
   background-color: #b3b3b3;
   margin: 0 95px;
 }

 .footer-left {
   display: flex;
   flex-direction: column;
   align-items: flex-start;
   margin-left: 0;
   position: relative;
   padding-left: 8rem;
 }

 .footer-vertical-divider {
   position: absolute;
   right: -150px;
   top: 74px;
   bottom: 21px;
   width: 1px;
   background-color: #b3b3b3;
 }

 .copyright p {
   margin: 5px 0;
   line-height: 1.5;
 }

 .books-bg .container {
   padding-right: 3rem;
   padding-top: 3rem;
 }

.map-wrap {
  padding-top: 30px;
}

 /* 首页子菜单最小覆盖，避免影响其他页面 */
 header.top .menu {
   position: relative;
 }

 header.top .menu .menu-item {
   position: relative;
 }

 header.top .menu .menu-item>a {
   display: inline-block;
   padding: 12px 10px;
 }

 header.top .menu .submenu {
   display: none;
   position: absolute;
   top: 100%;
   left: 0;
   background: #fff;
   border: 1px solid #eee;
   border-top: none;
   border-radius: 0 0 8px 8px;
   box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
   min-width: 120px;
   padding: 6px 0;
   margin: 0;
   z-index: 1000;
   overflow: hidden;
 }

 header.top .menu .submenu li {
   list-style: none;
 }

 header.top .menu .submenu a {
   display: block;
   padding: 8px 14px;
   color: #121212;
   white-space: nowrap;
 }

 header.top .menu .submenu a:hover {
   background: #f5f5f5;
   color: #cc9522;
 }

 header.top .menu .menu-item:hover>.submenu {
   display: block;
 }

 header.top .menu .menu-item.has-sub>a::after {
   content: "";
   display: inline-block;
   width: 6px;
   height: 6px;
   border-right: 2px solid #999;
   border-bottom: 2px solid #999;
   transform: rotate(45deg);
   margin-left: 8px;
   transition: transform 0.2s ease, border-color 0.2s ease;
   vertical-align: middle;
 }

 header.top .menu .menu-item>a:hover::after,
 header.top .menu .menu-item>a:focus-visible::after,
 header.top .menu .menu-item>a.active::after,
 header.top .menu .menu-item.open>a::after {
   border-right-color: #cc9522;
   border-bottom-color: #cc9522;
 }

 /* 移动端：与首页现有汉堡联动，不改现有JS，仅样式兜底 */
 @media (max-width: 1024px) {
   header.top .menu {
     position: absolute;
     right: 1rem;
     top: 80px;
     background: #fff;
     border: 1px solid #eee;
     border-radius: 1rem;
     box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
     display: none;
     flex-direction: column;
     padding: 0.83rem;
     width: 18.33rem;
   }

   header.top .nav.open .menu {
     display: flex;
   }

   header.top .menu .menu-item {
     width: 100%;
   }

   header.top .menu .menu-item>a {
     padding: 14px 16px;
     width: 100%;
     border-bottom: 1px solid #eee;
   }

   header.top .menu .submenu {
     position: static;
     display: block;
     border: none;
     border-radius: 0;
     box-shadow: none;
     padding: 6px 0;
     background: #fafafa;
     max-height: 0;
     overflow: hidden;
     opacity: 0;
     transform: translateY(-2px);
     transition: max-height 0.25s ease, opacity 0.2s ease, transform 0.2s ease;
   }

   header.top .menu .menu-item.open>.submenu {
     max-height: 600px;
     opacity: 1;
     transform: translateY(0);
   }

   header.top .menu .submenu a {
     padding: 10px 20px;
   }
 }

 /* 子菜单贴合导航底部，避免覆盖导航底边 */
 header.top .menu .submenu {
   top: calc(100% + 1px);
   border-top: none;
   box-shadow: none;
 }

 /* 无子菜单（无 li）时不显示箭头，覆盖通用 has-sub 规则 */
 header.top .menu .menu-item.has-sub:not(:has(> .submenu li))>a::after {
   content: none;
   border: 0;
   width: 0;
   height: 0;
   margin: 0;
 }