/* 0.公共部分 */
.img img,
.ico img,
.pic img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* 文字对齐 */
.perse {
  /* 文字对齐 */
  text-align: justify;
  text-align-last: left;
  text-justify: inter-ideograph;
}

.perse-cn {
  text-align: center;
}

/* 超出隐藏 */
.ceal {
  /* 超出隐藏 */
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tow2 {
  /* 文字最多显示几行 */
  overflow: hidden;
  text-overflow: ellipsis; /* 超出部分省略号 */
  word-break: break-all; /* break-all(允许在单词内换行。) */
  display: -webkit-box; /* 对象作为伸缩盒子模型显示 */
  -webkit-box-orient: vertical; /* 设置或检索伸缩盒对象的子元素的排列方式 */
  -webkit-line-clamp: 2; /* 显示的行数 */
  max-height: 80rpx; /* 设置最大高度，根据行高，要几行乘以几倍 */
}

.lin32 {
  line-height: 32px;
}
.lin36 {
  line-height: 36px;
}
.lin38 {
  line-height: 38px;
}
.lin40 {
  line-height: 40px;
}

.size20 {
  font-size: 20px;
}
.size18 {
  font-size: 18px;
}

.dis {
  margin: 90px auto 140px;
}

.dis-sm {
  margin: 60px auto 90px;
}

.dis-in-top {
  margin-top: 60px;
}

.dis-top-lg {
  margin-top: 120px;
}

.rox-wr {
  display: flex;
  flex-wrap: wrap;
}

.rox-db {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media (max-width: 1400px) {
  .dis {
    margin: 60px auto 140px;
  }
  .dis-sm {
    margin: 30px auto 90px;
  }
  .dis-top-lg {
    margin-top: 70px;
  }
}

@media (max-width: 1000px) {
  .dis {
    margin: 30px auto 90px;
  }
  .dis-in-top {
    margin-top: 30px;
  }
  .dis-top-lg {
    margin-top: 30px;
  }
  .dis-in-bom {
    margin-bottom: 30px;
  }
  .dis-sm {
    margin: 30px auto 70px;
  }
  .lin32 {
    line-height: 26px;
  }
  .lin36 {
    line-height: 29px;
  }
  .lin38 {
    line-height: 30px;
  }
  .lin40 {
    line-height: 32px;
  }
  .size20 {
    font-size: 17px;
  }
  .size18 {
    font-size: 14px;
  }
  .rox-db {
    flex-direction: column;
  }
}

/* 1.新闻动态 */
.news {
  width: 100%;
  height: auto;
}

.news li a {
  display: block;
  width: 100%;
  height: auto;
}

.news li {
  width: calc((100% / 3) - 51px);
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 3px 3px 7px 0px rgba(0, 0, 0, 0.12);
}

.news li:not(:nth-child(3n)) {
  margin-right: 68px;
}

.news li:nth-child(n + 4) {
  margin-top: 50px;
}

.news li .img {
  width: 100%;
}

.news li .det {
  width: 100%;
  height: 100%;
  color: #3d3d3d;
  box-sizing: border-box;
  padding: 20px 20px 30px;
}

.news li .det p {
  margin-top: 10px;
}

@media (max-width: 1400px) {
  .news li {
    width: calc((100% / 3) - 10px);
    border-radius: 10px;
  }
  .news li:not(:nth-child(3n)) {
    margin-right: 15px;
  }
  .news li:nth-child(n + 4) {
    margin-top: 30px;
  }
}

@media (max-width: 1000px) {
  .news li {
    width: calc((100% / 2) - 5px);
    border-radius: 5px;
  }
  .news li:not(:nth-child(3n)) {
    margin-right: 0;
  }
  .news li:nth-child(n + 4) {
    margin-top: 0;
  }
  .news li:not(:nth-child(2n)) {
    margin-right: 10px;
  }
  .news li:nth-child(n + 3) {
    margin-top: 20px;
  }
  .news li .det {
    padding: 15px 15px 20px;
  }
  .news li .det p {
    margin-top: 5px;
  }
  .news-pic {
    height: 150px;
  }
}

@media (max-width: 580px) {
  .news li {
    width: 100%;
  }
  .news li:not(:nth-child(2n)) {
    margin-right: 0;
  }
  .news li:nth-child(n + 3) {
    margin-top: 0;
  }
  .news li:nth-child(n + 2) {
    margin-top: 15px;
  }
}

/* 2.关于我们 */
.about {
  padding-bottom: 0;
  margin-bottom: -10px;
}

.about .img img {
  width: 380px;
}

@media (max-width: 680px) {
  .about {
    padding-bottom: 60px;
    margin-bottom: -20px;
  }
}

/* 3.产品服务 */
.serve-gra {
  background: linear-gradient(272deg, rgba(233, 249, 255, 1) 0%, #ffffff 100%);
}

.serve-inside {
  max-width: 1300px;
  width: 95%;
  margin: 0px auto;
  clear: both;
}

.serve {
  padding: 90px 0 60px;
}

.serve-cons {
  margin-top: 30px;
}

.serve .cite {
  margin-top: 20px;
  color: #05a6fa;
  font-weight: bold;
}

.serve-full .txt {
  margin: 30px auto 0;
}

.serve-full .img {
  margin: 0 auto;
}

.serve .txt,
.serve .img {
  width: 47%;
}

.serve1 .txt {
  width: 46%;
}
.serve1 .img {
  width: 35%;
}

.serve2 .txt {
  width: 50%;
}
.serve2 .img {
  width: 36%;
}

.serve3 .txt {
  width: 42%;
}
.serve3 .img {
  width: 42%;
}

.serve4 .txt {
  width: 49%;
}
.serve4 .img {
  width: 46%;
}

.serve5 .txt {
  width: 92%;
}
.serve5 .img {
  width: 77%;
}

.serve6 .txt {
  width: 47%;
}
.serve6 .img {
  width: 31%;
}

.serve7 .txt {
  width: 56%;
}
.serve7 .img {
  width: 35%;
}

.serve8 .txt {
  width: 48%;
}
.serve8 .img {
  width: 28%;
}

.serve9 .txt {
  width: 44%;
}
.serve9 .img {
  width: 35%;
}

.serve10 .txt {
  width: 46%;
}
.serve10 .img {
  width: 42%;
}

.serve11 .txt {
  width: 62%;
}
.serve11 .img {
  width: 28%;
}

.serve12 .txt {
  width: 67%;
}
.serve12 .img {
  width: 28%;
}

.serve13 .txt {
  width: 46%;
}
.serve13 .img {
  width: 48%;
}

.serve14 .txt {
  width: 50%;
}
.serve14 .img {
  width: 33%;
}

.serve15 .txt {
  width: 53%;
}
.serve15 .img {
  width: 35%;
}

.serve16 .txt {
  width: 53%;
}
.serve16 .img {
  width: 33%;
}

.serve17 .txt {
  width: 62%;
}
.serve17 .img {
  width: 20%;
}

@media (max-width: 1000px) {
  .serve {
    padding: 30px 0 30px;
  }
  .serve .img {
    width: 50%;
    order: 1;
  }
  .serve-full .img {
    width: 100%;
  }
  .serve .txt {
    width: 100%;
    order: 2;
    margin-top: 15px;
  }
  .serve-full .txt {
    margin: 15px auto 0;
  }
  .serve .cite {
    margin-top: 15px;
  }
}

/* 4.案例展示 */
.case-inside {
  max-width: 1200px;
  width: 95%;
  margin: 0px auto;
  clear: both;
}

.case {
  color: #ffffff;
  height: 680px;
  background: url(./../img/case1-bg.png) no-repeat center/cover;
}

.case-bom {
  color: #ffffff;
  height: 530px;
  background: url(./../img/case-bom1-bg.png) no-repeat center/cover;
}

.case-bom-bl {
  color: #222222;
}

.case1 {
  background: url(./../img/case1-bg.png) no-repeat center/cover;
}
.case2 {
  background: url(./../img/case2-bg.png) no-repeat center/cover;
}
.case3 {
  background: url(./../img/case3-bg.png) no-repeat center/cover;
}
.case4 {
  background: url(./../img/case4-bg.png) no-repeat center/cover;
}
.case5 {
  background: url(./../img/case5-bg.png) no-repeat center/cover;
}
.case6 {
  background: url(./../img/case6-bg.png) no-repeat center/cover;
}
.case7 {
  background: url(./../img/case7-bg.png) no-repeat center/cover;
}
.case8 {
  background: url(./../img/case8-bg.png) no-repeat center/cover;
}

.case-bom1 {
  height: 530px;
  background: url(./../img/case-bom1-bg.png) no-repeat center/cover;
}
.case-bom2 {
  height: 500px;
  background: url(./../img/case-bom2-bg.png) no-repeat center/cover;
}
.case-bom3 {
  height: 498px;
  background: url(./../img/case-bom3-bg.png) no-repeat center/cover;
}
.case-bom4 {
  height: 500px;
  background: url(./../img/case-bom4-bg.png) no-repeat center/cover;
}
.case-bom5 {
  height: 500px;
  background: url(./../img/case-bom5-bg.png) no-repeat center/cover;
}

.case .case-banner {
  padding: 23px 0;
}

.case-bom .case-bom-cons {
  padding: 32px 0;
}

.case .case-title {
  color: #ffffff;
}

.case-arch .title-white {
  color: #ffffff;
}

.case .case-title p,
.case-bom .case-title p {
  font-size: 46px;
  text-align: center;
}

.case .txt {
  width: 44%;
  opacity: 0.8;
  margin-top: 124px;
  position: relative;
  padding-bottom: 40px;
}

.case-bom .txt {
  width: 35%;
  opacity: 0.8;
  margin-top: 140px;
}

.case .txt::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 68px;
  height: 4px;
  background-color: #ffffff;
  opacity: 0.8;
}

.case .txt2::before {
  display: none;
}

.case-arch-cons {
  margin-top: 30px;
}

.case-pic {
  max-width: 1200px;
  width: 95%;
  margin: 120px auto 0;
  clear: both;
}

.case-pic img {
  width: 100%;
}

.case-pic1 {
  max-width: 1400px;
}
.case-pic2 {
  max-width: 980px;
}
.case-pic3 {
  max-width: 1300px;
}
.case-pic4 {
  max-width: 1300px;
}
.case-pic5 {
  max-width: 1400px;
}
.case-pic6 {
  max-width: 1023px;
}
.case-pic7 {
  max-width: 1076px;
}
.case-pic8 {
  max-width: 780px;
}

.case-arch4 {
  padding-top: 37px;
  background: url(./../img/case-arch4-bg.png) no-repeat center/cover;
}

.case-arch .txt,
.case-arch .img {
  width: 50%;
}

.case-arch1 .txt {
  width: 40%;
}
.case-arch1 .img {
  width: 35%;
}

.case-arch2 .txt {
  width: 41%;
}
.case-arch2 .img {
  width: 39%;
}

.case-arch3 .txt {
  width: 49%;
}
.case-arch3 .img {
  width: 36%;
}

.case-arch4 .txt {
  width: 49%;
  color: #ffffff;
}
.case-arch4 .img {
  width: 36%;
}

@media (max-width: 1400px) {
  .case-pic {
    margin: 70px auto 0;
  }
}

@media (max-width: 1200px) {
  .case {
    height: 480px;
  }
  .case .case-title p,
  .case-bom .case-title p {
    font-size: 36px;
  }
  .case .txt,
  .case-bom .txt {
    margin-top: 60px;
    width: 50%;
  }
  .case-bom {
    height: 380px;
  }
}

@media (max-width: 1000px) {
  .case-arch {
    padding-bottom: 30px;
  }
  .case-arch .img {
    order: 1;
    width: 50%;
  }
  .case-arch .txt {
    order: 2;
    width: 100%;
    margin-top: 20px;
  }
  .case-pic {
    margin: 30px auto 0;
  }
}

@media (max-width: 768px) {
  .case {
    height: 380px;
  }
  .case-bom {
    height: 320px;
  }
  .case .case-title p,
  .case-bom .case-title p {
    font-size: 24px;
  }
  .case .txt {
    margin-top: 30px;
    width: 100%;
    padding-bottom: 25px;
  }
  .case-bom .txt {
    width: 100%;
    margin-top: 20px;
    padding-bottom: 0;
  }
  .case .txt::before {
    width: 48px;
    height: 2px;
  }
}

/* 5.页头 */
header {
  width: 100%;
  height: 65px;
  z-index: 300;
  background-color: #ffffff;
}

.header-shadow {
  position: fixed;
  top: 0;
  left: 0;
  box-shadow: 3px 5px 13px 0px rgba(0, 0, 0, 0.08);
}

header .logo {
  float: left;
  display: block;
  width: auto;
  height: 40px;
  line-height: 65px;
}

header .logo img {
  width: auto;
  height: 100%;
}

header .nav-btns {
  display: none;
  float: right;
  width: 23px;
  height: 23px;
  cursor: pointer;
  line-height: 47px;
}

header .nav-btns img {
  width: 100%;
  height: 100%;
}

header .nav {
  float: right;
  height: 100%;
  box-sizing: border-box;
  text-align: right;
  box-sizing: border-box;
  display: flex;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -ms-transition: all 0.3s;
  transition: all 0.3s;
}

header .nav li {
  position: relative;
}

header .nav li:not(:last-child) {
  margin-right: 34px;
}

header .nav .pull a {
  font-size: 18px;
  color: #3d3d3d;
  padding: 0 10px;
  line-height: 65px;
}

header .nav li::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 7px;
  left: 0;
  width: 100%;
  height: 3px;
  opacity: 0;
  background-color: #2da2ff;
  border-radius: 3px;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -ms-transition: all 0.3s;
  transition: all 0.3s;
}

header .nav li.active::before,
header .nav li:hover::before {
  opacity: 1;
}

header .nav li.active .pull a,
header .nav li:hover .pull a {
  color: #2da2ff;
}

header .nav .drop {
  display: none;
  width: 180px;
  height: auto;
  position: absolute;
  top: 65px;
  left: 50%;
  transform: translateX(-50%);
  background-color: rgba(0, 0, 0, 0.9);
  text-align: center;
  padding: 23px 0;
  z-index: 301;
}

header .nav .drop a {
  display: block;
  white-space: nowrap;
  line-height: 43px;
  font-size: 16px;
  color: #ffffff;
}

header .nav .pull a i {
  font-style: normal;
  display: none;
}

header .nav .drop a:hover,
header .nav .drop a.active {
  color: #2da2ff;
  font-weight: bolder;
}

@media (max-width: 1400px) {
  header .nav .pull a {
    font-size: 16px;
  }
  header .nav .drop {
    width: 130px;
    padding: 15px 0;
  }
  header .nav .drop a {
    font-size: 15px;
  }
}

@media (max-width: 1000px) {
  header {
    height: 47px;
  }
  header .logo {
    height: 32px;
    line-height: 47px;
  }
  header .nav-btns {
    display: block;
  }
  header .nav {
    display: none;
    float: none;
    position: absolute;
    left: 0;
    top: 47px;
    width: 105%;
    margin-left: -2.5%;
    height: auto;
    background-color: #ffffff;
    flex-direction: column;
    justify-content: flex-start;
    box-sizing: border-box;
    z-index: 301;
    padding: 13px 5%;
    border-top: 1px solid #111111;
    box-shadow: 3px 5px 13px 0px rgba(0, 0, 0, 0.08);
  }
  header .nav li:not(:last-child) {
    margin-right: 0;
  }
  header .nav li {
    width: 100%;
    height: auto;
  }
  header .nav .pull a {
    width: 100%;
    height: auto;
    line-height: 38px;
    font-size: 15px;
    color: #333333;
    font-weight: bold;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0;
  }
  header .nav li.active::before,
  header .nav li:hover::before {
    display: none;
  }
  header .nav .drop {
    width: 100%;
    position: relative;
    top: 0;
    background-color: transparent;
    text-align: left;
    padding: 3px 0;
    display: block;
    display: none;
  }
  header .nav .drop a {
    font-size: 14px;
    color: #000000;
    display: inline-block;
    line-height: 32px;
  }
  header .nav .drop a:not(:last-child) {
    margin-right: 15px;
  }
  header .nav .pull a i {
    display: inline-block;
  }
}
