@charset "utf-8";

/* Desktop header refinement. Mobile keeps the dedicated mobile-home layout. */
@media (min-width: 1024px) {
    html,
    body {
        overflow-x: clip !important;
    }

    body #hd {
        position: sticky;
        top: -80px;
        z-index: 10000;
        min-width: 0;
        border: 0;
        background: #fff;
        box-shadow: 0 1px 0 rgba(15, 23, 42, .06);
    }

    body #hd_wrapper {
        width: 100% !important;
        padding: 18px 0 14px !important;
        border: 0 !important;
        background: #fff;
        box-sizing: border-box;
    }

    body #hd_wrapper > .inner_wrap {
        display: grid !important;
        grid-template-columns: 220px minmax(380px, 1fr) 290px;
        align-items: center;
        column-gap: 40px;
        width: min(calc(100% - 40px), 1240px) !important;
        height: auto !important;
        margin: 0 auto;
        padding: 0 !important;
        box-sizing: border-box;
    }

    body #hd_wrapper .mobile_gnb_open,
    body #hd_wrapper .mobile_account_shortcut {
        display: none !important;
    }

    body #hd_wrapper .hd_logo {
        display: flex !important;
        float: none !important;
        align-items: center;
        width: 220px !important;
        height: 48px !important;
        padding: 0 !important;
    }

    body #hd_wrapper .hd_logo a {
        display: inline-flex;
        align-items: center;
    }

    body #hd_wrapper .hd_logo img {
        display: block;
        width: 148px !important;
        height: auto;
    }

    body #hd_wrapper .hd_sch_wr {
        justify-self: center;
        float: none !important;
        width: min(100%, 440px) !important;
        min-width: 0 !important;
        height: 48px;
        margin: 0 !important;
        padding: 3px !important;
        border: 1px solid #cbd5e1 !important;
        border-radius: 999px !important;
        background: #fff;
        box-shadow: 0 5px 16px rgba(30, 64, 175, .06);
        box-sizing: border-box;
        transition: border-color .18s ease, box-shadow .18s ease;
    }

    body #hd_wrapper .hd_sch_wr:focus-within {
        border-color: #2563eb !important;
        box-shadow: 0 0 0 3px rgba(37, 99, 235, .10);
    }

    body #hd_sch,
    body #hd_sch form {
        height: 100%;
    }

    body #hd_sch #sch_stx {
        float: none;
        width: 100%;
        height: 40px;
        padding: 0 14px 0 47px;
        border: 0 !important;
        border-radius: 999px;
        background: transparent;
        color: #172033;
        font-size: 14px;
        line-height: 40px;
        box-sizing: border-box;
    }

    body #hd_sch #sch_stx::placeholder {
        color: #94a3b8;
    }

    body #hd_sch #sch_submit {
        top: 0;
        left: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 40px;
        border: 0;
        border-radius: 999px;
        background: transparent;
    }

    body #hd_sch #sch_submit img {
        width: 20px;
        height: 20px;
        filter: invert(31%) sepia(89%) saturate(2262%) hue-rotate(215deg) brightness(94%) contrast(96%);
    }

    body #hd_wrapper .hd_login {
        display: flex !important;
        float: none !important;
        align-items: center;
        justify-content: flex-end;
        gap: 22px;
        width: auto;
        height: 48px;
        margin: 0;
        padding: 0;
    }

    body #hd_wrapper .hd_login li {
        display: block;
        margin: 0 !important;
    }

    body #hd_wrapper .hd_login a {
        position: relative;
        display: block;
        padding: 9px 0;
        color: #334155;
        font-size: 14px;
        font-weight: 500;
        letter-spacing: -.45px;
        white-space: nowrap;
        transition: color .18s ease;
    }

    body #hd_wrapper .hd_login a::after {
        position: absolute;
        right: 0;
        bottom: 4px;
        left: 0;
        height: 2px;
        border-radius: 999px;
        background: #2563eb;
        content: "";
        opacity: 0;
        transform: scaleX(.45);
        transition: opacity .18s ease, transform .18s ease;
    }

    body #hd_wrapper .hd_login a:hover,
    body #hd_wrapper .hd_login a:focus {
        color: #1d4ed8;
    }

    body #hd_wrapper .hd_login a:hover::after,
    body #hd_wrapper .hd_login a:focus::after {
        opacity: 1;
        transform: scaleX(1);
    }

    body #gnb {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 0 12px !important;
        border: 0 !important;
        background: #fff;
        box-sizing: border-box;
    }

    body #gnb .gnb_wrap {
        position: relative;
        display: flex !important;
        align-items: center;
        width: min(calc(100% - 40px), 1240px) !important;
        height: 64px;
        margin: 0 auto;
        padding: 6px !important;
        border: 1px solid #e3eaf4;
        border-radius: 22px;
        background: #fff;
        box-shadow: 0 7px 20px rgba(15, 23, 42, .055);
        box-sizing: border-box;
        overflow: visible !important;
    }

    body #gnb .gnb_cateall {
        position: relative;
        flex: 0 0 164px;
        width: 164px;
        height: 48px;
    }

    body #gnb .gnb_cateall button {
        display: flex !important;
        float: none !important;
        align-items: center;
        justify-content: flex-start;
        gap: 14px;
        width: 164px;
        max-width: none;
        height: 48px;
        min-height: 0;
        padding: 0 18px !important;
        border: 1px solid #d6e3ff;
        border-radius: 999px;
        background: #edf3ff !important;
        color: #1d4ed8 !important;
        font-size: 16px !important;
        font-weight: 700;
        line-height: 1 !important;
        letter-spacing: -.45px;
        box-shadow: none;
        box-sizing: border-box;
    }

    body #gnb .gnb_cateall button:hover,
    body #gnb .gnb_cateall button:focus {
        border-color: #b9cefb;
        background: #e2ecff !important;
    }

    body #gnb .gnb_cateall .gnb_close {
        display: none !important;
    }

    body #gnb .gnb_cateall button::before {
        flex: 0 0 20px;
        width: 20px;
        height: 14px;
        margin: 0 !important;
        background:
            linear-gradient(#2563eb, #2563eb) 0 0 / 100% 1.5px no-repeat,
            linear-gradient(#2563eb, #2563eb) 0 6px / 100% 1.5px no-repeat,
            linear-gradient(#2563eb, #2563eb) 0 12px / 100% 1.5px no-repeat;
        content: "";
    }

    body #gnb .gnb_cateall button::after {
        display: none !important;
        content: none !important;
    }

    body #gnb .gnb_cateall button img {
        width: 19px;
        height: 19px;
        margin: 0 12px 0 0 !important;
        object-fit: contain;
        display: none !important;
    }

    body #gnb .gnb_cateall button img:last-child {
        display: none !important;
        width: 10px;
        height: 7px;
        margin: 0 0 0 10px !important;
        filter: invert(31%) sepia(85%) saturate(1903%) hue-rotate(213deg) brightness(91%) contrast(94%);
    }

    body #gnb .gnb_cateall button span {
        flex: 0 0 auto;
        margin: 0 !important;
        font-size: 15px !important;
        line-height: 1 !important;
    }

    body #gnb .gnb_cateall button i {
        display: flex;
        flex: 0 0 12px;
        align-items: center;
        justify-content: center;
        width: 12px;
        margin: 1px 0 0 auto;
        color: #1d4ed8;
        font-size: 12px;
        line-height: 1;
        text-align: center;
        transform: rotate(0deg);
        transition: transform .18s ease;
    }

    body #gnb .gnb_cateall button.is-open i {
        transform: rotate(180deg);
    }

    body #gnb #gnb_1dul {
        display: flex !important;
        float: none !important;
        flex: 1 1 auto;
        align-items: center;
        min-width: 0;
        justify-content: center;
        gap: 10px;
        height: 48px;
        margin: 0 0 0 16px !important;
        padding: 0;
        overflow: visible;
    }

    body #gnb .gnb_1dli {
        float: none !important;
        flex: 0 0 auto;
        height: 48px;
        padding: 0;
        line-height: normal;
    }

    body #gnb .gnb_1da {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 48px;
        padding: 0 25px !important;
        border-radius: 999px;
        color: #172033;
        font-size: 16px !important;
        font-weight: 650;
        line-height: 48px;
        letter-spacing: -.55px;
        white-space: nowrap;
        transition: color .18s ease, background-color .18s ease, box-shadow .18s ease;
    }

    body #gnb .gnb_1da:hover,
    body #gnb .gnb_1da:focus,
    body #gnb .gnb_1dli_on > .gnb_1da {
        color: #1d4ed8;
        background: #f0f5ff;
        box-shadow: none;
    }

    body #gnb_all,
    body #gnb .gnb_sub_layer {
        left: 0 !important;
        top: calc(100% + 12px) !important;
        width: 100% !important;
        max-height: min(68vh, 520px);
        margin: 0 !important;
        padding: 22px 24px !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 16px;
        background: #fff;
        box-shadow: 0 20px 45px rgba(15, 23, 42, .15) !important;
        box-sizing: border-box;
        overflow-y: auto;
        z-index: 9999;
    }

    body #gnb_all .mobile_account_menu {
        display: none !important;
    }

    body #gnb_all > .gnb_all_cate {
        float: left !important;
        width: 36% !important;
        height: auto !important;
        min-height: 190px;
        margin: 0 !important;
        padding: 0 0 0 24px !important;
        border: 0 !important;
        border-left: 1px solid #e5eaf2 !important;
        box-sizing: border-box;
    }

    body #gnb_all > .gnb_all_cate:first-of-type {
        width: 64% !important;
        padding: 0 28px 0 0 !important;
        border-left: 0 !important;
    }

    body #gnb_all > .gnb_all_cate h3 {
        position: relative;
        margin: 0 0 14px !important;
        padding: 0 0 12px 13px !important;
        border-bottom: 1px solid #e8edf5;
        color: #172033;
        font-size: 15px;
        font-weight: 800;
        line-height: 20px;
    }

    body #gnb_all > .gnb_all_cate h3::before {
        position: absolute;
        top: 2px;
        left: 0;
        width: 4px;
        height: 15px;
        border-radius: 999px;
        background: #2563eb;
        content: "";
    }

    body #gnb_all > .gnb_all_cate ul {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 3px 18px;
        margin: 0;
        padding: 0 !important;
    }

    body #gnb_all > .gnb_all_cate li {
        min-width: 0;
        margin: 0 !important;
    }

    body #gnb_all > .gnb_all_cate a {
        display: block;
        padding: 8px 9px;
        border-radius: 8px;
        color: #526176;
        font-size: 13px;
        line-height: 1.35;
        white-space: normal;
        transition: color .16s ease, background-color .16s ease;
    }

    body #gnb_all > .gnb_all_cate a:hover,
    body #gnb_all > .gnb_all_cate a:focus {
        color: #1d4ed8;
        background: #f1f5ff;
    }

    body #gnb .gnb_sub_layer {
        padding: 20px 24px !important;
        border-bottom: 1px solid #e2e8f0 !important;
    }

    body #gnb .gnb_sub_layer .sub_inner {
        width: 100%;
        max-width: none;
        padding: 0;
    }

    body #gnb .gnb_sub_layer .region_list {
        justify-content: flex-start;
        gap: 8px;
    }

    body #gnb .gnb_sub_layer .region_list li a {
        padding: 8px 14px;
        border-color: #e2e8f0;
        background: #f8fafc;
        color: #475569;
    }

    body #gnb .gnb_sub_layer .region_list li a:hover,
    body #gnb .gnb_sub_layer .region_list li a:focus {
        border-color: #2563eb;
        background: #2563eb;
        color: #fff;
    }

    body #gnb .gnb_sub_layer .comm_section h4 {
        color: #1d4ed8;
    }

    body #gnb .gnb_sub_layer .comm_list li a:hover,
    body #gnb .gnb_sub_layer .comm_list li a:focus {
        color: #1d4ed8;
        text-decoration: none;
    }

    body .slider_wr {
        margin-top: 28px !important;
    }

    body.mc-gnb-fixed #hd {
        padding-bottom: 76px;
    }

    body.mc-gnb-fixed #gnb {
        position: fixed !important;
        top: 0;
        right: 0;
        left: 0;
        z-index: 10000;
        padding: 8px 0 !important;
        background: rgba(255, 255, 255, .96);
        box-shadow: 0 7px 22px rgba(15, 23, 42, .09);
    }

    body.mc-gnb-fixed #gnb .gnb_wrap {
        box-shadow: none;
    }

}

@media (min-width: 1024px) and (max-width: 1179px) {
    body #hd_wrapper > .inner_wrap {
        grid-template-columns: 175px minmax(340px, 1fr) 260px;
        column-gap: 24px;
    }

    body #hd_wrapper .hd_logo {
        width: 175px !important;
    }

    body #gnb .gnb_cateall,
    body #gnb .gnb_cateall button {
        flex-basis: 150px;
        width: 150px;
    }

    body #gnb .gnb_1da {
        font-size: 15px !important;
        padding-right: 13px !important;
        padding-left: 13px !important;
    }

    body #gnb #gnb_1dul {
        gap: 3px;
        margin-left: 8px !important;
    }
}
