/* Hanken Grotesk — 自前配信（2026-08-12）

⚠⚠ なぜ Google Fonts をやめたか（実測）:
  `fonts.googleapis.com` が返す CSS は、**約 30 回に 1 回**、存在しない woff2
  （hankengrotesk/v12/ieVd2YZ…）を指す版だった。同一 URL・同一 UA で 30 回取得して 1 回再現。
  掴んだ閲覧者はこの書体を読めずフォールバック表示になり、コンソールに 404 が出る。
  実ブラウザ検査 `npm run check:browser` もこれで落ち、**連鎖の下流 9 検査が走らなくなっていた**。
  → 外部に依存するのをやめ、同一オリジンから配る。

⚠ この 4 ファイルは**可変フォント**（Google は太さ 400/500/700 に同じファイルを配っていた）。
  軸は fontTools で実測して **wght 100–900・既定 400**。だから font-weight は範囲で宣言する。
  単一の値で宣言すると、その面は既定インスタンス（400）でしか描かれない。

  取得元: https://fonts.gstatic.com/s/hankengrotesk/v12/（2026-08-12・全ファイル 200 と wOF2 の
  マジックバイトを確認して取り込み）。ライセンスは SIL Open Font License 1.1（fonts/OFL.txt）。
  unicode-range は Google の CSS からそのまま写した（手で書き直さない）。
*/
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/fonts/hanken-grotesk-latin.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+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/fonts/hanken-grotesk-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/fonts/hanken-grotesk-vietnamese.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;
}
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/fonts/hanken-grotesk-cyrillic-ext.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
