body * {
  box-sizing: border-box;
  flex-shrink: 0;
}
body {
    margin: 0;
    padding: 76px 0 0 0;
    font-family: PingFangSC-Regular, Roboto, Helvetica Neue, Helvetica, Tahoma,
    Arial, PingFang SC-Light, Microsoft YaHei;
}
input {
  background-color: transparent;
  border: 0;
}
button {
  margin: 0;
  padding: 0;
  border: 1px solid transparent;
  outline: none;
  background-color: transparent;
}

button:active {
  opacity: 0.6;
}

/* ====== 流式自适应基础 ====== */
/* 统一内容列：全站 max-width 1400，居中，窄屏留边 */
.container {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}
/* 通栏外层（色带 / swiper / banner），内部再套 .container 居中 */
.container-full {
  width: 100%;
}
/* 各页 .page 原为 overflow:hidden 会裁切宽屏内容，改为仅裁横向溢出 */
.page {
  overflow-x: hidden;
}

/* 字号 clamp 档位（窄屏缩小，1920 下保持原尺寸） */
.fs-48 { font-size: clamp(32px, 3.2vw, 48px); line-height: 1.2; }
.fs-40 { font-size: clamp(28px, 2.8vw, 40px); line-height: 1.2; }
.fs-36 { font-size: clamp(26px, 2.4vw, 36px); line-height: 1.2; }
.fs-32 { font-size: clamp(24px, 2.1vw, 32px); line-height: 1.25; }
.fs-24 { font-size: clamp(20px, 1.6vw, 24px); line-height: 1.25; }
.fs-22 { font-size: clamp(18px, 1.4vw, 22px); line-height: 1.3; }
.fs-18 { font-size: clamp(16px, 1.1vw, 18px); line-height: 1.4; }

.flex-col {
  display: flex;
  flex-direction: column;
}
.flex-row {
  display: flex;
  flex-direction: row;
}
.justify-start {
  display: flex;
  justify-content: flex-start;
}
.justify-center {
  display: flex;
  justify-content: center;
}

.justify-end {
  display: flex;
  justify-content: flex-end;
}
.justify-evenly {
  display: flex;
  justify-content: space-evenly;
}
.justify-around {
  display: flex;
  justify-content: space-around;
}
.justify-between {
  display: flex;
  justify-content: space-between;
}
.align-start {
  display: flex;
  align-items: flex-start;
}
.align-center {
  display: flex;
  align-items: center;
}
.align-end {
  display: flex;
  align-items: flex-end;
}
.reative{
  position: relative;
}
.mr-8 {
  margin-right: 8px;
}