@font-face {
  font-family: AktivGrotesk;
  src: url(/assets/fonts/AktivGrotesk_KR_Bd.ttf);
  font-weight: 600;
}
@font-face {
  font-family: AktivGrotesk;
  src: url(/assets/fonts/AktivGrotesk_KR_Md.ttf);
  font-weight: 500;
}
@font-face {
  font-family: AktivGrotesk;
  src: url(/assets/fonts/AktivGrotesk_KR_Rg.ttf);
  font-weight: 400;
}
@font-face {
  font-family: AktivGrotesk;
  src: url(/assets/fonts/AktivGrotesk_KR_Lt.ttf);
  font-weight: 300;
}

html {
  background-color: #fff;
}

body {
  width: 100dvw;
  height: 100dvh;
  font-family: AktivGrotesk, sans-serif;
  font-size: 9.7pt;
  font-weight: 400;
  /* overflow: hidden; */
}

::selection {
  background-color: black;
  color: white;
}

a {
  color: black;
  text-decoration: none;
  /* text-decoration: underline solid 0.1em black;
  text-underline-offset: 0.2em; */
}
a:hover {
  color: gray;
}
a.active {
  color: gray;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

video {
  width: 100%;
  height: auto;
  display: block;
}

.container {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}

.header {
  padding: 1rem;
}
.nav-lists {
  display: flex;
  justify-content: space-between;
}

.main {
  padding: 0 1rem;
}
.main-container {
  border-top: 1px solid black;
  border-bottom: 1px solid black;
}
.main-content {
  padding: 1rem 0;
}

.works-list {
  padding: 1rem 0;
}
.works-list:not(:first-child) {
  border-top: 1px solid black;
}

.footer {
  /* margin-top: auto; */
  padding: 1rem;
}

.work-title {
  display: flex;
  justify-content: space-between;
  padding-top: 1rem;
  color: gray;
}
.work-metadata {
  display: flex;
  gap: 0.5rem;
}

.c-block {
  padding: 1rem 0;
}
.c-block:not(:first-child) {
  border-top: 1px solid black;
}
.c-block--textbox {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.c-block--text {
  /* width: 80%; */
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  break-inside: avoid;
  column-count: 6;
  column-width: 16rem;
  column-gap: 1rem;
  line-height: 1.6;
  word-break: keep-all;
}

.gallery-scroll {
  display: flex;
  gap: 1rem;
  overflow-x: auto;
  /* scrollbar-gutter: stable both-edges; */
  scroll-snap-type: 1 x mandatory;
}
.gallery-scroll::-webkit-scrollbar {
  height: 8px;
}
.gallery-scroll img {
  height: 320px;
  width: auto;
  display: block;
  object-fit: cover;
}
.gallery-item {
  flex: 0 0 auto;
  scroll-snap-align: start;
  max-width: max-content;
}
