[class*="col-"] {
  padding-left: 0;
  padding-right: 0;
}
.row {
  margin: 0;
}
* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}
div,
dl,
dt,
dd,
form,
h1,
h2,
h3,
h4,
h5,
h6,
img,
ol,
ul,
li,
table,
th,
td,
p,
span,
a {
  border: 0;
}
div:hover,
dl:hover,
dt:hover,
dd:hover,
form:hover,
h1:hover,
h2:hover,
h3:hover,
h4:hover,
h5:hover,
h6:hover,
img:hover,
ol:hover,
ul:hover,
li:hover,
table:hover,
th:hover,
td:hover,
p:hover,
span:hover,
a:hover {
  text-decoration: none;
}
img,
input {
  border: none;
  vertical-align: middle;
}
body {
  font-family: "PingFang SC", "-apple-system", "BlinkMacSystemFont", "Segoe UI", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 12px;
  text-align: left;
  background: #fff;
  color: #333;
  height: 100%;
}
html {
  overflow-y: scroll;
  height: 100%;
}
ul,
ol {
  list-style-type: none;
  margin: 0;
}
th,
td,
input {
  font-size: 12px;
}
h3 {
  font-size: 14px;
}
button {
  border: none;
  cursor: pointer;
  font-size: 12px;
  background-color: transparent;
}
select {
  border-width: 1px;
  _zoom: 1;
  border-style: solid;
  padding-top: 2px;
  font-size: 12px;
}
.clearfix:after {
  content: "";
  display: block;
  height: 0;
  visibility: hidden;
  clear: both;
}
.clearfix {
  zoom: 1;
}
a:link,
a:visited {
  text-decoration: none;
  color: #333;
}
a:hover,
a:active {
  color: #cd0000;
}
.fl {
  float: left;
}
.fr {
  float: right;
}
.ell {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.ell-rows-3 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  max-height: 90px;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.ell-rows-2 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  max-height: 90px;
  overflow: hidden;
}
.font20 {
  font-size: 1.042vw !important;
}
.font20 a {
  font-size: 1.042vw !important;
}
.font22 {
  font-size: 22px !important;
}
.font44 {
  font-size: 55px !important;
}
.video-box {
  width: 100%;
  position: relative;
  cursor: pointer;
}
.video-box.origin {
  height: 700px;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-position: left top;
  background-size: 100% 700px;
}
.video-box.origin .video-img {
  font-size: 50px;
  color: #fff;
  padding-top: 270px;
  background: transparent url(img/play.png) no-repeat center 370px;
  background-size: 60px 60px;
}
.video-box video {
  width: 100%;
  height: 100%;
  object-fit: fill;
}
.video-box .video-img {
  overflow: hidden;
  text-align: center;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background: transparent url(img/play.png) no-repeat center;
  background-size: 60px 60px;
  color: #fff;
  font-size: 60px;
  z-index: 3;
}
.video-box .video-img img {
  position: relative;
  z-index: 2;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.video-txt .title {
  padding-top: 134px;
  font-size: 50px;
  color: #333;
}
.video-txt .content {
  font-size: 20px;
  line-height: 30px;
  color: #666;
  padding: 20px 30% 65px;
}
.text-box.col-12 {
  padding-bottom: 55px;
}
.linkMore {
  display: inline-block;
  border: 1px solid #7a7a7c;
  min-width: 11.563vw;
  padding: 0 1.667vw;
  font-size: 1.042vw;
  line-height: 3.385vw;
  text-align: center;
  vertical-align: middle;
  color: #666;
  cursor: pointer;
}
.linkMore.unpublish {
  cursor: default;
  opacity: 0.5;
}
.linkMore.unpublish:hover {
  color: #666;
  background-color: rgba(255, 255, 255, 0.6);
  border: 1px solid #7a7a7c;
}
.linkMore.unpublish:hover span::after {
  background: none;
  display: none;
}
.linkMore.unpublish span {
  cursor: default;
}
.linkMore.unpublish span::after {
  content: '';
  display: none;
  vertical-align: middle;
  background: none;
  background-color: rgba(255, 255, 255, 0.6);
}
.linkMore span {
  font-size: 1.042vw;
  vertical-align: middle;
  cursor: pointer;
}
.linkMore span::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 1.302vw;
  height: 1.302vw;
  margin-left: 0.208vw;
  background: url(img/readMore.png) no-repeat center;
  background-size: 1.302vw 1.302vw;
}
.linkMore:hover {
  color: #fff;
  background-color: #cd0000;
  border: 1px solid #cd0000;
  transition: all 0.8s;
}
.linkMore:hover span::after {
  background: url('img/moreHover.png') no-repeat center;
  background-size: 25px 25px;
}
.fixed-video-box {
  position: fixed;
  left: 50%;
  top: 50%;
  width: 900px;
  height: 600px;
  margin-left: -450px;
  margin-top: -300px;
  z-index: 99999;
}
.fixed-video-box.full {
  width: 100vw;
  height: 100vh;
  left: 0;
  top: 0;
  margin: 0;
  padding-bottom: 10px;
}
.fixed-video-box.full .video-js .vjs-control-bar {
  position: fixed;
}
.fixed-video-box .close-box {
  position: absolute;
  right: 0;
  top: 0;
  width: 80px;
  height: 80px;
  background: url('img/searchClose.png') no-repeat center;
  background-size: 80px 80px;
  z-index: 100000;
  cursor: pointer;
}
.video-sy-w {
  position: relative;
  width: 100%;
  height: 52vw;
  overflow: hidden;
  background: #000;
}
.video-mask {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.video-i-w .video-js {
  width: 100%;
  height: 100%;
}
.bg-mask {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.bg-mask img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.index-video-info {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
}

.index-video-info .videoTitle {
  position:absolute;
  left:7vw;
  bottom: 6vw;
  text-align: left;
}
.index-video-info .videoTxtSy {
  font-size: 3.125vw;
  color: #fff;
  margin-top:-10vw;
}
.index-video-info .videoPlayImg {
  display: block;
  opacity: 0.7;
  /* margin: 0 auto; */
  margin-top: 15px;
  margin-left: 15px;
  width: 7.083vw;
height: 1.719vw;
}
.index-video-info .videoPlayImg:hover {

  opacity: 1;

}
.index-video-info .videoPlayImg.en{
	width:11.3vw;
	height:1.97vw;
}
.change-box .img-box{
	background: none;
}
/* 固定居中播放器 */
.fixed-video-box {
  position: fixed;
  display: none;
  left: 50%;
  top: 50%;
  width: 900px;
  height: 600px;
  margin-left: -450px;
  margin-top: -300px;
  z-index: 99999;
}
.fixed-video-box.full {
  width: 100vw;
  height: 100vh;
  left: 0;
  top: 0;
  margin: 0;
  padding-bottom: 0;
}
.fixed-video-box.full .video-js .vjs-control-bar {
  position: fixed;
}

.fixed-video-box .close-box {
  position: absolute;
  right: 0;
  top: 0;
  width: 4.167vw;
  height: 4.167vw;
  background: url('img/searchClose.png') no-repeat center;
  background-size: 4.167vw 4.167vw;
  z-index: 100000;
  cursor: pointer;
}
.change-box {
  position: absolute;
  right: 3%;
  bottom: 2%;
  z-index: 12;
}
.change-box ul li {
  float: left;
}
.change-box ul li > div {
  width: 11.198vw;
  height: 8.333vw;
  padding-top: 0.521vw;
  position: relative;
  margin-left: 0.573vw;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.change-box ul li > div .progress {
  background: #a9a4a5 !important;
}
.change-box ul li > div .num {
  display: none;
  position: absolute;
  left: 0;
  bottom: 1.302vw;
  height: 1.042vw;
  font-size: 0.729vw;
  color: #a39ea0;
}
.change-box ul li > div .num span {
  font-size: 1.042vw;
  color: #cd0000;
}
.change-box ul li > div .hover-title {
  display: none;
  width: 100%;
  text-align: center;
  position: absolute;
  left: 0;
  white-space: nowrap;
  font-size: 0.729vw;
  top: 0;
  color: #a9a4a5;
  overflow: hidden;
  text-overflow: ellipsis;
}
.change-box ul li > div .img-box {
  display: none;
  width: 100%;
  text-align: center;
  position: absolute;
  left: 0;
  color: #4c4c4c;
  bottom: 0.677vw;
  height: 5.99vw;
}
.change-box ul li > div .img-box video {
  object-fit: fill;
}
.change-box ul li > div:hover .img-box,
.change-box ul li > div:hover .hover-title {
  display: block;
}
  .fixed-code{
  display:none;}

  .img-box .video-js{
	width:100%;
}

/* ===================================================
   品牌展示区块
   =================================================== */
.brand-video-section.news-box {
  overflow: hidden;
}
.brand-video-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.615vw;
  overflow: hidden;
}
/* 完全覆盖 big-box 的 float/margin/width */
.brand-video-list .default-box.big-box {
  float: none !important;
  margin: 0 !important;
  width: calc((100% - 3.23vw) / 3) !important;
  cursor: pointer;
  box-sizing: border-box;
}
/* 封面图高度固定 */
.brand-video-list .default-box.big-box .img-box {
  height: 15.26vw;
}
/* 无视频时隐藏播放图标 */
.brand-video-list .default-box.big-box .play:not(.has-video) {
  display: none;
}
.brand-video-list .default-box.big-box .play.has-video {
  display: block;
}

/* ===================================================
   百岁山产品页（goods-bss）— 仅 bss-* 命名空间，不影响其他页面
   =================================================== */
.bss-page section.pro { position: relative; }
.bss-page section.pro img { width: 100%; }

/* bss-1：产品主图区 */
.bss-page section.pro.bss-1 {
  padding: 5.63vw 0 3.18vw;
  text-align: center;
  font-family: PingFang SC, Arial, Helvetica, sans-serif;
}
.bss-page section.pro.bss-1 > img:nth-child(1) {
  width: 13.54vw; margin-bottom: 0.63vw;
  display: block; position: relative; left: 28%;
}
.bss-page section.pro.bss-1 > img:nth-child(2) { width: 43.49vw; }
.bss-page section.pro.bss-1 > img:nth-child(3) { width: 65.36vw; margin-top: -4vw; }
.bss-page section.pro.bss-1 h2 {
  font-size: 3.33vw; font-weight: bold; color: #000;
  line-height: 3.47vw; margin-bottom: 1.93vw; margin-top: -10vw;
}
.bss-page section.pro.bss-1 p {
  font-size: 1.04vw; font-weight: 300; color: #120605;
  line-height: 1.88vw; margin-bottom: 1.8vw;
}
.bss-page section.pro.bss-1 a {
  font-size: 1.04vw; font-weight: 300; color: #848484; line-height: 2.6vw;
}

/* bss-2：矿泉水对比区 */
.bss-page section.pro.bss-2 { position: relative; }
.bss-page section.pro.bss-2 .text-wrap {
  position: absolute; right: 12vw; top: 16.88vw;
  color: #fff; line-height: 4.69vw; font-size: 2.33vw;
}
.bss-page section.pro.bss-2 .text-wrap a { margin-top: 2.71vw; }
.bss-page section.pro.bss-2 dl.gray-wrap {
  display: flex; justify-content: center; padding: 1.35vw 11.46vw;
}
.bss-page section.pro.bss-2 dl.gray-wrap dd {
  border-radius: 10px; padding: 1.91vw 2.19vw;
  position: relative; width: 37.5vw; margin: 0 1vw;
}
.bss-page section.pro.bss-2 dl.gray-wrap dd.d1 { background: #e7e6e6; }
.bss-page section.pro.bss-2 dl.gray-wrap dd.d1 h2 {
  font-size: 3.33vw; font-weight: bold; color: #121212; line-height: 7.81vw;
}
.bss-page section.pro.bss-2 dl.gray-wrap dd.d1 p {
  font-size: 1.04vw; font-weight: 400; color: #121212; line-height: 1.56vw;
}
.bss-page section.pro.bss-2 dl.gray-wrap dd.d1 img {
  width: 19.01vw; margin-top: -7vw; margin-left: 12vw;
}
.bss-page section.pro.bss-2 dl.gray-wrap dd.d2 h2 {
  font-size: 3.91vw; font-weight: bold; color: #000; line-height: 7.81vw;
}
.bss-page section.pro.bss-2 dl.gray-wrap dd.d2 img {
  position: absolute; top: 0; right: 0; height: 100%; z-index: -1;
}
.bss-page section.pro.bss-2 dl.gray-wrap dd.d2 p {
  font-size: 1.04vw; font-weight: 400; color: #000; line-height: 1.56vw;
}
.bss-page section.pro.bss-2 .cer {
  width: 77.19vw; padding: 4.79vw 4.32vw; display: flex;
  margin: 0 auto; border-radius: 10px; background: #e7e6e6;
}
.bss-page section.pro.bss-2 .cer h2 {
  width: 28.8vw; font-size: 3.33vw; font-weight: bold;
  color: #121212; line-height: 4vw;
}
.bss-page section.pro.bss-2 .cer p {
  width: 27.24vw; font-size: 1.04vw; font-weight: 400;
  color: #121212; line-height: 1.88vw;
}
.bss-page section.pro.bss-2 .cer img { width: 34.79vw; margin-left: 5.89vw; }

/* bss-3：水源地对比区 */
.bss-page section.pro.bss-3 { padding: 3.85vw 7.39vw 11vw; }
.bss-page section.pro.bss-3 dl { display: flex; }
.bss-page section.pro.bss-3 dl img { position: absolute; top: 0; left: 0; z-index: -1; }
.bss-page section.pro.bss-3 dl dd {
  position: relative; width: 40.63vw; margin: 0 1vw; padding: 3.07vw 3.39vw;
}
.bss-page section.pro.bss-3 dl h2 {
  width: 25.16vw; font-size: 3.33vw; font-weight: bold;
  color: #fff; line-height: 4.4vw;
}
.bss-page section.pro.bss-3 dl p {
  width: 24.74vw; font-size: 1.04vw; font-weight: 400;
  color: #fff; line-height: 1.56vw;
}

/* bss-4：产品瓶型展示区 */
.bss-page section.pro.bss-4 { padding-top: 11.3vw; }
.bss-page section.pro.bss-4 a { margin: 1.93vw 11.4vw 0; display: inline-block; }
.bss-page section.pro.bss-4 h2 {
  font-size: 3.33vw; font-weight: 500; color: #3d3d3d;
  line-height: 1.46vw; padding: 0 11.4vw;
}
.bss-page section.pro.bss-4 p {
  font-size: 1.04vw; font-weight: 300; color: #3d3d3d;
  padding: 0 11.4vw; line-height: 1.46vw;
}
.bss-page section.pro.bss-4 .bottle-list {
  width: 100%; display: flex; justify-content: space-evenly;
  align-items: flex-end; position: relative;
  border-bottom: 1px solid #444; padding: 0 12vw 2vw;
}
.bss-page section.pro.bss-4 .bottle-list .img-wrap { text-align: center; }
.bss-page section.pro.bss-4 .bottle-list .img-wrap img { height: auto; width: 70%; }
.bss-page section.pro.bss-4 .bottle-list span {
  font-weight: 300; display: block; margin-top: 4.06vw;
  color: #fff; font-size: 1.2vw;
}
.bss-page section.pro.bss-4 .bottle-list b {
  border: 1px solid #aaa; color: #fe565f; padding: 0 3px; font-weight: normal;
}
.bss-page section.pro.bss-4 .bottle-list::before {
  content: ''; position: absolute; background-color: #333;
  height: 17vw; bottom: 0; width: 100%; z-index: -1;
}

/* btn-a 通用按钮 */
.bss-page .btn-a {
  display: inline-block; padding: 0.7vw 2.5vw;
  border: 1px solid #333; color: #333; font-size: 1.04vw;
  text-decoration: none; margin-top: 1.5vw;
}
.bss-page .btn-a:hover { background: #333; color: #fff; }

/* ===================================================
   文章列表页（list_article）
   =================================================== */
.article-list-page {
  min-height: 60vh;
  padding-bottom: 5vw;
}

/* 内页 Banner */
.alp-banner {
  width: 100%;
  position: relative;
  overflow: hidden;
  line-height: 0;
}
.alp-banner img {
  width: 100%;
  height: 20.83vw;
  object-fit: cover;
  display: block;
}
.alp-banner-title {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 2.5vw;
  font-weight: 600;
  letter-spacing: 0.2vw;
  text-shadow: 0 2px 8px rgba(0,0,0,0.4);
  white-space: nowrap;
}

/* 内容居中容器：用 padding 实现，彻底解决偏左 */
.alp-wrap {
  padding: 0 7.031vw;
  box-sizing: border-box;
}

/* 页面标题栏 */
.inner-page-header {
  padding: 3vw 0 2.5vw;
  border-bottom: 1px solid #e5e5e5;
}
.inner-page-title {
  font-size: 1.667vw;
  font-weight: 500;
  color: #121212;
  line-height: 1.4;
  margin: 0;
}

/* 列表容器 */
.article-list-page .media-centre {
  padding-top: 3vw;
  width: 100%;
  box-sizing: border-box;
}

/* media-box 卡片（补充 app.css 因 Vue scoped 未生效的样式） */
.media-box {
  margin-right: 1.979vw;
  margin-bottom: 2.188vw;
  width: 26.458vw;
  height: 34.635vw;
  text-align: left;
  overflow: hidden;
  background-color: #f5f7f9;
  float: left;
}
.media-box:nth-child(3n+3) { margin-right: 0; }
.media-box:hover .title { color: #db1010; }
.media-box:hover img { transform: scale(1.2); }

.media-box .media-img {
  width: 100%; height: 16.406vw;
  overflow: hidden; position: relative;
}
.media-box .media-img img {
  height: 100%; width: 100%;
  object-fit: cover; transition: all 1s;
}

.media-box > div {
  height: 19.01vw; position: relative;
  padding: 2.24vw 1.667vw 0;
}
.media-box > div .title {
  color: #333; font-size: 1.458vw;
  min-height: 4.688vw; margin-bottom: 1.563vw;
}
.media-box > div .content {
  box-sizing: content-box; margin-bottom: 1.563vw;
  font-size: 1.042vw; color: #888;
}
.media-box > div .bottom-box {
  position: absolute; left: 1.667vw; bottom: 1.667vw;
  width: 22.656vw; padding: 2.083vw 0 0;
  border-top: 1px solid #dcdcdc;
}
.media-box > div .bottom-box .time {
  font-size: 1.042vw; color: #a5a5a5;
}
.media-box > div .bottom-box a { cursor: pointer; }
.media-box > div .bottom-box .read-more {
  cursor: pointer; float: right; display: inline-block;
  width: 1.302vw; height: 1.302vw;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23333' d='M8 5l8 7-8 7'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* ell-rows 截断（补充 Vue scoped 未生效） */
.ell-rows-2, .ell-rows-3 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ell-rows-2 { -webkit-line-clamp: 2; max-height: 4.688vw; }
.ell-rows-3 { -webkit-line-clamp: 3; max-height: 4.688vw; }

/* 分页 */
.alp-page-box {
  padding: 3vw 0 4vw;
  clear: both;
}
.paging {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5vw;
}
.paging .num {
  display: flex;
  align-items: center;
  gap: 0.3vw;
  list-style: none;
  margin: 0;
  padding: 0;
}
.paging .num li {
  display: inline-block; font-size: 1.042vw;
  color: #333; cursor: pointer;
}
.paging .num li a {
  display: inline-block;
  padding: 0.3vw 0.7vw;
  color: inherit; text-decoration: none;
}
.paging .num li.active a { color: #db1010; font-weight: bold; }
.paging .num li a:hover { color: #db1010; }
.paging .go-left,
.paging .go-right {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.604vw; height: 2.604vw;
  background-color: #ddd; border-radius: 50%;
  cursor: pointer; flex-shrink: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23666' d='M9 6l6 6-6 6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 50%;
}
.paging .go-left { transform: rotate(180deg); }
.paging .go-left.disabled,
.paging .go-right.disabled { opacity: 0.3; cursor: default; }

/* 无内容提示 */
.no-article {
  width: 100%; text-align: center;
  padding: 5vw 0; color: #999; font-size: 1.04vw;
}

/* ===================================================
   宣传视频页（brand-video.htm）
   =================================================== */
.brand-video-page { min-height: 60vh; padding-bottom: 5vw; }

/* 与新闻列表页使用相同的内边距居中 */
.bvp-wrap {
  padding: 0 7.031vw;
  box-sizing: border-box;
}
.bvp-wrap .inner-page-header {
  padding: 3vw 0 2.5vw;
  border-bottom: 1px solid #e5e5e5;
}

/* 视频卡片列表：3列flex，复用首页样式 */
.brand-video-page .brand-video-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.615vw;
  padding-top: 3vw;
  overflow: hidden;
}
.brand-video-page .brand-video-list .default-box.big-box {
  float: none !important;
  margin: 0 !important;
  width: calc((100% - 3.23vw) / 3) !important;
  cursor: pointer;
  box-sizing: border-box;
}
.brand-video-page .brand-video-list .default-box.big-box .img-box {
  height: 15.26vw;
}
.brand-video-page .brand-video-list .default-box.big-box .play:not(.has-video) {
  display: none;
}
.brand-video-page .brand-video-list .default-box.big-box .play.has-video {
  display: block;
}