:root {
  --theme-main: #166D5B;  /* 新品牌主色 - 提取自新 Logo 的中等深绿色 */
  --theme-light: #7dc99b; /* 新辅助亮色 - 提取自新 Logo 图形最亮区域 */
  --theme-bg: #F0F7F5;    /* 新极浅背景 - 基于新主色调配的极浅灰绿色 */
  --theme-dark: #104C3F;  /* 新深色调 - 基于新主色加深，用于按钮悬浮等 */
  --text-dark: #1c1917;   /* 保持不变 */
  --text-gray: #6b7280;   /* 保持不变 */
  --shadow: 0 10px 30px rgba(0,0,0,0.05);
  --radius-lg: 24px;
}
body {
    margin: 0;
    color: rgba(0, 0, 0, .85);
    font-size: 14px;
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
    font-variant: tabular-nums;
    line-height: 1.5715;
    font-feature-settings: "tnum", "tnum";
    background: #fafaf9;
}
body, html {
    width: 100%;
    height: 100%;
}
blockquote, body, button, dd, div, dl, dt, fieldset, form, h1, h2, h3, h4, h5, h6, input, li, ol, p, pre, td, textarea, th, ul {
    padding: 0;
    margin: 0;
}
a, body, button, html, input, optgroup, select, textarea {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    text-decoration: none;
}
*, ::after, ::before {
    box-sizing: border-box;
    border-width: 0;
    border-style: solid;
    border-color: #e5e7eb;
}
a {
    color: inherit;
    text-decoration: inherit;
}
img{max-width: 100%;vertical-align: middle;}
.js-layt{max-width: 1200px;margin: 0 auto;padding: 0 20px;}
/*header*/
header{ position: fixed; top: 0; width: 100%; height: 80px; z-index: 100; background: rgba(255,255,255,0.85); backdrop-filter: blur(12px); border-bottom: 1px solid rgba(0,0,0,0.05); transition: 0.3s; }
.header{max-width: 75rem;margin-left: auto;margin-right: auto;}
.js-mbox{height: 5rem;align-items: center;display: flex;justify-content: space-between;}
.js-logo img{height: 45px;margin-right: 1rem;}
.js-logo a{color: var(--theme-main);display: flex;align-items: center;}
.js-logo span{color: var(--theme-main);font-size: 16px;font-weight: 700;}
.js-logo em{display: block;font-size: 12px;}

.js-mlist{display: flex;align-items: center;list-style: none;}
.js-mlist a{margin-left: 2rem;}
.js-rind{display: flex;
    align-items: center;
    gap: 0.75rem;
    background: var(--theme-main);
    padding: 0.5rem;
    border-radius: 0.5rem;}
.js-rind span{color: #fff;
    border: 1px #fff solid;
    border-radius: 50px;
    padding: 5px;}
.js-rind a{color: #fff;
    font-size: 1rem;
    line-height: 1.25rem;
    font-weight: 600;}
/*banner*/
.js-bnne{ position: relative; background: var(--theme-bg); padding: 160px 0 100px; overflow: hidden; }
.js-bnne::before { content: ""; position: absolute; top: -50px; right: -50px; width: 400px; height: 400px; background: rgba(220, 252, 231, 0.6); border-radius: 50%; filter: blur(60px); pointer-events: none; z-index: 1; }
.plant{ display: flex; align-items: center; gap: 60px; position: relative; z-index: 10; }
.js-fixa {display: none;}
/* 右侧文字（保持不变） */
.bn-content{flex: 1;}
.bn-content h1 {font-size: 56px; line-height: 1.2; margin-bottom: 24px; letter-spacing: -1px;  }
.bn-content h1 span{background: linear-gradient(to right, var(--theme-main), #34d399); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.bn-content p { font-size: 18px; color: var(--text-gray); margin-bottom: 40px; max-width: 500px;  }
.bn-over{ display: flex; gap: 16px;}
.join-btn {background: var(--theme-main); color: #fff; padding: 16px 32px; border-radius: 50px; font-size: 18px; font-weight: bold; box-shadow: 0 10px 20px rgba(22, 163, 74, 0.3); transition: 0.3s; }
.join-btn:hover {background: var(--theme-light); transform: translateY(-3px);}
.see-btn{background: #fff; padding: 16px 32px; border-radius: 50px; font-size: 18px; font-weight: bold; border: 1px solid #e5e7eb; transition: 0.3s;  }
.see-btn:hover{background: #f9fafb;}
.bn-topline{display: inline-flex; align-items: center; padding: 6px 16px; background: #fff; border-radius: 50px; color: var(--theme-main); font-size: 14px; font-weight: bold; margin-bottom: 24px; border: 1px solid #dcfce7;}
.bn-topline span{width: 8px; height: 8px; background-color: var(--theme-light); border-radius: 50%; margin-right: 8px; animation: pulse 2s infinite;}
.bn-images{flex: 1; position: relative;}
.bn-images::before {  content: ""; position: absolute; inset: 0; background-color: #dcfce7; border-radius: 48px; transform: rotate(3deg) scale(1.05); opacity: 0.6; z-index: 0; }
.bn-images img{position: relative; z-index: 10; border-radius: 48px; box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25); height: auto; width: 100%;  }
.js-bard { position: absolute; bottom: 40px; left: -40px; z-index: 20; background: rgba(255, 255, 255, 0.9); backdrop-filter: blur(8px); padding: 16px 24px; border-radius: 16px; box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1); display: flex; align-items: center; gap: 16px; animation: bounce 3s infinite; }
.js-bard .icon { width: 48px; height: 48px; background: var(--theme-bg); border-radius: 50%; display: flex; justify-content: center; align-items: center; color: var(--theme-main); }
.js-bard .icon svg { width: 24px; height: 24px; }
.js-bard h4 { font-size: 20px; margin-bottom: 0; line-height: 1; }
.js-bard p { font-size: 14px; color: var(--text-gray); margin-bottom: 0; }
/*SEVE*/
.js-seve { margin-top: -40px; position: relative; z-index: 30; display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.js-seve .js-soxs { background: #fff; padding: 30px; border-radius: var(--radius-lg); box-shadow: var(--shadow); display: flex; align-items: center; gap: 24px; transition: 0.3s; border: 1px solid #f9fafb; }
.js-seve .js-soxs:hover { transform: translateY(-5px); box-shadow: 0 20px 40px rgba(0,0,0,0.08); }
.js-seve .icon { width: 64px; height: 64px; background: #eff6ff; border-radius: 16px; display: flex; justify-content: center; align-items: center; color: #3b82f6; }
.js-seve .icon svg { width: 32px; height: 32px; }
.js-seve .js-soxs:nth-child(2) .icon { background: var(--theme-bg); color: var(--theme-main); }
.js-seve h3 { font-size: 20px; margin-bottom: 4px; }
.js-seve p { color: var(--text-gray); font-size: 15px; }
/*Mdule2*/
.js-plants{padding: 100px 0;}
.js-title{text-align: center;margin-bottom: 60px;}
.js-title h2 { font-size: 36px; margin-bottom: 15px; font-weight: bold; }
.js-title .line { width: 64px; height: 4px; background: var(--theme-main); margin: 0 auto; border-radius: 2px; }
.js-title p { margin-top: 15px; color: var(--text-gray); font-size: 16px; }
/*case*/
.cases-list{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; list-style: none;}
.cases-item { background: #fff; padding: 16px; border-radius: var(--radius-lg); border: 1px solid #f3f4f6; transition: 0.3s; cursor: pointer; }
.cases-item .js-poxs { height: 300px; overflow: hidden; border-radius: 16px; margin-bottom: 16px; position: relative; background: #f9fafb; }
.cases-list img { width: 100%; height: 100%; transition: 0.6s cubic-bezier(0.16, 1, 0.3, 1); object-fit: cover;}
.cases-item:hover img { transform: scale(1.08); }
.cases-item .tag { position: absolute; top: 12px; left: 12px; background: rgba(255,255,255,0.9); backdrop-filter: blur(4px); padding: 4px 8px; border-radius: 4px; font-size: 12px; font-weight: bold; color: var(--theme-main); }
.cases-item h4 { font-size: 18px; display: flex; justify-content: space-between; align-items: center; padding: 0 8px; }
.cases-item h4 span { color: #d1d5db; transition: 0.3s; }
.cases-item:hover h4 span { color: var(--theme-main); transform: translateX(5px); }
/*anli*/
.js-anli { padding: 80px 0 120px; background: #fff; }
.plans-list { display: grid; grid-template-columns: repeat(3, 1fr); grid-auto-rows: 250px; gap: 24px; }
.plans-item{ position: relative; border-radius: 24px; overflow: hidden; cursor: pointer; }
.plans-item:hover img { transform: scale(1.05); }
.plans-item img{ width: 100%; height: 100%; transition: 0.7s ease;object-fit:cover; }
.plans-item .overlay { position: absolute; bottom: 0; left: 0; width: 100%; padding: 30px; background: linear-gradient(to top, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.2) 70%, transparent 100%); color: #fff; }
.plans-item h3 { font-size: 22px; margin-top: 10px; font-weight: bold; }
.plans-item .tag { background: var(--theme-main); padding: 4px 12px; border-radius: 20px; font-size: 12px; font-weight: bold; }
.plans-item:nth-child(1) { grid-column: span 1; grid-row: span 2; }
.plans-item:nth-child(2) { grid-column: span 2; grid-row: span 1; }
.plans-item:nth-child(3) { grid-column: span 1; grid-row: span 1; }
.plans-item:nth-child(4) { grid-column: span 1; grid-row: span 1; }
/*合作*/
.js-abot{position: relative; padding: 120px 0; background: var(--theme-dark); color: #fff; }
.js-abot::before { content: ""; position: absolute; inset: 0; background: url('https://images.unsplash.com/photo-1466692476868-aef1dfb1e735?auto=format&fit=crop&q=80&w=2000') center/cover fixed; opacity: 0.2; mix-blend-mode: multiply; }
.js-aard { position: relative; z-index: 10; background: rgba(255,255,255,0.1); backdrop-filter: blur(12px); border: 1px solid rgba(255,255,255,0.2); border-radius: 48px; padding: 60px; max-width: 900px; margin: 0 auto; }
.js-aard h2 { font-size: 44px; margin: 20px 0; line-height: 1.3; }
.js-sats { display: flex; gap: 24px; margin-top: 40px; }
.stat { flex: 1; background: #fff; color: var(--text-dark); border-radius: 20px; padding: 30px; text-align: center; box-shadow: 0 10px 30px rgba(0,0,0,0.2); transition: 0.3s; }
.stat:hover { transform: translateY(-5px); }
.stat h4 { font-size: 40px; color: var(--theme-main); margin-bottom: 10px; font-weight: 800; }
/*pater*/
.js-Partner ul{list-style: none;display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; margin-top: 50px;}
.js-Partner ul li{ opacity: 0.6; filter: grayscale(100%); transition: 0.5s; align-items: center;}
.js-Partner ul li:hover { filter: grayscale(0%); opacity: 1; }
/*CONTACT*/
.js-contact{padding: 80px 0;background: var(--theme-bg);}
.js-conx{background: var(--theme-main); color: #fff; padding: 50px; border-radius: 32px; display: flex; justify-content: space-between; align-items: center; gap: 40px; position: relative; overflow: hidden; box-shadow: 0 25px 50px -12px rgba(22, 163, 74, 0.4);}
.js-conx::after { content: ""; position: absolute; right: -50px; top: -50px; width: 300px; height: 300px; border-radius: 50%; border: 40px solid rgba(255,255,255,0.1); pointer-events: none; }
.js-conx h2 { font-size: 32px; margin-bottom: 10px; position: relative; z-index: 10; }
.js-conx p { color: var(--theme-bg); position: relative; z-index: 10; }
.rsform{width: 58.333333%;}
/*news*/
.js-news{padding: 80px 20px;background-color: #ffffff;}
.news-list{display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));gap: 30px;}
.news-list li{background: #fff;
        border-radius: 24px;
        overflow: hidden;
        border: 1px solid #f3f4f6;
        transition: all 0.3s ease;
        text-decoration: none;
        display: flex;
        flex-direction: column;
        box-shadow: 0 4px 20px rgba(0,0,0,0.02);}
.news-list li:hover{transform: translateY(-8px);
        box-shadow: 0 12px 30px rgba(0,0,0,0.08);}
.news-img{position: relative;
        width: 100%;
        height: 200px;
        overflow: hidden;}
.news-img img{width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.5s ease;}
.news-list li:hover:hover .news-img img {
        transform: scale(1.1);
    }
.news-tag {
        position: absolute;
        top: 15px;
        left: 15px;
        background: rgba(255,255,255,0.9);
        color: #21b2b7;
        padding: 4px 12px;
        border-radius: 50px;
        font-size: 12px;
        font-weight: bold;
        backdrop-filter: blur(4px);
    }

.js-noxs{ padding: 25px;
        flex-grow: 1;
        display: flex;
        flex-direction: column;}
.news-date{ font-size: 13px;
        color: #9ca3af;
        margin-bottom: 10px;
        display: flex;
        align-items: center;
        gap: 5px;}
.js-noxs h3{font-size: 18px;
        font-weight: bold;
        color: #1c1917;
        margin-bottom: 12px;
        line-height: 1.4;}
.news-list li:hover .js-noxs h3 {
        color: #21b2b7;
    }
.js-noxs p{ font-size: 14px;
        color: #6b7280;
        line-height: 1.6;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        margin-bottom: 20px;}
/*foot*/
.footer{ background: #fff; padding: 40px 0; border-top: 1px solid #f3f4f6; }
.footer .js-layt{ display: flex; justify-content: space-between; align-items: center; color: var(--text-gray); font-size: 14px; }
.footer .f-logo{ font-weight: bold; color: var(--text-dark); display: flex; align-items: center; gap: 8px; }
.footer .f-logospan { background: var(--theme-bg); color: var(--theme-main); width: 24px; height: 24px; display: inline-flex; justify-content: center; align-items: center; border-radius: 4px; }

@media (min-width: 992px) {
    .mobile-nav-btn { display: none; } 
     #js-mobile-drawer{display: none;} 
}

@media (max-width: 991px) {
    .js-menu, .js-find { display: none !important; }
    .js-mbox {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 10px 20px;
    }
    .mobile-nav-btn {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        width: 28px; height: 18px;
        cursor: pointer;
        z-index: 2000;
    }
    .mobile-nav-btn span {
        width: 100%; height: 2px;
        background-color: var(--theme-main); 
        transition: 0.3s;
    }
    #js-mobile-drawer {
        position: fixed;
        top: 0; right: -100%;
        width: 75%; height: 100vh;
        background: #fff;
        z-index: 1999;
        padding: 80px 30px;
        box-shadow: -10px 0 30px rgba(0,0,0,0.05);
        transition: 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        border-radius: 32px 0 0 32px;
    }
    #js-mobile-drawer.active { right: 0; }
    #js-mobile-drawer ul { list-style: none; padding: 0; margin: 0; }
    #js-mobile-drawer li { border-bottom: 1px solid #f5f5f5; }
    #js-mobile-drawer li a {
        display: block; padding: 15px 0;
        color: #1c1917; font-size: 16px; text-decoration: none;
    }
    #js-mobile-drawer li.active a { color: var(--theme-main); font-weight: bold; }
    .mobile-nav-btn.open span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
    .mobile-nav-btn.open span:nth-child(2) { opacity: 0; }
    .mobile-nav-btn.open span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
    
    .drawer-overlay {
        position: fixed; top: 0; left: 0; width: 100%; height: 100%;
        background: rgba(0,0,0,0.4); z-index: 1998; display: none;
    }
}

@media (max-width: 768px) {
            .nav-links { display: none; }
            .js-bnne .js-layt, .js-conx { flex-direction: column; text-align: center; }
            .bn-content h1 { font-size: 40px; }
            .bn-content p { margin: 0 auto 40px; }
            .bn-over { justify-content: center; }
            .js-bard { left: 20px; bottom: 20px; }
            .js-seve { grid-template-columns: 1fr; }
            .cases-list{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem;}
            .cases-item .js-poxs{height: auto;}
            .plans-grid {grid-template-columns: 2fr; grid-auto-rows: 200px; }
            .plans-item:nth-child(1), .plans-item:nth-child(2) { grid-column: span 1; grid-row: span 1; }
            .js-sats, .formSpan12, footer .js-layt { flex-direction: column; gap: 20px; }
   .js-Partner ul { grid-template-columns: repeat(2, 1fr); }
   .rsform{width: 100%;}.rsform-block{width: 100%;}
   .js-fixa{display: flex;
    position: fixed;
    bottom: 20px; /* 悬浮效果更高级 */
    left: 15px;
    right: 15px;
    background: rgba(255, 255, 255, 0.8) !important;
    backdrop-filter: blur(10px); /* 毛玻璃 */
    border-radius: 50px; /* 胶囊形状 */
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
    overflow: hidden;
    padding: 8px;
    z-index: 999;}
   .js-fixa a{flex: 1;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-weight: bold;
    font-size: 16px;
    transition: 0.3s;
    border-radius: 40px;}
.js-fixp{color: var(--theme-main);
    background: transparent;}
.js-fixf{background: var(--theme-main) !important;
    color: #fff !important;
    box-shadow: 0 4px 15px rgba(33, 178, 183, 0.3);}
.js-fixp::before,.js-fixf::before{ margin-right: 8px !important; font-size: 14px; }
}