:root { --site-link: #2A211A; --site-muted: #7E7466; }

/* Pretendard — self-hosted subset (KS X 1001 + Latin). Real 400–800 weights,
   so weight hierarchy no longer collapses to faux-bold on Windows. */
@font-face { font-family: "Pretendard"; font-weight: 400; font-style: normal; font-display: swap;
  src: local("Pretendard Regular"), url(./fonts/Pretendard-400.subset.woff2) format("woff2"); }
@font-face { font-family: "Pretendard"; font-weight: 500; font-style: normal; font-display: swap;
  src: local("Pretendard Medium"), url(./fonts/Pretendard-500.subset.woff2) format("woff2"); }
@font-face { font-family: "Pretendard"; font-weight: 600; font-style: normal; font-display: swap;
  src: local("Pretendard SemiBold"), url(./fonts/Pretendard-600.subset.woff2) format("woff2"); }
@font-face { font-family: "Pretendard"; font-weight: 700; font-style: normal; font-display: swap;
  src: local("Pretendard Bold"), url(./fonts/Pretendard-700.subset.woff2) format("woff2"); }
@font-face { font-family: "Pretendard"; font-weight: 800; font-style: normal; font-display: swap;
  src: local("Pretendard ExtraBold"), url(./fonts/Pretendard-800.subset.woff2) format("woff2"); }

:root {
  --site-sans: "Pretendard", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo",
    "Noto Sans KR", "Malgun Gothic", "맑은 고딕", "Segoe UI", Arial, sans-serif;
}

html[lang="ko"] body, html[lang="ko"] button, html[lang="ko"] input, html[lang="ko"] textarea,
html[lang="en"] body, html[lang="en"] button, html[lang="en"] input, html[lang="en"] textarea { font-family: var(--site-sans) !important; }
html[lang="ko"] .site-shell, html[lang="ko"] .site-shell *,
html[lang="en"] .site-shell, html[lang="en"] .site-shell * { font-family: var(--site-sans) !important; }

body { word-break: keep-all; overflow-wrap: break-word; }

.site-shell-header { width: min(1060px, calc(100% - 52px)); margin: 0 auto; padding: 20px 0; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.site-shell-group { display: flex; align-items: center; gap: 14px; min-width: 0; }
.site-shell-brand { display: inline-flex; align-items: center; gap: 10px; color: inherit; text-decoration: none; font-size: 22px; line-height: 1; font-weight: 800; letter-spacing: -.03em; white-space: nowrap; }
.site-shell-brand img { width: 44px; height: 44px; object-fit: contain; flex: none; }
.site-shell-lang { display: flex; align-items: center; gap: 7px; white-space: nowrap; font-size: 13px; font-weight: 700; letter-spacing: .04em; }
.site-shell-lang a { color: var(--site-muted); text-decoration: none; }
.site-shell-lang a[aria-current="page"], .site-shell-lang a:hover { color: #DB5F24; }
.site-shell-lang span { color: #D8CBB2; }
.site-shell-footer { display: block !important; width: 100%; margin-top: 0; padding: 32px 26px 42px; text-align: center; }
.site-shell-footer nav { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px 0; margin: 0 auto; }
.site-shell-footer a { color: var(--site-link) !important; font-size: 14px; font-weight: 600; text-decoration: none; white-space: nowrap; }
.site-shell-footer a + a { display: inline-flex; align-items: center; }
.site-shell-footer a + a::before { content: "|"; margin: 0 14px; color: #A69B8F; font-weight: 400; }
.site-shell-footer a:hover { text-decoration: underline; text-underline-offset: 3px; }
.site-shell-copyright { display: block; margin-top: 16px; color: var(--site-muted); font-size: 14px; font-weight: 600; }
.wrap:has(> .site-shell-header) { max-width: 1060px; }
.wrap:has(> .site-shell-header) > main { max-width: 756px; margin-inline: auto; }
@media (max-width: 560px) { .site-shell-header { width: min(100% - 32px, 1060px); padding: 16px 0; } .site-shell-group { gap: 9px; } .site-shell-brand { font-size: 20px; } .site-shell-brand img { width: 37px; height: 37px; } .site-shell-lang { gap: 5px; font-size: 13px; } .site-shell-footer { padding-inline: 16px; } .site-shell-footer a + a::before { margin: 0 10px; } }
