/* 온프레미스 인트로 페이지 스타일 */

/* 비주얼 영역 */
.to-visual-container {
    background: url("/images/to/to-visual-onpremise-1e25adb975a16e61f587407fe30aea4c.jpg") no-repeat center center / cover;
    min-height: 400px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 80px 20px;
}

.to-visual-title {
    color: #fff;
    font-family: 'Pretendard-Bold', sans-serif;
    font-size: 32px;
    text-align: center;
    max-width: 900px;
    width: 100%;
    word-break: keep-all;
    line-height: 1.5;
}

/* 공통 컨테이너 */
.to-container {
    padding: 80px 0;
}

.to-container.grey {
    background-color: #F4F6F8;
}

.to-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 80px 20px;
}

.to-inner-title {
    font-family: 'Pretendard-Bold', sans-serif;
    font-size: 36px;
    color: #222;
    text-align: center;
    margin-bottom: 50px;
}

/* 서비스 소개 */
.to-introduction-item {
    display: flex;
    align-items: center;
    margin-bottom: 60px;
}

.to-introduction-item::before {
    display: block;
    width: 393px;
    height: 292px;
    border-radius: 20px;
    margin-right: 50px;
    content: '';
    flex-shrink: 0;
}

.to-introduction-item:nth-child(even) {
    flex-direction: row-reverse;
    margin-left: 50px;
}

.to-introduction-item:nth-child(even)::before {
    margin: 0 0 0 50px;
}

.to-introduction-item.marketing-solution::before {
    background: url("/images/to/to-onpremise-intro-marketing-solution-f9d1c1467cf146f33d849f51d24b6d32.png") no-repeat center center / cover;
}

.to-introduction-item.progress::before {
    background: url("/images/to/to-onpremise-intro-progress-1c883f0b8df1195766f05f9e4734134e.png") no-repeat center center / cover;
}

.to-introduction-item.share::before {
    background: url("/images/to/to-onpremise-intro-share-c25bed1ec98a19eb86c10ccfaa40e075.png") no-repeat center center / cover;
}

.to-introduction-desc {
    flex: 1;
}

.to-introduction-desc-title {
    font-size: 32px;
    color: #268D6E;
    display: block;
    margin-bottom: 30px;
    line-height: 1.3;
}

.to-introduction-desc-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.to-introduction-desc-item {
    position: relative;
    color: #222;
    font-size: 16px;
    padding-left: 10px;
    line-height: 1.6;
    margin-bottom: 8px;
}

.to-introduction-desc-item::before {
    position: absolute;
    top: 10px;
    left: 0;
    display: inline-block;
    width: 2px;
    height: 2px;
    background-color: #222;
    content: '';
}

/* 혜택 리스트 */
.to-benefit-list {
    display: flex;
    gap: 16px;
    margin-top: 40px;
    list-style: none;
    padding: 0;
}

.to-benefit-item {
    flex: 1;
    background: #FFF;
    box-shadow: 0 0 20px 0 #CCDDEC;
    border-radius: 20px;
    padding: 30px 40px;
    box-sizing: border-box;
    text-align: center;
}

.to-benefit-desc {
    font-size: 16px;
    color: #222;
    display: block;
    word-break: keep-all;
    margin-bottom: 5px;
    line-height: 1.4;
}

.to-benefit-title {
    font-size: 20px;
    display: block;
    color: #268D6E;
}

/* 문의 버튼 */
.to-button-container {
    margin-top: 80px;
    display: flex;
    justify-content: center;
    gap: 20px;
}

.to-button-link {
    display: inline-block;
    padding: 15px 40px;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s;
    border: none;
    cursor: pointer;
}

.to-button-link.primary {
    background-color: #268D6E;
    color: #fff;
}

.to-button-link.primary:hover {
    background-color: #1f7459;
}

/* 성공 사례 */
.to-example-list-container {
    display: flex;
    flex-direction: column;
    gap: 35px;
}

.to-example-list {
    display: flex;
    gap: 45px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.to-example-list::before {
    display: block;
    width: 125px;
    height: 125px;
    background-color: #fff;
    border-radius: 20px;
    box-shadow: 0 0 20px 0 #CCDDEC;
    content: '';
    flex-shrink: 0;
}

.to-example-list.homeshopping::before {
    background: #fff url("/images/to/to-onpremise-intro-logo-homeshopping-c004001cdb2ddeb45d122c4e482aa2b6.png") no-repeat center center;
}

.to-example-list.lotte::before {
    background: #fff url("/images/to/to-onpremise-intro-logo-lotte-e93597104478d7258b23445cbffe270c.png") no-repeat center center;
}

.to-example-item {
    flex: 1;
    position: relative;
}

.to-example-item:not(:last-child) {
    margin-right: 80px;
}

.to-example-item:not(:last-child)::after {
    position: absolute;
    top: 50%;
    right: -80px;
    transform: translate(-50%, -50%);
    display: block;
    width: 47px;
    height: 32px;
    background: url("/images/to/to-process-arrow-046cb0903d616bfd8dd92bcb25c77400.svg") no-repeat center center / contain;
    content: '';
}

.to-example-inner {
    flex: 1;
}

.to-example-title {
    color: #222;
    font-size: 18px;
    font-weight: normal;
    display: block;
    margin-bottom: 20px;
}

.to-example-desc-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.to-example-desc-item {
    position: relative;
    padding-left: 13px;
    color: #666;
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 8px;
}

.to-example-desc-item::after {
    position: absolute;
    top: 10px;
    left: 0;
    display: inline-block;
    width: 2px;
    height: 2px;
    border-radius: 50%;
    background-color: #666;
    content: '';
}

/* 로고 리스트 */
.to-logo-container {
    margin-top: 50px;
}

.to-logo-list {
    display: grid;
    grid-template-rows: repeat(9, 1fr);
    grid-template-columns: repeat(9, 1fr);
    gap: 20px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.to-logo-item {
    border-radius: 10px;
    border: 1px solid #eee;
    width: 103px;
    height: 55px;
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}

.to-logo-item::before {
    display: block;
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/* 로고 스프라이트 - 각 로고별 배경 이미지 설정 */
.to-logo-item.gs::before { width: 60px; height: 25px; background-image: url("../images/to/icon/logo-gs.png"); }
.to-logo-item.samsung-ws::before { width: 80px; height: 20px; background-image: url("../images/to/icon/logo-samsung-ws.png"); }
.to-logo-item.kor-air::before { width: 70px; height: 25px; background-image: url("../images/to/icon/logo-kor-air.png"); }
.to-logo-item.lotte-jtb::before { width: 75px; height: 20px; background-image: url("../images/to/icon/logo-lotte-jtb.png"); }
.to-logo-item.hana-inv::before { width: 70px; height: 25px; background-image: url("../images/to/icon/logo-hana-inv.png"); }
.to-logo-item.skt::before { width: 60px; height: 25px; background-image: url("../images/to/icon/logo-skt.png"); }
.to-logo-item.hs-card::before { width: 70px; height: 20px; background-image: url("../images/to/icon/logo-hs-card.png"); }
.to-logo-item.samsung-insure::before { width: 75px; height: 20px; background-image: url("../images/to/icon/logo-samsung-insure.png"); }
.to-logo-item.samsung-life::before { width: 75px; height: 20px; background-image: url("../images/to/icon/logo-samsung-life.png"); }
.to-logo-item.hyundai::before { width: 70px; height: 25px; background-image: url("../images/to/icon/logo-hyundai.png"); }
.to-logo-item.samsung-crops::before { width: 75px; height: 20px; background-image: url("../images/to/icon/logo-samsung-crops.png"); }
.to-logo-item.lg-uplus::before { width: 60px; height: 25px; background-image: url("../images/to/icon/logo-lg-uplus.png"); }
.to-logo-item.skt-tel::before { width: 70px; height: 25px; background-image: url("../images/to/icon/logo-skt-tel.png"); }
.to-logo-item.woori-invest::before { width: 75px; height: 20px; background-image: url("../images/to/icon/logo-woori-invest.png"); }
.to-logo-item.dongbu::before { width: 70px; height: 25px; background-image: url("../images/to/icon/logo-dongbu.png"); }
.to-logo-item.shinhan-bank::before { width: 70px; height: 25px; background-image: url("../images/to/icon/logo-shinhan-bank.png"); }
.to-logo-item.hyundai-hs::before { width: 75px; height: 20px; background-image: url("../images/to/icon/logo-hyundai-hs.png"); }
.to-logo-item.prudential::before { width: 70px; height: 25px; background-image: url("../images/to/icon/logo-prudential.png"); }
.to-logo-item.emart::before { width: 60px; height: 25px; background-image: url("../images/to/icon/logo-emart.png"); }
.to-logo-item.cjmall::before { width: 70px; height: 25px; background-image: url("../images/to/icon/logo-cjmall.png"); }

/* 로그인 안내 */
.to-login-desc-container {
    text-align: center;
    padding: 75px 0;
}

.to-login-desc {
    color: #404040;
    font-size: 16px;
    line-height: 1.8;
}

.to-login-desc-link {
    color: #000;
    border-bottom: 1px solid #000;
    font-family: 'Pretendard-Bold', sans-serif;
    display: inline-block;
    margin-left: 5px;
    background: none;
    border-top: none;
    border-left: none;
    border-right: none;
    padding: 0;
    cursor: pointer;
    font-size: 16px;
}

.to-login-desc-link:hover {
    opacity: 0.7;
}

/* 접근성 숨김 */
.blind {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

/* 반응형 */
@media (max-width: 1024px) {
    .to-introduction-item {
        flex-direction: column !important;
        margin-left: 0 !important;
    }

    .to-introduction-item::before {
        margin: 0 0 30px 0 !important;
    }

    .to-benefit-list {
        flex-wrap: wrap;
    }

    .to-benefit-item {
        flex: 1 1 calc(50% - 8px);
        min-width: 250px;
    }

    .to-example-list {
        flex-direction: column;
    }

    .to-example-list::before {
        margin: 0 auto 30px;
    }

    .to-example-item:not(:last-child) {
        margin-right: 0;
        margin-bottom: 40px;
    }

    .to-example-item:not(:last-child)::after {
        display: none;
    }

    .to-logo-list {
        grid-template-columns: repeat(5, 1fr);
    }
}

@media (max-width: 768px) {
    .to-visual-title {
        font-size: 24px;
    }

    .to-inner-title {
        font-size: 28px;
    }

    .to-introduction-item::before {
        width: 100%;
        height: 220px;
    }

    .to-introduction-desc-title {
        font-size: 24px;
    }

    .to-benefit-list {
        flex-direction: column;
    }

    .to-benefit-item {
        flex: 1 1 100%;
    }

    .to-logo-list {
        grid-template-columns: repeat(3, 1fr);
        gap: 10px;
    }

    .to-logo-item {
        width: 100%;
    }
}

