#hero {
        width: 100%;
        margin-top: 64px;
        display: flex;
        height: 100vh;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 80px;
        align-self: stretch;
        background: url('/static/images/index/index_hero.png') center / cover no-repeat;
    }

    #hero .section-content {
        max-width: 1440px;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 60px;
    }

    #hero .section-content > div:first-child {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 16px;
    }

    #hero .section-content > div:first-child {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 16px;
    }

    #hero .section-content > div:first-child > div:first-child {
        color: #FFF;
        text-align: center;
        font-family: Pretendard;
        font-size: 44px;
        font-style: normal;
        font-weight: 700;
        line-height: 140%; /* 61.6px */
        letter-spacing: -1.1px;
    }

    #hero .section-content > div:first-child > div:first-child .text-diff {
        color: #F46A1B;
        text-align: center;
        font-family: Pretendard;
        font-size: 44px;
        font-style: normal;
        font-weight: 700;
        line-height: 140%; /* 61.6px */
        letter-spacing: -1.1px;
    }

    #hero .section-content > div:first-child > div:nth-child(2) {
        max-width: 609px;
        color: #E2E2E2;
        text-align: center;
        font-family: Pretendard;
        font-size: 24px;
        font-style: normal;
        font-weight: 500;
        line-height: 140%; /* 33.6px */
        letter-spacing: -0.6px;
    }

    #hero .section-content a {
        display: flex;
        padding: 8px 16px;
        justify-content: center;
        align-items: center;
        gap: 8px;
        border-radius: 8px;
        background: #FFF;

        color: #173358;
        text-align: center;
        font-family: Pretendard;
        font-size: 28px;
        font-style: normal;
        font-weight: 700;
        line-height: 140%; /* 39.2px */
        letter-spacing: -0.7px;
        text-decoration: none;
    }

    #hero .section-content a:hover {
        color: #0D96D2;
    }

    #issues {
        min-height: 100vh;
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        background: #FFF;
    }

    #issues .section-content {
        width: 100%;
        max-width: 1440px;
        display: flex;
        padding: 120px 40px;
        justify-content: center;
        align-items: center;
        gap: 80px;
        align-self: stretch;
    }
    
    #issues .section-text {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        gap: 20px;
    }

    #issues .section-text > div:first-child {
        color: #424242;
        font-family: Pretendard;
        font-size: 32px;
        font-style: normal;
        font-weight: 600;
        line-height: 150%; /* 48px */
        letter-spacing: -0.8px;
    }

    #issues .section-text > div:first-child .text-diff {
        color: #F46A1B;
        font-family: Pretendard;
        font-size: 32px;
        font-style: normal;
        font-weight: 600;
        line-height: 150%; /* 48px */
        letter-spacing: -0.8px;
    }

    #issues .section-text > div:nth-child(2) {
        color: #585858;
        font-family: Pretendard;
        font-size: 20px;
        font-style: normal;
        font-weight: 500;
        line-height: 150%; /* 30px */
        letter-spacing: -0.5px;
    }

    #issues .section-text > div:nth-child(2) .text-diff {
        color: #424242;
        font-weight: 600;
    }

    #issues .section-img {
        width: 628px;
        height: 471px;
        aspect-ratio: 4/3;
        border-radius: 4px;
        background: url('/static/images/index/index_issues.png') 50% / contain no-repeat;
    }

    #problem {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        background: #F4F6FA;
    }

    #problem .section-content {
        width: 100%;
        max-width: 1440px;
        display: flex;
        min-height: 820px;
        padding: 120px 40px;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 80px;
        background: #F4F6FA;
    }

    #problem .section-content .section-title {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 16px;

        color: #424242;
        font-family: Pretendard;
        font-size: 32px;
        font-style: normal;
        font-weight: 700;
        line-height: 150%; /* 48px */
        letter-spacing: -0.8px;
        text-align: center;
    }

    #problem .section-content .section-contents {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 60px;
        align-self: stretch;
        flex-wrap: wrap;
    }

    #problem .section-content .section-contents .problem-card {
        display: flex;
        justify-content: center;
        align-items: center;

        width: 340px;
        height: 340px;
    }

    #problem .section-content .section-contents .problem-card .problem-card-circle {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 340px;
        height: 340px;
        aspect-ratio: 1/1;
        border-radius: 340px;
        background: #FFF;
        box-shadow: 0 4px 8px 0 rgba(23, 51, 88, 0.12);
    }

    #problem .section-content .section-contents .problem-card .problem-card-circle .problem-card-text {
        display: inline-flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 12px;
    }

    #problem .section-content .section-contents .problem-card .problem-card-circle .problem-card-text > div:first-child {
        color: #F46A1B;
        text-align: center;
        font-family: Pretendard;
        font-size: 14px;
        font-style: normal;
        font-weight: 500;
        line-height: 135%; /* 18.9px */
        letter-spacing: -0.3px;
    }

    #problem .section-content .section-contents .problem-card .problem-card-circle .problem-card-text > div:nth-child(2) {
        color: #2E2E2E;
        text-align: center;
        font-family: Pretendard;
        font-size: 28px;
        font-style: normal;
        font-weight: 600;
        line-height: 140%; /* 39.2px */
        letter-spacing: -0.7px;
    }

    #problem .section-content .section-contents .problem-card .problem-card-circle .problem-card-text > div:nth-child(3) {
        color: #585858;
        text-align: center;
        font-family: Pretendard;
        font-size: 16px;
        font-style: normal;
        font-weight: 500;
        line-height: 135%; /* 21.6px */
        letter-spacing: -0.4px;
    }

    #problem .section-content .section-contents .problem-card .problem-card-circle .problem-card-text > div:nth-child(3) .text-diff {
        color: #424242;
        font-weight: 600;
    }

    #features {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        align-self: stretch;
        background: #FFF;
    }

    #features .section-content {
        width: 100%;
        max-width: 1440px;
        display: flex;
        padding-top: 120px;
        flex-direction: column;
        align-items: center;
        gap: 40px;
    }

    #features .section-content .section-content-title {
        color: #424242;
        text-align: center;
        font-family: Pretendard;
        font-size: 32px;
        font-style: normal;
        font-weight: 700;
        line-height: 150%; /* 48px */
        letter-spacing: -0.8px;
    }

    #features .section-content .section-content-contents {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        align-self: stretch;
    }

    #features .section-content .section-content-contents > div:first-child {
        display: flex;
        padding: 100px 40px;
        justify-content: center;
        align-items: center;
        align-self: stretch;
        /* background: #FFF; */
        flex-wrap: wrap;
        gap: 80px
    }

    #features .section-content .section-content-contents > div:first-child .section-content-contents-text {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        gap: 20px;
        flex: 1;
        min-width: 400px;
        max-width: 642px;
    }

    #features .section-content .section-content-contents.is-second .text-flex-end {
        align-items: flex-end !important;
    }

    #features .section-content .section-content-contents.is-second .section-content-contents-text > :nth-child(3) {
        text-align: right !important;
    }


    #features .section-content .section-content-contents > div:first-child .section-content-contents-text > div:first-child {
        display: flex;
        width: 40px;
        height: 40px;
        padding: 8px;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 8px;
        border-radius: 999px;
        background: #0D96D2;

        color: #FFF;
        font-family: Pretendard;
        font-size: 20px;
        font-style: normal;
        font-weight: 700;
        line-height: 150%; /* 30px */
        letter-spacing: -0.5px;
    }

    #features .section-content .section-content-contents > div:first-child .section-content-contents-text > :nth-child(2) {
        color: #424242;
        font-family: Pretendard;
        font-size: 32px;
        font-style: normal;
        font-weight: 600;
        line-height: 150%; /* 48px */
        letter-spacing: -0.8px;
    }
    
    #features .section-content .section-content-contents.is-second > div:first-child .section-content-contents-text > :nth-child(2) {
        text-align: right;
    }

    #features .section-content .section-content-contents > div:first-child .section-content-contents-text > :nth-child(3) {
        color: #585858;
        font-family: Pretendard;
        font-size: 20px;
        font-style: normal;
        font-weight: 500;
        line-height: 150%; /* 30px */
        letter-spacing: -0.5px;
    }

    #features .section-content .section-content-contents > div:first-child .section-content-contents-text > :nth-child(3) .text-diff {
        color: #424242;
        font-weight: 600;
    }

    #features .section-content .section-content-contents > div:first-child .section-content-contents-img {
        display: flex;
        width: 628px;
        height: 471px;
        padding: 45px 30px;
        justify-content: center;
        align-items: center;
        border-radius: 4px;
        background: #E9ECF3;
        flex-shrink: 0;
    }

    #features .section-content .section-content-contents > div:first-child .section-content-contents-img > div:first-child {
        width: 100%;
        height: auto;
        aspect-ratio: 568/381;
        border-radius: 12px;
        background: url('/static/images/index/index_features1.png') lightgray -14.85px -2.754px / 102.614% 100.944% no-repeat;
        box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.15);
    }

    #features .section-content .section-content-contents.is-second .section-content-contents-img > div:first-child {
        background: url('/static/images/index/index_features2.png') lightgray -14.85px -2.754px / 102.614% 100.944% no-repeat !important;
    }

    #features .section-content .section-content-contents.is-third .section-content-contents-img > div:first-child {
        background: url('/static/images/index/index_features3.png') lightgray -14.85px -2.754px / 102.614% 100.944% no-repeat !important;
    }

    #contact {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 480px;
        align-self: stretch;
        background: #0D96D2;
    }

    #contact .section-content {
        width: 100%;
        height: 480px;
        display: flex;
        justify-content: center;
        align-items: center;
        background: linear-gradient(180deg, #173258 0%, rgba(23, 50, 88, 0.00) 62.69%, #173258 100%);
    }

    #contact .section-content > div:first-child {
        display: inline-flex;
        flex-direction: column;
        align-items: center;
        gap: 40px;
    }

    #contact .section-content > div:first-child > div:first-child {
        color: #FFF;
        text-align: center;
        font-family: Pretendard;
        font-size: 40px;
        font-style: normal;
        font-weight: 700;
        line-height: 140%; /* 56px */
        letter-spacing: -1px;
    }

    #contact .section-content > div:first-child a {
        display: flex;
        padding: 8px 16px;
        justify-content: center;
        align-items: center;
        gap: 8px;

        border-radius: 8px;
        background: #FFF;

        color: #173358;
        text-align: center;
        font-family: Pretendard;
        font-size: 28px;
        font-style: normal;
        font-weight: 700;
        line-height: 140%; /* 39.2px */
        letter-spacing: -0.7px;
        text-decoration: none;
    }

    #contact .section-content > div:first-child a:hover {
        color: #0D96D2;
    }

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

    .mobile-show-diff {
        display: none !important;
    }

    .animate-up {
        opacity: 0;
        transform: translateY(40px);
        transition: opacity var(--duration, 0.9s) ease-out,
                    transform var(--duration, 0.9s) ease-out;
    }

    /* 등장 후 상태 */
    .animate-up.show {
        opacity: 1;
        transform: translateY(0);
    }


    @media (max-width: 1187px) {
        .mobile-show-diff {
            display: flex !important;
        }

        .mobile-delete-diff {
            display: none !important;
        }

        #features .section-content .section-content-contents.is-second .section-content-contents-text > :nth-child(3) {
            text-align: unset !important;
        }
    }

    @media (max-width: 1150px) {
        #issues .section-content {
            padding: 80px 16px;
            flex-wrap: wrap;
            gap: 40px;
        }
    }

    @media (max-width: 820px) {
        #issues .section-text > div:first-child {
            font-size: 24px;
            line-height: 140%;
            letter-spacing: -0.6px;
        }

        #issues .section-text > div:first-child .text-diff {
            font-size: 24px;
        }

        #issues .section-text > div:nth-child(2) {
            font-size: 16px;
            line-height: 135%;
            letter-spacing: -0.4px;
        }

        #issues .section-text > div:nth-child(2) .text-diff {
            font-size: 16px;
        }

        #issues .section-img {
            display: flex;
            width: 100%;
            height: auto;
            justify-content: center;
            align-items: center;
            align-self: stretch;
        }

        #problem .section-content .section-title {
            font-size: 24px;
            letter-spacing: -0.6px;
        }

        #problem .section-content .section-contents {
            gap: 0;
        }

        #problem .section-content .section-contents .problem-card .problem-card-circle {
            width: 300px;
            height: 300px;
            aspect-ratio: 1/1;
            border-radius: 160px;
            background: #FFF;
            box-shadow: 0 4px 8px 0 rgba(23, 51, 88, 0.12);
        }

        #problem .section-content .section-contents .problem-card .problem-card-circle .problem-card-text > div:first-child {
            font-size: 12px;
        }

        #problem .section-content .section-contents .problem-card .problem-card-circle .problem-card-text > div:nth-child(2) {
            font-size: 24px;
            letter-spacing: -0.6px;
        }

        #problem .section-content .section-contents .problem-card .problem-card-circle .problem-card-text > div:nth-child(3) {
            font-size: 14px;
            letter-spacing: -0.35px;
        }

        #features {
            padding: 120px 16px;
        }

        #features .section-content .section-content-title {
            font-size: 24px;
            letter-spacing: -0.6px;
        }

        #features .section-content {
            padding-top: 0;
            gap: 80px;
        }

        #features .section-content .section-content-contents > div:first-child {
            padding: 0;
            gap: 40px;
        }

        #features .section-content .section-content-contents > div:first-child .section-content-contents-text {
            gap: 8px;
        }

        #features .section-content .section-content-contents > div:first-child .section-content-contents-text > div:first-child {
            width: 24px;
            height: 24px;

            font-size: 16px;
            letter-spacing: -0.4px;
        }

        #features .section-content .section-content-contents > div:first-child .section-content-contents-text > :nth-child(2) {
            font-size: 20px;
            letter-spacing: -0.5px;
        }

        #features .section-content .section-content-contents > div:first-child .section-content-contents-text > :nth-child(3) {
            font-size: 14px;
            letter-spacing: -0.35px;
        }

        #features .section-content .section-content-contents > div:first-child .section-content-contents-img {
            width: 100%;
            height: auto;
            padding: 27.5px 22px 28px 22px;
        }

        #features .section-content .section-content-contents > div:first-child .section-content-contents-img > div:first-child {
            width: 100%;
            height: auto;
            aspect-ratio: 568/381;
        }

         #features .section-content .section-content-contents > div:first-child .section-content-contents-text {
            min-width: unset;
            max-width: 100%;
            width: 100%;
        }

        #features .section-content .section-content-contents.is-second > div:first-child .section-content-contents-text > :nth-child(2) {
            text-align: left;
        }

        #features .section-content .section-content-contents.is-second .section-content-contents-text > :nth-child(3) {
            text-align: unset !important;
        }

        #contact {
            height: 156px;
        }
        
        #contact .section-content {
            height: 156px;
        }

        #contact .section-content > div:first-child > div:first-child {
            font-size: 16px;
            letter-spacing: -0.4px;
        }

        #hero .section-content > div:first-child > div:first-child {
            font-size: 24px;
        }

        #hero .section-content > div:first-child > div:first-child .text-diff {
            font-size: 24px;
        }

        #hero .section-content > div:first-child > div:nth-child(2) {
            font-size: 16px;
        }

        #hero .section-content a {
            font-size: 20px;
        }

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

        .mobile-show {
            display: block !important;
        }
    }