@charset "utf-8";

/* 서브페이지 기본 세팅 */
#container.sub { background-color: var(--main-black); color: #fff; }
#container.sub .inner { max-width: 1440px; }
.contents { padding: 7rem 0; min-height: 36rem; }
#container.sub .contents { padding-top: 0; }

/* NOXBOUND 안내 — 레이아웃 */
.nox-guide { margin: 0 auto; padding: 8rem 0 12rem; }
.nox-guide-nav { margin-bottom: 8rem; padding: 3.2rem 3.6rem; border: 0.1rem solid rgba(232, 180, 96, 0.35); background-color: rgba(255, 255, 255, 0.03); }
.nox-guide-nav-list { display: flex; flex-wrap: wrap; gap: 1.6rem 3.2rem; }
.nox-guide-nav-list a { font-size: var(--fs-18); line-height: 1.5; color: var(--key-color); transition: opacity .2s; }
.nox-guide-nav-list a:hover { opacity: 0.75; }

/* NOXBOUND 안내 — 아티클 */
.nox-article + .nox-article { margin-top: 12rem; padding-top: 12rem; border-top: 0.1rem solid rgba(255, 255, 255, 0.12); }
.nox-article-head { margin-bottom: 5.6rem; }
.nox-article-eyebrow { margin-bottom: 1.2rem; font-size: var(--fs-18); line-height: 1.4; color: var(--key-color); letter-spacing: 0.08em; }
.nox-article-tit { font-size: var(--fs-42); font-weight: 700; line-height: 1.35; letter-spacing: -0.02em; }
.nox-article-sub { margin-top: 2rem; font-size: var(--fs-22); line-height: 1.5; color: var(--sub-black); }

/* NOXBOUND 안내 — 본문 */
.nox-article-body { font-size: var(--fs-18); line-height: 1.85; color: rgba(255, 255, 255, 0.88); }
.nox-guide p { line-height: 150%; }
.nox-article-body > p + p,
.nox-sect > p + p { margin-top: 2rem; }
.nox-divider { margin: 5.6rem 0; border: 0; border-top: 0.1rem solid rgba(255, 255, 255, 0.12); }
.nox-sect + .nox-sect { margin-top: 5.6rem; }
.nox-sect-tit { margin-bottom: 2.4rem; font-size: var(--fs-28); font-weight: 700; line-height: 1.45; color: #fff; }
.nox-sect-sub { margin: 3.2rem 0 1.6rem; font-size: var(--fs-22); font-weight: 700; line-height: 1.45; color: var(--key-color); }
.nox-sect-sub:first-child { margin-top: 0; }

/* NOXBOUND 안내 — 목록·정의 */
.nox-list,
.nox-list-num { margin-top: 2rem; }
.nox-list li,
.nox-list-num li { position: relative; padding-left: 1.6rem; line-height: 1.75; }
.nox-list li + li,
.nox-list-num li + li { margin-top: 0.8rem; }
.nox-list li::before { content: ''; position: absolute; top: 1.1rem; left: 0; width: 0.4rem; height: 0.4rem; border-radius: 50%; background-color: var(--key-color); }
.nox-list-num { counter-reset: nox-num; }
.nox-list-num li { padding-left: 2.8rem; counter-increment: nox-num; }
.nox-list-num li::before { content: counter(nox-num) '.'; position: absolute; top: 0; left: 0; font-size: var(--fs-18); font-weight: 700; color: var(--key-color); }
.nox-dl { margin-top: 2.4rem; }
.nox-dl-item + .nox-dl-item { margin-top: 2rem; padding-top: 2rem; border-top: 0.1rem solid rgba(255, 255, 255, 0.08); }
.nox-dl-item dt { margin-bottom: 0.8rem; font-size: var(--fs-20); font-weight: 700; line-height: 1.45; color: #fff; }
.nox-dl-item dd { line-height: 1.75; color: rgba(255, 255, 255, 0.78); }

/* NOXBOUND 안내 — 링크·카테고리맵 */
.nox-article-body a { color: var(--key-color); text-decoration: underline; text-underline-offset: 0.25em; transition: opacity .2s; }
.nox-article-body a:hover { opacity: 0.75; }
.nox-tree { margin-top: 2.4rem; padding: 2.8rem 3.2rem; overflow-x: auto; font-family: 'Montserrat', 'Pretendard', monospace; font-size: var(--fs-16); line-height: 1.7; color: rgba(255, 255, 255, 0.82); background-color: rgba(255, 255, 255, 0.04); border: 0.1rem solid rgba(255, 255, 255, 0.1); }
.nox-play-tag { margin-top: 1.6rem; padding: 1.6rem 2rem; font-size: var(--fs-17); line-height: 1.7; color: rgba(255, 255, 255, 0.72); background-color: rgba(232, 180, 96, 0.08); border-left: 0.3rem solid var(--key-color); }
.nox-play-tag-label { margin-right: 0.4rem; font-weight: 700; color: var(--key-color); }
.nox-note { margin-top: 2.4rem; font-size: var(--fs-16); line-height: 1.65; color: var(--sub-black); }

/* 검색결과 — visual */
.sub-visual.srch-result { position: relative; width: 96%; max-width: 144rem; height: 28rem; margin: var(--sub-header-offset, 19.7rem) auto 0; }
.sub-visual.srch-result .vis-img { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; }
.sub-visual.srch-result .vis-img img { width: 100%; height: 100%; object-fit: cover; }
.sub-visual.srch-result .srch-visual-tit { display: flex; align-items: center; position: relative; z-index: 2; height: 100%; padding: 0 4rem; }
.sub-visual.srch-result .srch-visual-tit h2 { font-family: var(--font-family-kopub); font-size: var(--fs-32); font-weight: 700; line-height: 1.35; letter-spacing: -0.02em; color: #fff; }
.sub-visual.srch-result .srch-visual-tit .t-key { color: var(--key-color); }

/* 검색결과 — contents */
.contents-wrap { padding: 8rem 0 12rem; }
.search_list .count { display: block; margin-bottom: 2rem; font-family: var(--font-family-suit); font-size: var(--fs-18); font-weight: 400; line-height: 150%; color: rgba(255, 255, 255, 0.8); }
.search-group-section { margin-bottom: 0; }
.search-group-section + .search-group-section { margin-top: 12rem; }
.search-group-section .group-title { margin-bottom: 2rem; padding-bottom: 1.2rem; border-bottom: 0.1rem solid rgba(255, 255, 255, 0.3); font-size: var(--fs-24); font-weight: 700; line-height: 1.4; color: rgba(255, 255, 255, 0.92); }
.search-group-section .no-group-result { padding: 0.5rem 0; font-family: var(--font-family-suit); font-size: var(--fs-17); font-weight: 400; line-height: 150%; color: var(--sub-black); }
.search_list .list { margin: 0; padding: 0; }
.search_list .list > li { background-color: rgba(255, 255, 255, 0.03); }
.search_list .list > li + li { margin-top: 1rem; }
.result-list-cont { display: flex; align-items: center; flex-wrap: wrap; gap: 1.2rem 2rem; padding: 2.4rem 0 2.4rem 2.4rem; font-size: var(--fs-22); font-weight: 500; line-height: 150%; color: #fff; text-decoration: none; transition: opacity .2s; }
.result-list-cont:hover,
.result-list-cont:focus { color: #fff; opacity: 0.85; }
.result-cate { flex-shrink: 0; font-size: var(--fs-18); font-weight: 400; line-height: 150%; color: var(--key-color); }
.res-tit { min-width: 0; word-break: break-word; }
.no-result { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2.4rem; padding: 8rem 0; text-align: center; }
.no-result span { font-family: var(--font-family-suit); font-size: var(--fs-20); font-weight: 400; line-height: 150%; color: rgba(255, 255, 255, 0.8); }
.btn-search { display: inline-flex; align-items: center; justify-content: center; height: 5.6rem; padding: 0 2.4rem; border: 0; background: var(--key-color); font-family: var(--font-family-suit); font-size: var(--fs-18); font-weight: 500; line-height: 1; color: #fff; text-decoration: none; transition: opacity .2s; }
.btn-search:hover { opacity: 0.85; }
.contents-wrap .pagination { gap: 0.8rem; }
.contents-wrap .pagination a { display: flex; align-items: center; justify-content: center; width: 4rem; padding: 0 1.2rem; font-family: var(--font-family-suit); font-size: var(--fs-18); font-weight: 400; line-height: 1; color: rgba(255, 255, 255, 0.8); text-decoration: none; transition: color .2s, background-color .2s; }
.contents-wrap .pagination a:hover { color: #fff; }
.contents-wrap .pagination a.on { color: var(--main-black); font-weight: 600; background-color: var(--key-color); }

@media screen and (max-width: 1280px) {
	.sub-visual.srch-result { min-height: 24rem; }
}
@media screen and (max-width: 1024px) {
	.nox-guide { padding: 6rem 0 10rem; }
	.nox-sect-tit { font-size: var(--fs-26); }
	.sub-visual.srch-result { height: 24rem; }
	.sub-visual.srch-result .srch-visual-tit h2 { font-size: var(--fs-36); }
	.contents-wrap { padding: 6rem 0 10rem; }
	.search-group-section + .search-group-section { margin-top: 8rem; }
	.result-list-cont { padding: 2rem 0 2rem 1.6rem; font-size: var(--fs-20); }
	.search-group-section .group-title { font-size: 2.4rem; }
	.result-list-cont { font-size: 2rem; }
	.result-cate { font-size: 1.8rem; }
}

@media screen and (max-width: 768px) {
	.contents { padding: 4.8rem 0; }
	.nox-guide { padding: 4.8rem 0 8rem; }
	.nox-guide-nav { margin-bottom: 5.6rem; padding: 2.4rem; }
	.nox-guide-nav-list { flex-direction: column; gap: 1.2rem; }
	.nox-guide-nav-list a { font-size: var(--fs-17); }
	.nox-article + .nox-article { margin-top: 8rem; padding-top: 8rem; }
	.nox-article-head { margin-bottom: 4rem; }
	.nox-article-tit { font-size: var(--fs-32); }
	.nox-article-sub { font-size: var(--fs-20); }
	.nox-article-body { font-size: var(--fs-17); }
	.nox-divider { margin: 4rem 0; }
	.nox-sect-tit { font-size: var(--fs-24); }
	.nox-sect-sub { font-size: var(--fs-20); }
	.nox-tree { padding: 2rem; font-size: var(--fs-14); }
	.sub-visual.srch-result { width: 100%; height: 20rem; }
	.sub-visual.srch-result .srch-visual-tit { padding: 0 2.4rem; }
	.sub-visual.srch-result .srch-visual-tit h2 { font-size: var(--fs-32); }
	.contents-wrap { padding: 4.8rem 0 8rem; }
	.search_list .count { margin-bottom: 1.6rem; font-size: var(--fs-17); }
	.search-group-section + .search-group-section { margin-top: 5.6rem; padding-top: 5.6rem; }
	.search-group-section .group-title { margin-bottom: 1.6rem; font-size: 2.2rem; }
	.result-list-cont { flex-direction: column; align-items: flex-start; gap: 0.8rem; padding: 1.6rem 0 1.6rem 1.6rem; }
	.no-result { padding: 6rem 0; }
	.no-result span { font-size: var(--fs-18); }
	.btn-search { height: 4.8rem; font-size: var(--fs-17); }
	.contents-wrap .pagination { margin-top: 4.8rem; gap: 0.6rem; }
	.contents-wrap .pagination a { min-width: 3.6rem; height: 3.6rem; font-size: var(--fs-15); }
}

@media screen and (max-width: 500px) {
	.nox-article-tit { font-size: var(--fs-28); }
	.nox-sect-tit { font-size: var(--fs-22); }
	.search-group-section .group-title { font-size: var(--fs-18); }
}
