 /* === 基础变量与重置 === */
 :root {
     --primary-blue: #1a3a5f;
     /* 科技深蓝 */
     --accent-orange: #c57b57;
     /* 赭石色 */
     --light-beige: #f5f1e6;
     /* 米白底色 */
     --dark-charcoal: #2a2a2a;
     /* 深灰文字 */
     --space-xl: 6rem;
     --space-lg: 4rem;
     --space-md: 2rem;
     --space-sm: 1rem;
 }

 * {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
 }

 body {
     font-size: 1rem !important;
     background: var(--light-beige);
     overflow-x: hidden;
     color: var(--dark-charcoal);
 }

 .page {
     display: none;
     min-height: 100vh;
     padding-top: 80px;
     /* 为固定导航栏留出空间 */
 }

 /* === 容器 === */
 .section {
     padding: 5rem 0;
     opacity: 0;
     animation: fadeUp 1s ease 0.2s forwards;
 }

 .section-1 {
     padding: var(--space-lg) 0 0 0;
     opacity: 0;
     animation: fadeUp 1s ease 0.2s forwards;
 }

 .section.visible {
     opacity: 1;
     transform: translateY(0);
 }

 .section--white {
     background: white;
 }

 .section-cta {
     background: linear-gradient(rgba(26, 58, 95, 0.9), rgba(26, 58, 95, 0.9)),
         url('../img/cta.jpg');
     background-size: cover;
     background-position: center;
     position: relative;
     color: white;
     text-align: center;
     padding: var(--space-xl) 0;
 }

 .layui-container,
 .nav-container {
     max-width: 1200px;
     margin: 0 auto;
     padding: 0 var(--space-sm);
 }

 .container {
     max-width: 800px;
     margin: 0 auto;
     padding: 0 var(--space-sm);
     text-align: center;
 }

 .nav-container {
     display: flex;
     justify-content: space-between;
     align-items: center;
 }

 .content {
     display: grid;
     gap: 2rem;
     grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
     text-align: center;
 }

 .dimensions-container {
     display: grid;
     gap: 2rem;
     margin-top: var(--space-md);
     grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
 }

 .content-service {
     display: grid;
     gap: 2rem;
     margin-bottom: var(--space-md);
     grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
 }

 .origin-content {
     display: grid;
     gap: 2rem;
     margin-bottom: var(--space-md);
     grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
     align-items: center;
 }

 .filter-section {
     background: white;
     padding: var(--space-md) 0;
     position: sticky;
     top: 68px;
     z-index: 100;
     box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
 }

 .subscribe-section {
     background: white;
     border-radius: 4px;
     padding: var(--space-lg);
     text-align: center;
     box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
 }

 .filter-container {
     display: flex;
     justify-content: center;
     flex-wrap: wrap;
     gap: 1rem;
 }

 .header-content {
     display: flex;
     align-items: center;
     margin-bottom: var(--space-md);
     padding-bottom: var(--space-sm);
     border-bottom: 1px solid rgba(0, 0, 0, 0.1);
 }

 .case-content {
     display: flex;
     justify-content: space-between;
     margin-bottom: 1rem;
     padding: 1rem 0;
     border-top: 1px solid #eee;
     border-bottom: 1px solid #eee;
 }

 .layui-row {
     margin-top: var(--space-md);
     text-align: center;
 }

 .layui-row::before {
     content: none !important;
 }

 /* === 文本 === */
 .banner-title-h1 {
     font-size: 3.5rem;
     margin-bottom: var(--space-sm);
     font-family: "ZCOOL XiaoWei", "Noto Serif SC", serif !important;
     font-weight: 400;
     line-height: 1.2;
     opacity: 0;
     animation: fadeUp 1s ease 0.2s forwards;
 }

 .title-h1,
 .title-h2 {
     font-size: 2.5rem;
     margin-bottom: var(--space-md);
     font-family: "ZCOOL XiaoWei", "Noto Serif SC", serif !important;
     font-weight: 400;
     position: relative;
     text-align: center;
     line-height: 1.2;
     opacity: 0;
     animation: fadeUp 1s ease 0.2s forwards;
 }

 .title-h1 {
     color: white;
 }

 .title-h2 {
     color: var(--primary-blue);
 }

 .title-h1::after {
     content: '';
     display: block;
     width: 60px;
     height: 2px;
     background: var(--accent-orange);
     margin: 0.5rem 0;
 }

 .title-h2::after {
     content: '';
     display: block;
     width: 60px;
     height: 2px;
     background: var(--accent-orange);
     margin: 0.5rem 0;
 }

 .header-title {
     font-size: 2rem;
     color: var(--primary-blue);
     font-family: "ZCOOL XiaoWei", "Noto Serif SC", serif !important;
     font-weight: 400;
 }

 .title-cta {
     font-size: 2rem;
     color: white;
     font-family: "ZCOOL XiaoWei", "Noto Serif SC", serif !important;
     font-weight: 400;
     margin-bottom: var(--space-md);
     position: relative;
     text-align: center;
     line-height: 1.2;
     opacity: 0;
     animation: fadeUp 1s ease 0.2s forwards;
 }

 .icon-name {
     font-weight: 500;
     color: var(--primary-blue);
 }

 .title-h3 {
     font-size: 1.8rem;
     margin-bottom: 1rem;
     color: var(--primary-blue);
     font-family: "ZCOOL XiaoWei", "Noto Serif SC", serif !important;
 }

 .text-value {
     font-size: 1.4rem;
     font-weight: bold;
     color: var(--primary-blue);
 }

 .dimension-title {
     font-size: 1.5rem;
     margin-bottom: 1rem;
     color: var(--primary-blue);
     font-family: "ZCOOL XiaoWei", "Noto Serif SC", serif !important;
 }

 .dimension-subtitle {
     font-size: 1rem;
     margin-bottom: 1.5rem;
     color: var(--accent-orange);
     font-weight: 500;
 }

 .dimension-practice {
     font-size: 0.9rem;
     color: #666;
     border-top: 1px solid #eee;
     padding-top: 1rem;
 }

 .banner-text {
     font-size: 1.2rem;
     margin-bottom: var(--space-md);
     font-weight: 300;
     opacity: 0;
     animation: fadeUp 1s ease 0.5s forwards;
 }

 .label-title {
     font-size: 1.2rem;
     margin-bottom: 1rem;
     color: var(--primary-blue);
     display: -webkit-box;
     -webkit-line-clamp: 1;
     -webkit-box-orient: vertical;
     overflow: hidden;
     text-overflow: ellipsis;
     line-height: 1.5;
 }

 .layui-card-body {
     text-align: left;
     padding: 0 !important;
     display: -webkit-box;
     -webkit-line-clamp: 4;
     -webkit-box-orient: vertical;
     overflow: hidden;
     text-overflow: ellipsis;
     line-height: 1.5;
 }

 .tag {
     font-size: 0.8rem;
     display: inline-block;
     background: var(--accent-orange);
     color: white;
     padding: 0.2rem 0.8rem;
     border-radius: 2px;
     position: absolute;
     top: 1rem;
     left: 1rem;
 }

 .text-left {
     text-align: left;
 }

 .news-tag {
     font-size: 0.8rem;
     display: inline-block;
     color: var(--accent-orange);
     margin-bottom: 0.5rem;
     text-transform: uppercase;
     font-weight: 500;
 }

 .label-sub {
     font-size: 0.8rem;
     color: var(--dark-charcoal);
 }

 .label {
     font-size: 1.1rem;
     margin: 0 auto var(--space-md);
     text-align: center;
     display: -webkit-box;
     -webkit-line-clamp: 5;
     -webkit-box-orient: vertical;
     overflow: hidden;
     text-overflow: ellipsis;
     line-height: 1.5;
 }

 .label-p {
     margin: 0 0 var(--space-sm);
     display: -webkit-box;
     height: calc(5 * 1.6em);
     overflow: hidden;
     text-overflow: ellipsis;
 }

 .label-left {
     margin: 0 0 var(--space-sm);
     text-align: left;
     display: -webkit-box;
     height: calc(3 * 1.5em);
     overflow: hidden;
     text-overflow: ellipsis;
 }

 .label-ul {
     list-style: none;
     font-size: 0.9rem;
     margin-top: 0.8rem;
 }

 .label-ul li {
     margin-bottom: 0.5rem;
     position: relative;
     padding-left: 1.5rem;
 }

 .label-ul li::before {
     content: '✓';
     position: absolute;
     left: 0;
     color: var(--accent-orange);
     font-weight: bold;
 }

 .date-label {
     display: flex;
     align-items: center;
     color: #666;
     font-size: 0.9rem;
     justify-content: space-between;
     margin-bottom: 1rem;
 }

 .margin-top {
     margin-top: 1.5rem;
 }

 /* === banner === */

 .banner-home,
 .banner-page {
     background: linear-gradient(rgba(26, 58, 95, 0.8), rgba(26, 58, 95, 0.6)),
         url('../img/banner.jpg');
     text-align: center;
     color: white;
 }

 .banner-home {
     height: 100vh;
     /* 高度为整个视口高度 */
     display: flex;
     /* 使用flex布局 */
     align-items: center;
     /* 垂直居中 */
     justify-content: center;
     /* 水平居中 */
     position: relative;
     /* 相对定位 */
     margin-top: -80px;
     /* 向上偏移80px */
     overflow: hidden;
     /* 隐藏溢出内容 */
 }

 .banner-page {
     padding: var(--space-xl) 0;
     /* 上下大内边距，左右无 */
     margin-top: 80px;
     /* 向下留出80px空间 */
 }

 /* content-card */

 .layui-card,
 .content-card,
 .dimension-card {
     background: white;
     padding: 2rem !important;
     box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05) !important;
     transition: all 0.3s ease;
 }

 .layui-card:hover,
 .content-card:hover,
 .item:hover {
     box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1) !important;
     transform: translateY(-10px);
 }

 .layui-card:last-child {
     margin-bottom: 15px;
 }

 .content-card {
     border-left: 4px solid var(--accent-orange);
     border-radius: 4px;
     transform: translateY(30px);
     margin-bottom: 0 !important;
 }

 .dimension-card {
     border-top: 4px solid var(--accent-orange);
     border-radius: 4px;
     transform: translateY(30px);
     text-align: center;
 }

 .culture-quote {
     background: white;
     padding: 2rem;
     border-left: 4px solid var(--accent-orange);
     box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
     border-radius: 4px;
     font-family: "ZCOOL XiaoWei", "Noto Serif SC", serif !important;
     font-size: 1.5rem;
     line-height: 1.8;
     color: var(--primary-blue);
     margin: var(--space-md) 0;
 }

 .layui-icon {
     font-size: 2.5rem !important;
     margin-bottom: 1rem;
     display: flex;
     /* 使用flex布局 */
     align-items: center;
     /* 垂直居中 */
     justify-content: center;
     /* 水平居中 */
     position: relative;
     /* 相对定位 */
 }

 .item {
     padding: 0 !important;
     display: -webkit-box;
     -webkit-line-clamp: 4;
     -webkit-box-orient: vertical;
     overflow: hidden;
     text-overflow: ellipsis;
     line-height: 1.5;
     box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05) !important;
     transition: all 0.3s ease;
     background: white;
 }

 .item-label {
     padding: 2rem !important;
 }

 .item-icon {
     text-align: center;
     padding: 1.5rem;
     background: var(--light-beige);
     border-radius: 4px;
     transition: all 0.3s ease;
 }

 .card-content {
     padding: 1.5rem;
 }

 .item-icon:hover {
     transform: translateY(-5px);
     box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
 }

 .text-center {
     text-align: center;
 }

 /* === 按钮组 === */

 .buttons {
     display: flex;
     /* 弹性布局 */
     gap: 1rem;
     /* 按钮之间的间隔为1rem */
     justify-content: center;
     /*水平居中 */
     flex-wrap: wrap;
     /*允许换行 */
     animation: fadeUp 1s ease 0.8s forwards;
     /* 动画：1s时长，缓动函数，延迟0.8秒执行，并保持最终状态 */
     opacity: 0;
     /* 初始透明度为0（完全透明） */
     position: relative;
     /* 相对定位 */
     z-index: 1;
     /* 层级为1 */
 }

 .scroll-indicator {
     position: absolute;
     font-size: 0.9rem;
     bottom: 2rem;
     opacity: 0.7;
     transform: translateX(-50%);
     animation: bounce 2s infinite;
 }

 .scroll-indicator a {
     color: white;
 }

 .view-all-cases {
     text-align: center;
     margin-top: var(--space-md);
 }

 .read-more {
     display: inline-flex;
     color: var(--accent-orange);
     text-decoration: none;
     font-weight: 500;
     align-items: center;
     margin: 0.5rem 0;
 }

 .read-more::after {
     content: '→';
     margin-left: 0.5rem;
     transition: transform 0.3s ease;
 }

 .read-more:hover::after {
     transform: translateX(3px);
 }

 .btn {
     padding: 0.8rem 2rem;
     /* 内边距：上下0.8rem，左右2rem */
     border-radius: 2px;
     /* 圆角2px */
     font-size: 1rem;
     /* 字体大小1rem */
     text-decoration: none;
     /*  无文本装饰（如下划线） */
     box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05) !important;
     transition: all 0.3s ease;
 }

 .btn:hover {
     box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1) !important;
     transform: translateY(-10px);
 }

 .btn-primary {
     background: var(--accent-orange);
     color: white;
 }

 .btn-online {
     background: transparent;
     border: 1px solid var(--primary-blue);
     color: var(--primary-blue);
 }

 .btn-outline {
     background: transparent;
     border: 1px solid white;
     color: white;
 }

 .btn-online a {
     text-decoration: none;
     color: var(--primary-blue);
 }

 .filter-btn {
     padding: 0.5rem 1.5rem;
     background: transparent;
     border: 1px solid var(--primary-blue);
     color: var(--primary-blue);
     border-radius: 2px;
     cursor: pointer;
     transition: all 0.3s ease;
     font-family: inherit;
     text-decoration: none;
 }

 .filter-btn:hover,
 .filter-btn.active {
     background: var(--primary-blue);
     color: white;
 }

 /* 汉堡菜单按钮 */
 .hamburger {
     display: none;
     flex-direction: column;
     justify-content: space-between;
     width: 30px;
     height: 21px;
     background: transparent;
     border: none;
     cursor: pointer;
     padding: 0;
     z-index: 1001;
 }

 .hamburger span {
     display: block;
     height: 3px;
     width: 100%;
     background: #1a3a5f;
     border-radius: 2px;
     transition: all 0.3s ease;
 }

 /* === 图片 === */
 .img-icon {
     font-size: 3rem;
 }

 .img-icon-1 {
     width: 60px;
     margin: 0.5rem;
 }

 .img-icon-2 {
     width: 24px;
     margin: 4px 16px 6px 0;
 }

 .contact-icon {
     margin-right: 1rem;
     font-size: 1.2rem;
     min-width: 20px;
     text-align: center;
 }

 .origin-image {
     display: flex;
     align-items: center;
     justify-content: center;
 }

 .layui-fluid {
     width: 100%;
     min-width: 400px;
     padding: 0 !important;
 }

 .image {
     height: 200px;
     background-size: cover;
     background-position: center;
     position: relative;
 }

 .image-case1 {
     background: url('../img/case1.jpg');
     height: 200px;
     background-size: cover;
     background-position: center;
     position: relative;
 }

 .image-case2 {
     background: url('../img/case2.jpg');
     height: 200px;
     background-size: cover;
     background-position: center;
     position: relative;
 }

 .image-case3 {
     background: url('../img/case3.jpg');
     height: 200px;
     background-size: cover;
     background-position: center;
     position: relative;
 }

 .image-case4 {
     background: url('../img/case4.jpg');
     height: 200px;
     background-size: cover;
     background-position: center;
     position: relative;
 }

 .image-case5 {
     background: url('../img/case5.jpg');
     height: 200px;
     background-size: cover;
     background-position: center;
     position: relative;
 }

 .image-case6 {
     background: url('../img/case6.jpg');
     height: 200px;
     background-size: cover;
     background-position: center;
     position: relative;
 }

 .image-news1 {
     background: url('../img/news1.jpg');
     height: 200px;
     background-size: cover;
     background-position: center;
     position: relative;
 }

 .image-news2 {
     background: url('../img/news2.jpg');
     height: 200px;
     background-size: cover;
     background-position: center;
     position: relative;
 }

 .image-news3 {
     background: url('../img/news3.jpg');
     height: 200px;
     background-size: cover;
     background-position: center;
     position: relative;
 }

 .image-news4 {
     background: url('../img/news4.jpg');
     height: 200px;
     background-size: cover;
     background-position: center;
     position: relative;
 }

 .image-news5 {
     background: url('../img/news5.jpg');
     height: 200px;
     background-size: cover;
     background-position: center;
     position: relative;
 }

 .image-news6 {
     background: url('../img/news6.jpg');
     height: 200px;
     background-size: cover;
     background-position: center;
     position: relative;
 }

 /* === 订阅区域 === */

 .subscribe-form {
     display: flex;
     max-width: 500px;
     margin: 0 auto;
 }

 .subscribe-input {
     flex: 1;
     padding: 0.8rem;
     border: 1px solid #ddd;
     border-radius: 2px 0 0 2px;
     font-family: inherit;
     font-size: 1rem;
 }

 .subscribe-btn {
     padding: 0.8rem 1.5rem;
     background: var(--accent-orange);
     color: white;
     border: none;
     border-radius: 0 2px 2px 0;
     cursor: pointer;
     font-family: inherit;
     font-size: 1rem;
     transition: all 0.3s ease;
 }

 .subscribe-btn:hover {
     background: #b3694a;
 }

 /* ==== 表单 ===  */

 .contact-info {
     background: white;
     border-radius: 4px;
     padding: 2rem;
     box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
 }

 .contact-item {
     margin-bottom: 1.5rem;
     display: flex;
     align-items: flex-start;
 }

 .contact-text {
     flex: 1;
     text-align: left;
 }

 .contact-label {
     color: var(--primary-blue);
     margin-bottom: 0.2rem;
     font-weight: 500;
 }

 .contact-value {
     color: var(--dark-charcoal);
 }

 .form-label {
     display: block;
     color: var(--primary-blue);
     margin-bottom: 0.5rem;
     font-weight: 500;
 }

 .form-control {
     width: 100%;
     margin-bottom: 0.8rem;
     padding: 0.5rem;
     border: 1px solid #ddd;
     border-radius: 4px;
     font-family: inherit;
     font-size: 1rem;
     transition: border-color 0.3s ease;
 }

 .form-control:focus {
     outline: none;
     border-color: var(--accent-orange);
 }

 .form-primary {
     padding: 0.8rem 2rem;
     border-radius: 2px;
     background: var(--accent-orange);
     color: white;
     width: 100%;
     border: none
 }

 /* === 地图区域 === */

 .map-container {
     height: 400px;
     border-radius: 4px;
     overflow: hidden;
     box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
     margin-top: var(--space-md);
 }

 .map-placeholder {
     height: 100%;
     display: flex;
     align-items: center;
     justify-content: center;
     background: var(--light-beige);
     color: var(--primary-blue);
     font-size: 1.2rem;
 }

 .map-text {
     font-size: 1rem;
     margin-top: 0.5rem;
     opacity: 0.7;
 }

 /* === FAQ区域 === */
 .faq-item {
     margin-bottom: 1.5rem;
     border: 1px solid #eee;
     border-radius: 4px;
     overflow: hidden;
 }

 .faq-question {
     padding: 1.5rem;
     background: var(--light-beige);
     cursor: pointer;
     display: flex;
     justify-content: space-between;
     align-items: center;
     font-weight: 500;
     color: var(--primary-blue);
 }

 .faq-answer {
     padding: 0 1.5rem;
     max-height: 0;
     overflow: hidden;
     transition: max-height 0.3s ease, padding 0.3s ease;
     text-align: left;
 }

 .faq-text {
     margin-left: 1.5rem;
     margin-top: 0.5rem;
     margin-bottom: 1.5rem;
 }

 .faq-item.active .faq-answer {
     padding: 1.5rem;
     max-height: 500px;
 }

 .faq-toggle {
     font-size: 1.2rem;
     transition: transform 0.3s ease;
 }

 .faq-item.active .faq-toggle {
     transform: rotate(45deg);
 }

 /* ===导航栏 === */

 .navbar {
     position: fixed;
     top: 0;
     width: 100%;
     background: #ffffff;
     backdrop-filter: blur(10px);
     z-index: 1000;
     padding: 1rem 0;
     border-bottom: 1px solid rgba(0, 0, 0, 0.05);
 }

 .nav-menu {
     display: flex;
     list-style: none;
     gap: 3rem;
 }

 .logo {
     font-family: "ZCOOL XiaoWei", "Noto Serif SC", serif !important;
     font-size: 2rem;
     font-weight: bold;
     color: var(--primary-blue);
     text-decoration: none;
     display: flex;
     align-items: center;
 }

 .footer-logo {
     text-decoration: none;
     display: flex;
     align-items: center;
     padding-bottom: 20px;
 }

 .logo-img-name {
     color: white;
     font-family: "ZCOOL XiaoWei", "Noto Serif SC", serif !important;
     font-size: 2rem;
     font-weight: bold;
 }

 .logo-img {
     width: 36px;
     margin-right: 6px;
 }

 /* 当前选中项样式 */
 .layui-nav-item.layui-this a {
     color: var(--accent-orange) !important;
     background: transparent !important;
 }

 .layui-nav-item.layui-this::after {
     background: var(--accent-orange) !important;
     content: '';
     position: relative;
     bottom: -5px;
     display: block;
     height: 2px;
 }

 .nav-link {
     text-decoration: none;
     color: var(--primary-blue);
     font-weight: 500;
     transition: color 0.3s ease;
     position: relative;
     display: flex;
 }

 .nav-link:hover {
     color: #c57b57;
 }

 .nav-link::after {
     content: '';
     position: absolute;
     bottom: -7px;
     left: 0;
     width: 0;
     height: 2px;
     background: #c57b57;
     transition: width 0.3s ease;
 }

 .nav-link:hover::after {
     width: 100%;
 }

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

 .footer {
     background: var(--primary-blue);
     color: white;
     padding: var(--space-lg) 0;
 }

 .footer-content {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
     gap: 2rem;
 }

 .footer-text {
     padding: 0 0 4px 0;
 }



 .footer-links {
     list-style: none;
     padding: 4px;
 }

 .footer-links li {
     margin-bottom: 0.5rem;
 }

 .footer-links a {
     color: rgba(255, 255, 255, 0.7);
     text-decoration: none;
     transition: color 0.3s ease;
 }

 .footer-links a:hover {
     color: white;
 }

 .footer-quote {
     font-family: "ZCOOL XiaoWei", "Noto Serif SC", serif !important;
     font-size: 1.2rem;
     line-height: 1.8;
     opacity: 0.8;
 }

 .copyright {
     text-align: center;
     margin-top: var(--space-md);
     padding-top: var(--space-md);
     border-top: 1px solid rgba(255, 255, 255, 0.1);
     color: rgba(255, 255, 255, 0.6);
     font-size: 0.9rem;
 }

 .copyright a {
     color: rgba(255, 255, 255, 0.6);
 }

 /* === 动画定义 === */
 @keyframes fadeUp {
     from {
         opacity: 0;
         transform: translateY(10px);
     }

     to {
         opacity: 1;
         transform: translateY(0);
     }
 }

 @keyframes bounce {

     0%,
     20%,
     50%,
     80%,
     100% {
         transform: translateY(0);
     }

     40% {
         transform: translateY(-10px);
     }

     60% {
         transform: translateY(-5px);
     }
 }

 /* === 响应式设计 === */
 @media (max-width: 768px) {
     :root {
         --space-xl: 4rem;
         --space-lg: 3rem;
         --space-md: 1.5rem;
     }

     .section {
         padding: 2rem 0;
     }

     .banner-title-h1 {
         font-size: 2.5rem;
     }

     .content {
         display: grid;
         grid-template-columns: 1fr;
         display: grid;
     }

     .quote-text {
         font-size: 1.2rem;
     }

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

     .header-content {
         flex-direction: column;
         text-align: center;
     }

     .img-icon {
         margin-right: 0;
         margin-bottom: 1rem;
     }

     .content-service {
         grid-template-columns: 1fr;
         margin-bottom: 1rem;
     }

     .map-container {
         height: 300px;
     }

     .hamburger {
         display: flex;
     }

     .layui-nav {
         position: fixed;
         top: 0;
         right: -100%;
         width: 80%;
         height: 100vh;
         background: white;
         flex-direction: column;
         justify-content: center;
         align-items: center;
         gap: 2rem;
         transition: right 0.4s ease;
         box-shadow: -5px 0 15px rgba(0, 0, 0, 0.1);
         z-index: 999;
     }

     .layui-nav.active {
         right: 0;
     }

     .layui-nav-item a {
         font-size: 1.2rem;
         padding: 0.5rem 0;
     }

     .nav-menu {
         position: fixed;
         top: 0;
         right: -100%;
         width: 50%;
         height: 100vh;
         background: white;
         flex-direction: column;
         align-items: center;
         gap: 2rem;
         transition: right 0.4s ease;
         box-shadow: -5px 0 15px rgba(0, 0, 0, 0.1);
         z-index: 999;
         padding-top: 80px;
     }

     .nav-menu.active {
         right: 0;
     }

     .nav-link {
         font-size: 1.2rem;
         padding: 0.5rem 0;
         color: var(--primary-blue);
     }

     .item {
         display: -webkit-box;
         -webkit-line-clamp: 3;
         -webkit-box-orient: vertical;
         overflow: hidden;
         text-overflow: ellipsis;
         line-height: 1.5;
     }

     /* 汉堡菜单动画 */
     .hamburger.active span:nth-child(1) {
         transform: translateY(9px) rotate(45deg);
     }

     .hamburger.active span:nth-child(2) {
         opacity: 0;
     }

     .hamburger.active span:nth-child(3) {
         transform: translateY(-9px) rotate(-45deg);
     }

     /* 遮罩层 */
     .overlay {
         position: fixed;
         top: 0;
         left: 0;
         width: 100%;
         height: 100%;
         background: rgba(0, 0, 0, 0.5);
         opacity: 0;
         visibility: hidden;
         transition: all 0.3s ease;
         z-index: 998;
     }

     .overlay.active {
         opacity: 1;
         visibility: visible;
     }
 }

 /* === 浏览器兼容性前缀 === */
 @-moz-document url-prefix() {

     /* Firefox专属修复 */
     .hamburger span {
         transform: translateZ(0);
         /* 触发GPU加速 */
     }
 }

 @media all and (-ms-high-contrast: none),
 (-ms-high-contrast: active) {

     /* Edge/IE专属修复 */
     .nav-menu {
         -ms-overflow-style: none;
         /* 隐藏Edge滚动条 */
     }
 }

 /* 全局渲染优化 */
 * {
     -webkit-font-smoothing: antialiased;
     /* 优化字体渲染 */
     -moz-osx-font-smoothing: grayscale;
     text-rendering: optimizeLegibility;
 }

 /* 修复Firefox的flex布局问题 */
 @supports (display: -ms-grid) {
     .nav-container {
         display: block !important;
     }
 }
