/*
Theme Name: CSLab 
Author URI: http://webthemez.com/
Description: This theme is a best responsive web template. It would be great for a corporate websites, business websites, personal blog.
License: Free to use for personal and commercial, but you need to place back link in the bottom of the template.
*/
@import url(http://fonts.googleapis.com/css?family=Roboto:400,900,500);

/* ==========================================================
   RESET & TYPOGRAPHY
   ========================================================== */

* {
    margin: 0;
    padding: 0;
    font-family: 'Roboto', 'sans-serif', arial;
}

body {
    font-size: 14px;
    font-family: 'Roboto', 'sans-serif';
    -webkit-font-smoothing: antialiased;
    background: #fff;
    margin-top: 60px;
}

::selection {
    color: #fff;
    background: #1371AF;
}

::-moz-selection {
    color: #fff;
    background: #1371AF;
}

p {
    color: #858585;
}

.pDark p {
    color: #2B2B2B;
}

h2 {
    font-variant: small-caps;
    font-size: 3em;
}

h3 {
    font-variant: small-caps;
    font-size: 2em;
}

a {
    color: #1371AF;
    text-decoration: none;
    text-shadow: none;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -ms-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear;
}

a:hover {
    color: #2593DB;
    text-decoration: none;
}

/* ==========================================================
   BUTTONS / FORMS / UTILITIES
   ========================================================== */

.button-outline {
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    vertical-align: middle;
    color: #fff;
    padding: 10px 25px;
    border: 2px solid #fff;
    border-radius: 0px;
    font-size: 16px;
    font-weight: 400;
    background: rgba(255,255,255,0.15);
}

.button-outline:hover {
    color: #fff;
    background: rgba(255,255,255,0.35);
}

.btn {
    border: 0px;
    border-radius: 0px;
    font-weight: 200;
}

.btn:hover {
    background: #2593DB;
}

.btn-primary {
    background: #1371AF;
}

.btn-dark {
    background: #444;
    color: #fff;
}

.btn-dark:hover {
    background: #000;
    color: #fff;
}

.form-control {
    border-radius: 0px;
}

.mrgn30 {
    margin: 30px 0;
}

hr {
    border-color: #ddd;
}

/* ==========================================================
   LAYOUT / GLOBAL
   ========================================================== */

#top {
    position: relative;
}

.topHome {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 5;
}

.tray {
    border: 1px solid #1371AF;
    padding: 12px;
    margin-bottom: 15px;
    border-radius: 10px;
}

.tray .fa {
    color: #1371AF;
    display: block;
    text-align: center;
    font-size: 3em;
}

.page-section {
    width: 100%;
    height: auto;
    padding: 0;
}

.page-section h1 {
    font-size: 3.5em;
    margin: 90px 0 30px;
    line-height: 1.2em;
}

.page-section h1 span {
    font-weight: 200;
}

.page-section h2 {
    color: #1371AF;
}

.page-section p {
    font-size: 1.1em;
    line-height: 1.6em;
}

.darkBg {
    background: #2d3538;
}

.darkBg .media {
    margin-bottom: 20px;
}

#services .fa {
    color: #E0E0E0;
    font-size: 40px;
    height: 68px;
    width: 68px;
    line-height: 68px;
    margin-right: 10px;
    background-color: rgba(255, 255, 255, 0.09);
    text-align: center;
    display: block;
    border-radius: 10%;
    -webkit-transition: 500ms;
    -moz-transition: 500ms;
    -o-transition: 500ms;
    transition: 500ms;
}

.item-content .fa {
    color: #80878F !important;
}

.img-circle {
    border-radius: 5%;
}

.heading {
    padding-bottom: 30px;
}

.heading p {
    font-size: 1.2em;
}

.pdingBtm30 {
    padding-bottom: 30px;
}

.copyright {
    color: #6D6D6D;
    background: #202527;
    padding: 20px 0;
}

.socialIcons {
    float: left;
    margin-right: 20px;
}

.socialIcons li {
    list-style: none;
    display: inline;
    margin-right: 6px;
}

/* ==========================================================
   HEADER / NAVBAR
   ========================================================== */

#main-nav {
    background: white;
}

.header {
    position: fixed;
    width: 100%;
    background: transparent;
    z-index: 10;
    border-radius: 0;
}

.header .navbar-brand {
    float: left;
    padding: 16px 15px;
    line-height: 18px;
    height: 50px;
}

.navbar-brand b {
    color: #1371AF;
}

.logo {
    font-size: 2.2em;
    text-shadow: none;
}

.logo:hover {
    color: #5A5A5A;
}

.header .navbar {
    margin: 0;
    background: #fff;
    border: 0;
}

.header .navbar, 
.navbar-inverse {
    background: none;
}

.navbar-inverse .navbar-brand:hover, 
.navbar-inverse .navbar-brand:focus {
    color: #2593DB;
    box-shadow: none;
}

.navbar-inverse .navbar-toggle {
    border-color: #1371AF;
    background-color: #1371AF;
}

.navbar-inverse .navbar-toggle:hover, 
.navbar-inverse .navbar-toggle:focus {
    background: #1371AF;
}

.navbar-inverse .navbar-toggle:hover .icon-bar {
    background: #fff;
}

.navbar-inverse .navbar-nav > li > a {
    color: #858585;
    font-size: 1.2em;
}

.navbar-inverse .navbar-nav > li > a:hover, 
.navbar-inverse .navbar-nav > li > a:focus {
    color: #1371AF;
}

.navbar-inverse .navbar-nav > .active > a, 
.navbar-inverse .navbar-nav > .active > a:hover, 
.navbar-inverse .navbar-nav > .active > a:focus {
    color: #1371AF;
    background: none;
}

.navbar-nav > li:hover, 
.navbar-nav > li a:hover {
    color: #1371AF;
}

.header .navbar-nav > li > a {
    padding: 25px 18px;
}

/* ==========================================================
   BANNER
   ========================================================== */

#overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 0;
    background-size: 2px 100%;
    background: url("../images/overlay.png") rgba(0,0,0,.6) !important;
}

.banner-container {
    width: 100%;
    position: relative;
    padding: 0px;
    box-shadow: 0px 0px 1px rgba(0,0,0,0.4);
    max-height: 600px;
    height: 600px;
    background: #0d1836 url("../images/banner-bg.jpg") left bottom no-repeat;
    background-size: cover;
}

.bannerOverlay {
    content: '';
    width: 100%;
    position: absolute;
    background-image: url(../images/bg_line.png);
    background-repeat: repeat;
    max-height: 600px;
    height: 600px;
    z-index: 1;
}

.banner-content {
    position: relative;
    z-index: 3;
}

.banner-content h2 {
    color: #fff;
    font-size: 3.5em;
    margin: 2% 0 30px;
    line-height: 1.2em;
}

.banner-content p {
    font-size: 1.9em;
    font-weight: normal;
    color: #B9B9B9;
}

/* ==========================================================
   TEAM
   ========================================================== */

.team-member {
    margin-bottom: 15px;
}

.team-member .designation {
    margin-top: 5px;
    display: block;
    font-size: 13px;
}

.team-member .member-img img {
    max-width: 250px;
    margin: 0 auto;
}

.team-member h3 {
    font-size: 22px;
    line-height: 32px;
    margin: 10px 0 0 15px;
}

.team-member .pos {
    display: block;
    color: #fff;
    margin: 0 0 0 15px;
}

.team-member .contact a {
    padding: 0 8px;
}

.descrition {
    min-height: 90px;
    padding: 5px 15px;
}

/* ==========================================================
   PORTFOLIO
   ========================================================== */

.isotopeWrapper article {
    margin-bottom: 30px;
}

#portfolio img {
    width: 100%;
}

#portfolio article p {
    margin-bottom: 1.45em;
}

nav#filter {
    margin-bottom: 1.5em;
}

nav#filter li {
    display: inline-block;
    margin: 0 0 0 5px;
}

nav#filter a {
    padding: 4px 12px;
    line-height: 20px;
    border: 1px solid #1371AF;
    text-decoration: none;
}

.current {
    background: #1371AF;
    color: #fff;
}

.portfolio-items article img {
    width: 100%;
}

.portfolio-item {
    display: block;
    position: relative;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

.portfolio-item img {
    -webkit-transition: all 300ms linear;
    -moz-transition: all 300ms linear;
    -o-transition: all 300ms linear;
    -ms-transition: all 300ms linear;
    transition: all 300ms linear;
}

.portfolio-item .portfolio-desc {
    display: block;
    opacity: 0;
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    color: rgba(220, 220, 220);
}

.fancybox-overlay {
    background: rgba(0, 0, 0, 0.64);
}

.portfolio-item:hover .portfolio-desc {
    padding-top: 20%;
    height: 100%;
    transition: all 200ms ease-in-out 0s;
    opacity: 1;
    background: rgba(19, 113, 175, 0.70);
}

.portfolio-item .portfolio-desc a {
    color: #fff;
    text-align: center;
    display: block;
}

.portfolio-item .portfolio-desc a:hover {
    text-decoration: none;
}

.portfolio-item .portfolio-desc .folio-info {
    top: -20px;
    padding: 30px;
    height: 0;
    opacity: 0;
    position: relative;
}

.portfolio-item:hover .folio-info {
    height: 100%;
    opacity: 1;
    transition: all 500ms ease-in-out 0s;
    top: 5px;
}

.portfolio-item .portfolio-desc .folio-info h5 {
    text-transform: uppercase;
    text-align: center;
    font-weight: bold;
    font-size: 1.4em;
}

.portfolio-item .portfolio-desc .folio-info p {
    color: #ffffff;
    font-size: 12px;
}

/* ==========================================================
   FOOTER
   ========================================================== */

footer {
    background-color: #242424;
    color: #8e8e8e;
    font-size: 14px;
    padding-top: 20px;
}

footer ul li {
    list-style: none;
}

.contact ul li {
    margin-bottom: 10px;
}

.contact ul li i {
    margin-right: 15px;
}

/* ==========================================================
   DARK THEME OVERRIDE (Cyber Safety Lab)
   ========================================================== */

/* 배경/글자/기본 폰트 크기 */
body {
    background-color: #000000 !important;
    color: #ffffff !important;
    font-size: 18px !important;
    line-height: 1.75 !important;
}

/* 섹션 배경 */
.page-section,
.pDark,
.darkBg {
    background-color: #000000 !important;
    color: #ffffff !important;
}

/* 본문 글자 */
p,
.section-text,
.list-unstyled li {
    color: #e6e6e6 !important;
    font-size: 18px !important;
}

/* 모든 제목 */
h1, h2, h3, h4, h5, h6,
.heading h2 {
    color: #ffffff !important;
}

/* 링크 색상 */
a {
    color: #66b2ff !important;
}

a:hover {
    color: #99ccff !important;
}

/* 네비게이션 바 전체를 다크로 */
.header .navbar,
.navbar-inverse,
.navbar-inverse .navbar-collapse,
.navbar-inverse .navbar-form {
    background-color: #000000 !important;
    border-color: #000000 !important;
}

/* 메뉴 글자 */
.navbar-inverse .navbar-nav > li > a {
    color: #dddddd !important;
    font-size: 17px !important;
}

/* 메뉴 Hover / Active */
.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > .active > a,
.navbar-inverse .navbar-nav > .active > a:hover,
.navbar-inverse .navbar-nav > .active > a:focus {
    color: #ffffff !important;
    background-color: #222222 !important;
    border-radius: 2px;
}

/* Brand (로고 텍스트) */
.navbar-inverse .navbar-brand {
    color: #ffffff !important;
    background-color: #000000 !important;
}

/* 모바일 토글버튼 */
.navbar-inverse .navbar-toggle {
    background-color: #222 !important;
    border-color: #444 !important;
}

.navbar-inverse .navbar-toggle .icon-bar {
    background-color: #ffffff !important;
}

/* Tray (About Us 아이콘 박스) */
.tray {
    border: 1px solid #337ab7 !important;
    background-color: #090909 !important;
}

.tray .fa {
    color: #4fa3ff !important;
}

/* PI Profile text */
.pi-profile-text {
    color: #f0f0f0 !important;
    font-size: 18px !important;
    line-height: 1.8 !important;
}

/* Latest News 리스트 */
ul.section-text li {
    margin-bottom: 12px;
    font-size: 18px !important;
}

/* Footer / Copyright */
footer.page-section.darkBg,
.copyright {
    background-color: #000000 !important;
    color: #cccccc !important;
}

.socialIcons i {
    color: #ffffff !important;
}

/* 버튼 */
.btn-primary {
    background-color: #1371AF !important;
    color: #ffffff !important;
}

.btn-primary:hover {
    background-color: #0f5f90 !important;
}

/* TEAM PAGE TITLE FIX */
.page-section h2 {
    color: #ffffff !important;
}

/* ==========================================================
   Publication dropdown 메뉴
   ========================================================== */

#mainNav li.has-dropdown {
    position: relative;
}

/* 기본은 숨김 */
#mainNav li.has-dropdown > ul.dropdown {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background-color: #000;
    padding: 8px 16px;
    min-width: 220px;
    z-index: 2000;
    list-style: none;
}

/* hover / focus 시 표시 */
#mainNav li.has-dropdown:hover > ul.dropdown,
#mainNav li.has-dropdown:focus-within > ul.dropdown {
    display: block;
}

#mainNav ul.dropdown li {
    display: block;
}

#mainNav ul.dropdown li a {
    display: block;
    padding: 4px 0;
    color: #fff;
    text-decoration: none;
}

#mainNav ul.dropdown li a:hover {
    text-decoration: underline;
}

/* ==========================================================
   고정 헤더 & 상단 여백
   ========================================================== */

/* 헤더가 본문을 가리는 현상 해결 */
header.header {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 9999;
    background: #000;
    height: 80px;
}

/* 헤더 아래 공간 확보 */
body {
    padding-top: calc(60px + 20px);
}

/* 헤더 로고 크기 축소 */
.navbar-brand img,
.navbar-header img,
.site-logo img {
    max-height: 80px;
    height: auto;
    width: auto;
}

/* 네비게이션 영역 높이 */
.navbar,
.navbar-nav > li > a {
    line-height: 60px !important;
    height: 60px !important;
}

/* 헤더 전체 높이 조정 */
.header .navbar {
    margin-bottom: 0;
    min-height: 64px;
}

.header .navbar-brand {
    padding: 8px 15px;
    height: 64px;
    display: flex;
    align-items: center;
}

.header .navbar-brand img {
    max-height: 60px;
    width: auto;
}

/* 메뉴 텍스트 패딩 */
.header .navbar-nav > li > a {
    padding-top: 20px;
    padding-bottom: 20px;
    line-height: 24px;
}

/* ==========================================================
   News Section (AiX Lab)
   ========================================================== */

.news-section {
    background: #000;
    color: #fff;
    padding: 60px 0;
}

.news-section .heading h2 {
    color: #fff;
}

.news-section .heading p {
    color: #ddd;
}

/* 카드 리스트 컨테이너 */
.news-list {
    margin-top: 30px;
}

/* 개별 뉴스 카드 */
.news-card {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 25px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.06);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.6);
    margin-bottom: 30px;
}

/* 제목 / 메타 / 본문 */
.news-card-title {
    margin: 0;
    color: #fff;
}

.news-card-meta {
    margin: 0 0 6px 0;
    color: #aaa;
    font-size: 0.9rem;
}

.news-card-body {
    color: #ccc;
}

/* 링크 색상 */
.news-card-body a {
    color: #5ab4ff;
    text-decoration: none;
}

.news-card-body a:hover {
    text-decoration: underline;
}

/* News article page */
.news-article-title {
    text-align: left;
    color: #ffcc33;
    font-size: 2.4rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.news-article-meta {
    text-align: left;
    color: #bbbbbb;
    font-size: 1rem;
    margin-bottom: 1.5rem;
}

.news-article-body {
    font-size: 1.1rem;
    line-height: 1.7;
}

/* 모바일에서 카드 여백 */
@media (max-width: 768px) {
    .news-card {
        padding: 20px;
    }
}

/* ==========================================================
   RESPONSIVE
   ========================================================== */

.da-slide {
    top: 15%;
}

@media (min-width: 768px) {
    .header .navbar-brand {
        padding-left: 0;
    }

    .navbar-nav {
        float: right;
    }
}

@media (max-width: 768px) {
    .banner-container {
        background-size: contain;
        width: 100%;
        max-height: 432px;
    }

    .navbar-header {
        background: #fff;
    }

    #main-nav {
        background: #fff !important;
        -webkit-box-shadow: 0px 3px 4px 0px rgba(50, 50, 50, 0.38);
        -moz-box-shadow: 0px 3px 4px 0px rgba(50, 50, 50, 0.38);
        box-shadow: 0px 3px 4px 0px rgba(50, 50, 50, 0.38);
    }

    .team-member .member-img img {
        max-width: 100%;
    }

    .bannerOverlay {
        max-height: 432px;
    }

    .da-slider {
        width: 100%;
        min-width: initial;
        height: 400px;
        margin: 0px auto;
    }

    .header .navbar-nav > li > a {
        padding: 25px 12px;
    }

    .portfolio-item:hover .folio-info {
        top: 0px;
    }

    .portfolio-item .portfolio-desc .folio-info {
        padding: 0px;
    }

    .portfolio-item .portfolio-desc .folio-info h5 {
        font-size: 1em;
    }
}

@media (max-width:760px) {
    .header .navbar-nav > li > a {
        padding: 7px 12px;
        font-size: 14px;
    }

    .navbar-inverse .navbar-collapse, 
    .navbar-inverse .navbar-form {
        border-color: #A8A8A8;
    }
}

@media (max-width: 480px) {
    .banner-container {
        width: 100%;
        background-size: contain;
        height: 270px;
    }

    .header .navbar-brand {
        float: left;
        padding: 10px 0px;
    }

    .webThemez {
        width:100%;
        text-align:center;
        display:block;
    }

    .bannerOverlay {
        height: 270px;
    }

    .da-slider {
        width: 100%;
        min-width: initial;
        height: 263px;
        position: relative;
        margin: 0 auto;
    }

    .da-slide {
        top: 26%;
    }

    .da-slide h2 {
        font-size: 40px;
        text-align: center;
        width: initial;
        top: 10px;
    }

    .da-slide p {
        width: 65%;
        top: 65px;
        height: 50px;
    }

    .page-section h1 {
        font-size: 3em;
    }

    .page-section h2 {
        font-size: 2em;
    }

    .page-section p {
        font-size: 1em;
        margin: 0 0 20px;
    }

    .portfolio-item .portfolio-desc .folio-info h5 {
        font-size: 11px;
    }
}

@media (max-width: 320px) {
    .banner-container {
        width: 100%;
        background-size: contain;
        height: 180px;
    }

    .bannerOverlay {
        height: 180px;
    }

    .da-slider {
        width: 100%;
        min-width: initial;
        height: 145px;
        position: relative;
        margin: 0 auto;
    }

    .da-slide h2 {
        font-size: 30px;
        text-align: center;
        width: initial;
        top: 10px;
    }

    .da-dots {
        bottom: 2px;
        display: none;
    }

    .grid .text-content {
        padding-left: 29%;
        padding-right: 2%;
    }

    .portfolio-item:hover .folio-info {
        top: 0px;
    }

    .portfolio-item .portfolio-desc .folio-info h5 {
        text-transform: uppercase;
        text-align: center;
        font-weight: normal;
        font-size: 10px;
        margin: 10px 0 0 0;
    }

    nav#filter li {
        display: inline-block;
        margin: 0 0 23px 5px;
    }
}

/* ===========================
   Mobile navbar fix (dark)
   =========================== */
@media (max-width: 767px) {
    /* 펼쳐진 메뉴 박스 배경 */
 
    /* 각 메뉴 글자를 흰색으로 (검은 배경 대비) */
    .navbar-inverse .navbar-nav > li > a {
        color: #fff !important;
    }

    /* hover / focus */
    .navbar-inverse .navbar-nav > li > a:hover,
    .navbar-inverse .navbar-nav > li > a:focus {
        background-color: #222 !important;
        color: #fff !important;
    }

    /* active 메뉴 */
    .navbar-inverse .navbar-nav > .active > a,
    .navbar-inverse .navbar-nav > .active > a:hover,
    .navbar-inverse .navbar-nav > .active > a:focus {
        background-color: #333 !important;
        color: #fff !important;
    }
}

/* ===== NAVBAR ALIGNMENT FIX (logo + menu center) ===== */

/* 전체 메뉴바 높이 */
header.header {
  height: 90px;  /* 원하는 높이로 조절 가능 (예: 80~100px) */
}

/* navbar 안의 요소들을 세로 가운데 정렬 */
.header .navbar {
  min-height: 90px;
  display: flex;
  align-items: center;   /* 로고 + 메뉴 세로 가운데 */
}

/* 로고 영역: 세로 가운데 정렬 */
.header .navbar-brand {
  height: 90px;
  padding: 0 20px;       /* 좌우 여백만, 위/아래 여백은 없애고 가운데 정렬 */
  display: flex;
  align-items: center;   /* 로고 이미지 세로 가운데 */
}

/* 로고 이미지 크기 */
.header .navbar-brand img {
  max-height: 64px;      /* 메뉴바보다 조금 작은 크기 */
  height: auto;
  width: auto;
}

/* 메뉴 텍스트를 위아래 기준 정확히 가운데 정렬 */
.header .navbar-nav > li > a {
  height: 90px !important;
  line-height: 90px !important;  /* 텍스트를 세로 가운데 */
  padding-top: 0;
  padding-bottom: 0;
}

/* 모바일에서는 메뉴바를 너무 크게 하지 않도록 다시 줄이기 */
@media (max-width: 767px) {
  header.header {
    height: auto;
  }

  .header .navbar {
    min-height: 50px;
    display: block;
  }

  .header .navbar-brand {
    height: 50px;
    padding: 10px 15px;
    display: flex;
    align-items: center;
  }

  .header .navbar-nav > li > a {
    height: auto !important;
    line-height: 1.4 !important;
    padding: 10px 15px;
  }
}

/* ===== Hero banner background position fix ===== */

/* 기본: 달이 너무 위로 잘리지 않도록, 위쪽을 기준으로 정렬 */
.banner-container {
  background-position: center top !important;   /* 원래 left bottom → center top */
  background-size: cover;                       /* 비율 유지하며 꽉 채우기 */
}

/* 화면이 아주 넓을 때 약간만 더 아래로 내리고 싶으면 */
@media (min-width: 1400px) {
  .banner-container {
    background-position: center 55% !important; /* 0% = 딱 맨 위, 15% 정도 살짝 아래 */
  }
}

/* ===== Increase bottom spacing before footer ===== */
.page-section {
    padding-bottom: 80px !important;   /* 기본 0 → 여유 있게 80px */
}

body {
    padding-bottom: 100px !important;  /* 전체 페이지 바닥 여백 추가 */
}

/* ===== FINAL LOGO SIZE OVERRIDE ===== */
.navbar-brand img {
    max-height: 48px !important;
    height: auto !important;
    width: auto !important;
}

.navbar-header img,
.site-logo img {
    max-height: 48px !important;
    height: auto !important;
}
/* ===== Student profile photo avatar ===== */
.student-photo-rect {
  width: 220px;            /* 원하는 크기 */
  height: 280px;           /* 원하는 높이 */
  object-fit: cover;       /* 비율 유지하면서 중앙 기준으로 채움 */
  border-radius: 12px;     /* 깔끔한 라운드 박스 */
  display: block;
  margin: 0 auto 10px;     /* 중앙 정렬 */
  border: 2px solid #fff;  /* 테두리 */
}

/* =========================================================
   FINAL MOBILE NAVBAR OVERRIDE (AIX Lab)
   ========================================================= */
@media (max-width: 767px) {

  /* 혹시 예전 one-page nav(#navigation)가 있다면 모바일에선 숨기기 */
  #navigation {
    display: none !important;
  }

  /* 접힌 메뉴가 펼쳐졌을 때 배경을 완전히 검정으로 */
  #main-nav,
  .navbar-inverse .navbar-collapse,
  .navbar-inverse .navbar-collapse.in {
    background-color: #000000 !important;
    border-color: #000000 !important;
  }

  /* 모든 메뉴 글자 기본 흰색 */
  #main-nav li > a,
  .navbar-inverse .navbar-nav > li > a {
    color: #ffffff !important;
    padding: 12px 18px;
    font-size: 16px;
  }

  /* hover / focus / active 상태도 동일하게 보이도록 */
  #main-nav li > a:hover,
  #main-nav li > a:focus,
  #main-nav li.active > a,
  .navbar-inverse .navbar-nav > li > a:hover,
  .navbar-inverse .navbar-nav > li > a:focus,
  .navbar-inverse .navbar-nav > .active > a,
  .navbar-inverse .navbar-nav > .active > a:hover,
  .navbar-inverse .navbar-nav > .active > a:focus {
    background-color: #222222 !important;
    color: #ffffff !important;
  }

  /* 햄버거 버튼(토글) 스타일 유지 */
  .navbar-inverse .navbar-toggle {
    background-color: #222 !important;
    border-color: #444 !important;
  }
  .navbar-inverse .navbar-toggle .icon-bar {
    background-color: #ffffff !important;
  }
}


/* ==========================================
   MOBILE HEADER / NAVBAR COLOR FIX
   ========================================== */
@media (max-width: 767px) {

  /* 헤더 전체(로고+메뉴 영역) 배경을 검정으로 통일 */
  header.header,
  .header .navbar,
  .navbar-header,
  #main-nav {
    background-color: #000000 !important;
    border-color: #000000 !important;
  }

  /* 햄버거 버튼은 어두운 회색 박스 + 흰 줄 */
  .navbar-inverse .navbar-toggle {
    background-color: #222222 !important;  /* 아이콘 뒤 박스 */
    border-color: #555555 !important;
  }

  .navbar-inverse .navbar-toggle .icon-bar {
    background-color: #ffffff !important;  /* 햄버거 줄은 흰색 */
  }
}

