/* ===== 重置样式 + 常用辅助类 ===== */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body, html {
  font-family: 'Noto Sans SC', 'Helvetica Neue', Arial, sans-serif;
  line-height: 1.6;
  color: #333;
  background: #fff;
  width: 100%;
  overflow-x: hidden;
}

a {
  text-decoration: none;
  color: inherit;
}

ul, ol {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* ===== 浮动与清除 ===== */
.f-left { float: left; }
.f-right { float: right; }
.f-clearfix:after {
  content: "";
  display: table;
  clear: both;
}

/* ===== 间距 ===== */
.f-mt10 { margin-top: 10px; }
.f-mt20 { margin-top: 20px; }
.f-mt30 { margin-top: 30px; }
.f-mb15 { margin-bottom: 15px; }
.f-mb20 { margin-bottom: 20px; }
.f-mb30 { margin-bottom: 30px; }
.f-pl20 { padding-left: 20px; }
.f-pr20 { padding-right: 20px; }

/* ===== 布局 ===== */
.f-center { text-align: center; }
.f-w33 { width: 33.333%; }
.tablet-w100 { width: 100% !important; }
.f-px15 { padding-left: 15px; padding-right: 15px; }
.f-px20 { padding-left: 20px; padding-right: 20px; }
.f-py15 { padding: 15px 0; }
.f-py30 { padding: 30px 0; }
.f-py40 { padding: 40px 0; }

/* ===== 背景与颜色 ===== */
.f-bg-f9 { background-color: #f9f9f9; }
.f-bg-333 { background-color: #333; }
.f-color-fff { color: #fff; }

/* ===== 其他 ===== */
.radius { border-radius: 4px; }
.f-tdn { text-decoration: none; }
.f-fixed { position: fixed; }
.f-absolute { position: absolute; }
.f-relative { position: relative; }
.f-z1000 { z-index: 1000; }
.f-block { display: block; }
.f-inline { display: inline; }
.f-inline-block { display: inline-block; }

.text-title{font-size: 38px}