@charset "utf-8";
/* layout.css는 전체적인 스타일 정의 */
/* INPIAD Publishing Standard v1.3 — 헤더 / GNB(BEM+.is-open 드롭다운) / 푸터 / 사이트맵(BEM) / 퀵버튼 */

#wrapper{position:relative;}

/* ─────────────────────────────────────────────
 header : S
───────────────────────────────────────────── */
/* [QA5-06 재작업 · G-14] get_design_context(1:400) node 13:543 실측 — 헤더는 전 상태에서 흰 배경
 86px 고정이다(히어로 위에서도 투명·반전 없음). 옛 반전 스킴(rgba(255,255,255,.1) 투명 + opened/sub
 전환)은 시안 근거가 없어 폐기 — logo__light·GNB 흰색 반전도 아래에서 같이 정리한다. */
#header{
	position:fixed;top:0;left:0;width:100%;height:var(--h-header);
	z-index:var(--z-header);
	background:#fff;
	transition:all var(--t-base) linear;
}
/* [마크업i · G-14 피그마우선] get_metadata(13:497) 리터럴 — 로고 절대x=240 · 햄버거 우측끝
 절대x=1680(1628+52) 둘 다 컨테이너 1790px 기준(로고 80·아이콘 1695)으로는 안 맞고, **1470px**
 기준(로고 (1920-1470)/2+15=240 · 아이콘 우측 225+1470-15=1680)에서만 정확히 일치한다.
 reset.css:187-188 의 기본값(1790)을 헤더에서만 덮는다. 선언은 main/.inpiad-check.json 참조. */
/* [P5C-01 · 차단 해소 · 마크업k] 원인 확정(빼보기, 06_ §32) — `.logo`·`.head-util` 은 이 컨테이너
 기준 position:absolute(top:50%) 인데, 1024px 이하에서 `#gnb{display:none}`(responsive.css:83)이
 되면 이 컨테이너의 유일한 흐름 자식(nav#gnb)이 사라져 컨테이너 실제 높이가 0 이 된다 —
 `top:50%`의 50% 가 0 이 되어 로고 top −14/햄버거 −26(화면 위로 잘림)으로 렌더된다. 컨테이너
 높이를 헤더 자체 높이(`--h-header`, 폭별로 90/70/60 로 이미 반응형 값이 있다)에 고정하면
 GNB 유무와 무관하게 항상 정상 높이를 갖는다 — `height:100%`(부모 #header 가 height:var(--h-header)
 로 고정 높이라 100% 도 그 값을 그대로 물려받는다) 한 줄로 해소, 새 요소 없음. */
#header .container{max-width:1470px !important;height:100%;}
/* [P5C-14 · 필수 해소 · `FIG-06` · 마크업k] 헤더 하단 1px 선 — 시안 렌더(get_design_context) 헤더
 아래 픽셀이 흰색(선 없음)이다. 시안 근거 없이 남아 있던 골격 잔재라 제거한다. */
/* [STA-01] 스크롤 다운 시 헤더 숨김 */
#header.scrolled{transform:translateY(-100%);}

/* logo — [HTM-04] 메인은 h1, 서브는 p */
#header .logo{position:absolute;top:50%;left:var(--pad-side);transform:translateY(-50%);font-size:0;}
#header .logo a{display:inline-block;}
#header .logo img{width:320px;height:auto;}

/* gnb — [CSS-04] BEM: 블록 .gnb(=ID #gnb 로 대체) · 요소 __item/__link/__submenu ·
 상태 .is-active(현재 위치) / .is-open(드롭다운 열림). #gnb 는 HTM-03 레이아웃 ID로 유지. */
/* [마크업i §23-반려 재작업] 반려(30분) — translateX 로 오차를 「분산」한 것은 근사(G-14).
 get_design_context(I13:497;13:552/13:554/13:556/13:558/13:560) 리터럴 재확인:
 각 항목은 `content-stretch flex items-center justify-center size-full` — **고정폭 박스 + 가운데
 정렬**이다(auto-width 로 글자에 맞춰 줄어드는 구조가 아니다). 그리고 `letterSpacing:0`(옛
 -.6px 는 다른 노드(1:400 통짜 13:543) 조회에서 나온 근사·오기 — 이번엔 항목 노드 5개를 각각
 좁혀 재조회해 확인했다) · font 18px SemiBold(Pretendard) 는 기존과 동일. **박스가 좁아 보였던
 진짜 원인은 렌더 폭 문제가 아니라 두 가지였다 — ① 박스 자체를 고정폭으로 안 주고 auto-width 로
 렌더(글자만큼만 차지) ② letter-spacing:-.6px 를 잘못 넣어 글자 자체가 더 좁게 렌더**(6~17자 ×
 -.6px 누적 = 항목별 -3.6~-10.2px, 앞서 관측된 폭 축소 546 vs 574 와 정합). 두 원인을 없애면
 gap:80 고정 상태에서 총폭이 다시 894 로 맞아 translateX 도 근사가 아니라 단일 유도값(100.5px,
 아래)으로 5개 항목이 동시에 Δ0 대에 들어간다 — "분산"이 아니라 "원인 제거". */
#gnb{width:100%;padding:0 240px;box-sizing:border-box;}
/* item_start = 960(뷰포트중앙) − menuWidth/2 = 960−447 = 513abs(컨테이너 폭과 무관, §17-정정과
 같은 유도). #gnb 패딩 240 안에서 center 계산 후 남는 차이가 100.5px — 고정폭 복원 후 재검증. */
#gnb > ul{display:flex;justify-content:center;gap:48px;transform:translateX(100.5px);}
.gnb__item{position:relative;flex:0 0 auto;}
/* [마크업i §23-반려] get_metadata(I13:497;13:551)「Frame 1」자식 실측 폭 리터럴 — 5개 항목
 순서대로 63/160/174/114/63px. 고정폭 + 가운데 정렬(위 설명) 그대로 적용. */
.gnb__item:nth-child(1) .gnb__link{width:63px;}
.gnb__item:nth-child(2) .gnb__link{width:160px;}
.gnb__item:nth-child(3) .gnb__link{width:174px;}
.gnb__item:nth-child(4) .gnb__link{width:114px;}
.gnb__item:nth-child(5) .gnb__link{width:63px;}
/* [QA5-12 재작업 · G-14 · §23-반려 정정] get_design_context(I13:497;13:552 외 4개 항목 노드 각각)
 실측 — 18px SemiBold, **letter-spacing:0**(옛 -.6px 는 통짜 노드 조회 근사치였다, 정정). */
.gnb__link{
	display:flex;align-items:center;justify-content:center;height:var(--h-header);
	font-size:var(--fs-gnb);font-weight:600;line-height:1.6;
	color:var(--c-text);letter-spacing:0;white-space:nowrap;
	transition:color var(--t-base) linear;
}
/* [STA-01] .is-active = 현재 위치(페이지 로드 시 고정), :hover = 일시적 시각 피드백 */
.gnb__item.is-active > .gnb__link,
.gnb__item.current > .gnb__link,
.gnb__item:hover > .gnb__link{color:var(--c-primary);}
/* [P5B-11 재작업 · FIG-04] `M_MLine`(get_design_context(13:543) node 7:628) 확보·검증 —
 세로선이 아니라 점 2개(#999999, 20×20 박스) 자산이다(images/layout/ico_gnb_dot.svg, 열어 봄:
 opacity 배경 사각형은 히트박스일 뿐 시각 요소 아님/defs 없음). 이전 판(세로선)은 [재발] 대상. */
.gnb__item + .gnb__item:before{
	content:'';position:absolute;left:-24px;top:50%;width:20px;height:20px;
	transform:translate(-50%,-50%);background:center/contain no-repeat url('../img/layout/ico_gnb_dot.svg');
}

.gnb__submenu{
	position:absolute;top:var(--h-header);left:50%;transform:translateX(-50%);
	min-width:180px;padding:20px 0;opacity:0;visibility:hidden;
	background:var(--c-bg);border-radius:0 0 var(--r-md) var(--r-md);
	transition:all var(--t-base) linear;
}
/* [INT-01 §4] :hover 는 마우스 사용자용 progressive enhancement 다.
 .is-open 은 hover 가 없는 키보드(Tab)·스크린리더 사용자를 위해 ui.js 가 붙이는 실제 상태
 클래스로, 이 둘 중 하나만 성립해도 서브메뉴가 열린다 — hover 전용 메뉴 금지(INT-01). */
.gnb__item:hover > .gnb__submenu,
.gnb__item.is-open > .gnb__submenu{opacity:1;visibility:visible;}
.gnb__submenu-link{
	display:block;padding:8px 20px;font-size:var(--fs-body-s);line-height:1.5;
	color:var(--c-text-sub);white-space:nowrap;
	transition:color var(--t-base) linear;
}
.gnb__submenu-link:hover{color:var(--c-primary);}

/* head-util : 햄버거 */
#header .head-util{position:absolute;top:50%;right:var(--pad-side);transform:translateY(-50%);}
/* [P5B-11 재작업 · FIG-04] get_design_context(13:543) node 13:546「56_Menu_31」 리터럴 좌표(52×52
 박스) 그대로 재연 — 이전 판(가운데 정렬 3줄, 색만 맞춤)은 [재발] QA5-12 잔여였다.
 rect(13:547) top37/h2/w30/x12(아래 막대) · rect(13:548) top26/h2/w30/x12(가운데 막대) ·
 rect(13:549 파랑) top13/h6/w6/x12(강조 사각) · rect(13:550) top15/h2/w17/x25(짧은 막대, 우측 정렬). */
.btn-nav{display:block;position:relative;width:52px;height:52px;padding:0;border-radius:4.333px;overflow:hidden;}
.btn-nav > span{
	display:block;position:absolute;left:12px;height:2px;width:30px;border-radius:4.333px;
	background:#222;transition:all var(--t-fast) linear;
}
.btn-nav > span:nth-child(2){top:26px;}     /* 가운데 막대 */
.btn-nav > span:nth-child(3){top:37px;}     /* 아래 막대 */
.btn-nav > span:nth-child(4){top:15px;left:25px;width:17px;}   /* 위 짧은 막대(우측 정렬) */
.btn-nav > span.btn-nav__accent{top:13px;left:12px;width:6px;height:6px;border-radius:5.625px;background:var(--c-primary);}
.btn-nav:hover > span{background:var(--c-primary);}
.btn-nav:hover > span.btn-nav__accent{background:#222;}
/* header : E */

/* ─────────────────────────────────────────────
 footer : S
───────────────────────────────────────────── */
/* [W-04 반영 · 해소] get_design_context(11:475) 실측 — 골격 다크 테마(--c-bg-dark)가 아니라
 밝은 회색 배경(#f4f4f4)의 라이트 테마다. 문구도 #444/#666/#999 계열. 옛 --c-*-on-dark 토큰 대신
 리터럴로 직접 지정 — 다른 프로젝트가 공유하는 전역 다크 토큰을 이 절 하나 때문에 바꾸지 않는다. */
/* [QA5-11 재작업 · G-14] get_design_context(11:475) 리터럴 — 전체 337px, 로고+소개(좌) / 지사 2열(우)
 위쪽 블록 + 구분선(#e4e4e4) + copyright(좌)·약관(우) 아래 블록. 옛 435~443px 단일열 구조 폐기. */
/* [W-04 재작업] 시안 높이 337px(get_metadata(1:400) node 11:475, y5205→5542) */
/* [마크업h §22] min-height+flex:center 폐기(브리프 금지 항목) — get_metadata(1:400 → 11:475 상대)
 로고 y60(절대 5265)을 그대로 padding-top 리터럴로. min-height→height 고정(337, 시안값). */
#footer{height:337px;padding:60px 0 24px;background:#f4f4f4;box-sizing:border-box;}
/* [마크업h §22] get_design_context(11:475) 로고 x241·지사 블록 x966(컨테이너 우측 정렬)이 전부
 1470폭 컨테이너(main/sec5 와 동일 — (1920-1470)/2+15=240) 기준이다. 규칙 기본값 1790(#footer 전용)은
 이 시안엔 값이 없을 때의 기본값이고(G-14), 이 시안은 명시값이 있으므로 그 값을 쓴다 — 1470 오버라이드.
 `.inpiad-check.json`「피그마우선」선언(node 11:475) 등재. */
#footer .container{max-width:var(--w-content) !important;width:100%;}
/* [마크업h §22] get_metadata(11:475) 상대좌표 — border-bottom(11:469) y238, padding-bottom 30(=238-60-148) */
#footer .ft__top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px 30px;padding-bottom:40px;border-bottom:1px solid #e4e4e4;}
#footer .ft_logo{flex:0 0 593px;max-width:100%;}
/* [P5D-05 · 필수 해소 · 마크업l] get_metadata(11:475) 재확인 — 로고(y60,h32→bottom92)와 소개문
 그룹(y122) 사이 실제 간격은 30px(122-92)다. 줄간격(P5C-11)은 이미 해소됐는데 이 여백만
 22px 로 남아 소개문 전체가 8px 위로 붙어 있었다(픽셀 행 5326 vs 시안 5334, `p_footer_intro.png`). */
#footer .ft_logo img{display:block;width:156px;height:32px;margin-bottom:30px;}
/* [P5B-08 재작업 · get_design_context(11:477)] 소개문은 한 문장이 두 줄로 자동 개행(gap 8 · 자간 0,
 기존 -.48 근사 폐기·gap 도 4→8) — HTML 쪽에 줄바꿈 지점(<br>)을 그대로 반영한다(FIG-07). */
#footer .ft-desc p{font-size:var(--fs-body-s);line-height:1.6;color:#666;letter-spacing:0;}
#footer .ft-desc p + p{margin-top:8px;}

/* [마크업h §22] get_metadata(11:475) — 지사 블록(Frame47288) 상대 y100, 로고 열(y60) 대비 +40 오프셋 */
#footer .ft-branch{display:flex;flex-wrap:wrap;gap:4px 30px;margin-top:40px;}
#footer .ft-branch__item{width:342px;max-width:100%;}
#footer .ft-branch__item h2{font-size:var(--fs-body-s);font-weight:600;color:#444;margin-bottom:4px;}
#footer .ft-branch__item p{font-size:var(--fs-body-s);line-height:1.6;color:#666;letter-spacing:0;}
#footer .ft-branch__item a{color:#666;}

/* [마크업h §22] get_metadata(11:475) copyright(11:471) y255 — border(238)+17 */
#footer .ft__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px;margin-top:17px;}
#footer .copyright{font-size:14px;line-height:1.6;color:#999;letter-spacing:0;}
#footer .terms > ul{display:flex;gap:0 24px;}
#footer .terms > ul > li{position:relative;}
#footer .terms a{
	font-size:14px;font-weight:600;color:#666;
	transition:color var(--t-base) linear;
}
#footer .terms a:hover{color:var(--c-primary);}
/* footer : E */

/* ─────────────────────────────────────────────
 quick : S
───────────────────────────────────────────── */
/* [§12 W-05] .quick-top 배치 규칙 3줄(옛 127~129) 삭제 — get_metadata(1:400) 확인 결과 최종
 시안에 이 요소가 없다(FIG-06, 고객사 건). QA2-06(반응형 반려, #wrapper 기준 상자로 수천px
 밖으로 사라지는 결함)은 요소 자체를 지우는 것으로 해소됐다 — 위치 기준 상자를 고치는 방식이
 아니다. .btn-top 스타일은 js/ui.js:33 의 핸들러가 아직 참조 중이라 남긴다(§12 보고). */
.btn-top{
	display:flex;align-items:center;justify-content:center;width:60px;height:60px;
	border-radius:50%;background:var(--c-primary);color:#fff;
	font-size:var(--fs-caption);font-weight:700;letter-spacing:0;
	transition:background var(--t-base) linear;
}
.btn-top:hover{background:var(--c-primary-dark);}
/* quick : E */

/* ─────────────────────────────────────────────
 sitemap : S
 Figma 312:6641 SiteMap — 전체화면 다크 오버레이
───────────────────────────────────────────── */
.sitemap{
	position:fixed;top:0;left:0;width:100%;height:100%;
	z-index:var(--z-sitemap);overflow:hidden;visibility:hidden;opacity:0;
	pointer-events:none;
	background:#021122;
}
html.sitemap-opened{overflow:hidden;}
html.sitemap-opened .sitemap{visibility:visible;opacity:1;pointer-events:auto;}
.sitemap__bg{
	position:absolute;left:0;top:86px;width:100%;height:calc(100% - 86px);
	background:#0a1139;
}
.sitemap__bg img{
	position:absolute;left:-4.13%;top:-15.56%;width:138.06%;height:121.28%;
	max-width:none;object-fit:cover;opacity:.35;
}
.sitemap__bg:after{
	content:'';position:absolute;inset:0;
	background:linear-gradient(90deg,rgba(0,0,0,.2),rgba(0,0,0,.2)),linear-gradient(180deg,rgba(0,0,0,.3) 7.5%,rgba(0,0,0,0) 17.917%);
}
.sitemap__dim{position:absolute;inset:0;background:#021122;opacity:.92;}
.sitemap__head{
	position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;
	height:86px;padding:0 60px;
}
.sitemap__head .logo img{width:320px;height:49px; filter:}
.sitemap-close{
	display:flex;align-items:center;justify-content:center;width:56px;height:56px;background:none;border:0;padding:0;
}
.sitemap-close img{width:56px;height:56px;}
.sitemap__body{
	position:relative;z-index:2;display:flex;align-items:flex-start;justify-content:flex-start;
	gap:155px;height:calc(100% - 86px);padding:80px 0px 40px;box-sizing:border-box;
}
.sitemap__intro{flex:0 0 544px;display:flex;flex-direction:column;gap:40px; padding-left: 221px;}
.sitemap__intro-top{display:flex;flex-direction:column;gap:40px;}
.sitemap__eyebrow{color:#006aff;font-size:20px;font-weight:700;line-height:1.6;letter-spacing:0;}
.sitemap__headline{color:#f0f4f9;font-size:50px;font-weight:300;line-height:1.3;letter-spacing:0;}
.sitemap__headline b{font-weight:600;color:#fff;}

.sitemap__rule{width:544px;max-width:100%;height:0;border:0;border-top:1px solid rgba(255,255,255,.24);}
.sitemap__tels{display:flex;flex-direction:column;gap:8px;width:233px;}
.sitemap__tel{display:flex;align-items:center;gap:8px;color:#fff;font-size:20px;font-weight:700;line-height:1.6;white-space:nowrap;}
.sitemap__tel img{width:24px;height:24px;}
.sitemap__tel em{color:#72d2ff;font-style:normal;margin-right:12px;}
.sitemap__nav{flex:1 1 auto;max-width:100%;display:flex;flex-direction:column;gap:40px;max-height:100%;overflow:auto; padding-right: 221px; margin-right: 20px;}
.sitemap__group{display:flex;flex-direction:column;gap:20px;padding-bottom:20px;}
.sitemap__nav::-webkit-scrollbar{
	width:6px;
}

.sitemap__nav::-webkit-scrollbar-track{
	background:transparent;
}

.sitemap__nav::-webkit-scrollbar-thumb{
	border-radius:100px;
	background:var(--Gray-700, #666);
}

.sitemap__nav::-webkit-scrollbar-thumb:hover{
	background:#555;
}

.sitemap__group-tit{color:#fff;font-size:32px;font-weight:700;line-height:1.6;}
.sitemap__group.is-current .sitemap__group-tit{color:#72d2ff;}
.sitemap__links{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;}
.sitemap__link{
	display:inline-flex;align-items:center;gap:30px;color:#666;font-size:20px;font-weight:600;line-height:1.6;white-space:nowrap;
}
.sitemap__link:after{
	content:'';display:block;width:1px;height:14px;background:rgba(255,255,255,.24);
}
.sitemap__links .sitemap__link:last-child:after{display:none;}
.sitemap__link:hover,
.sitemap__link.is-current{color:#fff4f0;}
/* sitemap : E */

/* ─────────────────────────────────────────────
 sitemap : responsive [RWD-01]
───────────────────────────────────────────── */
@media (max-width:1400px){
	.sitemap__body{padding:40px 60px 40px;gap:60px;}
	.sitemap__intro{flex:0 0 400px;}
	.sitemap__headline{font-size:40px;}
	.sitemap__group-tit{font-size:26px;}
	.sitemap__link{font-size:16px;gap:16px;}
}
@media (max-width:1024px){
	.sitemap__body{flex-direction:column;align-items:flex-start;justify-content:flex-start;height:auto;padding:24px 24px 40px;overflow:auto;}
	.sitemap__intro{flex:0 0 auto;width:100%;}
	.sitemap__nav{height:auto;max-width:100%;width:100%;}
	.sitemap__headline{font-size:32px;}
	.sitemap__head{padding:0 24px;}
}
@media (max-width:768px){
	.sitemap__group-tit{font-size:22px;}
	.sitemap__link{font-size:15px;gap:12px;}
	.sitemap__link:after{height:12px;}
}

/* ─────────────────────────────────────────────
 sitemap : responsive
 1600 · 1200 · 1024 · 768 · 480
───────────────────────────────────────────── */
/* 1600 : 221px 여백·155px 갭이 먼저 줄어듦 */
@media (max-width:1600px){
	.sitemap__head{padding:0 48px;}
	.sitemap__body{gap:72px;padding:64px 0 40px;}
	.sitemap__intro{flex:0 0 440px;padding-left:80px;gap:32px;}
	.sitemap__intro-top{gap:28px;}
	.sitemap__headline{font-size:42px;}
	.sitemap__rule{width:100%;}
	.sitemap__nav{padding-right:80px;margin-right:0;gap:32px;}
	.sitemap__group-tit{font-size:28px;}
	.sitemap__link{font-size:18px;gap:20px;}
}
/* 1200 : 좌측은 유지, 밀도만 한 단계 더 */
@media (max-width:1200px){
	.sitemap__head{padding:0 36px;}
	.sitemap__head .logo img{width:320px;height:auto;}
	.sitemap-close,
	.sitemap-close img{width:48px;height:48px;}
	.sitemap__body{gap:48px;padding:48px 0 32px;}
	.sitemap__intro{flex:0 0 340px;padding-left:36px;gap:24px;}
	.sitemap__intro-top{gap:20px;}
	.sitemap__eyebrow{font-size:16px;}
	.sitemap__headline{font-size:34px;}
	.sitemap__tel{font-size:16px;}
	.sitemap__tel img{width:20px;height:20px;}
	.sitemap__nav{padding-right:36px;gap:28px;}
	.sitemap__group{gap:14px;padding-bottom:12px;}
	.sitemap__group-tit{font-size:24px;}
	.sitemap__links{gap:10px 16px;}
	.sitemap__link{font-size:16px;gap:14px;}
	.sitemap__link:after{height:12px;}
}
/* 1024 : 좌측 인트로 제거, 메뉴만 전체 스크롤 */
@media (max-width:1024px){
	.sitemap__bg{top:72px;height:calc(100% - 72px);}
	.sitemap__head{height:72px;padding:0 24px;}
	.sitemap__intro{display:none;}
	.sitemap__body{
		flex-direction:column;
		align-items:stretch;
		justify-content:flex-start;
		gap:0;
		height:calc(100% - 72px);
		padding:28px 32px 40px;
		overflow:auto;
	}
	.sitemap__nav{
		flex:none;
		width:100%;
		max-width:none;
		max-height:none;
		height:auto;
		padding-right:0;
		margin-right:0;
		overflow:visible;
		gap:28px;
	}
	.sitemap__headline{font-size:32px;}
}
/* 768 */
@media (max-width:768px){
	.sitemap__bg{top:64px;height:calc(100% - 64px);}
	.sitemap__head{height:64px;padding:0 20px;}
	.sitemap__head .logo img{width:210px;}
	.sitemap-close,
	.sitemap-close img{width:40px;height:40px;}
	.sitemap__body{height:calc(100% - 64px);padding:20px 20px 32px;}
	.sitemap__nav{gap:24px;}
	.sitemap__group{gap:12px;padding-bottom:8px;}
	.sitemap__group-tit{font-size:20px;}
	.sitemap__links{gap:8px 12px;}
	.sitemap__link{font-size:15px;gap:12px;white-space:normal;}
	.sitemap__link:after{height:11px;}
}
/* 480 : 링크 세로 나열, 구분선 숨김 */
@media (max-width:480px){
	.sitemap__bg{top:56px;height:calc(100% - 56px);}
	.sitemap__head{height:56px;padding:0 16px;}
	.sitemap__head .logo img{width:210px;}
	.sitemap-close,
	.sitemap-close img{width:36px;height:36px;}
	.sitemap__body{height:calc(100% - 56px);padding:16px 16px 28px;}
	.sitemap__nav{gap:20px;}
	.sitemap__group-tit{font-size:18px;}
	.sitemap__links{flex-direction:column;align-items:flex-start;gap:6px;}
	.sitemap__link{font-size:14px;gap:0;}
	.sitemap__link:after{display:none;}
}


/* ─────────────────────────────────────────────
 header — [QA5-06 재작업] 헤더가 항상 흰 배경(86px)이므로 반전 스킴 폐기.
 logo__light(골격 placeholder logo_w.png)는 index.html 에서 제거했다 — 여기서도
 .logo__dark 를 상시 노출로 바꾼다. 재발 방지: 골격 샘플 이미지를 끄는 CSS 조건부
 노출 자체를 없앴다(§9-3 최초 지적·QA5-06 재발 원인).
───────────────────────────────────────────── */
.logo__dark{display:block;}

.head-util{--c-head-ink:var(--c-text);--c-head-line:var(--c-line);}
.head-util button,
.head-util a{color:var(--c-head-ink);}
.head-util .btn-lang{border:1px solid var(--c-head-line);}
