/* ============================================================
   成都辰麓郁酒店管理有限公司 — 全站共享样式
   还原参考站 (绿色易优CMS模板) 的布局与配色
   主色 #2b9219  深绿 #258C44
   ============================================================ */

/* ---------- Reset / 基础 ---------- */
* { box-sizing: border-box; }
html { -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; line-height: 1.15; }
body {
    margin: 0;
    font-family: "Microsoft Yahei", PingFangSC-Regular, "Helvetica Neue", Helvetica, Arial, "Hiragino Sans GB", "Heiti SC", "WenQuanYi Micro Hei", sans-serif;
    line-height: 1.6;
    font-size: 14px;
    background: #fff;
    color: #333;
}
h1, h2, h3, h4, h5, h6 { margin: 0; font-weight: normal; }
p { margin: 0; }
a { color: #333; text-decoration: none; -webkit-transition: all .3s; transition: all .3s; }
a:hover { color: #2b9219; }
a img { border: 0; }
ul { margin: 0; list-style: none; padding: 0; }
img { max-width: 100%; border-style: none; }
button, input, select, textarea { line-height: 1.42857143; margin: 0; outline: none; font-family: inherit; }

/* ---------- 工具类 ---------- */
.clearfix { zoom: 1; }
.clearfix:before, .clearfix:after { display: table; line-height: 0; content: ""; }
.clearfix:after { clear: both; }
.img-center { text-align: center; font-size: 0; overflow: hidden; }
.img-center img { display: inline-block; width: 100%; height: 100%; max-width: 100%; max-height: 100%; vertical-align: middle; object-fit: cover; }

.container { padding: 0 15px; width: 1200px; margin: 0 auto; }

/* ---------- 顶部信息栏 + Logo + 导航 ---------- */
.header { background-color: #fff; position: relative; z-index: 50; }
.header .container { display: block; }
.header .logo { padding: 18px 0; float: left; }
.header .logo a { display: flex; align-items: center; gap: 12px; }
.header .logo .logo-svg { width: 56px; height: 56px; flex: 0 0 56px; display: block; }
.header .logo .logo-text { display: flex; flex-direction: column; line-height: 1.2; }
.header .logo .logo-name { font-size: 24px; font-weight: bold; color: #2b9219; letter-spacing: 1px; }
.header .logo .logo-slogan { font-size: 12px; color: #999; letter-spacing: 3px; margin-top: 4px; }

.header .text { float: right; line-height: 29px; font-weight: bold; font-size: 14px; color: #2b9219; margin: 6px 0; padding-left: 34px; background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 24 24' fill='none' stroke='%232b9219' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.36 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.34 1.85.57 2.81.7A2 2 0 0 1 22 16.92z'/></svg>") no-repeat left center; background-size: 26px; }
.header .text span { display: block; color: #888; font-weight: normal; font-size: 12px; }
.header .text i { font-style: normal; font-size: 22px; color: #2b9219; font-family: Arial; }

.header .nav { border-top: 1px solid #eee; background-color: #fff; }
.header .nav ul { display: block; }
.header .nav li { float: left; width: 140px; margin-right: 10px; position: relative; }
.header .nav li:last-child { margin-right: 0; }
.header .nav li a { display: block; line-height: 46px; margin-top: 4px; text-align: center; border-radius: 23px; font-size: 16px; }
.header .nav li.active > a, .header .nav li > a:hover, .header .nav li.open > a { background-color: #2b9219; color: #fff; }
.header .nav li.dropdown > a:after { content: ''; display: inline-block; width: 0; height: 0; margin-left: 6px; vertical-align: middle; border-top: 5px solid #999; border-left: 4px solid transparent; border-right: 4px solid transparent; }
.header .nav li.active > a:after, .header .nav li > a:hover:after { border-top-color: #fff; }
.header .nav li .dropdown-box { position: absolute; left: 0; top: 100%; width: 100%; padding-top: 2px; background-color: #2b9219; display: none; z-index: 10; }
.header .nav li .dropdown-box a { border-bottom: 1px solid #1d7a13; line-height: 42px; color: #fff; font-size: 14px; border-radius: 0; }
.header .nav li .dropdown-box a:last-child { border-bottom: 0; }
.header .nav li .dropdown-box a:hover { background-color: #258C44; color: #fff; }
.header .nav li:hover .dropdown-box, .header .nav li.open .dropdown-box { display: block; }

.menu-btn { display: none; float: right; padding: 10px 0; cursor: pointer; }
.menu-btn span, .menu-btn:before, .menu-btn:after { display: block; height: 3px; background-color: #2b9219; content: ''; border-radius: 2px; }
.menu-btn span { width: 26px; margin: 5px 0; }
.menu-btn:before { width: 26px; }
.menu-btn:after { width: 18px; margin-left: 8px; }

/* ---------- 移动端抽屉导航 (top-level hidden) ---------- */
.m-nav, .m-overlay { display: none; }

/* ---------- Banner 轮播 ---------- */
.banner { height: 470px; overflow: hidden; position: relative; background: #eef3ef; }
.banner .swiper-wrapper { height: 100%; }
.banner .swiper-slide { background: no-repeat center / cover; height: 100%; position: relative; }
.banner .swiper-slide:after { content: ''; position: absolute; inset: 0; background: rgba(0,0,0,.28); }
.banner .slide-text { position: absolute; left: 0; right: 0; top: 50%; transform: translateY(-50%); text-align: center; color: #fff; z-index: 2; padding: 0 20px; }
.banner .slide-text h3 { font-size: 40px; font-weight: bold; letter-spacing: 2px; text-shadow: 0 2px 12px rgba(0,0,0,.4); }
.banner .slide-text p { font-size: 16px; margin-top: 14px; letter-spacing: 3px; text-shadow: 0 1px 6px rgba(0,0,0,.4); }
.banner .swiper-pagination { position: absolute; bottom: 18px; left: 0; right: 0; text-align: center; z-index: 3; }
.banner .swiper-pagination span { display: inline-block; width: 12px; height: 12px; margin: 0 5px; background: rgba(255,255,255,.6); border-radius: 50%; cursor: pointer; }
.banner .swiper-pagination span.active { background: #fff; width: 30px; border-radius: 6px; }
.banner .arr-l, .banner .arr-r { position: absolute; top: 50%; transform: translateY(-50%); width: 44px; height: 64px; background: rgba(0,0,0,.25); color: #fff; font-size: 28px; line-height: 64px; text-align: center; cursor: pointer; z-index: 3; }
.banner .arr-l { left: 0; } .banner .arr-r { right: 0; }
.banner .arr-l:hover, .banner .arr-r:hover { background: #2b9219; }

/* ---------- 搜索/热门关键词栏 ---------- */
.eyou-sou { padding: 14px 0; background-color: #f5f5f5; }
.eyou-sou .hot { float: left; padding: 6px 0; font-size: 13px; color: #666; }
.eyou-sou .hot strong { color: #258C44; }
.eyou-sou .hot a { margin-right: 12px; color: #666; }
.eyou-sou .hot a:hover { color: #2b9219; }
.eyou-sou .hform { float: right; }
.eyou-sou .hform input { float: left; font-size: 13px; border: 1px solid #ddd; padding: 7px 12px; line-height: 18px; width: 210px; border-right: 0; }
.eyou-sou .hform button { border: 0; padding: 0; float: left; cursor: pointer; width: 60px; height: 34px; background: #258C44; color: #fff; font-size: 13px; }

/* ---------- 区块通用 ---------- */
.section { padding: 50px 0; }
.section1 { padding: 50px 0; }
.section-title { margin-bottom: 36px; font-size: 26px; text-align: center; position: relative; }
.section-title p { color: #999; margin: 8px 0 0; font-size: 14px; letter-spacing: 2px; text-transform: uppercase; }
.section-title:after { content: ''; display: block; width: 50px; height: 3px; background: #2b9219; margin: 14px auto 0; }

/* ---------- 服务内容 (swiper 卡片) ---------- */
.service-arr { text-align: center; margin-top: 24px; }
.service-arr .swiper-button-prev, .service-arr .swiper-button-next { display: inline-block; width: 40px; height: 30px; line-height: 30px; text-align: center; background-color: #2b9219; color: #fff; cursor: pointer; margin: 0 5px; font-size: 16px; }
.service-grid { width: 100%; }
.service-card { display: block; background: #fff; border: 1px solid #eee; -webkit-transition: all .3s; transition: all .3s; }
.service-card .img-center { overflow: hidden; height: 200px; }
.service-card .img-center img { width: 100%; height: 100%; object-fit: cover; -webkit-transition: all .4s; transition: all .4s; }
.service-card:hover { box-shadow: 0 8px 24px rgba(0,0,0,.1); transform: translateY(-4px); }
.service-card h4 { font-weight: normal; font-size: 18px; margin: 16px 14px 8px; text-align: center; }
.service-card p { color: #999; margin: 0 14px 18px; font-size: 13px; line-height: 1.8; }

/* 大more 按钮 */
.big-more { display: block; margin: 30px auto 0; width: 168px; border: 1px solid #e9e9e9; line-height: 44px; color: #999; text-align: center; }
.big-more:hover { background-color: #2b9219; color: #fff; border-color: #2b9219; }

/* ---------- 关于我们 ---------- */
.about { background-color: #fff; }
.about .img-center { float: right; width: 360px; height: 260px; }
.about .img-center img { width: 100%; height: 100%; object-fit: cover; }
.about .text { margin-right: 400px; }
.about .text h4 { padding-left: 16px; border-left: 4px solid #2b9219; color: #2b9219; font-size: 24px; line-height: 1.4; display: block; }
.about .text p { margin: 16px 0 0; color: #666; line-height: 1.9; font-size: 14px; }
.about .text .about-stats { margin-top: 22px; }
.about .text .about-stats .st { display: inline-block; text-align: center; margin-right: 36px; }
.about .text .about-stats .st b { display: block; font-size: 28px; color: #2b9219; font-family: Arial; }
.about .text .about-stats .st span { font-size: 13px; color: #999; }
.about .text .big-more { margin: 24px 0 0; }

/* ---------- 产品展示 (list-1 四栏) ---------- */
.list-1 { margin: -20px 0 0 -25px; width: 100%; }
.list-1 li { float: left; width: 25%; }
.list-1 li a { display: block; margin-left: 25px; margin-top: 20px; }
.list-1 li .img-center { overflow: hidden; height: 180px; border: 1px solid #f0f0f0; }
.list-1 li .img-center img { width: 100%; height: 100%; object-fit: cover; -webkit-transition: all .3s; transition: all .3s; }
.list-1 li p { margin: 10px 0 0; text-align: center; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: 15px; }
.list-1 li a:hover .img-center img { -webkit-transform: scale(1.08); transform: scale(1.08); }
.list-1 li a:hover p { color: #2b9219; }
.list-1-1 li { width: 33.333333%; }

/* ---------- 酒店实景 gallery (左大图 + 右竖排缩略) ---------- */
.gallery-left { float: left; width: 760px; height: 380px; overflow: hidden; }
.gallery-left .gview { width: 100%; height: 100%; background: no-repeat center / cover; -webkit-transition: all .4s; transition: all .4s; }
.gallery-thumbs { float: right; width: 400px; background-color: #fff; }
.gallery-thumbs .more { display: none; }
.gallery-thumbs .swiper-slide { cursor: pointer; }
.gallery-thumbs .swiper-slide a { display: block; padding: 10px 12px; overflow: hidden; border-bottom: 1px solid #e5e5e5; }
.gallery-thumbs .swiper-slide .m { float: left; width: 110px; height: 64px; background: no-repeat center / cover; }
.gallery-thumbs .swiper-slide .text { margin-left: 124px; }
.gallery-thumbs .swiper-slide .text h4 { line-height: 26px; font-size: 15px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.gallery-thumbs .swiper-slide .text p { color: #adadad; margin: 4px 0 0; line-height: 20px; font-size: 12px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.gallery-thumbs .swiper-slide.active a { background-color: #2b9219; color: #fff; }
.gallery-thumbs .swiper-slide.active .text p { color: #d6efc8; }

/* ---------- 新闻资讯 (list-2 两栏) ---------- */
.list-2 { margin: -30px 0 0 -100px; width: 100%; }
.list-2 li { float: left; width: 50%; }
.list-2 li a { display: block; margin: 30px 0 0 100px; overflow: hidden; }
.list-2 li .img-center { float: left; width: 150px; height: 100px; overflow: hidden; }
.list-2 li .img-center img { width: 100%; height: 100%; object-fit: cover; -webkit-transition: all .3s; transition: all .3s; }
.list-2 li .text { margin-left: 170px; }
.list-2 li .text h4 { font-size: 16px; margin: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; line-height: 24px; }
.list-2 li .text h4 span { float: right; color: #999; font-size: 12px; font-weight: normal; }
.list-2 li .text p { color: #999; font-size: 12px; line-height: 22px; height: 66px; overflow: hidden; margin: 8px 0 0; }
.list-2 li a:hover .img-center img { -webkit-transform: scale(1.1); transform: scale(1.1); }
.list-2 li a:hover h4 { color: #2b9219; }

/* ---------- 合作伙伴 logo 墙 ---------- */
.partner-list { text-align: center; }
.partner-list .partner-item { display: inline-block; width: 16%; margin: 0 4px 14px; vertical-align: middle; }
.partner-list .partner-item span { display: block; line-height: 70px; border: 1px solid #eee; background: #fff; color: #888; font-size: 15px; -webkit-transition: all .3s; transition: all .3s; }
.partner-list .partner-item span:hover { border-color: #2b9219; color: #2b9219; }

/* ---------- 联系我们 (首页全宽绿块, 无地图) ---------- */
.contact { background: #2b9219; color: #fff; padding: 56px 0; text-align: center; }
.contact-inner { max-width: 920px; margin: 0 auto; padding: 0 15px; }
.ct-label { font-size: 16px; letter-spacing: 5px; opacity: .85; margin: 0 0 8px; }
.ct-phone { font-size: 46px; font-family: Arial, "Microsoft Yahei", sans-serif; font-weight: bold; letter-spacing: 3px; line-height: 1.1; margin: 0; }
.ct-phone:after { content: ''; display: block; width: 56px; height: 3px; background: rgba(255,255,255,.45); margin: 18px auto 24px; }
.ct-info { font-size: 15px; line-height: 2.1; opacity: .96; }
.ct-info p { margin: 0; }
.ct-info b { font-weight: normal; opacity: .7; margin-right: 6px; }
/* 联系页 交通指引框 */
.loc-box { border: 1px solid #eee; background: #fafafa; padding: 24px 28px; line-height: 2.2; }
.loc-box p { margin: 4px 0; color: #555; font-size: 14px; }
.loc-box b { color: #2b9219; font-weight: normal; margin-right: 6px; }

/* ---------- 友情链接 ---------- */
.eyou-link { padding: 20px 0; }
.eyou-link h4 { border-bottom: 1px solid #ddd; margin: 0; font-size: 18px; color: #2b9219; padding-bottom: 14px; }
.eyou-link h4 small { text-transform: uppercase; font-size: 14px; font-weight: normal; color: #999; }
.eyou-link ul { margin-left: -20px; }
.eyou-link li { float: left; margin-left: 20px; margin-top: 16px; }
.eyou-link li a { color: #666; font-size: 13px; }

/* ---------- 页脚 ---------- */
.footer { background-color: #404040; color: #fff; padding: 40px 0; }
.footer a { color: #fff; }
.footer a:hover { color: #8ed06a; }
.footer .ewm { float: right; width: 100px; margin: -10px 0; text-align: center; }
.footer .ewm img { width: 97px; height: 97px; background: #fff; padding: 4px; }
.footer .ewm p { font-size: 12px; margin-top: 6px; }
.footer p { margin: 6px 0; font-size: 13px; line-height: 1.9; }
.footer .ft-brand { font-size: 16px; font-weight: bold; margin-bottom: 8px; }

/* ---------- 内页 banner + 面包屑 ---------- */
.banner-sub { background: no-repeat center / cover; height: 250px; position: relative; }
.banner-sub:after { content: ''; position: absolute; inset: 0; background: rgba(0,0,0,.32); }
.banner-sub .bsub-text { position: absolute; left: 0; right: 0; top: 50%; transform: translateY(-50%); text-align: center; color: #fff; z-index: 2; }
.banner-sub .bsub-text h2 { font-size: 30px; letter-spacing: 2px; }
.banner-sub .bsub-text p { font-size: 13px; margin-top: 8px; letter-spacing: 3px; opacity: .9; }

.section > .container.clearfix { } /* sidebar+main wrapper */
.sidebar { float: left; width: 250px; }
.lanmu { margin-bottom: 20px; border-bottom: 2px solid #2b9219; background-color: #fafafa; }
.lanmu h4 { margin: 0; background-color: #2b9219; color: #fff; font-size: 22px; line-height: 64px; text-align: center; }
.lanmu li a { display: block; border-bottom: 1px solid #e8e8e8; line-height: 50px; padding: 0 20px; font-size: 15px; }
.lanmu li:last-child a { border-bottom: 0; }
.lanmu li.active a, .lanmu li a:hover { background-color: #eef7ea; color: #2b9219; padding-left: 26px; }
.cc { background-color: #fafafa; padding: 18px 18px; }
.cc p { margin: 5px 0; font-size: 13px; color: #666; line-height: 1.9; }
.cc .cc-tel { font-size: 20px; color: #2b9219; font-weight: bold; font-family: Arial; }

.main { float: right; width: 910px; }
.wz { border: 1px solid #eee; margin-bottom: 20px; padding: 8px 14px; line-height: 26px; font-size: 13px; color: #888; background: #fafafa; }
.wz a { color: #888; }
.wz a:hover { color: #2b9219; }

/* 分页 */
.pages { text-align: center; margin-top: 30px; }
.pagination { display: inline-block; }
.pagination a, .pagination span { display: inline-block; margin: 0 3px; padding: 6px 12px; background-color: #f2f2f2; font-size: 13px; color: #666; border-radius: 3px; }
.pagination a.active, .pagination a:hover { background-color: #2b9219; color: #fff; }

/* 新闻列表 list-3 (日期块) */
.list-3 { width: 100%; }
.list-3 li { padding: 20px 0; border-bottom: 1px dashed #eee; }
.list-3 li a { display: block; overflow: hidden; }
.list-3 li .time { width: 90px; text-align: center; background: #f5f5f5; font-size: 34px; line-height: 50px; color: #666; border-radius: 6px; overflow: hidden; float: left; }
.list-3 li .time span { display: block; line-height: 28px; font-size: 12px; color: #fff; background-color: #2b9219; }
.list-3 li .text { margin-left: 110px; }
.list-3 li .text h4 { margin: 0; font-size: 16px; line-height: 26px; font-weight: normal; color: #333; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.list-3 li .text p { line-height: 24px; margin: 6px 0 0; color: #888; font-size: 13px; overflow: hidden; }
.list-3 li a:hover .text h4 { color: #2b9219; }

/* 文章标题 (新闻详情) */
.content-title { border-bottom: 1px solid #eee; padding-bottom: 24px; text-align: center; padding-top: 10px; }
.content-title h1 { font-size: 26px; margin: 0; font-weight: normal; color: #222; }
.content-title p { margin: 16px 0 0; font-size: 12px; color: #999; }
.content-title p span { padding: 0 10px; }

.content-body { line-height: 1.9; padding: 10px 0; }
.content-body p { margin: 0 0 16px; color: #555; font-size: 14px; text-indent: 2em; }
.content-body img { max-width: 100% !important; height: auto !important; display: block; margin: 16px auto; border-radius: 4px; }
.content-body h3 { font-size: 18px; color: #2b9219; margin: 22px 0 12px; font-weight: bold; text-indent: 0; }

.content-exp { color: #666; padding-top: 18px; border-top: 1px dashed #eee; font-size: 13px; }
.content-exp p { margin: 6px 0; }
.content-exp a { color: #2b9219; }

.eyou-infocontent-rem { margin-top: 24px; }
.eyou-infocontent-rem h4 { margin: 0; font-size: 18px; line-height: 44px; color: #2b9219; border-left: 4px solid #2b9219; padding-left: 12px; }
.eyou-infocontent-rem ul li { border-top: 1px dashed #eee; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; line-height: 42px; font-size: 14px; }
.eyou-infocontent-rem ul li span { float: right; color: #999; font-size: 12px; }
.eyou-infocontent-rem ul li a:hover { color: #2b9219; }
.eyou-infocontent-return { border-top: 1px dashed #eee; line-height: 32px; margin-top: 20px; font-size: 13px; color: #888; }
.eyou-infocontent-return a { margin-right: 10px; }

/* ---------- 产品详情 ---------- */
.eyou-showcase { padding-bottom: 24px; border-bottom: 1px dashed #eee; }
.pc-slide { float: left; width: 380px; }
.pc-slide .view { width: 100%; height: 310px; overflow: hidden; border: 1px solid #eee; }
.pc-slide .view .imgauto { width: 100%; height: 100%; }
.pc-slide .view .imgauto img { width: 100%; height: 100%; object-fit: cover; }
.pc-slide .preview { width: 100%; margin-top: 10px; }
.pc-slide .preview .thumb { width: 110px; height: 80px; float: left; margin-right: 10px; border: 2px solid #eee; cursor: pointer; overflow: hidden; }
.pc-slide .preview .thumb img { width: 100%; height: 100%; object-fit: cover; }
.pc-slide .preview .thumb.active { border-color: #2b9219; }
.eyou-showcase-info { float: right; width: 500px; }
.eyou-showcase-info h1 { margin: 0 0 14px; font-size: 24px; line-height: 1.5; color: #222; }
.eyou-showcase-info .desc { color: #777; font-size: 14px; line-height: 1.9; margin-bottom: 18px; }
.eyou-showcase-info .tel { border-top: 2px solid #f0f0f0; margin-top: 16px; padding-top: 18px; }
.eyou-showcase-info .tel .hotline { font-size: 13px; color: #999; }
.eyou-showcase-info .tel .hotline b { display: block; font-size: 26px; color: #2b9219; font-family: Arial; margin-top: 4px; }
.eyou-showcase-info .btn { display: inline-block; line-height: 42px; padding: 0 26px; background-color: #2b9219; color: #fff; margin-top: 14px; font-size: 15px; }
.eyou-showcase-info .btn:hover { background-color: #258C44; color: #fff; }

/* 产品参数表 */
.prod-params { width: 100%; border-collapse: collapse; margin: 8px 0 10px; font-size: 14px; }
.prod-params th, .prod-params td { border: 1px solid #eee; padding: 11px 16px; text-align: left; }
.prod-params th { background: #f7faf5; color: #333; width: 130px; font-weight: normal; }
.prod-params td { color: #666; }

/* 产品特点 */
.feat-list { width: 100%; }
.feat-item { display: flex; align-items: flex-start; gap: 14px; padding: 16px 0; border-bottom: 1px dashed #eee; }
.feat-item .feat-ico { width: 44px; height: 44px; flex: 0 0 44px; border-radius: 50%; background: #eef7ea; color: #2b9219; display: flex; align-items: center; justify-content: center; font-size: 20px; }
.feat-item .feat-body h5 { font-size: 15px; color: #333; margin-bottom: 4px; }
.feat-item .feat-body p { color: #888; font-size: 13px; line-height: 1.7; }

/* 子标题 (详情页区块) */
.sub-h3 { font-size: 18px; color: #2b9219; margin: 24px 0 14px; padding-left: 12px; border-left: 4px solid #2b9219; font-weight: bold; }

/* ---------- 关于我们页 增强内容 ---------- */
.about-intro { padding: 10px 0; }
.timeline { position: relative; padding: 10px 0 0 10px; margin: 10px 0; }
.timeline:before { content: ''; position: absolute; left: 20px; top: 0; bottom: 0; width: 2px; background: #d8ead0; }
.tl-item { position: relative; padding: 0 0 26px 50px; }
.tl-item:before { content: ''; position: absolute; left: 13px; top: 4px; width: 16px; height: 16px; border-radius: 50%; background: #2b9219; border: 3px solid #fff; box-shadow: 0 0 0 2px #2b9219; }
.tl-item .tl-year { font-size: 20px; color: #2b9219; font-weight: bold; font-family: Arial; }
.tl-item .tl-desc { color: #666; font-size: 14px; margin-top: 4px; line-height: 1.8; }

.culture-grid { width: 100%; margin-top: 10px; }
.culture-card { text-align: center; border: 1px solid #eee; padding: 26px 18px; background: #fff; -webkit-transition: all .3s; transition: all .3s; }
.culture-card .c-ico { width: 56px; height: 56px; margin: 0 auto 12px; border-radius: 50%; background: #eef7ea; color: #2b9219; display: flex; align-items: center; justify-content: center; font-size: 24px; }
.culture-card h5 { font-size: 17px; color: #333; margin-bottom: 8px; }
.culture-card p { color: #888; font-size: 13px; line-height: 1.8; }
.culture-card:hover { box-shadow: 0 8px 22px rgba(0,0,0,.08); transform: translateY(-4px); border-color: #d8ead0; }

.team-grid { width: 100%; }
.team-card { text-align: center; }
.team-card .img-center { width: 160px; height: 160px; border-radius: 50%; overflow: hidden; margin: 0 auto 12px; border: 3px solid #eef7ea; }
.team-card .img-center img { width: 100%; height: 100%; object-fit: cover; }
.team-card h5 { font-size: 17px; color: #333; }
.team-card p { color: #2b9219; font-size: 13px; margin-top: 4px; }

/* 简易网格 (替代 Bootstrap col) */
.row { margin: 0 -12px; width: 100%; }
.row:before, .row:after { display: table; line-height: 0; content: ""; }
.row:after { clear: both; }
.col { float: left; width: 100%; padding: 0 12px; }
.col-2 { width: 50%; } .col-3 { width: 33.3333%; } .col-4 { width: 25%; }
.col-5 { width: 20%; } .col-6 { width: 16.6667%; }

/* ---------- 联系我们页 表单 ---------- */
.contact-info { margin-bottom: 30px; }
.contact-info .ci-card { border: 1px solid #eee; padding: 22px 16px; text-align: center; background: #fff; -webkit-transition: all .3s; transition: all .3s; }
.contact-info .ci-card .ci-ico { width: 50px; height: 50px; margin: 0 auto 12px; border-radius: 50%; background: #eef7ea; color: #2b9219; display: flex; align-items: center; justify-content: center; font-size: 22px; }
.contact-info .ci-card h5 { font-size: 16px; color: #333; margin-bottom: 6px; }
.contact-info .ci-card p { color: #777; font-size: 14px; word-break: break-all; }
.contact-info .ci-card:hover { box-shadow: 0 8px 22px rgba(0,0,0,.08); transform: translateY(-3px); }

.cform { background: #fafafa; padding: 30px; border: 1px solid #eee; }
.cform .form-row { margin-bottom: 16px; }
.cform label { display: block; font-size: 14px; color: #555; margin-bottom: 6px; }
.cform label em { color: #d9534f; font-style: normal; }
.cform .inp, .cform textarea { width: 100%; padding: 9px 12px; border: 1px solid #ddd; border-radius: 3px; font-size: 14px; color: #555; background: #fff; }
.cform textarea { height: 110px; resize: vertical; }
.cform .inp:focus, .cform textarea:focus { border-color: #2b9219; }
.cform .btn-submit { display: inline-block; padding: 10px 36px; background: #2b9219; color: #fff; border: 0; font-size: 15px; cursor: pointer; border-radius: 3px; }
.cform .btn-submit:hover { background: #258C44; }
.cform .form-note { color: #999; font-size: 12px; margin-top: 10px; }

/* ---------- 滚动淡入 ---------- */
.fade-in { opacity: 1; }
html.js .fade-in { opacity: 0; transform: translateY(24px); -webkit-transition: opacity .7s ease, -webkit-transform .7s ease; transition: opacity .7s ease, transform .7s ease; }
html.js .fade-in.visible { opacity: 1; transform: translateY(0); }

/* ---------- 返回顶部 ---------- */
.back-top { position: fixed; right: 24px; bottom: 40px; width: 46px; height: 46px; line-height: 46px; text-align: center; background: #2b9219; color: #fff; border-radius: 4px; cursor: pointer; font-size: 22px; z-index: 200; opacity: 0; visibility: hidden; -webkit-transition: all .3s; transition: all .3s; }
.back-top.show { opacity: .9; visibility: visible; }
.back-top:hover { background: #258C44; }

/* ---------- 图片兜底 ---------- */
.img-fallback { background: linear-gradient(135deg, #2b9219, #258C44); }

/* ============================================================
   响应式
   ============================================================ */
@media screen and (max-width: 1200px) {
    .container { width: 100%; }
}

@media screen and (max-width: 1024px) {
    .header .text { display: none; }
    .header .nav { display: none; }
    .menu-btn { display: block; }
    /* 抽屉显示 */
    .m-nav { display: none; position: fixed; right: -300px; top: 0; width: 280px; height: 100%; background: #fff; z-index: 999; overflow-y: auto; box-shadow: -3px 0 16px rgba(0,0,0,.15); transition: right .3s; }
    .m-nav.open { display: block; right: 0; }
    .m-overlay { display: none; position: fixed; inset: 0; background: rgba(0,0,0,.4); z-index: 998; }
    .m-overlay.open { display: block; }
    .m-nav .m-logo { padding: 16px; font-size: 18px; color: #2b9219; font-weight: bold; border-bottom: 1px solid #eee; }
    .m-nav li a { display: block; padding: 13px 18px; border-bottom: 1px solid #f0f0f0; font-size: 15px; color: #333; }
    .m-nav li a:hover, .m-nav li.active a { background: #eef7ea; color: #2b9219; }
    .m-nav li .m-sub a { padding-left: 38px; font-size: 14px; color: #888; }

    .main { float: none; width: auto; }
    .sidebar { display: none; }
    .gallery-left { float: none; width: 100%; height: 300px; }
    .gallery-thumbs { float: none; width: 100%; margin-top: 14px; }
    .list-1-1 li { width: 50%; }
}

@media screen and (max-width: 767px) {
    body { font-size: 14px; }
    .container { padding: 0 15px; width: auto; }
    .header { padding: 8px 0; }
    .header .logo .logo-svg { width: 42px; height: 42px; flex-basis: 42px; }
    .header .logo .logo-name { font-size: 18px; }
    .header .logo .logo-slogan { font-size: 10px; letter-spacing: 2px; }
    .section, .section1 { padding: 30px 0; }
    .section-title { font-size: 20px; margin-bottom: 22px; }
    .banner { height: 200px; }
    .banner .slide-text h3 { font-size: 22px; }
    .banner .slide-text p { font-size: 13px; }
    .banner .arr-l, .banner .arr-r { width: 32px; height: 48px; line-height: 48px; font-size: 20px; }
    .eyou-sou .hot { display: none; }
    .eyou-sou .hform { float: none; }
    .eyou-sou .hform input { width: 70%; }
    .about .img-center { float: none; width: 100%; height: 200px; }
    .about .text { margin-right: 0; }
    .list-1 { margin: -15px 0 0 -15px; }
    .list-1 li { width: 50%; }
    .list-1 li a { margin-left: 15px; margin-top: 15px; }
    .list-2 { margin: -20px 0 0; }
    .list-2 li { width: 100%; }
    .list-2 li a { margin: 20px 0 0; }
    .list-2 li .img-center { width: 110px; }
    .list-2 li .text { margin-left: 128px; }
    .contact { padding: 40px 0; }
    .ct-label { font-size: 14px; letter-spacing: 3px; }
    .ct-phone { font-size: 30px; letter-spacing: 2px; }
    .ct-phone:after { margin: 14px auto 18px; }
    .ct-info { font-size: 13px; line-height: 1.9; }
    .partner-list .partner-item { width: 46%; }
    .footer { font-size: 12px; text-align: center; padding: 24px 0; }
    .footer .ewm { float: none; margin: 0 auto 14px; }
    .banner-sub { height: 130px; }
    .banner-sub .bsub-text h2 { font-size: 20px; }
    .list-3 li .time { width: 64px; font-size: 22px; line-height: 38px; }
    .list-3 li .text { margin-left: 80px; }
    .content-title h1 { font-size: 19px; }
    .content-title p { display: none; }
    .pc-slide, .eyou-showcase-info { float: none; width: auto; }
    .eyou-showcase-info { margin-top: 18px; }
    .col-2, .col-3, .col-4, .col-5, .col-6 { width: 100%; }
    .col-3, .col-4 { width: 50%; }
    .culture-card, .team-card { margin-bottom: 16px; }
    .cform { padding: 18px; }
}

@media screen and (max-width: 479px) {
    .list-1 li { width: 100%; }
    .col-3, .col-4 { width: 100%; }
    .partner-list .partner-item { width: 100%; }
}
