/*
 * 홈 첫 화면 — 시안 v5(build/site/index.template.html)의 <style> 블록을 .kh 래퍼로 스코프했다.
 * 요소별 스타일은 템플릿의 인라인 style 에 있다 (시안 그대로). 여기는 인라인으로 표현할 수 없는 것만:
 * 기본 타이포 · 반응형 분기(data-*) · hover(.hv*) · 애니메이션 · GeneratePress 홈 보정.
 *
 * 팔레트 B(연맹 브랜드, 로고에서 추출): navy-900 #081932 · red-600 #CB281F · red-700 #A81D16 · red-500 #E03A2F(감청 위 큰 글자만).
 * 감청 배경 위 적색 텍스트 금지 (대비 3.23). 흰색을 쓴다. 외부 리소스 0 · 한글 웹폰트 임베드 금지.
 */
.kh { margin: 0; background: #fff; color: #0C1520; font-size: 16px; line-height: 1.68; word-break: keep-all; -webkit-font-smoothing: antialiased;
  font-family: "Pretendard", "Pretendard Variable", "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", sans-serif; }
.kh * { box-sizing: border-box; }
.kh img { display: block; max-width: 100%; }
.kh a { color: #A81D16; text-decoration: none; }
.kh a:hover { color: #CB281F; }
.kh :focus-visible { outline: 3px solid #E03A2F; outline-offset: 3px; }
.kh h1, .kh h2, .kh h3 { font-family: inherit; }
.kh dl, .kh ol, .kh ul { margin: 0; }

@keyframes blip { 0%, 100% { opacity: 1; } 50% { opacity: .25; } }
@keyframes rise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .kh *, .kh *::before, .kh *::after { animation: none !important; transition: none !important; } }

/* 반응형: 인라인 스타일로 표현할 수 없는 분기만 최소로 둔다 */
@media (max-width: 1000px) {
  .kh [data-stack] { grid-template-columns: 1fr !important; }
  .kh [data-quick] { grid-template-columns: repeat(3, 1fr) !important; }
  .kh [data-sticky] { position: static !important; }
  .kh [data-pair] { grid-template-columns: 1fr !important; }
  .kh [data-pair] img { min-height: 220px !important; }
}
@media (max-width: 760px) {
  .kh [data-quick] { grid-template-columns: repeat(2, 1fr) !important; }
  .kh [data-facts] { grid-template-columns: 1fr !important; }
  .kh [data-sec] { padding-top: 64px !important; padding-bottom: 64px !important; }
}

/* style-hover 속성에서 변환된 규칙 (Claude Design DSL → 표준 CSS) */
.kh .hv1:hover { color: #081932; }
.kh .hv2:hover { background: #A81D16; color: #fff; }
.kh .hv3:hover { background: rgba(8,25,50,.65); border-color: #fff; color: #fff; }
.kh .hv4:hover { background: #FDF2F1; color: #A81D16; }
.kh .hv5:hover { background: #E03A2F; color: #fff; }
.kh .hv6:hover { color: #A81D16; }
.kh .hv7:hover { border-color: #CB281F; background: #FDF2F1; }
.kh .hv8:hover { background: #081932; color: #fff; }
.kh .hv9:hover { color: #fff; }

/* 클래식 테마(GeneratePress)에서 콘텐츠 컬럼 밖으로 전체 폭 — 사이드바가 없어야 맞는다 (Frontend 의 generate_sidebar_layout) */
.kh-bleed { width: 100vw; margin-left: calc(50% - 50vw); }

/* GeneratePress 홈 페이지 여백·제목 제거. 100vw 가 스크롤바만큼 넘치는 것을 막는다 */
body.kmhpf-home .entry-header { display: none; }
body.kmhpf-home .site-content, body.kmhpf-home .inside-article, body.kmhpf-home #content, body.kmhpf-home .content-area { padding: 0; margin: 0; max-width: none; }
body.kmhpf-home .entry-content > p:empty { display: none; }
body.kmhpf-home .entry-content { margin-top: 0; }
body.kmhpf-home { overflow-x: hidden; }
