@charset "utf-8";
/* 메인 스킨 공통 : 머리글 / GNB / 푸터 (레이아웃으로 등록하면 다른 화면에서도 사용) */
:root {
	--mn-green:#2db24a; --mn-green-d:#239a3d; --mn-green-l:#e9f7ec;
	--mn-text:#1f2328; --mn-sub:#6b7280; --mn-mute:#9ca3af;
	--mn-line:#e5e7eb; --mn-bg:#ffffff; --mn-soft:#f6f7f8;
	--mn-radius:10px;
	--mn-font:'Pretendard', 'Malgun Gothic', '맑은 고딕', sans-serif;
}
body {background:var(--mn-bg); color:var(--mn-text); font-family:var(--mn-font); font-size:14px; line-height:1.5; word-break:keep-all;}
.mn_inner {max-width:1280px; margin:0 auto; padding:0 20px; box-sizing:border-box;}
.mn_inner *, .mn_inner *::before, .mn_inner *::after {box-sizing:border-box;}
.mn_sr {position:absolute !important; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;}
.mn_skip {position:absolute; left:-9999px; top:0; z-index:100; padding:10px 16px; background:var(--mn-green); color:#fff !important;}
.mn_skip:focus {left:10px;}
.mn_header a, .mn_footer a {color:inherit; text-decoration:none;}
.mn_header a:focus-visible, .mn_header button:focus-visible, .mn_footer a:focus-visible {outline:2px solid var(--mn-green); outline-offset:2px;}

/* 머리글 */
.mn_top {display:flex; align-items:flex-end; justify-content:space-between; gap:16px; padding-top:22px; padding-bottom:14px;}
.mn_logo {margin:0; font-size:32px; font-weight:800; letter-spacing:-1px; line-height:1;}
.mn_logo a {color:var(--mn-text);}
.mn_util {display:flex; flex-wrap:wrap; gap:4px 14px; font-size:12px; color:var(--mn-sub);}
.mn_util a:hover {color:var(--mn-green);}
.mn_util strong {color:var(--mn-text);}

/* GNB */
.mn_gnb_wrap {position:relative; z-index:20;}
.mn_gnb {display:flex; align-items:center; background:var(--mn-green); border-radius:8px; padding:0 8px 0 16px; min-height:46px;}
.mn_gnb_list {flex:1; display:flex; flex-wrap:wrap; gap:0 2px; min-width:0;}
.mn_gnb_list a {display:block; padding:13px 12px; color:#fff !important; font-size:14px; font-weight:600; border-radius:6px; line-height:20px;}
.mn_gnb_list a:hover, .mn_gnb_list a.on {background:rgba(0,0,0,.12);}
/* 분류 서브 메뉴 : 마우스 올림 / 키보드 포커스 */
.mn_gnb_list > li {position:relative;}
.mn_gnb_list .has_sub > a i {margin-left:3px; font-size:12px; opacity:.85; vertical-align:-1px;}
.mn_gnb_sub {display:none; position:absolute; left:0; top:100%; z-index:30; min-width:140px; padding:6px; margin-top:4px; background:#fff; border:1px solid var(--mn-line); border-radius:8px; box-shadow:0 10px 24px rgba(0,0,0,.1);}
.mn_gnb_sub::before {content:''; position:absolute; left:0; right:0; top:-6px; height:6px;}
.mn_gnb_list .has_sub:hover > .mn_gnb_sub, .mn_gnb_list .has_sub:focus-within > .mn_gnb_sub {display:block;}
.mn_gnb_list .mn_gnb_sub a {padding:8px 12px; color:var(--mn-text) !important; font-size:13px; font-weight:500; white-space:nowrap; border-radius:5px;}
.mn_gnb_list .mn_gnb_sub a:hover, .mn_gnb_list .mn_gnb_sub a:focus-visible {background:var(--mn-green-l); color:var(--mn-green-d) !important;}
.mn_gnb_btns {display:flex; gap:2px; flex:none;}
.mn_icon_btn {width:40px; height:40px; background:transparent; color:#fff; font-size:20px; border-radius:6px; display:inline-flex; align-items:center; justify-content:center;}
.mn_icon_btn:hover, .mn_icon_btn[aria-expanded=true] {background:rgba(0,0,0,.14);}
.mn_layer {position:absolute; left:20px; right:20px; top:calc(100% + 6px); background:#fff; border:1px solid var(--mn-line); border-radius:var(--mn-radius); box-shadow:0 12px 30px rgba(0,0,0,.08); padding:16px;}
.mn_layer[hidden] {display:none;}
.mn_search_layer form {display:flex; gap:8px; max-width:560px; margin:0 auto;}
.mn_search_layer input {flex:1; min-width:0; height:44px; border:2px solid var(--mn-green); border-radius:8px; padding:0 14px; font-size:15px;}
.mn_search_layer button {height:44px; padding:0 20px; background:var(--mn-green); color:#fff; border-radius:8px; font-weight:700;}
.mn_all_menu ul {display:grid; grid-template-columns:repeat(6, 1fr); gap:6px;}
.mn_all_menu a {display:block; padding:10px 12px; border-radius:6px; background:var(--mn-soft); font-weight:600;}
.mn_all_menu a:hover {background:var(--mn-green-l); color:var(--mn-green-d);}
.mn_all_menu .mn_all_sub {display:block; margin-top:4px; padding-left:6px;}
.mn_all_menu .mn_all_sub a {padding:4px 8px; background:transparent; font-size:12.5px; font-weight:500; color:var(--mn-sub);}
.mn_all_menu .mn_all_sub a::before {content:'- ';}

/* 푸터 */
.mn_footer {margin-top:48px; border-top:1px solid var(--mn-line); color:var(--mn-sub); font-size:13px;}
.mn_sitemap ul {display:grid; grid-template-columns:repeat(6, 1fr); gap:14px 20px; padding:28px 0;}
.mn_sitemap a {font-weight:700; color:var(--mn-text);}
.mn_sitemap a:hover {color:var(--mn-green);}
.mn_foot_bottom {background:var(--mn-soft); padding:22px 0 28px;}
.mn_foot_links {display:flex; flex-wrap:wrap; gap:6px 18px; margin-bottom:14px; color:var(--mn-text);}
.mn_foot_links a:hover {text-decoration:underline;}
.mn_foot_info {display:flex; justify-content:space-between; align-items:flex-start; gap:20px;}
.mn_foot_info address {font-style:normal; display:flex; flex-direction:column; gap:2px; font-size:12px; line-height:1.7;}
.mn_sns {display:flex; gap:8px; flex:none;}
.mn_sns a {width:34px; height:34px; border:1px solid var(--mn-line); background:#fff; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; font-size:16px; color:var(--mn-sub);}
.mn_sns a:hover {color:var(--mn-green); border-color:var(--mn-green);}
.mn_copy {margin-top:14px; font-size:11px; color:var(--mn-mute); letter-spacing:.3px;}

@media (max-width:1024px) {
	.mn_all_menu ul, .mn_sitemap ul {grid-template-columns:repeat(4, 1fr);}
}
@media (max-width:768px) {
	.mn_inner {padding:0 16px;}
	.mn_top {padding-top:16px; padding-bottom:10px; align-items:center;}
	.mn_logo {font-size:26px;}
	.mn_gnb {padding:0 4px 0 6px;}
	/* 메뉴가 많으면 가로로 밀어서 본다 */
	.mn_gnb_list {flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; -webkit-overflow-scrolling:touch;}
	.mn_gnb_list::-webkit-scrollbar {display:none;}
	.mn_gnb_list a {padding:13px 10px; white-space:nowrap;}
	/* 가로 스크롤 메뉴에서는 드롭다운이 잘리므로 분류는 전체 메뉴에서 보여 준다 */
	.mn_gnb_list .has_sub:hover > .mn_gnb_sub, .mn_gnb_list .has_sub:focus-within > .mn_gnb_sub, .mn_gnb_list .has_sub > a i {display:none;}
	.mn_layer {left:16px; right:16px;}
	.mn_all_menu ul, .mn_sitemap ul {grid-template-columns:repeat(3, 1fr);}
	.mn_foot_info {flex-direction:column;}
}
@media (max-width:420px) {
	.mn_all_menu ul, .mn_sitemap ul {grid-template-columns:repeat(2, 1fr);}
	.mn_util {gap:4px 10px;}
}
/* 언어 선택 */
.mn_lang{position:relative}
.mn_lang summary{cursor:pointer;list-style:none;user-select:none}
.mn_lang summary::-webkit-details-marker{display:none}
.mn_lang summary::after{content:"\25BE";margin-left:4px;font-size:10px}
.mn_lang ul{position:absolute;right:0;top:100%;z-index:60;min-width:130px;margin:4px 0 0;padding:4px 0;list-style:none;background:#fff;border:1px solid #dde1e6;border-radius:6px;box-shadow:0 6px 18px rgba(0,0,0,.12)}
.mn_lang li a{display:block;padding:6px 14px;white-space:nowrap;color:var(--mn-text)}
.mn_lang li a:hover,.mn_lang li a.on{color:var(--mn-green);font-weight:600}
