/* =========================================================
   공통 섹션 스크롤 네비게이션
   ========================================================= */

/* 테마 래퍼의 overflow:hidden은 position:sticky를 무력화하므로 세로 overflow만 해제한다. */
#s007 {
    overflow-x: clip;
    overflow-y: visible;
}

.section-nav,
.section-nav * {
    box-sizing: border-box;
}

.section-nav {
    position: sticky;
    top: 0;
    z-index: 50;
    background: #fff;
    box-shadow: 0 2px 12px rgba(0, 0, 0, .05);
}

.section-nav--visibility-scoped {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition: opacity .2s ease, visibility 0s linear .2s;
}

.section-nav--visibility-scoped.is-in-scope {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transition: opacity .2s ease;
}

.section-nav__inner {
    width: 1440px;
    max-width: calc(100% - 80px);
    margin: 0 auto;
}

.section-nav__row {
    display: flex;
}

.section-nav__row .section-nav__tab {
    flex: 1 1 0;
    min-width: 0;
}

.section-nav__tab {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 66px;
    padding: 16px 32px;
    font-size: 24px;
    font-weight: 500;
    line-height: 34px;
    letter-spacing: -1.2px;
    text-align: center;
    white-space: nowrap;
    background: #fff;
    border: 1px solid #e8ebeb;
    margin-right: -1px;
    margin-bottom: -1px;
    transition: background-color .15s, color .15s;
}

.section-nav__tab:link,
.section-nav__tab:visited {
    color: #78716c;
    text-decoration: none;
}

.section-nav__tab:hover {
    background: #faf7fb;
}

.section-nav__tab:focus-visible {
    position: relative;
    z-index: 2;
    outline: 3px solid #c4a6d5;
    outline-offset: -3px;
}

.section-nav__tab.is-active {
    position: relative;
    z-index: 1;
    background: #5e2c7b;
    border-color: #5e2c7b;
}

.section-nav__tab.is-active:link,
.section-nav__tab.is-active:visited {
    color: #fff;
}

@media (max-width: 1199px) {
    .section-nav__tab {
        font-size: 18px;
        padding: 14px 6px;
        letter-spacing: -.9px;
    }

    .section-nav__inner {
        max-width: 100%;
    }
}

@media (max-width: 767px) {
    .section-nav__inner {
        width: 100%;
        max-width: 100%;
    }

    .section-nav__tab {
        min-height: 0;
        padding: 12px 16px;
        font-size: 15px;
        line-height: 1.5;
        letter-spacing: -.6px;
        border-width: .8px;
        border-color: #f5f5f4;
    }

    .section-nav__row .section-nav__tab {
        flex: 1 0 0;
    }
}
