/* The posts index only. Category, search and single templates retain their own layout. */
.mirae-list { color: var(--ink, #17374b); background: var(--paper, #fbfcfc); }
.mirae-list .mirae-list-wrap { width: calc(100% - 64px); max-width: 1176px; margin-inline: auto; box-sizing: border-box; }
.mirae-list .mirae-list-head { padding: 64px 0 56px; background: var(--wash, #edf4f7); border-bottom: 1px solid var(--line, #d6e0e5); }
.mirae-list .mirae-list-eyebrow { font-size: 11px; font-weight: 600; letter-spacing: .17em; line-height: 1.5; color: var(--brand, #095788); margin: 0 0 18px; }
.mirae-list .mirae-list-heading { font-family: ClinicSerif, serif !important; font-size: 42px; font-weight: 500; line-height: 1.45; letter-spacing: -.045em; margin: 0; }
.mirae-list .mirae-list-lead { font-size: 16px; color: var(--muted, #60717b); line-height: 1.85; margin: 18px 0 0; }
.mirae-list .mirae-list-body { padding-block: 48px 88px; }
.mirae-list .mirae-list-query { margin: 0; }
.mirae-list .mirae-list-query .wp-block-post-template { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px 24px; list-style: none; padding: 0; margin: 0; }
.mirae-list .mirae-list-query .wp-block-post-template > li { display: flex; flex-direction: column; min-width: 0; margin: 0; padding: 0 0 16px; border-bottom: 1px solid var(--line, #d6e0e5); }
.mirae-list :is(p,h1,h2,a) { word-break: keep-all; overflow-wrap: anywhere; }
.mirae-list .mirae-list-media { aspect-ratio: 3 / 2; background: var(--wash, #edf4f7); margin: 0 0 21px; }
.mirae-list .mirae-list-media a { display: flex; align-items: center; justify-content: center; height: 100%; width: 100%; }
.mirae-list .mirae-list-media img { display: block; width: 100%; height: 100%; object-fit: contain; aspect-ratio: 3 / 2; transform: none; }
.mirae-list .mirae-list-meta { display: flex; align-items: baseline; flex-wrap: wrap; justify-content: space-between; gap: 5px 12px; margin: 0 0 12px; font-size: 12px; line-height: 1.7; }
.mirae-list .mirae-list-category { color: var(--brand, #095788); font-size: 12px; margin: 0; }
.mirae-list .mirae-list-date { color: var(--muted, #60717b); font-size: 12px; font-variant-numeric: tabular-nums; margin: 0; }
.mirae-list .mirae-list-title { font-family: Pretendard, sans-serif; font-size: 23px; font-weight: 550; line-height: 1.5; letter-spacing: -.035em; margin: 0; }
.mirae-list .mirae-list-title a { display: block; text-decoration: none; }
.mirae-list .mirae-list-excerpt { display: flex; flex-direction: column; flex: 1; margin: 14px 0 0; }
.mirae-list .wp-block-post-excerpt__excerpt { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; font-size: 15px; line-height: 1.85; color: var(--muted, #60717b); margin: 0; }
.mirae-list .wp-block-post-excerpt__more-text { margin: auto 0 0; padding-top: 15px; }
.mirae-list .wp-block-post-excerpt__more-link { display: inline-flex; align-items: center; min-height: 44px; color: var(--brand, #095788); font-size: 13px; font-weight: 550; text-decoration: none; }
.mirae-list a:hover { color: var(--brand, #095788); text-decoration: underline; text-underline-offset: 4px; }
.mirae-list a:focus-visible { outline: 2px solid var(--brand, #095788); outline-offset: 5px; border-radius: 1px; }
.mirae-list .mirae-list-fallback { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 100%; height: 100%; color: var(--brand, #095788); background: linear-gradient(135deg, #edf4f7, #e2eef2); }
.mirae-list .mirae-list-fallback-brand { font-family: Georgia, serif; font-size: clamp(28px, 3vw, 42px); letter-spacing: .2em; line-height: 1.5; }
.mirae-list .mirae-list-fallback-label { border-top: 1px solid #b2cbd7; padding-top: 10px; margin-top: 10px; font-size: 12px; letter-spacing: .04em; }
.mirae-list .mirae-list-media--fallback a:hover { text-decoration: none; }
.mirae-list .mirae-list-pagination { gap: 10px; flex-wrap: wrap; margin: 52px 0 0; }
.mirae-list .mirae-list-pagination .wp-block-query-pagination-numbers { display: flex; gap: 8px; flex-wrap: wrap; justify-content: center; margin: 0; }
.mirae-list .mirae-list-pagination :is(.page-numbers,.wp-block-query-pagination-previous,.wp-block-query-pagination-next) { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; box-sizing: border-box; padding: 8px 12px; border: 1px solid var(--line, #d6e0e5); font-size: 14px; line-height: 1.3; margin: 0; text-decoration: none; }
.mirae-list .mirae-list-pagination .current { color: #fff; background: var(--brand, #095788); border-color: var(--brand, #095788); }
.mirae-list .mirae-list-pagination .dots { border-color: transparent; min-width: 24px; padding-inline: 0; }
.mirae-list .mirae-list-pagination a:hover { background: var(--wash, #edf4f7); border-color: var(--brand, #095788); }
.mirae-list .mirae-list-empty { padding: 48px 24px; text-align: center; background: var(--wash, #edf4f7); border-top: 1px solid var(--line, #d6e0e5); font-size: 15px; line-height: 1.8; }
.mirae-list .mirae-list-empty-title { font-size: 22px; font-weight: 550; margin-top: 0; }
.mirae-list .mirae-list-empty a { display: inline-flex; align-items: center; min-height: 44px; color: var(--brand, #095788); }
@media (width < 1024px) {
  .mirae-list .mirae-list-wrap { width: calc(100% - 56px); }
  .mirae-list .mirae-list-query .wp-block-post-template { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px 24px; }
  .mirae-list .mirae-list-title { font-size: 22px; }
  .mirae-list .mirae-list-head { padding-block: 48px; }
  .mirae-list .mirae-list-heading { font-size: 38px; }
}
@media (width < 600px) {
  .mirae-list .mirae-list-wrap { width: calc(100% - 40px); }
  .mirae-list .mirae-list-query .wp-block-post-template { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .mirae-list .mirae-list-head { padding-block: 35px 32px; }
  .mirae-list .mirae-list-heading { font-size: 30px; }
  .mirae-list .mirae-list-eyebrow { font-size: 10px; margin-bottom: 15px; }
  .mirae-list .mirae-list-lead { font-size: 14px; margin-top: 15px; }
  .mirae-list .mirae-list-body { padding-block: 30px 56px; }
  .mirae-list .mirae-list-media { margin-bottom: 17px; }
  .mirae-list .mirae-list-title { font-size: 22px; }
  .mirae-list .mirae-list-pagination { gap: 6px; margin-top: 36px; }
  .mirae-list .mirae-list-pagination .wp-block-query-pagination-numbers { gap: 6px; }
}
