/* 한국영화박물관 대메뉴와 /museum/** URL을 소유한다. 페이지 구역은 page-inventory.tsv 순서를 따른다. */

/* =============================================================================
   상설전시 — /museum/exhibition/permanent
   ============================================================================= */

.kofa-museum-permanent {
  --kofa-sub-layout-header-gap: 40px;
}

@media (max-width: 1279px) {
  .kofa-museum-permanent {
    --kofa-sub-layout-header-gap: 32px;
  }
}

@media (max-width: 599px) {
  .kofa-museum-permanent {
    --kofa-sub-layout-header-gap: 24px;
  }
}

.kofa-museum-permanent .kofa-museum-permanent__exhibitions {
  min-width: 0;
}

.kofa-museum-permanent .kofa-museum-permanent__exhibition {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

@media (max-width: 599px) {
  .kofa-museum-permanent .kofa-museum-permanent__exhibition {
    gap: 32px;
  }
}

.kofa-museum-permanent .kofa-museum-permanent__exhibition + .kofa-museum-permanent__exhibition {
  margin-top: 48px;
  padding-top: 48px;
  border-top: 1px solid var(--kofa-color-border-default);
}

@media (max-width: 1279px) {
  .kofa-museum-permanent .kofa-museum-permanent__exhibition + .kofa-museum-permanent__exhibition {
    margin-top: 24px;
    padding-top: 24px;
  }
}

@media (max-width: 599px) {
  .kofa-museum-permanent .kofa-museum-permanent__exhibition + .kofa-museum-permanent__exhibition {
    margin-top: 16px;
    padding-top: 16px;
  }
}

.kofa-museum-permanent .kofa-museum-permanent__overview {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.kofa-museum-permanent .kofa-museum-permanent__banner {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 5 / 3;
  border-radius: var(--kofa-radius-16);
  object-fit: cover;
  object-position: center;
}

.kofa-museum-permanent .kofa-museum-permanent__identity {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.kofa-museum-permanent .kofa-museum-permanent__title {
  margin: 0;
  font-size: var(--kofa-typo-headline-5-size);
  font-weight: var(--kofa-font-weight-bold);
  line-height: var(--kofa-line-height-base);
  letter-spacing: var(--kofa-letter-spacing-base);
}

@media (max-width: 1279px) {
  .kofa-museum-permanent .kofa-museum-permanent__title {
    font-size: var(--kofa-typo-headline-4-size);
  }
}

.kofa-museum-permanent .kofa-museum-permanent__location {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  color: var(--kofa-color-text-success);
  font-size: var(--kofa-typo-body-4-size);
  font-weight: var(--kofa-font-weight-semibold);
  line-height: var(--kofa-line-height-base);
  overflow-wrap: anywhere;
  letter-spacing: var(--kofa-letter-spacing-base);
}

.kofa-museum-permanent .kofa-museum-permanent__description {
  margin: 0;
  font-size: var(--kofa-typo-body-5-size);
  line-height: 1.8;
  letter-spacing: var(--kofa-letter-spacing-base);
}

.kofa-museum-permanent .kofa-museum-permanent__editor {
  min-width: 0;
}

/* =============================================================================
   기획전시 — /museum/exhibition/special
   ============================================================================= */


.kofa-museum-special { --kofa-sub-layout-header-gap: 40px; }
@media (max-width: 599px) { .kofa-museum-special { --kofa-sub-layout-header-gap: 24px; } }
.kofa-museum-special .kofa-museum-special__exhibitions { display: flex; flex-direction: column; gap: 40px; min-width: 0; }
@media (max-width: 599px) { .kofa-museum-special .kofa-museum-special__exhibitions { gap: 24px; } }
.kofa-museum-special .kofa-museum-special__hero { display: grid; grid-template-columns: minmax(0, 388fr) minmax(0, 552fr); grid-template-rows: min-content min-content; align-content: center; align-items: center; padding-block: 40px; padding-left: 40px; background: linear-gradient(to right, black 0, black 59.6939%, transparent 59.6939%); color: var(--kofa-color-text-white); text-decoration: none; }
/* Tablet 원본: 정보 388px, 사진 516px, 검은 배경과 사진 중첩 157px */
@media (max-width: 1279px) { .kofa-museum-special .kofa-museum-special__hero { grid-template-columns: minmax(0, 388fr) minmax(0, 516fr); background: linear-gradient(to right, black 0, black calc(40px + (100% - 40px) * 388 / 904 + 157px), transparent calc(40px + (100% - 40px) * 388 / 904 + 157px)); } }
@media (max-width: 599px) { .kofa-museum-special .kofa-museum-special__hero { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto; gap: 24px; padding: 24px 16px; background: black; } }
.kofa-museum-special .kofa-museum-special__current { grid-area: 1 / 1; display: flex; flex-direction: column; align-items: flex-start; gap: 40px; min-width: 0; padding-right: 40px; }
@media (max-width: 599px) { .kofa-museum-special .kofa-museum-special__current { grid-area: auto; gap: 24px; padding-right: 0; } }
.kofa-museum-special .kofa-museum-special__current-heading { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.kofa-museum-special .kofa-museum-special__current-heading h3 { margin: 8px 0 0; font-size: var(--kofa-typo-headline-5-size); font-weight: var(--kofa-font-weight-bold); line-height: var(--kofa-line-height-base); }
@media (max-width: 1279px) { .kofa-museum-special .kofa-museum-special__current-heading h3 { font-size: var(--kofa-typo-headline-4-size); } }
.kofa-museum-special .kofa-museum-special__current-heading p { margin: 0; font-size: var(--kofa-typo-body-4-size); font-weight: var(--kofa-font-weight-semibold); line-height: var(--kofa-line-height-base); }
.kofa-museum-special .kofa-museum-special__current-information { display: flex; flex-direction: column; gap: 8px; margin: 0 0 8px; font-size: var(--kofa-typo-body-4-size); line-height: var(--kofa-line-height-base); }
@media (max-width: 599px) { .kofa-museum-special .kofa-museum-special__current-information { margin-bottom: 0; } }
.kofa-museum-special .kofa-museum-special__current-information div { display: flex; gap: 16px; }
.kofa-museum-special .kofa-museum-special__current-information dt { font-weight: var(--kofa-font-weight-semibold); }
@media (max-width: 1279px) { .kofa-museum-special .kofa-museum-special__current-information dt { flex-shrink: 0; } }
.kofa-museum-special .kofa-museum-special__current-information dd { margin: 0; }
@media (max-width: 1279px) { .kofa-museum-special .kofa-museum-special__current-information dd { min-width: 0; overflow-wrap: anywhere; } }
.kofa-museum-special .kofa-museum-special__banner { grid-area: 1 / 2 / 3 / 3; display: block; width: 100%; height: auto; aspect-ratio: 552 / 310; object-fit: cover; }
@media (max-width: 599px) { .kofa-museum-special .kofa-museum-special__banner { grid-area: auto; aspect-ratio: 311 / 175; } }
.kofa-museum-special .kofa-museum-special__details { grid-area: 2 / 1; justify-self: start; margin-top: 40px; }
@media (max-width: 599px) { .kofa-museum-special .kofa-museum-special__details { grid-area: auto; justify-self: stretch; margin-top: 0; } }
.kofa-museum-special .kofa-museum-special__search { display: flex; flex-direction: column; gap: 12px; padding: 24px; border-radius: 16px; box-shadow: inset 0 0 0 1.5px var(--kofa-color-border-primary); }
@media (max-width: 599px) { .kofa-museum-special .kofa-museum-special__search { gap: 16px; padding: 20px 16px; } }
.kofa-museum-special .kofa-museum-special__search-row { display: flex; align-items: center; gap: 20px; padding-block: 8px; }
@media (max-width: 599px) { .kofa-museum-special .kofa-museum-special__search-row { flex-direction: column; align-items: stretch; gap: 8px; padding-block: 0; } }
.kofa-museum-special .kofa-museum-special__field-label { flex: 0 0 80px; font-size: var(--kofa-typo-body-4-size); font-weight: var(--kofa-font-weight-semibold); line-height: var(--kofa-line-height-base); }
@media (max-width: 599px) { .kofa-museum-special .kofa-museum-special__field-label { flex-basis: auto; } }
.kofa-museum-special .kofa-museum-special__keyword { display: grid; grid-template-columns: minmax(0, 1fr) 90px; gap: 8px; flex: 1; min-width: 0; }
@media (max-width: 599px) { .kofa-museum-special .kofa-museum-special__keyword { flex-basis: auto; } }
.kofa-museum-special .kofa-museum-special__year { width: 99px; }
@media (max-width: 599px) { .kofa-museum-special .kofa-museum-special__year { width: 100%; } }
.kofa-museum-special .kofa-museum-special__results { display: flex; flex-direction: column; gap: 24px; }
.kofa-museum-special .kofa-museum-special__total { margin: 0; font-size: var(--kofa-typo-body-4-size); line-height: var(--kofa-line-height-base); }
.kofa-museum-special .kofa-museum-special__list { display: flex; flex-direction: column; gap: 16px; }
.kofa-museum-special .kofa-museum-special__card { overflow: hidden; border-radius: 16px; box-shadow: inset 0 0 0 1px var(--kofa-color-border-default); color: var(--kofa-color-text-01); text-decoration: none; }
.kofa-museum-special .kofa-museum-special__card-status { display: flex; align-items: center; padding: 10px 24px; margin: 1px 1px 0; background: var(--kofa-color-surface-gray-subtle); color: var(--kofa-color-text-02); font-size: var(--kofa-typo-headline-1-size); font-weight: var(--kofa-font-weight-bold); line-height: var(--kofa-line-height-base); }
@media (max-width: 599px) { .kofa-museum-special .kofa-museum-special__card-status { padding-inline: 16px; } }
.kofa-museum-special .kofa-museum-special__card-status > span:first-child { flex: 1; }
.kofa-museum-special .kofa-museum-special__card-arrow { display: inline-flex; width: 26.25px; height: 20px; position: relative; transform: rotate(180deg); }
.kofa-museum-special .kofa-museum-special__card-arrow img:first-child { position: absolute; width: 7.91668px; height: 12.9167px; top: 3.54165px; left: 0; }
.kofa-museum-special .kofa-museum-special__card-arrow img:last-child { position: absolute; width: 26.25px; height: 1.25px; top: 9.375px; left: 0; }
.kofa-museum-special .kofa-museum-special__ongoing { color: var(--kofa-color-text-success); }
.kofa-museum-special .kofa-museum-special__card-information { display: flex; align-items: center; gap: 24px; margin: 0 1px 1px; padding: 16px 24px; }
@media (max-width: 1279px) { .kofa-museum-special .kofa-museum-special__card-information { flex-wrap: wrap; } }
@media (max-width: 599px) { .kofa-museum-special .kofa-museum-special__card-information { flex-direction: column; align-items: stretch; gap: 16px; padding: 16px; } }
.kofa-museum-special .kofa-museum-special__thumbnail { flex: 0 0 216px; width: 216px; height: auto; aspect-ratio: 4 / 3; border-radius: 8px; object-fit: cover; }
/* 전체 높이 Mobile 프레임의 사진 307px, 제목·날짜열 309px */
@media (max-width: 599px) { .kofa-museum-special .kofa-museum-special__thumbnail { flex-basis: auto; width: calc(100% - 2px); max-width: 100%; } }
.kofa-museum-special .kofa-museum-special__card-heading { display: flex; flex: 1; flex-direction: column; align-items: flex-start; gap: 12px; min-width: 0; overflow: hidden; }
@media (max-width: 1279px) { .kofa-museum-special .kofa-museum-special__card-heading { min-width: min(100%, 216px); } }
/* 1280px의 406px 제목열에서 480px 제목 잘림 방지. 1920px 캡처 전후 차이 0 */
.kofa-museum-special .kofa-museum-special__card-heading h3 { width: 100%; margin: 0; overflow: hidden; font-size: var(--kofa-typo-headline-3-size); font-weight: var(--kofa-font-weight-bold); line-height: var(--kofa-line-height-base); white-space: normal; overflow-wrap: anywhere; }
.kofa-museum-special .kofa-museum-special__card-heading p { display: flex; gap: 4px; margin: 0; color: var(--kofa-color-text-02); font-size: var(--kofa-typo-body-3-size); line-height: var(--kofa-line-height-base); }
.kofa-museum-special .kofa-museum-special__card-heading strong { font-weight: var(--kofa-font-weight-semibold); }
.kofa-museum-special .kofa-museum-special__dates { display: flex; flex: 0 0 180px; flex-direction: column; justify-content: center; box-sizing: border-box; min-height: 120px; margin: 0; padding-left: 24px; border-left: 1px solid var(--kofa-color-border-default); font-size: var(--kofa-typo-body-4-size); line-height: var(--kofa-line-height-base); text-align: center; }
@media (max-width: 599px) { .kofa-museum-special .kofa-museum-special__dates { flex-basis: auto; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; gap: 4px; min-height: 0; padding: 12px 0 0; border-left: 0; border-top: 1px solid var(--kofa-color-border-default); text-align: left; overflow-wrap: anywhere; } }

.kofa-museum-special .kofa-museum-special__pagination { margin-top: 16px; }

.kofa-museum-special .kofa-museum-special__response { display: flex; flex-direction: column; gap: 40px; }
@media (max-width: 599px) { .kofa-museum-special .kofa-museum-special__response { gap: 24px; } }
.kofa-museum-special .kofa-museum-special__placeholder { color: transparent; background: var(--kofa-color-background-gray-subtle); border-radius: 6px; }
.kofa-museum-special .kofa-museum-special__request-message { margin: 0; }

/* =============================================================================
   기획전시 상세 — /museum/exhibition/{id}
   ============================================================================= */


@media (max-width: 1279px) { .kofa-museum-exhibition-detail { --kofa-sub-layout-header-gap: 24px; } }
.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__exhibition { display: flex; flex-direction: column; gap: 96px; min-width: 0; }
@media (max-width: 1279px) { .kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__exhibition { gap: 48px; } }
@media (max-width: 599px) { .kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__exhibition { gap: 32px; } }
.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__summary { display: flex; flex-direction: column; gap: 24px; }

.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__heading { display: flex; flex-direction: column; gap: 16px; padding-block: 20px; border-block: 1px solid var(--kofa-color-border-default); letter-spacing: var(--kofa-letter-spacing-base); }
@media (max-width: 599px) { .kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__heading { gap: 12px; padding-block: 16px; } }
.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__status { display: flex; align-items: center; gap: 12px; }
.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__status strong { color: var(--kofa-color-text-information); font-size: var(--kofa-typo-headline-3-size); font-weight: var(--kofa-font-weight-bold); line-height: var(--kofa-line-height-base); }
.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__separator { width: 1px; height: 18px; background: var(--kofa-color-border-default); }
.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__title-actions { display: flex; align-items: center; gap: 24px; }
@media (max-width: 599px) { .kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__title-actions { flex-direction: column; align-items: stretch; gap: 16px; } }
.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__title { display: flex; flex: 1; flex-direction: column; gap: 12px; min-width: 0; }
.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__title h1 { margin: 0; font-size: var(--kofa-typo-headline-5-size); font-weight: var(--kofa-font-weight-bold); line-height: var(--kofa-line-height-base); overflow-wrap: anywhere; }
@media (max-width: 1279px) { .kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__title h1 { font-size: var(--kofa-typo-headline-4-size); } }
.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__title p { margin: 0; color: var(--kofa-color-text-02); font-size: var(--kofa-typo-body-4-size); font-weight: var(--kofa-font-weight-semibold); line-height: var(--kofa-line-height-base); }
.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__banner { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; border-radius: 20px; object-fit: cover; }
.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__information { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; margin: 0; }
@media (max-width: 1279px) { .kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__information { gap: 24px; } }
@media (max-width: 599px) { .kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__information { grid-template-columns: minmax(0, 1fr); gap: 0; } }
.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__information div { display: grid; min-height: 56px; grid-template-columns: 98px minmax(0, 1fr); }
/* Figma inside 하단선 1px을 아래 padding에 포함 */
.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__information dd { min-width: 0; padding-block: 16px 15px; overflow-wrap: anywhere; }
.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__label { color: var(--kofa-color-text-02); font-weight: var(--kofa-font-weight-semibold); }
.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__editor { width: 100%; margin-top: 16px; }
@media (max-width: 599px) { .kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__editor { margin-top: 8px; } }
.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__list-link { display: flex; justify-content: center; }
.kofa-museum-exhibition-detail .kofa-museum-exhibition-detail__list-link > a { width: 160px; }

/* =============================================================================
   교육 프로그램 목록 — /museum/education
   ============================================================================= */


.kofa-museum-education {
  --kofa-sub-layout-header-gap: 40px;
}

@media (max-width: 599px) {
  .kofa-museum-education {
    --kofa-sub-layout-header-gap: 24px;
  }
}

.kofa-museum-education__content {
  display: flex;
  flex-direction: column;
  gap: 40px;
  min-width: 0;
  letter-spacing: var(--kofa-letter-spacing-base);
  line-height: var(--kofa-line-height-base);
}

@media (max-width: 599px) {
  .kofa-museum-education__content {
    gap: 24px;
  }
}

.kofa-museum-education__search {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 24px;
  /* Figma stroke는 내부 레이아웃 폭에 포함되지 않는다 */
  outline: 1.5px solid var(--kofa-color-border-primary);
  outline-offset: -1.5px;
  border-radius: 16px;
}

@media (max-width: 599px) {
  .kofa-museum-education__search {
    gap: 16px;
    padding: 20px 16px;
  }
}

.kofa-museum-education__keyword-row {
  display: grid;
  grid-template-columns: 41px minmax(0, 1fr);
  align-items: center;
  gap: 20px;
  padding-block: 8px;
}

@media (max-width: 599px) {
  .kofa-museum-education__keyword-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
    padding-block: 0;
  }
}

.kofa-museum-education__keyword-row > label {
  font-size: var(--kofa-typo-body-4-size);
  font-weight: var(--kofa-font-weight-semibold);
  line-height: var(--kofa-line-height-base);
  letter-spacing: var(--kofa-letter-spacing-base);
}

.kofa-museum-education__filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  padding-block: 8px;
}

@media (max-width: 599px) {
  .kofa-museum-education__filter-row {
    flex-direction: column;
    gap: 16px;
    padding-block: 0;
  }
}

.kofa-museum-education__filter {
  display: grid;
  grid-template-columns: 32px minmax(0, 155px);
  align-items: center;
  gap: 12px;
  max-width: 199px;
  flex: 1 1 199px;
  font-size: var(--kofa-typo-body-4-size);
  font-weight: var(--kofa-font-weight-semibold);
}

@media (max-width: 599px) {
  .kofa-museum-education__filter {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
    max-width: none;
    flex: none;
  }
}

.kofa-museum-education__actions {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 12px;
}

@media (max-width: 599px) {
  .kofa-museum-education__actions {
    padding-top: 16px;
  }
}

.kofa-museum-education__divider {
  position: absolute;
  /* 원본 932px 벡터의 가운데 stroke가 각 방향으로 0.5px 확장된다 */
  top: -0.5px;
  left: -0.5px;
  display: block;
  width: calc(100% + 1px);
}

.kofa-museum-education__reset {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0;
  border: 0;
  color: var(--kofa-color-text-01);
  background: transparent;
  font: inherit;
  letter-spacing: var(--kofa-letter-spacing-base);
  font-size: var(--kofa-typo-body-4-size);
  font-weight: var(--kofa-font-weight-semibold);
  cursor: pointer;
}

.kofa-museum-education__reset-icon {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  box-sizing: border-box;
  border: 0.9px solid var(--kofa-color-border-primary);
  border-radius: 50%;
}

.kofa-museum-education__results {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

@media (max-width: 1279px) {
  .kofa-museum-education__results {
    gap: 24px;
  }
}

.kofa-museum-education__count {
  margin: 0;
  font-size: var(--kofa-typo-body-4-size);
}

.kofa-museum-education__cards {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.kofa-museum-education__card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--kofa-color-border-default);
  border-radius: var(--kofa-radius-16);
  color: var(--kofa-color-text-01);
  text-decoration: none;
}

.kofa-museum-education__card-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 10px 24px;
  background: var(--kofa-color-surface-gray-subtle);
}

@media (max-width: 599px) {
  .kofa-museum-education__card-heading {
    padding-inline: 16px;
  }
}

.kofa-museum-education__status {
  flex: 1;
  min-width: 0;
  font-size: var(--kofa-typo-headline-1-size);
  font-weight: var(--kofa-font-weight-bold);
  line-height: var(--kofa-line-height-base);
}

.kofa-museum-education__status--upcoming {
  color: var(--kofa-color-text-information);
}

.kofa-museum-education__status--open {
  color: var(--kofa-color-text-success);
}

.kofa-museum-education__status--closed {
  color: var(--kofa-color-text-02);
}

.kofa-museum-education__card-information {
  display: grid;
  grid-template-columns: 216px minmax(0, 1fr) 180px;
  align-items: center;
  gap: 24px;
  padding: 16px 24px;
}

@media (max-width: 1279px) {
  .kofa-museum-education__card-information {
    display: flex;
    flex-wrap: wrap;
  }
}

@media (max-width: 599px) {
  .kofa-museum-education__card-information {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    gap: 16px;
    padding: 16px;
  }
}

.kofa-museum-education__card-image {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 216 / 130;
  object-fit: cover;
  border-radius: var(--kofa-radius-8);
}

@media (max-width: 1279px) {
  .kofa-museum-education__card-image {
    flex: 0 0 216px;
    width: 216px;
  }
}

@media (max-width: 599px) {
  .kofa-museum-education__card-image {
    width: 100%;
  }
}

.kofa-museum-education__card-summary {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
}

@media (max-width: 1279px) {
  .kofa-museum-education__card-summary {
    flex: 1 1 200px;
  }
}

.kofa-museum-education__card-summary h3 {
  margin: 0;
  width: 100%;
  font-size: var(--kofa-typo-headline-3-size);
  font-weight: var(--kofa-font-weight-bold);
  line-height: var(--kofa-line-height-base);
  overflow-wrap: anywhere;
}

.kofa-museum-education__card-period {
  display: flex;
  flex-direction: column;
  margin: 0;
  padding-left: 24px;
  border-left: 1px solid var(--kofa-color-border-default);
  font-size: var(--kofa-typo-body-4-size);
  line-height: var(--kofa-line-height-base);
  text-align: center;
}

@media (max-width: 1279px) {
  .kofa-museum-education__card-period {
    box-sizing: border-box;
    flex: 0 0 180px;
  }
}

@media (max-width: 599px) {
  .kofa-museum-education__card-period {
    flex-direction: row;
    flex-wrap: wrap;
    column-gap: 0.25em;
    padding: 12px 0 0;
    border-top: 1px solid var(--kofa-color-border-default);
    border-left: 0;
    text-align: left;
  }
}

.kofa-museum-education__pagination {
  width: 100%;
  padding-top: 16px;
  overflow-x: auto;
}

.kofa-museum-education__request-region {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.kofa-museum-education__skeleton-line {
  display: inline-block;
  color: transparent;
  background: var(--kofa-color-background-gray-subtle);
  border-radius: var(--kofa-radius-8);
}

.kofa-museum-education__skeleton-image {
  width: 216px;
  height: 130px;
  background: var(--kofa-color-background-gray-subtle);
  border-radius: var(--kofa-radius-8);
}

@media (max-width: 599px) {
  .kofa-museum-education__skeleton-image {
    width: 100%;
    height: auto;
    aspect-ratio: 5 / 3;
  }
}

.kofa-museum-education__missing-image {
  width: 216px;
  height: 130px;
  background: var(--kofa-color-background-gray-subtle);
  border-radius: var(--kofa-radius-8);
}

@media (max-width: 599px) {
  .kofa-museum-education__missing-image {
    width: 100%;
    height: auto;
    aspect-ratio: 5 / 3;
  }
}

/* =============================================================================
   교육 프로그램 상세 — /museum/education/{id}
   ============================================================================= */


@media (max-width: 1279px) {
  .kofa-museum-education-detail {
    --kofa-sub-layout-header-gap: 24px;
  }
}

.kofa-museum-education-detail__content {
  min-width: 0;
  letter-spacing: var(--kofa-letter-spacing-base);
}

.kofa-museum-education-detail__heading {
  display: flex;
  align-items: flex-end;
  gap: 32px;
  padding-block: 20px;
  border-block: 1px solid var(--kofa-color-border-default);
}

@media (max-width: 1279px) {
  .kofa-museum-education-detail__heading {
    align-items: center;
  }
}

@media (max-width: 599px) {
  .kofa-museum-education-detail__heading {
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
    padding-block: 16px;
  }
}

.kofa-museum-education-detail__titles {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}

.kofa-museum-education-detail__titles h1 {
  margin: 0;
  font-size: var(--kofa-typo-headline-5-size);
  font-weight: var(--kofa-font-weight-bold);
  line-height: var(--kofa-line-height-base);
  overflow-wrap: anywhere;
}

@media (max-width: 1279px) {
  .kofa-museum-education-detail__titles h1 {
    font-size: var(--kofa-typo-headline-4-size);
  }
}

.kofa-museum-education-detail__metadata {
  display: flex;
  align-items: center;
  gap: 12px;
}

.kofa-museum-education-detail__metadata strong {
  color: var(--kofa-color-text-information);
  font-size: var(--kofa-typo-headline-3-size);
  font-weight: var(--kofa-font-weight-bold);
  line-height: var(--kofa-line-height-base);
}

.kofa-museum-education-detail__separator {
  width: 1px;
  height: 18px;
  background: var(--kofa-color-border-default);
}

.kofa-museum-education-detail__application {
  width: 173px;
  flex-shrink: 0;
}

@media (max-width: 599px) {
  .kofa-museum-education-detail__application {
    width: 100%;
  }
}

.kofa-museum-education-detail__overview {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-top: 24px;
}

.kofa-museum-education-detail__image {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 980 / 551;
  object-fit: cover;
  border-radius: var(--kofa-radius-20);
}

@media (max-width: 599px) {
  .kofa-museum-education-detail__image {
    border-radius: var(--kofa-radius-16);
  }
}

.kofa-museum-education-detail__information {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 40px;
  margin: 0;
}

@media (max-width: 1279px) {
  .kofa-museum-education-detail__information {
    column-gap: 24px;
  }
}

/* 두 열의 라벨 때문에 좁은 폭에서 값 영역이 넘친다 */
@media (max-width: 599px) {
  .kofa-museum-education-detail__information {
    grid-template-columns: minmax(0, 1fr);
  }
}

.kofa-museum-education-detail__field {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
}

@media (max-width: 1279px) {
  .kofa-museum-education-detail__field {
    grid-template-columns: 98px minmax(0, 1fr);
    min-height: 56px;
  }
}

.kofa-museum-education-detail__label {
  width: 120px;
}

@media (max-width: 1279px) {
  .kofa-museum-education-detail__label {
    width: 98px;
  }
}

.kofa-museum-education-detail__editor {
  margin-top: 24px;
  padding-top: 40px;
}

@media (max-width: 1279px) {
  .kofa-museum-education-detail__editor {
    padding-top: 16px;
  }
}

@media (max-width: 599px) {
  .kofa-museum-education-detail__editor {
    padding-top: 8px;
  }
}

.kofa-museum-education-detail__list {
  display: flex;
  justify-content: center;
  margin-top: 96px;
}

@media (max-width: 1279px) {
  .kofa-museum-education-detail__list {
    margin-top: 48px;
  }
}

@media (max-width: 599px) {
  .kofa-museum-education-detail__list {
    margin-top: 32px;
  }
}

.kofa-museum-education-detail__list-button {
  width: 160px;
}

/* =============================================================================
   박물관 이용안내 — /museum/guide (본문 밖 레이아웃)
   ============================================================================= */
.kofa-museum-guide { --kofa-sub-layout-header-gap: 24px; }
@media (max-width: 1279px) { .kofa-museum-guide { --kofa-sub-layout-header-gap: 40px; } }
@media (max-width: 599px) { .kofa-museum-guide { --kofa-sub-layout-header-gap: 24px; } }
