* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

:root {
  --main-red: #F24051;
  --light-red: #FF7B90;
  --black: #101010;
  --gray: #999999;
}

.font-df {
  font-size: 16px !important;
}

.font-sm {
  font-size: 14px !important;
}

.font-lg {
  font-size: 20px !important;
}

.font-xl {
  font-size: 28px !important;
}

.font-xxl {
  font-size: 30px !important;
}

.font-red {
  color: var(--main-red);
}

.font-black {
  color: var(--black);
}

.font-light-red {
  color: var(--light-red);
}

.font-gray {
  color: var(--gray);
}

.text-center {
  text-align: center !important;
}

.text-right {
  text-align: right !important;
}

.text-left {
  text-align: left !important;
}

.shadow {
  box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.4);
}

body {
  font: 16px/1.5 "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Helvetica, "Hiragino Sans GB", Arial, sans-serif;
  background-color: #fff;
}

body a {
  color: #333;
  text-decoration: none;
  outline: none;
  -webkit-transition: all .4s;
  transition: all .4s
}

body a:hover {
  color: var(--main-red);
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
}

ul,
ol,
li {
  list-style: none;
  margin: 0;
  padding: 0;
}

dl,
dt,
dd {
  list-style: none;
  margin: 0;
  padding: 0;
}

.container {
  width: 1220px;
  margin: auto;
}

.flex {
  display: flex;
}

.flex-center {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.flex-start {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.flex-between-start {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.justify-between {
  justify-content: space-between;
}

.align-center {
  align-items: center;
}

.text-cut {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.text-cut-3 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.text-cut-2 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.mt10 {
  margin-top: 10px;
}

.mb10 {
  margin-bottom: 10px;
}

.ml10 {
  margin-left: 10px;
}

.mr10 {
  margin-right: 10px;
}

.mt20 {
  margin-top: 20px;
}

.mb20 {
  margin-bottom: 20px;
}

.ml20 {
  margin-left: 20px;
}

.mr20 {
  margin-right: 20px;
}

.bg-white {
  background-color: #fff;
}

.bg-gray {
  background-color: #F8F8F8;
}

.bg-gradient-red {
  background: linear-gradient(90deg, rgba(244, 93, 106, 1) 72%, rgba(253, 154, 114, 1) 95%);
}
.bg-footer{
  background-color: #242947;
}

.show {
  display: block;
}

.hidden {
  display: none;
}

/* 分页 */
.pages {
  justify-content: center;
}

.pages a {
  display: block;
  padding: 10px 15px;
  background-color: #fff;
  text-align: center;
  font-size: 16px;
  margin: 0 6px;
  border-radius: 3px;
  color: #000;
}

.pages a:hover,
.pages a.on {
  background-color: var(--main-red);
  color: #fff;
}

/* 如果最后一行是3个元素 */
.flex-fix:last-child:nth-child(4n - 1) {
  margin-right: calc(24% + 4% / 3);
}

/* 如果最后一行是2个元素 */
.flex-fix:last-child:nth-child(4n - 2) {
  margin-right: calc(48% + 8% / 3);
}