body {
    margin: 0 auto;
    font-family: 'Inter', sans-serif;
}

/* 전체 컨테이너: max-width를 1920으로 제한 (-> 1280으로 변경)하고 가운데 정렬 */
#divContainer.clsContainer {
    width: 100%;
    height: auto;
    max-width: 1280px;
    margin: 0 auto;
    /*border: 1px solid red;*/
    /* 약간그림자 */
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.05), 0 0 6px rgba(0, 0, 0, 0.03);
    /* 미세한 배경색 차이 */
    background-color: #ffffff;
    border-radius: 8px;
}


/*****************************************
divMain 콘텐츠 CSS
 *****************************************/

/*****************************************
 * 섹션1 스타일
 *****************************************/
#divSection1.clsSection.clsCoreSpeechSection1 {
    width: 100%;
    padding: 0;
    margin: 0;
    background-color: #ffffff;
}

.clsCoreSpeechSection1Content {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

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

/* 섹션1의 반응형 스타일 */
@media screen and (max-width: 1024px) {
    /* 태블릿에서도 기본 스타일 유지 */
}

@media screen and (max-width: 768px) {
    /* 모바일에서도 기본 스타일 유지 */
}

@media screen and (max-width: 480px) {
    /* 작은 모바일에서도 기본 스타일 유지 */
}

/*****************************************
 * 섹션2 스타일
 *****************************************/
#divSection2.clsSection.clsCoreSpeechSection2 {
    background-color: #000000;
    color: white;
    padding: 60px 0;
    width: 100%;
}

.clsCoreSpeechSection2Content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    align-items: center;
    gap: 40px;
}

/* 텍스트 영역 스타일 */
.clsCoreSpeechSection2TextArea {
    flex: 1;
    padding-right: 20px;
}

.clsCoreSpeechSection2TitleContainer {
    display: flex;
    align-items: center;
    margin-bottom: 30px;
    flex-wrap: wrap;
}

.clsCoreSpeechSection2Title {
    font-size: 32px;
    font-weight: 700;
    margin: 0;
    margin-right: 15px;
    line-height: 1.2;
    color: white;
}

.clsCoreSpeechSection2TitleImg {
    height: 36px;
    width: auto;
    margin-top: 5px;
}

.clsCoreSpeechSection2Description {
    font-size: 16px;
    line-height: 1.6;
    color: #e0e0e0;
}

    .clsCoreSpeechSection2Description p {
        margin: 0 0 15px 0;
    }

        .clsCoreSpeechSection2Description p:last-child {
            margin-bottom: 0;
        }

/* 이미지 영역 스타일 */
.clsCoreSpeechSection2ImageArea {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}

.clsCoreSpeechSection2Image {
    max-width: 100%;
    height: auto;
    border-radius: 6px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
}

/* 섹션2의 반응형 스타일 */
@media screen and (max-width: 1024px) {
    .clsCoreSpeechSection2Content {
        gap: 30px;
    }

    .clsCoreSpeechSection2Title {
        font-size: 28px;
    }

    .clsCoreSpeechSection2TitleImg {
        height: 32px;
    }

    .clsCoreSpeechSection2Description {
        font-size: 15px;
    }
}

@media screen and (max-width: 768px) {
    #divSection2.clsSection.clsCoreSpeechSection2 {
        padding: 40px 0;
    }

    .clsCoreSpeechSection2Content {
        flex-direction: column;
        gap: 30px;
    }

    .clsCoreSpeechSection2TextArea {
        padding-right: 0;
        width: 100%;
    }

    .clsCoreSpeechSection2TitleContainer {
        margin-bottom: 20px;
        justify-content: center;
    }

    .clsCoreSpeechSection2Title {
        font-size: 26px;
        text-align: center;
    }

    .clsCoreSpeechSection2TitleImg {
        height: 30px;
    }

    .clsCoreSpeechSection2Description {
        text-align: center;
    }

        .clsCoreSpeechSection2Description p {
            margin-bottom: 10px;
        }

    .clsCoreSpeechSection2ImageArea {
        width: 100%;
    }

    .clsCoreSpeechSection2Image {
        max-width: 90%;
    }
}

@media screen and (max-width: 480px) {
    #divSection2.clsSection.clsCoreSpeechSection2 {
        padding: 30px 0;
    }

    .clsCoreSpeechSection2Title {
        font-size: 22px;
        margin-bottom: 5px;
        margin-right: 10px;
    }

    .clsCoreSpeechSection2TitleImg {
        height: 26px;
    }

    .clsCoreSpeechSection2Description {
        font-size: 14px;
    }

        .clsCoreSpeechSection2Description p {
            margin-bottom: 8px;
        }
}


/*****************************************
 * 섹션3 스타일
 *****************************************/
#divSection3.clsSection.clsCoreSpeechSection3 {
    background-color: #ffffff;
    padding: 80px 0;
    width: 100%;
}

.clsCoreSpeechContainer3 {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
}

/* 타이틀 영역 스타일 */
.clsCoreSpeechTitleArea3 {
    text-align: center;
    margin-bottom: 50px;
}

.clsCoreSpeechSubTitle3 {
    font-size: 18px;
    font-weight: 500;
    color: #333;
    margin: 0 0 15px 0;
}

.clsCoreSpeechTitle3 {
    font-size: 28px;
    font-weight: 700;
    color: #333;
    margin: 0;
}

    .clsCoreSpeechTitle3 .clsHighlight {
        color: #00CE4E;
        font-weight: 700;
    }

/* 슬라이드 영역 스타일 */
.clsCoreSpeechSlideArea3 {
    position: relative;
    margin: 0 auto;
    width: 100%;
}

.clsCoreSpeechSlideContainer3 {
    position: relative;
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}

.clsCoreSpeechSlideWrapper3 {
    position: relative;
    width: 100%;
    overflow: hidden;
    border-radius: 15px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
}

.clsCoreSpeechSlide3 {
    display: none;
    width: 100%;
}

    .clsCoreSpeechSlide3.active {
        display: block;
    }

/* 비디오 래퍼 및 iframe 스타일 */
.clsVideoWrapper {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 Aspect Ratio */
    height: 0;
    overflow: hidden;
    /* border: 1px solid #ccc; /* 비디오 주위의 얇은 회색 테두리 제거 */
    border-radius: 8px; /* 약간 둥근 모서리 */
    /* background-color: #000; /* 로딩 중 배경색 제거 */
}

.clsVideoWrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none; /* iframe 자체 테두리 제거 */
}

/* 비디오 플레이스홀더 스타일 */
.clsVideoPlaceholder {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 450px; /* iframe과 유사한 높이 설정 (wrapper 높이 기반) */
    background-color: #f0f0f0;
    border: 1px solid #ccc;
    border-radius: 8px;
    color: #888;
    font-size: 1.2em;
}

/* 슬라이드 컨트롤 스타일 */
.clsCoreSpeechSlideControls3 {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 30px;
}

.clsCoreSpeechSlidePrev3,
.clsCoreSpeechSlideNext3 {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
}

    .clsCoreSpeechSlidePrev3:hover,
    .clsCoreSpeechSlideNext3:hover {
        transform: scale(1.1);
    }

.clsCoreSpeechSlideDots3 {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 20px;
}

.clsCoreSpeechSlideDot3 {
    width: 8px;
    height: 8px;
    background-color: #ccc;
    border-radius: 50%;
    margin: 0 5px;
    cursor: pointer;
    transition: all 0.3s ease;
}

    .clsCoreSpeechSlideDot3.active {
        background-color: #00CE4E;
        width: 10px;
        height: 10px;
    }

/* 스크립트 체험 영역 스타일 */
.clsCoreSpeechScriptContainer3 {
    margin-top: 30px; /* 슬라이드 컨트롤과의 간격 */
    border: 1px solid #e0e0e0; /* 테두리 */
    border-radius: 8px; /* 둥근 모서리 */
    overflow: hidden; /* 내부 요소가 넘치지 않도록 */
}

.clsCoreSpeechScriptTitleBar3 {
    background-color: #00CE4E; /* 녹색 배경 */
    color: white; /* 흰색 글씨 */
    padding: 10px 15px; /* 안쪽 여백 */
    font-weight: bold; /* 굵은 글씨 */
    text-align: center; /* 가운데 정렬 */
    font-size: 1.1em;
    border-bottom: 1px solid #e0e0e0; /* 아래쪽 경계선 */
}

.clsCoreSpeechScriptArea3 {
    /* margin-top: 30px; /* 슬라이드 컨트롤과의 간격 */ 
    height: 200px; /* 스크롤 영역 높이 */
    overflow-y: auto; /* 세로 스크롤 활성화 */
    /* border: 1px solid #e0e0e0; /* 테두리 */ 
    /* border-radius: 8px; /* 둥근 모서리 */ 
    padding: 15px; /* 내부 여백 */
    background-color: #f9f9f9; /* 배경색 */
    color: #333; /* 글자색 */
    text-align: left; /* 왼쪽 정렬 추가 */
    font-family: Arial, sans-serif; /* 기본 폰트 */
    /* 스크롤바 스타일링 (선택적) */
    scrollbar-width: thin; /* Firefox */
    scrollbar-color: #aaa #f1f1f1; /* Firefox */
}

/* Webkit 브라우저 스크롤바 스타일링 */
.clsCoreSpeechScriptArea3::-webkit-scrollbar {
    width: 8px;
}

.clsCoreSpeechScriptArea3::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 4px;
}

.clsCoreSpeechScriptArea3::-webkit-scrollbar-thumb {
    background: #aaa;
    border-radius: 4px;
}

.clsCoreSpeechScriptArea3::-webkit-scrollbar-thumb:hover {
    background: #888;
}

/* 반응형 폰트 및 줄 간격 */
.clsLineHeight150 {
    line-height: 1.5;
}

.clsFontSizeSet-P-1_2em {
    font-size: 1.2em;
}

/* 섹션3의 반응형 스타일 */
@media screen and (max-width: 1024px) {
    #divSection3.clsSection.clsCoreSpeechSection3 {
        padding: 60px 0;
    }

    .clsCoreSpeechSubTitle3 {
        font-size: 17px;
    }

    .clsCoreSpeechTitle3 {
        font-size: 26px;
    }

    .clsCoreSpeechSlideContainer3 {
        max-width: 700px;
    }
}

@media screen and (max-width: 768px) {
    #divSection3.clsSection.clsCoreSpeechSection3 {
        padding: 50px 0;
    }

    .clsCoreSpeechTitleArea3 {
        margin-bottom: 40px;
    }

    .clsCoreSpeechSubTitle3 {
        font-size: 16px;
        margin-bottom: 10px;
    }

    .clsCoreSpeechTitle3 {
        font-size: 24px;
    }

    .clsCoreSpeechSlideContainer3 {
        max-width: 500px;
    }

    .clsCoreSpeechSlideControls3 {
        margin-top: 25px;
    }

    /* 스크립트 영역 반응형 */
    .clsCoreSpeechScriptArea3 {
        height: 180px;
    }

    .clsFontSizeSet-T-1_1em {
        font-size: 1.1em;
    }

    .clsFontSizeSet-M-1_0em {
        font-size: 1.0em; /* 모바일 기본값 */
    }

    .clsCoreSpeechScriptTitleBar3 {
        font-size: 1.0em;
        padding: 8px 12px;
    }
}

@media screen and (max-width: 480px) {
    #divSection3.clsSection.clsCoreSpeechSection3 {
        padding: 40px 0;
    }

    .clsCoreSpeechTitleArea3 {
        margin-bottom: 30px;
    }

    .clsCoreSpeechSubTitle3 {
        font-size: 15px;
    }

    .clsCoreSpeechTitle3 {
        font-size: 22px;
    }

    .clsCoreSpeechSlideDots3 {
        margin: 0 15px;
    }

    .clsCoreSpeechSlideDot3 {
        width: 6px;
        height: 6px;
        margin: 0 4px;
    }

        .clsCoreSpeechSlideDot3.active {
            width: 8px;
            height: 8px;
        }
}

/*****************************************
 * 섹션4 스타일
 *****************************************/
#divSection4.clsSection.clsCoreSpeechSection4 {
    width: 100%;
    padding: 0 0 80px 0;
    background-color: #FFFFFF;
}

/* 배너 스타일 */
.clsCoreSpeechSection4Banner {
    background-color: #00CE4E;
    color: white;
    text-align: center;
    padding: 40px 20px;
    margin-bottom: 60px;
}

.clsCoreSpeechSection4BannerSubtitle {
    font-size: 18px;
    margin: 0 0 10px 0;
    font-weight: 500;
}

.clsCoreSpeechSection4BannerTitle {
    font-size: 32px;
    margin: 0;
    font-weight: 700;
}

/* 콘텐츠 영역 스타일 */
.clsCoreSpeechSection4Container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
}

.clsCoreSpeechSection4Content {
    width: 100%;
}

.clsCoreSpeechSection4Row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 80px;
    gap: 40px;
}

    .clsCoreSpeechSection4Row:last-child {
        margin-bottom: 0;
    }

.clsCoreSpeechSection4RowReverse {
    flex-direction: row-reverse;
}

/* 텍스트 영역 스타일 */
.clsCoreSpeechSection4TextColumn {
    flex: 1;
    max-width: 450px;
}

.clsCoreSpeechSection4Title {
    font-size: 24px;
    font-weight: 700;
    color: #00CE4E;
    margin: 0 0 20px 0;
}

.clsCoreSpeechSection4Description {
    font-size: 16px;
    line-height: 1.6;
    color: #333;
    margin: 0;
}

/* 비디오 영역 스타일 */
.clsCoreSpeechSection4VideoColumn {
    flex: 1.2;
    max-width: 600px;
}

.clsCoreSpeechSection4VideoWrapper {
    width: 100%;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.clsCoreSpeechSection4VideoThumbnail {
    position: relative;
    cursor: pointer;
    transition: transform 0.3s ease;
}

    .clsCoreSpeechSection4VideoThumbnail:hover {
        transform: scale(1.02);
    }

    .clsCoreSpeechSection4VideoThumbnail img {
        width: 100%;
        height: auto;
        display: block;
    }

.clsCoreSpeechSection4PlayButton {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: transform 0.3s ease;
}

.clsCoreSpeechSection4VideoThumbnail:hover .clsCoreSpeechSection4PlayButton {
    transform: translate(-50%, -50%) scale(1.1);
}

/* 비디오 플레이어 모달 스타일 */
.clsCoreSpeechSection4VideoPlayerModal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.9);
    z-index: 1100;
    align-items: center;
    justify-content: center;
}

.clsCoreSpeechSection4VideoPlayerContainer {
    position: relative;
    width: 90%;
    max-width: 900px;
    background-color: #000;
    border-radius: 8px;
    overflow: hidden;
}

.clsCoreSpeechSection4CloseVideoPlayer {
    position: absolute;
    top: 10px;
    right: 10px;
    background: rgba(0, 0, 0, 0.5);
    border: none;
    color: white;
    font-size: 24px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    transition: background 0.3s ease;
}

    .clsCoreSpeechSection4CloseVideoPlayer:hover {
        background-color: rgba(255, 255, 255, 0.2);
    }

.clsCoreSpeechSection4CustomVideoPlayer {
    position: relative;
    width: 100%;
}

.clsCoreSpeechSection4VideoElement {
    width: 100%;
    display: block;
}

.clsCoreSpeechSection4VideoControls {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.7);
    padding: 10px;
    display: flex;
    align-items: center;
    opacity: 0; /* Set initial opacity to 0 */
    transition: opacity 0.3s ease-in-out;
    z-index: 21;
}

/* Remove hover effect */
/*
.clsCoreSpeechSection4CustomVideoPlayer:hover .clsCoreSpeechSection4VideoControls {
    opacity: 1;
}
*/

.clsCoreSpeechSection4PlayPauseBtn {
    width: 36px;
    height: 36px;
    background-color: rgba(76, 217, 100, 0.7);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    margin-right: 15px;
    transition: background-color 0.3s ease;
}

    .clsCoreSpeechSection4PlayPauseBtn:hover {
        background-color: rgba(76, 217, 100, 1);
    }

.clsCoreSpeechSection4PauseIcon {
    display: none;
}

.clsCoreSpeechSection4ProgressBarContainer {
    flex: 1;
    margin: 0 15px;
}

.clsCoreSpeechSection4ProgressBar {
    height: 6px;
    background-color: rgba(255, 255, 255, 0.3);
    border-radius: 3px;
    position: relative;
    cursor: pointer;
}

.clsCoreSpeechSection4Progress {
    height: 100%;
    background-color: #4CD964;
    border-radius: 3px;
    width: 0;
}

.clsCoreSpeechSection4TimeDisplay {
    color: white;
    font-size: 14px;
    margin: 0 15px;
    min-width: 90px;
    text-align: center;
}

.clsCoreSpeechSection4VolumeContainer {
    display: flex;
    align-items: center;
    margin-right: 15px;
}

.clsCoreSpeechSection4VolumeBtn {
    cursor: pointer;
    margin-right: 10px;
}

.clsCoreSpeechSection4VolumeSlider {
    width: 60px;
    height: 6px;
    background-color: rgba(255, 255, 255, 0.3);
    border-radius: 3px;
    position: relative;
    cursor: pointer;
}

.clsCoreSpeechSection4VolumeProgress {
    height: 100%;
    background-color: #4CD964;
    border-radius: 3px;
    width: 100%;
}

.clsCoreSpeechSection4FullscreenBtn {
    cursor: pointer;
}

/* 섹션4의 반응형 스타일 */
@media screen and (max-width: 1024px) {
    .clsCoreSpeechSection4Banner {
        padding: 35px 20px;
        margin-bottom: 50px;
    }

    .clsCoreSpeechSection4BannerTitle {
        font-size: 28px;
    }

    .clsCoreSpeechSection4BannerSubtitle {
        font-size: 16px;
    }

    .clsCoreSpeechSection4Row {
        margin-bottom: 60px;
        gap: 30px;
    }

    .clsCoreSpeechSection4Title {
        font-size: 22px;
        margin-bottom: 15px;
    }

    .clsCoreSpeechSection4Description {
        font-size: 15px;
    }
}

@media screen and (max-width: 768px) {
    #divSection4.clsSection.clsCoreSpeechSection4 {
        padding: 0 0 60px 0;
    }

    .clsCoreSpeechSection4Banner {
        padding: 30px 15px;
        margin-bottom: 40px;
    }

    .clsCoreSpeechSection4BannerTitle {
        font-size: 24px;
    }

    .clsCoreSpeechSection4Row {
        flex-direction: column;
        margin-bottom: 50px;
        gap: 25px;
    }

    .clsCoreSpeechSection4RowReverse {
        flex-direction: column;
    }

    .clsCoreSpeechSection4TextColumn {
        max-width: 100%;
        text-align: center;
        order: 1; /* 텍스트가 항상 먼저 표시되도록 */
    }

    .clsCoreSpeechSection4VideoColumn {
        max-width: 100%;
        order: 2; /* 비디오가 항상 나중에 표시되도록 */
    }

    .clsCoreSpeechSection4Title {
        font-size: 20px;
    }

    .clsCoreSpeechSection4Description {
        font-size: 14px;
    }

    .clsCoreSpeechSection4VideoControls {
        padding: 10px;
    }

    .clsCoreSpeechSection4PlayPauseBtn {
        width: 30px;
        height: 30px;
    }

    .clsCoreSpeechSection4TimeDisplay {
        font-size: 12px;
        min-width: 70px;
    }
}

@media screen and (max-width: 480px) {
    #divSection4.clsSection.clsCoreSpeechSection4 {
        padding: 0 0 40px 0;
    }

    .clsCoreSpeechSection4Banner {
        padding: 25px 10px;
        margin-bottom: 30px;
    }

    .clsCoreSpeechSection4BannerTitle {
        font-size: 22px;
    }

    .clsCoreSpeechSection4Row {
        gap: 20px;
        margin-bottom: 40px;
    }

    .clsCoreSpeechSection4VolumeContainer {
        display: none; /* 모바일에서 볼륨 컨트롤 숨김 */
    }

    .clsCoreSpeechSection4VideoControls {
        padding: 8px;
    }

    .clsCoreSpeechSection4TimeDisplay {
        font-size: 11px;
        min-width: 60px;
    }
}

/*****************************************
 * 섹션5 스타일
 *****************************************/
#divSection5.clsSection.clsCoreSpeechSection5 {
    background-color: #333333;
    color: white;
    padding: 80px 0;
    width: 100%;
}

.clsCoreSpeechSection5Container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
    text-align: center;
}

.clsCoreSpeechSection5SubTitle {
    font-size: 18px;
    color: #cccccc;
    margin: 0 0 15px 0;
}

.clsCoreSpeechSection5Title {
    font-size: 28px;
    font-weight: 700;
    color: #4CD964;
    margin: 0 0 50px 0;
}

.clsCoreSpeechSection5ImageContainer {
    width: 70%;
    display: flex;
    justify-content: center;
    margin: 0 auto;
}

.clsCoreSpeechSection5Image {
    max-width: 100%;
    height: auto;
}

/* 섹션5의 반응형 스타일 */
@media screen and (max-width: 1024px) {
    #divSection5.clsSection.clsCoreSpeechSection5 {
        padding: 70px 0;
    }

    .clsCoreSpeechSection5SubTitle {
        font-size: 16px;
    }

    .clsCoreSpeechSection5Title {
        font-size: 26px;
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 768px) {
    #divSection5.clsSection.clsCoreSpeechSection5 {
        padding: 60px 0;
    }

    .clsCoreSpeechSection5SubTitle {
        font-size: 15px;
    }

    .clsCoreSpeechSection5Title {
        font-size: 24px;
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 480px) {
    #divSection5.clsSection.clsCoreSpeechSection5 {
        padding: 50px 0;
    }

    .clsCoreSpeechSection5SubTitle {
        font-size: 14px;
    }

    .clsCoreSpeechSection5Title {
        font-size: 22px;
        margin-bottom: 25px;
    }
}

/*****************************************
 * 섹션6 스타일
 *****************************************/
#divSection6.clsSection.clsCoreSpeechSection6 {
    background-color: #f8f8f8;
    padding: 80px 0;
    width: 100%;
}

.clsCoreSpeechSection6Container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.clsCoreSpeechSection6Header {
    text-align: center;
    margin-bottom: 50px;
}

.clsCoreSpeechSection6Title {
    font-size: 28px;
    font-weight: 700;
    color: #333;
    margin: 0;
}

.clsHighlight {
    color: #4CD964;
    font-weight: 700;
}

/* 비디오 그리드 스타일 */
.clsCoreSpeechVideoGrid {
    display: flex;
    justify-content: center;
    gap: 30px;
    width: 100%;
    margin-bottom: 40px;
}

.clsCoreSpeechVideoItem {
    width: 100%;
    max-width: 450px;
}

.clsCoreSpeechVideoThumbnail {
    position: relative;
    width: 100%;
    border-radius: 12px;
    overflow: hidden;
    cursor: pointer;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

    .clsCoreSpeechVideoThumbnail:hover {
        transform: translateY(-5px);
        box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
    }

        .clsCoreSpeechVideoThumbnail:hover .clsCoreSpeechPlayButton svg circle {
            fill-opacity: 1;
        }

.clsCoreSpeechVideoImg {
    width: 100%;
    height: auto;
    display: block;
}

.clsCoreSpeechPlayButton {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: all 0.3s ease;
}

.clsCoreSpeechVideoTitle {
    font-size: 16px;
    color: #333;
    margin: 15px 0 0 0;
    text-align: center;
}

/* 더보기 버튼 스타일 */
.clsCoreSpeechMoreButtonContainer {
    margin-top: 30px;
    text-align: center;
}

.clsCoreSpeechMoreButton {
    background: none;
    border: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    cursor: pointer;
    padding: 0;
    transition: transform 0.3s ease;
}

    .clsCoreSpeechMoreButton:hover {
        transform: translateY(-3px);
    }

.clsCoreSpeechMoreIcon {
    width: 40px;
    height: auto;
    margin-bottom: 10px;
}

.clsCoreSpeechMoreButton span {
    font-size: 16px;
    color: #333;
}

/* 비디오 모달 스타일 */
.clsCoreSpeechVideoModal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.85);
    z-index: 1000;
    overflow-y: auto;
}

.clsCoreSpeechModalContent {
    background-color: white;
    margin: 50px auto;
    padding: 20px;
    width: 90%;
    max-width: 1000px;
    border-radius: 10px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.3);
}

.clsCoreSpeechModalHeader {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 15px;
    border-bottom: 1px solid #eee;
    margin-bottom: 20px;
}

    .clsCoreSpeechModalHeader h3 {
        font-size: 24px;
        color: #333;
        margin: 0;
    }

.clsCoreSpeechCloseModal {
    background: none;
    border: none;
    font-size: 28px;
    color: #666;
    cursor: pointer;
    transition: color 0.3s ease;
}

    .clsCoreSpeechCloseModal:hover {
        color: #4CD964;
    }

.clsCoreSpeechModalBody {
    padding: 10px 0;
}

.clsCoreSpeechModalVideoGrid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

.clsCoreSpeechModalVideoItem {
    width: 100%;
}

/* 비디오 플레이어 모달 스타일 */
.clsCoreSpeechVideoPlayerModal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.9);
    z-index: 1100;
    align-items: center;
    justify-content: center;
}

.clsCoreSpeechVideoPlayerContainer {
    position: relative;
    width: 90%;
    max-width: 900px;
    background-color: #000;
    border-radius: 8px;
    overflow: hidden;
}

.clsCoreSpeechCloseVideoPlayer {
    position: absolute;
    top: 10px;
    right: 10px;
    background: rgba(0, 0, 0, 0.5);
    border: none;
    color: white;
    font-size: 24px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    transition: background 0.3s ease;
}

    .clsCoreSpeechCloseVideoPlayer:hover {
        background-color: rgba(255, 255, 255, 0.2);
    }

.clsCoreSpeechCustomVideoPlayer {
    position: relative;
    width: 100%;
}

.clsCoreSpeechVideoElement {
    width: 100%;
    display: block;
}

.clsCoreSpeechVideoControls {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.7);
    padding: 10px;
    display: flex;
    align-items: center;
    opacity: 0; /* Set initial opacity to 0 */
    transition: opacity 0.3s ease-in-out;
    z-index: 21;
}

/* Remove hover effect */
/*
.clsCoreSpeechCustomVideoPlayer:hover .clsCoreSpeechVideoControls {
    opacity: 1;
}
*/

.clsCoreSpeechPlayPauseBtn {
    width: 36px;
    height: 36px;
    background-color: rgba(76, 217, 100, 0.7);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    margin-right: 15px;
    transition: background-color 0.3s ease;
}

    .clsCoreSpeechPlayPauseBtn:hover {
        background-color: rgba(76, 217, 100, 1);
    }

.clsCoreSpeechPauseIcon {
    display: none;
}

.clsCoreSpeechProgressBarContainer {
    flex: 1;
    margin: 0 15px;
}

.clsCoreSpeechProgressBar {
    height: 6px;
    background-color: rgba(255, 255, 255, 0.3);
    border-radius: 3px;
    position: relative;
    cursor: pointer;
}

.clsCoreSpeechProgress {
    height: 100%;
    background-color: #4CD964;
    border-radius: 3px;
    width: 0;
}

.clsCoreSpeechTimeDisplay {
    color: white;
    font-size: 14px;
    margin: 0 15px;
    min-width: 90px;
    text-align: center;
}

.clsCoreSpeechVolumeContainer {
    display: flex;
    align-items: center;
    margin-right: 15px;
}

.clsCoreSpeechVolumeBtn {
    cursor: pointer;
    margin-right: 10px;
}

.clsCoreSpeechVolumeSlider {
    width: 60px;
    height: 6px;
    background-color: rgba(255, 255, 255, 0.3);
    border-radius: 3px;
    position: relative;
    cursor: pointer;
}

.clsCoreSpeechVolumeProgress {
    height: 100%;
    background-color: #4CD964;
    border-radius: 3px;
    width: 100%;
}

.clsCoreSpeechFullscreenBtn {
    cursor: pointer;
}

/* 섹션6의 반응형 스타일 */
@media screen and (max-width: 1024px) {
    #divSection6.clsSection.clsCoreSpeechSection6 {
        padding: 70px 0;
    }

    .clsCoreSpeechSection6Title {
        font-size: 26px;
    }

    .clsCoreSpeechVideoGrid {
        gap: 25px;
    }

    .clsCoreSpeechVideoTitle {
        font-size: 15px;
    }

    .clsCoreSpeechModalVideoGrid {
        gap: 25px;
    }

    .clsCoreSpeechModalHeader h3 {
        font-size: 22px;
    }
}

@media screen and (max-width: 768px) {
    #divSection6.clsSection.clsCoreSpeechSection6 {
        padding: 60px 0;
    }

    .clsCoreSpeechSection6Title {
        font-size: 24px;
    }

    .clsCoreSpeechVideoGrid {
        flex-direction: column;
        align-items: center;
        gap: 30px;
    }

    .clsCoreSpeechVideoItem {
        max-width: 500px;
    }

    .clsCoreSpeechModalVideoGrid {
        grid-template-columns: 1fr;
    }

    .clsCoreSpeechModalHeader h3 {
        font-size: 20px;
    }
}

@media screen and (max-width: 480px) {
    #divSection6.clsSection.clsCoreSpeechSection6 {
        padding: 50px 0;
    }

    .clsCoreSpeechSection6Title {
        font-size: 22px;
    }

    .clsCoreSpeechVideoTitle {
        font-size: 14px;
    }

    .clsCoreSpeechMoreIcon {
        width: 32px;
    }

    .clsCoreSpeechMoreButton span {
        font-size: 14px;
    }

    .clsCoreSpeechVolumeContainer {
        display: none;
    }
}
