/* ============================================================
 * Self-hosted web fonts (WOFF2)
 *   - Noto Sans KR : korean + latin subsets, weights 400/500/700/800/900
 *   - Outfit       : latin only,            weights 400/500/700/900
 *   - font-display: swap    (텍스트 FOUT 허용 → LCP 방해 없음)
 *   - unicode-range          (브라우저가 필요 subset 만 내려받음)
 * ============================================================ */

/* -------- Noto Sans KR: latin subset (먼저: 기본 문자) -------- */
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url('noto-kr-latin-400.woff2') format('woff2');
  unicode-range: U+0020-007F, U+00A0-00FF, U+2000-206F, U+2070-209F, U+20A0-20CF;
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url('noto-kr-latin-500.woff2') format('woff2');
  unicode-range: U+0020-007F, U+00A0-00FF, U+2000-206F, U+2070-209F, U+20A0-20CF;
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url('noto-kr-latin-700.woff2') format('woff2');
  unicode-range: U+0020-007F, U+00A0-00FF, U+2000-206F, U+2070-209F, U+20A0-20CF;
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url('noto-kr-latin-800.woff2') format('woff2');
  unicode-range: U+0020-007F, U+00A0-00FF, U+2000-206F, U+2070-209F, U+20A0-20CF;
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-display: swap;
  font-weight: 900;
  src: url('noto-kr-latin-900.woff2') format('woff2');
  unicode-range: U+0020-007F, U+00A0-00FF, U+2000-206F, U+2070-209F, U+20A0-20CF;
}

/* -------- Noto Sans KR: korean subset -------- */
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url('noto-kr-400.woff2') format('woff2');
  unicode-range: U+1100-11FF, U+3130-318F, U+A960-A97F, U+AC00-D7A3, U+D7B0-D7FF;
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url('noto-kr-500.woff2') format('woff2');
  unicode-range: U+1100-11FF, U+3130-318F, U+A960-A97F, U+AC00-D7A3, U+D7B0-D7FF;
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url('noto-kr-700.woff2') format('woff2');
  unicode-range: U+1100-11FF, U+3130-318F, U+A960-A97F, U+AC00-D7A3, U+D7B0-D7FF;
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url('noto-kr-800.woff2') format('woff2');
  unicode-range: U+1100-11FF, U+3130-318F, U+A960-A97F, U+AC00-D7A3, U+D7B0-D7FF;
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-display: swap;
  font-weight: 900;
  src: url('noto-kr-900.woff2') format('woff2');
  unicode-range: U+1100-11FF, U+3130-318F, U+A960-A97F, U+AC00-D7A3, U+D7B0-D7FF;
}

/* -------- Outfit: latin -------- */
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url('outfit-400.woff2') format('woff2');
  unicode-range: U+0020-007F, U+00A0-00FF, U+2000-206F, U+2070-209F, U+20A0-20CF;
}
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url('outfit-500.woff2') format('woff2');
  unicode-range: U+0020-007F, U+00A0-00FF, U+2000-206F, U+2070-209F, U+20A0-20CF;
}
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url('outfit-700.woff2') format('woff2');
  unicode-range: U+0020-007F, U+00A0-00FF, U+2000-206F, U+2070-209F, U+20A0-20CF;
}
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-display: swap;
  font-weight: 900;
  src: url('outfit-900.woff2') format('woff2');
  unicode-range: U+0020-007F, U+00A0-00FF, U+2000-206F, U+2070-209F, U+20A0-20CF;
}
