@charset "utf-8";
/* ------------------------------------------------------------------
 * theme.css — 레이아웃 / 상단 내비게이션(GNB)
 *
 * 구성
 *   .site-wrapper  페이지 전체 래퍼
 *   .inner         가운데 정렬 컨테이너 (max-width 는 각 레이아웃에서 지정)
 *   .gnb           상단 내비게이션 바
 *     .gnb-bar     메뉴를 가로로 균등 분할하는 줄
 *     .gnb-list / .gnb-item / .gnb-link     1depth
 *     .gnb-sub / .gnb-sub-list / .gnb-sub-item / .gnb-sub-link   드롭다운
 * ------------------------------------------------------------------ */

/* ── 리셋 ─────────────────────────────────────────────────────────── */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video{
    margin: 0; padding: 0; border: 0;
    font-size: 100%; font-weight: 400; font: inherit;
    font-family: 'Noto Sans KR', sans-serif;
}
.en, .ko, h1, h2, h3, h4, h5{ font-family: 'Noto Sans KR', sans-serif; }
body.device-pc .ko{ font-size: 12px; }
a{ color: #333; cursor: pointer; text-decoration: none; }
label{ font-weight: normal; }

/* ── 레이아웃 골격 ────────────────────────────────────────────────── */
.site-wrapper{ margin: 0 auto; background: #fff; }
.device-pc .page-body{ min-height: 600px; }

/* ── GNB ──────────────────────────────────────────────────────────── */
.gnb{
    position: relative; z-index: 3;
    background: #111; border: 0;
    box-shadow: 0 5px 5px -2px rgba(25, 25, 25, .15);
}
.gnb .gnb-link{ font-size: 15px; font-family: 'Noto Sans KR', sans-serif; }

/* 상단 바 — 화면 폭을 균등 분할해 배치 */
.gnb .gnb-bar{
    position: absolute; left: 0; top: 0; z-index: 10; width: 100%;
}
.gnb .gnb-bar .gnb-list{
    display: table; width: 100%; table-layout: fixed; margin: 0;
}
.gnb .gnb-bar .gnb-item{ display: table-cell; vertical-align: top; }
.gnb .gnb-bar .gnb-link{
    display: block; padding: 0; text-align: center;
    color: #fff; background: #111; font-weight: bold;
}
.gnb .gnb-bar .gnb-item:hover .gnb-link, .gnb .gnb-bar .gnb-item.on .gnb-link{ background: #333; }

/* 드롭다운 — 기본 숨김. 표시는 site.js 가 담당한다.
   visibility:visible 은 부모에서 물려받은 hidden 을 되돌리기 위한 것. */
.gnb .gnb-sub{
    display: none; visibility: visible;
    position: relative;
    background: #fff;
    box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
}
.gnb .gnb-bar .gnb-sub::before{ left: 50%; margin-left: -8px; }
.gnb .gnb-bar .gnb-sub-list, .gnb .gnb-bar .gnb-sub-item{ position: relative; }
.gnb .gnb-bar .gnb-sub-link{
    display: block; color: #000;
    padding: 5px 12px; line-height: 22px;
    border-bottom: 1px solid #eee;
}

/* 모바일에서는 PC 메뉴를 감춘다.
   이 규칙이 없으면 좁은 화면에서도 상단 가로 메뉴가 그대로 노출된다. */
@media all and (max-width: 991px) {
    .layout-responsive .gnb{ display: none; }
}

/* ── Bootstrap 각 잡기 ───────────────────────────────────────────── */
.btn, .pagination{ font-family: 'Noto Sans KR', sans-serif; }
.btn{ border-radius: 0 !important; }
.pagination li a{ border-radius: 0 !important; color: #333 !important; }
.pagination li.active a{ color: #fff !important; background: #444 !important; border-color: #444 !important; }
