@charset "utf-8";

/* ============================================
   분과 안내 (part_info) 전용 스타일
   상단 6개 분과 카드는 원본 content.css 그대로 추출,
   하단 추가정보(연구분야/활동)는 기존 컴포넌트(con_tit/dot_list/item_group) 재사용
   ============================================ */

/* --- 기본 헬퍼 --- */
h4 {font-size:1.625rem; margin-bottom:10px;}
.con_tit {display:flex;}
.con_tit::before {content:''; background:url(images/icon_con_tit.png) 0 0 no-repeat; background-size:contain; /* border:6px solid #4ec8aa; border-radius:50rem; */ flex:0 0 1.25rem; width:1.25rem; height:1.25rem; margin:0.625rem 8px 0 0;}
.dot_list > li {position:relative; padding-left:12px; text-align:left;}
.dot_list > li::before {content:''; display:block; background:#aaa; border-radius:50px; width:4px; height:4px; position:absolute; top:10px; left:0;}
.dot_list > li + li {margin-top:5px;}
section:not(:first-child) {margin-top:2.5rem;}

/* --- 상단 분과 카드 (base) --- */
.part_info {text-align:center;}
.part_info .title {display:inline-flex; justify-content:center; align-items:center; background:var(--color); border-radius:100px; color:#fff; font-size:1.25rem; padding:0 2.688rem; height:52px;}
.part_info .inner {width:100%; border:6px solid #cad4dc; border-radius:30px; padding:4% 2.5%; margin-top:-30px; position:relative; z-index:-1;}
.part_info .item {display:flex; justify-content:center; flex-wrap:wrap; gap:15px;}
.part_info .item > li {background:#fff; border-radius:20px; font-size:1.125rem; font-weight:600; line-height:1.4; width:calc((100% - 75px) / 6); padding:1.875rem 0.5rem; border:2px solid #dbdbdb;}
.part_info .item > li .text {display:flex; flex-direction:column; justify-content:center; max-width:150px; margin:8.5% auto 0;}
.part_info .item > li .text i {display:block;}
.part_info .item > li .icons {display:inline-flex; align-items:center; justify-content:center; width:52%; max-width:105px; position:relative;}
.part_info .item > li .icons::after {content:''; display:block; padding-bottom:100%;}
.part_info .item > li .icons i {display:flex; align-items:center; justify-content:center; background-position:50% 50%; background-repeat:no-repeat; background-size:contain; position:absolute; width:100%; height:90%;}
.part_info .item > li.item01 .icons i {background-image:url(images/part_icon01.png);}
.part_info .item > li.item02 .icons i {background-image:url(images/part_icon02.png);}
.part_info .item > li.item03 .icons i {background-image:url(images/part_icon03.png);}
.part_info .item > li.item04 .icons i {background-image:url(images/part_icon04.png);}
.part_info .item > li.item05 .icons i {background-image:url(images/part_icon05.png);}
.part_info .item > li.item06 .icons i {background-image:url(images/part_icon06.png);}
.part_info .item > li.item03 > div > span {font-size:1.375rem;}
.part_info .item > li.item04 > div > span {color:#888888; font-size:0.875rem; margin-top:4px;}

/* --- 하단 추가정보: 카드 그리드 (item_group) --- */
.item_group {display:flex; flex-wrap:wrap; gap:7px;}
.item_group > li {flex:1; background:#fff; border:1px solid #cad4dc; border-radius:12px; overflow:hidden;}
.item_group > li .innerbox em {display:flex; justify-content:center; align-items:center; background:#333; font-size:1.125rem; height:2.875rem; text-align:center;}
.item_group > li .innerbox em i {background:rgba(0,0,0,0.08); border-radius:4px; font-size:1.5rem; line-height:1.4; padding:0 7px;}
.item_group > li .innerbox .desc {font-size:1rem; font-weight:400; line-height:1.4; padding:0.875rem 1.125rem;}
.item_group > li .innerbox .desc .dot_list > li + li {margin-top:5px;}
.item_group > li:nth-child(1) .innerbox em {background:#d9f5eb;}
.item_group > li:nth-child(2) .innerbox em {background:#c4f1f5;}
.item_group > li:nth-child(3) .innerbox em {background:#c5deff;}
.item_group > li:nth-child(4) .innerbox em {background:#d3defd;}
.item_group > li:nth-child(5) .innerbox em {background:#e4daff;}
.item_group.policy > li:nth-child(1) .innerbox em {background:#b4eee2;}
.item_group.policy > li:nth-child(2) .innerbox em {background:#07a7c9; color:#fff;}
.item_group.policy > li:nth-child(3) .innerbox em {background:#407bef; color:#fff;}

@media screen and (min-width:1025px) {
/* (분과 카드 데스크톱 기본값 유지) */
}

@media screen and (max-width:1280px) {
.item_group > li {flex:1 0 auto;}
}

@media screen and (max-width:1024px) {
.part_info .inner {padding:2.5rem 1.25rem 1.875rem;}
.part_info .item > li {width:calc((100% - 30px) / 3);}
.con_tit::before {margin-top:0.375rem;}
}

@media screen and (max-width:768px) {
.part_info .item > li {width:calc((100% - 15px) / 2); font-size:1rem;}
.part_info .item > li .icons {max-width:80px;}
.item_group {justify-content:center;}
.item_group > li {flex:none; width:calc((100% - 7px) / 2);}
.item_group > li .innerbox em {font-size:1rem; height:2.875rem;}
}

/* --- 하단 추가정보 커스텀 (본 페이지 확장) --- */
.part_extra {margin-top:3.75rem;}
.part_extra .item_group {margin-top:1.25rem;}
/* item_group 6번째 카드(문화예술콘텐츠) 헤더 색상 */
.part_extra .item_group > li:nth-child(6) .innerbox em {background:#ffe0ef;}
/* 카드 상단 색상바에 분과 넘버 뱃지 */
.part_extra .item_group > li .innerbox em {gap:6px;}
.part_extra .item_group > li .innerbox em b {display:inline-flex; justify-content:center; align-items:center; background:rgba(0,0,0,0.12); border-radius:50rem; width:22px; height:22px; font-size:0.813rem; font-weight:700;}
/* 활동 안내 표 */
.part_table {width:100%; margin-top:1.25rem; border-top:2px solid #555;}
.part_table th, .part_table td {border-bottom:1px solid #ddd; padding:0.875rem 1rem; font-size:1.0625rem; line-height:1.5; text-align:left; vertical-align:top;}
.part_table thead th {background:#f4f5f8; text-align:center; font-weight:700;}
.part_table tbody th {background:#fafbfd; font-weight:600; width:26%; color:var(--color);}
/* 참여 안내 박스 */
.join_box {display:flex; flex-wrap:wrap; gap:1rem; margin-top:1.25rem;}
.join_box > li {flex:1 1 240px; background:#f7f9fc; border:1px solid #e2e7f0; border-radius:14px; padding:1.5rem;}
.join_box > li strong {display:flex; align-items:center; gap:8px; color:var(--color); font-size:1.1875rem; margin-bottom:0.625rem;}
.join_box > li strong i {display:inline-flex; justify-content:center; align-items:center; background:var(--color); color:#fff; border-radius:50rem; width:28px; height:28px; font-size:0.9375rem; font-style:normal;}

@media screen and (max-width:768px) {
	.part_table th, .part_table td {padding:0.75rem; font-size:1rem;}
	.part_table tbody th {width:34%;}
}

/* info_txt (안내문구) */
.info_txt {position:relative; padding-left:23px; margin:1.25rem 0 0; font-size:0.938rem; line-height:20px; color:#666; text-align:left;}
.info_txt::before {content:''; background:url(images/form/icon_info_txt.png) 0 0 no-repeat; background-size:contain; width:18px; height:18px; position:absolute; top:1px; left:0;}
