:root{
  --green:#0b6b57;
  --green-2:#0f8f73;
  --green-dark:#043b3b;
  --teal:#20b8a6;
  --mint:#ddf8ed;
  --leaf:#83c95f;
  --blue:#143c59;
  --blue-2:#0d617a;
  --gold:#f2b84b;
  --cream:#fbf7ed;
  --paper:#fffffb;
  --ink:#102a32;
  --ink-soft:#2e4d56;
  --muted:#6e838b;
  --line:rgba(14,107,87,.14);
  --white:#fff;
  --radius:28px;
  --radius-sm:18px;
  --shadow-sm:0 10px 30px rgba(4,59,59,.10);
  --shadow:0 24px 70px rgba(4,59,59,.16);
  --shadow-lg:0 34px 110px rgba(4,59,59,.22);
  --ease:cubic-bezier(.22,1,.36,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;text-size-adjust:100%;-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;
  color:var(--ink);
  background:
    radial-gradient(1000px 520px at 86% -12%,rgba(32,184,166,.18),transparent 60%),
    radial-gradient(900px 520px at -10% 18%,rgba(131,201,95,.18),transparent 58%),
    linear-gradient(180deg,#fffef9 0%,#f3faf4 45%,#fff 100%);
  line-height:1.78;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-2;
  opacity:.45;
  background-image:
    linear-gradient(rgba(11,107,87,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(11,107,87,.045) 1px,transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),rgba(0,0,0,.25) 52%,transparent);
}
body::after{
  content:"";
  position:fixed;
  width:520px;height:520px;
  right:-210px;bottom:-220px;
  z-index:-1;pointer-events:none;
  background:radial-gradient(circle,rgba(242,184,75,.20),transparent 65%);
  filter:blur(4px);
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
::selection{background:rgba(32,184,166,.22);color:var(--green-dark)}
.container{width:min(1180px,92vw);margin-inline:auto}

/* 顶部导航 */
.site-header{
  position:sticky;top:0;z-index:80;
  background:rgba(255,255,255,.72);
  backdrop-filter:saturate(175%) blur(22px);
  -webkit-backdrop-filter:saturate(175%) blur(22px);
  border-bottom:1px solid rgba(11,107,87,.10);
  box-shadow:0 1px 0 rgba(255,255,255,.55) inset;
  transition:box-shadow .35s var(--ease),background .35s var(--ease),transform .35s var(--ease);
}
.site-header.is-scrolled{background:rgba(255,255,255,.88);box-shadow:0 18px 50px rgba(4,59,59,.10)}
.nav-wrap{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px;transition:height .35s var(--ease)}
.site-header.is-scrolled .nav-wrap{height:68px}
.brand{display:flex;align-items:center;position:relative;z-index:91}
.brand img{height:50px;width:auto;filter:drop-shadow(0 8px 18px rgba(4,59,59,.08));transition:height .35s var(--ease),transform .35s var(--ease)}
.site-header.is-scrolled .brand img{height:42px}
.brand:hover img{transform:translateY(-1px)}
.site-nav{display:flex;align-items:center;gap:6px}
.nav-link{
  position:relative;display:inline-flex;align-items:center;justify-content:center;
  min-height:42px;padding:0 15px;border-radius:999px;
  font-size:15px;font-weight:760;color:#203d45;
  transition:color .25s var(--ease),background .25s var(--ease),transform .25s var(--ease);
  overflow:hidden;
}
.nav-link::before{
  content:"";position:absolute;inset:8px 9px;border-radius:999px;
  background:linear-gradient(135deg,rgba(32,184,166,.15),rgba(131,201,95,.16));
  opacity:0;transform:scale(.82);transition:.28s var(--ease);z-index:-1;
}
.nav-link:hover,.nav-link.active{color:var(--green-dark);transform:translateY(-1px)}
.nav-link:hover::before,.nav-link.active::before{opacity:1;transform:scale(1)}
.menu-toggle{display:none;appearance:none;background:rgba(11,107,87,.07);border:1px solid rgba(11,107,87,.12);width:46px;height:46px;border-radius:15px;cursor:pointer;position:relative;z-index:91;transition:.25s var(--ease)}
.menu-toggle:hover{background:rgba(11,107,87,.12);transform:translateY(-1px)}
.menu-toggle span{display:block;width:23px;height:2px;background:var(--green-dark);margin:5px auto;border-radius:999px;transition:.28s var(--ease)}
.menu-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle.is-open span:nth-child(2){opacity:0;transform:scaleX(.3)}
.menu-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* 进度条与悬浮控件 */
.scroll-progress{position:fixed;left:0;top:0;height:3px;width:0;background:linear-gradient(90deg,var(--teal),var(--leaf),var(--gold));z-index:200;box-shadow:0 0 18px rgba(32,184,166,.45)}
.back-to-top{
  position:fixed;right:22px;bottom:24px;width:48px;height:48px;border:0;border-radius:50%;z-index:75;cursor:pointer;
  background:linear-gradient(135deg,var(--green-dark),var(--green-2));color:#fff;font-size:22px;font-weight:900;
  box-shadow:0 18px 36px rgba(4,59,59,.25);opacity:0;transform:translateY(14px) scale(.9);pointer-events:none;transition:.28s var(--ease)
}
.back-to-top.show{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}
.back-to-top:hover{transform:translateY(-3px) scale(1.02)}

/* Hero */
.page-hero{
  min-height:430px;display:grid;place-items:center;position:relative;overflow:hidden;color:#fff;
  isolation:isolate;
  background:
    radial-gradient(640px 360px at 75% 18%,rgba(242,184,75,.22),transparent 62%),
    radial-gradient(560px 360px at 10% 10%,rgba(131,201,95,.24),transparent 60%),
    linear-gradient(135deg,#043b3b 0%,#075f54 48%,#0f8f73 100%);
  background-size:cover;background-position:center;
}
.page-hero[style*="background-image"]{background-blend-mode:multiply,normal;background-size:cover;background-position:center}
.page-hero::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:
    linear-gradient(110deg,rgba(3,32,37,.72),rgba(4,59,59,.42) 45%,rgba(15,143,115,.30)),
    url("data:image/svg+xml,%3Csvg width='120' height='120' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='rgba(255,255,255,.16)' stroke-width='1'%3E%3Cpath d='M0 60h120M60 0v120'/%3E%3Ccircle cx='60' cy='60' r='28'/%3E%3C/g%3E%3C/svg%3E");
  background-size:auto,120px 120px;
}
.page-hero::after{
  content:"";position:absolute;left:-8%;right:-8%;bottom:-120px;height:230px;
  background:linear-gradient(180deg,rgba(255,255,255,.20),rgba(255,255,255,.02));
  border-radius:50% 50% 0 0;filter:blur(.2px);z-index:-1;
}
.hero-content{position:relative;z-index:1;padding:94px 0 104px}
.hero-content::after{
  content:"";position:absolute;width:150px;height:150px;right:0;top:66px;border-radius:42px;
  border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);backdrop-filter:blur(8px);
  transform:rotate(16deg);pointer-events:none;animation:floaty 7s ease-in-out infinite;
}
.badge{
  display:inline-flex;align-items:center;gap:.55em;padding:9px 16px;border-radius:999px;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);
  box-shadow:0 16px 46px rgba(0,0,0,.12) inset,0 18px 38px rgba(0,0,0,.08);
  font-weight:760;letter-spacing:.08em;backdrop-filter:blur(12px);
}
.badge::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 6px rgba(242,184,75,.16)}
.page-hero h1{font-size:clamp(40px,7vw,82px);line-height:1.04;margin:22px 0 16px;letter-spacing:-.055em;max-width:900px;text-shadow:0 18px 52px rgba(0,0,0,.24)}
.eyebrow{font-size:clamp(13px,1.8vw,19px);text-transform:uppercase;letter-spacing:.28em;color:#ddfff0;margin:0 0 4px;font-weight:760}
.hero-subtitle{max-width:780px;font-size:clamp(16px,2.1vw,20px);color:#effff8;text-shadow:0 10px 28px rgba(0,0,0,.22)}

/* 通用区块 */
.section{padding:88px 0;position:relative}
.section.alt{background:linear-gradient(180deg,rgba(240,249,242,.74),rgba(255,255,255,.16));border-block:1px solid rgba(11,107,87,.06)}
.section-title{margin-bottom:36px;position:relative}
.section-title span{display:inline-flex;align-items:center;gap:10px;color:var(--green);font-weight:850;letter-spacing:.18em;text-transform:uppercase;font-size:13px}
.section-title span::before{content:"";width:28px;height:2px;background:linear-gradient(90deg,var(--teal),var(--leaf));border-radius:999px}
.section-title h2{font-size:clamp(29px,4vw,50px);line-height:1.12;margin:10px 0 0;letter-spacing:-.035em;color:#0e3038}
p{color:var(--ink-soft)}
.grid{display:grid;gap:26px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:center}

.card{
  position:relative;background:rgba(255,255,255,.78);border:1px solid rgba(11,107,87,.12);border-radius:var(--radius);
  box-shadow:var(--shadow-sm);overflow:hidden;backdrop-filter:blur(14px);transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease);
}
.card::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,rgba(255,255,255,.75),rgba(32,184,166,.18),rgba(242,184,75,.14));mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;pointer-events:none;opacity:.8}
.card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:rgba(32,184,166,.24)}
.card-body{padding:28px}.card h3{font-size:24px;line-height:1.25;margin:0 0 10px;color:#0d3339}.card p{margin:0 0 12px;color:#405a62}.image-card img{width:100%;height:248px;object-fit:cover;transition:transform .6s var(--ease);filter:saturate(1.03) contrast(1.02)}.image-card:hover img{transform:scale(1.045)}
.rounded-img{border-radius:34px;box-shadow:var(--shadow);height:430px;width:100%;object-fit:cover;filter:saturate(1.05) contrast(1.02);transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
.rounded-img:hover{transform:translateY(-4px) scale(1.01);box-shadow:var(--shadow-lg)}

/* 项目卡片 */
.project-card{
  position:relative;min-height:448px;display:flex;align-items:flex-end;overflow:hidden;border-radius:32px;color:#fff;
  box-shadow:var(--shadow);transform-style:preserve-3d;isolation:isolate;border:1px solid rgba(255,255,255,.20);transition:transform .35s var(--ease),box-shadow .35s var(--ease);
}
.project-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .72s var(--ease),filter .72s var(--ease);filter:saturate(1.05) contrast(1.04)}
.project-card::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(2,20,24,.06) 0%,rgba(3,34,38,.18) 38%,rgba(3,34,38,.94) 100%)}
.project-card::after{content:"";position:absolute;inset:1px;border-radius:31px;z-index:2;border:1px solid rgba(255,255,255,.22);pointer-events:none}
.project-card:hover{box-shadow:var(--shadow-lg)}.project-card:hover img{transform:scale(1.08);filter:saturate(1.16) contrast(1.06)}
.project-card .content{position:relative;z-index:3;padding:32px;transform:translateZ(24px)}
.project-card h3{margin:12px 0 8px;font-size:clamp(22px,2.3vw,30px);letter-spacing:-.02em}.project-card p{margin:0;color:#e9fff6;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.pill{display:inline-flex;align-items:center;gap:8px;padding:6px 11px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.28);border-radius:999px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;backdrop-filter:blur(10px)}
.pill::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--gold)}

/* 按钮 */
.button{
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 23px;border-radius:999px;
  background:linear-gradient(135deg,var(--green-dark),var(--green-2));color:#fff;font-weight:850;letter-spacing:.02em;
  box-shadow:0 14px 26px rgba(11,107,87,.24);transition:transform .25s var(--ease),box-shadow .25s var(--ease),filter .25s var(--ease);overflow:hidden;
}
.button::after{content:"›";font-size:22px;line-height:1;transition:transform .25s var(--ease)}
.button::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.24) 45%,transparent 60%);transform:translateX(-130%);transition:transform .7s var(--ease)}
.button:hover{transform:translateY(-3px);box-shadow:0 22px 44px rgba(11,107,87,.28);filter:saturate(1.08)}
.button:hover::before{transform:translateX(130%)}.button:hover::after{transform:translateX(3px)}
.button.light{background:rgba(255,255,255,.92);color:var(--green-dark);box-shadow:0 14px 28px rgba(0,0,0,.14)}

/* 数据 */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:-64px;position:relative;z-index:4}
.stat{
  position:relative;background:rgba(255,255,255,.86);border-radius:24px;padding:26px 24px;border:1px solid rgba(11,107,87,.12);box-shadow:var(--shadow);
  overflow:hidden;backdrop-filter:blur(14px);transition:transform .35s var(--ease),box-shadow .35s var(--ease)
}
.stat::before{content:"";position:absolute;right:-24px;top:-28px;width:96px;height:96px;border-radius:50%;background:radial-gradient(circle,rgba(32,184,166,.20),transparent 68%)}
.stat:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.stat strong{display:block;font-size:clamp(30px,4vw,43px);color:var(--green-dark);line-height:1;letter-spacing:-.04em}.stat span{color:var(--muted);font-weight:700}

/* 新闻 */
.news-list{display:grid;gap:14px}
.news-item{
  display:grid;grid-template-columns:132px 1fr auto;gap:18px;align-items:center;padding:18px 20px;background:rgba(255,255,255,.80);
  border:1px solid rgba(11,107,87,.10);border-radius:20px;box-shadow:0 10px 25px rgba(4,59,59,.06);transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease),background .3s var(--ease)
}
.news-item:hover{transform:translateX(6px);box-shadow:var(--shadow-sm);border-color:rgba(32,184,166,.22);background:#fff}.news-item strong{line-height:1.45;color:#16363d}
.news-item[href="#"]{cursor:default}.news-item[href="#"] .tag{opacity:.65}.date{font-weight:850;color:var(--green);font-variant-numeric:tabular-nums}.tag{font-size:12px;background:linear-gradient(135deg,#e8fbf2,#edf8e9);color:var(--green-dark);border-radius:999px;padding:5px 11px;font-weight:780;white-space:nowrap}

/* 文章与富文本 */
.article{max-width:900px;margin:auto;background:rgba(255,255,255,.72);border:1px solid rgba(11,107,87,.08);border-radius:34px;padding:clamp(26px,4vw,46px);box-shadow:var(--shadow-sm);backdrop-filter:blur(12px)}
.article h2{font-size:clamp(31px,4.2vw,46px);line-height:1.18;margin-top:0;letter-spacing:-.035em;color:#0f3038}.article h3{font-size:25px;color:var(--green-dark);margin-top:30px}.article p{font-size:17px;color:#284a52}.article-meta{color:var(--muted);font-weight:760}.article-cover{border-radius:30px;overflow:hidden;margin:28px 0;box-shadow:var(--shadow)}.article-cover img{height:420px;width:100%;object-fit:cover;transition:transform .7s var(--ease)}.article-cover:hover img{transform:scale(1.035)}
.rich-text h2,.rich-text h3{color:var(--green-dark)}.rich-text ul{padding-left:1.2em}.rich-text li{margin:.45em 0;color:#294c54}.rich-text strong{color:#0e363b}.rich-text a{text-decoration:underline;text-decoration-color:rgba(32,184,166,.35);text-underline-offset:4px}
.meta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.meta-card{padding:20px;border-radius:20px;background:rgba(255,255,255,.82);border:1px solid rgba(11,107,87,.10);box-shadow:0 12px 28px rgba(4,59,59,.06)}.meta-card small{display:block;color:var(--muted);font-weight:760}.meta-card strong{display:block;color:var(--green-dark);font-size:18px}
.timeline{position:relative;margin-top:28px}.timeline::before{content:"";position:absolute;left:13px;top:8px;bottom:8px;width:2px;background:linear-gradient(var(--leaf),var(--teal));border-radius:999px}.timeline-item{position:relative;padding-left:44px;margin-bottom:22px}.timeline-item::before{content:"";position:absolute;left:5px;top:8px;width:18px;height:18px;border-radius:50%;background:var(--leaf);box-shadow:0 0 0 7px rgba(131,201,95,.17),0 8px 18px rgba(4,59,59,.16)}

/* 名单、合作方、团队 */
.name-cloud{display:flex;flex-wrap:wrap;gap:10px}.name-cloud span{padding:8px 13px;border-radius:999px;background:rgba(255,255,255,.76);border:1px solid rgba(11,107,87,.12);font-weight:700;box-shadow:0 8px 18px rgba(4,59,59,.05);transition:transform .25s var(--ease),background .25s var(--ease),border-color .25s var(--ease);animation:softPulse 5.5s ease-in-out infinite;animation-delay:calc(var(--i,0) * -120ms)}.name-cloud span:hover{transform:translateY(-3px);background:#fff;border-color:rgba(32,184,166,.25)}
.partner-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}.partner-grid a{position:relative;padding:18px;background:rgba(255,255,255,.82);border:1px solid rgba(11,107,87,.10);border-radius:18px;color:var(--green-dark);font-weight:850;text-align:center;box-shadow:0 10px 22px rgba(4,59,59,.06);overflow:hidden;transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease)}.partner-grid a::before{content:"";position:absolute;inset:auto 16px 0;height:3px;background:linear-gradient(90deg,var(--teal),var(--gold));border-radius:999px 999px 0 0;transform:scaleX(0);transition:.25s var(--ease)}.partner-grid a:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm);border-color:rgba(32,184,166,.22)}.partner-grid a:hover::before{transform:scaleX(1)}
.team-card{display:grid;grid-template-columns:132px 1fr;gap:24px;align-items:center;padding:24px}.team-card img{width:132px;height:164px;object-fit:cover;object-position:top;border-radius:24px;background:#eaf3ff;box-shadow:0 14px 30px rgba(4,59,59,.12)}.team-card h3{margin:0}.role{color:var(--green);font-weight:850}.contact-panel{padding:36px;border-radius:32px;background:radial-gradient(circle at 88% 12%,rgba(242,184,75,.24),transparent 36%),linear-gradient(135deg,var(--green-dark),var(--green-2));color:#fff;box-shadow:var(--shadow)}.contact-panel p{color:#eafff7}.contact-panel a{color:#fff;text-decoration:underline;text-underline-offset:4px}.notice{padding:18px 20px;background:#fff8e8;border:1px solid #ffddb0;border-radius:20px;color:#6b4b18;box-shadow:0 10px 24px rgba(124,82,0,.06)}
.source-note{font-size:13px;color:var(--muted)}

/* 页脚 */
.site-footer{position:relative;background:linear-gradient(135deg,#052f31,#073d3d 48%,#06292d);color:#dff4ec;margin-top:74px;overflow:hidden}.site-footer::before{content:"";position:absolute;inset:-40% -10% auto auto;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(32,184,166,.20),transparent 65%)}.footer-grid{position:relative;display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:34px;padding:60px 0}.footer-logo{height:50px;filter:brightness(1.08)}.muted{color:#a9cbc4}.footer-links{display:grid;gap:8px}.site-footer a{transition:color .2s var(--ease)}.site-footer a:hover{color:#fff}.footer-bottom{text-align:center;border-top:1px solid rgba(255,255,255,.12);padding:18px;color:#a6c8c0;position:relative}

/* 图片灯箱 */
.lightbox{position:fixed;inset:0;z-index:220;display:grid;place-items:center;background:rgba(3,24,28,.82);padding:24px;opacity:0;pointer-events:none;transition:opacity .25s var(--ease);backdrop-filter:blur(10px)}.lightbox.open{opacity:1;pointer-events:auto}.lightbox img{max-width:min(1100px,92vw);max-height:84vh;border-radius:24px;box-shadow:0 34px 120px rgba(0,0,0,.45);transform:scale(.96);transition:transform .28s var(--ease)}.lightbox.open img{transform:scale(1)}.lightbox button{position:absolute;right:24px;top:20px;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.12);color:#fff;font-size:28px;cursor:pointer}

/* 入场动画 */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .72s var(--ease),transform .72s var(--ease)}.reveal.in-view{opacity:1;transform:none}.reveal-delay-1{transition-delay:.08s}.reveal-delay-2{transition-delay:.16s}.reveal-delay-3{transition-delay:.24s}
@keyframes floaty{0%,100%{transform:translateY(0) rotate(16deg)}50%{transform:translateY(-14px) rotate(11deg)}}
@keyframes softPulse{0%,100%{box-shadow:0 8px 18px rgba(4,59,59,.05)}50%{box-shadow:0 14px 26px rgba(4,59,59,.08)}}

/* 平板与手机 */
@media (max-width:1100px){.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.stats{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.meta-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:900px){
  body.nav-open{overflow:hidden}.nav-wrap{height:76px}.site-header.is-scrolled .nav-wrap{height:70px}.brand img{height:42px}.menu-toggle{display:block}.site-nav{position:fixed;left:12px;right:12px;top:82px;display:grid;grid-template-columns:1fr;gap:8px;padding:14px;background:rgba(255,255,255,.93);border:1px solid rgba(11,107,87,.12);border-radius:24px;box-shadow:var(--shadow-lg);backdrop-filter:blur(20px);opacity:0;transform:translateY(-12px) scale(.98);pointer-events:none;transition:.28s var(--ease)}.site-nav.open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.nav-link{width:100%;justify-content:center;min-height:46px}.grid.two,.split{grid-template-columns:1fr}.page-hero{min-height:350px}.hero-content{padding:64px 0 82px}.hero-content::after{width:98px;height:98px;right:4%;top:40px;border-radius:30px}.news-item{grid-template-columns:1fr;gap:8px}.project-card{min-height:380px}.article-cover img,.rounded-img{height:300px}.section{padding:62px 0}.site-nav .nav-link::before{inset:4px}.back-to-top{right:16px;bottom:18px;width:44px;height:44px}
}
@media (max-width:640px){
  .container{width:min(100% - 30px,1180px)}.page-hero h1{font-size:42px}.hero-subtitle{font-size:16px}.section-title h2{font-size:31px}.grid.three,.grid.four,.stats,.footer-grid,.meta-grid{grid-template-columns:1fr}.stats{margin-top:-44px}.stat{padding:22px}.card-body{padding:23px}.project-card{min-height:350px;border-radius:26px}.project-card::after{border-radius:25px}.project-card .content{padding:24px}.team-card{grid-template-columns:92px 1fr;gap:16px;padding:18px}.team-card img{width:92px;height:116px;border-radius:18px}.article{padding:22px;border-radius:24px}.article h2{font-size:29px}.article p{font-size:16px}.article-cover img,.rounded-img{height:245px}.footer-grid{padding:44px 0}.partner-grid{grid-template-columns:1fr}.name-cloud span{font-size:14px;padding:7px 11px}.badge{font-size:13px}.contact-panel{padding:26px}.section{padding:54px 0}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* 参与者名单：无缝横向滚动 */
.participant-marquee{
  position:relative;
  overflow:hidden;
  padding:8px 0 18px;
  border-radius:32px;
  isolation:isolate;
}
.participant-marquee::before,
.participant-marquee::after{
  content:"";
  position:absolute;
  top:0;bottom:0;
  width:min(120px,18vw);
  z-index:2;
  pointer-events:none;
}
.participant-marquee::before{left:0;background:linear-gradient(90deg,rgba(244,250,243,1),rgba(244,250,243,0));}
.participant-marquee::after{right:0;background:linear-gradient(270deg,rgba(244,250,243,1),rgba(244,250,243,0));}
.participant-marquee .name-cloud{
  display:block;
}
.participant-row{
  overflow:hidden;
  margin:12px 0;
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
}
.participant-track{
  display:flex;
  width:max-content;
  will-change:transform;
  animation:participantMarquee var(--duration,56s) linear infinite;
}
.participant-row.reverse .participant-track{animation-direction:reverse;}
.participant-row:hover .participant-track{animation-play-state:paused;}
.participant-group{
  display:flex;
  align-items:center;
  gap:12px;
  padding-right:12px;
  flex-shrink:0;
}
.participant-marquee .name-cloud span,
.participant-group span{
  flex:0 0 auto;
  padding:9px 15px;
  border-radius:999px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(11,107,87,.12);
  font-weight:760;
  color:#16363d;
  box-shadow:0 10px 24px rgba(4,59,59,.07);
  transition:transform .25s var(--ease),background .25s var(--ease),border-color .25s var(--ease),box-shadow .25s var(--ease);
  animation:none;
}
.participant-group span:nth-child(3n+1){background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(221,248,237,.78));}
.participant-group span:nth-child(3n+2){background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(236,248,232,.82));}
.participant-group span:nth-child(3n+3){background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(239,250,249,.82));}
.participant-group span:hover{
  transform:translateY(-3px) scale(1.02);
  background:#fff;
  border-color:rgba(32,184,166,.28);
  box-shadow:0 16px 34px rgba(4,59,59,.10);
}
@keyframes participantMarquee{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}
@media (prefers-reduced-motion:reduce){
  .participant-track{animation:none;}
  .participant-row{overflow-x:auto;padding-bottom:8px;}
}
@media (max-width:680px){
  .participant-marquee{padding-bottom:8px;}
  .participant-row{margin:9px 0;}
  .participant-group{gap:9px;padding-right:9px;}
  .participant-group span{font-size:14px;padding:7px 11px;}
}
