﻿@charset "utf-8";

*{
    word-break: keep-all;
    body {
        background: #000;
    }
}

/* ========== ?낇븰?덈궡 ?섏씠吏 (apply) - ?ㅽ겕 ?뚮쭏 ========== */

/* ?덉뼱濡??뱀뀡 */
#apply .apply_hero {
    width: 100%;
    height: 400px;
    padding: 0 180px;
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.08) 0%, rgba(0, 0, 0, 0.95) 50%, rgba(239, 68, 68, 0.05) 100%), #000;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    box-sizing: border-box;
    margin-top: 70px;
    position: relative;
    overflow: hidden;
}
#apply .apply_hero::before {
    content: '';
    position: absolute;
    width: 400px;
    height: 400px;
    right: -50px;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(239, 68, 68, 0.08);
    border-radius: 9999px;
    filter: blur(80px);
    pointer-events: none;
}
#apply .apply_hero .inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 9px;
    width: 100%;
    padding: 0;
    position: relative;
    z-index: 1;
}
#apply .apply_hero .hero_label {
    color: #ef4444;
    font-size: 22px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    margin: 0;
}
#apply .apply_hero .hero_title {
    display: flex;
    flex-direction: column;
    margin: 0;
}
#apply .apply_hero .hero_title .dark {
    color: #fff;
    font-size: 64px;
    font-family: 'Orbitron', sans-serif;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 1.2;
}
#apply .apply_hero .hero_title .muted {
    color: rgba(255, 255, 255, 0.5);
    font-size: 64px;
    font-family: 'Orbitron', sans-serif;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 1.2;
}

/* ?곷떞 ?덈궡 ?뱀뀡 */
#apply .apply_info {
    width: 100%;
    padding: 144px 180px;
    background: #000;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
}
#apply .apply_info::before {
    content: '';
    position: absolute;
    width: 600px;
    height: 600px;
    left: -200px;
    bottom: 10%;
    background: rgba(239, 68, 68, 0.05);
    border-radius: 9999px;
    filter: blur(100px);
    pointer-events: none;
}
#apply .apply_info .inner {
    display: flex;
    flex-direction: column;
    gap: 144px;
    width: 100%;
    padding: 0;
    position: relative;
    z-index: 1;
}

/* ?곷떞 移대뱶 ?곸뿭 */
#apply .info_cards {
    display: flex;
    gap: 18px;
}
#apply .info_card {
    flex: 1;
    padding: 36px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 18px;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
}

/* ?꾩닔 ?덉빟 移대뱶 */
#apply .booking_card {
    gap: 36px;
}
#apply .booking_card .card_header {
    display: flex;
    align-items: center;
    gap: 18px;
}
#apply .booking_card .card_icon {
    width: 60px;
    height: 60px;
    background: rgba(239, 68, 68, 0.15);
    border-radius: 9px;
    display: flex;
    justify-content: center;
    align-items: center;
}
#apply .booking_card .card_icon img {
    filter: brightness(0) saturate(100%) invert(42%) sepia(93%) saturate(1352%) hue-rotate(331deg) brightness(101%) contrast(97%);
}
#apply .booking_card .card_title {
    color: #fff;
    font-size: 22px;
    font-family: 'Orbitron', sans-serif;
    font-weight: 700;
    line-height: 1.4;
    margin: 0;
}
#apply .booking_card .card_desc {
    color: #aaa;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}
#apply .booking_card .card_desc .accent {
    color: #ef4444;
    font-weight: 700;
}

/* 泥댄겕由ъ뒪??*/
#apply .check_list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 18px;
}
#apply .check_list li {
    padding: 19px;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 18px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    display: flex;
    align-items: center;
    gap: 18px;
}
#apply .check_list .check_icon {
    display: flex;
    flex-shrink: 0;
}
#apply .check_list .check_icon img {
    filter: brightness(0) saturate(100%) invert(42%) sepia(93%) saturate(1352%) hue-rotate(331deg) brightness(101%) contrast(97%);
}
#apply .check_list li span:last-child {
    color: #fff;
    font-size: 18px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
}

/* ?곕씫泥?移대뱶 */
#apply .contact_card {
    justify-content: space-between;
}
#apply .contact_badge {
    display: inline-flex;
    align-self: flex-start;
    padding: 9px 18px;
    background: rgba(239, 68, 68, 0.15);
    border-radius: 30px;
    color: #ef4444;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
}
#apply .contact_info {
    display: flex;
    flex-direction: column;
    gap: 18px;
}
#apply .contact_item {
    display: flex;
    flex-direction: column;
    gap: 9px;
}
#apply .contact_label {
    color: #aaa;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
}
#apply .contact_value {
    color: #fff;
    font-size: 22px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 500;
    line-height: 1.4;
}
#apply .contact_buttons {
    display: flex;
    gap: 18px;
}
#apply .btn_book_online {
    flex: 1;
    padding: 18px 36px;
    background: #ef4444;
    box-shadow: 0px 0px 30px rgba(239, 68, 68, 0.30);
    border-radius: 9999px;
    color: #fff;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.23px;
    text-align: center;
    text-decoration: none;
    transition: all 0.3s ease;
}
#apply .btn_book_online:hover {
    background: #dc2626;
    transform: translateY(-2px);
    box-shadow: 0px 0px 40px rgba(239, 68, 68, 0.50);
}
#apply .btn_faq {
    padding: 18px 36px;
    background: rgba(255, 255, 255, 0.10);
    border: 1px solid rgba(255, 255, 255, 0.20);
    border-radius: 9999px;
    color: #fff;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.23px;
    text-align: center;
    text-decoration: none;
    transition: all 0.3s ease;
}
#apply .btn_faq:hover {
    background: rgba(255, 255, 255, 0.20);
    transform: translateY(-2px);
}

/* 怨쇱젙 ?뱀뀡 */
#apply .course_section {
    display: flex;
    flex-direction: column;
    gap: 36px;
}
#apply .course_header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
#apply .course_title_area {
    display: flex;
    flex-direction: column;
    gap: 9px;
}
#apply .course_title {
    margin: 0;
    font-size: 46px;
    font-family: 'Orbitron', sans-serif;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 1.2;
}
#apply .course_title .dark {
    color: #fff;
}
#apply .course_title .muted {
    color: rgba(255, 255, 255, 0.5);
}
#apply .course_subtitle {
    color: #aaa;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}
#apply .guide_badge {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 9px 18px;
    background: rgba(239, 68, 68, 0.15);
    border-radius: 30px;
    text-decoration: none;
    transition: all 0.3s ease;
}
#apply .guide_badge:hover {
    background: rgba(239, 68, 68, 0.25);
}
#apply .guide_badge img {
    filter: brightness(0) saturate(100%) invert(42%) sepia(93%) saturate(1352%) hue-rotate(331deg) brightness(101%) contrast(97%);
}
#apply .guide_badge span {
    color: #ef4444;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
}

/* 怨쇱젙 移대뱶 */
#apply .course_cards {
    display: flex;
    gap: 18px;
}
#apply .course_card {
    flex: 1;
    padding: 36px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 18px;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    display: flex;
    flex-direction: column;
    gap: 18px;
    box-sizing: border-box;
    transition: all 0.3s ease;
}
#apply .course_card:hover {
    transform: translateY(-5px);
    border-color: rgba(239, 68, 68, 0.3);
    box-shadow: 0px 8px 24px rgba(239, 68, 68, 0.15);
}
#apply .course_icon {
    width: 60px;
    height: 60px;
    border-radius: 9px;
    display: flex;
    justify-content: center;
    align-items: center;
}
#apply .course_card.blue .course_icon {
    background: rgba(239, 68, 68, 0.15);
}
#apply .course_card.purple .course_icon {
    background: rgba(249, 115, 22, 0.15);
}
#apply .course_card.pink .course_icon {
    background: rgba(251, 191, 36, 0.15);
}
#apply .course_icon span {
    font-size: 38px;
    font-family: 'Orbitron', sans-serif;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 1.2;
}
#apply .course_card.blue .course_icon span {
    color: #ef4444;
}
#apply .course_card.purple .course_icon span {
    color: #f97316;
}
#apply .course_card.pink .course_icon span {
    color: #fbbf24;
}
#apply .course_text {
    display: flex;
    flex-direction: column;
    gap: 9px;
}
#apply .course_name {
    color: #fff;
    font-size: 22px;
    font-family: 'Orbitron', 'Noto Sans KR', sans-serif;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
}
#apply .course_desc {
    color: #aaa;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}
#apply .course_note {
    color: #ef4444;
    font-size: 14px;
    font-family: 'Noto Sans KR', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}

/* ?섎떒 ?덈궡 諛곕꼫 */
#apply .course_notice {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 24px 36px;
    background: rgba(239, 68, 68, 0.08);
    border: 1px solid rgba(239, 68, 68, 0.20);
    border-radius: 18px;
}
#apply .notice_content {
    display: flex;
    align-items: center;
    gap: 9px;
}
#apply .notice_content img {
    flex-shrink: 0;
    filter: brightness(0) saturate(100%) invert(42%) sepia(93%) saturate(1352%) hue-rotate(331deg) brightness(101%) contrast(97%);
}
#apply .notice_content p {
    color: #aaa;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}
#apply .notice_content p strong {
    color: #fff;
    font-weight: 700;
}
#apply .btn_roadmap {
    padding: 18px 36px;
    background: rgba(255, 255, 255, 0.10);
    border: 1px solid rgba(255, 255, 255, 0.20);
    border-radius: 9999px;
    color: #fff;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.23px;
    text-decoration: none;
    white-space: nowrap;
    transition: all 0.3s ease;
}
#apply .btn_roadmap:hover {
    background: rgba(255, 255, 255, 0.20);
    transform: translateY(-2px);
}

/* 입학모집 시기 & 과정 안내 섹션 */
#apply .apply_recruitment {
    width: 100%;
    padding: 144px 180px;
    background: #000;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
    padding-bottom: 0;
}
#apply .apply_recruitment .inner {
    display: flex;
    flex-direction: column;
    gap: 72px;
    width: 100%;
    padding: 0;
    position: relative;
    z-index: 1;
}

/* 섹션 헤더 */
#apply .recruitment_header {
    display: flex;
    align-items: center;
    gap: 50px;
}
#apply .recruitment_icon {
    width: 60px;
    height: 60px;
    background: rgba(239, 68, 68, 0.2);
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
#apply .recruitment_icon span {
    color: #ef4444;
    font-size: 38px;
    font-family: 'Orbitron', sans-serif;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 1.2;
}
#apply .recruitment_title_area {
    display: flex;
    flex-direction: column;
    gap: 9px;
}
#apply .recruitment_title {
    color: #fff;
    font-size: 32px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1.4;
    margin: 0;
}
#apply .recruitment_subtitle {
    color: #aaa;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}

/* 과정 카드 컨테이너 */
#apply .recruitment_cards {
    display: flex;
    flex-direction: column;
    gap: 72px;
    width: 100%;
    padding: 36px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 18px;
    box-sizing: border-box;
}

/* 개별 카드 */
#apply .recruitment_card {
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding: 37px;
    background: rgba(239, 68, 68, 0.05);
    border: 1px solid rgba(239, 68, 68, 0.1);
    border-radius: 18px;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
}
#apply .card_header_row {
    display: flex;
    align-items: center;
    gap: 50px;
}
#apply .card_number_icon {
    width: 60px;
    height: 60px;
    background: rgba(239, 68, 68, 0.2);
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
#apply .card_number_icon span {
    color: #ef4444;
    font-size: 38px;
    font-family: 'Orbitron', sans-serif;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 1.2;
}
#apply .card_title_area {
    display: flex;
    flex-direction: column;
    gap: 9px;
    flex: 1;
}
#apply .card_title {
    color: #fff;
    font-size: 32px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1.4;
    margin: 0;
}
#apply .card_subtitle {
    color: #aaa;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}

/* 카드 상세 리스트 */
#apply .card_details {
    list-style: disc;
    margin: 0;
    padding-left: 30px;
    display: flex;
    flex-direction: column;
    gap: 0;
}
#apply .card_details li {
    color: #fff;
    font-size: 20px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 500;
    line-height: 1.4;
    margin-bottom: 0;
}
#apply .card_details li:last-child {
    margin-bottom: 0;
}

/* 반응형 */
@media all and (max-width: 1200px) {
    #apply .apply_recruitment {
        padding: 100px 60px;
    }
    #apply .recruitment_header {
        gap: 30px;
    }
    #apply .recruitment_title {
        font-size: 28px;
    }
    #apply .card_header_row {
        gap: 30px;
    }
    #apply .card_title {
        font-size: 28px;
    }
    #apply .card_details li {
        font-size: 18px;
    }
}
@media all and (max-width: 768px) {
    #apply .apply_recruitment {
        padding: 80px 20px;
    }
    #apply .apply_recruitment .inner {
        gap: 48px;
    }
    #apply .recruitment_header {
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
    }
    #apply .recruitment_icon {
        width: 50px;
        height: 50px;
    }
    #apply .recruitment_icon span {
        font-size: 32px;
    }
    #apply .recruitment_title {
        font-size: 24px;
    }
    #apply .recruitment_cards {
        padding: 24px;
        gap: 36px;
    }
    #apply .recruitment_card {
        padding: 24px;
        gap: 18px;
    }
    #apply .card_header_row {
        flex-direction: column;
        align-items: flex-start;
        gap: 18px;
    }
    #apply .card_number_icon {
        width: 50px;
        height: 50px;
    }
    #apply .card_number_icon span {
        font-size: 32px;
    }
    #apply .card_title {
        font-size: 22px;
    }
    #apply .card_subtitle {
        font-size: 14px;
    }
    #apply .card_details {
        padding-left: 20px;
    }
    #apply .card_details li {
        font-size: 16px;
    }
}

/* ?섎떒 CTA ?뱀뀡 */
#apply .apply_cta {
    width: 100%;
    padding: 144px 180px;
    background: #0a0a0a;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
}
#apply .apply_cta::before {
    content: '';
    position: absolute;
    width: 500px;
    height: 500px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background: rgba(239, 68, 68, 0.05);
    border-radius: 9999px;
    filter: blur(100px);
    pointer-events: none;
}
#apply .apply_cta .inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 72px;
    width: 100%;
    padding: 0;
    position: relative;
    z-index: 1;
}
#apply .apply_cta .cta_content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 36px;
    width: 100%;
}
#apply .apply_cta .cta_title {
    color: #fff;
    font-size: 46px;
    font-family: 'Orbitron', sans-serif;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 1.2;
    margin: 0;
    text-align: center;
}
#apply .cta_cards {
    display: flex;
    gap: 18px;
    width: 100%;
    max-width: 1200px;
}
#apply .cta_card {
    flex: 1;
    padding: 36px 18px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 18px;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
    box-sizing: border-box;
    transition: all 0.3s ease;
}
#apply .cta_card:hover {
    border-color: rgba(239, 68, 68, 0.3);
    box-shadow: 0px 8px 24px rgba(239, 68, 68, 0.15);
}
#apply .cta_icon {
    display: flex;
    justify-content: center;
    align-items: center;
}
#apply .cta_icon img {
    filter: brightness(0) saturate(100%) invert(42%) sepia(93%) saturate(1352%) hue-rotate(331deg) brightness(101%) contrast(97%);
}
#apply .cta_label {
    color: #aaa;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
}
#apply .cta_value {
    color: #fff;
    font-size: 22px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
}
#apply .apply_cta .cta_desc {
    color: #aaa;
    font-size: 18px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    text-align: center;
    margin: 0;
}
#apply .btn_apply_cta {
    padding: 18px 36px;
    background: #ef4444;
    box-shadow: 0px 0px 30px rgba(239, 68, 68, 0.30);
    border-radius: 9999px;
    color: #fff;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.23px;
    text-decoration: none;
    transition: all 0.3s ease;
}
#apply .btn_apply_cta:hover {
    background: #dc2626;
    transform: translateY(-2px);
    box-shadow: 0px 0px 40px rgba(239, 68, 68, 0.50);
}

/* ========== ?낇븰?덈궡 諛섏쓳??- ?쒕툝由?========== */
@media all and (max-width: 1400px) {
    #apply .apply_hero {
        height: 350px;
        padding: 0 60px;
    }
    #apply .apply_hero .hero_title .dark,
    #apply .apply_hero .hero_title .muted {
        font-size: 52px;
    }
    #apply .apply_info {
        padding: 100px 60px;
    }
    #apply .apply_info .inner {
        gap: 100px;
    }
    #apply .course_title {
        font-size: 38px;
    }
    #apply .apply_cta {
        padding: 100px 60px;
    }
    #apply .apply_cta .cta_title {
        font-size: 38px;
    }
}

@media all and (max-width: 1024px) {
    #apply .apply_hero {
        height: 300px;
        padding: 0 40px;
    }
    #apply .apply_hero .hero_label {
        font-size: 18px;
    }
    #apply .apply_hero .hero_title .dark,
    #apply .apply_hero .hero_title .muted {
        font-size: 42px;
    }
    #apply .apply_info {
        padding: 80px 40px;
    }
    #apply .apply_info .inner {
        gap: 80px;
    }
    #apply .info_cards {
        flex-direction: column;
    }
    #apply .course_cards {
        flex-direction: column;
    }
    #apply .course_header {
        flex-direction: column;
        gap: 18px;
    }
    #apply .course_title {
        font-size: 32px;
    }
    #apply .course_notice {
        flex-direction: column;
        gap: 24px;
        text-align: center;
    }
    #apply .notice_content {
        flex-direction: column;
    }
    #apply .apply_cta {
        padding: 80px 40px;
    }
    #apply .cta_cards {
        flex-direction: column;
    }
    #apply .apply_cta .cta_title {
        font-size: 32px;
    }
}

/* ========== ?낇븰?덈궡 諛섏쓳??- 紐⑤컮??========== */
@media all and (max-width: 768px) {
    #apply .apply_hero {
        height: auto;
        padding: 80px 20px;
    }
    #apply .apply_hero .hero_label {
        font-size: 14px;
    }
    #apply .apply_hero .hero_title .dark,
    #apply .apply_hero .hero_title .muted {
        font-size: 28px;
    }
    #apply .apply_info {
        padding: 60px 20px;
    }
    #apply .apply_info .inner {
        gap: 60px;
    }
    #apply .info_card {
        padding: 24px;
    }
    #apply .booking_card .card_header {
        flex-direction: column;
        align-items: flex-start;
    }
    #apply .booking_card .card_icon {
        width: 50px;
        height: 50px;
    }
    #apply .booking_card .card_title {
        font-size: 18px;
    }
    #apply .booking_card .card_desc {
        font-size: 14px;
    }
    #apply .booking_card .card_desc br {
        display: none;
    }
    #apply .check_list li {
        padding: 14px;
        gap: 12px;
    }
    #apply .check_list li span:last-child {
        font-size: 14px;
    }
    #apply .contact_value {
        font-size: 18px;
    }
    #apply .contact_buttons {
        flex-direction: column;
        margin-top: 20px;

    }
    #apply .btn_book_online,
    #apply .btn_faq {
        padding: 14px 24px;
        font-size: 14px;
    }
    #apply .course_section {
        gap: 24px;
    }
    #apply .course_title {
        font-size: 24px;
    }
    #apply .course_subtitle {
        font-size: 14px;
    }
    #apply .guide_badge {
        padding: 6px 12px;
    }
    #apply .guide_badge span {
        font-size: 12px;
    }
    #apply .course_card {
        padding: 24px;
    }
    #apply .course_icon {
        width: 50px;
        height: 50px;
    }
    #apply .course_icon span {
        font-size: 28px;
    }
    #apply .course_name {
        font-size: 16px;
    }
    #apply .course_desc {
        font-size: 14px;
    }
    #apply .course_desc br {
        display: none;
    }
    #apply .course_notice {
        padding: 18px 20px;
    }
    #apply .notice_icon {
        width: 50px;
        height: 50px;
    }
    #apply .notice_content p {
        font-size: 14px;
    }
    #apply .notice_content p br {
        display: none;
    }
    #apply .btn_roadmap {
        padding: 14px 24px;
        font-size: 14px;
    }
    #apply .apply_cta {
        padding: 60px 20px;
    }
    #apply .apply_cta .inner {
        gap: 40px;
    }
    #apply .apply_cta .cta_title {
        font-size: 24px;
    }
    #apply .cta_card {
        padding: 24px 14px;
    }
    #apply .cta_label {
        font-size: 14px;
    }
    #apply .cta_value {
        font-size: 16px;
    }
    #apply .apply_cta .cta_desc {
        font-size: 14px;
    }
    #apply .btn_apply_cta {
        padding: 14px 24px;
        font-size: 14px;
    }
}

/* ?뚯썝媛???대찓???먮룞?꾩꽦 */
.autocomplete-suggestions { 
	border: 1px solid #ccc; 
	max-height: 150px; 
	overflow-y: auto; 
	position: relative; 
/* 	position: absolute;  */
	background-color: white; 
	z-index: 1000; 
	width: calc(100% - 22px); 
} 

/* ============== ?쇳븨紐?釉뚮옖??brand) - shopj02 brand02 湲곗? ============== */
.brand_wrap{padding-top: 30px;}
.brand_wrap .common_tit{padding:30px 30px 10px;text-align: center;font-size:28px;color:#111;}
.brand_wrap .common_desc{font-size:16px;color:#666;margin:8px 0 30px;text-align: center;}
.brand_wrap .tab{width:100%;overflow:hidden;margin-bottom: 30px;border:0;}
.brand_wrap .tab li{width:16.66666666666667%;float:left;}
.brand_wrap .tab li a{display:block;height: 41px;border:1px solid #d9d9d9;font-size:16px;color:#444;line-height: 2.5;text-align: center;border-right-width:0;}
.brand_wrap .tab li:nth-of-type(6n) a{border-right-width: 1px;}
.brand_wrap .tab li:nth-of-type(n+7) a{border-top: 0;}
.brand_wrap .tab li.on a{border-color:#007bc8;background:#007bc8;color:#fff;font-weight: 700;border-left:1px solid #007bc8;}
.brand_wrap .tab li:hover a{border-color:#007bc8;background:#007bc8;color:#fff;font-weight: 700;border-left:1px solid #007bc8;}
.brand_wrap .prd_list_wrap{}
.brand_wrap .prd_list{overflow:hidden;}
.brand_wrap .prd_list li{float:left;width:32%;margin-right:2%;margin-bottom: 2%;}
.brand_wrap .prd_list li:nth-of-type(3n){margin-right: 0;}
.brand_wrap .prd_list li > a{display:block;position:relative;padding-top:100%;overflow:hidden;}
.brand_wrap .prd_list li > a img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;}
.brand_wrap .brand_info{position:absolute;top:0;bottom: 0;left: 0;right: 0;text-align: center;background:rgba(0,0,0,0.05);}
.brand_wrap .brand_info:hover{background:rgba(0,0,0,0.2);}
.brand_wrap .brand_name{width:100%;position:absolute;top:50%;margin-top:-16px;text-align: center;color:#fff;line-height: 1.2em;font-weight: bold;font-size:30px;letter-spacing: -0.05em;}
.brand_wrap .prd_item_group{overflow:hidden;border:1px solid #d9d9d9;border-top:0;padding:10px;}
.brand_wrap .prd_item_group a{display:block;width:30%;float:left;}
.brand_wrap .prd_item_group a + a{margin-left: 5%;}
.brand_wrap .prd_info{}
.brand_wrap .prd_img{position:relative;padding-top:100%;overflow:hidden;}
.brand_wrap .prd_img:hover:after{content:'';display:block;width:100%;height: 100%;position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.1);}
.brand_wrap .prd_img img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;}
.brand_wrap .prd_name{font-size:13px;color:#444;line-height: 1.36;height: 2.71429em;overflow:hidden;}
.brand_wrap .prd_price{font-size:13px;color:#111;}
.brand_wrap .prd_price strong{font-size:15px;}
/* 釉뚮옖???ㅻ뜑 (釉뚮옖?쒓? ?곷떒) */
.brand_wrap .brand_header{position:relative;height:320px;background-size:cover;background-position:center;background-repeat:no-repeat;background-color:#1a1a2e;margin-bottom:40px;overflow:hidden;}
.brand_wrap .brand_header_overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.4) 50%, rgba(0,0,0,0.7) 100%);}
.brand_wrap .brand_header_content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:20px;}
.brand_wrap .brand_logo{width:120px;height:120px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,0.3);margin-bottom:15px;}
.brand_wrap .brand_logo img{max-width:80%;max-height:80%;object-fit:contain;}
.brand_wrap .brand_logo_text{font-size:24px;font-weight:bold;color:#333;text-align:center;padding:10px;}
.brand_wrap .brand_title{font-size:32px;font-weight:700;color:#fff;margin:0 0 5px 0;text-shadow:0 2px 10px rgba(0,0,0,0.3);}
.brand_wrap .brand_title_eng{font-size:14px;color:rgba(255,255,255,0.7);margin:0 0 15px 0;letter-spacing:2px;text-transform:uppercase;}
.brand_wrap .brand_meta{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:20px;}
.brand_wrap .brand_meta .brand_visitor{font-size:14px;color:rgba(255,255,255,0.8);}
.brand_wrap .brand_meta .brand_visitor i{margin-right:5px;}
.brand_wrap .brand_meta .brand_link{font-size:14px;color:rgba(255,255,255,0.8);text-decoration:none;transition:color 0.2s;}
.brand_wrap .brand_meta .brand_link:hover{color:#fff;}
.brand_wrap .brand_meta .brand_link i{margin-right:5px;}
.brand_wrap .brand_actions{}
.brand_wrap .btn_brand_info{display:inline-block;padding:12px 30px;background:transparent;border:2px solid rgba(255,255,255,0.8);color:#fff;font-size:14px;font-weight:600;border-radius:30px;cursor:pointer;transition:all 0.3s;}
.brand_wrap .btn_brand_info:hover{background:#fff;color:#333;border-color:#fff;}
.brand_wrap .btn_brand_info i{margin-right:8px;}

/* 湲곗〈 brand_cover ?ㅽ????좎? (?명솚?? */
.brand_wrap .brand_cover{height: 260px;margin-bottom: 50px;}
.brand_wrap .brand_cover .common_tit{padding:0; height:120px;}
.brand_wrap .brand_cover .common_tit img{height: 120px;}
.brand_wrap .brand_cover .brand_cover_btns{margin:20px 0;text-align: center;}
.brand_wrap .brand_cover .brand_cover_btns button{display:inline-block;min-width:2.57143em;height: 2.57143em;padding:0 0.85714em;border:1px solid #c9c9c9; vertical-align: middle;text-align: center;transition:0.15s;font-size:14px;background:transparent;margin:0 4px;}
.brand_wrap .brand_cover .brand_cover_btns button:hover{border-color:#fff;background:rgba(0,0,0,0.2);}
.brand_wrap .brand_cover .brand_cover_btns button span{color:#fff;}
.brand_wrap .brand_cover .brand_cover_btns button i{color:#fff;}
.brand_wrap .brand_cover .brand_cover_visitor{color:#fff;opacity:0.8;text-align:center;font-size:14px;}
.brand_wrap .brand_cover .brand_cover_visitor span{}

/* 釉뚮옖???뚭컻 ?앹뾽 */
.brand_wrap .brand_pop{display:none;}
.brand_wrap .view_brand{position:fixed;overflow:auto;overflow-x:hidden;top:0;left:0;width:100%;height: 100%;text-align: center;z-index:5000;background-color:rgba(0,0,0,0.5);}
.brand_wrap .view_brand .box{width:850px;min-height: 400px;position:fixed;left:50%;left:50%;margin-left: -425px;margin-top: 100px;z-index:2500;box-sizing:border-box;padding:25px;border-radius:10px;box-shadow:0 10px 40px rgba(0,0,0,0.3);background-color: #fff;}
.brand_wrap .view_brand .title{line-height: 40px;position:relative;margin-bottom: 20px;border-bottom:1px solid #eee;padding-bottom:15px;}
.brand_wrap .view_brand .title h2{font-size:22px;color:#333;text-align: left;font-weight:600;}
.brand_wrap .view_brand .title .close{display:block;position:absolute;right:0;top: 0;font-size:24px;line-height: 40px;color:#999;font-weight: 400;transition:color 0.2s;}
.brand_wrap .view_brand .title .close:hover{color:#333;}
.brand_wrap .view_brand .info{text-align: left;font-size:15px;line-height: 1.8;color:#555;}
.brand_wrap .view_brand .info img{max-width:100% !important;height:auto !important;}

@media all and (max-width:1000px){
	.brand_wrap .prd_list li{width:49%;}
	.brand_wrap .prd_list li:nth-of-type(3n){margin-right: 2%;}
	.brand_wrap .prd_list li:nth-of-type(2n){margin-right: 0%;}
	.brand_wrap .view_brand .box{width:80%;margin-left: -40%;}
	.brand_wrap .brand_header{height:280px;}
	.brand_wrap .brand_logo{width:100px;height:100px;}
	.brand_wrap .brand_title{font-size:26px;}
}

@media all and (max-width:640px){
	.brand_wrap{padding-top: 4.6875vw;}
	.brand_wrap .common_tit{padding:4.6875vw 4.6875vw 1.5625vw;font-size:4.375vw; height:18.75vw !important;}
	.brand_wrap .common_tit img{}
	.brand_wrap .common_desc{font-size:2.5vw;margin:1.25vw 0 4.6875vw;}
	.brand_wrap .tab{margin-bottom: 4.6875vw;}
	.brand_wrap .tab li{width:25%;}
	.brand_wrap .tab li:nth-of-type(6n) a{border-right-width: 0;}
	.brand_wrap .tab li:nth-of-type(4n) a{border-right-width: 1px;}
	.brand_wrap .tab li:nth-of-type(n+5) a{border-top: 0;}
	.brand_wrap .tab li a{height: 6.40625vw;font-size:2.5vw;}
	.brand_wrap .brand_name{margin-top:-2.5vw;font-size:4.6875vw;}
	.brand_wrap .prd_item_group{padding:1.5625vw;}
	.brand_wrap .prd_name{font-size:2.03125vw;}
	.brand_wrap .prd_price{font-size:2.03125vw;}
	.brand_wrap .prd_price strong{font-size:2.34375vw;}
	.brand_wrap .prd_list li{width:100%;margin-right:0;}

	.brand_wrap .brand_cover{height: 40.625vw;}
	.brand_wrap .brand_cover .common_tit img{height: 18.75vw;}
	.brand_wrap .brand_cover .brand_cover_btns{margin:3.125vw 0;}
	.brand_wrap .brand_cover .brand_cover_btns button{font-size:2.1875vw;margin:0 0.625vw;}
	.brand_wrap .brand_cover .brand_cover_visitor{font-size:2.1875vw;}
	.brand_wrap .view_brand .box{width:90%;margin-left:-45%;margin-top: 31.25vw;padding:3.90625vw;}
	.brand_wrap .view_brand .title{line-height: 6.25vw;margin-bottom: 3.125vw;}
	.brand_wrap .view_brand .title h2{font-size:3.4375vw;}
	.brand_wrap .view_brand .title .close{font-size:4.6875vw;line-height: 6.25vw;}
	.brand_wrap .view_brand .info{font-size:2.1875vw;}

	/* 釉뚮옖???ㅻ뜑 紐⑤컮??*/
	.brand_wrap .brand_header{height:220px;margin-bottom:20px;}
	.brand_wrap .brand_header_content{padding:15px;}
	.brand_wrap .brand_logo{width:70px;height:70px;margin-bottom:10px;}
	.brand_wrap .brand_logo_text{font-size:16px;}
	.brand_wrap .brand_title{font-size:20px;margin-bottom:3px;}
	.brand_wrap .brand_title_eng{font-size:11px;margin-bottom:10px;letter-spacing:1px;}
	.brand_wrap .brand_meta{flex-wrap:wrap;gap:10px;margin-bottom:12px;}
	.brand_wrap .brand_meta .brand_visitor,
	.brand_wrap .brand_meta .brand_link{font-size:12px;}
	.brand_wrap .btn_brand_info{padding:8px 20px;font-size:12px;}
}


/* ========== 援먯쑁?대뀗 ?섏씠吏 (vision) - ?ㅽ겕 ?뚮쭏 ========== */

/* ?덉뼱濡??뱀뀡 */
#vision .vision_hero {
    width: 100%;
    height: 400px;
    padding: 0 180px;
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.08) 0%, rgba(0, 0, 0, 0.95) 50%, rgba(239, 68, 68, 0.05) 100%), #000;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    box-sizing: border-box;
    margin-top: 70px;
    position: relative;
    overflow: hidden;
}
#vision .vision_hero::before {
    content: '';
    position: absolute;
    width: 400px;
    height: 400px;
    right: -100px;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(239, 68, 68, 0.08);
    border-radius: 9999px;
    filter: blur(80px);
    pointer-events: none;
}
#vision .vision_hero .inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 9px;
    width: 100%;
    padding: 0;
    position: relative;
    z-index: 1;
}
#vision .vision_hero .hero_label {
    color: #ef4444;
    font-size: 22px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    margin: 0;
}
#vision .vision_hero .hero_title {
    display: flex;
    flex-direction: column;
    margin: 0;
}
#vision .vision_hero .hero_title .dark {
    color: #fff;
    font-size: 64px;
    font-family: 'Orbitron', sans-serif;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 1.2;
}
#vision .vision_hero .hero_title .muted {
    color: rgba(255, 255, 255, 0.5);
    font-size: 64px;
    font-family: 'Orbitron', sans-serif;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 1.2;
}

/* 硫붿씤 ?뱀뀡 */
#vision .vision_main {
    width: 100%;
    padding: 144px 180px;
    background: #000;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
}
#vision .vision_main::before {
    content: '';
    position: absolute;
    width: 600px;
    height: 600px;
    left: -200px;
    top: 30%;
    background: rgba(239, 68, 68, 0.05);
    border-radius: 9999px;
    filter: blur(100px);
    pointer-events: none;
}
#vision .vision_main .inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 144px;
    width: 100%;
    padding: 0;
    position: relative;
    z-index: 1;
}

/* 諛곌꼍 ?띿뒪??*/
#vision .bg_text {
    position: absolute;
    left: 50%;
    bottom: 10%;
    transform: translate(-50%, -50%);
    font-size: 280px;
    font-family: 'Orbitron', sans-serif;
    font-weight: 900;
    color: #fff;
    opacity: 0.02;
    white-space: nowrap;
    pointer-events: none;
    z-index: 0;
}

#vision .quote_icon.left img{transform: rotate(180deg);}


/* 泥좏븰 ?뚭컻 */
#vision .philosophy_intro {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 18px;
    width: 100%;
}
#vision .quote_icon {
    width: 48px;
    height: 48px;
    flex-shrink: 0;
}
#vision .quote_icon img {
    width: 100%;
    height: 100%;
    filter: brightness(0) saturate(100%) invert(42%) sepia(93%) saturate(1352%) hue-rotate(331deg) brightness(101%) contrast(97%);
}
#vision .intro_content {
    display: flex;
    flex-direction: column;
    gap: 18px;
    align-items: center;
    text-align: center;
}
#vision .intro_title {
    color: #fff;
    font-size: 32px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    line-height: 1.4;
    text-transform: uppercase;
    margin: 0;
}
#vision .intro_desc {
    color: #aaa;
    font-size: 18px;
    font-family: 'Noto Sans KR', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}

/* 泥좏븰 移대뱶 洹몃━??*/
#vision .philosophy_cards {
    display: flex;
    flex-direction: column;
    gap: 18px;
    width: 100%;
}
#vision .card_row {
    display: flex;
    gap: 18px;
}
#vision .philosophy_card {
    flex: 1;
    padding: 36px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 18px;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    display: flex;
    flex-direction: column;
    gap: 18px;
    box-sizing: border-box;
    transition: all 0.3s ease;
}
#vision .philosophy_card:hover {
    transform: translateY(-5px);
    border-color: rgba(239, 68, 68, 0.3);
    box-shadow: 0px 8px 24px rgba(239, 68, 68, 0.15);
}
#vision .philosophy_card .card_icon {
    width: 60px;
    height: 60px;
    background: rgba(239, 68, 68, 0.15);
    border-radius: 9px;
    display: flex;
    justify-content: center;
    align-items: center;
}
#vision .philosophy_card .card_icon img {
    width: 32px;
    height: 32px;
    filter: brightness(0) saturate(100%) invert(42%) sepia(93%) saturate(1352%) hue-rotate(331deg) brightness(101%) contrast(97%);
}
#vision .philosophy_card .card_content {
    display: flex;
    flex-direction: column;
    gap: 9px;
}
#vision .philosophy_card .card_title {
    color: #fff;
    font-size: 22px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
}
#vision .philosophy_card .card_desc {
    color: #aaa;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}
#vision .philosophy_card .card_divider {
    width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, 0.1);
}
#vision .philosophy_card .card_footer {
    display: flex;
    gap: 9px;
    align-items: center;
    text-decoration: none;
}
#vision .philosophy_card .card_footer span {
    color: #ef4444;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
}
#vision .philosophy_card .card_footer img {
    width: 13px;
    height: 14px;
    filter: brightness(0) saturate(100%) invert(42%) sepia(93%) saturate(1352%) hue-rotate(331deg) brightness(101%) contrast(97%);
}

/* ?꾪넻 ?뚭컻 ?뱀뀡 */
#vision .tradition_section {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 36px;
    text-align: center;
    text-transform: uppercase;
}
#vision .tradition_label {
    color: #ef4444;
    font-size: 22px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
}
#vision .tradition_title {
    color: #fff;
    font-size: 42px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    line-height: 1.4;
    margin: 0;
}
#vision .tradition_content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
}
#vision .tradition_content p {
    color: #aaa;
    font-size: 18px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}
#vision .tradition_quote {
    color: #fff;
    font-size: 18px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
    padding: 24px 36px;
    background: rgba(239, 68, 68, 0.1);
    border-left: 3px solid #ef4444;
    border-radius: 0 12px 12px 0;
}

/* ?섎떒 留곹겕 移대뱶 */
#vision .link_cards {
    display: flex;
    gap: 18px;
    width: 100%;
}
#vision .link_card {
    flex: 1;
    padding: 72px 18px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 18px;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 18px;
    text-decoration: none;
    transition: all 0.3s ease;
    box-sizing: border-box;
}
#vision .link_card:hover {
    transform: translateY(-5px);
    border-color: rgba(239, 68, 68, 0.3);
    box-shadow: 0px 8px 24px rgba(239, 68, 68, 0.15);
}
#vision .link_icon {
    display: flex;
    justify-content: center;
    align-items: center;
}
#vision .link_icon img {
    width: 35px;
    height: 35px;
    filter: brightness(0) saturate(100%) invert(42%) sepia(93%) saturate(1352%) hue-rotate(331deg) brightness(101%) contrast(97%);
}
#vision .link_text {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 9px;
}
#vision .link_title {
    color: #fff;
    font-size: 32px;
    font-family: 'Orbitron', sans-serif;
    font-weight: 900;
    line-height: 1.2;
    margin: 0;
}
#vision .link_desc {
    color: #aaa;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    margin: 0;
}

/* ========== 援먯쑁?대뀗 諛섏쓳??- ?쒕툝由?========== */
@media all and (max-width: 1400px) {
    #vision .vision_hero {
        height: 350px;
        padding: 0 60px;
    }
    #vision .vision_hero .hero_title .dark,
    #vision .vision_hero .hero_title .muted {
        font-size: 52px;
    }
    #vision .vision_main {
        padding: 100px 60px;
    }
    #vision .vision_main .inner {
        gap: 100px;
    }
    #vision .bg_text {
        font-size: 180px;
    }
    #vision .intro_title {
        font-size: 26px;
    }
    #vision .tradition_title {
        font-size: 34px;
    }
    #vision .link_title {
        font-size: 26px;
    }
}

@media all and (max-width: 1024px) {
    #vision .vision_hero {
        height: 300px;
        padding: 0 40px;
    }
    #vision .vision_hero .hero_label {
        font-size: 18px;
    }
    #vision .vision_hero .hero_title .dark,
    #vision .vision_hero .hero_title .muted {
        font-size: 42px;
    }
    #vision .vision_main {
        padding: 80px 40px;
    }
    #vision .vision_main .inner {
        gap: 80px;
    }
    #vision .bg_text {
        display: none;
    }
    #vision .philosophy_intro {
        flex-direction: column;
        align-items: center;
    }
    #vision .quote_icon {
        display: none;
    }
    #vision .card_row {
        flex-direction: column;
    }
    #vision .intro_title {
        font-size: 22px;
    }
    #vision .intro_title br {
        display: none;
    }
    #vision .intro_desc br {
        display: none;
    }
    #vision .philosophy_card .card_desc br {
        display: none;
    }
    #vision .tradition_title {
        font-size: 28px;
    }
    #vision .tradition_title br {
        display: none;
    }
    #vision .tradition_content p br {
        display: none;
    }
    #vision .tradition_quote br {
        display: none;
    }
    #vision .link_cards {
        flex-direction: column;
    }
    #vision .link_title {
        font-size: 24px;
    }
}

/* ========== 援먯쑁?대뀗 諛섏쓳??- 紐⑤컮??========== */
@media all and (max-width: 768px) {
    #vision .vision_hero {
        height: auto;
        padding: 80px 20px;
    }
    #vision .vision_hero .hero_label {
        font-size: 14px;
    }
    #vision .vision_hero .hero_title .dark,
    #vision .vision_hero .hero_title .muted {
        font-size: 28px;
    }
    #vision .vision_main {
        padding: 60px 20px;
    }
    #vision .vision_main .inner {
        gap: 60px;
    }
    #vision .intro_title {
        font-size: 18px;
    }
    #vision .intro_desc {
        font-size: 14px;
    }
    #vision .philosophy_card {
        padding: 24px;
    }
    #vision .philosophy_card .card_icon {
        width: 50px;
        height: 50px;
    }
    #vision .philosophy_card .card_title {
        font-size: 18px;
    }
    #vision .philosophy_card .card_desc {
        font-size: 14px;
    }
    #vision .tradition_label {
        font-size: 14px;
    }
    #vision .tradition_title {
        font-size: 20px;
    }
    #vision .tradition_content p {
        font-size: 14px;
    }
    #vision .tradition_quote {
        font-size: 14px;
        padding: 18px 24px;
    }
    #vision .link_card {
        padding: 40px 18px;
    }
    #vision .link_title {
        font-size: 20px;
    }
    #vision .link_desc {
        font-size: 14px;
    }
}

/* ========== ?ㅼ떆?붽만 ?섏씠吏 (location) - ?ㅽ겕 ?뚮쭏 ========== */

/* ?덉뼱濡??뱀뀡 */
#location .location_hero {
    width: 100%;
    height: 400px;
    padding: 0 180px;
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.08) 0%, rgba(0, 0, 0, 0.95) 50%, rgba(239, 68, 68, 0.05) 100%), #000;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    box-sizing: border-box;
    margin-top: 70px;
    overflow: hidden;
    position: relative;
}
#location .location_hero::before {
    content: '';
    position: absolute;
    width: 400px;
    height: 400px;
    left: -100px;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(239, 68, 68, 0.08);
    border-radius: 9999px;
    filter: blur(80px);
    pointer-events: none;
}
#location .location_hero .inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 9px;
    width: 100%;
    padding: 0;
    position: relative;
    z-index: 1;
}
#location .location_hero .hero_label {
    color: #ef4444;
    font-size: 22px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    margin: 0;
}
#location .location_hero .hero_title {
    display: flex;
    flex-direction: column;
    margin: 0;
}
#location .location_hero .hero_title .dark {
    color: #fff;
    font-size: 64px;
    font-family: 'Orbitron', sans-serif;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 1.2;
}
#location .location_hero .hero_title .muted {
    color: rgba(255, 255, 255, 0.5);
    font-size: 64px;
    font-family: 'Orbitron', sans-serif;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 1.2;
}

/* 硫붿씤 ?뱀뀡 */
#location .location_main {
    width: 100%;
    padding: 144px 180px;
    background: #000;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
}
#location .location_main::before {
    content: '';
    position: absolute;
    width: 600px;
    height: 600px;
    right: -200px;
    bottom: 0;
    background: rgba(239, 68, 68, 0.05);
    border-radius: 9999px;
    filter: blur(100px);
    pointer-events: none;
}
#location .location_main .inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 144px;
    width: 100%;
    padding: 0;
    position: relative;
    z-index: 1;
    max-width: 1560px;
    margin: 0 auto;
}

/* 吏???뱀뀡 */
#location .map_section {
    display: flex;
    flex-direction: column;
    gap: 36px;
    width: 100%;
}
#location .map_container {
    width: 100%;
    aspect-ratio: 210 / 90;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 18px;
    overflow: hidden;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
}
#location .map_container .root_daum_roughmap {
    width: 100% !important;
    height: 100% !important;
}
#location .map_container .wrap_map {
    height: 100% !important;
}
#location .map_container .wrap_map .map {
    height: 100% !important;
}
#location .map_frame {
    width: 100%;
    height: 100%;
}
#location .map_info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}
#location .address_area {
    display: flex;
    flex-direction: column;
    gap: 9px;
}
#location .location_name {
    color: #fff;
    font-size: 32px;
    font-family: 'Orbitron', 'Noto Sans KR', sans-serif;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
}
#location .location_address {
    color: #aaa;
    font-size: 22px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}
#location .btn_call {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 18px 36px;
    background: #ef4444;
    border-radius: 9999px;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0px 0px 30px rgba(239, 68, 68, 0.30);
}
#location .btn_call:hover {
    background: #dc2626;
    transform: translateY(-2px);
    box-shadow: 0px 0px 40px rgba(239, 68, 68, 0.50);
}
#location .btn_call .call_icon {
    width: 25px;
    height: 25px;
    display: flex;
    justify-content: center;
    align-items: center;
}
#location .btn_call .call_icon img {
    filter: brightness(0) invert(1);
}
#location .btn_call span {
    color: #fff;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.23px;
}

/* 援먰넻 ?덈궡 ?뱀뀡 */
#location .transport_section {
    display: flex;
    flex-direction: column;
    gap: 36px;
    width: 100%;
}
#location .transport_header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
    text-align: center;
    text-transform: uppercase;
}
#location .transport_label {
    color: #ef4444;
    font-size: 22px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
}
#location .transport_title {
    color: #fff;
    font-size: 42px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    line-height: 1.4;
    margin: 0;
}

/* 援먰넻 移대뱶 洹몃━??*/
#location .transport_cards {
    display: flex;
    gap: 18px;
    width: 100%;
}
#location .transport_card {
    flex: 1;
    padding: 36px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 18px;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    display: flex;
    flex-direction: column;
    gap: 18px;
    box-sizing: border-box;
    transition: all 0.3s ease;
}
#location .transport_card:hover {
    transform: translateY(-5px);
    border-color: rgba(239, 68, 68, 0.3);
    box-shadow: 0px 8px 24px rgba(239, 68, 68, 0.15);
}
#location .transport_card .card_icon {
    width: 60px;
    height: 60px;
    border-radius: 9px;
    display: flex;
    justify-content: center;
    align-items: center;
}
#location .transport_card .card_icon.blue {
    background: rgba(239, 68, 68, 0.15);
}
#location .transport_card .card_icon.purple {
    background: rgba(239, 68, 68, 0.15);
}
#location .transport_card .card_icon.pink {
    background: rgba(239, 68, 68, 0.15);
}
#location .transport_card .card_title {
    color: #fff;
    font-size: 22px;
    font-family: 'Orbitron', 'Noto Sans KR', sans-serif;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
}
#location .transport_card .card_content {
    display: flex;
    flex-direction: column;
    gap: 18px;
}
#location .transport_card .route_item {
    display: flex;
    flex-direction: column;
    gap: 9px;
}
#location .transport_card .route_name {
    color: #ef4444;
    font-size: 18px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
}
#location .transport_card .route_desc {
    color: #aaa;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}

/* ========== ?ㅼ떆?붽만 諛섏쓳??- ?쒕툝由?========== */
@media all and (max-width: 1400px) {
    #location .location_hero {
        height: 350px;
        padding: 0 60px;
    }
    #location .location_hero .hero_title .dark,
    #location .location_hero .hero_title .muted {
        font-size: 52px;
    }
    #location .location_main {
        padding: 100px 60px;
    }
    #location .location_main .inner {
        gap: 100px;
    }
    #location .location_name {
        font-size: 26px;
    }
    #location .location_address {
        font-size: 18px;
    }
    #location .transport_title {
        font-size: 34px;
    }
}

@media all and (max-width: 1024px) {
    #location .location_hero {
        height: 300px;
        padding: 0 40px;
    }
    #location .location_hero .hero_label {
        font-size: 18px;
    }
    #location .location_hero .hero_title .dark,
    #location .location_hero .hero_title .muted {
        font-size: 42px;
    }
    #location .location_main {
        padding: 80px 40px;
    }
    #location .location_main .inner {
        gap: 80px;
    }
    #location .map_container {
        aspect-ratio: 16 / 9;
    }
    #location .map_info {
        flex-direction: column;
        gap: 24px;
        align-items: center;
    }

    #location .address_area{text-align: center;}
    
    #location .location_name {
        font-size: 22px;
    }
    #location .location_address {
        font-size: 16px;
    }
    #location .transport_title {
        font-size: 28px;
    }
    #location .transport_title br {
        display: none;
    }
    #location .transport_cards {
        flex-direction: column;
    }
}

/* ========== ?ㅼ떆?붽만 諛섏쓳??- 紐⑤컮??========== */
@media all and (max-width: 768px) {
    #location .location_hero {
        height: auto;
        padding: 80px 20px;
    }
    #location .location_hero .hero_label {
        font-size: 14px;
    }
    #location .location_hero .hero_title .dark,
    #location .location_hero .hero_title .muted {
        font-size: 28px;
    }
    #location .location_main {
        padding: 60px 20px;
    }
    #location .location_main .inner {
        gap: 60px;
    }
    #location .map_section {
        gap: 24px;
    }
    #location .location_name {
        font-size: 18px;
    }
    #location .location_address {
        font-size: 14px;
    }
    #location .btn_call {
        padding: 14px 24px;
        gap: 12px;
    }
    #location .btn_call span {
        font-size: 14px;
    }
    #location .transport_header {
        gap: 12px;
    }
    #location .transport_label {
        font-size: 14px;
    }
    #location .transport_title {
        font-size: 20px;
    }
    #location .transport_card {
        padding: 24px;
    }
    #location .transport_card .card_icon {
        width: 50px;
        height: 50px;
    }
    #location .transport_card .card_title {
        font-size: 18px;
    }
    #location .transport_card .route_name {
        font-size: 16px;
    }
    #location .transport_card .route_desc {
        font-size: 14px;
    }
    #location .transport_card .route_desc br {
        display: none;
    }
}

/* ========================================


/* ========================================

   ?섍컯猷??덈궡 ?섏씠吏 (guide) - ?ㅽ겕 ?뚮쭏

======================================== */



/* ?덉뼱濡??뱀뀡 */

#guide .guide_hero {

    background: linear-gradient(92deg, rgba(34, 211, 238, 0.10) 0%, rgba(253, 2, 201, 0.10) 100%), #000;

    padding: 0 180px;

    height: 400px;

    display: flex;

    flex-direction: column;

    justify-content: center;

    align-items: flex-start;

    overflow: hidden;

    position: relative;

}

#guide .guide_hero::before {

    content: '';

    position: absolute;

    width: 400px;

    height: 400px;

    left: -100px;

    bottom: -100px;

    background: rgba(0, 243, 255, 0.08);

    border-radius: 9999px;

    filter: blur(80px);

    pointer-events: none;

}

#guide .guide_hero .inner {

    max-width: 1560px;

    width: 100%;

    position: relative;

    z-index: 1;

}

#guide .guide_hero .hero_label {

    color: #00F3FF;

    font-size: 22px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 700;

    text-transform: uppercase;

    margin: 0;

}

#guide .guide_hero .hero_title {

    margin: 18px 0 0;

}

#guide .guide_hero .hero_title .white {

    color: #fff;

    font-size: 64px;

    font-family: 'Orbitron', 'Noto Sans KR', sans-serif;

    font-weight: 900;

    text-transform: uppercase;

    line-height: 1.2;

}



/* 援먯뒿怨쇱젙 ?붿빟 ?뱀뀡 */

#guide .course_summary {

    background: #000;

    padding: 80px 180px;

    border-bottom: 1px solid rgba(255, 255, 255, 0.1);

}

#guide .course_summary .inner {

    max-width: 1560px;

    margin: 0 auto;

}

#guide .summary_section_title {

    color: #fff;

    font-size: 28px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 700;

    margin: 0 0 24px 0;

}

#guide .course_list {

    list-style: none;

    padding: 0;

    margin: 0;

    display: flex;

    flex-direction: column;

    gap: 12px;

}

#guide .course_list li {

    color: #aaa;

    font-size: 18px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

    line-height: 1.6;

}

#guide .course_list .course_num {

    color: #00F3FF;

    font-weight: 600;

    margin-right: 8px;

}



/* 硫붿씤 ?뺣낫 ?뱀뀡 */

#guide .guide_info {

    background: #000;

    padding: 144px 180px;

    overflow: hidden;

    position: relative;

}

#guide .guide_info::before {

    content: '';

    position: absolute;

    width: 600px;

    height: 600px;

    right: -200px;

    top: 50%;

    transform: translateY(-50%);

    background: rgba(192, 132, 252, 0.05);

    border-radius: 9999px;

    filter: blur(100px);

    pointer-events: none;

}

#guide .guide_info .inner {

    max-width: 1560px;

    margin: 0 auto;

    display: flex;

    flex-direction: column;

    gap: 144px;

    position: relative;

    z-index: 1;

}



/* ?곷떒 移대뱶 ?곸뿭 */

#guide .info_cards {

    display: flex;

    gap: 18px;

}

#guide .info_card {

    flex: 1;

    padding: 36px;

    background: rgba(255, 255, 255, 0.05);

    border: 1px solid rgba(255, 255, 255, 0.10);

    border-radius: 18px;

    backdrop-filter: blur(15px);

    -webkit-backdrop-filter: blur(15px);

}



/* ?쒗깮 移대뱶 */

#guide .benefit_card {

    display: flex;

    gap: 18px;

    align-items: flex-start;

    background: rgba(0, 243, 255, 0.05);

    border: 1px solid rgba(0, 243, 255, 0.10);

}

#guide .benefit_card .card_icon {

    width: 60px;

    height: 60px;

    background: rgba(0, 243, 255, 0.20);

    border-radius: 9px;

    display: flex;

    justify-content: center;

    align-items: center;

    flex-shrink: 0;

}

#guide .benefit_card .card_icon img {

    width: 32px;

    height: 32px;

    filter: brightness(0) saturate(100%) invert(80%) sepia(50%) saturate(500%) hue-rotate(140deg) brightness(105%) contrast(100%);

}

#guide .benefit_card .card_content {

    flex: 1;

    display: flex;

    flex-direction: column;

    gap: 18px;

}

#guide .benefit_card .card_title {

    color: #fff;

    font-size: 22px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 700;

    margin: 0;

}

#guide .benefit_card .benefit_list {

    list-style: none;

    padding: 0;

    margin: 0;

    display: flex;

    flex-direction: column;

    gap: 9px;

}

#guide .benefit_card .benefit_list li {

    color: #aaa;

    font-size: 16px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

    line-height: 1.6;

}

#guide .benefit_card .benefit_list li strong {

    color: #fff;

    font-weight: 700;

}

#guide .benefit_card .benefit_list li .cyan {

    color: #00F3FF;

}



/* 怨꾩쥖 移대뱶 */

#guide .account_card {

    display: flex;

    justify-content: space-between;

    align-items: center;

    background: rgba(192, 132, 252, 0.05);

    border: 1px solid rgba(192, 132, 252, 0.10);

}

#guide .account_card .card_left {

    display: flex;

    gap: 18px;

    align-items: flex-start;

    align-self: flex-start;
}

#guide .account_card .card_icon {

    width: 60px;

    height: 60px;

    background: rgba(192, 132, 252, 0.20);

    border-radius: 9px;

    display: flex;

    justify-content: center;

    align-items: center;

    flex-shrink: 0;

}

#guide .account_card .card_icon img {

    width: 32px;

    height: 32px;

    filter: brightness(0) saturate(100%) invert(70%) sepia(50%) saturate(500%) hue-rotate(220deg) brightness(100%) contrast(100%);

}

#guide .account_card .account_info {

    display: flex;

    flex-direction: column;

    gap: 9px;

}

#guide .account_card .account_label {

    color: #aaa;

    font-size: 14px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

    text-transform: uppercase;

}

#guide .account_card .account_number {

    display: flex;

    gap: 9px;

    align-items: center;

}

#guide .account_card .bank_name {

    color: #fff;

    font-size: 22px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 700;

    line-height: 1.4;

}

#guide .account_card .number {

    color: #C084FC;

    font-size: 22px;

    font-family: 'Orbitron', sans-serif;

    font-weight: 700;

    line-height: 1.4;

}

#guide .account_card .account_holder {

    color: #aaa;

    font-size: 14px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

}

#guide .account_card .card_right {

    display: flex;

    flex-direction: column;

    gap: 9px;

    align-items: flex-end;

}

#guide .account_card .check_item {

    display: flex;

    gap: 9px;

    align-items: center;

}

#guide .account_card .check_item img {

    width: 16px;

    height: 16px;

    filter: brightness(0) saturate(100%) invert(70%) sepia(50%) saturate(500%) hue-rotate(220deg) brightness(100%) contrast(100%);

}

#guide .account_card .check_item span {

    color: #aaa;

    font-size: 14px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

}



/* 怨쇱젙蹂??섍컯猷?*/

#guide .course_pricing {

    display: flex;

    gap: 18px;

    align-items: flex-start;

}

#guide .pricing_column {

    flex: 1;

    display: flex;

    flex-direction: column;

    gap: 36px;

}

#guide .pricing_header {

    display: flex;

    justify-content: space-between;

    align-items: flex-start;

}

#guide .pricing_title_wrap {

    display: flex;

    flex-direction: column;

    gap: 12px;

}

#guide .pricing_title {

    color: #fff;

    font-size: 32px;

    font-family: 'Orbitron', 'Noto Sans KR', sans-serif;

    font-weight: 900;

    text-transform: uppercase;

    line-height: 1.2;

    margin: 0;

}

#guide .pricing_duration {

    font-size: 16px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

    line-height: 1.4;

}

#guide .pricing_duration.cyan {

    color: #00F3FF;

}

#guide .pricing_duration.purple {

    color: #C084FC;

}



/* 媛寃?移대뱶 */

#guide .pricing_card {

    flex: 1;

    padding: 36px;

    background: rgba(255, 255, 255, 0.05);

    border: 1px solid rgba(255, 255, 255, 0.10);

    border-radius: 18px;

    backdrop-filter: blur(15px);

    -webkit-backdrop-filter: blur(15px);

    display: flex;

    flex-direction: column;

    box-sizing: border-box;

}



/* 媛寃⑺몴 ?곷떒 ?덈궡 */

#guide .pricing_notice {

    margin-bottom: 24px;

}

#guide .pricing_notice p {

    color: #aaa;

    font-size: 15px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

    line-height: 1.8;

    margin: 0;

}



/* 媛寃⑺몴 */

#guide .pricing_table {

    display: flex;

    flex-direction: column;

}

#guide .pricing_row {

    display: flex;

    justify-content: space-between;

    align-items: center;

    padding: 18px 0;

}

#guide .row_label {

    color: #aaa;

    font-size: 16px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

}

#guide .row_value {

    display: flex;

    gap: 18px;

    align-items: center;

}

#guide .row_desc {

    color: #aaa;

    font-size: 14px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

}

#guide .row_price {

    color: #fff;

    font-size: 22px;

    font-family: 'Orbitron', sans-serif;

    font-weight: 700;

}

#guide .row_price.free {

    color: #00F3FF;

}

#guide .row_price.cyan {

    color: #00F3FF;

}

#guide .pricing_divider {

    height: 1px;

    background: rgba(255, 255, 255, 0.10);

}



/* 媛寃⑺몴 ?명꽣 */

#guide .pricing_footer {

    margin-top: auto;

}

#guide .total_row {

    display: flex;

    justify-content: space-between;

    align-items: center;

    padding: 18px 0;

}

#guide .total_label {

    color: #fff;

    font-size: 18px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 700;

}

#guide .total_value {

    display: flex;

    gap: 9px;

    align-items: baseline;

}

#guide .total_price {

    color: #fff;

    font-size: 32px;

    font-family: 'Orbitron', sans-serif;

    font-weight: 900;

}

#guide .total_currency {

    color: #aaa;

    font-size: 16px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

    line-height: 1.4;

}



/* Total Note */

#guide .total_note {

    color: #aaa;

    font-size: 14px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

    line-height: 1.6;

    margin: 12px 0 0;

}



/* Benefit Summary */

#guide .benefit_summary {

    display: flex;

    flex-direction: column;

    gap: 12px;

    margin-top: 24px;

    padding-top: 24px;

    border-top: 1px solid rgba(255, 255, 255, 0.1);

}

#guide .benefit_summary .summary_title {

    color: #fff;

    font-size: 18px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 700;

    margin: 0;

}

#guide .benefit_summary ul {

    list-style: none;

    padding: 0;

    margin: 0;

    display: flex;

    flex-direction: column;

    gap: 9px;

}

#guide .benefit_summary ul li {

    color: #aaa;

    font-size: 15px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

    line-height: 1.6;

}

#guide .benefit_summary ul li .cyan {

    color: #00F3FF;

}

#guide .benefit_summary ul li strong {

    color: #fff;

    font-weight: 700;

}



/* ?④낵諛?遺덈┸ 由ъ뒪??*/

#guide .pricing_bullets {

    flex: 1;

    display: flex;

    flex-direction: column;

    gap: 18px;

}

#guide .pricing_bullets ul {

    list-style: disc;

    padding: 0 0 0 24px;

    margin: 0;

    display: flex;

    flex-direction: column;

    gap: 12px;

}

#guide .pricing_bullets ul li {

    color: #aaa;

    font-size: 16px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

    line-height: 1.8;

}

#guide .pricing_bullets .bullets_note {

    color: #666;

    font-size: 14px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

    margin: 0;

}



/* ?좎씤 諛뺤뒪 */

#guide .discount_box {

    padding: 24px;

    border-radius: 12px;

    display: flex;

    flex-direction: column;

    gap: 12px;

    margin-top: 24px;

}

#guide .discount_box.cyan {

    background: rgba(0, 243, 255, 0.05);

    border: 1px solid rgba(0, 243, 255, 0.10);

}

#guide .discount_box.purple {

    background: rgba(192, 132, 252, 0.05);

    border: 1px solid rgba(192, 132, 252, 0.10);

}

#guide .discount_header {

    display: flex;

    gap: 9px;

    align-items: center;

}

#guide .discount_header img {

    width: 16px;

    height: 16px;

}

#guide .discount_box.cyan .discount_header span {

    color: #00F3FF;

    font-size: 16px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 700;

}

#guide .discount_box.purple .discount_header span {

    color: #C084FC;

    font-size: 16px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 700;

}

#guide .discount_content {

    display: flex;

    flex-direction: column;

    gap: 9px;

}

#guide .discount_content p {

    color: #aaa;

    font-size: 14px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

    margin: 0;

}

#guide .discount_content strong {

    color: #fff;

    font-size: 22px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 700;

}

#guide .discount_content strong.gradient {

    background: linear-gradient(90deg, #00F3FF 0%, #FF00C8 50%);

    background-clip: text;

    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;

}

#guide .discount_note {

    color: #666;

    font-size: 13px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

    margin: 0;

}



/* ?섎떒 CTA ?뱀뀡 */

#guide .guide_cta {

    width: 100%;

    padding: 144px 180px;

    background: #0A0B0B;

    box-sizing: border-box;

    position: relative;

    overflow: hidden;

}

#guide .guide_cta::before {

    content: '';

    position: absolute;

    width: 500px;

    height: 500px;

    left: 50%;

    top: 50%;

    transform: translate(-50%, -50%);

    background: rgba(0, 243, 255, 0.05);

    border-radius: 9999px;

    filter: blur(100px);

    pointer-events: none;

}

#guide .guide_cta .inner {

    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 72px;

    width: 100%;

    padding: 0;

    max-width: 1560px;

    margin: 0 auto;

    position: relative;

    z-index: 1;

}

#guide .cta_header {

    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 36px;

}

#guide .cta_title {

    text-align: center;

    color: #fff;

    font-size: 46px;

    font-family: 'Orbitron', sans-serif;

    font-weight: 900;

    text-transform: uppercase;

    line-height: 1.2;

    margin: 0;

    padding-top: 36px;

}

#guide .cta_header .cta_desc {

    color: #AAAAAA;

    font-size: 18px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

    line-height: 1.4;

    text-align: center;

    margin: 0;

}



/* CTA 移대뱶 */

#guide .cta_cards {

    display: flex;

    gap: 18px;

    width: 100%;

    max-width: 900px;

}

#guide .cta_card {

    flex: 1;

    padding: 36px;

    background: rgba(255, 255, 255, 0.05);

    border: 1px solid rgba(255, 255, 255, 0.10);

    border-radius: 18px;

    backdrop-filter: blur(15px);

    -webkit-backdrop-filter: blur(15px);

    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 18px;

    text-align: center;

    transition: all 0.3s ease;

}

#guide .cta_card:hover {

    border-color: rgba(0, 243, 255, 0.3);

    box-shadow: 0px 8px 24px rgba(0, 243, 255, 0.15);

}

#guide .cta_icon {

    display: flex;

    justify-content: center;

    align-items: center;

}

#guide .cta_icon img {

    width: 32px;

    height: 32px;

    filter: brightness(0) saturate(100%) invert(80%) sepia(50%) saturate(500%) hue-rotate(140deg) brightness(105%) contrast(100%);

}

#guide .cta_label {

    color: #aaa;

    font-size: 14px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 400;

    text-transform: uppercase;

}

#guide .cta_value {

    color: #fff;

    font-size: 18px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 700;

}



/* CTA 踰꾪듉 */

#guide .btn_guide_cta {

    padding: 18px 36px;

    background: #00F3FF;

    border-radius: 9999px;

    color: #000;

    font-size: 16px;

    font-family: 'Pretendard', sans-serif;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 1.225px;

    text-decoration: none;

    text-align: center;

    transition: all 0.3s ease;

    margin-top: 36px;

}

#guide .btn_guide_cta:hover {

    background: #22d3ee;

    transform: translateY(-2px);

}



/* ========== 諛섏쓳??- ?쒕툝由?========== */

@media all and (max-width: 1200px) {

    #guide .guide_hero {

        height: 300px;

        padding: 0 60px;

    }

    #guide .guide_hero .hero_label {

        font-size: 18px;

    }

    #guide .guide_hero .hero_title .white {

        font-size: 52px;

    }

    #guide .course_summary {

        padding: 60px 60px;

    }

    #guide .guide_info {

        padding: 100px 60px;

    }

    #guide .guide_info .inner {

        gap: 100px;

    }

    #guide .info_cards {

        flex-direction: column;

    }

    #guide .account_card {

        flex-direction: column;

        align-items: flex-start;

        gap: 24px;

    }

    #guide .account_card .card_right {

        align-items: flex-start;

    }

    #guide .pricing_title {

        font-size: 24px;

    }

    #guide .guide_cta {

        padding: 100px 60px;

    }

    #guide .cta_title {

        font-size: 36px;

    }

}



/* ========== 諛섏쓳??- ?묒? ?쒕툝由?========== */

@media all and (max-width: 992px) {

    #guide .guide_hero {

        height: 300px;

        padding: 0 40px;

    }

    #guide .guide_hero .hero_label {

        font-size: 18px;

    }

    #guide .guide_hero .hero_title .white {

        font-size: 42px;

    }

    #guide .course_summary {

        padding: 50px 40px;

    }

    #guide .guide_info {

        padding: 80px 40px;

    }

    #guide .guide_info .inner {

        gap: 80px;

    }

    #guide .course_pricing {

        flex-direction: column;

    }

    #guide .pricing_header {

        flex-direction: column;

        align-items: flex-start;

        gap: 9px;

    }

    #guide .cta_cards {

        flex-direction: column;

    }

    #guide .cta_title {

        font-size: 32px;

    }

    #guide .guide_cta {

        padding: 80px 40px;

    }

}



/* ========== 諛섏쓳??- 紐⑤컮??========== */

@media all and (max-width: 768px) {

    #guide .guide_hero {

        height: auto;

        padding: 80px 20px;

    }

    #guide .guide_hero .hero_label {

        font-size: 14px;

    }

    #guide .guide_hero .hero_title .white {

        font-size: 28px;

    }

    #guide .course_summary {

        padding: 40px 20px;

    }

    #guide .summary_section_title {

        font-size: 22px;

    }

    #guide .course_list li {

        font-size: 15px;

    }

    #guide .guide_info {

        padding: 60px 20px;

    }

    #guide .guide_info .inner {

        gap: 60px;

    }

    #guide .benefit_card {

        flex-direction: column;

    }

    #guide .benefit_card .card_title {

        font-size: 18px;

    }

    #guide .benefit_card .benefit_list li {

        font-size: 14px;

    }

    #guide .account_card .bank_name,

    #guide .account_card .number {

        font-size: 18px;

    }

    #guide .pricing_title {

        font-size: 20px;

    }

    #guide .pricing_card {

        padding: 24px;

    }

    #guide .pricing_notice p {

        font-size: 14px;

    }

    #guide .pricing_bullets ul {

        padding: 0 18px 0 36px;

    }

    #guide .pricing_bullets ul li {

        font-size: 14px;

    }

    #guide .pricing_row {

        flex-direction: column;

        align-items: flex-start;

        gap: 9px;

        padding: 18px 0;

    }

    #guide .row_value {

        flex-direction: column;

        align-items: flex-start;

        gap: 4px;

    }

    #guide .row_price {

        font-size: 18px;

    }

    #guide .pricing_footer {

        margin-top: 36px;

    }

    #guide .total_row {

        flex-direction: column;

        align-items: flex-start;

        gap: 9px;

    }

    #guide .total_price {

        font-size: 24px;

    }

    #guide .discount_box {

        padding: 18px;

    }

    #guide .discount_content strong {

        font-size: 18px;

    }

    #guide .guide_cta {

        padding: 60px 20px;

    }

    #guide .guide_cta .inner {

        gap: 48px;

    }

    #guide .cta_header {

        gap: 24px;

    }

    #guide .cta_header .cta_desc {

        font-size: 14px;

    }

    #guide .cta_header .cta_desc br {

        display: none;

    }

    #guide .cta_title {

        font-size: 24px;

    }

    #guide .cta_card {

        padding: 24px;

    }

    #guide .btn_guide_cta {

        padding: 14px 28px;

        font-size: 14px;

    }

}


    #guide .guide_hero .hero_title .muted {
        font-size: 28px;
    }
    #guide .guide_info {
        padding: 60px 20px;
    }
    #guide .guide_info .inner {
        gap: 60px;
    }
    #guide .benefit_card .card_title {
        font-size: 18px;
    }
    #guide .benefit_card .benefit_list li {
        font-size: 14px;
    }
    #guide .account_card .bank_name,
    #guide .account_card .number {
        font-size: 18px;
    }
    #guide .pricing_title {
        font-size: 22px;
    }
    #guide .pricing_duration {
        font-size: 14px;
    }
    #guide .pricing_card {
        padding: 24px;
    }
    #guide .pricing_row {
        flex-direction: column;
        align-items: flex-start;
        gap: 9px;
        padding: 0;
    }
    #guide .row_value {
        width: 100%;
        justify-content: space-between;
    }
    #guide .row_price {
        font-size: 18px;
    }
    #guide .total_row {
        flex-direction: column;
        align-items: flex-start;
        gap: 9px;
    }
    #guide .total_price {
        font-size: 26px;
    }
    #guide .discount_box {
        padding: 24px;
        min-height: auto;
    }
    #guide .requirement_text p br {
        display: none;
    }
    #guide .cta_title {
        font-size: 24px;
        text-align: center;
    }
    #guide .guide_cta {
        padding: 60px 20px;
    }
    #guide .cta_desc br {
        display: none;
    }
    #guide .btn_guide_cta {
        padding: 16px 28px;
        font-size: 14px;
    }
}

/* ========================================
   寃뚯떆???쇱씠???뚮쭏 ?ㅽ???   ======================================== */

/* 蹂대뱶/?곷떞 ?섏씠吏 ?꾩껜 body 諛곌꼍 - ?ㅽ겕 ?뚮쭏 */
body:has(.board_hero),
body:has(.consult_hero) {
    background: #000 !important;
}

/* 寃뚯떆???덉뼱濡??뱀뀡 - ?ㅽ겕 ?뚮쭏 */
.board_hero {
    width: 100%;
    height: 400px;
    margin-top: 70px;
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.08) 0%, rgba(0, 0, 0, 0.95) 50%, rgba(239, 68, 68, 0.05) 100%), #000;
    position: relative;
    overflow: hidden;
    display: flex;
    align-content: center;
}
.board_hero::before {
    content: '';
    position: absolute;
    width: 400px;
    height: 400px;
    right: -50px;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(239, 68, 68, 0.08);
    border-radius: 9999px;
    filter: blur(80px);
    pointer-events: none;
}

.board_hero .inner {
    max-width: 1560px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.board_hero .hero_label {
    display: inline-block;
    color: #ef4444;
    font-size: 22px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 18px;
}

.board_hero .hero_title {
    font-family: 'Orbitron', sans-serif;
    font-size: 64px;
    font-weight: 900;
    line-height: 1.2;
    margin: 0 0 24px;
    display: flex;
    flex-direction: column;
}

.board_hero .hero_title .dark {
    color: #fff;
}

.board_hero .hero_title .muted {
    color: rgba(255, 255, 255, 0.5);
}

.board_hero .hero_desc {
    color: #FFF;
    font-family: Pretendard;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%; /* 22.4px */
}

/* 怨듯넻 寃뚯떆??諛곌꼍 - ?ㅽ겕 ?뚮쭏 */
.programCon_custom01 {
    background: #000;
}

.programCon_custom01 .inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* 移댄뀒怨좊━ ???ㅽ겕 ?뚮쭏 */
.prd_tab_wrapper {
    background: #111;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.prd_tab_slide_box01 .item {
    color: #888;
    border-bottom-color: transparent;
}

.prd_tab_slide_box01 .item.active {
    color: #ef4444;
    border-bottom-color: #ef4444;
}

.prd_tab_slide_box01 .item h3 {
    color: #888 !important;
}

.prd_tab_slide_box01 .item.active h3 {
    color: #ef4444 !important;
}

.prd_tab_wrapper .prd_tab_arw {
    background: rgba(255, 255, 255, 0.1);
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.prd_tab_wrapper .prd_tab_arw:hover {
    background: rgba(255, 255, 255, 0.15);
    box-shadow: 0 3px 10px rgba(0,0,0,0.3);
}

/* 2depth 移댄뀒怨좊━ - ?ㅽ겕 ?뚮쭏 */
.prd_tab_sub_depth_wrap .sub_depth_item {
}

.prd_tab_sub_depth_wrap .tab_sub_depth {
    background: rgba(255, 255, 255, 0.05);
    color: #888;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.prd_tab_sub_depth_wrap .tab_sub_depth.active {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
    border-color: #ef4444;
}

/* 3depth 移댄뀒怨좊━ - ?ㅽ겕 ?뚮쭏 */
.prd_tab_depth3_wrap {
    background: #111;
}

.prd_tab_depth3_wrap .tab_depth3 {
    color: #888;
}

.prd_tab_depth3_wrap .tab_depth3.active {
    color: #ef4444;
}

/* 寃???곸뿭 - ?ㅽ겕 ?뚮쭏 */
.com_prd_wrapper {
    padding: 60px 0;
    background: #000;
}

.prd_search_wrapper02 {
    background: transparent;
}

.prd_search_wrapper02 .login_form_flex_box01 select {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #fff;
    border-radius: 9px;
    padding: 12px 40px 12px 15px;
    font-size: 15px;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 15px center;
}

.prd_search_wrapper02 .login_form_flex_box01 select:focus {
    border-color: #ef4444;
    outline: none;
}

.program_search_box01 {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 9px;
}

.program_search_box01 input {
    color: #fff;
    background: transparent;
}

.program_search_box01 input::placeholder {
    color: #666;
}

/* 酉????踰꾪듉 - ?ㅽ겕 ?뚮쭏 */
.sub_sty_change a {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 6px;
}

.sub_sty_change a.on {
    background: rgba(239, 68, 68, 0.15);
    border-color: #ef4444;
}

.sub_sty_change a .icon-mask {
    background-color: #888;
}

.sub_sty_change a.on .icon-mask {
    background-color: #ef4444;
}

/* 寃뚯떆??紐⑸줉 - 由ъ뒪?명삎 ?ㅽ겕 ?뚮쭏 */
.recruitment_table01 {
    background: transparent;
}

.recruitment_table01 .box {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 18px;
    padding: 24px;
    margin-bottom: 18px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.recruitment_table01 .box:hover {
    border-color: #ef4444;
    box-shadow: 0 4px 16px rgba(239, 68, 68, 0.2);
}

.recruitment_table01 .box .num_box002 .list_num {
    color: #ef4444;
    font-family: 'Orbitron', sans-serif;
    font-weight: 700;
}

.recruitment_table01 .box .notice_img_box {
    border-radius: 12px;
    overflow: hidden;
}

.recruitment_table01 .box .noice_board_alt_box .tit .title_value {
    color: #fff !important;
    font-size: 20px !important;
    font-weight: 600 !important;
}

.recruitment_table01 .box .noice_board_alt_box .tit .category_path {
    color: #ef4444 !important;
}

.recruitment_table01 .box .noice_board_alt_box .tit .lecture_desc_value {
    color: #AAAAAA !important;
}

.recruitment_table01 .box .date_box {
    color: #888 !important;
}

.recruitment_table01 .box .date_box span {
    color: #888 !important;
}

.recruitment_table01 .box .noti_icon {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
    border-radius: 4px;
    padding: 2px 8px;
    font-size: 12px;
}

.recruitment_table01 .box .new_icon {
    background: rgba(253, 2, 201, 0.15);
    color: #fd02c9;
    border-radius: 4px;
    padding: 2px 8px;
    font-size: 12px;
}

/* change_box01 / list_mode ?ㅽ겕 ?뚮쭏 */
.recruitment_table01.change_box01 .box {
    background: rgba(255, 255, 255, 0.05);
}

.recruitment_table01.change_box01 .box .noticeListFlexBox {
    background: transparent;
}

.recruitment_table01.change_box01 .box .noice_board_alt_box {
    background: transparent;
}

.recruitment_table01.change_box01 .box .noice_board_alt_box .tit {
    color: #fff;
}

.recruitment_table01.change_box01 .box .noice_board_alt_box .tit .title_value {
    color: #fff !important;
}

.recruitment_table01.change_box01 .box .noice_board_alt_box .tit .category_path {
    color: #ef4444 !important;
    background: transparent !important;
}

.recruitment_table01.change_box01 .box .noice_board_alt_box .date_box {
    color: #888 !important;
    background: transparent !important;
}

.recruitment_table01.change_box01 .box .noice_board_alt_box .date_box span {
    color: #888 !important;
}

.recruitment_table01.change_box01 .box .noice_board_alt_box .date_box i {
    background: #666;
}

/* 踰덊샇 諛뺤뒪 */
.recruitment_table01 .box .num_box002 {
    background: rgba(239, 68, 68, 0.1);
    border: 1px solid rgba(239, 68, 68, 0.2);
}

.recruitment_table01 .box .num_box002 .list_num {
    color: #ef4444 !important;
}

/* ?대?吏 ?놁쓣 ??*/
.recruitment_table01 .box .notice_img_box .no_img,
.recruitment_table01 .box .notice_img_box .noImage {
    background: rgba(255, 255, 255, 0.05) !important;
    color: #666 !important;
}

/* 媛ㅻ윭由ы삎 紐⑸줉 - ?ㅽ겕 ?뚮쭏 */
.com_prd_box_gallery_total_wrapper {
    gap: 18px;
}

.com_prd_box_gallery_total_wrapper li {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 18px;
    overflow: hidden;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.com_prd_box_gallery_total_wrapper li:hover {
    border-color: #ef4444;
    box-shadow: 0 8px 24px rgba(239, 68, 68, 0.2);
    transform: translateY(-4px);
}

.com_prd_box_gallery_total_wrapper li .img_box {
    border-radius: 0;
    overflow: hidden;
}

.com_prd_box_gallery_total_wrapper li .alt_box {
    padding: 18px;
    background: transparent;
}

.com_prd_box_gallery_total_wrapper li .alt_box .tit .title_value {
    color: #fff;
    font-size: 18px;
    font-weight: 600;
}

.com_prd_box_gallery_total_wrapper li .alt_box .tit .up_type .noti_icon {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
    border-radius: 4px;
    padding: 2px 8px;
    font-size: 12px;
}

.com_prd_box_gallery_total_wrapper li .alt_box .tit .up_type .new_icon {
    background: rgba(253, 2, 201, 0.15);
    color: #fd02c9;
    border-radius: 4px;
    padding: 2px 8px;
    font-size: 12px;
}

.com_prd_box_gallery_total_wrapper li .alt_box .tit .category_path {
    color: #ef4444;
}

.com_prd_box_gallery_total_wrapper li .alt_box .time_box {
    color: #888;
    font-size: 14px;
}

/* 媛ㅻ윭由????蹂寃?踰꾪듉 - ?ㅽ겕 ?뚮쭏 */
.prd_menu_type_box {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 6px;
}

.prd_menu_type_box.active {
    background: rgba(239, 68, 68, 0.15);
    border-color: #ef4444;
}

.prd_menu_type_box span {
    background: #888;
}

.prd_menu_type_box.active span {
    background: #ef4444;
}

/* ?섏씠吏?- ?ㅽ겕 ?뚮쭏 */
.page_nav_wrapper {
    background: transparent;
}

.page_nav_wrapper .page_nav_num_box a {
    color: #888;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 6px;
}

.page_nav_wrapper .page_nav_num_box a:hover {
    color: #ef4444;
    border-color: #ef4444;
}

.page_nav_wrapper .page_nav_num_box a.active {
    color: #fff;
    background: #ef4444;
    border-color: #ef4444;
}

.page_nav_wrapper .page_nav_arw {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 6px;
}

.page_nav_wrapper .page_nav_arw:hover {
    border-color: #ef4444;
}

/* ?붾낫湲?踰꾪듉 - ?ㅽ겕 ?뚮쭏 */
.mo_programPage a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 18px 60px;
    background: #ef4444;
    border: none;
    border-radius: 9999px;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    transition: all 0.3s ease;
    box-shadow: 0 0 30px rgba(239, 68, 68, 0.3);
}

.mo_programPage a:hover {
    background: #dc2626;
    color: #fff;
    box-shadow: 0 0 40px rgba(239, 68, 68, 0.5);
}

.mo_programPage a span {
    color: #fff;
}

.mo_programPage a:hover span {
    color: #fff;
}

/* 寃뚯떆湲 ?놁쓬 - ?ㅽ겕 ?뚮쭏 */
.recruitment_table01 + p,
.com_prd_box_gallery_total_wrapper .nodata_box {
    color: #666 !important;
    background: transparent !important;
}

/* 移??꾪꽣 - ?ㅽ겕 ?뚮쭏 */
.chip_filter_wrapper {
    background: transparent;
}

.chip_filter_wrapper .chip {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #888;
    border-radius: 9999px;
}

.chip_filter_wrapper .chip.active {
    background: rgba(239, 68, 68, 0.15);
    border-color: #ef4444;
    color: #ef4444;
}

/* 釉뚮젅?쒗겕??- ?ㅽ겕 ?뚮쭏 */
.categoryBreadcrumb {
    background: transparent;
    padding: 20px 0;
}

.categoryBreadcrumb .inner {
    color: #888;
}

.categoryBreadcrumb a {
    color: #888;
}

.categoryBreadcrumb a:hover {
    color: #ef4444;
}

.categoryBreadcrumb .separator {
    color: #666;
}

.categoryBreadcrumb .current {
    color: #fff;
}

/* ========== 寃뚯떆???곸꽭蹂닿린 (read) - ?ㅽ겕 ?뚮쭏 ========== */

/* Back 踰꾪듉 ?곸뿭 */
.programCon_custom01 .prd_tab_wrapper.prd_flex_box01 {
    background: #111;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.programCon_custom01 .prd_back_btn01 {
    color: #888 !important;
    font-size: 14px;
}

.programCon_custom01 .prd_back_btn01:hover {
    color: #ef4444 !important;
}

/* ?곸꽭蹂닿린 ?꾩껜 而⑦뀒?대꼫 */
.programCon_custom01 .programRead {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 18px;
    padding: 0;
    margin-top: 40px;
    overflow: hidden;
}

/* ?곷떒 ?ㅻ뜑 ?곸뿭 */
.programCon_custom01 .recruitment_detail_top_box {
    background: rgba(255, 255, 255, 0.05);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    padding: 36px;
}

.programCon_custom01 .recruitment_detail_top_box .category_path {
    color: #ef4444 !important;
    font-size: 14px !important;
    margin-bottom: 12px !important;
}

.programCon_custom01 .recruitment_detail_top_box .recruitment_tit {
    color: #fff;
    font-size: 32px;
    font-weight: 700;
    margin: 0;
    line-height: 1.4;
}

.programCon_custom01 .recruitment_detail_top_box .recruitment_tit .title_value {
    color: #fff;
}

.programCon_custom01 .recruitment_detail_top_box .recruitment_tit .lecture_desc_value {
    color: #AAAAAA !important;
    font-size: 16px !important;
}

.programCon_custom01 .recruitment_detail_top_box .recruitment_alt {
    color: #888;
    font-size: 14px;
    margin-top: 16px;
}

/* 蹂몃Ц ?곸뿭 */
.programCon_custom01 .readEdit {
    padding: 36px;
    color: #ddd;
    font-size: 16px;
    line-height: 1.8;
    width: 100%;
    box-sizing: border-box;
}

.programCon_custom01 .readEdit .content_value {
    color: #ddd;
}

.programCon_custom01 .readEdit p {
    color: #ddd;
}

.programCon_custom01 .readEdit img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}

/* 泥⑤??뚯씪 ?곸뿭 */
.programCon_custom01 .urlFile {
    background: rgba(255, 255, 255, 0.03);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding: 0;
    margin: 0;
}

.programCon_custom01 .urlFile p {
    padding: 16px 36px;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    margin: 0;
}

.programCon_custom01 .urlFile p:first-child {
    border-top: none;
}

.programCon_custom01 .urlFile p a {
    color: #888;
    font-size: 14px;
    transition: color 0.2s ease;
}

.programCon_custom01 .urlFile p a:hover {
    color: #ef4444;
}

/* ?듬? ?곸뿭 */
.programCon_custom01 .readAnswer {
    background: rgba(239, 68, 68, 0.05);
    border: 1px solid rgba(239, 68, 68, 0.1);
    border-radius: 12px;
    margin: 24px 36px 36px;
    padding: 24px;
}

.programCon_custom01 .readAnswer .answer_tit {
    color: #ef4444;
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 16px;
}

.programCon_custom01 .readAnswer .answer_txt {
    color: #ddd;
    font-size: 15px;
    line-height: 1.7;
}

/* ?댁쟾/?ㅼ쓬湲 & 紐⑸줉 踰꾪듉 ?곸뿭 */
.programCon_custom01 .ej_du_wrap {
    background: rgba(255, 255, 255, 0.03);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding: 24px 36px;
}

/* ?댁쟾/?ㅼ쓬 湲 ?ㅻ퉬寃뚯씠??*/
.programCon_custom01 .read_page_nav,
.programCon_custom01 .ej_du_list {
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 24px;
}

.programCon_custom01 .read_page_nav li,
.programCon_custom01 .ej_du_list li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    padding: 16px 20px;
    display: flex;
    align-items: center;
    gap: 16px;
}

.programCon_custom01 .read_page_nav li:last-child,
.programCon_custom01 .ej_du_list li:last-child {
    border-bottom: none;
}

.programCon_custom01 .read_page_nav li .label,
.programCon_custom01 .ej_du_list li .label,
.programCon_custom01 .read_page_nav li span:first-child,
.programCon_custom01 .ej_du_list li span:first-child {
    color: #888;
    font-size: 14px;
    min-width: 80px;
}

.programCon_custom01 .read_page_nav li a,
.programCon_custom01 .ej_du_list li a {
    color: #ddd;
    font-size: 15px;
    transition: color 0.2s ease;
}

.programCon_custom01 .read_page_nav li a:hover,
.programCon_custom01 .ej_du_list li a:hover {
    color: #ef4444;
}

/* 紐⑸줉 踰꾪듉 */
.programCon_custom01 .mok_rok_btn {
    text-align: center;
}

.programCon_custom01 .mok_rok_btn a.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 200px;
    height: 50px;
    padding: 0 40px;
    background: #ef4444;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    border-radius: 9999px;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 0 20px rgba(239, 68, 68, 0.3);
}

.programCon_custom01 .mok_rok_btn a.btn:hover {
    background: #dc2626;
    box-shadow: 0 0 30px rgba(239, 68, 68, 0.5);
}

/* 寃뚯떆???곸꽭蹂닿린 諛섏쓳??*/
@media all and (max-width: 1024px) {
    .programCon_custom01 .programRead {
        margin-top: 30px;
    }
    .programCon_custom01 .recruitment_detail_top_box {
        padding: 28px;
    }
    .programCon_custom01 .recruitment_detail_top_box .recruitment_tit {
        font-size: 26px;
    }
    .programCon_custom01 .readEdit {
        padding: 28px;
    }
    .programCon_custom01 .ej_du_wrap {
        padding: 20px 28px;
    }
}

@media all and (max-width: 768px) {
    .programCon_custom01 .programRead {
        margin-top: 20px;
        border-radius: 12px;
    }
    .programCon_custom01 .recruitment_detail_top_box {
        padding: 20px;
    }
    .programCon_custom01 .recruitment_detail_top_box .recruitment_tit {
        font-size: 20px;
    }
    .programCon_custom01 .recruitment_detail_top_box .recruitment_tit .lecture_desc_value {
        display: block;
        margin-left: 0 !important;
        margin-top: 8px;
        font-size: 14px !important;
    }
    .programCon_custom01 .readEdit {
        padding: 20px;
        font-size: 15px;
    }
    .programCon_custom01 .urlFile p {
        padding: 12px 20px;
    }
    .programCon_custom01 .readAnswer {
        margin: 16px 20px 20px;
        padding: 16px;
    }
    .programCon_custom01 .ej_du_wrap {
        padding: 16px 20px;
    }
    .programCon_custom01 .read_page_nav li,
    .programCon_custom01 .ej_du_list li {
        padding: 12px 16px;
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }
    .programCon_custom01 .mok_rok_btn a.btn {
        width: 100%;
        max-width: 300px;
    }
}

/* 寃뚯떆??紐⑸줉 諛섏쓳??*/
@media all and (max-width: 1024px) {
    .board_hero {
        padding: 150px 0 60px;
    }
    .board_hero .hero_title {
        font-size: 40px;
    }
    .board_hero .hero_desc {
        font-size: 16px;
    }
    .recruitment_table01 .box {
        padding: 20px;
    }
    .recruitment_table01 .box .noice_board_alt_box .tit .title_value {
        font-size: 18px !important;
    }
}

@media all and (max-width: 768px) {
    .board_hero {
        padding: 120px 0 50px;
    }
    .board_hero .hero_label {
        font-size: 14px;
        margin-bottom: 12px;
    }
    .board_hero .hero_title {
        font-size: 28px;
    }
    .board_hero .hero_desc {
        font-size: 14px;
    }
    .board_hero .hero_desc br {
        display: none;
    }
    .recruitment_table01 .box {
        padding: 16px;
        border-radius: 12px;
    }
    .recruitment_table01 .box .noice_board_alt_box .tit .title_value {
        font-size: 16px !important;
    }
    .com_prd_box_gallery_total_wrapper li {
        border-radius: 12px;
    }
    .com_prd_box_gallery_total_wrapper li .alt_box {
        padding: 14px;
    }
    .com_prd_box_gallery_total_wrapper li .alt_box .tit .title_value {
        font-size: 15px;
    }
    .mo_programPage a {
        padding: 14px 40px;
        font-size: 14px;
    }
}

/* ========================================
   ?⑤씪???곷떞 ?섏씠吏 - ?쇱씠???뚮쭏
   ======================================== */

/* ?덉뼱濡??뱀뀡 - ?ㅽ겕 ?뚮쭏 */
.consult_hero {
    width: 100%;
    padding: 170px 180px 80px;
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.08) 0%, rgba(0, 0, 0, 0.95) 50%, rgba(239, 68, 68, 0.05) 100%), #000;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
}
.consult_hero::before {
    content: '';
    position: absolute;
    width: 400px;
    height: 400px;
    right: -50px;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(239, 68, 68, 0.08);
    border-radius: 9999px;
    filter: blur(80px);
    pointer-events: none;
}

.consult_hero .inner {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

.consult_hero .hero_label {
    display: block;
    color: #ef4444;
    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 16px;
}

.consult_hero .hero_title {
    font-family: 'Orbitron', sans-serif;
    font-size: 52px;
    font-weight: 900;
    line-height: 1.2;
}

.consult_hero .hero_title.dark {
    color: #fff;
}

.consult_hero .hero_title .muted {
    color: rgba(255, 255, 255, 0.5);
}

.consult_hero .hero_desc {
    margin-top: 20px;
    color: #AAAAAA;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.6;
}

/* ???곸뿭 - ?ㅽ겕 ?뚮쭏 */
.programCon_custom01 .new_login_wrapper {
    max-width: 800px;
    margin: 0 auto;
    padding: 60px 40px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 18px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.programCon_custom01 .new_login_wrapper.wide {
    max-width: 900px;
}

/* ????댄? */
.programCon_custom01 .login_tit01 {
    color: #fff;
    font-size: 28px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 40px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

/* ???섑띁 */
.programCon_custom01 .login_form_wrapper {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* ??諛뺤뒪 */
.programCon_custom01 .login_form_box01 {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* ?쇰꺼 */
.programCon_custom01 .login_label_tit01 {
    color: #fff;
    font-size: 15px;
    font-weight: 600;
}

.programCon_custom01 .login_label_tit01.key::after {
    content: '*';
    color: #ef4444;
    margin-left: 4px;
}

/* ?낅젰 ?꾨뱶 - ?ㅽ겕 ?뚮쭏 */
.programCon_custom01 .login_input_form_box01 input,
.programCon_custom01 .login_form_flex_box01 select,
.programCon_custom01 .login_tel_flex_box01 select,
.programCon_custom01 .login_tel_flex_box01 input {
    width: 100%;
    height: 50px;
    padding: 0 16px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.05);
    color: #fff;
    font-size: 15px;
    font-family: 'Pretendard', sans-serif;
    box-sizing: border-box;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.programCon_custom01 .login_input_form_box01 input:focus,
.programCon_custom01 .login_form_flex_box01 select:focus,
.programCon_custom01 .login_tel_flex_box01 select:focus,
.programCon_custom01 .login_tel_flex_box01 input:focus {
    outline: none;
    border-color: #ef4444;
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.15);
}

.programCon_custom01 .login_input_form_box01 input::placeholder {
    color: #666;
}

/* select option ?ㅽ???- ?ㅽ겕 ?뚮쭏 */
.programCon_custom01 .login_form_flex_box01 select option,
.programCon_custom01 .login_tel_flex_box01 select option {
    background: #111;
    color: #fff;
    padding: 10px;
}

/* ?꾪솕踰덊샇 ?낅젰 */
.programCon_custom01 .login_tel_flex_box01 {
    display: flex;
    align-items: center;
    gap: 10px;
}

.programCon_custom01 .login_tel_flex_box01 select {
    flex: 0 0 100px;
}

.programCon_custom01 .login_tel_flex_box01 .login_input_form_box01 {
    flex: 1;
}

/* textarea - ?ㅽ겕 ?뚮쭏 */
.programCon_custom01 .form_textarea01 {
    width: 100%;
    min-height: 200px;
    padding: 16px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.05);
    color: #fff;
    font-size: 15px;
    font-family: 'Pretendard', sans-serif;
    line-height: 1.6;
    resize: vertical;
    box-sizing: border-box;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.programCon_custom01 .form_textarea01:focus {
    outline: none;
    border-color: #ef4444;
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.15);
}

.programCon_custom01 .form_textarea01::placeholder {
    color: #666;
}

/* ?숈쓽 ?곸뿭 - ?ㅽ겕 ?뚮쭏 */
.programCon_custom01 .login_etc_wrapper {
    padding: 24px;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.programCon_custom01 .login_etc_wrapper .login_label_tit01 {
    margin-bottom: 16px;
}

.programCon_custom01 .login_etc_box01 .txt_box {
    max-height: 150px;
    overflow-y: auto;
    padding: 16px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    color: #888;
    font-size: 13px;
    line-height: 1.6;
}

/* 泥댄겕諛뺤뒪 - ?ㅽ겕 ?뚮쭏 */
.programCon_custom01 .id_save_box {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #AAAAAA;
    font-size: 14px;
    cursor: pointer;
}

.programCon_custom01 .id_save_box input[type="checkbox"] {
    width: 18px;
    height: 18px;
    accent-color: #ef4444;
}

/* ?꾨Ц蹂닿린 踰꾪듉 */
.programCon_custom01 .jeon_moon_btn {
    color: #ef4444;
    font-size: 14px;
    font-weight: 500;
    text-decoration: underline;
}

.programCon_custom01 .jeon_moon_btn:hover {
    color: #dc2626;
}

/* 罹≪콬 ?곸뿭 - ?ㅽ겕 ?뚮쭏 */
.programCon_custom01 .pro_flex_box {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.programCon_custom01 .pro_flex_box #captchaImg {
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.programCon_custom01 .reset_bbbbtn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    transition: background 0.2s ease;
}

.programCon_custom01 .reset_bbbbtn:hover {
    background: rgba(255, 255, 255, 0.15);
}

/* ?쒖텧 踰꾪듉 - ?ㅽ겕 ?뚮쭏 */
.programCon_custom01 .login_submit_btn_box01 {
    margin-top: 32px;
}

.programCon_custom01 .login_chk_btn01 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 56px;
    background: #ef4444;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    border-radius: 12px;
    text-decoration: none;
    transition: background 0.2s ease, transform 0.2s ease;
    box-shadow: 0 0 30px rgba(239, 68, 68, 0.3);
}

.programCon_custom01 .login_chk_btn01:hover {
    background: #dc2626;
    transform: translateY(-2px);
    box-shadow: 0 0 40px rgba(239, 68, 68, 0.5);
}

/* ?대찓???먮룞?꾩꽦 - ?ㅽ겕 ?뚮쭏 */
.programCon_custom01 .autocomplete-suggestions {
    background: #111;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    margin-top: 4px;
    max-height: 200px;
    overflow-y: auto;
}

.programCon_custom01 .autocomplete-suggestions div {
    padding: 10px 16px;
    color: #fff;
    font-size: 14px;
    cursor: pointer;
    transition: background 0.2s ease;
}

.programCon_custom01 .autocomplete-suggestions div:hover {
    background: rgba(239, 68, 68, 0.15);
}

/* 諛섏쓳??*/
@media all and (max-width: 1024px) {
    .consult_hero {
        padding: 140px 60px 60px;
    }
    .consult_hero .hero_title {
        font-size: 42px;
    }
    .programCon_custom01 .new_login_wrapper {
        margin: 0 20px;
        padding: 40px 30px;
    }
}

@media all and (max-width: 768px) {
    .consult_hero {
        padding: 120px 20px 50px;
    }
    .consult_hero .hero_label {
        font-size: 14px;
    }
    .consult_hero .hero_title {
        font-size: 32px;
    }
    .consult_hero .hero_desc {
        font-size: 15px;
        margin-top: 16px;
    }
    .programCon_custom01 .new_login_wrapper {
        margin: 0 16px;
        padding: 30px 20px;
        border-radius: 12px;
    }
    .programCon_custom01 .login_tit01 {
        font-size: 22px;
        margin-bottom: 30px;
        margin-left: 20px !important;
    }
    .programCon_custom01 .login_form_wrapper {
        gap: 20px;
    }
    .programCon_custom01 .login_tel_flex_box01 {
        flex-wrap: wrap;
    }
    .programCon_custom01 .login_tel_flex_box01 select {
        flex: 0 0 100%;
    }
    .programCon_custom01 .login_tel_flex_box01 .login_input_form_box01 {
        flex: 1 1 calc(50% - 5px);
    }
    .programCon_custom01 .login_etc_wrapper {
        padding: 16px;
    }
    .programCon_custom01 .login_chk_btn01 {
        height: 50px;
        font-size: 15px;
    }
}


.mo_programPage {
    width: 90% !important;
    margin: 0 auto !important;
    background: unset !important;
    border: unset !important;
}

.mo_programPage a {
    background: #b0000d !important;
    color: #fff !important;
    box-shadow: unset !important;
}

.mo_programPage.no-more-data a::before {
    color: #ffffff !important;
}

.programCon_custom01 .mok_rok_btn a.btn{background: #b0000d !important; border: unset !important; box-shadow: unset !important;}

/* ========================================
   #newguide - 수강료 안내 페이지
======================================== */

/* 히어로 섹션 */
#newguide .guide-hero {
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.08) 0%, rgba(0, 0, 0, 0.95) 50%, rgba(239, 68, 68, 0.05) 100%), #000;
    height: 400px;
    margin-top: 70px;
    position: relative;
    overflow: hidden;
}
#newguide .guide-hero::before {
    content: '';
    position: absolute;
    width: 400px;
    height: 400px;
    right: -100px;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(239, 68, 68, 0.08);
    border-radius: 9999px;
    filter: blur(80px);
    pointer-events: none;
}
#newguide .guide-hero .inner {
    max-width: 1560px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}
#newguide .hero-label {
    color: #ef4444;
    font-size: 22px;
    font-weight: 700;
    text-transform: uppercase;
    margin: 0 0 16px;
}
#newguide .hero-title {
    color: #fff;
    font-family: Orbitron;
    font-size: 64px;
    font-style: normal;
    font-weight: 900;
    line-height: 120%; /* 76.8px */
    text-transform: uppercase;
}

/* 교습과정 요약 섹션 */
#newguide .course_summary {
    background: #000;
    padding: 60px 180px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
#newguide .course_summary .inner {
    max-width: 1560px;
    margin: 0 auto;
}
#newguide .summary_section_title {
    color: #fff;
    font-size: 24px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    margin: 0 0 24px;
}
#newguide .course_list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
#newguide .course_list li {
    color: #aaa;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    line-height: 1.6;
}
#newguide .course_list .course_num {
    color: #ef4444;
    font-weight: 600;
    margin-right: 8px;
}

/* 메인 콘텐츠 섹션 */
#newguide .guide-content {
    background: #000;
    padding: 80px 180px;
}
#newguide .guide-content .inner {
    max-width: 1560px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 80px;
}

/* 상단 카드 */
#newguide .top-cards {
    display: flex;
    gap: 24px;
}
#newguide .card {
    flex: 1;
    padding: 32px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    display: flex;
    gap: 20px;
}

/* 혜택 카드 */
#newguide .benefit-card {
    border-color: rgba(239, 68, 68, 0.15);
}
#newguide .card-icon {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
#newguide .card-icon.cyan {
    background: rgba(239, 68, 68, 0.15);
}
#newguide .card-icon.purple {
    background: rgba(249, 115, 22, 0.15);
}
#newguide .card-icon img {
    width: 24px;
    height: 24px;
}
#newguide .card-icon.cyan img {
    filter: brightness(0) saturate(100%) invert(42%) sepia(93%) saturate(1352%) hue-rotate(331deg) brightness(101%) contrast(97%);
}
#newguide .card-icon.purple img {
    filter: brightness(0) saturate(100%) invert(60%) sepia(98%) saturate(1000%) hue-rotate(360deg) brightness(100%) contrast(100%);
}
#newguide .card-body {
    flex: 1;
}
#newguide .card-title {
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    margin: 0 0 16px;
}
#newguide .benefit-list {
    list-style: none;
    padding: 0;
    margin: 0 0 12px;
}
#newguide .benefit-list li {
    color: #aaa;
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 4px;
}
#newguide .benefit-list li strong {
    color: #fff;
}
#newguide .cyan {
    color: #ef4444;
}
#newguide .purple {
    color: #f97316;
}
#newguide .card-note {
    color: #666;
    font-size: 13px;
    margin: 0;
}

/* 계좌 카드 */
#newguide .account-card {
    border-color: rgba(249, 115, 22, 0.15);
    align-items: flex-start;
}
#newguide .account-label {
    color: #888;
    font-size: 12px;
    text-transform: uppercase;
}
#newguide .account-number {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 8px 0;
}
#newguide .account-number .bank {
    color: #fff;
    font-size: 18px;
    font-weight: 600;
}
#newguide .account-number .number {
    color: #f97316;
    font-size: 18px;
    font-family: 'Orbitron', sans-serif;
    font-weight: 600;
}
#newguide .account-holder {
    color: #888;
    font-size: 13px;
}
#newguide .card-checks {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-left: auto;
    align-self: center;
}
#newguide .check-item {
    display: flex;
    align-items: center;
    gap: 8px;
}
#newguide .check-item img {
    width: 14px;
    height: 14px;
    filter: brightness(0) saturate(100%) invert(60%) sepia(98%) saturate(1000%) hue-rotate(360deg) brightness(100%) contrast(100%);
}
#newguide .check-item span {
    color: #888;
    font-size: 13px;
}

/* 가격표 섹션 */
#newguide .pricing-section {
    display: flex;
    gap: 24px;
    align-items: flex-start;
}
#newguide .pricing-column {
    flex: 1;
}
#newguide .pricing-header {
    margin-bottom: 24px;
}
#newguide .pricing-title {
    color: #fff;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
    margin: 0 0 8px;
}
#newguide .pricing-duration {
    font-size: 14px;
    font-weight: 600;
}
#newguide .pricing-card {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    padding: 32px;
    box-sizing: border-box;
    max-width: 100%;
}
#newguide .pricing-notice {
    color: #888;
    font-size: 14px;
    line-height: 1.7;
    margin: 0 0 24px;
}

/* 가격표 테이블 */
#newguide .pricing-table {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}
#newguide .pricing-row {
    display: flex;
    align-items: center;
    padding: 16px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
#newguide .row-label {
    color: #888;
    font-size: 14px;
    width: 100px;
    flex-shrink: 0;
}
#newguide .row-desc {
    color: #aaa;
    font-size: 14px;
    flex: 1;
}
#newguide .row-price {
    color: #fff;
    font-size: 18px;
    font-family: 'Orbitron', sans-serif;
    font-weight: 700;
    text-align: right;
    min-width: 120px;
}
#newguide .row-price.cyan {
    color: #ef4444;
}

/* Total */
#newguide .pricing-total {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 24px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    margin-bottom: 16px;
}
#newguide .total-label {
    color: #888;
    font-size: 14px;
}
#newguide .total-value {
    display: flex;
    align-items: baseline;
    gap: 8px;
}
#newguide .total-price {
    color: #fff;
    font-size: 28px;
    font-family: 'Orbitron', sans-serif;
    font-weight: 700;
}
#newguide .total-currency {
    color: #666;
    font-size: 14px;
}
#newguide .pricing-note {
    color: #666;
    font-size: 13px;
    line-height: 1.6;
    margin: 0 0 24px;
}

/* 혜택 요약 */
#newguide .benefit-summary {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding-top: 24px;
}
#newguide .benefit-summary h4 {
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 16px;
}
#newguide .benefit-summary ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
#newguide .benefit-summary li {
    color: #aaa;
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 8px;
}
#newguide .benefit-summary strong {
    color: #fff;
}

/* 단과반 불릿 */
#newguide .pricing-bullets {
    list-style: disc;
    padding-left: 20px;
    margin: 0 0 16px;
}
#newguide .pricing-bullets li {
    color: #aaa;
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 8px;
}
#newguide .bullets-note {
    color: #666;
    font-size: 13px;
    margin: 0 0 24px;
}

/* Zero Cost 박스 */
#newguide .zero-cost-box {
    background: rgba(239, 68, 68, 0.05);
    border: 1px solid rgba(239, 68, 68, 0.15);
    border-radius: 12px;
    padding: 24px;
    margin-top: 24px;
}
#newguide .zero-header {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}
#newguide .zero-header img {
    width: 16px;
    height: 16px;
}
#newguide .zero-header span {
    color: #ef4444;
    font-size: 14px;
    font-weight: 700;
}
#newguide .zero-cost-box p {
    color: #888;
    font-size: 14px;
    margin: 0 0 8px;
}
#newguide .zero-cost-box .gradient {
    font-size: 20px;
    font-weight: 700;
    background: linear-gradient(90deg, #ef4444 0%, #f97316 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
#newguide .zero-note {
    color: #666 !important;
    font-size: 12px !important;
    margin-top: 12px !important;
}

/* CTA 섹션 */
#newguide .guide-cta {
    background: #0a0a0a;
    padding: 100px 180px;
    text-align: center;
    position: relative;
    overflow: hidden;
}
#newguide .guide-cta::before {
    content: '';
    position: absolute;
    width: 500px;
    height: 500px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background: rgba(239, 68, 68, 0.05);
    border-radius: 9999px;
    filter: blur(100px);
    pointer-events: none;
}
#newguide .guide-cta .inner {
    max-width: 1000px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}
#newguide .cta-title {
    color: #fff;
    font-size: 36px;
    font-weight: 700;
    margin: 0 0 20px;
}
#newguide .cta-desc {
    color: #888;
    font-size: 15px;
    line-height: 1.8;
    margin: 0 0 48px;
}
#newguide .cta-cards {
    display: flex;
    gap: 20px;
    margin-bottom: 48px;
}
#newguide .cta-card {
    flex: 1;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}
#newguide .cta-card img {
    width: 32px;
    height: 32px;
    filter: brightness(0) saturate(100%) invert(42%) sepia(93%) saturate(1352%) hue-rotate(331deg) brightness(101%) contrast(97%);
}
#newguide .cta-label {
    color: #666;
    font-size: 12px;
    text-transform: uppercase;
}
#newguide .cta-value {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
}
#newguide .cta-btn {
    display: inline-block;
    background: #ef4444;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    padding: 16px 40px;
    border-radius: 50px;
    text-decoration: none;
    transition: all 0.3s;
    box-shadow: 0 0 30px rgba(239, 68, 68, 0.3);
}
#newguide .cta-btn:hover {
    background: #dc2626;
    transform: translateY(-2px);
    box-shadow: 0 0 40px rgba(239, 68, 68, 0.5);
}

/* #newguide 반응형 */
@media (max-width: 1200px) {
    #newguide .guide-hero,
    #newguide .guide-content,
    #newguide .guide-cta,
    #newguide .course_summary {
        padding-left: 60px;
        padding-right: 60px;
    }
}
@media (max-width: 992px) {
    #newguide .guide-hero,
    #newguide .guide-content,
    #newguide .guide-cta,
    #newguide .course_summary {
        padding-left: 40px;
        padding-right: 40px;
    }
    #newguide .top-cards,
    #newguide .pricing-section {
        flex-direction: column;
    }
    #newguide .cta-cards {
        flex-direction: column;
    }
}
@media (max-width: 768px) {
    #newguide .guide-hero,
    #newguide .guide-content,
    #newguide .guide-cta,
    #newguide .course_summary {
        padding-left: 0;
        padding-right: 0;
    }
    #newguide .guide-hero .inner,
    #newguide .guide-content .inner,
    #newguide .guide-cta .inner,
    #newguide .course_summary .inner {
        width: 93.75% !important;
        margin: 0 auto;
    }
    #newguide .hero-title {
        font-size: 32px;
    }
    #newguide .summary_section_title {
        font-size: 20px;
    }
    #newguide .course_list li {
        font-size: 14px;
    }
    #newguide .card {
        flex-direction: column;
        padding: 16px;
    }
    #newguide .account-card {
        flex-direction: column;
    }
    #newguide .card-checks {
        margin-left: 0;
        margin-top: 16px;
    }
    #newguide .pricing-card {
        padding: 16px;
    }
    #newguide .pricing-header {
        margin-bottom: 16px;
    }
    #newguide .pricing-title {
        font-size: 18px;
    }
    #newguide .pricing-notice {
        font-size: 13px;
        margin-bottom: 16px;
    }
    #newguide .pricing-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
        padding: 12px 0;
    }
    #newguide .row-label {
        width: 100%;
        font-size: 13px;
        color: #ef4444;
        font-weight: 600;
    }
    #newguide .row-desc {
        font-size: 13px;
    }
    #newguide .row-price {
        font-size: 16px;
        text-align: left;
        min-width: auto;
    }
    #newguide .pricing-total {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
        padding: 16px 0;
    }
    #newguide .total-price {
        font-size: 22px;
    }
    #newguide .pricing-note {
        font-size: 12px;
    }
    #newguide .benefit-summary h4 {
        font-size: 14px;
    }
    #newguide .benefit-summary li {
        font-size: 13px;
    }
    #newguide .pricing-bullets {
        padding-left: 16px;
    }
    #newguide .pricing-bullets li {
        font-size: 13px;
    }
    #newguide .bullets-note {
        font-size: 12px;
    }
    #newguide .zero-cost-box {
        padding: 16px;
    }
    #newguide .zero-cost-box .gradient {
        font-size: 18px;
    }
    #newguide .cta-title {
        font-size: 24px;
    }
    #newguide .cta-desc {
        font-size: 14px;
        margin-bottom: 32px;
    }
    #newguide .cta-card {
        padding: 20px;
    }
    #newguide .cta-cards {
        margin-bottom: 32px;
    }
    #newguide .cta-btn {
        padding: 14px 32px;
        font-size: 14px;
    }
}

/* ========================================
   커리큘럼 페이지 - 교습과정 & 커리큘럼 섹션
   ======================================== */

#curriculum_page .curriculum_overview {
    background: #000;
    padding: 144px 180px;
    box-sizing: border-box;
}

#curriculum_page .curriculum_overview .inner {
    max-width: 1560px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 72px;
}

/* 블록 공통 */
#curriculum_page .overview_block {
    display: flex;
    flex-direction: column;
    gap: 36px;
}

/* 블록 헤더 */
#curriculum_page .block_header {
    display: flex;
    align-items: center;
    gap: 18px;
}

#curriculum_page .block_icon {
    width: 60px;
    height: 60px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

#curriculum_page .block_icon.cyan {
    background: rgba(239, 68, 68, 0.2);
}

#curriculum_page .block_icon.purple {
    background: rgba(239, 68, 68, 0.15);
}

#curriculum_page .block_icon.pink {
    background: rgba(239, 68, 68, 0.25);
}

#curriculum_page .block_icon span {
    font-family: 'Orbitron', sans-serif;
    font-weight: 900;
    font-size: 38px;
    text-transform: uppercase;
    line-height: 1.2;
}

#curriculum_page .block_icon.cyan span {
    color: #ef4444;
}

#curriculum_page .block_icon.purple span {
    color: #ef4444;
}

#curriculum_page .block_icon.pink span {
    color: #ef4444;
}

#curriculum_page .block_title {
    color: #fff;
    font-size: 32px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    margin: 0;
    line-height: 1.4;
}

#curriculum_page .block_desc {
    color: #aaa;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: -18px 0 0 0;
}

/* 교습과정 카드 */
#curriculum_page .course_cards {
    display: flex;
    gap: 18px;
    width: 100%;
}

#curriculum_page .course_card {
    flex: 1;
    background: rgba(239, 68, 68, 0.05);
    border: 1px solid rgba(239, 68, 68, 0.1);
    border-radius: 18px;
    padding: 37px;
    backdrop-filter: blur(15px);
    display: flex;
    flex-direction: column;
    gap: 18px;
    min-height: 200px;
}

#curriculum_page .card_num {
    width: 60px;
    height: 60px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

#curriculum_page .card_num.cyan {
    background: rgba(239, 68, 68, 0.2);
}

#curriculum_page .card_num span {
    font-family: 'Orbitron', sans-serif;
    font-weight: 900;
    font-size: 38px;
    color: #ef4444;
    line-height: 1.2;
}

#curriculum_page .card_content {
    display: flex;
    flex-direction: column;
    gap: 9px;
}

#curriculum_page .card_title {
    color: #fff;
    font-size: 22px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    margin: 0;
    line-height: 1.2;
}

#curriculum_page .card_list {
    list-style: disc;
    padding-left: 24px;
    margin: 0;
}

#curriculum_page .card_list li {
    color: #fff;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin-bottom: 4px;
}

#curriculum_page .card_list li:last-child {
    margin-bottom: 0;
}

/* 학기 카드 */
#curriculum_page .semester_cards {
    display: flex;
    gap: 36px;
    width: 100%;
}

#curriculum_page .semester_card {
    flex: 1;
    background: rgba(239, 68, 68, 0.05);
    border: 1px solid rgba(239, 68, 68, 0.1);
    border-radius: 18px;
    padding: 37px;
    backdrop-filter: blur(15px);
    min-height: 269px;
    box-sizing: border-box;
}

#curriculum_page .semester_title {
    color: #fff;
    font-size: 22px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;
    margin: 0 0 9px 0;
    line-height: 1.2;
}

#curriculum_page .semester_content {
    display: flex;
    flex-direction: column;
}

#curriculum_page .semester_content p {
    color: #fff;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0 0 4px 0;
}

#curriculum_page .semester_content p:last-child {
    margin-bottom: 0;
}

/* 하단 노트 */
#curriculum_page .overview_note {
    color: #aaa;
    font-size: 16px;
    font-family: 'Pretendard', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}

/* 반응형 - 1400px */
@media (max-width: 1400px) {
    #curriculum_page .curriculum_overview {
        padding: 100px 60px;
    }
}

/* 반응형 - 1200px */
@media (max-width: 1200px) {
    #curriculum_page .curriculum_overview {
        padding: 80px 40px;
    }
    
    #curriculum_page .curriculum_overview .inner {
        gap: 56px;
    }
    
    #curriculum_page .course_cards {
        flex-direction: column;
    }
    
    #curriculum_page .semester_cards {
        flex-direction: column;
        gap: 24px;
    }
    
    #curriculum_page .semester_card {
        min-height: auto;
    }
}

/* 반응형 - 768px */
@media (max-width: 768px) {
    #curriculum_page .curriculum_overview {
        padding: 60px 0;
    }
    
    #curriculum_page .curriculum_overview .inner {
        width: 93.75%;
        margin: 0 auto;
        gap: 48px;
    }
    
    #curriculum_page .overview_block {
        gap: 24px;
    }
    
    #curriculum_page .block_icon {
        width: 48px;
        height: 48px;
    }
    
    #curriculum_page .block_icon span {
        font-size: 28px;
    }
    
    #curriculum_page .block_title {
        font-size: 24px;
    }
    
    #curriculum_page .block_desc {
        font-size: 14px;
        margin-top: -12px;
    }
    
    #curriculum_page .course_card {
        padding: 24px;
        gap: 16px;
    }
    
    #curriculum_page .card_num {
        width: 48px;
        height: 48px;
    }
    
    #curriculum_page .card_num span {
        font-size: 28px;
    }
    
    #curriculum_page .card_title {
        font-size: 18px;
    }
    
    #curriculum_page .card_list li {
        font-size: 14px;
    }
    
    #curriculum_page .semester_card {
        padding: 24px;
    }
    
    #curriculum_page .semester_title {
        font-size: 18px;
    }
    
    #curriculum_page .semester_content p {
        font-size: 14px;
    }
    
    #curriculum_page .overview_note {
        font-size: 14px;
    }
}

/* 반응형 - 480px */
@media (max-width: 480px) {
    #curriculum_page .curriculum_overview {
        padding: 40px 0;
    }
    
    #curriculum_page .curriculum_overview .inner {
        gap: 36px;
    }
    
    #curriculum_page .block_header {
        gap: 12px;
    }
    
    #curriculum_page .block_icon {
        width: 40px;
        height: 40px;
    }
    
    #curriculum_page .block_icon span {
        font-size: 22px;
    }
    
    #curriculum_page .block_title {
        font-size: 20px;
    }
    
    #curriculum_page .course_card {
        padding: 20px;
    }
    
    #curriculum_page .card_num {
        width: 40px;
        height: 40px;
    }
    
    #curriculum_page .card_num span {
        font-size: 22px;
    }
    
    #curriculum_page .card_title {
        font-size: 16px;
    }
    
    #curriculum_page .card_list li {
        font-size: 13px;
    }
    
    #curriculum_page .semester_card {
        padding: 20px;
    }
    
    #curriculum_page .semester_title {
        font-size: 16px;
    }
    
    #curriculum_page .semester_content p {
        font-size: 13px;
    }
    
    #curriculum_page .overview_note {
        font-size: 13px;
    }
}
