/* ==================================================================================
    반응형 스타일 - 공통
================================================================================== */

/* 1400px */
@media screen and (max-width: 1400px) {

    /* *******************************************************************
        #header
    ******************************************************************* */
    /* logo-area */
    .logo-area .inner-wrap {
        height: 100px;
    }

    /* etc-area */
    .logo-area .etc-area {
        gap: 54px;
    }
    .logo-area .etc-area .btn-list > ul {
        gap: 32px;
    }
    .logo-area .etc-area .btn-list > ul > li > a {
        gap: 8px;
    }
    .logo-area .etc-area .btn-list > ul > li > a .feather {
        width: 18px;
        height: 18px;
    }
    .logo-area .etc-area .btn-list > ul > li > a b {
        font-size: 15px;
    }

    /****************************
        gnb
    ****************************/
    .gnb-area .inner-wrap > ul > li.depth1 > a {
        font-size: 19px;
    }

    /* sub-menu */
    .gnb-area .inner-wrap > ul li.depth1 ul.depth2 li a {
        font-size: 15px;
    }

    /* *******************************************************************
        #footer
    ******************************************************************* */
    /* .organized-by */
    #footer .inner-wrap > div.organized-by .info ul {
        flex-flow: column nowrap;
        justify-content: flex-start;
        align-items: flex-start;
        gap: 0;
    }
    #footer .inner-wrap > div.organized-by .info ul li {
        font-size: 14px;
        font-weight: 400;
        color: #fff;
    }
    #footer .inner-wrap > div.organized-by .info ul li.divline {
        display: none;
    }
    #footer .inner-wrap > div.organized-by .info address {
        line-height: 1.6;
        font-size: 14px;
        font-weight: 400;
        color: #fff;
    }

}


/* 1300px */
@media screen and (max-width: 1300px) {

    /****************************
        gnb
    ****************************/
    .gnb-area .inner-wrap > ul > li.depth1 > a {
        font-size: 19px;
    }

}


/* 1200px */
@media screen and (max-width: 1200px) {

    .logo-area h1.logo {
        padding: 0;
    }

    /****************************
        gnb
    ****************************/
    .gnb-area .inner-wrap > ul > li.depth1 > a {
        font-size: 18px;
    }

    /* sub-menu */
    .gnb-area .inner-wrap > ul li.depth1 ul.depth2 li a {
        font-size: 14px;
    }

    /* *******************************************************************
        #footer
    ******************************************************************* */
    #footer .inner-wrap {
        flex-flow: row wrap;
        gap: 44px 30px;
    }
    #footer .inner-wrap > div {
        gap: 12px;
    }

}

/* 1100px */
@media screen and (max-width: 1100px) {

    /* *******************************************************************
        #header
    ******************************************************************* */
    /* etc-area */
    .logo-area .etc-area {
        gap: 24px;
    }
    .logo-area .etc-area .btn-list > ul {
        gap: 16px;
    }

    /****************************
        gnb
    ****************************/
    .gnb-area .inner-wrap > ul > li.depth1 > a {
        font-size: 16px;
    }

    /* sub-menu */
    .gnb-area .inner-wrap > ul li.depth1 ul.depth2 li a {
        padding: 10px 5px;
        font-size: 14px;
    }

}


/* ==================================================================================
    반응형 스타일 - 모바일 메뉴
================================================================================== */
/* 960px - 모바일 메뉴 시작 */
@media screen and (max-width: 960px) {

    /*******************
        hidden
    *******************/
    .visible-xs {
        display: block !important;
    }
    .hidden-xs {
        display: none !important;
    }
    .mobile-hidden {
        display: none !important;
    }
    .mobile-show {
        display: block !important;
    }

    /*******************
        mobile-nav
    *******************/
    .mobile-nav {
        display: block !important;
        position: fixed;
        width: 100%;
        height: 64px;
        line-height: 64px;
        background-color: rgba(255, 255, 255, 1);
        box-shadow: 0 2px 7px rgba(0,0,0,0.25);
        z-index: 100;
    }

    /* logo-area */
    .mobile-nav h1.logo {
        padding: 0 16px;
    }
    .mobile-nav h1.logo a {
        display: flex;
        flex-flow: row nowrap;
        justify-content: flex-start;
        align-items: center;
        gap: 12px;
        height: 64px;
        font-weight: 700;
        color: #000 !important;
    }

    /* btn-connect */
    .btn-connect {
        width: 100%;
        height: 64px;
    }
    /* login */
    .btn-connect.login li {
        float: left;
        width: 50%;
    }
    .btn-connect.login li a {
        display: block;
        width: 100%;
        height: 64px;
        line-height: 64px;
        text-align: center;
        font-size: 13px;
        color: #eee;
        border-right: 1px solid #565656;
        background-color: #424242;
    }
    .btn-connect.login li:last-child a {
        border-right: 0;
        border-left: 1px solid #323232;
    }
    .btn-connect.login li a:hover {
        color: #fff;
        background-color: #fe7941;
    }
    .btn-connect.login li a i {
        margin: 0 5px 0 0;
    }

    /* logout */
    .btn-connect.logout li {
        display: block;
        width: 100%;
        height: 64px;
        padding: 0 0 0 16px;
        line-height: 64px;
        text-align: left;
        font-size: 13px;
        color: #fff;
        border-right: 0;
        background-color: #424242;
    }
    .btn-connect.logout li b {
        color: #fff;
    }
    .btn-connect.logout li a {
        margin-left: 10px;
        font-size: 10px;
        color: #e0effc;
    }
    .btn-connect.logout li a:hover {
        color: #fff;
    }
    .btn-connect.logout li i {
        margin: 0 5px 0 0;
    }
    .btn-connect.login li a:hover {
        color: #fff;
        background-color: #2c2c2c;
    }

    nav .dropdown-backdrop {
        display: none;
    }
    .drawer-open .drawer-overlay {
        z-index: 10;
    }

    /* drawer */
    .drawer-overlay {
        background-color: rgba(0,0,0,0.75);
    }

    /* hanburger button */
    .mobile-nav .drawer-hamburger {
        width: 3rem;
        padding: 21px 1.5rem;
    }
    .drawer--right.drawer-open .drawer-hamburger {
        right: 24rem;
    }

    /* drawer-nav */
    .drawer--right .drawer-nav {
        position: fixed;
        top: 0;
        right: -24rem;
        overflow: hidden;
        width: 24rem;
        height: 100%;
        color: #222;
        background-color: #323232;
        z-index: 2;
    }
    .drawer--right .drawer-nav .inner-wrap {
        position: relative;
    }

    /* drawer-nav > drawer-menu */
    .drawer-menu {
        background-color: #fff;
    }
    /* depth1 */
    .drawer-menu > li {
        position: relative;
        line-height: 1.1;
    }
    .drawer-menu-item {
        display: block;
        /*padding: 15px 30px 15px 20px;*/
        padding: 15px 10px;
        text-decoration: none;
        font-size: 15px;
        font-weight: 700;
        color: #333;
        border-bottom: 1px solid #dfdfdf;
    }
    .drawer-menu > li:last-child .drawer-menu-item {
        border-bottom: 0;
    }
    .drawer-dropdown .drawer-caret {
        position: absolute;
        right: 10px;
        top: 25px;
    }
    /* depth2 */
    .drawer-dropdown-menu-item {
        display: block;
        padding: 15px 20px 15px 20px;
        line-height: 1.1;
        font-size: 14px;
        color: #333;
        border-bottom: 1px solid #EFEFFE;
        background-color: #fafaff;
    }

    /*******************
        d-day
    *******************/
    .mobile-utility-area .d-days {
        padding: 25px 0;
        position: static;
        width: 100%;
        margin-top: 0;
        text-align: center;
        background-color: #060761;
    }
    .mobile-utility-area .d-days .today {
        padding: 0 0 10px;
        line-height: 1.1;
        font-size: 15px;
        color: #80d5ff;
    }
    .mobile-utility-area .d-days .title {
        margin: 0 0 15px;
        line-height: 1.4;
        font-size: 15px;
        font-weight: 300;
        color: #80d5ff;
    }
    .mobile-utility-area .d-days .d-date {
        line-height: 100%;
        font-size: 42px;
        font-weight: 700;
        color: #80d5ff;
    }

    /*******************
        header
    *******************/
    #wrap {
        padding-top: 64px;
    }
    #wrap .inner-wrap {
        padding: 0 16px;
    }

    /* *******************************************************************
        #header
    ******************************************************************* */
    #header {
        display: none !important;
    }

    /* etc-area */
    .logo-area .etc-area {
        display: none;
    }

    /* d-day */
    .logo-area .etc-area .d-day {
        display: none;
    }

    /****************************
        gnb
    ****************************/
    .gnb-area {
        display: none;
    }

    /* *******************************************************************
        #footer
    ******************************************************************* */
    #footer .inner-wrap > div {
        flex: 0 0 100%;
        gap: 16px;
    }

    /* .organized-by */
    #footer .inner-wrap > div.organized-by  {
        flex: 0 0 100%;
    }
    #footer .inner-wrap > div.organized-by .info address {
        line-height: 1.3;
    }

    /* .sponsored-by */
    #footer .inner-wrap > div.sponsored-by {

    }

    /* .supported-by */
    #footer .inner-wrap > div.supported-by {

    }

    /* .get-in-touch */
    #footer .inner-wrap > div.get-in-touch ul {

    }
    #footer .inner-wrap > div.get-in-touch ul li {

    }

}

/* phone ~ 768px */
@media screen and (max-width: 768px) {



}

/* phone ~ 640px */
@media screen and (max-width: 640px) {

    /*******************
        header
    *******************/
    .mobile-nav h1.logo a strong {
        letter-spacing: -1px;
        font-size: 30px;
    }
    .mobile-nav h1.logo a small {
        display: none;
    }

}

/* phone ~ 480px */
@media screen and (max-width: 480px) {

    .mobile-nav h1.logo a {
        font-size: 32px;
    }

}

/* phone ~ 360px */
@media screen and (max-width: 360px) {

    .mobile-nav h1.logo a {
        font-size: 30px;
    }

}

@media (min-width: 768px) {
    .drawer .container {
        width: auto;
    }
}
