﻿body { font-family: "Microsoft YaHei", "Noto Serif SC", serif; min-width: 12rem; background: #f7f4ed; }
.header_m { display: none; }
[data-aos]:not(.scroll-reveal), .wow:not(.scroll-reveal) { opacity: 1; transform: none; visibility: visible; }

header { height: .92rem !important; background: rgba(40, 12, 10, .18); z-index: 50; }
header .flex-c { height: .8rem; max-width: 11.2rem; margin: 0 auto; align-items: flex-start; justify-content: center; padding-top: .1rem; }
header .nav { display: flex !important; align-items: flex-start; justify-content: center; gap: .38rem; width: auto !important; padding-top: .12rem; }
header .nav > li { float: none !important; margin: 0 !important; height: .46rem !important; position: relative; }
header .nav > li > a { display: block; color: #fff; font-size: .16rem; line-height: .34rem; padding: 0; white-space: nowrap; }
header .nav > li > a:hover { color: #f0d5a1; }
header .nav li ol { display: block !important; opacity: 0; visibility: hidden; position: absolute; left: 50%; top: .44rem; transform: translateX(-50%) translateY(.08rem); z-index: 100; min-width: 1.26rem; background: rgba(255,255,255,.96); padding: .12rem 0; box-shadow: 0 .08rem .2rem rgba(0,0,0,.16); transition: opacity .18s ease, transform .18s ease, visibility .18s ease; pointer-events: none; }
header .nav li:hover ol { opacity: 1; visibility: visible; transform: translateX(-50%) translateY(0); pointer-events: auto; }
header .nav li ol li { line-height: .38rem; text-align: center; }
header .nav li ol li a { color: #333; font-size: .15rem; }
header .nav li ol .tri { position: absolute; top: -.08rem; left: 50%; margin-left: -.07rem; width: 0; height: 0; border-left: .07rem solid transparent; border-right: .07rem solid transparent; border-bottom: .08rem solid #fff; }
header .linkTop { z-index: 60; }

.env-logo { text-align: center; flex-shrink: 0; }
.env-logo a { display: inline-flex; align-items: center; justify-content: center; flex-wrap: wrap; color: #fff; }
.env-logo span { width: .52rem; height: .52rem; border-radius: 50%; background: #a41119; border: .03rem solid rgba(255,255,255,.68); display: inline-flex; align-items: center; justify-content: center; font-size: .24rem; font-weight: 700; box-shadow: 0 0 0 .06rem rgba(164,17,25,.26); }
.env-logo strong, .env-logo em { display: none; }
.env-logo-mark { width: .74rem; margin: -.04rem .42rem 0; }

.env-home-banner.ImgBanner { display: block !important; height: 5.6rem !important; min-height: 5.6rem !important; margin-top: -.92rem !important; position: relative; overflow: hidden; background-image: linear-gradient(90deg, rgba(30, 55, 24, .55), rgba(164, 17, 25, .42)), url("../vendor/home/D42E99A2F6993D9DDBCAFEE4744_F5881721_37D7D.jpeg") !important; background-repeat: no-repeat !important; background-size: cover !important; background-position: center center !important; }
.env-home-banner .banner { display: none !important; }
.env-home-banner::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 74% 42%, rgba(155, 0, 0, .42) 0 12%, transparent 13% 24%, rgba(155, 0, 0, .26) 25% 34%, transparent 35%); z-index: 1; }
.env-home-banner::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: .9rem; background: linear-gradient(to bottom, transparent, #f7f4ed); z-index: 2; }
.env-hero-title { position: absolute; top: 1.85rem; left: 0; right: 0; z-index: 3; text-align: center; color: #fff; text-shadow: 0 .04rem .18rem rgba(0,0,0,.28); user-select: none; }
.env-hero-title p { display: none; }
.env-hero-title h1 { font-size: .34rem; letter-spacing: .08rem; margin: 0 0 .24rem; font-family: '仿宋'; }
.env-hero-title h2 { font-size: .44rem; line-height: 1.28; letter-spacing: .05rem; font-weight: 700; }

.indexCon1 { display: block !important; min-height: 5.6rem; padding-top: .96rem !important; background: #fff; position: relative !important; margin-top: 0 !important; overflow: hidden; }
.indexCon1::before { opacity: .9; pointer-events: none; }
.indexCon1 .w1600 { position: relative; z-index: 2; max-width: 11.2rem; }
.indexCon1 .new { display: flex !important; align-items: flex-start; }
.indexCon1 .newImg { display: block !important; width: 68% !important; }
.indexCon1 .newImg li { display: block !important; float: left !important; width: 50% !important; }
.indexCon1 .newImg li a .img { display: block !important; position: relative; padding-top: 62% !important; overflow: hidden; }
.indexCon1 .newImg li a .img p { display: block !important; position: absolute; inset: 0; width: 100%; height: 100%; background-size: cover; background-position: center; }
.indexCon1 .newList { display: block !important; width: 32% !important; }
.indexCon1 .newList li { display: block !important; }

.env-indexCon2.indexCon2 { display: block !important; position: relative !important; min-height: 7.2rem !important; padding-top: .7rem; overflow: hidden; background: #eeeeee !important; }
.env-indexCon2 .w1600 { position: relative !important; left: auto !important; transform: none !important; max-width: 11.2rem; margin: 0 auto; z-index: 3; }
.env-indexCon2 .lmTit { position: relative !important; margin-left: 0; }
.env-indexCon2 .bg2 { position: absolute; left: 0; top: 1.7rem; z-index: 1; }
.env-indexCon2 .research { position: relative !important; right: auto !important; top: auto !important; width: 11.2rem !important; margin: -1.7rem auto 0; z-index: 4; overflow: visible !important; }
.env-indexCon2 .research ul { display: grid !important; grid-template-columns: repeat(4, 1fr); gap: .28rem; width: 100% !important; transform: none !important; padding-left: 0; }
.env-indexCon2 .research li { display: block !important; float: none !important; width: auto !important; padding: 0 !important; margin: 0 !important; }
.env-indexCon2 .research li:nth-of-type(odd) { margin-top: .7rem !important; }
.env-indexCon2 .research li .img { display: block !important; position: relative; padding-top: 78% !important; }
.env-indexCon2 .research li .img img { display: block !important; }
.indexCon3 { display: block !important; min-height: 4.2rem; padding-top: 1.1rem !important; position: relative !important; }
.indexCon3 .w1600 { max-width: 11.2rem; }

.scroll-reveal { opacity: 0; transform: translateY(.55rem); transition: opacity .9s ease, transform .9s ease; }
.scroll-reveal.is-visible { opacity: 1; transform: translateY(0); }
.scroll-reveal .lmTit, .scroll-reveal .newImg li, .scroll-reveal .newList li, .scroll-reveal .research li { opacity: 0; transform: translateY(.3rem); transition: opacity .75s ease, transform .75s ease; }
.scroll-reveal.is-visible .lmTit, .scroll-reveal.is-visible .newImg li, .scroll-reveal.is-visible .newList li, .scroll-reveal.is-visible .research li { opacity: 1; transform: translateY(0); }
.scroll-reveal.is-visible .newImg li:nth-child(2), .scroll-reveal.is-visible .research li:nth-child(2) { transition-delay: .12s; }
.scroll-reveal.is-visible .newList li:nth-child(1), .scroll-reveal.is-visible .research li:nth-child(3) { transition-delay: .2s; }
.scroll-reveal.is-visible .newList li:nth-child(2), .scroll-reveal.is-visible .research li:nth-child(4) { transition-delay: .28s; }

.ImgBanner .nyBanner, .ImgBanner .nyBanner img { display: block !important; width: 100%; }
.nyBanner { position: relative; }
.nyBanner:after { content: "????????"; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -30%); color: #fff; font-size: .3rem; letter-spacing: .08rem; font-weight: 700; text-shadow: 0 .03rem .12rem rgba(0,0,0,.25); }
.nyNav, main, footer { display: block !important; opacity: 1 !important; visibility: visible !important; }
.txtList ul { display: grid !important; grid-template-columns: repeat(2, 1fr); gap: .28rem .44rem; }
.txtList ul li { display: block !important; float: none !important; width: auto !important; margin: 0 !important; min-height: 1.3rem; }
.pages { clear: both; text-align: center; padding: .35rem 0 .1rem; font-size: .14rem; }
.pages a, .pages span { display: inline-block; min-width: .3rem; height: .28rem; line-height: .28rem; border: .01rem solid #ddd; margin: 0 .03rem; color: #666; background: #fff; text-align: center; }
.pages .p_no_d { background: #a41119; color: #fff; border-color: #a41119; }
.content { display: block !important; min-height: 5.2rem; }
.v_news_content p { font-size: .16rem; line-height: 2.05; }
.v_news_content .vsbcontent_img { text-align: center; text-indent: 0; }
.v_news_content .vsbcontent_img img { max-width: 3.6rem; height: auto; margin: .1rem .12rem; }
.conP_N { display: grid; gap: .12rem; margin-top: .28rem; }
.env-foot-logo { color: #fff; display: flex; align-items: center; flex-wrap: wrap; max-width: 4.5rem; }
.env-foot-logo span { width: .62rem; height: .62rem; border-radius: 50%; border: .02rem solid rgba(255,255,255,.7); display: inline-flex; align-items: center; justify-content: center; font-size: .3rem; font-weight: 700; margin-right: .18rem; }
.env-foot-logo strong { font-size: .26rem; letter-spacing: .04rem; }
.env-foot-logo em { width: 100%; padding-left: .8rem; margin-top: .08rem; font-style: normal; opacity: .85; }
@media (max-width: 12rem) { body { min-width: 0; } header .flex-c, .indexCon1 .w1600, .env-indexCon2 .research, .indexCon3 .w1600 { width: calc(100% - .4rem) !important; } }

/* User requested header/banner refinements */
header {
  height: 1.04rem !important;
  background: linear-gradient(180deg, rgba(0, 0, 0, .48) 0%, rgba(0, 0, 0, .28) 52%, rgba(0, 0, 0, .08) 100%) !important;
}
header .flex-c {
  height: .98rem;
  max-width: 11.8rem;
  padding-top: .12rem;
}
header .nav {
  gap: .42rem;
  padding-top: .18rem;
}
header .nav > li > a {
  font-size: .18rem;
  letter-spacing: .02rem;
  line-height: .38rem;
  font-weight: 500;
}
header .nav li ol {
  top: .56rem;
}
.env-logo-mark {
  width: 1.18rem;
  margin: -.06rem .44rem 0;
}
.env-logo-mark a {
  display: block;
}
.env-logo-mark img {
  display: block;
  width: .92rem;
  height: .92rem;
  object-fit: contain;
  margin: 0 auto;
}
.env-home-banner.ImgBanner {
  margin-top: -1.04rem !important;
  height: 6.1rem !important;
  min-height: 6.1rem !important;
  background-image: linear-gradient(90deg, rgba(0, 0, 0, .18), rgba(0, 0, 0, .08)), url("../image/SXHSJG.jpg") !important;
  background-position: center center !important;
}
.env-hero-title {
  top: 2.45rem !important;
}
.env-indexCon2.indexCon2 {
  background-image: linear-gradient(90deg, rgba(255,255,255,.86), rgba(255,255,255,.78)), url("../image/XZGYDSHYZYC.jpg") !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center center !important;
}
.env-indexCon2 .bg2 {
  display: none !important;
}

/* Final fixes for nav, logo, dropdown and academic section */
header {
  height: 1.12rem !important;
  background: linear-gradient(180deg, rgba(0, 0, 0, .58) 0%, rgba(0, 0, 0, .36) 55%, rgba(0, 0, 0, .08) 100%) !important;
}
header .flex-c {
  height: 1.12rem !important;
  max-width: 12.4rem !important;
  padding-top: 0 !important;
  align-items: flex-start !important;
}
header .nav {
  padding-top: .24rem !important;
  gap: .48rem !important;
}
header .nav > li {
  height: .62rem !important;
}
header .nav > li > a {
  font-size: .26rem !important;
  line-height: .42rem !important;
  letter-spacing: .03rem !important;
  font-weight: 500 !important;
}
.env-logo-mark {
  width: 1.28rem !important;
  margin: 0 .5rem 0 !important;
  align-self: flex-start !important;
}
.env-logo-mark img {
  width: 1.12rem !important;
  height: 1.12rem !important;
  margin: 0 auto !important;
  object-fit: contain !important;
}
header .nav li ol,
header .nav li:hover ol {
  left: 50% !important;
  top: .62rem !important;
  transform: translateX(-50%) !important;
  transition: opacity .12s ease, visibility .12s ease !important;
}
header .nav li ol {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
header .nav li:hover ol {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
header .nav li ol li {
  line-height: .46rem !important;
}
header .nav li ol li a {
  font-size: .18rem !important;
}
.env-home-banner.ImgBanner {
  margin-top: -1.12rem !important;
}
.indexCon1 {
  background-image: linear-gradient(90deg, rgba(255,255,255,.88), rgba(255,255,255,.80)), url("../image/XZGYDSHYZYC.jpg") !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center center !important;
}
.indexCon1::before {
  display: none !important;
}

/* Home five-block layout: banner, achievements, news, quick links, footer */
.env-home-banner.ImgBanner {
  height: 6.9rem !important;
  min-height: 6.9rem !important;
  margin-top: -1.12rem !important;
  background-image: linear-gradient(180deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,.05) 62%, rgba(255,255,255,.02) 100%), url("../image/ban_09190004.jpg") !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center top !important;
}
.env-home-banner::before {
  display: none !important;
}
.env-home-banner::after {
  display: none !important;
}
.env-hero-title {
  top: 2.5rem !important;
}

.indexCon1 {
  min-height: 6.4rem !important;
  padding-top: .95rem !important;
  background-color: #fff !important;
  background-image: url("../image/bg1.png") !important;
  background-repeat: no-repeat !important;
  background-size: 50% 100% !important;
  background-position: right center !important;
}
.indexCon1 .w1600 {
  max-width: 11.8rem !important;
}
.indexCon1 .lmTit h2,
.indexCon1 .newList .tit,
.indexCon1 .newImg .tit {
  color: #333 !important;
}

.env-indexCon2.indexCon2 {
  min-height: 6.8rem !important;
  background-image: linear-gradient(90deg, rgba(255,255,255,.86), rgba(255,255,255,.78)), url("../image/XZGYDSHYZYC.jpg") !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center center !important;
}
.indexCon3 {
  min-height: 3.6rem !important;
  padding-top: .85rem !important;
  background: #f7f4ed !important;
}
footer .foot,
footer {
  background-image: linear-gradient(90deg, rgba(75, 10, 12, .88), rgba(100, 18, 18, .78)), url("../image/footerBg.png") !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center center !important;
}

header .nav li ol {
  display: block !important;
  left: 50% !important;
  top: .62rem !important;
  transform: translate3d(-50%, -.12rem, 0) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity .24s ease, transform .24s ease, visibility .24s ease !important;
}
header .nav li:hover ol {
  transform: translate3d(-50%, 0, 0) !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
header .nav li ol .tri {
  left: 50% !important;
}


/* Reference-page dynamic refinements */
body { overflow-x: hidden; }
.jb { position: fixed; left: 0; top: 0; width: 100%; height: .06rem; background: #01844e; z-index: 90; }
header { position: absolute !important; left: 0; top: .06rem; width: 100%; }
header .linkTop { right: 0 !important; top: 0 !important; height: .56rem !important; padding: 0 .28rem !important; background: #9c0712 !important; border-radius: 0 0 0 .26rem !important; display: flex !important; align-items: center !important; gap: .16rem !important; }
header .linkTop a, header .linkTop .search { color: #fff !important; font-size: .14rem !important; line-height: 1 !important; }
header .linkTop .search { cursor: pointer; padding-left: .18rem; border-left: .01rem solid rgba(255,255,255,.38); }
header .flex-c { position: relative; }
header .nav > li > a { text-shadow: 0 .02rem .08rem rgba(0,0,0,.28); transition: color .22s ease, transform .22s ease; }
header .nav > li:hover > a { color: #f0d5a1 !important; transform: translateY(-.02rem); }
header .nav li ol { min-width: 1.5rem !important; padding: .12rem 0 !important; background: rgba(255,255,255,.98) !important; box-shadow: 0 .18rem .35rem rgba(0,0,0,.18) !important; }
header .nav li ol li a { color: #222 !important; transition: color .2s ease, background-color .2s ease; }
header .nav li ol li:hover a { color: #a41119 !important; background: #f8f1ea; }

.env-home-banner.ImgBanner { height: 7.6rem !important; min-height: 7.6rem !important; }
.env-home-banner .banner { display: block !important; position: absolute; inset: 0; z-index: 0; }
.env-home-banner .news_images, .env-home-banner .news_images a, .env-home-banner .news_images .img, .env-home-banner .news_images .img p { display: block !important; width: 100% !important; height: 100% !important; }
.env-home-banner .news_images .img p { background-image: url("../image/ban_09190004.jpg") !important; background-size: cover !important; background-position: center top !important; animation: envBannerZoom 12s ease-in-out infinite alternate; }
.env-home-banner.ImgBanner { background-image: none !important; }
.env-home-banner::after { display: block !important; content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(0,0,0,.14), rgba(0,0,0,.02) 55%, rgba(255,255,255,0) 100%); pointer-events: none; }
.env-hero-title { z-index: 2 !important; animation: envHeroIn 1.1s ease both .15s; }
.env-banner-dots { position: absolute; left: 50%; bottom: .34rem; transform: translateX(-50%); z-index: 4; display: flex; gap: .12rem; }
.env-banner-dots li { width: .34rem; height: .04rem; border-radius: .99rem; background: rgba(255,255,255,.58); transition: width .3s ease, background .3s ease; }
.env-banner-dots li.on { width: .54rem; background: #01844e; }

.indexCon1 .newImg li a, .env-indexCon2 .research li a { display: block; transition: box-shadow .3s ease; }
.indexCon1 .newImg li a:hover { transform: translateY(-.08rem); box-shadow: 0 .2rem .36rem rgba(70,40,20,.15); }
.env-indexCon2 .research li a,
.env-indexCon2 .research li a:hover { transform: none !important; }
.env-indexCon2 .research li a:hover { box-shadow: 0 .2rem .36rem rgba(70,40,20,.15); }
.indexCon1 .newImg li a .img p { transition: transform .55s ease; }
.indexCon1 .newImg li a:hover .img p { transform: scale(1.06); }
.env-indexCon2 .research li .img {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
  width: 100% !important;
  padding-top: 0 !important;
  text-align: center !important;
}
.env-indexCon2 .research li .img img,
.env-indexCon2 .research li a:hover .img img {
  display: block !important;
  width: 1.24rem !important;
  height: 1.24rem !important;
  position: static !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  object-fit: cover !important;
  margin: 0 auto !important;
  transform: none !important;
  transition: none !important;
}
.indexCon1 .newList li a { transition: transform .25s ease, background-color .25s ease; }
.indexCon1 .newList li a:hover { transform: translateX(.08rem); }
.indexCon1 .newList li a:hover .tit { color: #a41119 !important; }

.env-indexCon2 .research { overflow: hidden !important; }
.env-indexCon2 .research ul { display: flex !important; grid-template-columns: none !important; width: max-content !important; animation: envResearchMarquee 28s linear infinite; }
.env-indexCon2 .research:hover ul { animation-play-state: paused; }
.env-indexCon2 .research li { flex: 0 0 2.7rem !important; width: 2.7rem !important; }
.env-indexCon2 .research li:nth-of-type(odd),
.env-indexCon2 .research li:nth-of-type(odd):hover { margin-top: .7rem !important; }
.env-indexCon2 .research li:nth-of-type(even),
.env-indexCon2 .research li:nth-of-type(even):hover { margin-top: 0 !important; }

.env-quick-links .ksdh ul { display: grid !important; grid-template-columns: repeat(4, 1fr); gap: .3rem; }
.env-quick-links .ksdh li a { display: block; text-align: center; }
.env-quick-links .ksdh .yuan { position: relative; margin: 0 auto .16rem; }
.env-quick-links .ksdh .animation { animation: envPulse 2.4s ease-out infinite; }
.env-quick-links .ksdh li a:hover .yuan { transform: translateY(-.08rem); transition: transform .25s ease; }
.env-link { margin-top: .45rem; padding: .28rem .36rem; background: rgba(255,255,255,.72); box-shadow: 0 .15rem .32rem rgba(70,40,20,.08); }
.env-link h2 { font-size: .24rem; color: #333; margin-bottom: .16rem; }
.env-link li { display: flex; flex-wrap: wrap; gap: .14rem .28rem; }
.env-link a { color: #666; font-size: .15rem; transition: color .2s ease; }
.env-link a:hover { color: #a41119; }

.fhTop .button { cursor: pointer; transition: transform .25s ease; }
.fhTop .button:hover { transform: translateY(-.08rem); }
.env-search-layer { display: none; position: fixed; inset: 0; z-index: 200; background: rgba(0,0,0,.72); align-items: center; justify-content: center; }
.env-search-layer.open { display: flex; animation: envFadeIn .2s ease both; }
.env-search-layer .close { position: absolute; right: .55rem; top: .45rem; width: .42rem; height: .42rem; cursor: pointer; }
.env-search-layer .close::before, .env-search-layer .close::after { content: ""; position: absolute; left: .2rem; top: .04rem; width: .02rem; height: .34rem; background: #fff; }
.env-search-layer .close::before { transform: rotate(45deg); }
.env-search-layer .close::after { transform: rotate(-45deg); }
.env-search-layer .search_box { display: flex; width: 6.2rem; height: .58rem; }
.env-search-layer .kw { flex: 1; border: none; padding: 0 .22rem; font-size: .18rem; }
.env-search-layer .ok { width: 1.2rem; border: none; background: #a41119; color: #fff; font-size: .18rem; cursor: pointer; }
@keyframes envBannerZoom { from { transform: scale(1); } to { transform: scale(1.045); } }
@keyframes envHeroIn { from { opacity: 0; transform: translateY(.26rem); } to { opacity: 1; transform: translateY(0); } }
@keyframes envFadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes envPulse { 0% { transform: scale(.8); opacity: .55; } 70% { transform: scale(1.25); opacity: 0; } 100% { opacity: 0; } }
@keyframes envResearchMarquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* Header background hover zoom requested at index.html:18 */
header {
  height: 80vh !important;
  min-height: 6.2rem !important;
  overflow: hidden !important;
  background: none !important;
}
header::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background-image: url("../image/ban_09190004.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  transform: scale(1);
  transform-origin: center center;
  transition: transform .65s ease;
}
header::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(180deg, rgba(0,0,0,.44) 0%, rgba(0,0,0,.16) 24%, rgba(0,0,0,0) 64%);
  pointer-events: none;
}
header:hover::before {
  transform: scale(1.1);
}
header .header-container {
  position: relative;
  z-index: 2;
}
.env-home-banner.ImgBanner {
  height: 80vh !important;
  min-height: 6.2rem !important;
  margin-top: -80vh !important;
  background: transparent !important;
  pointer-events: none;
}
.env-home-banner .banner {
  display: none !important;
}
.env-home-banner .env-hero-title,
.env-home-banner .env-banner-dots {
  pointer-events: auto;
}
@media (max-height: 7.6rem) {
  header,
  .env-home-banner.ImgBanner {
    min-height: 5.6rem !important;
  }
}

/* Ensure header background layer stays visible */
header {
  z-index: 20 !important;
  isolation: isolate;
}
header::before {
  z-index: 0 !important;
}
header::after {
  z-index: 1 !important;
}
header .header-container,
header .flex-c {
  position: relative !important;
  z-index: 3 !important;
}

/* Right-top search block: match screenshot 2 */
header .linkTop {
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  width: 3.25rem !important;
  height: .76rem !important;
  padding: 0 .28rem 0 .48rem !important;
  box-sizing: border-box !important;
  background: #01844e !important;
  border-radius: 0 0 0 .42rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: .2rem !important;
  z-index: 10 !important;
}
header .linkTop a {
  display: inline-block !important;
  color: #fff !important;
  font-size: .2rem !important;
  line-height: .76rem !important;
  white-space: nowrap !important;
}
header .linkTop .search {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  height: .76rem !important;
  margin: 0 !important;
  padding-left: .34rem !important;
  border-left: .01rem solid rgba(255,255,255,.55) !important;
  color: #fff !important;
  font-size: .2rem !important;
  line-height: .76rem !important;
  white-space: nowrap !important;
}
header .linkTop .search::before {
  content: "";
  position: absolute;
  left: .14rem;
  top: 50%;
  width: .14rem;
  height: .14rem;
  border: .02rem solid #fff;
  border-radius: 50%;
  transform: translateY(-50%);
}
header .linkTop .search::after {
  content: "";
  position: absolute;
  left: .28rem;
  top: 50%;
  width: .08rem;
  height: .02rem;
  background: #fff;
  transform: translateY(.06rem) rotate(45deg);
  transform-origin: left center;
}

/* Fine tune right-top entrance to match reference image */
header .linkTop {
  width: 3rem !important;
  height: .76rem !important;
  right: -30px !important;
  top: 0 !important;
  padding: 0 .24rem 0 .34rem !important;
  border-radius: 0 0 0 .44rem !important;
  justify-content: center !important;
  gap: .18rem !important;
  overflow: hidden !important;
}
header .linkTop a {
  height: .76rem !important;
  line-height: .76rem !important;
  font-size: .19rem !important;
  padding-right: .18rem !important;
  border-right: .01rem solid rgba(255,255,255,.58) !important;
}
header .linkTop .search {
  width: auto !important;
  height: .76rem !important;
  line-height: .76rem !important;
  padding: 0 0 0 .3rem !important;
  margin: 0 !important;
  border-left: 0 !important;
  background: none !important;
  font-size: .19rem !important;
  letter-spacing: 0 !important;
}
header .linkTop .search::before {
  left: .01rem !important;
  width: .15rem !important;
  height: .15rem !important;
  border-width: .02rem !important;
}
header .linkTop .search::after {
  left: .16rem !important;
  width: .09rem !important;
  height: .02rem !important;
  transform: translateY(.07rem) rotate(45deg) !important;
}
@media (max-width: 7.6rem) {
  header .linkTop {
    width: 2.92rem !important;
    padding-left: .3rem !important;
  }
  header .linkTop a,
  header .linkTop .search {
    font-size: .18rem !important;
  }
}


/* Final academic achievement background: left white, right 50% bg1 */
.indexCon1 {
  background-color: #fff !important;
  background-image: linear-gradient(90deg, #fff 0%, #fff 50%, transparent 50%, transparent 100%), url("../image/bg1.png") !important;
  background-repeat: no-repeat, no-repeat !important;
  background-size: 100% 100%, 50% 100% !important;
  background-position: left top, right center !important;
}
.indexCon1::before,
.indexCon1::after {
  display: none !important;
}

/* Final header structure: title inside header, content below without overlap */
header {
  position: relative !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 80vh !important;
  min-height: 6.2rem !important;
  margin: 0 !important;
}
header .header-container {
  position: relative !important;
  z-index: 3 !important;
  height: 100% !important;
}
header .header-bottom {
  position: absolute !important;
  left: 50% !important;
  top: 2rem !important;
  width: 8.8rem !important;
  max-width: 86% !important;
  transform: translateX(-50%) !important;
  text-align: center !important;
  z-index: 4 !important;
}
header .header-bottom .env-hero-title {
  position: static !important;
  animation: envHeroIn 1.1s ease both .15s;
}
header .header-bottom .env-hero-title p {
  display: block !important;
  font-size: .15rem !important;
  letter-spacing: .06rem !important;
  margin-bottom: .18rem !important;
  color: #fff !important;
}
header .header-bottom .env-hero-title h1 {
  font-size: .34rem !important;
  letter-spacing: .08rem !important;
  margin: 0 0 .22rem !important;
  color: #fff !important;
}
header .header-bottom .env-hero-title h2 {
  font-size: .44rem !important;
  line-height: 1.28 !important;
  letter-spacing: .05rem !important;
  color: #fff !important;
}
header .header-bottom .env-banner-dots {
  position: static !important;
  display: flex !important;
  justify-content: center !important;
  gap: .12rem !important;
  margin-top: 2.6rem !important;
  transform: none !important;
}
.env-home-banner.ImgBanner {
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}
.env-home-banner .banner,
.env-home-banner .env-hero-title,
.env-home-banner .env-banner-dots {
  display: none !important;
}
.indexCon1 {
  position: relative !important;
  margin-top: 0 !important;
  z-index: 1 !important;
}

/* Force achievements section visible; do not hide it behind reveal animation */
.indexCon1,
.indexCon1 .lmTit,
.indexCon1 .new,
.indexCon1 .newImg,
.indexCon1 .newImg li,
.indexCon1 .newList,
.indexCon1 .newList li {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}
.indexCon1 {
  display: block !important;
  min-height: 6.4rem !important;
  padding-top: .95rem !important;
  padding-bottom: .8rem !important;
}
.indexCon1 .w1600 {
  display: block !important;
  position: relative !important;
  z-index: 2 !important;
}
.indexCon1 .new {
  display: flex !important;
}

/* ── Inner-page header: overlaid on nyBanner image ──────────────── */
html.inner .ImgBanner {
  position: relative !important;
  height: auto !important;
  min-height: 0 !important;
  margin-top: 0 !important;
  background: transparent !important;
  pointer-events: auto !important;
  overflow: visible !important;
}
html.inner .ImgBanner .nyBanner {
  display: block !important;
  width: 100% !important;
}
html.inner .ImgBanner .nyBanner img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}
html.inner header {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 1.12rem !important;
  min-height: 0 !important;
  overflow: visible !important;
  background: linear-gradient(180deg, rgba(0,0,0,.52) 0%, rgba(0,0,0,.28) 60%, rgba(0,0,0,.06) 100%) !important;
  z-index: 10 !important;
  isolation: auto !important;
}

/* Home top-right link/search block responsive sizing */
html.home:not(.inner) header .linkTop {
  width: clamp(2.15rem, 18vw, 1rem) !important;
  height: clamp(.52rem, 4.8vw, .6rem) !important;
  right: clamp(-.3rem, -1.6vw, -.3rem) !important;
  padding: 0 clamp(.14rem, 1.4vw, .24rem) 0 clamp(.2rem, 2vw, .34rem) !important;
  gap: clamp(.08rem, 1.1vw, .18rem) !important;
}
html.home:not(.inner) header .linkTop a,
html.home:not(.inner) header .linkTop .search {
  height: clamp(.52rem, 4.8vw, .76rem) !important;
  line-height: clamp(.52rem, 4.8vw, .76rem) !important;
  font-size: clamp(.14rem, 1.15vw, .19rem) !important;
}
html.home:not(.inner) header .linkTop a {
  padding-right: clamp(.08rem, 1vw, .18rem) !important;
}
html.home:not(.inner) header .linkTop .search {
  padding-left: clamp(.2rem, 1.8vw, .3rem) !important;
}
html.home:not(.inner) header .linkTop .search::before {
  width: clamp(.11rem, 1vw, .15rem) !important;
  height: clamp(.11rem, 1vw, .15rem) !important;
}
html.home:not(.inner) header .linkTop .search::after {
  left: clamp(.12rem, 1.2vw, .16rem) !important;
  width: clamp(.06rem, .8vw, .09rem) !important;
}
@media (max-width: 10rem) {
  html.home:not(.inner) header .linkTop {
    width: 2.18rem !important;
    right: 0 !important;
    border-radius: 0 0 0 .32rem !important;
  }
  html.home:not(.inner) header .linkTop a,
  html.home:not(.inner) header .linkTop .search {
    font-size: .14rem !important;
  }
}
html.inner header::before,
html.inner header::after {
  display: none !important;
  content: none !important;
}
html.inner header:hover::before {
  transform: none !important;
}
html.inner header .header-container {
  position: relative !important;
  z-index: 3 !important;
  height: 1.12rem !important;
}
html.inner header .flex-c {
  height: 1.12rem !important;
  align-items: flex-start !important;
  padding-top: 0 !important;
}
html.inner header .nav {
  padding-top: .24rem !important;
}

/* Keep home header visible below vendor 1040px breakpoint */
@media only screen and (max-width: 1040px) {
  html.home:not(.inner) .jb,
  html.home:not(.inner) header {
    display: block !important;
  }
  html.home:not(.inner) body {
    padding-top: 0 !important;
  }
  html.home:not(.inner) header {
    height: clamp(4.4rem, 64vw, 6.2rem) !important;
    min-height: 4.4rem !important;
    padding: 0 .12rem !important;
  }
  html.home:not(.inner) header .flex-c {
    width: 100% !important;
    height: auto !important;
    max-width: 8.8rem !important;
    padding-top: .18rem !important;
    justify-content: center !important;
    gap: .16rem !important;
  }
  html.home:not(.inner) header .nav {
    gap: .18rem !important;
    padding-top: .12rem !important;
  }
  html.home:not(.inner) header .nav > li > a {
    font-size: clamp(.15rem, 2.5vw, .22rem) !important;
    line-height: .32rem !important;
  }
  html.home:not(.inner) .env-logo-mark {
    width: .88rem !important;
    margin: 0 .14rem !important;
  }
  html.home:not(.inner) .env-logo-mark img {
    width: .78rem !important;
    height: .78rem !important;
  }
  html.home:not(.inner) header .header-bottom {
    top: 1.3rem !important;
  }
  html.home:not(.inner) header .header-bottom .env-hero-title h1 {
    font-size: clamp(.24rem, 4vw, .34rem) !important;
  }
  html.home:not(.inner) header .header-bottom .env-hero-title h2 {
    font-size: clamp(.28rem, 5vw, .44rem) !important;
  }
}

@media only screen and (max-width: 680px) {
  html.home:not(.inner) header .flex-c {
    transform: scale(.82) !important;
    transform-origin: top center !important;
  }
  html.home:not(.inner) header .linkTop {
    width: 1.45rem !important;
  }
  html.home:not(.inner) header .header-bottom {
    top: 1.05rem !important;
  }
}

.env-mobile-header,
.env-mobile-overlay,
.env-mobile-drawer {
  display: none;
}

/* Mobile drawer navigation for home page */
@media only screen and (max-width: 1040px) {
  html.home:not(.inner) .env-mobile-header {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 300;
    display: flex;
    width: 100%;
    height: .92rem;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
    padding: 0 .28rem;
    background: #01844e;
    box-shadow: 0 .04rem .16rem rgba(0,0,0,.12);
  }
  html.home:not(.inner) .env-mobile-brand {
    display: flex;
    align-items: center;
    min-width: 0;
    color: #fff;
  }
  html.home:not(.inner) .env-mobile-brand img {
    width: .56rem;
    height: .56rem;
    object-fit: contain;
    margin-right: .14rem;
  }
  html.home:not(.inner) .env-mobile-brand span {
    overflow: hidden;
    color: #fff;
    font-size: .22rem;
    font-weight: 700;
    letter-spacing: .04rem;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  html.home:not(.inner) .env-mobile-menu {
    position: relative;
    display: block;
    width: .44rem;
    height: .36rem;
    flex: 0 0 auto;
    margin-left: .18rem;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
  }
  html.home:not(.inner) .env-mobile-menu span {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: .025rem;
    background: #fff;
    transition: top .25s ease, transform .25s ease, opacity .2s ease;
  }
  html.home:not(.inner) .env-mobile-menu span:nth-child(1) { top: .03rem; }
  html.home:not(.inner) .env-mobile-menu span:nth-child(2) { top: .17rem; }
  html.home:not(.inner) .env-mobile-menu span:nth-child(3) { top: .31rem; }
  html.home:not(.inner) body.mobile-nav-open .env-mobile-menu span:nth-child(1) {
    top: .17rem;
    transform: rotate(45deg);
  }
  html.home:not(.inner) body.mobile-nav-open .env-mobile-menu span:nth-child(2) {
    opacity: 0;
  }
  html.home:not(.inner) body.mobile-nav-open .env-mobile-menu span:nth-child(3) {
    top: .17rem;
    transform: rotate(-45deg);
  }
  html.home:not(.inner) header .linkTop,
  html.home:not(.inner) header .flex-c {
    display: none !important;
    transform: none !important;
  }
  html.home:not(.inner) header {
    padding-top: .92rem !important;
  }
  html.home:not(.inner) header .header-bottom {
    top: 1.45rem !important;
  }
  html.home:not(.inner) .env-mobile-overlay {
    position: fixed;
    inset: 0;
    z-index: 250;
    display: block;
    background: rgba(0,0,0,.58);
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease, visibility .25s ease;
  }
  html.home:not(.inner) .env-mobile-drawer {
    position: fixed;
    right: 0;
    top: .92rem;
    z-index: 260;
    display: block;
    width: min(4.2rem, 82vw);
    height: calc(100vh - .92rem);
    overflow-y: auto;
    background: #fff;
    box-shadow: -.12rem 0 .3rem rgba(0,0,0,.18);
    transform: translateX(100%);
    transition: transform .28s ease;
  }
  html.home:not(.inner) body.mobile-nav-open .env-mobile-overlay {
    opacity: 1;
    visibility: visible;
  }
  html.home:not(.inner) body.mobile-nav-open .env-mobile-drawer {
    transform: translateX(0);
  }
  html.home:not(.inner) body.mobile-nav-open {
    overflow: hidden;
  }
  html.home:not(.inner) .env-mobile-drawer-search {
    display: flex;
    height: .6rem;
    align-items: center;
    box-sizing: border-box;
    padding: 0 .12rem 0 .2rem;
    border-bottom: .01rem solid #ddd;
  }
  html.home:not(.inner) .env-mobile-drawer-search input {
    display: block;
    flex: 1;
    min-width: 0;
    height: .38rem;
    box-sizing: border-box;
    border: .01rem solid #d8d8d8;
    border-radius: .03rem;
    padding: 0 .12rem;
    background: #fff;
    color: #111;
    font-size: .15rem;
    line-height: .38rem;
    outline: none;
  }
  html.home:not(.inner) .env-mobile-drawer-search input:focus {
    border-color: #01844e;
  }
  html.home:not(.inner) .env-mobile-drawer-search button {
    width: .7rem;
    height: .38rem;
    flex: 0 0 auto;
    margin-left: .08rem;
    border: 0;
    background: #fff;
    color: #111;
    font-size: .16rem;
    font-weight: 700;
    cursor: pointer;
    text-decoration: none;
  }
  html.home:not(.inner) .env-mobile-drawer ul,
  html.home:not(.inner) .env-mobile-drawer ol {
    margin: 0;
    padding: 0;
  }
  html.home:not(.inner) .env-mobile-drawer li {
    border-bottom: .01rem solid #e3e3e3;
  }
  html.home:not(.inner) .env-mobile-drawer li > a,
  html.home:not(.inner) .env-mobile-drawer li > button {
    display: flex;
    width: 100%;
    min-height: .54rem;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
    padding: 0 .2rem;
    border: 0;
    background: #fff;
    color: #111;
    font-size: .18rem;
    font-weight: 700;
    text-align: left;
    cursor: pointer;
    text-decoration: none !important;
  }
  html.home:not(.inner) .env-mobile-drawer a:hover,
  html.home:not(.inner) .env-mobile-drawer button:hover {
    color: #111;
    text-decoration: none !important;
  }
  html.home:not(.inner) .env-mobile-drawer button span {
    display: inline-flex;
    width: .22rem;
    height: .22rem;
    align-items: center;
    justify-content: center;
    border: 0 !important;
    color: #a41119;
    font-size: .24rem;
    font-weight: 400;
    line-height: .22rem;
    text-decoration: none !important;
    transition: transform .2s ease;
  }
  html.home:not(.inner) .env-mobile-drawer button:hover span,
  html.home:not(.inner) .env-mobile-drawer button span:hover {
    border: 0 !important;
    text-decoration: none !important;
    box-shadow: none !important;
  }
  html.home:not(.inner) .env-mobile-drawer .has-sub.open > button span {
    transform: rotate(45deg);
  }
  html.home:not(.inner) .env-mobile-drawer ol {
    display: none;
    background: #fafafa;
  }
  html.home:not(.inner) .env-mobile-drawer .has-sub.open > ol {
    display: block;
  }
  html.home:not(.inner) .env-mobile-drawer ol li a {
    min-height: .46rem;
    padding-left: .38rem;
    color: #333;
    font-size: .16rem;
    font-weight: 400;
  }
}

@media only screen and (max-width: 560px) {
  html.home:not(.inner) .env-mobile-header {
    height: .76rem;
    padding: 0 .18rem;
  }
  html.home:not(.inner) .env-mobile-brand img {
    width: .46rem;
    height: .46rem;
  }
  html.home:not(.inner) .env-mobile-brand span {
    font-size: .17rem;
    letter-spacing: .02rem;
  }
  html.home:not(.inner) .env-mobile-menu {
    width: .34rem;
    height: .3rem;
  }
  html.home:not(.inner) .env-mobile-menu span:nth-child(1) { top: .02rem; }
  html.home:not(.inner) .env-mobile-menu span:nth-child(2) { top: .14rem; }
  html.home:not(.inner) .env-mobile-menu span:nth-child(3) { top: .26rem; }
  html.home:not(.inner) body.mobile-nav-open .env-mobile-menu span:nth-child(1),
  html.home:not(.inner) body.mobile-nav-open .env-mobile-menu span:nth-child(3) {
    top: .14rem;
  }
  html.home:not(.inner) .env-mobile-drawer {
    top: .76rem;
    height: calc(100vh - .76rem);
  }
  html.home:not(.inner) header {
    padding-top: .76rem !important;
  }
}

/* Unified green theme for home/list/detail */
:root {
  --env-primary: #01844e;
  --env-primary-dark: #006a3e;
  --env-primary-deep: #004d2e;
  --env-primary-soft: #e8f5ef;
  --env-accent: #2fb36f;
}
.jb {
  background: linear-gradient(90deg, var(--env-primary) 45%, var(--env-primary-dark) 100%) !important;
}
header .linkTop,
html.home:not(.inner) .env-mobile-header {
  background: var(--env-primary) !important;
}
header .nav > li > a:hover,
header .nav > li:hover > a,
.indexCon1 .newList li a:hover .tit,
.env-link a:hover,
.nav > li > a:hover {
  color: var(--env-accent) !important;
}
header .nav li ol li:hover a,
html.inner header .nav li ol li:hover a {
  color: var(--env-primary) !important;
  background: var(--env-primary-soft) !important;
}
.pages .p_no_d,
.env-search-layer .ok,
.layer .search_box .ok,
html.home:not(.inner) .env-mobile-drawer-search button {
  background: var(--env-primary) !important;
  border-color: var(--env-primary) !important;
  color: #fff !important;
}
.pages a:hover,
.pages span:hover {
  border-color: var(--env-primary) !important;
  color: var(--env-primary) !important;
}
.indexCon1 .lmTit h2::after,
.lmTit h2::after,
.nyNav .erLm h2::after,
.conTit .tit::after {
  background: var(--env-primary) !important;
}
.nyNav .erNav li a.hover,
.nyNav .erNav li a:hover,
.erNav li a.hover,
.erNav li a:hover,
.conP_N a:hover,
.txtList ul li a:hover .tit,
.content a:hover {
  color: var(--env-primary) !important;
}
.txtList ul li a:hover,
.indexCon1 .newImg li a:hover,
.env-indexCon2 .research li a:hover,
.env-link {
  box-shadow: 0 .16rem .32rem rgba(1,132,78,.14) !important;
}
.indexCon1 .newList li .time span,
.txtList ul li .time span,
.conXq span,
.dqwz a:hover {
  color: var(--env-primary) !important;
}
.pages .p_no_d:hover {
  color: #fff !important;
}
.env-home-banner.ImgBanner {
  background-image: linear-gradient(90deg, rgba(1, 83, 50, .42), rgba(1, 132, 78, .18)), url("../image/ban_09190004.jpg") !important;
}
header::after {
  background: linear-gradient(180deg, rgba(0, 70, 42, .42) 0%, rgba(0, 70, 42, .14) 24%, rgba(0,0,0,0) 64%) !important;
}
.indexCon1 {
  background-image: linear-gradient(90deg, #fff 0%, #fff 50%, transparent 50%, transparent 100%), url("../image/bg1.png") !important;
}
.env-indexCon2.indexCon2 {
  background-image: linear-gradient(90deg, rgba(255,255,255,.88), rgba(232,245,239,.82)), url("../image/XZGYDSHYZYC.jpg") !important;
}
footer .foot,
footer {
  background-image: linear-gradient(90deg, rgba(0, 77, 46, .9), rgba(1, 132, 78, .78)), url("../image/footerBg.png") !important;
}
html.inner header {
  background: linear-gradient(180deg, rgba(0,77,46,.54) 0%, rgba(1,132,78,.3) 60%, rgba(1,132,78,.08) 100%) !important;
}
html.home:not(.inner) .env-mobile-drawer button span,
html.home:not(.inner) .env-mobile-drawer-search input:focus,
html.home:not(.inner) .env-mobile-drawer a:hover,
html.home:not(.inner) .env-mobile-drawer button:hover {
  color: var(--env-primary) !important;
  border-color: var(--env-primary) !important;
}
html.home:not(.inner) .env-mobile-drawer-search input:focus {
  color: #111 !important;
}

/* List page card readability on green hover background */
html.inner .txtList li a:hover .time,
html.inner .txtList li a:hover .time span,
html.inner .txtList li a:hover .tit {
  color: #fff !important;
}
html.inner .txtList li a:hover .txt {
  color: rgba(255,255,255,.86) !important;
}
html.inner .txtList li a:hover .sx {
  background: rgba(255,255,255,.72) !important;
}
html.inner .txtList li a:hover {
  box-shadow: 0 .15rem .3rem rgba(1,132,78,.22) !important;
}

/* Inner pages: make top search block match home header */
html.inner header .linkTop {
  position: absolute !important;
  right: clamp(-.3rem, -1.6vw, -.3rem) !important;
  top: 0 !important;
  width: clamp(2.15rem, 18vw, 1rem) !important;
  height: clamp(.52rem, 4.8vw, .6rem) !important;
  box-sizing: border-box !important;
  padding: 0 clamp(.14rem, 1.4vw, .24rem) 0 clamp(.2rem, 2vw, .34rem) !important;
  border-radius: 0 0 0 .44rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: clamp(.08rem, 1.1vw, .18rem) !important;
  overflow: hidden !important;
  background: var(--env-primary) !important;
  z-index: 10 !important;
}
html.inner header .linkTop a,
html.inner header .linkTop .search {
  height: clamp(.52rem, 4.8vw, .76rem) !important;
  line-height: clamp(.52rem, 4.8vw, .76rem) !important;
  font-size: clamp(.14rem, 1.15vw, .19rem) !important;
  color: #fff !important;
  white-space: nowrap !important;
}
html.inner header .linkTop .search {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
  margin: 0 !important;
  padding-left: clamp(.2rem, 1.8vw, .3rem) !important;
  border-left: 0 !important;
  background: none !important;
  letter-spacing: 0 !important;
  cursor: pointer;
}
html.inner header .linkTop .search::before {
  content: "";
  position: absolute;
  left: .01rem !important;
  top: 50%;
  width: clamp(.11rem, 1vw, .15rem) !important;
  height: clamp(.11rem, 1vw, .15rem) !important;
  border: .02rem solid #fff;
  border-radius: 50%;
  transform: translateY(-50%);
  background: transparent !important;
}
html.inner header .linkTop .search::after {
  content: "";
  position: absolute;
  left: clamp(.12rem, 1.2vw, .16rem) !important;
  top: 50%;
  width: clamp(.06rem, .8vw, .09rem) !important;
  height: .02rem !important;
  background: #fff;
  transform: translateY(.07rem) rotate(45deg) !important;
  transform-origin: left center;
}
@media (max-width: 10rem) {
  html.inner header .linkTop {
    width: 2.18rem !important;
    right: 0 !important;
    border-radius: 0 0 0 .32rem !important;
  }
  html.inner header .linkTop a,
  html.inner header .linkTop .search {
    font-size: .14rem !important;
  }
}

/* Desktop dropdown stability: keep submenu active while moving from parent to children */
header .nav li ol::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -.22rem;
  height: .22rem;
  background: transparent;
}
header .nav li:hover ol,
header .nav li ol:hover {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translate3d(-50%, 0, 0) !important;
  pointer-events: auto !important;
}

/* Unified mobile navigation for home/list/detail */
@media only screen and (max-width: 1040px) {
  html.home .env-mobile-header {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 300;
    display: flex;
    width: 100%;
    height: .92rem;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
    padding: 0 .28rem;
    background: var(--env-primary) !important;
    box-shadow: 0 .04rem .16rem rgba(0,0,0,.12);
  }
  html.home .env-mobile-brand {
    display: flex;
    align-items: center;
    min-width: 0;
    color: #fff;
  }
  html.home .env-mobile-brand img {
    width: .56rem;
    height: .56rem;
    object-fit: contain;
    margin-right: .14rem;
  }
  html.home .env-mobile-brand span {
    overflow: hidden;
    color: #fff;
    font-size: .22rem;
    font-weight: 700;
    letter-spacing: .04rem;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  html.home .env-mobile-menu {
    position: relative;
    display: block;
    width: .44rem;
    height: .36rem;
    flex: 0 0 auto;
    margin-left: .18rem;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
  }
  html.home .env-mobile-menu span {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: .025rem;
    background: #fff;
    transition: top .25s ease, transform .25s ease, opacity .2s ease;
  }
  html.home .env-mobile-menu span:nth-child(1) { top: .03rem; }
  html.home .env-mobile-menu span:nth-child(2) { top: .17rem; }
  html.home .env-mobile-menu span:nth-child(3) { top: .31rem; }
  html.home body.mobile-nav-open .env-mobile-menu span:nth-child(1) {
    top: .17rem;
    transform: rotate(45deg);
  }
  html.home body.mobile-nav-open .env-mobile-menu span:nth-child(2) {
    opacity: 0;
  }
  html.home body.mobile-nav-open .env-mobile-menu span:nth-child(3) {
    top: .17rem;
    transform: rotate(-45deg);
  }
  html.home .env-mobile-overlay {
    position: fixed;
    inset: 0;
    z-index: 250;
    display: block;
    background: rgba(0,0,0,.58);
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease, visibility .25s ease;
  }
  html.home .env-mobile-drawer {
    position: fixed;
    right: 0;
    top: .92rem;
    z-index: 260;
    display: block;
    width: min(4.2rem, 82vw);
    height: calc(100vh - .92rem);
    overflow-y: auto;
    background: #fff;
    box-shadow: -.12rem 0 .3rem rgba(0,0,0,.18);
    transform: translateX(100%);
    transition: transform .28s ease;
  }
  html.home body.mobile-nav-open .env-mobile-overlay {
    opacity: 1;
    visibility: visible;
  }
  html.home body.mobile-nav-open .env-mobile-drawer {
    transform: translateX(0);
  }
  html.home body.mobile-nav-open {
    overflow: hidden;
  }
  html.home .env-mobile-drawer-search {
    display: flex;
    height: .6rem;
    align-items: center;
    box-sizing: border-box;
    padding: 0 .12rem 0 .2rem;
    border-bottom: .01rem solid #ddd;
  }
  html.home .env-mobile-drawer-search input {
    display: block;
    flex: 1;
    min-width: 0;
    height: .38rem;
    box-sizing: border-box;
    border: .01rem solid #d8d8d8;
    border-radius: .03rem;
    padding: 0 .12rem;
    background: #fff;
    color: #111;
    font-size: .15rem;
    line-height: .38rem;
    outline: none;
  }
  html.home .env-mobile-drawer-search input:focus {
    border-color: var(--env-primary) !important;
  }
  html.home .env-mobile-drawer-search button {
    width: .7rem;
    height: .38rem;
    flex: 0 0 auto;
    margin-left: .08rem;
    border: 0;
    background: var(--env-primary) !important;
    color: #fff !important;
    font-size: .16rem;
    font-weight: 700;
    cursor: pointer;
    text-decoration: none;
  }
  html.home .env-mobile-drawer ul,
  html.home .env-mobile-drawer ol {
    margin: 0;
    padding: 0;
  }
  html.home .env-mobile-drawer li {
    border-bottom: .01rem solid #e3e3e3;
  }
  html.home .env-mobile-drawer li > a,
  html.home .env-mobile-drawer li > button {
    display: flex;
    width: 100%;
    min-height: .54rem;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
    padding: 0 .2rem;
    border: 0;
    background: #fff;
    color: #111;
    font-size: .18rem;
    font-weight: 700;
    text-align: left;
    cursor: pointer;
    text-decoration: none !important;
  }
  html.home .env-mobile-drawer li > a:hover,
  html.home .env-mobile-drawer li > button:hover {
    color: var(--env-primary) !important;
    text-decoration: none !important;
  }
  html.home .env-mobile-drawer button span {
    display: inline-flex;
    width: .22rem;
    height: .22rem;
    align-items: center;
    justify-content: center;
    border: 0 !important;
    color: var(--env-primary) !important;
    font-size: .24rem;
    font-weight: 400;
    line-height: .22rem;
    text-decoration: none !important;
    transition: transform .2s ease;
  }
  html.home .env-mobile-drawer button:hover span,
  html.home .env-mobile-drawer button span:hover {
    border: 0 !important;
    text-decoration: none !important;
    box-shadow: none !important;
  }
  html.home .env-mobile-drawer .has-sub.open > button span {
    transform: rotate(45deg);
  }
  html.home .env-mobile-drawer ol {
    display: none;
    background: #fafafa;
  }
  html.home .env-mobile-drawer .has-sub.open > ol {
    display: block;
  }
  html.home .env-mobile-drawer ol li a {
    min-height: .46rem;
    padding-left: .38rem;
    color: #333;
    font-size: .16rem;
    font-weight: 400;
  }
  html.inner .ImgBanner header {
    display: none !important;
  }
  html.inner .ImgBanner {
    padding-top: .92rem !important;
  }
}
@media only screen and (max-width: 560px) {
  html.home .env-mobile-header {
    height: .76rem;
    padding: 0 .18rem;
  }
  html.home .env-mobile-brand img {
    width: .46rem;
    height: .46rem;
  }
  html.home .env-mobile-brand span {
    font-size: .17rem;
    letter-spacing: .02rem;
  }
  html.home .env-mobile-menu {
    width: .34rem;
    height: .3rem;
  }
  html.home .env-mobile-menu span:nth-child(1) { top: .02rem; }
  html.home .env-mobile-menu span:nth-child(2) { top: .14rem; }
  html.home .env-mobile-menu span:nth-child(3) { top: .26rem; }
  html.home body.mobile-nav-open .env-mobile-menu span:nth-child(1),
  html.home body.mobile-nav-open .env-mobile-menu span:nth-child(3) {
    top: .14rem;
  }
  html.home .env-mobile-drawer {
    top: .76rem;
    height: calc(100vh - .76rem);
  }
  html.inner .ImgBanner {
    padding-top: .76rem !important;
  }
}
