/* products */
.products {
  padding-top: 30px;
  padding-bottom: 30px;
}

.products .title {
  margin-bottom: 15px;
}

.products .sub-info {
  line-height: 30px;
  margin-bottom: 20px;
}

/* 左侧 */
.products .lt-nav {
  padding: 20px 15px;
  background: rgba(28, 64, 62, .8);
  margin-bottom: 30px;
}

.products .nav-title {
  color: #fff;
  text-align: left;
  padding-bottom: 10px;
}

.products #category {
  border: none;
  color: #fff;
  background: none;
  cursor: pointer;
}

.products #category i {
  margin-right: 5px;
}

.products .pdt-nav {
  margin-top: 15px;
  border-top: 1px solid #fff;
}

.products .pdt-nav>li {
  border-bottom: 1px solid #fff;
}

.products .nav-open {
  color: #CDCDCE;
  position: relative;
}

.products .nav-icon {
  width: 25px;
  height: 25px;
  margin-left: 3px;
  overflow: hidden;
}

.products .nav-icon img {
  width: 100%;
  position: relative;
}

.products .nav-open.drop .nav-icon img {
  left: -25px;
  filter: drop-shadow(25px 0 0 var(--sub-color));
}

.products .nav-open {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.products .nav-open.drop {
  color: var(--sub-color);
}

.products .nav-open a {
  flex: 1;
  display: inline-block;
  position: relative;
  z-index: 1;
}

.products .nav-open i {
  font-size: 22px;
  line-height: 1;
  margin-left: 10px;
  margin-right: -1px;
  transition: all .3s;
  position: relative;
  cursor: pointer;
}

.products .nav-open.drop i {
  transform: rotate(90deg);
}

.products .first-btn {
  color: #fff;
  padding-top: 10px;
  padding-bottom: 10px;
  font-size: 18px;
  font-family: 'Roboto-Medium';
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.products .first-btn a {
  padding: 5px 15px;
}

.products .child-list {
  display: none;
  margin-top: -2px;
  padding-left: 8px;
  padding-right: 8px;
  padding-bottom: 18px;
}

.products .child-list li:not(:last-child) {
  margin-bottom: 10px;
}

/* 右侧 */
.products .row {
  margin-bottom: -30px;
}

.products .row>div {
  margin-bottom: 30px;
}

.products .scale-img {
  margin-bottom: 16px;
}

.products .scale-img img {
  width: 100%;
  aspect-ratio: 305 / 305;
}

.products .tit {
  line-height: calc(30 / 26);
  margin-bottom: 11px;
}

.products .info {
  line-height: 30px;
}

.products .btn {
  width: 150px;
  margin-top: 14px;
  padding: 7px 15px;
  border-radius: 26px;
  color: var(--sub-color);
  background: var(--style-color);
}

@media (min-width: 576px) {
  .products .tit {
    height: calc(30 / 26 * 2em);
  }
}

@media (min-width: 768px) {
  .products #category {
    display: none;
  }

  .products .pdt-nav {
    margin-top: 0;
  }
}

@media (min-width: 1200px) {
  .products {
    padding-top: 60px;
    padding-bottom: 60px;
  }

  .products .title {
    margin-bottom: 28px;
  }

  .products .sub-info {
    margin-bottom: 34px;
  }

  .products .item-wrap {
    display: flex;
    align-items: flex-start;
  }

  .products .lt-nav {
    width: 300px;
    padding: 31px 25px;
    margin-bottom: 0;
    position: relative;
  }

  .products .nav-title {
    padding-bottom: 16px;
  }

  .products .pdt-nav, .products .pdt-nav>li {
    border-width: 2px;
  }

  .products .nav-open:hover {
    color: var(--sub-color);
  }

  .products .first-btn {
    font-size: 20px;
    padding-top: 15px;
    padding-bottom: 15px;
  }

  .products .nav-icon {
    width: 31px;
    height: 31px;
  }

  .products .nav-open.drop .nav-icon img, .products .nav-open:hover .nav-icon img {
    left: -31px;
    filter: drop-shadow(31px 0 0 var(--sub-color));
  }

  .products .child-list li:not(:last-child) {
    margin-bottom: 12px;
  }

  .products .rt-content {
    flex: 1;
    padding-left: 30px;
  }

  .products .row {
    margin-bottom: -45px;
  }

  .products .row>div {
    margin-bottom: 45px;
  }

  .products .tit:hover {
    color: var(--sub-color);
  }

  .products .btn {
    padding-top: 12px;
    padding-bottom: 12px;
    transition: all .3s;
  }

  .products .btn:hover {
    color: var(--style-color);
    background: var(--sub-color);
  }
}

@media (min-width: 1440px) {
  .products {
    padding-top: 74px;
    padding-bottom: 80px;
  }

  .products .lt-nav {
    width: 355px;
    padding-bottom: 56px;
  }

  .products .rt-content {
    padding-left: 45px;
  }

  .products .row {
    margin-left: -21px;
    margin-right: -21px;
    margin-bottom: -60px;
  }

  .products .row>div {
    padding: 0 21px;
    margin-bottom: 60px;
  }
}