/*
Theme Name: GeneratePress Child
Template: generatepress
Author: 법무Insight
Description: 법률 정보 사이트 자식 테마
Version: 3.0
*/

/* ==========================================================
   법무Insight · 디자인 시스템 v3
   좌측 잉크 사이드바 + 페이퍼 문서형 본문
   ========================================================== */
:root{
	--brs-ink:#0D1A2B;
	--brs-ink-2:#4A5A6B;
	--brs-ink-3:#8A98A6;
	--brs-line:#E4E8EC;
	--brs-line-2:#F0F3F6;
	--brs-paper:#FFFFFF;
	--brs-bg:#F8FAFB;
	--brs-accent:#2E7DA8;
	--brs-accent-2:#7FB2CE;
	--brs-side:264px;
	--brs-doc:880px;
}
html,body{max-width:100%;overflow-x:hidden}
body{
	background:var(--brs-paper);color:var(--brs-ink);
	font-family:"Pretendard","Pretendard Variable",-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;
	-webkit-font-smoothing:antialiased;letter-spacing:-.02em;
}
a{color:var(--brs-ink);text-decoration:none}
a:hover{color:var(--brs-accent)}
img{max-width:100%;height:auto}
.site-content,.content-area,#page{min-width:0}

/* GP 기본 헤더·내비는 사용하지 않습니다 */
.site-header,.main-navigation{display:none !important}

/* ==========================================================
   좌측 사이드바
   ========================================================== */
.brs-side{
	background:var(--brs-ink);color:#B9C6D4;
	box-sizing:border-box;
}
.brs-side a{color:#D5DEE7}
.brs-side-in{padding:32px 26px 34px}
.brs-side-brand{display:block;font-size:20px;font-weight:800;letter-spacing:-.05em;color:#fff;line-height:1.35}
.brs-side-brand:hover{color:#fff}
.brs-side-tag{font-size:12px;line-height:1.6;color:#7E8FA1;margin:9px 0 0;letter-spacing:-.01em;word-break:keep-all}
.brs-side-rule{height:1px;background:rgba(255,255,255,.10);margin:26px 0 20px}
.brs-side-h{font-size:10.5px;font-weight:800;letter-spacing:.14em;color:#66788B;margin:0 0 12px}
.brs-nav{list-style:none;margin:0 0 24px;padding:0}
.brs-nav li{margin:0}
.brs-nav a{
	display:flex;align-items:center;justify-content:space-between;gap:10px;
	padding:9px 0;font-size:14.5px;font-weight:600;letter-spacing:-.03em;
	border-bottom:1px solid rgba(255,255,255,.06);transition:color .15s ease;
}
.brs-nav li:last-child a{border-bottom:0}
.brs-nav a:hover{color:#fff}
.brs-nav-c{font-size:11.5px;font-weight:700;color:#5F7286;font-variant-numeric:tabular-nums}
.brs-nav a:hover .brs-nav-c{color:var(--brs-accent-2)}
.brs-side-note{font-size:11.5px;line-height:1.75;color:#66788B;word-break:keep-all;margin:0}

/* 데스크톱: 고정 사이드바 */
@media (min-width:1000px){
	body{padding-left:var(--brs-side)}
	.brs-side{position:fixed;left:0;top:0;bottom:0;width:var(--brs-side);overflow-y:auto;z-index:60}
	body.admin-bar .brs-side{top:32px}
	#page.grid-container,#page.container{max-width:var(--brs-doc);margin-left:auto;margin-right:auto}
}
/* 모바일: 상단 블록 + 가로 스크롤 메뉴 */
@media (max-width:999px){
	.brs-side-in{padding:22px 18px 18px}
	.brs-side-rule{margin:18px 0 14px}
	.brs-nav{display:flex;gap:8px;overflow-x:auto;margin-bottom:16px;padding-bottom:4px;-webkit-overflow-scrolling:touch}
	.brs-nav li{flex:0 0 auto}
	.brs-nav a{
		border-bottom:0;background:rgba(255,255,255,.07);border-radius:99px;
		padding:8px 14px;font-size:13.5px;white-space:nowrap;
	}
	.brs-nav-c{display:none}
	.brs-side-note{display:none}
}

/* ==========================================================
   문서형 본문
   ========================================================== */
.brs-wrap{width:100%;min-width:0;box-sizing:border-box;max-width:var(--brs-doc);margin:0 auto;padding:0 26px}
.brs-wrap *{min-width:0}

/* 인트로 */
.brs-intro{padding:64px 0 40px;border-bottom:1px solid var(--brs-line);margin-bottom:44px}
.brs-eyebrow{
	display:inline-block;font-size:11px;font-weight:800;letter-spacing:.12em;
	color:var(--brs-accent);margin-bottom:20px;
}
.brs-intro h1{font-size:36px;line-height:1.42;font-weight:800;letter-spacing:-.06em;margin:0 0 20px;word-break:keep-all}
.brs-intro p{font-size:16px;line-height:1.85;color:var(--brs-ink-2);margin:0 0 26px;word-break:keep-all;max-width:40em}
.brs-facts{display:flex;flex-wrap:wrap;gap:0 34px;list-style:none;margin:0;padding:0}
.brs-facts li{display:flex;flex-direction:column;gap:4px}
.brs-facts dt,.brs-facts .k{font-size:11px;font-weight:800;letter-spacing:.1em;color:var(--brs-ink-3)}
.brs-facts .v{font-size:19px;font-weight:800;letter-spacing:-.04em;font-variant-numeric:tabular-nums}

/* 섹션 제목 */
.brs-sec{margin-bottom:52px}
.brs-sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:4px;padding-bottom:12px;border-bottom:2px solid var(--brs-ink)}
.brs-sec-head h2{font-size:19px;font-weight:800;letter-spacing:-.05em;margin:0}
.brs-sec-head .brs-more{font-size:12.5px;font-weight:700;color:var(--brs-ink-3);white-space:nowrap}
.brs-sec-head .brs-more:hover{color:var(--brs-accent)}
.brs-sec-desc{font-size:13.5px;line-height:1.7;color:var(--brs-ink-3);margin:12px 0 0;word-break:keep-all}

/* 번호 인덱스 */
.brs-idx{list-style:none;margin:0;padding:0}
.brs-idx li{border-bottom:1px solid var(--brs-line-2)}
.brs-idx a{display:flex;align-items:baseline;gap:16px;padding:15px 2px;transition:background .14s ease}
.brs-idx a:hover{background:var(--brs-bg)}
.brs-idx-n{
	flex:0 0 auto;width:26px;font-size:12px;font-weight:800;color:var(--brs-accent);
	font-variant-numeric:tabular-nums;letter-spacing:.02em;
}
.brs-idx-t{flex:1 1 auto;font-size:15.5px;line-height:1.62;font-weight:600;letter-spacing:-.035em;word-break:keep-all}
.brs-idx-d{flex:0 0 auto;font-size:11.5px;color:var(--brs-ink-3);font-variant-numeric:tabular-nums;letter-spacing:0}
.brs-idx--lead a{padding:19px 2px}
.brs-idx--lead .brs-idx-t{font-size:17px;font-weight:700}

/* 카테고리 태그 */
.brs-tag{
	display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.04em;
	color:var(--c,var(--brs-accent));border:1px solid currentColor;
	padding:2px 7px;border-radius:4px;margin-right:9px;vertical-align:2px;opacity:.85;
}

/* 하단 고지 */
.brs-note{
	border-top:1px solid var(--brs-line);padding:22px 0 0;margin:0 0 70px;
	font-size:13px;line-height:1.8;color:var(--brs-ink-3);word-break:keep-all;
}
.brs-note strong{color:var(--brs-ink-2)}

/* ==========================================================
   아카이브 · 검색 · 글 본문
   ========================================================== */
.page-header{border-bottom:2px solid var(--brs-ink);padding-bottom:14px;margin-bottom:8px}
.page-header .page-title{font-size:24px;font-weight:800;letter-spacing:-.05em;margin:0}
.page-header .taxonomy-description{font-size:13.5px;line-height:1.7;color:var(--brs-ink-3);margin-top:10px}

.archive .site-main .post,.search .site-main .post,.blog .site-main .post{
	border:0;border-bottom:1px solid var(--brs-line-2);background:transparent;padding:6px 0;
}
.archive .inside-article,.search .inside-article,.blog .inside-article{padding:18px 0}
.archive .entry-title,.search .entry-title,.blog .entry-title{font-size:18px;line-height:1.55;letter-spacing:-.045em;font-weight:700;margin-bottom:8px;word-break:keep-all}
.archive .entry-summary,.blog .entry-summary{font-size:14px;line-height:1.75;color:var(--brs-ink-2)}
.archive .entry-meta,.blog .entry-meta,.search .entry-meta{font-size:11.5px;color:var(--brs-ink-3)}
.archive .post-image,.blog .post-image,.search .post-image{display:none}

.single .entry-content,.page .entry-content{font-size:17px;line-height:1.95;color:#1A2838}
.single .entry-title,.page .entry-title{font-size:31px;line-height:1.44;letter-spacing:-.055em;font-weight:800;word-break:keep-all}
.single .entry-content h2{
	font-size:22px;font-weight:800;letter-spacing:-.05em;margin:2.3em 0 .7em;
	padding-bottom:10px;border-bottom:2px solid var(--brs-ink);
}
.single .entry-content h3{font-size:18.5px;font-weight:800;margin:1.9em 0 .6em;letter-spacing:-.04em}
.single .entry-content blockquote{
	border-left:3px solid var(--brs-accent);background:var(--brs-bg);
	padding:16px 20px;margin:1.7em 0;color:var(--brs-ink-2);border-radius:0 8px 8px 0;
}
.single .entry-content table{width:100%;border-collapse:collapse;font-size:15px}
.single .entry-content th,.single .entry-content td{border:1px solid var(--brs-line);padding:11px 13px}
.single .entry-content th{background:var(--brs-bg);font-weight:700}
.single .featured-image,.single .post-image{margin-bottom:26px}
.inside-article{background:transparent}
.entry-meta a{color:var(--brs-ink-2)}

/* 페이지네이션 */
.paging-navigation .nav-links,.pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap}
.paging-navigation .page-numbers,.pagination .page-numbers{
	border:1px solid var(--brs-line);border-radius:6px;padding:7px 13px;font-size:13.5px;font-weight:700;
}
.paging-navigation .page-numbers.current,.pagination .page-numbers.current{background:var(--brs-ink);color:#fff;border-color:var(--brs-ink)}

/* ==========================================================
   푸터
   ========================================================== */
.site-footer{background:var(--brs-bg);color:var(--brs-ink-3);border-top:1px solid var(--brs-line)}
.site-footer a{color:var(--brs-ink-2)}
.site-info{font-size:12.5px;padding:26px 0}
.site-info .copyright{margin:0;word-break:keep-all;line-height:1.85}

/* ==========================================================
   반응형
   ========================================================== */
@media (max-width:999px){
	.brs-wrap{padding:0 18px}
	#page.grid-container,#page.container{padding-left:18px;padding-right:18px}
	.brs-intro{padding:38px 0 30px;margin-bottom:34px}
	.brs-intro h1{font-size:27px;line-height:1.46}
	.brs-intro p{font-size:15px}
	.brs-sec{margin-bottom:40px}
}
@media (max-width:520px){
	.brs-intro h1{font-size:23px}
	.brs-facts{gap:0 24px}
	.brs-facts .v{font-size:17px}
	.brs-idx a{flex-wrap:wrap;gap:6px 12px;padding:14px 2px}
	.brs-idx-t{flex:1 1 100%;order:2;font-size:15px}
	.brs-idx-n{order:1}
	.brs-idx-d{order:1;margin-left:auto}
	.brs-sec-head h2{font-size:17px}
	.single .entry-title,.page .entry-title{font-size:23px}
	.single .entry-content,.page .entry-content{font-size:16px}
}

/* 아카이브 메타 정리 */
.archive .entry-meta .cat-links,.archive .entry-meta .tags-links,
.blog .entry-meta .cat-links,.blog .entry-meta .tags-links,
.search .entry-meta .cat-links,.search .entry-meta .tags-links,
.archive .entry-meta .comments-link,.blog .entry-meta .comments-link{display:none}
.archive .entry-meta .byline,.blog .entry-meta .byline,.search .entry-meta .byline{display:none}
.archive .read-more,.blog .read-more,.search .read-more{font-weight:700;color:var(--brs-accent)}
.archive .generate-columns-container,.blog .generate-columns-container{margin-left:0}

/* ===== 히어로 ===== */
.brs-hero{background:linear-gradient(135deg,#0D1A2B 0%,#1A3B57 100%);color:#fff;padding:66px 0 56px;margin-bottom:48px}
.brs-hero-in{max-width:var(--brs-doc);margin:0 auto;padding:0 26px;box-sizing:border-box}
.brs-hero .brs-eyebrow{color:#7FB2CE;margin-bottom:18px}
.brs-hero h1{font-size:37px;line-height:1.42;font-weight:800;letter-spacing:-.06em;margin:0 0 20px;color:#fff;word-break:keep-all}
.brs-hero p{font-size:16px;line-height:1.85;color:#A9BCCD;margin:0 0 28px;max-width:40em;word-break:keep-all}
.brs-chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 32px;padding:0}
.brs-chips li{margin:0}
.brs-chips a{display:inline-block;padding:9px 16px;border:1px solid rgba(255,255,255,.22);border-radius:99px;font-size:13.5px;font-weight:700;color:#DCE6F0;letter-spacing:-.03em;transition:background .15s ease,border-color .15s ease,color .15s ease}
.brs-chips a:hover{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.55);color:#fff}
.brs-hero .brs-facts{padding-top:26px;border-top:1px solid rgba(255,255,255,.12)}
.brs-hero .brs-facts .k{color:#7B90A5}
.brs-hero .brs-facts .v{color:#fff}
@media (max-width:999px){
	.brs-hero{padding:40px 0 36px;margin-bottom:34px}
	.brs-hero-in{padding:0 18px}
	.brs-hero h1{font-size:27px;line-height:1.46}
	.brs-hero p{font-size:15px}
}
@media (max-width:520px){
	.brs-hero h1{font-size:23px}
	.brs-chips a{padding:8px 13px;font-size:12.5px}
}

/* 홈 레이아웃 강제 */
.brs-front #content.site-content{display:block !important;max-width:none !important;padding:0 !important}
.brs-front #page.grid-container,.brs-front #page.container{max-width:none !important;padding:0 !important;margin:0 !important}
.brs-front .site-main{margin:0 !important;padding:0 !important;width:100% !important}

/* ===== 인덱스 썸네일 ===== */
.brs-img{width:100%;height:100%;object-fit:cover;display:block}
.brs-idx-thumb{flex:0 0 auto;width:104px;aspect-ratio:3/2;border-radius:6px;overflow:hidden;background:var(--brs-line);align-self:center}
.brs-idx--lead .brs-idx-thumb{width:132px}
.brs-idx a{align-items:center}
.brs-ph{position:relative;display:block;width:100%;height:100%;background:var(--c,#2E7DA8);overflow:hidden}
.brs-ph::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.12) 0%,rgba(0,0,0,.30) 100%)}
.brs-ph::after{content:'';position:absolute;inset:0}
.brs-ph--0::after{background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.16) 0 3px,transparent 3px 12px)}
.brs-ph--1::after{background-image:radial-gradient(rgba(255,255,255,.24) 1.6px,transparent 1.7px);background-size:12px 12px}
.brs-ph--2::after{background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.15) 0 1px,transparent 1px 11px),repeating-linear-gradient(90deg,rgba(255,255,255,.15) 0 1px,transparent 1px 11px)}
.brs-ph--3::after{background-image:repeating-radial-gradient(circle at 28% 72%,rgba(255,255,255,.18) 0 1px,transparent 1px 14px)}
@media (max-width:520px){
	.brs-idx a{flex-wrap:wrap;align-items:center}
	.brs-idx-thumb{width:76px;order:1}
	.brs-idx--lead .brs-idx-thumb{width:76px}
	.brs-idx-t{flex:1 1 100%;order:3}
	.brs-idx-n{order:0}
	.brs-idx-d{order:2;margin-left:auto}
}
