/*
 * Gen Interface JP — XD のデザインデータが指定している本文書体。
 *
 * 欧文に Inter、和文に Noto Sans JP を使い、和文側の字面・位置・字送りを
 * 詰め直した混植書体（SIL Open Font License 1.1 / 無償・商用可）。
 *   https://gen.typesetting.jp/
 *   https://github.com/yamatoiizuka/gen-interface-jp  （v0.8.0）
 *
 * ライセンス本文は fonts/GenInterfaceJP-OFL.txt に同梱してある（OFL の条件）。
 *
 * ## なぜ自己ホストなのか
 *
 * ページの見た目そのものを決める書体なので、外部 CDN が落ちると別の書体で
 * 描かれてしまう。three.js / GSAP / Assistant を取り込んだのと同じ理由で
 * テーマに同梱している（README「ドメイン切替の手順」参照）。
 *
 * ## 収録文字を絞ってある
 *
 * 配布物は 1ウェイトあたり 6MB の TTF で、全文字を woff2 にしても 2.4MB ある。
 * 5ウェイト使うため、そのままだと 12MB になってしまう。
 * フォント側が持つ日本語サブセットの優先度表（vendor/nam-files の
 * japanese_default）の上位 3,010 文字だけを収録した（1ウェイト約 450KB）。
 * 常用漢字と一般的な記号は入っている。外れた文字は Noto Sans JP で描かれる
 * ——Gen Interface JP の和文は Noto Sans JP が母体なので、字面は大きく変わらない。
 *
 * Bold は about ページの詩と「DEVICE」の見出しで使う。他のウェイトと同じ
 * 3,010 文字を収録してある（1ウェイト約 455KB）。
 *
 * ExtraBold は「SUBSCRIPTION」「PAIR BOARDING PASS」の2か所でしか使っておらず、
 * どちらも欧文なので、欧文・かな・約物だけにしてある（83KB）。ここに漢字を
 * 入れる文言へ変えるときは、サブセットを作り直すこと。
 *
 * ## 作り直しかた
 *
 *   pyftsubset "GenInterfaceJP-<Weight>.ttf" \
 *     --unicodes-file=<文字リスト> \
 *     --layout-features='kern,palt,halt,vert,vrt2,liga,calt,ccmp,locl,mark,mkmk' \
 *     --flavor=woff2 --output-file=GenInterfaceJP-<Weight>.subset.woff2
 */

:root {
  /* 収録外の文字と、読み込みに失敗したときの受け皿。Gen Interface JP の
   * 和文は Noto Sans JP が母体なので、混ざっても字面が破綻しない。 */
  --astra-gen-interface-jp: 'Gen Interface JP', 'Noto Sans JP', sans-serif;
}

/* local() は書かない。閲覧者の端末に同名の別バージョンが入っていても、
 * ここで配る実体が必ず使われるようにするため。 */
@font-face {
  font-family: 'Gen Interface JP';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('fonts/GenInterfaceJP-Light.subset.woff2') format('woff2');
}

@font-face {
  font-family: 'Gen Interface JP';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/GenInterfaceJP-Regular.subset.woff2') format('woff2');
}

@font-face {
  font-family: 'Gen Interface JP';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('fonts/GenInterfaceJP-Medium.subset.woff2') format('woff2');
}

@font-face {
  font-family: 'Gen Interface JP';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('fonts/GenInterfaceJP-SemiBold.subset.woff2') format('woff2');
}

@font-face {
  font-family: 'Gen Interface JP';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('fonts/GenInterfaceJP-Bold.subset.woff2') format('woff2');
}

@font-face {
  font-family: 'Gen Interface JP';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url('fonts/GenInterfaceJP-ExtraBold.subset.woff2') format('woff2');
}
