@charset "utf-8";

:root{
	--main-color: #1b3b86;
	/* 같은 계열(색상 222도 · 채도 66%)로 두고 밝기만 hct.co.kr 의 파랑(#0055a5) 수준으로 올린 값.
	   번호 · 아이콘처럼 작게 찍히는 곳에서 진한 남색은 잘 안 보인다. */
	--main-bright: #244fb2;
	--sub-color:#0045c9;
	--main-color-hover:#1b3b86;
	--area-box-width: 1920px;
	--area-wrap-width: 1775px;
	--area-width: 1320px;
	--area-padding: 30px;
	--header-height:85px;
	--sub-visual-height: 380px;	/* 카이스트 120 · 서울대 241 대비. 안쪽 내용은 글 160 + 메뉴 94 = 254px 고정이라 여백만 줄어든다 */
	--sub-menu-height: 49px;   /* hct.co.kr nav.lnb a 높이 48.8px */
	--full-height: 100vh;
	--transition-custom: all 0.4s ease-in-out;
	--transition-custom2: all 0.8s ease-in-out; /* data-scroll */
	--font-family1: 'Suit', 'Pretendard', 'Noto Sans KR', 'Malgun Gothic', sans-serif;
	--font-family2: "DM Sans", 'Pretendard', 'Noto Sans KR', 'Malgun Gothic', sans-serif;
	/* 숫자 표기용. hct.co.kr 이 번호에 Poppins 를 써서 같은 글꼴로 맞췄다(head.sub.php 에서 함께 불러온다) */
	--font-family3: "Poppins", "DM Sans", 'Pretendard', sans-serif;
	--footer-bg: #111;
	--footer-text: #d2d2d2;
	--footer-muted: #a4a9af;
	--footer-line: #2e2e2e;
}

* {box-sizing: border-box;}

/* Lenis 스무스 스크롤 필수 스타일 (https://lenis.studiofreight.com) */
html.lenis,
html.lenis body{height:auto;}
.lenis.lenis-smooth{scroll-behavior:auto !important;}
.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain;}
.lenis.lenis-stopped{overflow:hidden;}
.lenis.lenis-scrolling iframe{pointer-events:none;}

/* 아이콘은 부모의 굵기를 상속하지 않는다 (제목·strong 안에서 글리프가 뭉개지는 것 방지) */
i,
[class^="ri-"], [class*=" ri-"],
[class^="xi-"], [class*=" xi-"],
[class^="fa-"], [class*=" fa-"]{font-weight:normal;}

#allWrap{position:relative;width:100%;max-width:1980px;margin:0 auto;overflow-x:clip;height:100%;word-break:keep-all;}   /* 화면이 아무리 넓어도 1980px 을 넘지 않고 가운데 선다 */
/* 아래 배경 그림은 바닥에서 250px 띄운다 */
#allWrap.main{background:url("/images/main/main-bottom-bg.png") no-repeat center bottom 250px #f2f2f2;}
#allWrap.main section{position:relative;}

/* ========================================================
 * LAYOUT
======================================================== */
/* ****************** 공통클래스 ********************** */
.area{ max-width:var(--area-width); margin:0px auto;}
.area-wrap{ max-width:var(--area-wrap-width); margin:0px auto; }
.area-box{max-width:var(--area-box-width);margin:0px auto;}
.full-height{height:var(--full-height);}
/* Fullpage Layout */
.fullpage-html{overflow:hidden; height:100%;}
.fullpage-html #wrap{position:static;}
/* br tag */
.m-br{display:none;}
.display-m{display:none;}
/* font */
.font-pre {font-family:'pretendard', "나눔고딕", NanumGothic, "Nanum Gothic","돋움", Dotum, Arial, sans-serif;}
.font-osw {font-family:'pretendard', "나눔고딕", NanumGothic, "Nanum Gothic","돋움", Dotum, Arial, sans-serif;}

/* ****************** HEADER ********************** */
/* Legacy header styles are isolated; navigation is maintained in nav.css. */
@media not all{
#header{position: fixed;height:var(--header-height);top: 0;left: 50%;transform:translateX(-50%);width: 100%;z-index:9999;border-radius: 0;box-sizing:border-box;}
.fullpage-html #header{position:fixed;}
#headerInnerWrap{position:absolute; top:0px; left:0px; width:100%; height:var(--header-height); z-index:9999; transition:var(--transition-custom); transition-property:background-color;}
#headerInner{position:relative;display:flex;align-items:center;justify-content:space-between;height:var(--header-height);margin:0px auto;padding: 0 2.5%;background-color: rgb(255 255 255 / 30%);border-radius: 0;box-sizing:border-box;}
#headerInner:before {
	display: block;
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: inherit;
	backdrop-filter: blur(17px);
	-webkit-backdrop-filter: blur(17px);
	background: rgb(255 255 255 / 40%);
	border:0;
	transition:var(--transition-custom);
}
.sub-wrap #headerInner:after {display: block; position: absolute; left: 50%; top: 0; width: 95%; height: 100%; transform:translateX(-50%); content: ""; border-bottom:1px solid rgb(0,0,0,.1);}
#header.gnb-open #headerInner {background-color:initial;}
#header .logo{position:relative;z-index:100;display:flex;align-items: center;}
#header .logo a{position: relative;}
#header .logo-p{display:inline-block;}
#header .logo-t{margin-left: 25px;padding-left: 25px;display:inline-flex;flex-direction: column;font-family:'Pretendard';gap: 4px;}
#header .logo-t:before{content:"";position:absolute;left:0;top: 50%;height:36px;width:1px;transform: translateY(-50%);background:#e4e4e4;display:block;}
#header .logo-t big{color:#000;font-weight: 700;font-size: 22px;line-height: 1;}
#header .logo-t small{color:#9b9ea4;font-weight:600;letter-spacing: .6px;font-size: 13px;line-height: 1;}
#header .logo svg,
#header .logo img{display:block;transition: var(--transition-custom);}
#header .logo-p img{height: 33px;}
#header .logo-t img{height: 60px;}
#header .logo img.logo-c{display:inline-block;}
#header .logo img.logo-w{display:none;}

.cm-logo-svg{}
.cm-logo-svg .cls-1{fill:#009fe8;}
.cm-logo-svg .cls-2{fill:#036eb7;}
.cm-logo-svg .cls-3{fill:url(#linear-gradient);}
.cm-logo-svg .cls-4{fill:url(#linear-gradient-2);}
.cm-logo-svg .cls-5{/* fill:#211714; */ fill:#fff;}
.cm-logo-svg .cls-6{fill:#2ca6e0;}
.cm-logo-svg .cls-7{/* fill:#231815; */ fill:#fff;}

/* -------- Header :: UTIL BOX -------- */
.header-util-box{position:relative; z-index:100; display:flex; align-items:center;}

/* Header :: 검색버튼 */
.header-search-box{position:relative; float:left; margin-left:10px; z-index:101; }
.header-search-box i{font-size:22px;}
.header-search-open-btn{width:32px; height:32px; color:#333;  border:1px solid #333}
.header-search-inner{
	overflow:hidden; 
	position:absolute; 
	top:0px; right:0; 
	width:200px; 
	height:32px; 
	padding-right:65px; 
	box-sizing:border-box;
	border:1px solid #333;
	background-color:#fff;
	opacity:0;
	visibility:hidden;
	transition:var(--transition-custom);
}	
.header-search-inner .header-search-word{height:30px; width:100%; vertical-align:top; background-color:transparent; border:0; color:#333; font-size:13px; font-weight:300; text-indent:10px;}
.header-search-inner .header-search-word::placeholder{color:#333;}
.header-search-inner .header-search-btn{position:absolute; top:0px; right:32px; width:32px; height:32px;}
.header-search-inner .header-search-btn i{font-size:20px; line-height:32px;}
.header-search-inner .header-search-close-btn{position:absolute; top:0px; right:0px; width:32px; height:32px; background-color:#333; color:#fff; border:1px solid #333; }
.header-search-inner .header-search-close-btn i{color:#fff;}
/* 검색 open */
.header-search-box.open .header-search-inner{
	opacity:1.0;
	visibility:visible; 
	transition:visibility 0.5s, opacity 0.5s;
}
@media all and ( min-width: 801px ){
	.header-search-inner .header-search-inner{
		transform: translateX(10px);
		transition:all 0.2s;
	}
	.header-search-box.open .header-search-inner{
		transform: translateX(0);
	}
}

/* Header :: 언어선택 */
/* 언어선택 디자인 03*/
.header-lang03 {position:relative;z-index:100;margin-right: 3rem;display: inline-flex;gap: 15px;}
.header-lang03 .lang-open-btn {
	/* overflow:hidden; */
	position:relative;
	line-height: 1;
	color: #acacac;
	font-family: "Inter", sans-serif;
	text-align:center;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
	display: inline-block;
	z-index: 12;
}
.header-lang03 .lang-open-btn.on{color:#000;}
.header-lang03 .lang-open-btn:before{content:"";opacity:0;display:inline-block;width:3px;height:3px;background: #1b3b86;border-radius:50%;position:absolute;top:0px;left:50%;transform:translate(-50%, 0%);transition:.2s ease-out;}

.header-lang03 .lang-open-btn:hover:before,
.header-lang03 .lang-open-btn.on:before{opacity:1;top: -6px;}

.header-lang03 .lang-open-btn > span {font-size: 16px;position: relative;z-index: 11;}
.header-lang03 .lang-open-btn i {display:inline-block; position:relative; z-index:11; vertical-align: middle; font-size:2rem; color:#fff;}
.header-lang03.open .lang-open-btn i{color:#fff;}
.header-lang03 .lang-open-btn .arrow{position:absolute; top:0px; right:0px;}
.header-lang03 .lang-open-btn .arrow i{font-size:16px;}
.header-lang03 > ul {overflow:hidden; display:none; position:absolute; top:1.5rem; left:0; z-index:10; width:100%; text-align:center; /* background-color:#3b3b3b; */ background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(0.7rem) brightness(0.6); border-radius:0 0 1.5rem 1.5rem; padding:3rem 0 1rem;}
.header-lang03 > ul > li {/* margin: 1rem 0; */ padding: 0.8rem 0;}
.header-lang03 > ul > li > a{display:block; font-size:1.8rem; line-height: 1.1; color:#fff; }
/* .header-lang03 > ul > li > a:hover{background-color:#e62d3a } */

/* 250428 추가 시작 */
/*.header-lang03.on .lang-open-btn {}*/
.header-lang03 .lang-open-btn:hover {color:#000; transition-delay:1.5s ease;}
/* 250428 추가 끝 */

/* Header :: 사이트맵버튼 */
.sitemap-line-btn{cursor:pointer;width:100px;height: 50px;display:flex;flex-direction:column;justify-content: center;marg;box-sizing: border-box;}
.sitemap-line-btn .line{border-radius:3px;display:block;width:40px;height:3px;background-color: #323232;margin: 2px auto;transition: all .2s ease-in-out;}
.sitemap-line-btn .line:nth-child(2){opacity: 0;}
.sitemap-line-btn:hover .line{margin: 1px auto; width: 40px;}
/* active */
.sitemap-line-btn.active{position:relative; z-index:100000;}
.sitemap-line-btn.active .line{margin: 1px auto; width: 40px;}
.sitemap-line-btn.active .line:nth-child(2){opacity: 0;}
.sitemap-line-btn.active .line:nth-child(1){transform: translateY(5px) rotate(45deg);background: #fff;}
.sitemap-line-btn.active .line:nth-child(3){transform: translateY(-5px) rotate(-45deg);background: #fff;}

#header.sitemap-open #headerInner {background-color: initial; border:0;}
#header.sitemap-open #headerInner:before {opacity: 0;}
#header.sitemap-open .header-lang03 .lang-open-btn {opacity: 0; visibility:hidden;}

/* -------- Header :: GNB(PC) -------- */
.gnb-overlay-bg{position:fixed;top:0;left:0;width:100%;height:100%;visibility:hidden;opacity:0;/* background: rgb(255 255 255 / 50%); */z-index:9997;transition:var(--transition-custom);}	/* gnb overlay BG */
.gnb-overlay-bg.open{visibility:visible; opacity:1.0;}
#gnb{position:absolute; text-align:center; top:0; left:0px; width:100%; height: 100%; z-index:99; /* border:1px solid rgba(255,255,255,0.17); */ box-sizing:border-box; border-radius:46px;}
/* #gnb:before {display: block;
    content: "";
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    border-radius: 46px;
    backdrop-filter: blur(5px);
    z-index: -1;
    position: absolute;
    top: 0;
    left: 0; transition:var(--transition-custom);} */
#gnb > ul{display:inline-block;margin-left: 15%;}
#gnb > ul > li{position:relative; float:left; word-break:keep-all;}
#gnb > ul > li > a{
	position:relative;
	z-index:100;
	display:block;
	line-height:var(--header-height);
	padding: 0 5.5rem;
	text-align:center;
	color: #000;
	font-size: 2.1rem;
	font-weight: 600;
	letter-spacing:-0.025em;
	transition:var(--transition-custom);
}
#gnb > ul > li > a:hover,
#gnb > ul > li > a:focus,
#gnb > ul > li.on > a{/* color:var(--main-color); */}

/* GNB :: 2차 전체메뉴 */
#gnbBg{
	overflow:hidden;
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:0;
	background: rgb(255 255 255 / 95%);
	z-index:98;
	opacity:0;
	transition:height 0.3s ease-in-out, opacity 0.2s ease-in-out;
	backdrop-filter: blur(10px);
	border-radius: 0;
	box-shadow: 0px 20px 20px 0 rgb(0 0 0 / 1%);
}
#gnbBg:after{position:absolute;top:var(--header-height);width:100%;left:0;height:1px;background-color: rgb(0 0 0 / 10%);content:"";}
#gnb.total-menu > ul > li .gnb-2dep{
	position:absolute; 
	top:var(--header-height); 
	left:0px; 
	z-index:99;
	width:100%; 
	text-align:left; 	
	opacity:0;filter:Alpha(opacity=0);
	height:0;
    transition: all 0.2s 0s;
	transition-delay: 0s;
	visibility:hidden;
}
#gnb.total-menu > ul > li .gnb-2dep:before {
	content:"";
	position:absolute;
	left:0;
	top:0px;
	width:0;
	left:50%;
	height:2px;
	background-color: var(--main-color);
	transition:var(--transition-custom);
}
#gnb.total-menu > ul > li:hover .gnb-2dep:before {width:100%; left:0;}
#gnb.total-menu > ul > li .gnb-2dep ul{/* padding:13px 0px; */ padding: 2.8rem 0;}
#gnb.total-menu > ul > li .gnb-2dep ul li{position:relative; margin-top: 0.3rem;}
#gnb.total-menu > ul > li .gnb-2dep ul li a{display:block;padding:7px 15px;color: #000;font-size:1.8rem;letter-spacing:0;line-height:1.3;font-weight: 500;transition:var(--transition-custom);text-align:center;}
#gnb.total-menu > ul > li .gnb-2dep ul li a span {position: relative;}
#gnb.total-menu > ul > li .gnb-2dep ul li a span:after {display: block; content:""; position:absolute; bottom: -0.5rem; left: 50%; transform:translateX(-50%); background: var(--sub-color); height: 2px; width: 0; transition:var(--transition-custom);}
#gnb.total-menu > ul > li .gnb-2dep ul li a:hover{color:var(--sub-color);}
#gnb.total-menu > ul > li .gnb-2dep ul li a:hover span:after {width: 100%;}

/* GNB :: 2차메뉴 Over (높이변경) */
#gnb.open:before {opacity: 0;}
#gnb.open #gnbBg{height: 430px;opacity:1.0;filter:Alpha(opacity=100);}
#gnb.open > ul > li .gnb-2dep{
	height:270px; opacity:1.0;filter:Alpha(opacity=100);
	visibility:visible;
    transition: height 0.5s ease-in-out, opacity 0.5s ease-in-out 0.2s;
}

/* GNB :: 2차 각각메뉴 */
#gnb.each-menu > ul > li .gnb-2dep{
	/* display:none; */
	position:absolute; 
	top:calc(var(--header-height) - 20px); 
	left:0px; 
	z-index:99;
	width:100%; 
	text-align:left; 
	visibility:hidden;
	opacity:0;filter:Alpha(opacity=0);
	transition:all 0.2s cubic-bezier(0.4, 0, 1, 1);
}
#gnb.each-menu > ul > li .gnb-2dep:before{
	content:""; 
	position:absolute; top:0px; left:0px; right:0px; 
	height:0; 
	background-color:var(--main-color); 
	transition:all 0.2s cubic-bezier(0.4, 0, 1, 1);
}
#gnb.each-menu > ul > li .gnb-2dep ul{padding:15px 0px;}
#gnb.each-menu > ul > li .gnb-2dep ul li{position:relative; padding:8px 10px; opacity:0; transition:all 0s 0s; }
#gnb.each-menu > ul > li .gnb-2dep ul li a{display:block; color:#fff; font-size:14px; font-weight:400; text-align:center; line-height:1.4; opacity:0.9;}
#gnb.each-menu > ul > li .gnb-2dep ul li a:hover{opacity:1.0;}
/* over했을때 */
#gnb.each-menu > ul > li .gnb-2dep.open{visibility:visible; opacity:1.0;}
#gnb.each-menu > ul > li .gnb-2dep.open:before{height:100%;}
#gnb > ul > li .gnb-2dep.open ul li{opacity:1.0; transition:var(--transition-custom2);}
#gnb > ul > li .gnb-2dep.open ul li:nth-child(1){transition-delay:0.1s;}
#gnb > ul > li .gnb-2dep.open ul li:nth-child(2){transition-delay:0.2s;}
#gnb > ul > li .gnb-2dep.open ul li:nth-child(3){transition-delay:0.3s;}
#gnb > ul > li .gnb-2dep.open ul li:nth-child(4){transition-delay:0.4s;}
#gnb > ul > li .gnb-2dep.open ul li:nth-child(5){transition-delay:0.5s;}
#gnb > ul > li .gnb-2dep.open ul li:nth-child(6){transition-delay:0.6s;}
#gnb > ul > li .gnb-2dep.open ul li:nth-child(7){transition-delay:0.7s;}
#gnb > ul > li .gnb-2dep.open ul li:nth-child(8){transition-delay:0.8s;}

#header.sitemap-open .logo img.logo-c{display:none;}
#header.sitemap-open .logo img.logo-w{display:inline-block;}
#header.sitemap-open #headerInner:after{border-color:rgb(255 255 255 / 10%);}

/* -------- Header :: GNB(Mobile) -------- */
.nav-open-btn{display: block;background:transparent;}
#gnbM{display:none}

/* 메인 페이지 헤더 */
.main-wrap #headerInner {margin: 0;padding: 0;transition: all 1s;/* overflow:hidden; */border: 0;width: 100%;padding: 0 2.5%;margin: 0 auto;}
.main-wrap #headerInner:before {
	display: block;
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: inherit;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	background: rgb(255 255 255 / 40%);
	border: 0;
}
.main-wrap #headerInner:after {
	display: block;
	position: absolute;
	left: 50%;
	top: 0;
	width: 95%;
	height: 100%;
	transform:translateX(-50%);
	content: "";
	border-bottom:1px solid rgb(0,0,0,.1);
}
.main-wrap #gnb {opacity: 1; transition-delay:0.3s;}

@media all and (max-width:1280px){
	:root{
		--header-height: 80px;
	}
}
@media all and (max-width:800px){
	:root{
		--area-padding: 5vw;
		--sub-visual-height: 320px;
		--sub-menu-height: 46px;
	}
}
@media all and ( max-width: 480px ){
	:root{
		/* --header-height: 60px; */
		/* --sub-menu-height: 45px; */
	}
}
@media all and (max-width:1700px){	/* max-width : (area-box width) + 60px */
	.area-box{padding:0 var(--area-padding);max-width:none;}
}
@media all and (max-width:1560px){ 
	.area-wrap{/* padding:0 var(--area-padding); */max-width:none;}
}
@media all and (max-width:1380px){ 
	.area{padding:0 var(--area-padding); max-width:none;}
	.m-br{display:block;}
	.pc-br{display:none;}
	.display-m{display:block;}
	.display-pc{display:none;}
}

/* ****************** HEADER ********************** */
@media (max-width: 1580px){
	.main-wrap #headerInner{padding:0 4%;}
	#gnb > ul {margin-left: 20%;}
	#gnb > ul > li > a{padding:0 40px;}
	.sitemap-line-btn{width:40px;}
}
@media (max-width: 1430px){
	#header .logo-p img {height: 30px;}
	#header .logo-t{padding-left:0;}
	#header .logo-t:before{display:none;}
	#header .logo-t img {height: 57px;}
}
@media all and ( max-width: 1366px ){
	/* -------- Header :: GNB(PC) -------- */
	#gnb > ul > li > a{font-size:18px; padding:0 40px}
	#gnb > ul > li .gnb-2dep ul li a{font-size:14px; }

}
@media all and ( max-width: 1280px ){
	.fullpage-html #header{position:relative;}
	#header {width: 100%;}
	#headerInnerWrap{position:fixed;z-index:99;left: 0;width: 100%;}
	#headerInner {padding: 0 2rem; width: 100%;}
	/* #header.top-fixed #headerInnerWrap{background-color:#fff; border-bottom:1px solid #eee;} */
	
	/* -------- Header :: UTIL BOX -------- */
	.header-util-box{padding-right:50px;}
	/* Header :: 사이트맵 버튼 */
	.sitemap-line-btn, .sitemap-custom-btn{display:none;}

	/* -------- Header :: GNB(Pc) -------- */
	#gnb{display:none;}
	.gnb-overlay-bg{display:none}

	/* -------- Header :: GNB(Mobile/기본스타일) -------- */
	.gnb-overlay-bg-m{display:none; position:fixed; top:-6.8rem; left:0; width:100%; height: 200vh; background:rgba(0,0,0,0.5); z-index:9998;}	
	#gnbM{ 
		display:block; 
		position:fixed; 
		top:-6.8rem; 
		right:-82%;
		width:80%; 
		height:200vh;  
		max-width:320px; 
		background-color:#fff; 
		z-index:9999; 
		transition:var(--transition-custom);   
		visibility:hidden;
	}
	#gnbM.open{right:0px; visibility:visible;}
	/* GNB Mobile :: 레이아웃 */
	.gnb-navigation-wrapper{position:relative; height:100%; box-sizing:border-box; padding-top:var(--header-height); overflow-y:auto;}
	.header-util-menu-box {background-color: #fff; padding-top: 6.8rem;}
	.header-util-menu-box + .gnb-navigation-wrapper{padding-top:0; height:calc(100% - var(--header-height)); background-color: #fff;}
	
	/* GNB Mobile :: 메뉴영역 :: 1차 */
	#navigation > li{border-bottom:1px solid #e7e7e7;}
	#navigation > li:first-child{border-top:1px solid #e7e7e7}
	#navigation > li > a {position:relative;display:block;padding:15px var(--area-padding);color:#333;font-size: 18px;font-weight: bold;}
	#navigation > li.active > a{color:var(--main-color);}
	#navigation > li.has-2dep > a:before{font-family: 'remixicon' !important;content: "\ea13";position:absolute;top:50%;font-weight: normal;right:var(--area-padding);font-size:1.3em;transform:translateY(-50%);}
	#navigation > li.has-2dep.active > a:before{content: "\f1af";}
	/* GNB Mobile ::  메뉴영역 :: 2차 */
	#navigation > li .gnb-2dep{display:none; padding:15px 0; background-color:#f2f2f2; }
	#navigation > li .gnb-2dep > ul > li{height:auto !important;}
	#navigation > li .gnb-2dep > ul > li > a{display:block;color:#888;font-size: 16px;font-weight: 500;padding: 10px var(--area-padding);}
	#navigation > li .gnb-2dep > ul > li.on > a{color:#000; font-weight:500;}
	/* GNB Mobile :: 메뉴영역 ::  3차 */
	#navigation > li .gnb-2dep > ul > li > .gnb-3dep{display:none; padding:10px; background-color:#aaa; margin:0 10px}
	#navigation > li .gnb-2dep > ul > li > .gnb-3dep > li > a{display:block; padding:8px 0; font-size:13px; color:#fff;}
	#navigation > li .gnb-2dep > ul > li > .gnb-3dep > li > a:before{display:inline-block; content:"-"; margin-right:5px;}
	
	/* -------- GNB Mobile :: 스타일2 (Full Style) -------- */
	#gnbM.gnb-style-full{top:-100%;right:0;width:100%;height:100%;max-width:none;}
	#gnbM.gnb-style-full.open{top:0px;}
	.gnb-style-full .gnb-navigation-wrapper{height:auto; width:100%; position:absolute; top:0px; bottom:0px; left:0; padding-top:0;}
	.gnb-style-full .header-util-menu-box + .gnb-navigation-wrapper{top:var(--header-height); }
	.gnb-style-full-member .gnb-navigation-wrapper{bottom:var(--header-height);}
	.gnb-style-full .gnb-navigation-inner{display:table; width:100%; height:100%;}
	.gnb-style-full #navigation{
		display:table-cell;
		vertical-align:middle;
	}
	.gnb-style-full #navigation > li{
		text-align:center; 
		border:0; 
		opacity:0;
		transform:translateY(-20px);
		transition:all 0s 0s;
	}
	.gnb-style-full #navigation > li:first-child {border:0}
	.gnb-style-full #navigation > li > a {}
	.gnb-style-full #navigation > li .gnb-icon i{display:none;}
	.gnb-style-full.open #navigation > li{
		opacity:1.0;
		transform:translateY(0px); 
		transition:transform 0.8s, opacity 0.8s;
	}
	.gnb-style-full.open #navigation > li:nth-child(1){transition-delay:0.3s;}
	.gnb-style-full.open #navigation > li:nth-child(2){transition-delay:0.4s;}
	.gnb-style-full.open #navigation > li:nth-child(3){transition-delay:0.6s;}
	.gnb-style-full.open #navigation > li:nth-child(4){transition-delay:0.7s;}
	.gnb-style-full.open #navigation > li:nth-child(5){transition-delay:0.9s;}
	.gnb-style-full.open #navigation > li:nth-child(6){transition-delay:0.9s;}
	
	/* -------- GNB Mobile :: 언어선택 및 회원메뉴 -------- */
	/* 언어선택 */
	.header-util-menu-box .lang-select{height:var(--header-height); display:flex; align-items:center; padding:0 var(--area-padding); }
	.header-util-menu-box .lang-select li{float:left; border:1px solid #e5e5e5; margin-left:-1px}
	.header-util-menu-box .lang-select li:first-child{margin-left:0;}
	.header-util-menu-box .lang-select li > a{position:relative; display:block; min-width:20px; text-align:center ; height:40px; line-height:40px; padding:0 10px; color:#555; font-size:12px; font-weight:500;}	
	.header-util-menu-box .lang-select li.cur{border-color:var(--main-color); position:relative; z-index:1;}
	.header-util-menu-box .lang-select li.cur a{color:var(--main-color); z-index:1;}

	/* -------- Header :: 네비게이션 오픈 버튼 -------- */
	.nav-open-btn{
		display:block;
		position:fixed;
		top: 15px;
		/* transform:translateY(-50%); */
		right: 4%;
		z-index:10000;
		transition:var(--transition-custom);
		cursor:pointer;
		width: 40px;
		height: 50px;
		display:flex;
		flex-direction:column;
		justify-content: center;
		marg;
		box-sizing: border-box;
		background: none;
		border: 0;
	}	
	.nav-open-btn .line{border-radius:3px;display:block;width:40px;height:3px;background-color: #323232;margin: 2px auto;transition: all .2s ease-in-out;}
	.nav-open-btn .line:nth-child(2){opacity: 0;}
	.nav-open-btn:hover .line{margin: 1px auto; width: 40px;}
	/* active */
	.nav-open-btn.active{position: fixed;z-index:100000;}
	.nav-open-btn.active .line{/* margin: 1px auto; */width: 30px;}
	.nav-open-btn.active .line:nth-child(2){opacity: 0;}
	.nav-open-btn.active .line:nth-child(1){transform: translateY(6px) rotate(45deg);}
	.nav-open-btn.active .line:nth-child(3){transform: translateY(-5px) rotate(-45deg);}

	.header-lang03 {display:none;}
/*
	.nav-open-btn.active .line:nth-child(2), .nav-open-btn.active .line:nth-child(4){opacity: 0;}
	.nav-open-btn.active .line:nth-child(1){
		  transform: translateY(7px) rotate(45deg);
	}
	.nav-open-btn.active .line:nth-child(3){
		  transform: translateY(-7px) rotate(-45deg);
	}
	
	#header.top-fixed .nav-open-btn .line{background-color:#333}

	
*/
}
@media all and ( max-width: 800px ){
	#header .logo{gap:10px;}
	#header .logo a{/* height: 40px; */}
	#header .logo-p{width:134px;/* display:none; */}
	#header .logo-p img{max-width:100%;height: auto;}
	#header .logo-t{margin-left:0; width:120px;}
	#header .logo-t img{max-width:100%;height: auto;}
	
	/* Header :: 검색버튼 */
	#header {/* top: 2.6rem; */}
	.header-search-box{margin-left:5px;}
	.header-search-inner{
		position:fixed; 
		left:0; 
		top:var(--header-height); 
		height:38px; 
		width:100%;
		border-width:3px;
		padding-right:35px;
	}
	.header-search-inner .header-search-btn{right:40px;}
	.header-search-inner .header-search-close-btn{height:100%; width:38px; border-radius:0;}

	/* Header :: 언어선택 및 회원메뉴 */
	/* 언어선택 */
	.header-util-menu-box .lang-select li > a{min-width: 15px; height:35px; line-height:35px}

	/* -------- Header :: 네비게이션 오픈 버튼 -------- */
	.nav-open-btn {/* right: calc(var(--area-padding) + 10px); *//* width: 50px; height: 50px; */width: 30px;top: 12px;}
	.nav-open-btn .line,
	.nav-open-btn:hover .line{width:30px;margin: 4px auto;}
	.nav-open-btn .line:nth-child(2){display:none;}
	.nav-open-btn.active .line:nth-child(1){
    /* transform: translateY(1px) rotate(45deg); */
}
	
}
@media all and ( min-width: 481px ) and ( max-width: 1280px ) {
	/* .nav-open-btn.active{right:20px;} */
}
@media all and ( max-width: 480px ){
	/* -------- Header :: GNB(Mobile/기본스타일) -------- */
	#gnbM {max-width: 280px}
	
	/* #header .logo img{height:48px;} */

	/* -------- Header :: UTIL BOX -------- */
	.header-util-box{padding-right:40px;}

	/* Header :: 언어선택 */
	.header-lang{width:60px; margin-left:5px}
	.header-lang strong{display:none;}
	.header-lang > ul{border-color:#ccc;}
	.header-lang > ul > li > a{padding:0; text-align:center;}
	/* Header :: 사이트맵, 네비게이션 버튼 */
	/* .nav-open-btn{top:15px; margin-top:0;} */
	.nav-open-btn .line{width: 30px;/* height:2px; */}
	.nav-open-btn.active .line:nth-child(1){
		  /* transform: translateY(6px) rotate(45deg); */
	}
	.nav-open-btn.active .line:nth-child(3){
		  transform: translateY(-6px) rotate(-45deg);
	}
	/* Header :: GNB(Mobile) */
	#navigation > li > a{font-size: 17px;}
	#navigation > li .gnb-2dep > ul > li > a{font-size: 16px;}
}
@media all and ( max-width: 340px ){
	#header .logo{gap:5px;flex-direction: column;align-items: flex-start;}
}

}

/* ****************** 메인 비주얼 ********************** */
.mainVisual{position:relative;height: calc(604px - 85px);margin: 85px 16px 0;overflow:hidden;border-radius:30px;background:#000;}
.mainVisualSlide{position:absolute;left:0;top:0;width:100%;height:100%;}
.mainVisualItem{position:absolute;left:0;top:0;width:100%;height:100%;opacity:0;visibility:hidden;transform:scale(1.08);transition:opacity 1.5s ease,transform 6s ease,visibility 0s linear 1.5s;will-change:opacity,transform;}
.mainVisualItem.active{z-index:1;opacity:1;visibility:visible;transform:scale(1);transition:opacity 1.5s ease,transform 6s ease,visibility 0s;}
.mainVisualItem img{display:block;width:100%;height:100%;object-fit:cover;}
.mainVisualText{position:absolute;left: 50%;/* top:225px; */width: min(calc(100% - 160px),1730px);transform: translateX(-50%);height: 100%;display: flex;z-index:2;overflow:hidden;color:#fff;justify-content: center;flex-direction: column;}
.mainVisualUniv{margin:0 0 18px;color:#fff;font-family:"DM Sans",sans-serif;text-transform:uppercase;font-size:27px;font-weight:700;line-height:1.2;letter-spacing:1px;opacity:0;filter:blur(10px);clip-path:inset(0 100% 0 0);animation:visualTextReveal 1.1s cubic-bezier(.22,1,.36,1) .25s forwards;}
.mainVisualText h2{margin:0;color:#fff;font-family:"DM Sans",sans-serif;font-size:87px;font-weight:700;line-height:1.18;letter-spacing:1px;opacity:0;filter:blur(14px);clip-path:inset(0 100% 0 0);animation:visualTitleReveal 1.35s cubic-bezier(.16,1,.3,1) .45s forwards;}
.mainVisualText h2 strong{font-weight:500;}
.mainVisualKeyword{position:absolute;left:50%;right:auto;bottom:52px;z-index:2;width: min(calc(100% - 160px),1730px);display:grid;grid-template-columns:repeat(3,1fr);align-items:center;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.3);overflow:hidden;color:#fff;font-size:17px;font-weight:800;line-height:1;text-transform:uppercase;transform:translateX(-50%);}
.mainVisualKeyword span{display:block;color:#fff;font-family:"DM Sans",sans-serif;font-weight:600;letter-spacing:0;white-space:nowrap;opacity:1;filter:blur(0);transform:translateX(0);transition:opacity .45s ease,filter .45s ease,transform .65s cubic-bezier(.22,1,.36,1);will-change:opacity,filter,transform;}
.mainVisualKeyword span:nth-child(1){text-align:left;}
.mainVisualKeyword span:nth-child(2){text-align:center;}
.mainVisualKeyword span:nth-child(3){text-align:right;}
.mainVisualKeyword.keyword-out span{opacity:0;filter:blur(7px);transform:translateX(45px);}
.mainVisualKeyword.keyword-ready span{opacity:0;filter:blur(7px);transform:translateX(-45px);transition:none;}
.mainVisualKeyword.keyword-in span{opacity:1;filter:blur(0);transform:translateX(0);}

@keyframes visualTitleReveal{
	0%{opacity:0;filter:blur(14px);clip-path:inset(0 100% 0 0);letter-spacing:8px;}
	45%{opacity:.85;filter:blur(5px);clip-path:inset(0 0 0 0);}
	100%{opacity:1;filter:blur(0);clip-path:inset(0 0 0 0);letter-spacing:1px;}
}
@keyframes visualTextReveal{
	0%{opacity:0;filter:blur(10px);clip-path:inset(0 100% 0 0);letter-spacing:5px;}
	50%{opacity:.85;filter:blur(4px);clip-path:inset(0 0 0 0);}
	100%{opacity:1;filter:blur(0);clip-path:inset(0 0 0 0);letter-spacing:1px;}
}

@media (max-width:767px){
	.mainVisual{height:500px;margin:70px 8px 8px;border-radius:20px;}
	.mainVisualText{left:25px;right:25px;top:180px;}
	.mainVisualUniv{margin-bottom:12px;font-size:18px;}
	.mainVisualText h2{font-size:40px;line-height:1.1;}
	.mainVisualKeyword{left:50%;right:auto;bottom:25px;width:calc(100% - 50px);grid-template-columns:1fr;gap:10px;transform:translateX(-50%);}
	.mainVisualKeyword span:nth-child(1),.mainVisualKeyword span:nth-child(2),.mainVisualKeyword span:nth-child(3){text-align:left;}
}
@media (prefers-reduced-motion:reduce){
	.mainVisualItem{transition:none;transform:none;}
	.mainVisualUniv,.mainVisualText h2{animation:none;opacity:1;filter:none;clip-path:none;}
	.mainVisualKeyword span,.mainVisualKeyword.keyword-out span,.mainVisualKeyword.keyword-in span{transition:none;opacity:1;filter:none;transform:none;}
}


/* ****************** 보드존 ********************** */
/* 바탕색을 빼고 그림만 깔아 위쪽(#allWrap.main) 배경이 가려지지 않게 한다 */
.news-section{position:relative;overflow:hidden;padding:120px 60px 100px;background:url("/images/main/main-right-bg.png") right top -394px / auto auto no-repeat;}
.news-inner{position:relative;z-index:2;width:100%;max-width:1725px;margin:0 auto;}
.highlight-head{display:flex;align-items:flex-end;gap:56px;padding-bottom:42px;border-bottom:1px solid rgba(0,0,0,.13);}
.highlight-head h2{color:#111;font-family:"DM Sans",sans-serif;font-size: 80px;font-weight:700;line-height:1;text-transform:uppercase;}
.highlight-description{color:#222;font-size: 20px;font-weight: 500;line-height: 1.5;letter-spacing: -.5px;}
.highlight-toolbar{display:flex;align-items:center;justify-content:space-between;margin:78px 0 26px;}
.highlight-tabs{display:flex;align-items:center;gap:7px;margin:0;padding:0;list-style:none;}
.highlight-tabs a{display:flex;align-items:center;justify-content:center;padding: 10px 17px;border-radius:8px;background:#fff;color:#555;font-family:var(--font-family2);font-size: 17px;line-height: 1;letter-spacing: -.5px;font-weight:600;text-decoration:none;text-transform:uppercase;transition:background .25s ease,color .25s ease;}
.highlight-tabs .active a{background:#050505;color:#fff;}
.highlight-control{display:flex;align-items:center;gap:8px;}
.highlight-pagination{display:flex;align-items:center;gap: 10px;margin-right:20px;font-family:"DM Sans",sans-serif;font-size: 16px;font-weight:600;}
.highlight-pagination-current{color:#0051df;}
.highlight-pagination-line{position:relative;display:block;width:39px;height:2px;overflow:hidden;background:#c9c9c9;}
.highlight-pagination-line::before{position:absolute;left:0;top:0;width:var(--highlight-progress,20%);height:100%;content:"";background:#111;transition:width .45s ease;}
.highlight-pagination-total{color:#555;}
.highlight-control button{width:43px;height:43px;display:flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:50%;background: rgb(0 0 0 / 8%);color:#333;cursor:pointer;transition:background .25s ease,color .25s ease,transform .25s ease;}
.highlight-control button i{font-size:24px;font-weight:400;line-height:1;}
.highlight-control button:hover{background:#fff;color:#0051df;transform:translateY(-2px);}
.highlight-more{width:43px;height:43px;display:flex;align-items:center;justify-content:center;margin-left:2px;border-radius:50%;background:#fff;color:#222;font-size:0;text-decoration:none;transition:background .25s ease,color .25s ease,transform .25s ease;}
.highlight-more i{font-size:24px;font-weight:400;line-height:1;}
.highlight-more:hover{background:#0051df;color:#fff;transform:translateY(-2px);}

/* ****************** 최신글 카드 ********************** */
.news-section .highlight-tab-content{display:none!important;}
.news-section .highlight-tab-content.active{display:block!important;}
.news-section .highlight-slider{position:relative;width:100%;overflow:hidden!important;margin:0;padding:0;box-sizing:border-box;}
.news-section .highlight-slider .swiper-wrapper{display:flex!important;flex-wrap:nowrap!important;align-items:stretch!important;}
.news-section .highlight-slider .mhighlight-card{height:auto;overflow:hidden;flex-shrink:0;border-radius:16px;background:#fff;}
.mhighlight-card>a{height:100%;display:flex;flex-direction:column;color:inherit;text-decoration:none;}
.mhighlight-image{position:relative;overflow:hidden;width:100%;aspect-ratio:418 / 235;background:#555;}
.mhighlight-image-bg{position:absolute;left:-20px;top:-20px;width:calc(100% + 40px);height:calc(100% + 40px);object-fit:cover;filter:blur(15px) brightness(.7);transform:scale(1.08);}
.mhighlight-image-main{position:absolute;left:50%;top:50%;z-index:2;display:block;width:100%;height:auto;max-width:none;transform:translate(-50%,-50%);transition:transform .6s cubic-bezier(.22,1,.36,1);}
.mhighlight-content{min-height:194px;display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:25px 26px 24px;box-sizing:border-box;}
.mhighlight-badge{display:inline-flex;align-items:center;justify-content:center;height:27px;margin:0 0 17px;padding:0 12px;border-radius:6px;color:#fff;font-family:var(--font-family2);font-size: 16px;font-weight: 600;line-height:1;font-style:normal;}
.mhighlight-badge.highlight{background:#0752d6;}
.mhighlight-badge.event{background:#6492e9;}
.mhighlight-subject{display:-webkit-box;overflow:hidden;width:100%;margin:0;color:#171717;font-family:var(--font-family1);font-size:20px;font-weight:600;line-height:1.5;letter-spacing:-.7px;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
.mhighlight-date{display:block;margin-top:auto;padding-top:18px;color:#999;font-family:"DM Sans",sans-serif;font-size:14px;font-weight:400;line-height:1;}
.mhighlight-card:hover .mhighlight-image-main{transform:translate(-50%,-50%) scale(1.03);}
.mhighlight-card:hover .mhighlight-subject{color:#0752d6;}
.highlight-empty{display:flex;align-items:center;justify-content:center;min-height:260px;border-radius:16px;background:#fff;color:#777;font-family:var(--font-family1);font-size:18px;}

/* ******************  공지사항 세미나 연구성과 ********************** */
.board-zone{display:grid;grid-template-columns:minmax(0,2fr) minmax(350px,1fr);gap:70px;margin-top:105px;align-items:stretch;}
.board-zone-left{min-width:0;display:flex;flex-direction:column;gap:42px;}
.notice-board{overflow:hidden;border-radius:18px;background: rgba(233,233,234,1.27);}
.board-head{height: 103px;display:flex;align-items: flex-end;padding: 0 38px 25px 38px;border-bottom:1px solid rgba(0,0,0,.1);}
.board-head h3,.seminar-head h3{margin:0;color:#111;font-family:var(--font-family2);font-size:30px;font-weight:700;line-height:1;}
.notice-head{gap:36px;}
.notice-tabs{display:flex;align-items:center;gap:6px;margin:0;padding:0;list-style:none;}
.notice-tabs a{display:flex;align-items:center;justify-content:center;height:40px;padding:0 18px;border-radius:8px;background:#fff;color:#666;font-size:17px;font-weight:600;letter-spacing:-.4px;text-decoration:none;transition:background .2s ease,color .2s ease;}
.notice-tabs .active a{background:#050505;color:#fff;}
.board-more{flex:none;width:43px;height:43px;margin-left:auto;display:flex;align-items:center;justify-content:center;border-radius:50%;background: #fff;color:#333;text-decoration:none;transition:background .25s ease,color .25s ease,transform .25s ease;}
.board-more i{font-size:25px;line-height:1;}
.board-more:hover{background:#0752d6;color:#fff;transform:rotate(90deg);}
/* 연구성과 카드는 바탕이 흰색이라 흰 버튼이 묻힌다. 이쪽만 회색으로 */
.research-head .board-more{background:#f2f2f2;}
.notice-content{display:none;padding:40px;}
.notice-content.active{display:block;}
.notice-content .notice-latest{display:grid;grid-template-columns:370px minmax(0,1fr);gap:52px;}
.notice-content .notice-feature{min-height:270px;padding:30px;border-radius:12px;background:#fff;box-sizing:border-box;}
.notice-content .notice-list{display:flex;flex-direction:column;gap:7px;}
.notice-content .notice-item{min-height:72px;display:flex;align-items:center;gap:20px;padding:0 24px;border-radius:10px;background:rgba(255,255,255,.55);color:#222;text-decoration:none;transition:background .2s ease,color .2s ease;}
.notice-content .notice-item:hover{background:#fff;color:#0752d6;}
.notice-content .notice-badge{flex:none;padding: 8px 10px;border-radius:6px;background:#edf4ff;color:#2867d5;letter-spacing: -.5px;font-size: 14px;font-style: normal;font-weight:700;line-height:1;}
.notice-content .notice-subject{min-width:0;overflow:hidden;flex:1;font-size: 18px;font-weight:600;letter-spacing:-.4px;text-overflow:ellipsis;white-space:nowrap;}
.notice-content .notice-date{flex:none;color: #999;font-family:"DM Sans",sans-serif;font-size: 15px;}
.seminar-board{min-width:0;}
.seminar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;}
.seminar-control{display:flex;align-items:center;gap:8px;}
.seminar-pagination{display:flex;align-items:center;gap: 10px;margin-right:20px;font-family:"DM Sans",sans-serif;font-size: 16px;font-weight:600;}
.seminar-pagination-current{color:#0752d6;}
.seminar-pagination-line{position:relative;display:block;width:39px;height:2px;overflow:hidden;background:#c9c9c9;}
.seminar-pagination-line::before{position:absolute;left:0;top:0;width:var(--seminar-progress,20%);height:100%;content:"";background:#111;transition:width .45s ease;}
.seminar-pagination-total{color:#666;}
.seminar-control button,.seminar-more{width:43px;height:43px;display:flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,.08);color:#333;cursor:pointer;text-decoration:none;transition:background .25s ease,color .25s ease,transform .25s ease;}
.seminar-control button i,.seminar-more i{font-size:23px;line-height:1;}
.seminar-more{background:#fff;}
.seminar-control button:hover,.seminar-more:hover{background:#0752d6;color:#fff;transform:translateY(-2px);}
.seminar-slider{overflow:hidden;}
.seminar-slider .swiper-wrapper{display:flex;align-items:stretch;}
/* 카드 : 검정 40% + 블러, 글씨 흰색. 마우스를 올리면 흰 카드로 켜지듯 바뀐다.
   - 바탕 · 글자 · 움직임을 같은 시간(.25s) · 같은 가속도로 묶어 한 덩어리로 켜지게 한다
     (전에는 바탕 .3s / 글자 .3s 가 따로 돌아 글자가 한 박자 늦게 따라왔다)
   - 롤오버에서는 블러를 끈다. 불투명한 흰 카드에는 쓸모가 없는데다,
     블러 레이어가 둥근 모서리를 물고 있어 모서리가 지저분해 보였다
   - translateZ(0) 로 제 레이어를 잡아 두면 움직이는 동안 모서리가 깨지지 않는다
   - 그림자는 쓰지 않는다. 슬라이더가 overflow:hidden 이라 좌우 끝에서 잘려 보인다 */
.seminar-card{
	height:auto;min-height:175px;overflow:hidden;flex-shrink:0;border-radius:14px;isolation:isolate;
	background-color:rgba(0,0,0,.4);
	-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
	transform:translateZ(0);will-change:transform,background-color;
	transition:background-color .25s cubic-bezier(.4,0,.2,1),
	           transform .25s cubic-bezier(.4,0,.2,1),
	           -webkit-backdrop-filter .25s cubic-bezier(.4,0,.2,1),
	           backdrop-filter .25s cubic-bezier(.4,0,.2,1);
}
.seminar-card:hover{background-color:#fff;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);transform:translate3d(0,-4px,0);}
.seminar-card>a{height:100%;display:flex;flex-direction:column;padding:30px;color:#fff;text-decoration:none;box-sizing:border-box;transition:color .25s cubic-bezier(.4,0,.2,1);}
.seminar-card:hover>a{color:#222;}
@media (prefers-reduced-motion:reduce){
	.seminar-card{transition:background-color .2s ease,color .2s ease;}
	.seminar-card:hover{transform:none;}
}
.seminar-title{display:-webkit-box;overflow:hidden;margin:0 0 26px;font-size:20px;letter-spacing:-.5px;font-weight:600;line-height:1.45;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
.seminar-info{display:flex;align-items:center;gap:9px;margin-top:auto;font-size:16px;opacity:.9;}
.seminar-info i{font-size:18px;}
.research-board{position:relative;display:flex;flex-direction:column;overflow:hidden;border-radius:18px;background:#fff;}
/* 목록이 뚝 잘려 보이지 않게 아래쪽을 흰색으로 흐린다. 스크롤바는 가리지 않도록 오른쪽을 조금 비운다 */
.research-board::after{content:"";position:absolute;left:0;right:44px;bottom:0;z-index:2;height:96px;background:linear-gradient(to bottom,rgba(255,255,255,0) 0%,rgba(255,255,255,.72) 42%,#fff 78%);pointer-events:none;}
.research-head{flex:none;padding: 0 38px 25px 38px;}
.research-list{flex:1 1 0;min-height:260px;margin:28px 44px 34px 32px;padding:0 12px 0 0;overflow-y:auto;overscroll-behavior:contain;box-sizing:border-box;}
.research-list::-webkit-scrollbar{width:4px;}
/* 위아래 화살표(스크롤 버튼)는 없앤다 */
.research-list::-webkit-scrollbar-button{display:none;width:0;height:0;}
.research-list::-webkit-scrollbar-corner{background:transparent;}
.research-list::-webkit-scrollbar-track{background:#e6e6e6;border-radius:4px;}
.research-list::-webkit-scrollbar-thumb{background:#0752d6;border-radius:4px;}
/* 파이어폭스는 아래 표준 속성만 알아듣는다. 크롬에 이 두 줄을 주면
   위의 ::-webkit-scrollbar 규칙을 통째로 무시해 버려(화살표가 다시 생긴다)
   파이어폭스에서만 켜지게 감싼다 */
@supports (-moz-appearance:none){
	.research-list{scrollbar-width:thin;scrollbar-color:#0752d6 #e6e6e6;}
}
.research-item{display:grid;grid-template-columns:180px minmax(0,1fr);gap:25px;padding:10px 0;color:#222;text-decoration:none;}
.research-thumb{overflow:hidden;height: 120px;border-radius: 10px;background:#eee;border: 1px solid #f0f0f0;}
.research-thumb img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .5s ease;}
.research-text{min-width:0;display:flex;flex-direction:column;align-items:flex-start;padding:5px 0;}
.research-badge{font-style:normal;margin-bottom:10px;padding: 7px 9px;border-radius: 6px;background:#edf4ff;color:#2867d5;font-size: 13px;font-weight:700;line-height:1;}
.research-subject{display:-webkit-box;overflow:hidden;margin:0;color:#222;font-size: 19px;font-weight: 700;line-height:1.4;letter-spacing: -.5px;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
.research-date{margin-top:auto;color:#aaa;font-family:"DM Sans",sans-serif;font-size:14px;margin-top: 10px;}
.research-item:hover .research-thumb img{transform:scale(1.06);}
.research-item:hover .research-subject{color:#0752d6;}
.board-empty{min-height:220px;display:flex;align-items:center;justify-content:center;color:#888;font-size:15px;}

@media (max-width:1200px){
	.board-zone{grid-template-columns:minmax(0,1.6fr) minmax(320px,1fr);gap:28px;}
	.notice-content .notice-latest{grid-template-columns:300px minmax(0,1fr);gap:28px;}
	.board-head{padding:0 28px;}
	.notice-content{padding:28px;}
	.research-list{margin:20px 28px 24px 24px;padding:0 10px 0 0;}
	.research-item{grid-template-columns:150px minmax(0,1fr);gap:20px;}
	.research-thumb{height:92px;}
}
@media (max-width:900px){
	.board-zone{grid-template-columns:1fr;margin-top:70px;}
	.research-list{flex:none;height:540px;min-height:0;}
	.notice-content .notice-latest{grid-template-columns:1fr;}
	.notice-content .notice-feature{min-height:220px;}
}
@media (max-width:560px){
	.board-zone{margin-top:55px;gap:42px;}
	.board-head{height:auto;min-height:84px;padding:20px;flex-wrap:wrap;}
	.board-head h3,.seminar-head h3{font-size:24px;}
	.notice-head{gap:18px;}
	.notice-tabs{order:3;width:100%;overflow-x:auto;}
	.notice-tabs a{white-space:nowrap;}
	.notice-content{padding:20px;}
	.notice-content .notice-item{padding:0 14px;gap:10px;}
	.notice-content .notice-date{display:none;}
	.seminar-head{align-items:flex-end;}
	.seminar-pagination{display:flex;gap:10px;margin-right:4px;}
	.seminar-pagination-line{width:39px;}
	.seminar-control button,.seminar-more{width:36px;height:36px;}
	.research-head{padding:20px;}
	.research-list{margin:16px 22px 20px 20px;padding:0 8px 0 0;}
	.research-item{grid-template-columns:120px minmax(0,1fr);gap:16px;padding:9px 0;}
	.research-thumb{height:74px;border-radius:10px;}
	.research-subject{font-size:16px;}
}

@media (max-width:900px){
	.news-section .highlight-slider .mhighlight-card{border-radius:14px;}
	.mhighlight-content{min-height:180px;padding:22px;}
	.mhighlight-subject{font-size:18px;}
}
@media (max-width:560px){
	.highlight-pagination{gap:10px;margin-right:4px;}
	.highlight-pagination-line{width:39px;}
	.mhighlight-content{min-height:175px;padding:20px;}
	.mhighlight-badge{height:25px;margin-bottom:14px;padding:0 10px;font-size:12px;}
	.mhighlight-subject{font-size:17px;}
	.mhighlight-date{padding-top:15px;font-size:13px;}
}

/* ******************  하단 ********************** */
footer{position:relative;padding: 16px;}

.department-footer{width:100%;overflow:visible;border-radius:30px;background:var(--footer-bg);}   /* hidden 이면 위로 열리는 패밀리사이트 목록이 잘린다 (둥근 모서리는 overflow 없이도 된다) */
.department-footer__inner{width:min(calc(100% - 160px),1730px);margin:0 auto;padding:64px 0 36px;}
.department-footer__top{min-height:230px;display:flex;align-items:flex-start;justify-content:space-between;gap:70px;}
.department-footer__brand,.university-logo,.department-footer__contact,.contact-group,.footer-links{display:flex;align-items:center;}
.department-footer__brand{min-height:52px;gap: 10px;}
.ft-logo{display:flex;align-items:center;}
.university-logo{gap:8px;color:#fff;}
.university-logo img{display:block;width:143px;height:43px;object-fit:contain;filter:brightness(0) invert(1);}

footer .adm-btn{position: relative; height: 29px;}
footer .adm-btn a{background: transparent;color: #fff;border-radius: 20px;height: 30px;padding: 1px 15px 0 13px;line-height: 1;font-size: 13px;font-weight: 500;letter-spacing: -.5px;gap: 3px;display:flex;justify-content: center;border: 1px solid #555555;font-family: var(--font-family1);align-items: center;margin-bottom: -7px;transition: .3s;}
footer .adm-btn a:hover{background: var(--main-color-hover); border-color:var(--main-color-hover); color:#fff;}

.department-footer__divider{width:1px;height: 26px;margin:0 17px;background:#555;}
.department-footer__name{color:#fff;font-size: 28px;letter-spacing:-.04em;}
.department-footer__address{margin-top: 35px;color:#d8d8d8;font-size: 19px;font-style:normal;line-height:1.6;}
.department-footer__contact{flex-wrap:wrap;gap: 10px 25px;margin-top:17px;font-size: 16px;}
.contact-title{color:var(--footer-muted);font-weight:600;}
.contact-group{gap:10px;color: #d8d8d8;}
.contact-group b{padding: 4px 8px;border-radius:6px;background:#4b4b4b;color:#ddd;font-weight: 500;font-size: 12px;}
.department-footer__utility{min-width:430px;}
.footer-links{justify-content:flex-end;gap:42px;color: #fff;font-size: 18px;font-weight:600;}
.footer-links a{transition:color .2s ease;}
.footer-links a:hover,.footer-links a:focus-visible{color:#fff;}
.family-site{position:relative;width:270px;margin:42px 0 0 auto;}
.family-site__button{width:100%;height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;border:1px solid #3a3a3a;border-radius:13px;background:transparent;color:#fff;font-size: 18px;font-family: "DM Sans", sans-serif;font-weight:700;cursor:pointer;}
.family-site__plus{position:relative;width:16px;height:16px;}
.family-site__plus::before,.family-site__plus::after{position:absolute;top:50%;left:50%;content:"";background:#fff;transform:translate(-50%,-50%);}
.family-site__plus::before{width:16px;height:2px;}
.family-site__plus::after{width:2px;height:16px;}
/* 패밀리사이트 목록 : 푸터가 페이지 맨 아래라 버튼 위로 열린다. 열리면 + 의 세로 막대가 누워 − 가 된다 */
.family-site__plus::after{transition:transform .3s ease;}
.family-site.active .family-site__plus::after{transform:translate(-50%,-50%) rotate(90deg);}
.family-site.active .family-site__button{border-color:#6a6a6a;}
.family-site__list{position:absolute;left:0;right:0;bottom:calc(100% + 10px);z-index:20;margin:0;padding:10px;border:1px solid #3a3a3a;border-radius:13px;background:#1c1c1c;list-style:none;box-shadow:0 18px 40px rgba(0,0,0,.35);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .25s ease,transform .25s ease,visibility .25s ease;}
.family-site.active .family-site__list{opacity:1;visibility:visible;transform:translateY(0);}
.family-site__list a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:8px;color:#cfcfcf;font-size:16px;font-weight:500;letter-spacing:-.4px;text-decoration:none;transition:background .2s ease,color .2s ease;}
.family-site__list a:after{content:"\ea70";font-family:remixicon;font-size:16px;color:#777;}   /* ri-arrow-right-up-line */
.family-site__list a:hover,.family-site__list a:focus-visible{background:#2a2a2a;color:#fff;}
.family-site__list a:hover:after{color:#fff;}
.department-footer__bottom{padding-top:29px;border-top:1px solid var(--footer-line);color:var(--footer-muted);text-align:center;}
.department-footer__bottom p{margin:0;font-size: 16px;font-weight: 500;letter-spacing: -.5px;opacity: .7;font-family: "DM Sans", sans-serif;}

@media (max-width:1100px){
	.department-footer__inner{width:calc(100% - 80px);}
	.department-footer__top{gap:40px;}
	.department-footer__utility{min-width:350px;}
	.footer-links{gap:22px;}
}
@media (max-width:820px){
	body{padding:10px;}
	.department-footer{border-radius:22px;}
	.department-footer__inner{width:calc(100% - 48px);padding:46px 0 28px;}
	.department-footer__top{display:block;min-height:0;}
	.department-footer__name{font-size:21px;}
	.department-footer__address{margin-top:30px;font-size:15px;}
	.department-footer__utility{min-width:0;margin-top:42px;}
	.footer-links{justify-content:flex-start;flex-wrap:wrap;gap:12px 24px;}
	.family-site{width:100%;margin-top:28px;}
	.department-footer__bottom{margin-top:42px;text-align:left;}
	.department-footer__bottom p{font-size:12px;line-height:1.6;}
}
@media (max-width:480px){
	.department-footer__inner{width:calc(100% - 36px);}
	.department-footer__divider{margin-inline:11px;}
	.department-footer__name{font-size:18px;}
	.department-footer__contact{display:grid;grid-template-columns:auto 1fr;gap:12px;}
	.contact-title{grid-column:1 / -1;}
	.contact-group{align-items:flex-start;}
	.footer-links{display:grid;}
}

/* ******************  Yonsei header renewal ********************** */
/* Legacy header renewal styles are isolated; navigation is maintained in nav.css. */
@media not all{
.blind{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;border:0!important;white-space:nowrap!important;}
:root{--header-height: 85px;}
#header{max-width:1980px;background:#f4f4f4;}   /* 슈퍼와이드 모니터에서도 헤더는 1980px 까지만 (본문 틀과 같게) */
#headerInnerWrap{background:#f4f4f4;}
#headerInner{width:100%;max-width:1728px;padding:0;background:#f4f4f4;}
#headerInner:before{display:none;}
#header .logo{flex:0 0 390px;}
#header .logo-p{width:145px;}
#header .logo-p img{width:100%;height:auto;}
#header .logo-t{margin-left:18px;padding-left:18px;}
#header .logo-t:before{height:26px;background:#d4d4d4;}
#header .logo-t strong{color:#606060;font-size:28px;font-weight:700;letter-spacing:-1.5px;line-height:1;}
#gnb{left:50%;width:auto;transform:translateX(-50%);}
#gnb > ul{display:flex;height:100%;margin-left:0;align-items:center;gap:72px;}
#gnb > ul > li{float:none;}
#gnb > ul > li > a{min-width:64px;padding:0;color:#111;font-size: 19px;font-weight: 600;letter-spacing:-.04em;white-space:nowrap;}
#gnb > ul > li:last-child > a{min-width:108px;}
#gnbBg{position:fixed;left:50%;width:100vw;max-width:1980px;transform:translateX(-50%);}
#gnb.total-menu > ul > li .gnb-2dep{left:50%;width:180px;transform:translateX(-50%);}
#gnb.total-menu > ul > li .gnb-2dep ul{padding:24px 0;}
#gnb.total-menu > ul > li .gnb-2dep ul li a{padding:7px 5px;font-size:16px;}
#gnb.open #gnbBg{height:400px;}
.header-util-box{flex:0 0 330px;justify-content:flex-end;gap:10px;}
.classroom-reservation{height:40px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;border-radius:22px;background:#16418f;color:#fff;font-size:15px;font-weight: 600;white-space:nowrap;}
.classroom-reservation i{margin-left:5px;font-size:16px;font-weight: normal;}
.header-lang03{width:80px;margin-right:0;display:block;}
.header-lang03 .lang-open-btn{width:80px;height:40px;padding:0 14px;display:flex;align-items:center;justify-content:center;gap:5px;border:1px solid #ddd;border-radius:22px;background:#f4f4f4;color:#111;font-family:var(--font-family1);font-size:15px;font-weight: 500;cursor:pointer;}
.header-lang03 .lang-open-btn:before{display:none;}
.header-lang03 .lang-open-btn > span{font-size:15px;}
.header-lang03 .lang-open-btn i{color:#111;font-size:18px;transition:transform .2s;}
.header-lang03.open .lang-open-btn i{color:#111;transform:rotate(180deg);}
.header-lang03 > ul{top:46px;padding:8px 0;border:1px solid #ddd;border-radius:12px;background:#fff;backdrop-filter:none;}
.header-lang03.open > ul{display:block;}
.header-lang03 > ul > li{padding:0;}
.header-lang03 > ul > li > a{padding:7px 0;color:#111;font-size:14px;}
.sitemap-line-btn{width:100px;height:40px;padding:0;display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:10px;border:0;background:transparent;color:#111;}
.sitemap-line-btn .menu-lines{width:30px;display:flex;flex-direction:column;}
.sitemap-line-btn .line{width:30px;height:2px;margin:2px 0;background:#111;}
.sitemap-line-btn .line:nth-child(2){width:20px;opacity:1;}
.sitemap-line-btn .line:nth-child(3){display:none;}
.sitemap-line-btn:hover .line{width:30px;margin:2px 0;}
.sitemap-line-btn:hover .line:nth-child(2){width:20px;}
.sitemap-line-btn .menu-text{font-size:15px;font-weight: 500;}

@media (max-width:1600px){
	#headerInner{padding:0 30px;}
	#header .logo{flex-basis:350px;}
	#gnb > ul{gap:48px;}
	.header-util-box{flex-basis:310px;}
}
@media (max-width:1280px){
	:root{--header-height:80px;}
	#headerInner{padding:0 24px;}
	#header .logo{flex:1;}
	#header .logo-p{width:132px;}
	#header .logo-t{margin-left:14px;padding-left:14px;}
	#header .logo-t strong{font-size:23px;}
	.header-util-box{display:none;}
	.nav-open-btn{right:24px;top:15px;}
}
@media (max-width:800px){
	#headerInner{padding:0 18px;}
	#header .logo{gap:0;flex-direction:row;align-items:center;}
	#header .logo-p{width:118px;}
	#header .logo-t{width:auto;margin-left:12px;padding-left:12px;}
	#header .logo-t:before{display:block;height:22px;}
	#header .logo-t strong{font-size:19px;letter-spacing:-1px;}
	.nav-open-btn{right:18px;top:15px;}
}
@media (max-width:480px){
	#header .logo-p{width:102px;}
	#header .logo-t strong{font-size:17px;}
}
}

/* ************************** 슈퍼와이드 모니터 (1981px 이상) ******************************
 * #allWrap · #header 가 1980px 에서 멈추고 가운데 선다. 바깥 빈 자리는 사이트 바탕색과 같게 칠한다.
 * 서브 본문 여백 계산의 1980px 기준값은 sub.css 맨 끝에 있다 (sub.css 가 나중에 불려 여기 두면 덮인다)
============================================================================== */
/* 공통 헤더(#top-layout, position:fixed) : 틀과 같이 1980px 에서 멈추고 화면 가운데에 선다.
   transform 으로 가운데 맞추면 안쪽의 fixed 요소(드롭다운 배경 등) 기준이 바뀌므로 left · right · margin:auto 로 맞춘다 */
#top-layout{left:0;right:0;max-width:1980px;margin:0 auto;}
@media (min-width:1981px){
	body{background:#f2f2f2;}
}
