/* 지음인테리어디자인 — 공통 스타일 */
:root { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
.wordmark { font-family: "Archivo", "Pretendard", system-ui, sans-serif; }

/* 헤더 */
#site-header { background: transparent; }
#site-header.scrolled { background: rgba(255,255,255,.82); backdrop-filter: saturate(180%) blur(14px); border-bottom: 1px solid rgba(10,10,11,.07); }
/* 다크 히어로 위 헤더 가독성: 기본은 잉크 텍스트(밝은 배경 전제). 다크 히어로 페이지는 .hero-dark 처리 */
.nav-link { font-size: 15px; font-weight: 600; color: #1D1D1F; position: relative; transition: color .2s; }
.nav-link:hover { color: #0058A3; }
.nav-link.is-active { color: #0A0A0B; }
.nav-link.is-active::after { content:""; position:absolute; left:0; right:0; bottom:-22px; height:2px; background:#0058A3; }

/* 다크 히어로 위 헤더 가독성 (body.hero-dark) */
body.hero-dark #site-header:not(.scrolled) .wordmark,
body.hero-dark #site-header:not(.scrolled) .nav-link,
body.hero-dark #site-header:not(.scrolled) #nav-toggle { color:#fff !important; }
body.hero-dark #site-header:not(.scrolled) .wordmark .text-blue { color:#FFDB00 !important; }
body.hero-dark #site-header:not(.scrolled) .hdr-sub { color:rgba(255,255,255,.72) !important; }
body.hero-dark #site-header:not(.scrolled) .hdr-ghost { color:#fff !important; border-color:rgba(255,255,255,.45) !important; }
body.hero-dark #site-header:not(.scrolled) .nav-link.is-active::after { background:#FFDB00; }

/* 스크롤 리빌 */
[data-reveal] { opacity: 0; transform: translateY(24px); transition: opacity .7s cubic-bezier(.2,0,0,1), transform .7s cubic-bezier(.2,0,0,1); will-change: opacity, transform; }
[data-reveal].revealed { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  [data-reveal] { opacity: 1 !important; transform: none !important; transition: none; }
  :root { scroll-behavior: auto; }
}

/* 포트폴리오 카드 */
.proj-card img { transition: transform .6s cubic-bezier(.2,0,0,1); }
.proj-card:hover img { transform: scale(1.05); }

/* 필터 pill */
.filter-pill { transition: all .2s; }
.filter-pill.active { background:#0A0A0B; color:#fff; border-color:#0A0A0B; }

/* 라이트박스 */
#lightbox { transition: opacity .25s; }
#lightbox.hidden { opacity: 0; pointer-events: none; }

/* 한글 줄바꿈 보호 */
.keep-word { word-break: keep-all; }
