/* ======================================
   1. 自定义字体 Daizen
====================================== */
@font-face {
  font-family: 'Daizen';
  src: url('../Daizen.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

/* ======================================
   2. 自定义字体 Geometos
====================================== */
@font-face {
  font-family: 'Geometos';
  src: url('../Geometos.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

/* ======================================
   3. Helvetica Neue LT Pro 全系列
====================================== */

/* --- 粗体 Bold --- */
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-Bd.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-BdCn.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-BdCnO.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-BdEx.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-stretch: expanded;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-BdExO.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-stretch: expanded;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-BdIt.otf') format('opentype');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-BdOu.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* --- 超粗体 Black --- */
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-Blk.otf') format('opentype');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-BlkCn.otf') format('opentype');
  font-weight: 900;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-BlkCnO.otf') format('opentype');
  font-weight: 900;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-BlkEx.otf') format('opentype');
  font-weight: 900;
  font-style: normal;
  font-stretch: expanded;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-BlkExO.otf') format('opentype');
  font-weight: 900;
  font-style: normal;
  font-stretch: expanded;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-BlkIt.otf') format('opentype');
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}

/* --- 压缩体 Condensed --- */
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-Cn.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-CnO.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}

/* --- 扩展体 Extra --- */
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-Ex.otf') format('opentype');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-ExO.otf') format('opentype');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

/* --- 超粗体 Heavy --- */
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-Hv.otf') format('opentype');
  font-weight: 950;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-HvCn.otf') format('opentype');
  font-weight: 950;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-HvCnO.otf') format('opentype');
  font-weight: 950;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-HvEx.otf') format('opentype');
  font-weight: 950;
  font-style: normal;
  font-stretch: expanded;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-HvExO.otf') format('opentype');
  font-weight: 950;
  font-style: normal;
  font-stretch: expanded;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-HvIt.otf') format('opentype');
  font-weight: 950;
  font-style: italic;
  font-display: swap;
}

/* --- 斜体 Italic --- */
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-It.otf') format('opentype');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

/* --- 轻体 Light --- */
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-Lt.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-LtCn.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-LtCnO.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-LtEx.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-stretch: expanded;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-LtExO.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-stretch: expanded;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-LtIt.otf') format('opentype');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

/* --- 中等体 Medium --- */
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-Md.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-MdCn.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-MdCnO.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-MdEx.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-stretch: expanded;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-MdExO.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-stretch: expanded;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-MdIt.otf') format('opentype');
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

/* --- 常规体 Roman --- */
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-Roman.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* --- 细体 Thin --- */
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-Th.otf') format('opentype');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-ThCn.otf') format('opentype');
  font-weight: 200;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-ThCnO.otf') format('opentype');
  font-weight: 200;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-ThEx.otf') format('opentype');
  font-weight: 200;
  font-style: normal;
  font-stretch: expanded;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-ThExO.otf') format('opentype');
  font-weight: 200;
  font-style: normal;
  font-stretch: expanded;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-ThIt.otf') format('opentype');
  font-weight: 200;
  font-style: italic;
  font-display: swap;
}

/* --- 超轻体 UltraLight --- */
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-UltLt.otf') format('opentype');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-UltLtCn.otf') format('opentype');
  font-weight: 100;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-UltLtCnO.otf') format('opentype');
  font-weight: 100;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-UltLtEx.otf') format('opentype');
  font-weight: 100;
  font-style: normal;
  font-stretch: expanded;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-UltLtExO.otf') format('opentype');
  font-weight: 100;
  font-style: normal;
  font-stretch: expanded;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-UltLtIt.otf') format('opentype');
  font-weight: 100;
  font-style: italic;
  font-display: swap;
}

/* --- 超粗体 ExtraBlack --- */
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-XBlkCn.otf') format('opentype');
  font-weight: 950;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue LT Pro';
  src: url('../HelveticaNeueLTPro-XBlkCnO.otf') format('opentype');
  font-weight: 950;
  font-style: normal;
  font-stretch: condensed;
  font-display: swap;
}

/* ======================================
   4. Source Han Sans SC 思源黑体（中文）
====================================== */
@font-face {
  font-family: 'Source Han Sans SC';
  src: url('../SourceHanSansSC-ExtraLight.otf') format('opentype');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Source Han Sans SC';
  src: url('../SourceHanSansSC-Light.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Source Han Sans SC';
  src: url('../SourceHanSansSC-Normal.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Source Han Sans SC';
  src: url('../SourceHanSansSC-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Source Han Sans SC';
  src: url('../SourceHanSansSC-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Source Han Sans SC';
  src: url('../SourceHanSansSC-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Source Han Sans SC';
  src: url('../SourceHanSansSC-Heavy.otf') format('opentype');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

/* ======================================
   Source Han Serif CN 思源宋体（简体）
   7字重完整声明，兼容 OTF / WOFF2 / WOFF
====================================== */
/* ExtraLight 超细 200 */
@font-face {
  font-family: 'Source Han Serif CN';
  src: url('../SourceHanSerifCN-ExtraLight.otf') format('opentype');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

/* Light 细体 300 */
@font-face {
  font-family: 'Source Han Serif CN';
  src: url('../SourceHanSerifCN-Light.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

/* Regular 常规 400 */
@font-face {
  font-family: 'Source Han Serif CN';
  src: url('../SourceHanSerifCN-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* Medium 中等 500 */
@font-face {
  font-family: 'Source Han Serif CN';
  src: url('../SourceHanSerifCN-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

/* SemiBold 半粗 600 */
@font-face {
  font-family: 'Source Han Serif CN';
  src: url('../SourceHanSerifCN-SemiBold.otf') format('opentype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

/* Bold 粗体 700 */
@font-face {
  font-family: 'Source Han Serif CN';
  src: url('../SourceHanSerifCN-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* Heavy 超粗 900 */
@font-face {
  font-family: 'Source Han Serif CN';
  src: url('../SourceHanSerifCN-Heavy.otf') format('opentype');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}