@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard-dynamic-subset.min.css');

*,
*::before,
*::after {
    box-sizing: border-box;
}

a {
    color: inherit;
    text-decoration: none;
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

.mobile-break {
    display: none;
}

.tablet-break {
    display: none;
}

.tablet-mobile-break {
    display: none !important;
}

/* ===== basePage 공통 운영 레이아웃 정리 ===== */
body:has(.basePage) #subtop,
body:has(.basePage) #quickToggleBtn,
body:has(.basePage) #quickForm,
body:has(.basePage) #floating1,
body:has(.basePage) #floating1_btn {
    display: none !important;
}

body:has(.basePage) #quickSide {
    z-index: 1600;
}

body:has(.basePage) #site_config {
    width: 100%;
    flex-shrink: 0;
    border-bottom-color: #eee;
    background: #fff;
    display: flex;
    align-items: center;
    border-bottom: none;
}

body:has(.basePage) #site_config .container {
    width: 100%;
    max-width: none;
    padding: 0;
}

body:has(.basePage) #site_config .site {
    width: 100%;
    max-width: 1370px;
    margin: 0 auto;
}

body:has(.basePage) #site_config .site .home {
    line-height: 46px;
}

body:has(.basePage) #site_config .site .home.home1 {
    width: 60px;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
}

body:has(.basePage) #site_config .site .home.home1 img {
    width: 20px;
    height: 20px;
}

body:has(.basePage) #site_config .site .home {
    width: 300px;
    height: 60px;
}

body:has(.basePage) #site_config .site .home > span {
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    min-width: 0;
    padding-right: clamp(34.84px, 3.6111vw, 52px);
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

body:has(.basePage) #site_config .site .home.home3 {
    width: 350px;
}

body:has(.basePage) .imp-collab {
    padding-top: 0;
}

@media (max-width: 768px) {
    body:has(.basePage) #site_config .site .home {
        line-height: 3.3333;
        height: 40px;
        font-size: clamp(9px, 3.2vw, 12px);
    }

    body:has(.basePage) #site_config .site .home.home1 {
        width: 40px;
        height: 40px;
    }

    body:has(.basePage) #site_config .site .home.home1 img {
        width: 15px;
        height: 15px;
    }

    body:has(.basePage) #site_config .site .home.home2 {
        width: calc(30%);
    }

    body:has(.basePage) #site_config .site .home.home3 {
        width: calc(30%);
    }

    body:has(.basePage) #site_config .site .home > span {
        padding: 0 clamp(21px, 7.4667vw, 28px) 0 clamp(7.5px, 2.6667vw, 10px);
    }

    body:has(.basePage) #site_config .implant-mobile-short {
        font-size: 0;
    }

    body:has(.basePage) #site_config .implant-mobile-short::before {
        content: attr(data-mobile-label);
        font-size: clamp(9px, 3.2vw, 12px);
    }
}

@media (max-width: 372px) {
    body:has(.basePage) #site_config .site .home {
        font-size: clamp(8.25px, 2.9333vw, 11px);
    }

    body:has(.basePage) #site_config .site .home > span {
        padding: 0 clamp(18px, 6.4vw, 24px) 0 clamp(6px, 2.1333vw, 8px);
    }

    body:has(.basePage) #site_config .site .home.home2:after,
    body:has(.basePage) #site_config .site .home.home3:after {
        right: 8px;
        width: 9px;
    }

    body:has(.basePage) #site_config .implant-mobile-short::before {
        font-size: clamp(8.25px, 2.9333vw, 11px);
    }
}

/* ===== 반응형: Tablet/Common ===== */
@media (max-width: 1199px) {
    .pc-break {
        display: none !important;
    }

    .tablet-break {
        display: block !important;
    }

    .tablet-mobile-break {
        display: block !important;
    }

    .mobile-break {
        display: none !important;
    }

    body:has(.basePage) #quickSide {
        display: none !important;
    }
}

/* ===== 반응형: Tablet ===== */
@media (min-width: 768px) and (max-width: 1199px) {
    .pc-break {
        display: none !important;
    }

    .tablet-break,
    .tablet-mobile-break {
        display: block !important;
    }
}

/* ===== 반응형: Mobile ===== */
@media (max-width: 767px) {
    .pc-tablet-break {
        display:  none !important
    }
    .tablet-break {
        display: none !important;
    }
    .mobile-break {
        display: block !important;
    }
}
