@font-face { font-family: "Basel Classic"; src: url("../fonts/basel/BaselClassic-Book.woff2") format("woff2"); font-weight: 450; font-display: swap; }
@font-face { font-family: "Basel Classic"; src: url("../fonts/basel/BaselClassic-Bold.woff2") format("woff2"); font-weight: 700; font-display: swap; }
@font-face { font-family: "Basel Grotesk"; src: url("../fonts/basel/BaselGrotesk-Bold.woff2") format("woff2"); font-weight: 700; font-display: swap; }
@font-face { font-family: "UTM Yen Tu"; src: url("../fonts/utm-yentu/UTMYenTu.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face {
  font-family: "Basel Classic";
  src: url("../fonts/basel/BaselClassic-Regular.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Basel Classic";
  src: url("../fonts/basel/BaselClassic-Medium.woff2") format("woff2");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("../fonts/inter/Inter-Regular.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("../fonts/inter/Inter-Medium.woff2") format("woff2");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--c-ink); color: var(--c-white); font-family: var(--font-display); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
button, input { font: inherit; }
button { color: inherit; }
a { color: inherit; }
img { display: block; max-width: 100%; }
h1, h2, h3, h4, h5, h6 { font-weight: 500; }
.c-container { width: 100%; max-width: calc(var(--w-container) + 2 * var(--gutter)); margin-inline: auto; padding-inline: clamp(20px, calc((100vw - 1152px) / 2), var(--gutter)); }
.c-main { min-height: 1px; }
.c-main--offset { padding-top: 116px; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.c-skip-link { position: fixed; top: 8px; left: 8px; z-index: 1000; padding: 10px 16px; transform: translateY(-150%); background: var(--c-white); color: var(--c-ink); }
.c-skip-link:focus { transform: translateY(0); }
@media (min-width: 1440px) { .c-container { padding-inline: var(--gutter); } }
.c-index { min-height: 60vh; padding-block: 140px 80px; }
.c-index__item { margin-bottom: 32px; }
.c-index__item h2 { margin: 0 0 12px; }
.c-index__item a { color: inherit; }
