@charset "utf-8";

/* BESD MOBILE UI — reviewed 2026-10-09 v4. One unified rule set. */
.besd-header-links.besd-injected-mobile { display: none; }
@media screen and (max-width: 800px) {
    html body.besd-ui-ready { padding-top: 56px !important; }
    html body > #besd-site-header {
        position: fixed !important;
        top: 56px !important;
        left: 0 !important;
        right: auto !important;
        width: 100vw !important;
        min-width: 0 !important;
        max-width: 100vw !important;
        height: 90px !important;
        min-height: 90px;
        box-sizing: border-box !important;
        overflow: hidden !important;
        transition: none !important;
        z-index: 99999;
    }
    html body > #besd-site-header.besd-menu-open {
        height: auto !important;
        max-height: calc(100vh - 56px);
        max-height: calc(100dvh - 56px);
        overflow-x: hidden !important;
        overflow-y: auto !important;
    }
    html body #besd-site-header > .wrap {
        position: relative !important;
        width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }
    html body #besd-site-header > .wrap > h1 {
        display: flex !important;
        align-items: center !important;
        float: none !important;
        width: calc(100% - 96px) !important;
        height: 90px !important;
        margin: 0 0 0 20px !important;
        padding: 0 !important;
        line-height: 1 !important;
    }
    html body #besd-site-header h1 > a {
        display: flex;
        align-items: center;
        width: 160px;
        max-width: 100%;
    }
    html body #besd-site-header h1 img {
        display: block !important;
        width: 160px !important;
        max-width: 100% !important;
        height: auto !important;
        margin: 0 !important;
    }
    html body #besd-site-header > .wrap > nav { display: none !important; }
    html body #besd-site-header .m_gnb { position: static !important; }
    html body #besd-site-header .m_gnb > .bar-btn {
        position: absolute !important;
        top: 23px !important;
        right: 13px !important;
        left: auto !important;
        bottom: auto !important;
        width: 44px !important;
        height: 44px !important;
        box-sizing: border-box !important;
        padding: 10px 7px !important;
        margin: 0 !important;
        display: block !important;
        line-height: 1 !important;
        z-index: 2;
        cursor: pointer;
        touch-action: manipulation;
    }
    html body #besd-site-header .bar-btn > div {
        display: block !important;
        width: 30px !important;
        height: 4px !important;
        padding: 0 !important;
        margin: 0 !important;
        background: #123d6b !important;
        transform: none;
    }
    html body #besd-site-header .bar-btn > .bar2 { margin: 6px 0 !important; }
    html body #besd-site-header .bar-btn > .active.bar1 { transform: translateY(10px) rotate(45deg) !important; }
    html body #besd-site-header .bar-btn > .active.bar3 { transform: translateY(-10px) rotate(-45deg) !important; }
    html body #besd-site-header .bar-btn:focus-visible { outline: 2px solid #123d6b; }
    html body #besd-site-header .m_gnb > .m_nav {
        display: none !important;
        position: static !important;
        width: 100% !important;
        text-align: center;
        background: #fff;
    }
    html body #besd-site-header.besd-menu-open .m_gnb > .m_nav { display: block !important; }
    html body #besd-site-header .m_nav > li { line-height: 1.5; }
    html body #besd-site-header .m_nav > li > a {
        display: block;
        padding: 14px 20px;
        cursor: pointer;
    }
    html body #besd-site-header .m_sub_nav > li > a { display: block; padding: 8px 16px; line-height: 1.6; }
    html body > #besd-site-sns {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: auto !important;
        bottom: auto !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 0 !important;
        width: 100vw !important;
        min-width: 0 !important;
        max-width: 100vw !important;
        height: 56px !important;
        padding: 0 !important;
        margin: 0 !important;
        box-sizing: border-box !important;
        z-index: 1000000 !important;
    }
    html body > #besd-site-sns > a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 50% !important;
        width: 50% !important;
        min-width: 0 !important;
        max-width: 50% !important;
        height: 56px !important;
        margin: 0 !important;
        padding: 0 !important;
        border-radius: 0 !important;
        box-sizing: border-box !important;
        box-shadow: none !important;
        text-decoration: none;
        transform: none !important;
    }
    html body #besd-site-sns > .besd-instagram { background: linear-gradient(35deg,#ffbd54 0%,#e92c74 48%,#8134af 100%) !important; }
    html body #besd-site-sns > .besd-youtube { background: #f00 !important; }
    html body #besd-site-sns svg { width: 30px !important; height: 30px !important; background: transparent; }
}
