/*!
 * Font tự host cho theme Lynntimes (không CDN — tuân thủ Envato/Botble).
 *
 * INTER — dựng dấu tiếng Việt CHUẨN (precomposed, 1 file/weight, không chồng unicode-range).
 * Thay Be Vietnam Pro (bản Google chia subset chồng range → ký tự 2-dấu ưỡ/ậ/ị bị đậm/nhạt
 * không đều). Đã verify trên nền gradient của site: chữ có dấu nét đều.
 *
 * File woff2 latin-ext của Inter chứa đầy đủ tiếng Việt. Accent: Kaushan Script.
 */

@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('../fonts/inter/inter-300.woff2') format('woff2');
}
@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/inter/inter-400.woff2') format('woff2');
}
@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('../fonts/inter/inter-500.woff2') format('woff2');
}
@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('../fonts/inter/inter-600.woff2') format('woff2');
}
@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/inter/inter-700.woff2') format('woff2');
}

/* ═══ Kaushan Script — accent trang trí ═══ */
@font-face {
    font-family: 'Kaushan Script';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/kaushan-script/kaushan-normal-400.woff2') format('woff2');
}

/* ═══════════════════════════════════════════════════════════════════════════
   BE VIETNAM PRO — font chính của hệ thiết kế mới (DESIGN-SYSTEM.md §3).
   Dùng bản subset `-vietnamese` (đã VERIFY render dấu khó ưỡ/ậ/ị/ệ/ườ chuẩn,
   nét đều — KHÁC bản Google multi-range từng gây lỗi). Heading 600/700, body 400.
   `-v2` = latin, `-vietnamese` = subset tiếng Việt; khai cả 2 cùng family cùng weight,
   trình duyệt tự chọn theo ký tự.
   ═══════════════════════════════════════════════════════════════════════════ */
@font-face { font-family: 'Be Vietnam Pro'; font-style: normal; font-weight: 300; font-display: swap;
    src: url('../fonts/be-vietnam-pro/bvp-300-vietnamese.woff2') format('woff2'), url('../fonts/be-vietnam-pro/bvp-300-v2.woff2') format('woff2'); }
@font-face { font-family: 'Be Vietnam Pro'; font-style: normal; font-weight: 400; font-display: swap;
    src: url('../fonts/be-vietnam-pro/bvp-400-vietnamese.woff2') format('woff2'), url('../fonts/be-vietnam-pro/bvp-400-v2.woff2') format('woff2'); }
@font-face { font-family: 'Be Vietnam Pro'; font-style: normal; font-weight: 500; font-display: swap;
    src: url('../fonts/be-vietnam-pro/bvp-500-vietnamese.woff2') format('woff2'), url('../fonts/be-vietnam-pro/bvp-500-v2.woff2') format('woff2'); }
@font-face { font-family: 'Be Vietnam Pro'; font-style: normal; font-weight: 600; font-display: swap;
    src: url('../fonts/be-vietnam-pro/bvp-600-vietnamese.woff2') format('woff2'), url('../fonts/be-vietnam-pro/bvp-600-v2.woff2') format('woff2'); }
@font-face { font-family: 'Be Vietnam Pro'; font-style: normal; font-weight: 700; font-display: swap;
    src: url('../fonts/be-vietnam-pro/bvp-700-vietnamese.woff2') format('woff2'), url('../fonts/be-vietnam-pro/bvp-700-v2.woff2') format('woff2'); }
@font-face { font-family: 'Be Vietnam Pro'; font-style: normal; font-weight: 800; font-display: swap;
    src: url('../fonts/be-vietnam-pro/bvp-800-vietnamese.woff2') format('woff2'), url('../fonts/be-vietnam-pro/bvp-800-v2.woff2') format('woff2'); }

/* ═══════════════════════════════════════════════════════════════════════════
   MONTSERRAT + RALEWAY — font của trang tham khảo Hoiana
   (--_typography---font--primary-family: Montserrat / accent-family: Raleway).

   Hoiana tải từ Google Fonts CDN; theme này TỰ HOST (cấm CDN — Envato/Botble)
   nên file .woff2 lấy từ @fontsource (bản npm chính thức của Google Fonts).

   ⚠️ unicode-range LÀ BẮT BUỘC ở đây: Fontsource tách file theo subset, khác
   Be Vietnam Pro (mỗi file chứa đủ ký tự nên chỉ cần liệt kê nhiều src).
   Range lấy NGUYÊN VĂN từ @fontsource/*/index.css để không chồng lấn — đúng
   nguyên nhân bản Google multi-range từng làm hỏng dấu ưỡ/ậ/ị (xem ghi chú Inter).
   Thứ tự khai: vietnamese TRƯỚC latin-ext/latin.
   ═══════════════════════════════════════════════════════════════════════════ */
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 300; font-display: swap;
    src: url('../fonts/montserrat/montserrat-vietnamese-300.woff2') format('woff2');
    unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB; }   /* vietnamese */
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 300; font-display: swap;
    src: url('../fonts/montserrat/montserrat-latin-ext-300.woff2') format('woff2');
    unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }   /* latin-ext */
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 300; font-display: swap;
    src: url('../fonts/montserrat/montserrat-latin-300.woff2') format('woff2');
    unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }   /* latin */
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 400; font-display: swap;
    src: url('../fonts/montserrat/montserrat-vietnamese-400.woff2') format('woff2');
    unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB; }   /* vietnamese */
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 400; font-display: swap;
    src: url('../fonts/montserrat/montserrat-latin-ext-400.woff2') format('woff2');
    unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }   /* latin-ext */
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 400; font-display: swap;
    src: url('../fonts/montserrat/montserrat-latin-400.woff2') format('woff2');
    unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }   /* latin */
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 500; font-display: swap;
    src: url('../fonts/montserrat/montserrat-vietnamese-500.woff2') format('woff2');
    unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB; }   /* vietnamese */
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 500; font-display: swap;
    src: url('../fonts/montserrat/montserrat-latin-ext-500.woff2') format('woff2');
    unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }   /* latin-ext */
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 500; font-display: swap;
    src: url('../fonts/montserrat/montserrat-latin-500.woff2') format('woff2');
    unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }   /* latin */
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 600; font-display: swap;
    src: url('../fonts/montserrat/montserrat-vietnamese-600.woff2') format('woff2');
    unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB; }   /* vietnamese */
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 600; font-display: swap;
    src: url('../fonts/montserrat/montserrat-latin-ext-600.woff2') format('woff2');
    unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }   /* latin-ext */
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 600; font-display: swap;
    src: url('../fonts/montserrat/montserrat-latin-600.woff2') format('woff2');
    unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }   /* latin */

@font-face { font-family: 'Raleway'; font-style: normal; font-weight: 400; font-display: swap;
    src: url('../fonts/raleway/raleway-vietnamese-400.woff2') format('woff2');
    unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB; }   /* vietnamese */
@font-face { font-family: 'Raleway'; font-style: normal; font-weight: 400; font-display: swap;
    src: url('../fonts/raleway/raleway-latin-ext-400.woff2') format('woff2');
    unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }   /* latin-ext */
@font-face { font-family: 'Raleway'; font-style: normal; font-weight: 400; font-display: swap;
    src: url('../fonts/raleway/raleway-latin-400.woff2') format('woff2');
    unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }   /* latin */
@font-face { font-family: 'Raleway'; font-style: normal; font-weight: 500; font-display: swap;
    src: url('../fonts/raleway/raleway-vietnamese-500.woff2') format('woff2');
    unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB; }   /* vietnamese */
@font-face { font-family: 'Raleway'; font-style: normal; font-weight: 500; font-display: swap;
    src: url('../fonts/raleway/raleway-latin-ext-500.woff2') format('woff2');
    unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }   /* latin-ext */
@font-face { font-family: 'Raleway'; font-style: normal; font-weight: 500; font-display: swap;
    src: url('../fonts/raleway/raleway-latin-500.woff2') format('woff2');
    unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }   /* latin */
@font-face { font-family: 'Raleway'; font-style: normal; font-weight: 600; font-display: swap;
    src: url('../fonts/raleway/raleway-vietnamese-600.woff2') format('woff2');
    unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB; }   /* vietnamese */
@font-face { font-family: 'Raleway'; font-style: normal; font-weight: 600; font-display: swap;
    src: url('../fonts/raleway/raleway-latin-ext-600.woff2') format('woff2');
    unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }   /* latin-ext */
@font-face { font-family: 'Raleway'; font-style: normal; font-weight: 600; font-display: swap;
    src: url('../fonts/raleway/raleway-latin-600.woff2') format('woff2');
    unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }   /* latin */
