/* 자체 호스팅 웹폰트
   font-display:optional — 교체를 아예 없앤다. swap 이면 폴백 → 웹폰트 교체 때
   레이아웃이 움직여 CLS 가 생긴다(실측 0.16). optional 은 블록 기간 안에 폰트가
   준비되지 않으면 그 페인트에서는 폴백을 유지하므로 이동이 원천적으로 없다.
   폰트는 캐시되므로 재방문부터는 정품 서체로 뜬다. — scripts/build_fonts.py 가 생성한다. 손으로 고치지 말 것.
   사이트 문자 + KS X 1001 상용한글 2,350자로 서브셋해 weight 당 파일 1개로 줄였다.
   종전 구글 서브셋(chunk) 방식은 홈에서 woff2 를 78개 받아 요청 수가 LCP 를 잡았다. */
/* 폴백 — 웹폰트가 뜨기 전/못 뜰 때 줄 상자를 같게 유지한다.
   Plex KR 한글 advance 0.892em vs 시스템 한글 폰트 전각 1.0em 차이가 CLS 의 원인이었다. */
@font-face{
  font-family:"Plex KR Fallback";
  src:local("Apple SD Gothic Neo"),local("AppleSDGothicNeo-Regular"),
      local("Malgun Gothic"),local("맑은 고딕"),local("Noto Sans KR");
  size-adjust:89.2%;ascent-override:121.6%;descent-override:46.5%;line-gap-override:0%;
}

@font-face{font-family:"IBM Plex Sans KR";font-style:normal;font-weight:300;font-display:optional;src:url(/fonts/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,U+2190-21FF,U+2460-24FF,U+25A0-25FF,U+2600-26FF,U+3000-303F,U+FF00-FFEF,U+20A9,U+00B7,U+2014,U+2013,U+2026}
@font-face{font-family:"IBM Plex Sans KR";font-style:normal;font-weight:300;font-display:optional;src:url(/fonts/korean-300.woff2) format("woff2");unicode-range:U+1100-11FF,U+3130-318F,U+A960-A97F,U+AC00-D7A3,U+D7B0-D7FF}
@font-face{font-family:"IBM Plex Sans KR";font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/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,U+2190-21FF,U+2460-24FF,U+25A0-25FF,U+2600-26FF,U+3000-303F,U+FF00-FFEF,U+20A9,U+00B7,U+2014,U+2013,U+2026}
@font-face{font-family:"IBM Plex Sans KR";font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/korean-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:"IBM Plex Sans KR";font-style:normal;font-weight:500;font-display:optional;src:url(/fonts/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,U+2190-21FF,U+2460-24FF,U+25A0-25FF,U+2600-26FF,U+3000-303F,U+FF00-FFEF,U+20A9,U+00B7,U+2014,U+2013,U+2026}
@font-face{font-family:"IBM Plex Sans KR";font-style:normal;font-weight:500;font-display:optional;src:url(/fonts/korean-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:"IBM Plex Sans KR";font-style:normal;font-weight:600;font-display:optional;src:url(/fonts/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,U+2190-21FF,U+2460-24FF,U+25A0-25FF,U+2600-26FF,U+3000-303F,U+FF00-FFEF,U+20A9,U+00B7,U+2014,U+2013,U+2026}
@font-face{font-family:"IBM Plex Sans KR";font-style:normal;font-weight:600;font-display:optional;src:url(/fonts/korean-600.woff2) format("woff2");unicode-range:U+1100-11FF,U+3130-318F,U+A960-A97F,U+AC00-D7A3,U+D7B0-D7FF}
@font-face{font-family:"IBM Plex Sans KR";font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/latin-700.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,U+2190-21FF,U+2460-24FF,U+25A0-25FF,U+2600-26FF,U+3000-303F,U+FF00-FFEF,U+20A9,U+00B7,U+2014,U+2013,U+2026}
@font-face{font-family:"IBM Plex Sans KR";font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/korean-700.woff2) format("woff2");unicode-range:U+1100-11FF,U+3130-318F,U+A960-A97F,U+AC00-D7A3,U+D7B0-D7FF}
