@charset "utf-8";
.sub-visual {position: relative; height:560px;  box-sizing: border-box; overflow: hidden; }
.sub-visual > img{width: 100%; height: 100%; object-fit:cover;}
.sub-visual > .box{position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: flex; flex-direction: column; align-items:Center;   justify-content: center; z-index: 10; box-sizing: border-box; padding-top: 54px;}
.sub-visual > .box h4{color: #FFF; text-align: center; font-size: 64px; font-weight: 600; line-height: 74px;  letter-spacing: -1.92px;  letter-spacing: -2.1px; padding-top: 26px;}

.sub-content{display: flex; flex-wrap:wrap; gap:43px; margin-top: 100px; padding: 0 10px; }

.lnb-box{width: 186px;}
.lnb-box .lnb {position: sticky; top: 150px;}
.lnb-box .lnb > b{display: none;}
.lnb-box .lnb > ul{display: flex; flex-direction: column; gap:20px; max-width:186px;}
.lnb-box .lnb > ul > li > a{position: relative; color: #999; font-size: 22px; font-weight: 600; line-height: 32px;  letter-spacing: -0.66px; display: flex; align-items:center; gap:8px; transition:.3s;}
.lnb-box .lnb > ul > li > a span{font-size: 16px; line-height: 1.5; }
.lnb-box .lnb > ul > li > a.infrastructure-menu-link{display: block;}
.lnb-box .lnb > ul > li > a.infrastructure-menu-link .infrastructure-description{display: block; margin-top: 4px; margin-left: 16px; word-break: keep-all;}
.lnb-box .lnb > ul > li.current > a.infrastructure-menu-link{padding-left: 12px;}
.lnb-box .lnb > ul > li.current > a.infrastructure-menu-link:before{display: none;}
.lnb-box .lnb > ul > li.current > a.infrastructure-menu-link:after{top: 16px;}
.lnb-box .lnb > ul > li > a:before{content: ''; flex:0; height: 1px; background: #12215B; opacity: 0; transition:.3s; display: none;}
.lnb-box .lnb > ul > li > a:after{position: absolute; content: ''; width: 5px; height: 5px; background: #12215B; border-radius: 50%; left: 0; top: 50%; translate:0 -50%; opacity: 0; width: 0; height: 0px; transition:.3s; display: none;}
.lnb-box .lnb > ul > li:hover > a{ color: #333;}
.lnb-box .lnb > ul > li.current  {
	> a{color: #12215B;}
	> a:before{ opacity: 1; flex:1; max-width:41px; display: block;} 
	> a:after{width: 5px; height: 5px; opacity: 1; display: block;}
}

.lnb-box .lnb .dep3{display: none;}

.slnb{margin-bottom: 51px;}
.slnb ul{display: flex; flex-wrap:wrap; gap:6px;}
.slnb ul > li > a{display: flex; width: 150px; padding: 16px 20px; justify-content: center; align-items: center; border-radius: 8px; background: rgba(221, 221, 221, 0.60); color: #999; text-align: center; font-size: 16px; font-weight: 500; line-height: 20px;  letter-spacing: -0.48px; transition:.3s;}
.slnb ul > li.current > a{background: #12215B; color: #fff; }

.sub-content .content{ flex:1; padding-right: 230px; margin-bottom: 180px; width: calc(100% - 229px); }   
.sub-tit{display: flex; flex-wrap:wrap; justify-content: space-between; padding-bottom: 32px; border-bottom: 1px solid #DDD; margin-bottom: 70px;}
.sub-tit strong{color: #111; font-size: 52px; font-weight: 600; line-height: 62px;  letter-spacing: -1.56px;}
.sub-tit .speed{align-self:end;}
.sub-tit .speed ul{display: flex; flex-wrap:wrap; align-items:center; }
.sub-tit .speed ul > li{position: relative; display: flex; align-items:center;}
.sub-tit .speed ul > li:not(:last-child):after{content: ''; width: 4px; height: 4px; aspect-ratio: 1/1; background: #D9D9D9;  border-radius: 50%; margin: 0 12px;}

.stit{color: #111; font-size: 32px; font-weight: 600; line-height: 42px;  letter-spacing: -0.96px; margin-bottom: 50px;}
.stit2{color: #000; font-size: 36px; font-weight: 600; line-height: 46px;  letter-spacing: -1.08px; margin-bottom: 40px;}

.sub-content .tit-box{display: flex; flex-direction: column; gap:20px;}
.sub-content .tit-box small{color: #12215B; font-size: 16px; font-weight: 600; line-height: 20px; letter-spacing: -0.48px;}
.sub-content .tit-box b{color: #222; font-size: 40px; font-weight: 600; line-height: 36px;  letter-spacing: -1.2px;}

.icon-article .col4-icon{display: flex; gap:24px;}
.icon-article .col4-icon .box{flex:1; display: flex; flex-direction: column; align-items: center; gap: 32px; border-radius: 20px; border: 1px solid #DDD; padding: 64px 10px 75px 10px;  }
.icon-article .col4-icon .box .tbx{display: flex; flex-direction: column; justify-content: center; text-align: center;     align-items: center; gap:4px; }
.icon-article .col4-icon .box .tbx small{color: #222; font-size: 18px; font-weight: 600; line-height: 28px;  letter-spacing: -0.54px;}
.icon-article .col4-icon .box .tbx p{display: flex; gap:4px; color: #666;font-size: 18px; font-weight: 400; line-height: 32px;  letter-spacing: -0.54px; align-items:end;}
.icon-article .col4-icon .box .tbx p b{color: #231815; font-size: 36px; font-weight: 600; line-height: 46px;  letter-spacing: -1.08px;}
.icon-article .col5-icon .box {flex:1 1 20%;}
.icon-article .col5-icon .box .tbx .pbox{display: flex; flex-direction: column;     align-items: center;}
.icon-article .col5-icon .box .tbx .pbox span{color: #92030E; text-align: center; font-size: 20px; font-weight: 600; line-height: 28px;letter-spacing: -0.6px;}
.icon-article .col5-icon .box .tbx .pbox p{color: #666; font-size: 18px; font-weight: 400; line-height: 32px; letter-spacing: -0.54px;}

.card-flex{display: flex; flex-wrap:wrap; margin-left: -24px;}
.card-flex .box{margin-left: 24px;}
.card-flex.col3 .box{width: calc(33.333% - 24px); }
.card-flex.col3 .box .tbx{display: flex; flex-direction: column; margin-top: 30px; gap:12px; padding: 0 5px;}
.card-flex.col3 .box .tbx > b{color: #222; font-size: 26px; font-weight: 600; line-height: 36px;  letter-spacing: -0.78px;}
.card-flex.col3 .box .tbx > ul{display: flex; flex-direction: column; gap:4px;}
.card-flex.col3 .box .tbx > ul > li{position: relative; color: #666; font-size: 18px; font-weight: 400;line-height: 28px;  letter-spacing: -0.54px; padding-left: 12px;}
.card-flex.col3 .box .tbx > ul > li:before{position: absolute; content: ''; width: 4px; height: 4px; background: #808080; left: 0; top: 12px; }

.card-flex2{margin-left: 0; gap:32px; padding-top: 40px; border-top: 1px solid #333; padding-bottom: 37px ;border-bottom: 1px solid #D9D9D9;}
.card-flex2.col3 .box{flex:1;   margin-left: 0; width: auto;}
.card-flex2.col3 .box .tbx{margin-top: 0;	padding: 0; gap:10px; margin-bottom: 30px;}
.card-flex2.col3 .box .tbx > p{display: flex; flex-wrap:wrap; align-items:center; color: #666; font-size: 18px; font-weight: 400; line-height: 28px;  letter-spacing: -0.54px;}
.card-flex2.col3 .box .tbx > p b{color: #333; font-weight: 600;}
.card-flex2.col3 .box .tbx > p span:nth-child(2):before{content: '|'; margin: 0 8px;}


/* s11 */
.s11{display: flex; flex-direction: column; gap:140px;}
.s11 .arti1 .img-box{position: relative; border-radius: 20px; background: #12215B; display: flex; justify-content: space-between; z-index: 1; height: 368px; padding: 0 80px; overflow: hidden;}
.s11 .arti1 .img-box .tbx{display: flex; flex-direction: column; gap:20px; align-self:center; padding-top:5px;		 }
.s11 .arti1 .img-box .tbx small{color: rgba(255, 255, 255, 0.40); font-size: 16px; font-weight: 600; line-height: 20px;  letter-spacing: -0.48px;}
.s11 .arti1 .img-box .tbx strong{color: #FFF; font-size: 40px; font-weight: 400; line-height: 54px;  letter-spacing: -1.2px;}
.s11 .arti1 .img-box .tbx strong b{font-weight: 600;}
.s11 .arti1 .img-box figure{margin-left: auto; align-self:end;}
.s11 .arti1 .img-box .back-text{position: absolute; left: 44%; z-index: -1; top: 50%; translate:0 -39%;}
.s11 .arti1 .img-box big{color: rgba(255, 255, 255, 0.05); text-align: center; font-family: "Poppins"; font-size: 90px; font-weight: 700; line-height: 100px;  letter-spacing: -2.7px; white-space: nowrap; }
.s11 .arti1 .img-box big:last-child{padding-left: 51px;}
.s11 .arti1 .text-box{padding: 60px 80px 0;}
.s11 .arti1 .text-box .p-box{display: flex; flex-direction: column; gap:2em;} 
.s11 .arti1 .text-box p{color: #666; font-size: 18px; font-weight: 400; line-height: 34px;  letter-spacing: -0.54px;}
.s11 .arti1 .text-box sign{display: flex; align-items:center; justify-content: flex-end; gap:20px; color: #333; text-align: right; font-size: 18px; font-weight: 600; line-height: 34px;  letter-spacing: -0.54px; margin-top: -7px;	}
.s11 .arti1 .text-box sign b{font-size: 26px; font-weight: 600;}
.s11 .arti2{display: flex; justify-content: space-between; align-items:center; gap:100px;}
.s11 .arti2 > *{flex:1; }
.s11 .arti2 > .text-box{display: flex; flex-direction: column; max-width:560px; gap:40px;}
.s11 .arti2 > .text-box p{color: #666; font-size: 18px; font-weight: 400; line-height: 34px;  letter-spacing: -0.54px; word-break: break-word;}
.s11 .arti2 > figure{max-width:660px; }
.s11 .arti3 > figure{margin-top: 50px;}
.s11 .arti3 > figure > img{display:block; width:100%; height:auto;}
.s11 .sr-only {position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0, 0, 0, 0);white-space: nowrap;border: 0;}

/* s12 */
.s12{display: flex; flex-direction: column; gap:140px;}
.s12 .arti1{display: flex; flex-wrap:wrap; justify-content: space-between; align-items:center; }
.s12 .arti1 .text-box{display: flex; flex-direction: column; width: 42.42%; gap:40px;}

.s12 .arti1 .text-box p{color: #666; font-size: 18px; font-weight: 400; line-height: 34px;  letter-spacing: -0.54px; word-break: break-all;}
.s12 .arti1 .img-box{width: 50%; }

.s12 .arti2 .table-wrap{margin-top: 36px;}
.s12 .arti2 .table-wrap table{table-layout: fixed; width: 100%;}
.s12 .arti2 .table-wrap table thead th:first-child{border-radius: 10px 0 0 10px;}
.s12 .arti2 .table-wrap table thead th:last-child{border-radius: 0 10px 10px 0;}
.s12 .arti2 .table-wrap table thead tr{ background: #12215B;}
.s12 .arti2 .table-wrap table tr > th{height: 50px; color: #FFF; text-align: center; font-size: 18px; font-weight: 600; line-height: 28px;  letter-spacing: -0.54px;}
.s12 .arti2 .table-wrap table tr > td{height: 53px; color: #666; text-align: center; font-size: 18px; font-weight: 400; line-height: 28px;  letter-spacing: -0.54px; border-bottom: 1px solid #ddd;}
.s12 .arti2 .table-wrap table tr > td:first-child{color: #333; font-weight: 600; line-height: 28px; letter-spacing: -0.54px;}
.s12 .arti3 .col2-flex{display: flex; flex-wrap:wrap; gap:24px; }
.s12 .arti3 .col2-flex .box{position: relative; flex:1 1 40%;}
.s12 .arti3 .col2-flex .box .tbx{position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: flex; justify-content: center; align-items: flex-end; padding-bottom: 36px;}
.s12 .arti3 .col2-flex .box .tbx p{color: #FFF; text-align: center; font-size: 22px; font-weight: 600; line-height: 32px;  letter-spacing: -0.66px;}
.s12 .arti3 .col2-flex.duties-gallery{display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));}
.s12 .arti3 .duties-gallery .box{min-width: 0; border-radius: 20px; overflow: hidden;}
.s12 .arti3 .duties-gallery .box img{width: 100%; aspect-ratio: 4 / 3; object-fit: cover;}
.s12 .arti3 .duties-gallery .box .tbx{padding: 16px 10px;}
.s12 .arti3 .duties-gallery .box .tbx p{font-size: 18px; line-height: 1.5; word-break: keep-all;}
.s12 .duties-list{margin-top: 36px; padding-left: 24px; column-count: 2; column-gap: 48px;}
.s12 .duties-list li{list-style: disc; margin-bottom: 10px; padding-right: 12px; color: #666; font-size: 18px; line-height: 1.8; word-break: keep-all; overflow-wrap: anywhere; break-inside: avoid;}
.s12 .arti4 .col3-flex {display: flex; flex-wrap:wrap; margin-left: -24px; gap:24px 0; }
.s12 .arti4 .col3-flex .box{position: relative; width: calc(33.33% - 24px); margin-left: 24px; border-radius: 20px; overflow: hidden;}
.s12 .arti4 .col3-flex .box .tbx{position: absolute; left: 0; bottom: 0; width: 100%; display: flex; padding: 12px 0; justify-content: center; align-items: center; background: #fff; border: 1px solid #ddd; border-top: 0; border-radius: 0 0 20px 20px;}
.s12 .arti4 .col3-flex .box .tbx p{color: #333; text-align: center;  font-size: 18px; font-weight: 500; line-height: 28px;  letter-spacing: -0.54px;}
.s122 .arti2 .col4-icon .box {padding-bottom: 59px;}

/* s1_3 */
.s1_3 .table-wrap {width: 100%;}
.s1_3 .table-wrap table {width: 100%; table-layout:fixed;}
.s1_3 .table-wrap table th {background-color: #12215b; height: 50px; line-height: 1.4; font-size: 18px; color: #fff; font-weight: 600; letter-spacing: -.54px; text-align: center;}
.s1_3 .table-wrap table th:nth-of-type(1) {border-radius: 10px 0 0 10px;}
.s1_3 .table-wrap table th:last-child {border-radius: 0 10px 10px 0;}
.s1_3 .table-wrap table tbody tr {border-bottom: 1px solid #ddd;}
.s1_3 .table-wrap table td {font-size: 18px; line-height: 1.4; font-weight: 600; color: #333; letter-spacing: -.54px; padding: 14px 5px; text-align: center; vertical-align:middle;} 




/* s13(연혁) */
.s13 .arti1{display: flex; flex-wrap:wrap; justify-content: center; padding: 0 20px 0 28px;} 
.s13 .arti1 > *{flex:1;}
.s13 .arti1 .history-img{ max-width:608px}
.s13 .arti1 .history-img .sticky{display: flex; flex-direction: column; text-align: right; font-family: "Poppins"; padding-right: 108px; position: sticky; top: 180px;;}
.s13 .arti1 .history-img .sticky small{color: #12215B; font-size: 30px; font-weight: 700; line-height: 36px;  letter-spacing: -0.9px; margin-bottom: 20px;}
.s13 .arti1 .history-img .sticky b{color: #E8EBEF; font-size: 100px; font-weight: 700; line-height: 34px;  letter-spacing: -3px; margin-top: -4px; margin-bottom: 45px; line-height: 1;}
.s13 .arti1 .history-img .sticky figure{}
.s13 .arti1 .history{position: relative; display: flex; flex-direction: column; gap:95px; padding-left: 130px; max-width:662px;}
.s13 .arti1 .history:before{position: absolute; content: ''; width: 1px; height: calc(100% + 140px); background: #DDD; left: 0; top: 40px;}
.s13 .arti1 .history .box {position: relative; display: flex; flex-direction: column; gap:16px;}
.s13 .arti1 .history .box strong{color: #12215B; font-size: 50px; font-weight: 600; line-height: 62px;  letter-spacing: -1.5px;}
.s13 .arti1 .history .box strong:after{position: absolute; content: ''; width: 18px; height: 18px; border-radius: 50%; border: 4px solid rgba(255, 255, 255, 0.90); box-sizing: border-box; background: #12215B; left: -139px; top: 23px;}  
.s13 .arti1 .history .box strong:before{position: absolute; content: ''; width: 108px; height: 1px; background: url(../img/sub/history-line.png) center left; left: -135px; top: 32px;}
.s13 .arti1 .history .box ul{display: flex; flex-direction: column; }
.s13 .arti1 .history .box ul > li{display: flex; flex-wrap:wrap; gap:12px; color: #666; font-size: 18px; font-weight: 400; line-height: 34px;  letter-spacing: -0.54px;}
.s13 .arti1 .history .box ul > li span{color: #111; font-weight: 600; text-align: right;}
.s13 .arti1 .history .box ul > li p{flex:1;}

/* s14 */
.s14 {display: flex; flex-direction: column; gap:140px;}
.s14 .arti1 .map-box iframe{width: 100%; height: 420px; border-radius: 20px;	}
.s14 .arti1 .map-info{display: flex; justify-content: space-between; flex-wrap:wrap; margin-top: 30px; gap:20px;} 
.s14 .arti1 .map-info ul > li{display: flex; flex-wrap:wrap; gap:20px; color: #666; font-size: 18px; font-weight: 400; line-height: 38px;  letter-spacing: -0.54px;}
.s14 .arti1 .map-info ul > li span{width: 31px; color: #111;  font-size: 18px; font-weight: 600; line-height: 38px; letter-spacing: -0.54px; }
.s14 .arti1 .map-info ul > li p{flex:1;}
.s14 ol{display: flex; flex-wrap:wrap; gap:8px;}
.s14 ol > li > a{display: flex; align-items:center; justify-content: space-between; width: 170px; height: 58px; border-radius: 8px; background: #12215B; padding: 0 26px 0 24px; color: #FFF; font-size: 18px; font-weight: 600; line-height: 28px; letter-spacing: -0.54px; transition:.3s;}
.s14 ol > li > a svg{transition:.3s; line-height: 0;}
.s14 ol > li:last-child > a{background: #808080;}
.s14 ol > li > a:hover {background: #000;
	svg{translate:0 -3px;}
}

.s14 .dl-box{display: flex; align-items:center; justify-content: space-between; margin-top: 40px;}


.s14 .arti2 dl{display: flex; flex-wrap:wrap; gap:20px; color: #666; font-size: 18px; font-weight: 400; line-height: 38px; letter-spacing: -0.54px; }
.s14 .arti2 dl dt{color: #111; font-weight: 600;}
.s14 .arti2 dl dd{display: flex; flex-wrap:wrap; align-items:center; gap:8px}
.s14 .arti2 dl dd p{display: flex; flex-wrap:wrap; }
.s14 .arti2 dl dd p b{color: #333; font-weight: 600;}
.s14 .arti2 dl dd p span{display: flex; flex-wrap:wrap; align-items:center; flex:1; }
.s14 .arti2 dl dd p span:before{content: '|'; margin: 0 8px;}

/* s21 */
.s21{display: flex; flex-direction: column; gap:140px;}
.s21 .arti1 figure{height: 368px; }
.s21 .arti1 figure img{width: 100%; height: 100%; object-fit:cover; border-radius: 20px;}
.s21 .arti1 .text-box{display: flex; flex-direction: column; margin-top: 60px; padding: 0 20px;}
.s21 .arti1 .text-box .box{display: flex; flex-direction: column; gap:12px; padding-bottom: 36px; margin-bottom: 36px; border-bottom: 1px solid #DDD;}
.s21 .arti1 .text-box .box:last-child{margin-bottom: 0; padding-bottom: 0; border-bottom: 0;}
.s21 .arti1 .text-box .box b{color: #222; font-size: 26px; font-weight: 600; line-height: 36px;letter-spacing: -0.78px;}
.s21 .arti1 .text-box .box p{color: #666; font-size: 18px; font-weight: 400; line-height: 34px;  letter-spacing: -0.54px; word-break: break-word;}
.s21 .arti2 dl{display: flex; flex-wrap:wrap; align-items:center; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; padding: 8px 0; }
.s21 .arti2 dl dt{display: flex;width: 210px;height: 50px;justify-content: center;align-items: center; border-radius: 10px;background: #12215B; color: #FFF;text-align: center; font-size: 18px; font-weight: 600; line-height: 28px;  letter-spacing: -0.54px;}
.s21 .arti2 dl dd{flex:1; color: #666; font-size: 18px; font-weight: 400; line-height: 28px; letter-spacing: -0.54px; padding-left: 24px;}
.s21 .icon-article .col4-icon .box{padding-bottom: 36px;}

/* s61 */
.s61 {display: flex; flex-direction: column; gap:140px;}
.s61 .tit-box{margin-bottom: 50px;}
.s61 .arti1{border-radius: 20px; height: 480px; background: url(../img/sub/s61-1.jpg) center / cover no-repeat; display: flex; flex-direction: column; justify-content: space-between; padding: 70px 70px 60px 60px;}
.s61 .arti1 .tbx{display: flex; flex-direction: column; gap:24px}
.s61 .arti1 .tbx b{color: #FFF; font-size: 40px; font-weight: 600; line-height: 36px; letter-spacing: -1.2px;}
.s61 .arti1 .tbx p{color: rgba(255, 255, 255, 0.80); font-size: 18px; font-weight: 400; line-height: 28px;  letter-spacing: -0.54px;}
.s61 .arti1 ul{display: flex; flex-wrap:wrap; margin-left: auto;}
.s61 .arti1 ul > li{position: relative; display: flex; flex-direction: column; justify-content: center; gap:34px; text-align: center; padding-right: 41px; margin-right: 41px;}
.s61 .arti1 ul > li:last-child{padding-right: 0; margin-right: 0;}
.s61 .arti1 ul > li:not(:last-child):after{position: absolute; right: 0; top: 50%; margin-top: -30px; content: ''; width: 1px; height: 60px; background: rgba(255, 255, 255, 0.30);}
.s61 .arti1 ul > li i{line-height: 0;}
.s61 .arti1 ul > li p{color: #FFF; font-size: 22px; font-weight: 600; line-height: 28px;  letter-spacing: -0.66px;}
.s61 .arti2 .img-flex{display: flex; flex-wrap:wrap; gap:24px;}
.s61 .arti2 .img-flex > li{flex:1; }
.s61 .arti2 .img-flex > li p{margin-top: 30px; color: #333; text-align: center; font-size: 18px; font-weight: 500; line-height: 28px;  letter-spacing: -0.54px;}
.s61 .arti3 .icon-flex{display: flex; flex-wrap:wrap; margin-left: -24px;}
.s61 .arti3 .icon-flex > li{display: flex; flex-direction: column; align-items: center; gap:32px; width: calc(20% - 24px); margin-left: 24px; border-radius: 20px; border: 1px solid #DDD; height: 304px; padding-top: 70px;}
.s61 .arti3 .icon-flex > li p{color: #222; text-align: center; font-size: 18px; font-weight: 600; line-height: 28px;  letter-spacing: -0.54px;}

/* 홍보관 */
.s12.hall > section{width: 100%; min-width: 0;}
.hall-intro{display: flex; justify-content: space-between; align-items: center; gap: 100px;}
.hall-intro .txt{flex: 1; max-width: 560px; min-width: 0; display: flex; flex-direction: column; gap: 36px;}
.hall-intro .intro-head{display: flex; flex-direction: column; gap: 16px;}
.hall-intro .intro-head h3{color: #222; font-size: 32px; font-weight: 600; line-height: 42px; letter-spacing: -0.96px;}
.hall-intro .intro-head p{color: #666; font-size: 18px; font-weight: 400; line-height: 28px; letter-spacing: -0.54px;}
.hall-line{height: 1px; background: #ddd;}
.hall-intro dl{display: flex; flex-direction: column; gap: 10px;}
.hall-intro dl > div{display: flex; justify-content: space-between; align-items: flex-start; gap: 16px;}
.hall-intro dt{flex: none; color: #333; font-size: 18px; font-weight: 600; line-height: 28px; letter-spacing: -0.54px;}
.hall-intro dd{color: #666; font-size: 18px; font-weight: 400; line-height: 28px; letter-spacing: -0.54px; text-align: right;}
.hall-intro figure{flex: 1; max-width: 660px; min-width: 0; aspect-ratio: 660 / 560; border-radius: 20px; overflow: hidden; background: #fafafa;}
.hall-intro figure img{width: 100%; height: 100%; object-fit: cover; display: block; height: auto !important;}

.hall-box{border: 1px solid #ddd; border-radius: 20px; background: #fff; padding: 50px 50px 60px;}
.hall-box p{color: #666; font-size: 18px; font-weight: 600; line-height: 28px; letter-spacing: -0.54px;}

.hall-gallery{display: flex; flex-direction: column; gap: 16px; width: 100%; min-width: 0;}
.hall-main{position: relative; width: 100%; min-width: 0; border: 1px solid #ddd; border-radius: 20px; overflow: hidden;}
.hall-main .swiper-slide{height: auto;}
.hall-main .swiper-slide img{display: block; width: 100%; height: auto; aspect-ratio: 1320 / 520; object-fit: cover; object-position: center 75%;}
.hall-nav{position: absolute; left: 50%; bottom: 30px; z-index: 2; transform: translateX(-50%); display: flex; align-items: center; justify-content: center; gap: 20px; height: 44px; padding: 0 20px; border-radius: 100px; background: rgba(0, 0, 0, 0.6); box-sizing: border-box;}
.hall-nav button{display: flex; align-items: center; justify-content: center; border: 0; background: none; padding: 0; line-height: 0; cursor: pointer;}
.hall-nav button.swiper-button-disabled{cursor: default;}
.hall-nav img{display: block; max-width: none; width: auto; height: auto;}
.hall-prev{position: relative;}
.hall-prev .arr-on{position: absolute; left: 0; top: 0; transform: scaleX(-1); display: none;}
.hall-prev:not(.swiper-button-disabled) .arr-dim{visibility: hidden;}
.hall-prev:not(.swiper-button-disabled) .arr-on{display: block;}
.hall-next.swiper-button-disabled{opacity: 0.3;}
.hall-thumbs{width: 100%; min-width: 0;}
.hall-thumbs .swiper-slide{height: 125px; border: 1px solid #ddd; border-radius: 20px; overflow: hidden; position: relative; cursor: pointer; box-sizing: border-box;}
.hall-thumbs .swiper-slide img{display: block; width: 100%; height: 100%; object-fit: cover; object-position: center;}
.hall-thumbs .swiper-slide:after{content: ''; position: absolute; inset: 0; background: rgba(255, 255, 255, 0.5); pointer-events: none;}


.hall-thumbs .swiper-slide-thumb-active{border: 2px solid #12215b;}
.hall-thumbs .swiper-slide-thumb-active:after{display: none;}



/* 회원사 현황 */
.memstat{display:flex; flex-direction:column; gap:140px;}
.memstat-top{display:flex; align-items:flex-start; gap:30px;}
.memstat-info{flex:710 1 0; max-width:710px; min-width:0;}
.memstat-tit{display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:50px;}
.memstat-tit h3{color:#111; font-size:36px; font-weight:600; line-height:46px; letter-spacing:-1.08px;}
.memstat-tit span{color:#999; font-size:14px; font-weight:500; line-height:18px; letter-spacing:-0.42px; white-space:nowrap;}
.memstat-hero{display:flex; gap:10px;}
.memstat-hero .box{flex:1; height:160px; border-radius:10px; background:#f4f7fa; padding:30px 40px 18px 30px; display:flex; flex-direction:column; justify-content:space-between; box-sizing:border-box;}
.memstat-hero .label,
.memstat-mini .label{display:flex; align-items:center; justify-content:center; gap:6px; color:#808080; font-size:14px; font-weight:600; line-height:18px; letter-spacing:-0.42px;}
.memstat-hero .label{justify-content:flex-start;}
.memstat-hero .label img,
.memstat-mini .label img{display:block; max-width:none; width:auto; height:auto;}
.memstat-hero .num,
.memstat-mini .num{color:#12215b; font-family:"Poppins", Pretendard, sans-serif; font-size:44px; font-weight:600; line-height:56px; letter-spacing:-1.32px;}
.memstat-hero .num{align-self:flex-end;}
.memstat-mini{display:flex; gap:10px; margin-top:10px;}
.memstat-mini .box{flex:1; height:134px; min-width:0; border-radius:10px; background:#f4f7fa; padding:36px 8px 0; display:flex; flex-direction:column; align-items:center; gap:4px; text-align:center; box-sizing:border-box;}
.memstat-chart{position:relative; flex:580 1 0; max-width:580px; min-width:0; width:100%; height:400px; padding:28px; display:flex; align-items:center; gap:20px; border:1px solid #ddd; border-radius:20px; background:#fff; box-sizing:border-box; overflow:hidden;}
.memstat-donut{position:relative; flex:1 1 52%; min-width:0; max-width:300px; aspect-ratio:1;}
.memstat-donut canvas{display:block; width:100% !important; height:100% !important;}
.memstat-legend{flex:1 0 auto; display:flex; flex-direction:column; gap:12px; margin:0; padding:0; list-style:none;}
.memstat-legend li{display:flex; align-items:center; gap:6px; color:#666; font-size:12px; font-weight:600; line-height:18px; letter-spacing:-0.36px;}
.memstat-legend strong{margin-left:auto; padding-left:6px; color:#222; font-size:13px; font-variant-numeric:tabular-nums;}
.memstat-swatch{display:block; width:10px; height:10px; flex:0 0 10px; border-radius:50%;}
.memstat-intro{display:flex; flex-direction:column; align-items:center; gap:40px;}
.memstat-tabs{display:flex; flex-wrap:wrap; justify-content:center; gap:6px;}
.memstat-tabs button{height:44px; padding:8px 20px; border-radius:50px; border:1px solid #ddd; background:#fff; color:#999; font-family:inherit; font-size:16px; font-weight:500; line-height:20px; letter-spacing:-0.48px; cursor:pointer;}
.memstat-tabs button.is-on{border-color:#666; color:#222;}
.memstat-editor{width:100%; /* min-height:640px; border:1px solid #ddd; border-radius:20px; background:#fff; display:flex; align-items:center; justify-content:center; padding:80px 40px; box-sizing:border-box; */}
.memstat-editor .gallery-list {display: block; width: 100%;}
.memstat-editor .mem-list  {display: block; width: 100%;}
.memstat-editor .placeholder{margin:0; color:#cacaca; font-size:40px; font-weight:600; line-height:52px; letter-spacing:-0.8px; text-align:center;}

/* 공동연구실: 축소 썸네일 대신 제공 원본을 사용한다. */
.openlab-gallery{display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:32px;}
.openlab-gallery figure{min-width:0; margin:0;}
.openlab-gallery a{display:block; border-radius:12px; overflow:hidden;}
.openlab-gallery a:focus-visible{outline:3px solid #2563eb; outline-offset:4px;}
.openlab-gallery img{display:block; width:100%; height:auto;}
.openlab-gallery figcaption{margin-top:16px; color:#222; font-size:20px; font-weight:600; line-height:1.5;}
.openlab-gallery figcaption span{display:block; margin-top:4px; color:#666; font-size:14px; font-weight:400;}

















