﻿ 
@font-face {
    font-family: 'GmarketSans';
    font-style: normal;
    font-weight: 800;
    src:  url(webfont/GmarketSansTTF/GmarketSansTTFBold.ttf) format('truetype');
}

@font-face {
    font-family: 'GmarketSans';
    font-style: normal; 
    font-weight: 400;
    src:  url(webfont/GmarketSansTTF/GmarketSansTTFLight.ttf) format('truetype');
}

@font-face {
    font-family: 'GmarketSans';
    font-style: normal; 
    font-weight: 700;
    src:  url(webfont/GmarketSansTTF/GmarketSansTTFMedium.ttf) format('truetype');
}


@font-face {
 font-family: 'NanumBarunpen';
 src: url(webfont/NanumBarunpen/NanumBarunpenR.eot);
 src: url(webfont/NanumBarunpen/NanumBarunpenR.eot?#iefix) format('embedded-opentype'),
      url(webfont/NanumBarunpen/NanumBarunpenR.woff) format('woff'),
      url(webfont/NanumBarunpen/NanumBarunpenR.ttf) format('truetype');
}
@font-face {
 font-family: 'NanumBarunGothic';
 src: url(webfont/NanumBarunGothic/NanumBarunGothicWeb.eot);
 src: url(webfont/NanumBarunGothic/NanumBarunGothicWeb.eot?#iefix) format('embedded-opentype'),
      url(webfont/NanumBarunGothic/NanumBarunGothicWeb.woff) format('woff'),
      url(webfont/NanumBarunGothic/NanumBarunGothicWeb.ttf) format('truetype');
}
@font-face {
 font-family: 'NanumBareunGothicUltraLight';
 src: url(webfont/NanumBarunGothicL/NanumBarunGothicWebUltraLight.eot);
 src: url(webfont/NanumBarunGothicL/NanumBarunGothicWebUltraLight.eot?#iefix) format('embedded-opentype'),
      url(webfont/NanumBarunGothicL/NanumBarunGothicWebUltraLight.woff) format('woff'),
      url(webfont/NanumBarunGothicL/NanumBarunGothicWebUltraLight.ttf) format('truetype');
}
@font-face {
 font-family: 'NanumGothicEco';
 src: url(webfont/NanumEco/NanumGothicEco/NanumGothicEco.eot);
 src: url(webfont/NanumEco/NanumGothicEco/NanumGothicEco.eot?#iefix) format('embedded-opentype'),
      url(webfont/NanumEco/NanumGothicEco/NanumGothicEco.woff) format('woff'),
      url(webfont/NanumEco/NanumGothicEco/NanumGothicEco.ttf) format('truetype');
}
@font-face {
 font-family: 'NanumBrush';
 src: url(webfont/NanumBrush/NanumBrush.eot);
 src: url(webfont/NanumBrush/NanumBrush.eot?#iefix) format('embedded-opentype'),
      url(webfont/NanumBrush/NanumBrush.woff) format('woff'),
      url(webfont/NanumBrush/NanumBrush.ttf) format('truetype');
}
@font-face {
 font-family: 'NanumPen';
 src: url(webfont/NanumBrush/NanumPen.eot);
 src: url(webfont/NanumBrush/NanumPen.eot?#iefix) format('embedded-opentype'),
      url(webfont/NanumBrush/NanumPen.woff) format('woff'),
      url(webfont/NanumBrush/NanumPen.ttf) format('truetype');
}

@font-face {
 font-family: 'NanumSquare';
 src: url(webfont/NanumSquare/NanumSquareR.eot);
 src: url(webfont/NanumSquare/NanumSquareR.eot?#iefix) format('embedded-opentype'),
      url(webfont/NanumSquare/NanumSquareR.woff) format('woff'),
      url(webfont/NanumSquare/NanumSquareR.ttf) format('truetype');
}

@keyframes menu_move{
	0%{opacity:0;transform:scaleX(0);}
	100%{opacity:1;transform:scaleX(1);}
}


a:focus{outline:0;}

.black {color:black!important; border-bottom-color: black!important;}
.black > a {color:black!important;}


 
/* #dimodePage{display:block!important; overflow: hidden;} */
#loginForm{margin-top:100px!important;}
#joinForm{margin-top:100px!important;}
#findForm{margin-top:100px!important;}
/*#sub_title{font-size: 60px;font-weight:700; color: black; position:absolute; top:50%;left:50%; transform:translateX(-50%) translateY(-50%);}*/
.go_top {display:none;cursor: pointer;position: fixed; width: 87px;right: 70px; bottom: 17%;z-index: 999;height: 87px;}
body{font-family: 'NanumSquare', sans-serif;} 
.logo-wrap{transition: all .2s ease-in-out;width: 400px;float: left;margin-left: 4%;position: relative;height: 120px;}
/* .logo-wrap img{position: absolute;left: 0;top: 50%;-webkit-transform: translateY(-50%);-ms-transform: translateY(-50%);transform: translateY(-50%);} */
.container-fluid {
    padding: 0px;
    border-bottom: 1px solid black;
     width: calc(100% - 300px);
}
 


.row{margin:0px;}
.menu-icon{font-size:25px;    position: relative; top:3px;}
#gnb-wrap{position:fixed;top:0; width:100%;z-index:999; /*background:white;*/}
#sitemap-wrap{display:none;}
ul#gnb {
    /*float: right;*/
    display: flex;
    justify-content: flex-end;
    gap: 75px;
}
ul#gnb > li{width:max-content; position: relative; text-align:center; padding: 0 ; height: 120px;  font-weight:bold;  transition: all .2s ease-in-out;     display: flex;
    justify-content: flex-end;
    align-items: center;}
ul#gnb > li li{line-height:1.5;}
ul#gnb > li .subal{
/* background:black;  */
padding:10px 10px; }
ul#gnb > li > a{font-size:18px;color:black; text-decoration:none; letter-spacing: .54px; text-transform: uppercase;}
ul#gnb.white > li > a{ color:white;  }

ul#gnb > li a{text-decoration:none; display:block;}
ul#gnb > li a li {font-size:16px; color:white; margin-bottom:10px;}
/*ul#gnb > li:last-child{background: #1847b9;padding:0px 15px;    margin-left: 40px;width:200px!important; }
ul#gnb > li:last-child a{color:white;}*/


.layout-top.white{border-bottom:1px solid white;}

.login {max-width:95px!important; }
li.login.start {margin-left:50px;}
.ham-menu{max-width:75px!important;      padding-left: 30px !important;}
 
#gnb.white i.fa.fa-bars.menu-icon {color:white!important;}

.menu-icon{padding-right:15px;}
.subal {width: 150px;padding: 18px 13px;text-align: left;
/* background-color: #000; */ 
backdrop-filter:saturate(180%) blur(8px);-webkit-backdrop-filter: saturate(180%) blur(8px);
background: rgba(0, 0, 0, 0.08); /* 거의 티 안 나는 어두운 막 */
 position: absolute; left: 50%; z-index: 0;visibility: hidden;
    -webkit-transform: translateX(-50%);-ms-transform: translateX(-50%);transform: translateX(-50%);opacity: 0;top: 30px;-webkit-transition: opacity .2s ease-in-out,top .2s ease-in-out;
    -moz-transition: opacity .2s ease-in-out,top .2s ease-in-out;-o-transition: opacity .2s ease-in-out,top .2s ease-in-out;transition: opacity .2s ease-in-out,top .2s ease-in-out;
    word-break: keep-all;         border-radius: 10px;
}
.subal:before {
    /* content: '';position: absolute; left: 50%;top: -8px; */
    /* border-left: 8px solid transparent; border-right: 8px solid transparent; border-bottom: 8px solid #000;-webkit-transform: translateX(-50%); */
    /* -ms-transform: translateX(-50%);transform: translateX(-50%); -webkit-transition: opacity .2s ease-in-out;-moz-transition: opacity .2s ease-in-out; */
    /* -o-transition: opacity .2s ease-in-out; transition: opacity .2s ease-in-out; */

content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0.22),
        rgba(0, 0, 0, 0.08)
    );
    pointer-events: none;     border-radius: 10px;


}
.subal a {
    position: relative;
    z-index: 1;
    color: #fff;
    font-weight: 700;
    text-shadow:
        0 1px 3px rgba(0, 0, 0, 0.7),
        0 0 8px rgba(0, 0, 0, 0.35);
}

#sub_title {font-size: 40px;}



/*서브페이지 상단의 빵판*/
#subgnb2 img { width:100%; }
#subgnb2 { border-bottom:1px solid #ddd; padding:0px 0px;background-color: #F9F9F9;}
#subgnb2 .subgnb-home { float:right; display:inline-block; margin:12px 0px 0px 0px;}
#subgnb2 .container > div{margin: 10px 0; display: inline-block;}
#subgnb2 span, #subgnb2 a { font-size:16px; color:#777; position:relative; top:3px; text-decoration:none;}
#subgnb2 a.active { color:#6599CB; font-weight:bold; }
#subgnb2 .dropdown {display: inline-block;border-right: 1px solid #CCCCCC;float: left;}
#subgnb2 .dropdown:last-child{border:none;}
#subgnb2 .dropdown .btn { padding:10px 20px; font-size:17px; font-weight:bold;}
#subgnb2 .dropdown .btn-default { border:none;}
#subgnb2 .dropdown .btn:hover { background-color:transparent!important; transition:0.3s all ease;}
#subgnb2 .dropdown .btn,
#subgnb2 .dropdown .btn .active  { background-color:transparent!important; }
#subgnb2 .dropdown-menu>li>a { padding:10px 20px; transition:0.3s all ease; font-size:17px;}
#subgnb2 .caret {border-top: 6px solid #000;border-bottom: 6px solid transparent;border-right: 6px solid transparent;border-left: 6px solid #000;
position: relative;margin: 0;height: 8px;width: 8px;transform: rotate(225deg);transition: all 0.6s;margin-top: -15px;margin-left: 20px;}



/*사이트맵*/
.site-map {height:100%;background: white;display: none;transition: 0.3s all;padding-top: 100px; width: 100%;position: fixed;top:0;left:0;z-index: 998;}
.site-map .depth3 {padding-left: 30px;}
.site-map .depth3 > a {color: #8D8D8D !important;}
.site-map .navbar-nav{position: relative;left: 50%; transform: translate(-50%);}
.site-map .navbar-nav > li {padding: 40px;text-align: left !important;height: 800px;border-right: 1px solid #F2F2F2;}
.site-map .navbar-nav > li:first-child {border-left: 1px solid #F2F2F2;}
.site-map .navbar-nav > li > a {padding: 10px 0px;color: black;font-size: 18px;}
.site-map .navbar-nav > li ul li a {font-size: 16px;color: black;line-height: 1.7;}
.site-map hr {margin: 5px 0px 20px 0px;border: 2px solid #f1592a;width: 65px;}
.nav > li > a:focus, .nav > li > a:hover {background:none!important;}
/*사이트맵*/

/* all-menu */

.gnb-all { display: none; position: fixed; z-index: 9999; background: rgba(0, 0, 0, 0.7); top: 0; left: 0; width: 100%; height: 100%; text-align:left;}
.gnb-all a {color:#fff; text-decoration:none;}
.gnb-all img {margin:100px 0px 60px; max-width:300px; }
 .gnb-all .all-wrapper .container a { display: block; color: #fff; }
.gnb-all .all-wrapper .container > ul > li { display: inline-block; vertical-align: top; padding:0px 24px;}
.gnb-all .all-wrapper .container > ul > li > a { margin:0px 0px 18px; font-size: 25px; font-weight: 600; text-decoration:none;}
.gnb-all .all-wrapper .container > ul > li:first-child { display: none; }
.gnb-all .all-wrapper .container > ul > li > ul > li > a {     margin-top: 5px; color: #fff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size:20px; padding:6px 0px;}
.gnb-all .all-wrapper .container > ul > li > ul > li > a:hover { font-weight:bold; transition:0.2s all ease;}
.gnb-all .all-wrapper .container > ul > li > ul > li > ul > li > a { color: #fff; display: block; margin-bottom: 5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size:14px;}

.gnb-all .all-wrapper .container > ul > li > ul > li > ul > li:last-child > a {
    margin-bottom: 20px;
}

.gnb-all .all-wrapper {
   
}
.gnb-all .all-wrapper .container{position:relative;    display: flex;
    flex-direction: column;
    align-items: center;}
.gnb-all .all-wrapper .all-close { color: #fff; cursor: pointer; font-weight: 600; font-size: 4em;      position: absolute;
    right: 0;
    top: 80px;}
	
	 



ul#gnb-login {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 20px;
    margin: 0;
    padding: 0;
    list-style: none;
}













/*모바일*/
#mm-2,
#mm-3,
#mm-4,
#mm-5,
#mm-6,
#mm-7 { background:rgba(20, 30, 43, 0.96) !important; }
.mm-title, .mm-listview>li>a, .mm-listview>li>span { color:#fff !important; }
.mm-menu .mm-listview>li .mm-next:after { border-color:#fff !important; }
.mm-vertical .mm-panel{background-color:#fff;}
.mm-panels>.mm-panel.mm-hasnavbar{background-color:rgba(20, 30, 43, 0.9) !important;  }


#footer{background:rgba(0,0,0,1); text-align:left; padding: 3% 11%;}
#footer >div{width:100%; padding:0;     justify-content: space-between;    align-items: flex-end;}
#footer p{color:#fff; font-weight:500; font-size:17px;line-height: 2;}
#footer p a{color:#8D8D8D; }
.foot_log{display:inline-block;}
.foot_log table{border:0px; width:300px;}
.foot_log table td {text-align:center;}
.site-link{padding: 30px 0px;}
.site-link span{padding:0px 30px; color:rgb(207,205,192); font-size:16px; text-decoration:underline;}

.foot_info img{padding:1.5% 0;} 

#footer hr {    width: 35px;    text-align: left;    margin-left: 0;    border: 2px solid white;}

.foot_info_right p{    text-align: right;}


@media(min-width:1400px) {
    .container{width:1400px;}
}

@media(max-width:1870px) {
    ul#gnb { 
		gap: 2rem;
	}

}
 
@media(max-width:1670px) { 
	.logo-wrap {
        width: 300px;
    }

	.container-fluid { 
		width: calc(100% - 200px);
	}



}

@media(max-width:1450px) {
    /* ul#gnb > li{width:125px!important;} */
    .site-map .navbar-nav > li{padding:40px 20px;}
    .logo-wrap {
        width: 250px;
    }
}
@media(max-width:1370px) {
    /* ul#gnb > li{width:105px!important;}  */
    .logo-wrap {        width: 250px;    }
	ul#gnb > li > a {
    font-size: 18px;
	}
	
	.subtop-img >img {    height: 300px; object-fit:none;}
}
/* @media(max-width:1199px) { */
    /* .logo-wrap {  */
        /* width: 200px;  */
    /* } */


    /* ul#gnb > li{width:75px!important;} */
    /* ul#gnb li a{font-size:16px;} */
    /* ul#gnb > li:not(:last-child){width:100px;} */
    /* #gnb > li:last-child{margin:0px 0px 0px 5px;} */
    /* .logo-wrap{margin-left:20px!important;} */
    /* .site-map .navbar-nav > li{padding:40px 10px;} */
/* } */
/* @media(max-width:991px) { */
	 /* .header-mobile-gnb{float:right;position: absolute;top: 50%; transform: translateY(-50%); right: 15px;} */
    /* .fa-bars{font-size:30px;     color: black;} */
    /* .site-map{display:none!important;} */
	
	/* #footer >div {     flex-direction: column;} */
/* } */
/* @media (max-width:767px) { */
   /* .site-link span{display: block;} */
    /* #footer {        padding: 8% 3%;    } */
    /* .foot_info  { padding: 5% 3%;} */
    /* #footer p { line-height: 1.2; } */
	
	/* #gnb-wrap {    background: white!important;} */
	/* #subtop {     padding-top: 120px;} */

/* } */
 

/* ============================================
   반응형 보강 - layout.css
   PC 표준 (1400px↑) 영역은 건드리지 않음
   브레이크포인트: 1399 / 1199 / 1023 / 767 / 467
   1rem = 18px (PC 기준, 1023↓부터 자동 축소)
   ============================================ */

@media(max-width:1399px) {
    /* GNB 컨테이너 풀너비 해제 */
    .container-fluid { width: 100%; }

    .logo-wrap {
        width: 15rem;           /* ≈270px */
        margin-left: 3%;
    }

    ul#gnb { gap: 2.8rem; }
    ul#gnb > li { width: auto !important; }
    ul#gnb > li > a { font-size: 1rem; }

    .site-map .navbar-nav > li { padding: 2.2rem 1.1rem; }

    /* 서브탑 */
    .subtop-img > img {
        height: 18rem;
        object-fit: cover;
    }
    #sub_title { font-size: 2.1rem; }


	.gnb-all .all-wrapper .container > ul > li { 
		padding: 0px 20px;
	}




}

@media(max-width:1199px) {
    .logo-wrap {
        width: 12.5rem;
        height: 5.5rem;
        margin-left: 1.2rem !important;
    }
    .logo-wrap img { max-height: 3.8rem; }

    ul#gnb { gap: 1.8rem; }
    ul#gnb > li { height: 5.5rem; }
    ul#gnb > li > a { font-size: 0.95rem; }

    li.login.start { margin-left: 1.2rem; }
    .ham-menu { padding-left: 0.9rem !important; }

    .site-map .navbar-nav > li { padding: 2.2rem 0.6rem; }

    /* 서브탑 */
    .subtop-img > img { height: 16rem; }
    #sub_title { font-size: 1.9rem; }

    /* 사이트맵(전체메뉴) */
    .gnb-all .all-wrapper .container > ul > li { padding: 0 0.5rem; }
    .gnb-all .all-wrapper .container > ul > li > a { font-size: 1.3rem; }
    .gnb-all .all-wrapper .container > ul > li > ul > li > a { font-size: 1rem; }
}

@media(max-width:1023px) {
    /* 모바일 햄버거 모드 진입 */
    .container-fluid {
        width: 100%;
        padding: 0 1rem;
    }

    .logo-wrap {
        width: 11rem !important;
        height: 5rem;
        margin-left: 0.7rem !important;
    }
    .logo-wrap img {
        max-width: 100%;
        max-height: 3.5rem;
    }

    .header-mobile-gnb {
        float: right;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 1rem;
    }
    .fa-bars {
        font-size: 1.7rem;
        color: black;
    }
    .layout-top.white .header-mobile-gnb .fa-bars { color: #fff; }

    .site-map { display: none !important; }

    /* 서브탑 */
    .subtop-img > img { height: 14rem; }
    #sub_title { font-size: 1.7rem; }

    /* 서브 탭메뉴 */
    #subMenu { margin: 1.5rem 0; }
    #subMenu ul { padding: 0 3%; }
    #subMenu ul li {
        padding: 0 0.7rem;
        font-size: 0.95rem;
        line-height: 2.2rem;
    }

    /* 사이트맵(전체메뉴) */
    .gnb-all img {
        margin: 3.5rem 0 2.2rem;
        max-width: 13rem;
    }
    .gnb-all .all-wrapper .container > ul > li {
        display: block;
        padding: 0.4rem 0;
    }
    .gnb-all .all-wrapper .container > ul > li > a {
        font-size: 1.2rem;
        margin-bottom: 0.4rem;
    }
    .gnb-all .all-wrapper .container > ul > li > ul > li > a {
        font-size: 0.95rem;
        padding: 0.2rem 0;
    }

    /* 푸터 */
    #footer { padding: 6% 5%; }
    #footer > div {
        flex-direction: column;
        gap: 1.4rem;
        align-items: flex-start !important;
    }
    .foot_info_left, .foot_info_right { width: 100%; }
    .foot_info_right p { text-align: left; }
    #footer p {
        font-size: 0.95rem;
        line-height: 1.7;
    }
}

@media(max-width:767px) {
    #gnb-wrap { background: white !important; }
	
	 
	
    .layout-top { border-bottom: 1px solid #e5e5e5;height: 4.5rem; }
    .container-fluid.layout-top.white {
        border-bottom: 1px solid #e5e5e5;
    }

    .logo-wrap {
        width: 9rem !important;
        height: 4.2rem;
        margin-left: 0.6rem !important;
    }
    .logo-wrap img { max-height: 2.8rem; }

    .header-mobile-gnb a { color: #000 !important; }
    .header-mobile-gnb .fa-bars {
        color: #000 !important;
        font-size: 1.5rem;
    }

    /* 서브탑 */
    #subtop { padding-top: 4.5rem; }
    .subtop-img > img { height: 11rem; }
    .sub-desc { top: 65%; width: 90%; }
    #sub_title {
        font-size: 1.5rem;
        padding-bottom: 0.4rem;
        border-bottom-width: 3px;
    }

    /* 서브 GNB breadcrumb */
    #subgnb span, #subgnb a { font-size: 0.9rem; }
    #subgnb .subgnb-home { margin: 0.6rem; }

    /* 서브 탭메뉴 - 모바일 가로 스크롤 */
    #subMenu { margin: 1rem 0; }
    #subMenu ul {
        padding: 0;
        white-space: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        text-align: left;
    }
    #subMenu ul::-webkit-scrollbar { display: none; }
    #subMenu ul li {
        padding: 0 0.7rem;
        font-size: 0.9rem;
        line-height: 2.1rem;
    }

    /* 콘텐츠 */
    #content { margin-bottom: 3rem; }
    #content .container {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .board-title {
        font-size: 1.5rem;
        padding-bottom: 0.6rem;
        margin-top: 1.3rem;
        margin-bottom: 1.3rem;
    }

    /* 사이트맵(전체메뉴) */
    .gnb-all img {
        margin: 2.5rem 0 1.5rem;
        max-width: 11rem;
    }
    .gnb-all .all-wrapper .all-close {
        font-size: 3em;
        margin-top: 3vw;
        margin-right: 5vw;
    }
    .gnb-all .all-wrapper .container > ul > li > a {
        font-size: 1.1rem;
        margin-bottom: 0.4rem;
    }
    .gnb-all .all-wrapper .container > ul > li > ul > li > a {
        font-size: 0.9rem;
    }

    /* 하단 sitemap 숨김 */
    #sitemap-wrap { display: none; }

    /* 푸터 */
    #footer {
        padding: 8% 5%;
        text-align: left;
    }
    #footer > div { gap: 1.1rem; }
    #footer p {
        font-size: 0.9rem;
        line-height: 1.6;
    }
    #footer hr {
        width: 1.5rem;
        border-width: 1.5px;
    }
    .foot_info_right p { text-align: left; }

    /* 탑버튼 */
    .go_top {
        width: 3rem;
        height: 3rem;
        right: 1rem;
        bottom: 12%;
    }
}

@media(max-width:467px) {
    .logo-wrap {
        width: 8rem !important;
        height: 3.8rem;
    }
    .logo-wrap img { max-height: 2.5rem; }

    .header-mobile-gnb .fa-bars { font-size: 1.4rem; }

    #subtop { padding-top: 4rem; }
    .subtop-img > img { height: 9rem; }
    #sub_title { font-size: 1.3rem; }

    #subMenu ul li {
        padding: 0 0.5rem;
        font-size: 0.85rem;
    }

    .board-title { font-size: 1.3rem; }

    .gnb-all .all-wrapper .container > ul > li > a { font-size: 1rem; }
    .gnb-all .all-wrapper .container > ul > li > ul > li > a { font-size: 0.85rem; }

    #footer p { font-size: 0.85rem; }
    #footer { padding: 10% 5%; }
}

/* 2026 Pyeongtaek Daekwang draft layout */
html,
body {
    margin: 0;
    padding: 0;
    font-family: 'NanumSquare', 'NanumBarunGothic', sans-serif;
    color: #252a33;
}

body {
    min-width: 320px;
    background: #fff;
}

#gnb-wrap {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
    width: 100%;
    background: rgba(255,255,255,0.96);
    border-bottom: 0;
}

.container-fluid.layout-top {
    width: 100%;
    max-width: 1920px;
    height: 100px;
    margin: 0 auto;
    padding: 0 76px;
    border-bottom: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.layout-top.white {
    border-bottom: 0;
}

.dk-logo-text,
.logo-wrap.dk-logo-text {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    width: auto;
    height: auto;
    margin: 0;
    float: none;
    color: #111923;
    text-decoration: none;
}

.dk-logo-mark {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    color: #1473bd;
    border: 3px solid #1473bd;
    border-radius: 8px 8px 3px 3px;
    font-size: 22px;
    line-height: 1;
}

.dk-logo-text b {
    display: block;
    font-size: 25px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: -0.5px;
}

.dk-logo-text em {
    display: block;
    margin-top: 4px;
    color: #848b94;
    font-size: 8px;
    line-height: 1;
    font-style: normal;
    font-weight: 800;
    letter-spacing: 0;
}

ul#gnb {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 72px;
    margin: 0;
    padding: 0;
    list-style: none;
}

ul#gnb > li {
    display: flex;
    align-items: center;
    width: auto !important;
    height: 78px;
    padding: 0;
    font-weight: 800;
}

ul#gnb > li > a {
    color: #111923;
    font-size: 18px;
    font-weight: 800;
    letter-spacing: 0;
    text-decoration: none;
    white-space: nowrap;
}

ul#gnb.white > li > a {
    color: #111923;
}

.subal {
    top: 78px;
    width: 180px;
    border-radius: 0;
    background: rgba(31,38,48,0.88);
    z-index: 10000;
    padding: 14px 0 !important;
    pointer-events: auto;
}

ul#gnb > li .subal {
    padding: 14px 0;
}

ul#gnb > li .subal li {
    display: block;
    margin: 0;
    padding: 0;
    position: relative;
    text-align: left;
}

ul#gnb > li .subal li a {
    display: block;
    padding: 9px 18px;
    color: #fff;
    font-size: 14px;
    line-height: 1.35;
    font-weight: 700;
    white-space: nowrap;
}

ul#gnb > li:hover > .subal {
    visibility: visible;
    top: 78px;
    opacity: 1;
}

ul#gnb > li .subal .gnb-depth3 {
    position: absolute;
    top: 0;
    left: 100%;
    min-width: 150px;
    margin: 0;
    padding: 14px 0;
    list-style: none;
    visibility: hidden;
    opacity: 0;
    background: rgba(31,38,48,0.88);
    transition: opacity 0.2s ease;
}

ul#gnb > li .subal li:hover > .gnb-depth3 {
    visibility: visible;
    opacity: 1;
}

ul#gnb > li .subal .gnb-depth3 a {
    font-size: 14px;
    font-weight: 600;
}

.header-youtube {
    margin-left: 34px;
}

.header-youtube a {
    display: flex !important;
    align-items: center;
    gap: 6px;
    color: #222 !important;
    font-size: 13px !important;
}

.header-youtube .youtube-icon {
    width: 22px;
    height: 14px;
    border-radius: 3px;
    background: #e61f25;
    position: relative;
    flex: 0 0 22px;
}

.header-youtube .youtube-icon:after {
    content: "";
    position: absolute;
    top: 3px;
    left: 8px;
    border-left: 7px solid #fff;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
}

.header-youtube em {
    font-style: normal;
}

.header-util a {
    color: #858b94 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
}

.ham-menu {
    max-width: none !important;
    padding-left: 0 !important;
}

.menu-icon,
.ham-menu .menu-icon {
    padding-right: 0;
    color: #111923 !important;
    font-size: 22px !important;
}
 

#footer {
    background: #303541;
    padding: 76px 0 72px;
    text-align: left;
}

#footer > .container {
    width: 1400px;
    max-width: calc(100% - 40px);
    padding: 0;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

#footer .footer-logo {
    margin-bottom: 28px;
    color: #fff;
}

#footer .dk-logo-mark {
    color: #fff;
    border-color: #fff;
}

#footer .dk-logo-text em {
    color: rgba(255,255,255,0.52);
}

#footer p {
    margin: 8px 0 0;
    color: rgba(255,255,255,0.78);
    font-size: 13px;
    line-height: 1.65;
    font-weight: 500;
}

#footer p a {
    color: rgba(255,255,255,0.82);
}

.foot_info_right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.family-site {
    width: 210px;
    height: 38px;
    padding: 0 14px;
    border: 1px solid rgba(255,255,255,0.28);
    background: transparent;
    color: #fff;
    font-size: 13px;
}

.family-site option {
    color: #222;
}

.footer-sns {
    display: flex;
    gap: 28px;
    margin-top: 26px;
}

.footer-sns a {
    color: rgba(255,255,255,0.78);
    font-size: 13px;
    text-decoration: none;
}

@media (max-width: 1500px) {
    .container-fluid.layout-top {
        padding: 0 44px;
    }

    ul#gnb {
        gap: 36px;
    }
}

@media (max-width: 1199px) {
    .container-fluid.layout-top {
        height: 68px;
        padding: 0 24px;
    }

    .logo-wrap.dk-logo-text {
        width: auto !important;
        height: auto;
        margin: 0 !important;
    }

    ul#gnb {
        gap: 22px;
    }

    ul#gnb > li {
        height: 68px;
    }

    ul#gnb > li > a {
        font-size: 14px;
    }

    .header-util {
        display: none !important;
    }

    .header-youtube {
        margin-left: 8px;
    }
}

@media (max-width: 1023px) {
    #gnb-wrap {
        background: #fff !important;
    }

    .header-mobile-gnb {
        right: 24px;
    }

    .header-mobile-gnb a,
    .header-mobile-gnb .fa-bars {
        color: #111923 !important;
    }

    .header-youtube {
        display: none !important;
    }

    #footer > .container {
        flex-direction: column;
        gap: 30px;
    }

    .foot_info_right {
        align-items: flex-start;
    }
}

@media (max-width: 640px) {
    .container-fluid.layout-top {
        height: 62px;
        padding: 0 16px;
    }

    .dk-logo-mark {
        width: 28px;
        height: 28px;
        border-width: 2px;
        font-size: 18px;
    }

    .dk-logo-text b {
        font-size: 19px;
    }

    .dk-logo-text em {
        display: none;
    }

    #footer {
        padding: 48px 0;
    }
}

/* ============================================
   2026 shared layout responsive final pass
   Header / sub header / breadcrumb / sub menu / footer / mmenu
   Desktop (1920px) declarations above remain unchanged.
   ============================================ */

@media (min-width: 992px) and (max-width: 1199px) {
    #gnb-wrap .container-fluid.layout-top {
        padding-right: 1.5rem;
        padding-left: 1.5rem;
    }

    #gnb-wrap .logo-wrap img {
        display: block;
        width: auto;
        max-width: 13rem;
        max-height: 3.5rem;
    }

    #gnb-wrap ul#gnb {
        gap: 1.35rem;
    }

    .gnb-all .all-wrapper {
        height: 100%;
        overflow-y: auto;
    }

    .gnb-all .all-wrapper .container > ul {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        width: 100%;
        padding: 0 1.5rem 3rem;
    }

    .gnb-all .all-wrapper .container > ul > li {
        display: block;
        min-width: 0;
        padding: 1rem;
    }
}

@media (max-width: 1199px) {
    #footer > .container {
        width: auto;
        max-width: calc(100% - 3rem);
    }

    body .subTitle,
    body .sub-depth3-menu > .container {
        width: auto;
        max-width: calc(100% - 2rem);
    }
}

@media (max-width: 991px) {
    #gnb-wrap {
        z-index: 10000;
        background: #fff !important;
        box-shadow: 0 1px 0 rgba(17, 25, 35, 0.08);
    }

    #gnb-wrap .container-fluid.layout-top {
        position: relative;
        justify-content: center;
        width: 100%;
        height: 4.5rem;
        padding: 0 1.25rem;
    }

    #gnb-wrap .logo-wrap.dk-logo-text {
        display: flex;
        width: auto !important;
        height: auto;
        max-width: calc(100% - 6rem);
        margin: 0 !important;
    }

    #gnb-wrap .logo-wrap img {
        display: block;
        width: auto;
        max-width: 11rem;
        max-height: 3.35rem;
    }

    #gnb-wrap .header-mobile-gnb {
        position: absolute;
        top: 50%;
        right: 1.25rem;
        float: none;
        transform: translateY(-50%);
    }

    #gnb-wrap .header-mobile-gnb a {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 2.75rem;
        height: 2.75rem;
        color: #111923 !important;
    }

    #gnb-wrap .header-mobile-gnb .fa-bars {
        color: #111923 !important;
        font-size: 1.65rem;
    }

    body #subtop {
        padding-top: 4.5rem;
    }

    body .subtop-img {
        overflow: hidden;
    }

    body .subtop-img > img {
        display: block;
        width: 100%;
        height: 13rem;
        object-fit: cover;
        object-position: center;
    }

    #subgnb2 {
        height: auto;
        min-height: 3.75rem;
    }

    #subgnb2 > .container {
        width: 100%;
        padding-right: 1rem;
        padding-left: 1rem;
    }

    #subgnb2 .container > div {
        display: flex;
        flex-wrap: wrap;
        align-items: stretch;
        width: 100%;
        margin: 0.5rem 0;
    }

    #subgnb2 .dropdown {
        float: none;
        display: block;
        margin: 0;
    }

    #subgnb2 .dropdown .btn {
        min-height: 2.75rem;
        padding: 0.7rem 1rem;
        font-size: 1rem;
        line-height: 1.25;
        white-space: nowrap;
    }

    #subgnb2 .dropdown-menu {
        z-index: 1000;
        min-width: 12rem;
    }

    #subgnb2 .dropdown-menu > li > a {
        padding: 0.7rem 1rem;
        font-size: 0.95rem;
    }

    #subgnb2 .caret {
        width: 0.55rem;
        height: 0.55rem;
        margin-top: -0.75rem;
        margin-left: 1rem;
        border-width: 0.3rem;
    }

    body .subTitle {
        display: block;
        width: 100%;
        max-width: none;
        min-height: 0;
        padding: 0 1rem;
        text-align: left;
    }

    body .sub-title-menu {
        justify-content: flex-start;
        width: 100%;
        margin: 1.25rem 0;
        padding: 0 0 0.55rem;
        overflow-x: auto;
        overflow-y: hidden;
        scrollbar-width: thin;
    }

    body .sub-title-menu > li {
        padding: 0.3rem 1rem;
    }

    body .sub-title-menu > li:first-child {
        padding-left: 0;
    }

    body .sub-title-menu > li > a,
    body .sub-title-menu > li.active > a {
        font-size: 1rem;
        white-space: nowrap;
    }

    body .sub-depth3-menu > .container {
        width: 100%;
        max-width: none;
        padding: 0 1rem;
    }

    body .sub-depth3-menu ul {
        justify-content: flex-start;
        flex-wrap: nowrap;
        gap: 0;
        padding: 1rem 0;
        overflow-x: auto;
        overflow-y: hidden;
        scrollbar-width: thin;
    }

    body .sub-depth3-menu li {
        flex: 0 0 auto;
        padding: 0 1rem;
    }

    body .sub-depth3-menu li:first-child {
        padding-left: 0;
    }

    body .sub-depth3-menu li + li:before {
        left: 0;
    }

    body .sub-depth3-menu a {
        font-size: 1rem;
        white-space: nowrap;
    }

    .mm-menu.mm-offcanvas {
        width: min(82vw, 22rem) !important;
        min-width: 0 !important;
        max-width: none !important;
    }

    .mm-menu .mm-navbar {
        height: 3rem;
    }

    .mm-menu .mm-navbar .mm-title {
        font-size: 1rem;
        line-height: 3rem;
    }

    .mm-menu .mm-panels > .mm-panel.mm-hasnavbar {
        padding-top: 3rem;
    }

    .mm-menu .mm-listview > li > a:not(.mm-next),
    .mm-menu .mm-listview > li > span {
        padding-top: 0.85rem;
        padding-bottom: 0.85rem;
        font-size: 1rem;
        line-height: 1.35;
    }

    .mm-menu .mm-listview > li .mm-next {
        width: 3.25rem;
    }

    #footer {
        padding: 3.5rem 0;
    }

    #footer > .container {
        width: auto;
        max-width: calc(100% - 2.5rem);
        gap: 2rem;
        padding: 0;
    }

    #footer .foot_info_left,
    #footer .foot_info_right {
        width: 100%;
        padding: 0;
    }

    #footer .footer-logo {
        margin-bottom: 1.5rem;
    }

    #footer .footer-logo img {
        display: block;
        width: auto;
        max-width: 13rem;
        height: auto;
    }

    #footer p {
        font-size: 0.9rem;
        line-height: 1.7;
        word-break: keep-all;
    }

    #footer .foot_info_right {
        align-items: flex-start;
    }

    .family-site {
        width: min(100%, 22rem);
        height: 2.75rem;
        font-size: 0.9rem;
    }

    .footer-sns {
        flex-wrap: wrap;
        gap: 1rem 1.5rem;
        margin-top: 1.5rem;
    }

    .footer-sns a {
        font-size: 0.9rem;
    }
}

@media (max-width: 767px) {
    body .subtop-img > img {
        height: 9.5rem;
    }

    #subgnb2 > .container {
        padding-right: 0.75rem;
        padding-left: 0.75rem;
    }

    #subgnb2 .dropdown .btn {
        min-height: 2.6rem;
        padding: 0.65rem 0.8rem;
        font-size: 0.95rem;
    }

    #subgnb2 .caret {
        margin-left: 0.75rem;
    }

    body .subTitle,
    body .sub-depth3-menu > .container {
        padding-right: 0.75rem;
        padding-left: 0.75rem;
    }

    body .sub-title-menu > li,
    body .sub-depth3-menu li {
        padding-right: 0.85rem;
        padding-left: 0.85rem;
    }

    #footer > .container {
        max-width: calc(100% - 2rem);
    }

    #footer p {
        font-size: 0.88rem;
        line-height: 1.65;
    }

    .family-site {
        width: 100%;
    }
}

@media (max-width: 640px) {
    #gnb-wrap .container-fluid.layout-top {
        height: 4.25rem;
        padding-right: 1rem;
        padding-left: 1rem;
    }

    #gnb-wrap .logo-wrap img {
        max-width: 9.5rem;
        max-height: 2.8rem;
    }

    #gnb-wrap .header-mobile-gnb {
        right: 0.85rem;
    }

    #gnb-wrap .header-mobile-gnb a {
        width: 2.5rem;
        height: 2.5rem;
    }

    #gnb-wrap .header-mobile-gnb .fa-bars {
        font-size: 1.5rem;
    }

    body #subtop {
        padding-top: 4.25rem;
    }

    body .subtop-img > img {
        height: 9rem;
    }
}

@media (max-width: 467px) {
    #subgnb2 .container > div {
        margin: 0.35rem 0;
    }

    #subgnb2 .dropdown .btn {
        min-height: 2.45rem;
        padding: 0.55rem 0.6rem;
        font-size: 0.9rem;
    }

    #subgnb2 .caret {
        width: 0.45rem;
        height: 0.45rem;
        margin-top: -0.65rem;
        margin-left: 0.55rem;
        border-width: 0.25rem;
    }

    body .sub-title-menu > li > a,
    body .sub-title-menu > li.active > a,
    body .sub-depth3-menu a {
        font-size: 0.95rem;
    }

    #footer {
        padding: 3rem 0;
    }

    #footer .footer-logo img {
        max-width: 11rem;
    }

    #footer p {
        font-size: 0.85rem;
    }

    .footer-sns {
        gap: 0.85rem 1.1rem;
    }

    .footer-sns a {
        font-size: 0.85rem;
    }
}

/* 2026 mobile menu - legacy translucent menu styling */
@media (max-width: 991px) {
    #my-menu.mm-menu {
        border-left: 1px solid rgba(255, 255, 255, 0.16);
        background: rgba(20, 30, 43, 0.8) !important;
        box-shadow: -1rem 0 2.5rem rgba(0, 0, 0, 0.2);
        -webkit-backdrop-filter: blur(1rem) saturate(140%);
        backdrop-filter: blur(1rem) saturate(140%);
    }

    #my-menu .mm-navbars-top {
        position: absolute;
        height: 3.25rem;
        border-bottom: 1px solid rgba(255, 255, 255, 0.14);
        background: rgba(7, 14, 23, 0.42) !important;
    }

    #my-menu .mm-navbars-top:before {
        content: "MENU";
        position: absolute;
        top: 50%;
        left: 1.25rem;
        z-index: 1;
        color: rgba(255, 255, 255, 0.72);
        font-size: 0.72rem;
        font-weight: 800;
        line-height: 1;
        letter-spacing: 0.14em;
        transform: translateY(-50%);
        pointer-events: none;
    }

    #my-menu .mm-navbars-top .mm-navbar {
        height: 3.25rem;
        padding: 0 3.25rem;
        background: transparent !important;
    }

    #my-menu .mm-navbars-top .mm-title {
        color: rgba(255, 255, 255, 0.82) !important;
        font-size: 0.85rem;
        font-weight: 700;
        line-height: 3.25rem;
        letter-spacing: 0.12em;
    }

    #my-menu .mm-navbars-top .mm-close {
        top: 0 !important;
        right: 0 !important;
        left: auto !important;
        width: 3.25rem;
        height: 3.25rem;
    }

    #my-menu .mm-navbars-top .mm-close:before,
    #my-menu .mm-navbars-top .mm-close:after {
        border-color: rgba(255, 255, 255, 0.9);
    }

    #my-menu .mm-panels,
    #my-menu .mm-panels > .mm-panel,
    #my-menu .mm-panels > .mm-panel.mm-hasnavbar {
        background: rgba(20, 30, 43, 0.72) !important;
    }

    #my-menu .mm-panels {
        top: 3.25rem;
    }

    #my-menu .mm-panels > .mm-panel.mm-hasnavbar {
        padding-top: 0 !important;
    }

    #my-menu .mm-panel > .mm-navbar {
        display: none !important;
    }

    #my-menu .mm-listview,
    #my-menu .mm-listview > li:after {
        border-color: rgba(255, 255, 255, 0.12);
    }

    #my-menu .mm-listview > li > a:not(.mm-next),
    #my-menu .mm-listview > li > span {
        min-height: 3.15rem;
        box-sizing: border-box;
        padding: 0.9rem 1.25rem !important;
        color: #fff !important;
        font-size: 1rem;
        font-weight: 700;
        line-height: 1.35;
    }

    #my-menu .mm-listview > li > a:not(.mm-next):hover,
    #my-menu .mm-listview > li.mm-selected > a:not(.mm-next) {
        background: rgba(255, 255, 255, 0.1);
    }

    #my-menu .mm-listview > li .mm-next {
        width: 3.25rem;
        height: 3.15rem;
        border-color: rgba(255, 255, 255, 0.12);
    }

    #my-menu .mm-listview > li .mm-next:after,
    #my-menu .mm-btn:before,
    #my-menu .mm-btn:after {
        border-color: rgba(255, 255, 255, 0.86) !important;
    }

    #my-menu .dk-mobile-account {
        display: block;
        padding: 0.8rem 1rem;
        border-bottom: 1px solid rgba(255, 255, 255, 0.16);
        background: rgba(255, 255, 255, 0.04);
    }

    #my-menu .dk-mobile-account-links {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: 0;
        white-space: nowrap;
    }

    #my-menu .dk-mobile-account-links a {
        display: inline-block !important;
        min-height: 0;
        padding: 0.1rem 0.65rem !important;
        border: 0;
        border-radius: 0;
        background: transparent;
        color: rgba(255, 255, 255, 0.8) !important;
        font-size: 0.76rem !important;
        font-weight: 600;
        line-height: 1.25;
        text-align: center;
        text-decoration: none;
    }

    #my-menu .dk-mobile-account-links a + a {
        border-left: 1px solid rgba(255, 255, 255, 0.28);
    }

    #my-menu .dk-mobile-account-links a:hover,
    #my-menu .dk-mobile-account-links a:focus {
        background: transparent;
        color: #fff !important;
    }

    #my-menu .mmenu-depth2 > a:not(.mm-next) {
        color: #e9e2bd !important;
    }

    #my-menu .mmenu-depth3 > a:not(.mm-next) {
        color: #bfe9ee !important;
        font-weight: 600;
    }
}

@media (max-width: 467px) {
    #my-menu .dk-mobile-account {
        padding-right: 0.7rem;
        padding-left: 0.7rem;
    }

    #my-menu .dk-mobile-account-links a {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
        font-size: 0.72rem !important;
    }
}
