/* ==================== Site Font 統一字體系統 ==================== */
/*
 * 使用統一的 font-family 名稱 'Site Font'，透過 unicode-range 自動分離中英文：
 * - 英文/數字：Archivo
 * - 中文：Noto Sans TC
 *
 * 參考：https://css-tricks.com/almanac/properties/u/unicode-range/
 */

/* Site Font - 英文部分 (Archivo) */
@font-face {
  font-family: 'Site Font';
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src: url('/fonts/archivo/Archivo-Thin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Site Font';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/archivo/Archivo-Regular.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Site Font';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/archivo/Archivo-Medium.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Site Font';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/archivo/Archivo-SemiBold.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Site Font';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/archivo/Archivo-Bold.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Site Font - 中文部分 (Noto Sans TC) */
@font-face {
  font-family: 'Site Font';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('/fonts/noto-sans-tc/NotoSansTC-Light.woff2') format('woff2');
  unicode-range: U+4E00-9FFF, U+3400-4DBF, U+F900-FAFF, U+3000-303F, U+FF00-FFEF, U+2E80-2EFF, U+3100-312F, U+31A0-31BF, U+FE10-FE1F, U+FE30-FE4F;
}

@font-face {
  font-family: 'Site Font';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/noto-sans-tc/NotoSansTC-Regular.woff2') format('woff2');
  unicode-range: U+4E00-9FFF, U+3400-4DBF, U+F900-FAFF, U+3000-303F, U+FF00-FFEF, U+2E80-2EFF, U+3100-312F, U+31A0-31BF, U+FE10-FE1F, U+FE30-FE4F;
}

@font-face {
  font-family: 'Site Font';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/noto-sans-tc/NotoSansTC-Medium.woff2') format('woff2');
  unicode-range: U+4E00-9FFF, U+3400-4DBF, U+F900-FAFF, U+3000-303F, U+FF00-FFEF, U+2E80-2EFF, U+3100-312F, U+31A0-31BF, U+FE10-FE1F, U+FE30-FE4F;
}

@font-face {
  font-family: 'Site Font';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/noto-sans-tc/NotoSansTC-Medium.woff2') format('woff2');
  unicode-range: U+4E00-9FFF, U+3400-4DBF, U+F900-FAFF, U+3000-303F, U+FF00-FFEF, U+2E80-2EFF, U+3100-312F, U+31A0-31BF, U+FE10-FE1F, U+FE30-FE4F;
}

@font-face {
  font-family: 'Site Font';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/noto-sans-tc/NotoSansTC-Bold.woff2') format('woff2');
  unicode-range: U+4E00-9FFF, U+3400-4DBF, U+F900-FAFF, U+3000-303F, U+FF00-FFEF, U+2E80-2EFF, U+3100-312F, U+31A0-31BF, U+FE10-FE1F, U+FE30-FE4F;
}

/* ==================== 舊版字體定義（向後相容） ==================== */

/* Noto Sans TC - 獨立使用（相容舊程式碼） */
@font-face {
  font-family: 'Noto Sans TC';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('/fonts/noto-sans-tc/NotoSansTC-Light.woff2') format('woff2');
}

@font-face {
  font-family: 'Noto Sans TC';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/noto-sans-tc/NotoSansTC-Regular.woff2') format('woff2');
}

@font-face {
  font-family: 'Noto Sans TC';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/noto-sans-tc/NotoSansTC-Medium.woff2') format('woff2');
}

@font-face {
  font-family: 'Noto Sans TC';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/noto-sans-tc/NotoSansTC-Bold.woff2') format('woff2');
}

/* Open Sans */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('/fonts/open-sans/OpenSans-Light.ttf') format('truetype');
}

@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/open-sans/OpenSans-Regular.ttf') format('truetype');
}

@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/open-sans/OpenSans-SemiBold.ttf') format('truetype');
}

@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/open-sans/OpenSans-Bold.ttf') format('truetype');
}

@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url('/fonts/open-sans/OpenSans-ExtraBold.ttf') format('truetype');
}

/* Archivo - 獨立使用（相容舊程式碼） */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src: url('/fonts/archivo/Archivo-Thin.woff2') format('woff2');
}

@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/archivo/Archivo-Regular.woff2') format('woff2');
}

@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/archivo/Archivo-Medium.woff2') format('woff2');
}

@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/archivo/Archivo-SemiBold.woff2') format('woff2');
}

@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/archivo/Archivo-Bold.woff2') format('woff2');
}
