.footer-links { display:flex; flex-wrap:wrap; gap:8px 24px; padding:14px 0; }
.footer-links a { text-decoration:underline; text-underline-offset:4px; padding:5px 0; }
.nav nav { flex-wrap:wrap; justify-content:flex-end; gap:4px 20px; }
.nav .brand { flex-shrink:0; }
.nav nav a { display:inline-flex; align-items:center; min-height:44px; min-width:44px; white-space:nowrap; }
.nav nav a { padding:5px 0; }
.nav nav a[aria-current="page"] { color:var(--green); text-decoration:underline; text-underline-offset:7px; }
.breadcrumbs { display:flex; gap:10px; flex-wrap:wrap; color:var(--muted); font-size:14px; margin-bottom:24px; }
.breadcrumbs a { text-decoration:underline; text-underline-offset:4px; }
.reading > .eyebrow { margin-top:20px; }
.reading .lead { font-size:18px; color:var(--muted); margin:18px 0 28px; }
.reading h2 { margin:36px 0 14px; }
.reading p { margin-bottom:18px; line-height:1.9; }
.reading .guide-card h3 { margin:0; }
.reading .guide-card p { margin:10px 0 0; }
.prep-list,.question-list { padding-left:26px; }
.prep-list li,.question-list li { padding-left:6px; margin:16px 0; line-height:1.9; }
.prep-list li::marker { font-weight:700; color:var(--green); }
.memo { margin:32px 0; padding:24px; background:var(--soft); border-radius:12px; }
.memo h2 { margin-top:0; }
.memo label { display:block; margin-bottom:8px; font-weight:600; }
.memo textarea { margin-bottom:12px; background:white; }
.memo [role="status"] { font-size:14px; margin:10px 0 0; }
.resource-link { display:block; border:1px solid var(--line); border-radius:10px; padding:20px; margin:14px 0; }
.resource-link strong { color:var(--green); text-decoration:underline; text-underline-offset:4px; }
.resource-link strong span { font-size:14px; font-weight:400; }
.resource-link p { margin:8px 0 0; color:var(--muted); }
.reading-actions { display:flex; flex-wrap:wrap; gap:12px; margin:32px 0; }
.topic-card { text-align:left; display:flex; flex-direction:column; align-items:flex-start; }
.topic-card .text-link { margin-top:auto; padding-top:20px; font-size:14px; }
.topic-card:hover,.resource-link:hover { border-color:var(--green); background:var(--soft); }
.faq-list { border-top:1px solid var(--line); margin:28px 0; }
.faq-list details { border-bottom:1px solid var(--line); }
.faq-list summary { cursor:pointer; font-weight:600; padding:20px 8px; }
.faq-list details[open] summary { color:var(--green); }
.faq-list details p { padding:0 8px 12px; margin:0; color:var(--muted); }
.search-form { display:flex; align-items:end; flex-wrap:wrap; gap:10px; margin:24px 0; }
.search-form label { flex:1; min-width:180px; font-size:14px; font-weight:600; }
.search-form input { margin-top:6px; font-size:16px; }
.pagination { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:16px; margin:30px 0; }
.recovery { justify-content:center; }
.home-notice { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:10px; padding:20px 24px; margin:0 0 32px; border:1px solid var(--line); border-radius:10px; }
.home-notice p { color:var(--muted); font-size:14px; margin:5px 0; }
.post-row h3,.post-row p { overflow-wrap:anywhere; }
@media(max-width:760px) {
  .nav nav { gap:8px 17px; font-size:14px; }
  .reading .lead { font-size:17px; }
  .memo { padding:18px; }
  .reading h2 { font-size:22px; }
  .home-notice { padding:18px; }
  .footer-links { gap:6px 18px; font-size:14px; }
}

/* 중간 폭에서는 브랜드와 메뉴를 위아래로 놓아 문구와 메뉴가 잘리지 않게 한다. */
@media (min-width: 761px) and (max-width: 1180px) {
  .nav { flex-direction: column; align-items: flex-start; justify-content: center; gap: 12px; padding: 20px 0; }
}

/* 모바일에서는 모든 메뉴를 두 줄에 표시해 세 종류를 바로 찾을 수 있게 한다. */
@media (max-width: 760px) {
  .preview { font-size: 12px; line-height: 1.45; padding: 6px 16px; }
  .nav { min-height: 0; padding: 16px 0 0; }
  .brand { font-size: 25px; line-height: 1.3; }
  .brand span, .brand-tagline { display: none; }
  .nav nav { display: grid; grid-template-columns: max-content max-content 1fr; gap: 0 12px; margin: 10px 0 0; padding: 0; font-size: 16px; }
  .nav nav a { min-height: 44px; padding: 0; white-space: nowrap; }
  .nav nav a[data-facility] { grid-row: 2; }
  .nav nav a[data-facility="center"] { grid-column: 1; }
  .nav nav a[data-facility="care"] { grid-column: 2; }
  .nav nav a[data-facility="school"] { grid-column: 3; }
  .nav nav a:last-child { grid-row: 1; grid-column: 3; justify-self: end; }
  .nav nav a[aria-current="page"] { text-decoration: none; box-shadow: inset 0 -3px 0 var(--green); }
  .breadcrumbs { margin-bottom: 16px; }
  .page { padding-top: 22px; }
}

/* UI·UX 2차 묶음 (2026-09-24): 보조 글자 15px 이상 */
.breadcrumbs { font-size: 15px; }
.topic-card .text-link { font-size: 15px; }
.home-notice p { font-size: 15px; }
@media (max-width: 760px) { .footer-links { font-size: 15px; } }
.footer-links { font-size: 15px; }
.guide-card .meta { font-size: 15px; }
