/* 11_about 재단 소개 + 18_common 법적 고지·사이트맵 보조 스타일. 토큰 변수만 사용. */

.about-body { gap: var(--space-48); align-content: start; }
.about-section { display: grid; gap: var(--space-16); }

/* 재단 개요 / 연락처 (dl) */
.fact-sheet { margin: 0; display: grid; border-top: 1px solid var(--line); max-width: 760px; }
.fact-sheet > div { display: grid; grid-template-columns: 160px minmax(0, 1fr); gap: 4px 24px; padding: 14px 0; border-bottom: 1px solid var(--line); }
.fact-sheet dt { font-weight: 600; color: var(--ink-soft); font-size: 15px; }
.fact-sheet dd { margin: 0; }
@media (max-width: 640px) {
  .fact-sheet > div { grid-template-columns: 1fr; }
}
.contact-card { font-style: normal; display: grid; gap: var(--space-12); }
.contact-card__note a { color: var(--ink-soft); }

/* 이사장 프로필 */
.profile { display: grid; gap: var(--space-32); align-items: start; scroll-margin-top: calc(var(--header-h) + 24px); }
@media (min-width: 768px) {
  .profile:has(.profile__photo) { grid-template-columns: 240px minmax(0, 1fr); }
}
.profile__photo { aspect-ratio: 9 / 11; background: var(--skin); border-radius: var(--radius-sm); overflow: hidden; }
.profile__photo img { width: 100%; height: 100%; object-fit: cover; }
.profile__info { display: grid; gap: var(--space-8); }
.profile__suffix { display: block; font-size: 17px; font-weight: 500; color: var(--ink-soft); letter-spacing: 0; }
.profile__info .t-caption { margin-top: var(--space-16); }
.profile__creds { padding-left: 1.2em; display: grid; gap: 4px; }
.profile__signature { max-width: 720px; margin-top: var(--space-24); text-align: right; font-weight: 600; }

/* 임원 */
.board-role { margin-top: var(--space-16); }
.board-member { display: grid; gap: 4px; padding: 16px 0; }

/* 연혁 타임라인: 데스크톱 세로선 + 연도 라벨 고정, 모바일 단순 목록 */
.timeline { display: grid; gap: var(--space-32); }
.timeline__year { display: grid; gap: var(--space-12); }
.timeline__items { list-style: none; display: grid; gap: 0; border-left: 3px solid var(--line); }
.timeline__items li { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 12px; padding: 10px 0 10px 20px; }
.timeline__month { font-weight: 600; color: var(--tape-deep); font-size: 15px; }
@media (min-width: 1024px) {
  .timeline__year { grid-template-columns: 120px minmax(0, 1fr); gap: var(--space-24); align-items: start; }
  .timeline__label { position: sticky; top: calc(var(--header-h) + 24px); }
}

.location-map { width: 100%; max-width: 760px; border: 1px solid var(--line); border-radius: var(--radius-md); }

/* 법적 고지 */
.legal-body { max-width: 760px; align-content: start; }
.legal-toc { padding: 20px 24px; background: var(--white); border: 1px solid var(--line); border-radius: var(--radius-md); display: grid; gap: 8px; }
.legal-toc ol { padding-left: 1.4em; display: grid; gap: 2px; font-size: 15px; }
.legal-body .prose h2 { scroll-margin-top: calc(var(--header-h) + 16px); }
.legal-related { list-style: none; display: flex; flex-wrap: wrap; gap: 8px 24px; margin-top: 8px; }
.legal-related a { display: inline-block; padding: 10px 0; }

/* HTML 사이트맵 */
.sitemap-groups { row-gap: var(--space-48); }
.sitemap-groups__head { padding-bottom: 12px; }
.sitemap-groups__head a { color: var(--ink); text-decoration: none; }
.sitemap-groups__head a:hover { color: var(--tape-deep); text-decoration: underline; }
.sitemap-groups .program-list a { padding: 12px 0; }
.sitemap-groups .program-list__name { font-size: 17px; }

/* 이사장 사진 (본인 단독 사진만, D-36) */
.chairman-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.chairman-gallery figure { margin: 0; display: grid; gap: 8px; }
.chairman-gallery img { width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--radius-md); background: var(--skin); }
.chairman-gallery figcaption { font-size: 14px; color: var(--ink-muted); }
@media (max-width: 767px) { .chairman-gallery { grid-template-columns: 1fr; } }
