/* 레이아웃 CSS */
#header {padding-top: 0; padding-bottom: 0;}
.gnb_wrap > .inner {position: relative; padding-top: 58px; display: flex; align-items: center; gap: 20px; flex-wrap: wrap;}
.gnb_wrap #logo_img,
.gnb_wrap #logo_img .responsive-image {width: auto; height: auto; max-width: 300px; max-height: 80px; object-fit: contain;}
.gnb_wrap .logo_wrap {float: none; margin-right: 0; line-height: 1;}
.gnb_wrap .logo_wrap li {line-height: 1;}
.gnb_wrap .logo_wrap a,
.gnb_wrap #logo_img,
.gnb_wrap #logo_img .responsive-image {display: block;}
.gnb_wrap nav a {font-size: 20px;}
.rows_gnb_wrap .cbp-hrmenu > ul > li > a {font-size: 20px; line-height: 56px;}
/* 모바일 햄버거 1차 메뉴 */
.cbp-hrmenu-btm > ul > li > a {font-size: 20px;}
.gnb_wrap .news_hd_top_date {position: absolute; top: 10px; left: 0; z-index: 3; display: inline-flex; align-items: center; gap: 8px; line-height: 34px; font-size: 18px; color: #25282B; white-space: nowrap;}
.gnb_wrap .news_hd_top_date .news_hd_top_date_icon_wrap {position: relative; width: 22px; height: 22px; flex-shrink: 0; color: #09244B;}
.gnb_wrap .news_hd_top_date .news_hd_top_date_icon {display: inline-flex; align-items: center; justify-content: center;}
.gnb_wrap .news_hd_top_date .news_hd_top_date_icon.is_off {display: none;}
.gnb_wrap .news_hd_top_date .news_hd_top_date_icon svg {display: block; width: 22px; height: 22px;}
.gnb_wrap .news_hd_top_date .news_hd_top_date_text {line-height: 1.2;}
.gnb_wrap .news_hd_top_date .news_hd_top_date_time {margin-left: 6px; font-family: 'font-H', sans-serif; font-size: 0.95em; letter-spacing: 0.02em; color: #09244B;}
.gnb_wrap .news_hd_top_date .news_hd_top_weather {display: inline-flex; align-items: center; gap: 4px; margin-left: 10px; color: #09244B; line-height: 1;}
.gnb_wrap .news_hd_top_date .news_hd_top_weather_icon_wrap {display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; flex-shrink: 0;}
.gnb_wrap .news_hd_top_date .news_hd_top_weather_icon {display: inline-flex; align-items: center; justify-content: center;}
.gnb_wrap .news_hd_top_date .news_hd_top_weather_icon svg {display: block; width: 20px; height: 20px;}
.gnb_wrap .news_hd_top_date .news_hd_top_weather_temp {font-size: 0.9em; letter-spacing: 0.02em; white-space: nowrap;}
.gnb_wrap .news_hd_top_date .news_hd_top_weather_temp:empty {display: none;}
.gnb_wrap .snb_wrap {position: absolute; top: 10px; right: 0; z-index: 3; float: none; display: flex; align-items: center; gap: 12px; line-height: 34px;}
.gnb_wrap .snb_wrap li {float: none;}
.gnb_wrap .snb_wrap .qm_wrap {display: none;}
.gnb_wrap .snb_wrap .qm_wrap a,
.gnb_wrap #ol_after_scrap {margin-top: 0;}
.gnb_wrap .snb_wrap .qm_wrap a {width: auto; min-width: 30px; padding-left: 4px; padding-right: 4px; line-height: 32px;}
.gnb_wrap .snb_wrap .member_info_wrap {display: none; margin-left: 0; line-height: 34px;}
.gnb_wrap .snb_wrap .my_btn_wrap {margin-left: 0;}
.gnb_wrap .snb_wrap .my_btn_wrap .btn_round {height: 34px; line-height: 34px; padding-left: 22px; padding-right: 22px;}
.gnb_wrap .snb_wrap .my_btn_wrap .btn_round.arr_bg {padding-right: 36px;}
.gnb_wrap .snb_wrap .rb_login_icon_btn {display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; padding: 0; border: 0; background: transparent; cursor: pointer;}
.gnb_wrap .snb_wrap .rb_login_icon_btn svg {display: block; width: 24px; height: 24px;}
.gnb_wrap .snb_wrap .rb_login_icon_btn:hover svg path {fill: #25282B;}

.rows_gnb_wrap {border-top:1px solid rgba(0,0,0,0.08); border-bottom:1px solid rgba(0,0,0,0.08); padding-top: 0; padding-bottom: 0; margin-top: 24px;}
.row_gnbs {position: relative;}
.rows_gnb_wrap .inner {padding-top: 0;}
.row_gnbs .cbp-hrmenu > ul, .cbp-hrmenu .cbp-hrsub-inner {padding-left: 0px; padding-right: 0px;}
.row_gnbs .cbp-hrmenu > ul > li {
  position: relative;
  padding-left: 0px;
  padding-right: 30px;
}
.row_gnbs .cbp-hrmenu > ul {float:none !important; line-height: 100%;}
.gnb_wrap .row_gnbs nav {float:none;}

/* PC 메인메뉴 호버 서브메뉴 — 메뉴 하단 구분선(border-bottom)부터, 상단 테두리 없음 */
.rows_gnb_wrap,
.row_gnbs,
.row_gnbs .cbp-hrmenu > ul {
  overflow: visible;
}
/* 서브메뉴 열림 시 하단 구분선은 패널 상단과 겹치도록 숨김(이중 라인 방지) */
.rows_gnb_wrap:has(.cbp-hropen) {
  border-bottom-color: transparent;
}
.row_gnbs .cbp-hrmenu .cbp-hrsub {
  top: 100% !important;
  margin-top: 0 !important;
  left: 0;
  margin-left: -30px;
  max-width: 560px !important;
  width: max-content;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12), 0 4px 12px rgba(0, 0, 0, 0.06) !important;
  border: 0 !important;
  border-right: 1px solid rgba(0, 0, 0, 0.08) !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
  border-left: 1px solid rgba(0, 0, 0, 0.08) !important;
  border-top: none !important;
  border-radius: 0 0 10px 10px !important;
  background: #fff !important;
  z-index: 99;
}
#cbp-hrmenu .cbp-hropen > .cbp-hrsub,
.row_gnbs .cbp-hrmenu > ul > li.cbp-hropen > .cbp-hrsub {
  margin-top: 0 !important;
  padding-top: 18px;
  padding-bottom: 18px;
  padding-left: 22px !important;
  padding-right: 22px !important;
}
.row_gnbs .cbp-hrmenu .cbp-hrsub-inner > div {
  min-width: 118px;
}
.row_gnbs .cbp-hrmenu .cbp-hrsub-inner > div a {
  padding-right: 12px;
}

.search_top_wrap {float:none; position: relative; width: 300px; flex: 0 0 300px; align-self: center; transform: translateY(2px);}
.search_top_wrap input {border:0px; background-color: #fff; border-radius: 60px; height:44px; width: 100%; color:#000;}
.search_top_wrap input::placeholder{font-family:'font-R',sans-serif; color:#999;}
.search_top_wrap button {position: absolute; top:13px; right:15px;}
.search_top_wrap input:focus {border:0px !important;}
.search_top_wrap_inner {position: relative;}
.news_hd_top_banner {flex: 0 0 auto; margin-top: 10px; margin-left: auto; box-sizing: border-box;}
.news_hd_top_banner:empty {min-height: 70px; min-width: 380px; border: 1px solid rgba(0,0,0,0.08); background: #fff;}
.news_hd_top_banner .mod_display_wrap,
.news_hd_top_banner .swiper-container,
.news_hd_top_banner .swiper-wrapper,
.news_hd_top_banner .swiper-slide {height: auto;}
.news_hd_top_banner img {display: block; width: auto; height: auto; max-width: 100%;}
.news_hd_top_banner .mod_display_wrap {visibility: visible; opacity: 1;}
.news_hd_top_banner .swiper-container .swiper-slide {visibility: visible;}
#google_notranslate_top {margin-left: 0 !important; position: relative; z-index: 20;}
.translation-links {top: 32px !important; right: -12px !important; left: auto !important; z-index: 9999 !important; display: none; align-items: center; gap: 8px; white-space: nowrap; box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.08) !important;}
#google_notranslate_top:hover .translation-links,
.translation-links:hover {display: flex !important;}
.translation-links a {margin: 0; display: inline-flex; align-items: center; justify-content: center;}
.translation-links::before {content: ''; position: absolute; top: -8px; left: 50%; transform: translateX(-50%); width: 0; height: 0; border-left: 8px solid transparent; border-right: 8px solid transparent; border-bottom: 8px solid #fff;}

/* 게시판 fixed 버튼 위치조정 */
.rb_bbs_wrap .btns_gr_wrap {top:185px !important;}

.co_header0 .rows_gnb_wrap {border-top:1px solid rgba(0,0,0,0.08); border-bottom:1px solid rgba(0,0,0,0.08);}
.co_header0 .search_top_wrap input {background-color: rgba(0,0,0,0.05);}
.ser_display_none .search_top_wrap_inner {display: none;}

#cbp-hrmenu .cbp-hrsub .cbp-hrsub-inner > div > ul > li{position: relative; min-height:32.2px;}
.cbp-hrmenu .cbp-hrsub-inner > div i {position: absolute; top:-5px; right:-5px; opacity: 0.5; transition: transform 220ms ease, opacity 220ms ease;}
#cbp-hrmenu .cbp-hrsub .cbp-hrsub-inner > div > ul > li:hover i {opacity: 0;}
.cbp-hrmenu .cbp-hrsub-inner > div a {padding-right: 20px;}

#cbp-hrmenu .cbp-hrsub-3{
    display: block;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    position: absolute;
    left: 100%;
    top: -10px;

    background-color: #fff;
    min-width: 120px;
    padding: 15px 20px;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.06), 0 12px 24px rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(0, 0, 0, 0.08);

    transform: translate3d(0, 6px, 0);
    transition: transform 220ms ease, opacity 220ms ease;
    z-index: 9
}

#cbp-hrmenu .cbp-hrsub > .cbp-hrsub-inner ul > li:hover > .cbp-hrsub-3{
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate3d(0, 0, 0);
}

#cbp-hrmenu .cbp-hrsub > .cbp-hrsub-inner ul > li:hover > .cbp-hrsub-3 a {padding-top: 4px; padding-bottom: 4px; font-family: 'font-R'; font-size: 13px; padding-right: 0px;}
#cbp-hrmenu .cbp-hrsub > .cbp-hrsub-inner ul > li:hover {position: relative;}

/* 모바일 헤더 1차 메뉴 그리드 (관리자 메뉴 연동, 햄버거 패널은 tail.php 유지) */
/* 브레이크포인트: 모바일 ≤767px | 태블릿 768–1024px(가로 GNB) | PC ≥1025px */
.news_hd_mo_menu_grid {display: none;}

/* 태블릿: 펼침(슬라이드) 메뉴 대신 PC형 가로 1줄 GNB */
@media all and (min-width:768px) and (max-width:1024px) {
    #header .gnb_wrap .rows_gnb_wrap {
        display: block !important;
        margin-top: 12px;
    }
    #header .gnb_wrap .news_hd_mo_menu_grid {
        display: none !important;
    }
    #header .gnb_wrap .tog_wrap.mobile {
        display: none !important;
    }
    #header #m_gnb_close_btn,
    #header #m_gnb_close_btn.active {
        display: none !important;
    }
    #header .gnb_wrap nav#cbp-hrmenu.cbp-hrmenu.pc {
        display: block !important;
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        left: auto !important;
        top: auto !important;
        z-index: auto !important;
        float: none !important;
        background: transparent !important;
        overflow: visible !important;
    }
    #header .gnb_wrap nav#cbp-hrmenu > ul {
        display: flex !important;
        flex-wrap: nowrap;
        float: none !important;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }
    #header .gnb_wrap nav#cbp-hrmenu > ul::-webkit-scrollbar {
        display: none;
    }
    #header .gnb_wrap nav#cbp-hrmenu > ul > li {
        float: none !important;
        flex: 0 0 auto;
        padding-right: 18px;
        white-space: nowrap;
    }
    #header .gnb_wrap nav#cbp-hrmenu > ul > li > a {
        float: none !important;
        display: block;
        font-size: 17px;
        line-height: 48px;
        white-space: nowrap;
    }
    #header .gnb_wrap > .inner {
        padding-top: 52px;
        display: flex;
        align-items: center;
        gap: 12px;
        flex-wrap: wrap;
    }
    #header .news_hd_top_banner {display: none;}
    #header .gnb_wrap .news_hd_top_date {
        top: 12px;
        left: 0;
        font-size: 16px;
    }
    #header .gnb_wrap .logo_wrap {
        margin-left: 0 !important;
        margin-right: 12px !important;
    }
    #header .gnb_wrap #logo_img,
    #header .gnb_wrap #logo_img .responsive-image {
        max-width: min(40vw, 260px);
        max-height: 62px;
    }
    #header .search_top_wrap {
        width: min(100%, 320px);
        flex: 1 1 200px;
        transform: none;
    }
    #header .gnb_wrap .inner {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    #header .gnb_wrap .snb_wrap {
        position: absolute;
        top: 10px;
        right: 0;
    }
}

/* 모바일: 햄버거 슬라이드 + 4열 그리드 */
@media all and (max-width:767px) {
    .rows_gnb_wrap {display: none;}
    /* mobile.css .gnb_wrap nav { position:fixed; width:250px } 회피 — nav 대신 div 사용 */
    .gnb_wrap .news_hd_mo_menu_grid {
        display: block;
        position: static;
        float: none;
        clear: both;
        width: 100%;
        max-width: 100%;
        height: auto;
        left: auto;
        top: auto;
        z-index: 1;
        box-sizing: border-box;
        border-top: 1px solid rgba(0, 0, 0, 0.08);
        border-bottom: 1px solid rgba(0, 0, 0, 0.08);
        margin-top: 14px;
        background: #fff;
    }
    .gnb_wrap .news_hd_mo_menu_grid a {
        float: none;
        display: flex;
    }
    .news_hd_mo_menu_grid_list {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        margin: 0;
        padding: 0;
        list-style: none;
    }
    .news_hd_mo_menu_grid_list > li {
        margin: 0;
        border-right: 1px solid rgba(0, 0, 0, 0.08);
        border-bottom: 1px solid rgba(0, 0, 0, 0.08);
        min-height: 58px;
        box-sizing: border-box;
    }
    .news_hd_mo_menu_grid_list > li:nth-child(4n) {
        border-right: 0;
    }
    .news_hd_mo_menu_grid_list > li a {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 58px;
        padding: 10px 6px;
        box-sizing: border-box;
        text-align: center;
        font-size: 15px;
        line-height: 1.4;
        color: #25282B;
        word-break: keep-all;
        overflow-wrap: anywhere;
    }
    .news_hd_mo_menu_grid_list > li a:hover,
    .news_hd_mo_menu_grid_list > li a:focus {
        color: var(--rb-main-color, #09244B);
    }
    .gnb_wrap > .inner {
        --news-hd-mo-tog-w: 32px;
        --news-hd-mo-tog-gap: 8px;
        padding-top: 58px;
        display: flex;
        align-items: center;
        gap: 8px;
        flex-wrap: wrap;
    }
    .news_hd_top_banner {display: none;}
    .gnb_wrap .tog_wrap {
        margin-right: 0 !important;
        flex: 0 0 var(--news-hd-mo-tog-w);
        width: var(--news-hd-mo-tog-w);
    }
    .gnb_wrap .tog_wrap li,
    .gnb_wrap .tog_wrap button {
        width: 100%;
        padding: 0;
        margin: 0;
        border: 0;
        background: transparent;
        display: flex;
        align-items: center;
        justify-content: flex-start;
    }
    .gnb_wrap .tog_wrap button svg {
        display: block;
        width: 24px;
        height: 22px;
        flex-shrink: 0;
    }
    .gnb_wrap .tog_wrap button svg path {
        fill: #000 !important;
    }
    .gnb_wrap .logo_wrap {
        margin-left: 0 !important;
        margin-right: 12px !important;
    }
    .gnb_wrap #logo_img,
    .gnb_wrap #logo_img .responsive-image {width: auto; height: auto; max-width: min(52vw, 240px); max-height: 58px; object-fit: contain;}
    .search_top_wrap {width: min(100%, 320px); flex: 1 1 180px; transform: none;}
    .gnb_wrap .news_hd_top_date {
        top: 12px;
        left: calc(var(--news-hd-mo-tog-w) + var(--news-hd-mo-tog-gap));
        font-size: 16px;
        gap: 6px;
    }
    .gnb_wrap .news_hd_top_date .news_hd_top_date_icon_wrap {
        display: none !important;
    }
    .gnb_wrap .news_hd_top_date .news_hd_top_date_icon svg {width: 20px; height: 20px;}
    .gnb_wrap .news_hd_top_date .news_hd_top_weather {margin-left: 8px; gap: 3px;}
    .gnb_wrap .news_hd_top_date .news_hd_top_weather_icon_wrap,
    .gnb_wrap .news_hd_top_date .news_hd_top_weather_icon svg {width: 18px; height: 18px;}
    .gnb_wrap .news_hd_top_date .news_hd_top_weather_temp {font-size: 0.88em;}
    .gnb_wrap .snb_wrap {position: absolute; top: 10px; right: 0; float: none; display: flex; align-items: center; width: auto; margin-bottom: 0; line-height: 34px;}
    .gnb_wrap .snb_wrap li {float: none;}
    .gnb_wrap .snb_wrap .qm_wrap {display: none;}
    .gnb_wrap .snb_wrap .qm_wrap a {width: auto; padding-left: 0px; margin-left: 20px;}

    /* 1.0.1 { */
    .mobile_cb {clear: both;}
    .search_top_wrap {display: block; float:none !important; margin-top: 0;}
    .gnb_wrap .snb_wrap .my_btn_wrap {display: block;margin-left: 20px;}
    .gnb_wrap .snb_wrap .my_btn_wrap .btn_round.arr_bg {display: none;}
    .gnb_wrap .snb_wrap .my_btn_wrap .btn_round {padding-left: 15px; padding-right: 15px; height:35px;}
    .gnb_wrap .snb_wrap .qm_wrap a span {left: 10px;}
    /* } */

    /* 1.1.1 { */
    .gnb_wrap .inner {padding-left: 0px !important; padding-right: 0px !important;}
    /* } */

}

@media all and (max-width:640px) {
    .gnb_wrap .news_hd_mo_menu_grid {
        margin-top: 12px;
    }
    .news_hd_mo_menu_grid_list > li {
        min-height: 54px;
    }
    .news_hd_mo_menu_grid_list > li a {
        min-height: 54px;
        padding: 9px 5px;
        font-size: 14px;
    }
    .gnb_wrap > .inner {
        --news-hd-mo-tog-w: 30px;
        --news-hd-mo-tog-gap: 8px;
        padding-top: 54px;
    }
    .gnb_wrap .tog_wrap button svg {
        width: 22px;
        height: 20px;
    }
    .gnb_wrap .news_hd_top_date {
        top: 8px;
        left: calc(var(--news-hd-mo-tog-w) + var(--news-hd-mo-tog-gap));
        font-size: 14px;
        gap: 5px;
    }
    .gnb_wrap .news_hd_top_date .news_hd_top_date_icon svg {width: 18px; height: 18px;}
    .gnb_wrap .news_hd_top_date .news_hd_top_weather {margin-left: 6px;}
    .gnb_wrap .news_hd_top_date .news_hd_top_weather_icon_wrap,
    .gnb_wrap .news_hd_top_date .news_hd_top_weather_icon svg {width: 16px; height: 16px;}
    .gnb_wrap .news_hd_top_date .news_hd_top_weather_temp {font-size: 0.85em;}
    .gnb_wrap .snb_wrap {top: 8px; right: 0; width: auto; margin-bottom: 0;}
}
