body{background: #100F14;}
/* 메인배너 스타일 */
.main-container{width: 100%;}
.main-banner{width: 100%; height: 800px; overflow: hidden; position: relative;}
.main-movie{width: 100%; height: 100%; object-fit: cover; object-position: center;}
.main-box{width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: rgba(0, 0, 0, 0.75); display: flex; align-items: center; flex-direction: column; padding-top: 240px;}
.main-box-title{font-size: 59px; font-weight: 700; color: #fff; line-height: 82px; text-align: center;}
.fade-txt{display: inline-block; opacity: 1; animation: 1.5s ease-in-out 0s 1 normal none running expand;}
.main-box-desc{font-size: 17px; font-weight: 300; color: #CFCFCF; margin: 0; text-align: center;}
.main-flex-p{
    display: flex;
}
.main-flex-p.main-desc-wrapper{
    margin-top: 24px;
    gap: 3px;
}
.main-flex-p-text{font-size: 59px; font-weight: 700; color: #fff; line-height: 82px; text-align: center;}

.rw-start{margin-top: 70px;}
.rw-start-text {
    font-size: 17px;
    font-weight: 300;
    color: #CFCFCF;
    display:flex;
    gap: 4px;
    justify-content: center;
        height: 82px;
    align-items: center;
}
.rw-input{width: 680px; height: 60px; border-radius: 30px; background: rgba(255, 255, 255, 0.2); border: 1px solid rgba(255, 255, 255, 0.33); display: flex; align-items: center; padding: 6px; justify-content: space-between; margin-top: 20px;}
.rw-input-field{width: 100%; height: 100%; background: none; font-size: 16px; font-weight: 400; color: #fff; border: none; outline: none; box-shadow: none; padding-left: 28px;}
.rw-input-field::placeholder{color: #FFFFFF;}
.rw-input-btn{width: 180px; height: 100%; background: #7800ff; color: #fff; display: flex; align-items: center; gap: 6px; justify-content: center; font-size: 18px; font-weight: 500; color: #fff; border-radius: 25px; cursor: pointer;}
.move-icon{width: 12px; height: 12px; border-top: 2px solid #fff; border-right: 2px solid #fff; transform: rotate(45deg); display: inline-block;}

.rw-cate{width: 680px; display: flex; align-items: center; justify-content: space-between; margin-top: 32px;}
.rw-cate-item{padding: 0 18px 0 18px; height: 34px; background: rgba(255, 255 ,255, 0.1); color: #fff; display: flex; align-items: center; justify-content: center; border: 1px solid rgba(255, 255, 255, 0.33); border-radius: 17px; font-size: 14px; font-weight: 400; cursor: pointer; transition: 0.3s ease;}
.rw-cate-item:hover{background: #fff; color: #000;}
.blur-effect{width: 100%; height: auto; margin-top: 32px;}
.blue-effect>img{width: 100%; height: 100%; object-fit: fill;}

.rw-showcase{width: 100%; margin-top: 150px;}
.rw-showcase-title{font-size: 36px; font-weight: 600; color: #fff; line-height: 45px; text-align: center;}
.rw-showcase-desc{font-size: 20px; font-weight: 300; color: #CFCFCF; line-height: 27px; margin-top: 40px; text-align: center;}

.rw-list{column-count: 5; column-gap: 8px; margin: 0 auto; margin-top: 40px; max-height: 2000px;}
.rw-tile{break-inside: avoid; position: relative; margin-bottom: 8px; border-radius: 15px; overflow: hidden; display: block; -webkit-column-break-inside: avoid; -moz-column-break-inside: avoid; border: 1px solid rgba(255, 255, 255, 0.13);}
.rw-tile-img {
    /* border-radius: 15px; */
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    /* transform: scale(1.05); */
}
.tile-cover{position: absolute; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.3); z-index: 1; top: 0; left: 0; display: flex; align-items: center; justify-content: space-between;; flex-direction: column; padding: 20px 0 40px 0; opacity: 0; transition: 0.4s ease;}
.bottom-tap{display: flex; flex-direction: column; align-items: center;}
.bottom-tap-title{font-size: 25px; font-weight: 700; color: #fff;}
.tile-info{display: flex; gap: 20px; align-items: center; margin-top: 24px;}
.tile-info-item{display: flex; align-items: center; gap: 10px; font-size: 14px; font-weight: 400; color: #fff;}
.bottom-tap-btn{width: 115px; height: 44px; border-radius: 22px; background: rgba(101, 63, 208, 0.5); display: flex; align-items: center; justify-content: center; color: #fff; font-size: 19px; font-weight: 400; border: 1px solid #fff; margin-top: 38px; cursor: pointer;}
.rw-tile:hover>.tile-cover{opacity: 1;}

.more-btn{width: 128px; height: 50px; border-radius: 25px; background: rgba(255, 255, 255, 0.2); color: #fff; border: 1px solid #fff; display: flex; align-items: center; justify-content: center; font-size: 23px; font-weight: 400; margin: 44px auto 0 auto; cursor: pointer; transition: 0.3s ease;}
.more-btn:hover{background: #fff; color: #000;}

.top-tap{width: 100%; padding: 0 20px; display: flex; align-items: center; justify-content: space-between;}
.top-cate{display:flex; align-items: center; gap: 10px;}
.top-cate-item{display: flex; align-items: center; justify-content: center; padding: 0 15px; height: 40px; border-radius: 20px; background: rgba(255, 255 ,255, 0.1); border: 1px solid rgba(255, 255, 255, 0.3); color: #fff; font-size: 14px; font-weight: 500;}
.top-tap-vote{width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; background: rgba(255, 255, 255, 0.3); border-radius: 50%;}




.rw-tiny{width: 100%; max-width: 1300px; margin: 0 auto; margin-top: 206px;}
.tiny-box{width: 100%; height: 460px; border-radius: 15px; overflow: hidden; position: relative; padding: 32px 0; display: flex; align-items: center; overflow: hidden; background: rgba(255, 255, 255, 0.13);}
.tiny-box>img{width: 100%; height: 100%; object-fit: cover; position: absolute; z-index: -1; top: 0; left: 0;}
.tiny-left{width: 360px; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; flex: 0 0 360px;}
.tiny-left-content{display: flex; flex-direction: column; align-items: center; justify-content: center;}
.tiny-left-img{width: 240px; height: auto;}
.tiny-left-text-box{
     margin-top: 26px;
     display: flex;
     flex-direction: column;
     align-items: center;
}
.tiny-left-text{font-size: 19px; font-weight: 400; color: #fff; line-height: 36px; text-align: center; margin: 0;}
.tiny-left-text-count{font-size: 19px; font-weight: 400; color: #fff; margin: 0;}
.tiny-left-btn{width: 170px; height: 48px; border-radius: 24px; background: rgba(255, 255, 255, 0.1); color: #fff; border: 1px solid #fff; display: flex; align-items: center; justify-content: center;font-size: 19px; font-weight: 400; margin-top: 24px; cursor: pointer; transition: 0.3s ease;}
.tiny-left-btn:hover{background: #fff; color: #000;}

.tiny-track{width: 100%; overflow: hidden;}
.tiny-right{width: max-content; display: flex; align-items: center; gap: 16px; overflow: auto;}
.tiny-right::-webkit-scrollbar{display: none;}
.tiny-image{width: 280px; height: 100%; border-radius: 15px; overflow: hidden; flex: 0 0 280px;}
.tiny-image-img{width: 100%; height: 100%; object-fit: cover;transform: scale(1.01);}
.tiny-arrow{position: absolute; right: 10px; z-index: 10;}
.tiny-mobile-nav{display: none;}

.rw-active{width: 100%; max-width: 1300px; margin: 0 auto; margin-top: 170px;}
.active-box{width: 100%; height: 500px; position: relative; display: flex; align-items: center; justify-content: space-between; padding: 0 38px 0 80px; border-radius: 15px; overflow: hidden; background: rgba(255, 255, 255, 0.13);}
.active-box>img{width: 100%; height: 100%; object-fit: cover; position: absolute; top: 0; left: 0; z-index: -1;}
.act-left{display: flex; align-items: start; justify-content: center; flex-direction: column;}
.act-left-title{font-size: 32px; font-weight: 600; color: #fff; line-height: 45px;}
.act-left-desc{display: block; margin-top: 46px; font-size: 19px; font-weight: 400; color: #fff; line-height: 26px;}
.pc-text{display: block;}
.mobile-text{display: none;}
.act-left-btn{display: flex; align-items: center; justify-content: center; width: 170px; height: 48px; border-radius: 24px; background: rgba(255, 255, 255, 0.1); color: #fff; border: 1px solid #fff; font-size: 18px; font-weight: 400; color: #fff; margin-top: 78px; cursor: pointer; transition: 0.3s ease;}
.act-left-btn:hover{background: #fff; color: #000;}
.act-right{width: 470px; height: 420px; border-radius: 15px; overflow: hidden;}
.act-right-img{width: 100%; height: 100%; object-fit: cover; object-position: center;}
.act-right-video{width: 100%; height: 100%; object-fit: cover; object-position: center;}

.rw-exp{width: 100%; max-width: 1300px; margin: 0 auto; margin-top: 170px;}
.exp-box{width: 100%; height: 500px; position: relative; display: flex; align-items: center; justify-content: space-between; padding: 0 38px 0 80px; border-radius: 15px; overflow: hidden; background: rgba(255, 255, 255, 0.13);}
.exp-box>img{width: 100%; height: 100%; object-fit: cover; position: absolute; top: 0; left: 0; z-index: -1;}
.exp-left{display: flex; align-items: start; justify-content: center; flex-direction: column;}
.exp-left-title{font-size: 32px; font-weight: 600; color: #fff; line-height: 45px;}
.exp-left-desc{display: block; margin-top: 46px; font-size: 19px; font-weight: 400; color: #fff; line-height: 26px;}
.exp-left-btn{display: flex; align-items: center; justify-content: center; width: 170px; height: 48px; border-radius: 24px; background: rgba(255, 255, 255, 0.1); color: #fff; border: 1px solid #fff; font-size: 18px; font-weight: 400; color: #fff; margin-top: 78px; cursor: pointer; transition: 0.3s ease;}
.exp-left-btn:hover{background: #fff; color: #000;}

.edutech-grid{display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px;}
.edutech-box{width: 230px; height: 205px; display: flex; flex-direction: column; align-items: center; overflow: hidden; border-radius: 18px; position: relative;}
.edutech-box:nth-child(1){background: #FFFBEC;}
.edutech-box:nth-child(2){background: #EEF8F2;}
.edutech-box:nth-child(3){background: #F5F2FF;}
.edutech-box:nth-child(4){background: #FFF6F6;}
.edutech-box>p{margin-top: 36px; font-size: 19px; font-weight: 700; color: #000; text-align: center;}
.edutech-image{position: absolute; bottom: 34px; display: flex; justify-content: center; transition: all 0.3s ease-in-out;}
.edutech-image-icon{position: relative; z-index: 1;}
.edutech-image-bg{display: block; width: 198px; height: 198px; border-radius: 50%; position: absolute; top: 30px;}
.edutech-box:hover>.edutech-image{bottom: 54px;}
.edutech-box:nth-child(1)>.edutech-image>.edutech-image-bg{background: #FBF1D3;}
.edutech-box:nth-child(2)>.edutech-image>.edutech-image-bg{background: #DFF2E6;}
.edutech-box:nth-child(3)>.edutech-image>.edutech-image-bg{background: #ECE6FF;}
.edutech-box:nth-child(4)>.edutech-image>.edutech-image-bg{background: #FCE7E7;}

.rw-school{width: 100%; max-width: 1300px; margin: 0 auto; margin-top: 196px; text-align: center;}
.school-tag{font-size: 16px; font-weight: 600; color: #fff; display: inline-block; background: rgb(52,36,101); padding: 10px 26px; border-radius: 20px; margin-bottom: 20px;border : 1px solid rgb(103,84,148)}
.school-title{font-size: 48px; font-weight: 700; color: #fff; line-height: 60px; margin-bottom: 20px;}
.school-title-highlight{color: #653FD2;}
.school-desc{font-size: 18px; font-weight: 400; color: #CFCFCF; line-height: 27px; margin-bottom: 60px;}

.school-card-box{display: grid; grid-template-columns: repeat(2, 1fr); gap: 36px; margin-bottom: 60px;}
.school-card {
    background: rgba(255, 255, 255, 0.13);
    border: 1px solid #ffffff13;
    border-radius: 20px;
    padding: 60px 40px;
    position: relative;
    overflow: hidden;
}



.school-card-icon {
    width: 100px;
    height: 100px;
    background: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 30px;
    position: relative;
    z-index: 1;
}
.school-card-icon-img{width: 100%; object-fit: contain;}
.school-card-title{font-size: 28px; font-weight: 700; color: #fff; margin-bottom: 20px; position: relative; z-index: 1;}
.school-card-desc{font-size: 16px; font-weight: 400; color: #fff; line-height: 24px; margin-bottom: 30px; position: relative; z-index: 1;}
.school-card-list{width: fit-content;
padding-right: 15px;
margin: 0 auto 30px; text-align: left;}
.school-card-list-item{font-size: 16px; font-weight: 500; color: #fff; margin-bottom: 12px; padding-left: 0; position: relative; line-height: 24px; display: flex; align-items: center; gap: 12px;}
.school-card-list-item-icon{width: 20px; height: 20px; object-fit: contain; flex-shrink: 0;}
.school-card-btn{width: 100%; max-width:300px; margin:0 auto; height: 50px; background: rgb(101,63,208); color: #fff; border: none; border-radius: 8px; font-size: 16px; font-weight: 600; cursor: pointer; transition: all 0.3s ease; position: relative; z-index: 1; display: flex; align-items: center; justify-content: center; gap: 8px;}
.school-card-btn:hover{background: #6600cc;}
.school-card-btn::after{content: '→'; font-size: 18px;}

.rw-count{width: 100%; max-width: 1300px; margin: 0 auto;}
.dash-box{width: 100%; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 36px; margin-top: 48px;}
.dash-line{grid-column: span 1 / span 1; width: 100%; height: 230px; border-radius: 10px; background: rgba(255, 255, 255, 0.13); display: flex; align-items: center; justify-content: center; flex-direction: column;border: 1px solid #ffffff13;}
.dash-line-value{font-size: 45px; font-weight: 700; color: #fff; margin-top: 28px;}
.dash-line-label{display: block; color: #B6B6B6; font-size: 19px; font-weight: 400; margin-top: 14px;}

.rw-review{width: 100%; margin-top: 278px;}
.rw-review-title{font-size: 36px; font-weight: 600; color: #fff; text-align: center;}
.rw-review-desc{font-size: 19px; font-weight: 300; color: #CFCFCF; text-align: center; margin-top: 30px;}

    .review-list-box{margin-top:100px;overflow:hidden;width:100%;}

.review-slide-track {display: flex;gap:16px;width: calc(200px * 10); /* 이미지 개수 × 이미지 너비 */animation: scroll 40s linear infinite; /* 40초 동안 천천히 */}
.review-slide-track img {height: auto;flex-shrink: 0; /* 이미지가 줄어들지 않게 */}
.review-slide-track div {display: flex;flex-direction: column;align-items: center;}
/* 트랙 멈춤 클래스는 기존 그대로 */
.review-slide-track.is-paused { animation-play-state: paused; }

.review-img-box { position: relative; }

/* 이미지 영역 래퍼: 둥근 모서리 + 잘림 */
.review-thumb{position: relative;border-radius: 26px;overflow: hidden;}

/* 오버레이: 이미지 영역만 덮음 */
.review-overlay{position:absolute; inset:0;background:rgba(0,0,0,.55);color:#fff;display:flex;align-items:flex-end;padding:60px 40px;opacity:0; transition:opacity .2s ease;pointer-events:none; z-index:1;}
.review-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:11;overflow:hidden;text-overflow:ellipsis;line-height:1.5;font-size:16px;max-width:100%;}

/* (선택) 최신 스펙 브라우저 보조 */
@supports (line-clamp: 11) {
    .review-text{line-clamp:11;block-overflow:ellipsis;}
}

/* 호버/활성 시에만 보이기 */
.review-img-box:hover .review-overlay,
.review-img-box.is-active .review-overlay{opacity: 1;}
.review-img-box:nth-child(1) .review-thumb { margin-top: 50px; }
.review-img-box:nth-child(2) .review-thumb { margin-top: 130px; }
.review-img-box:nth-child(3) .review-thumb { margin-top: 30px; }
.review-img-box:nth-child(4) .review-thumb { margin-top: 100px; }
.review-img-box:nth-child(5) .review-thumb { margin-top: 20px; }
.review-img-box:nth-child(6) .review-thumb { margin-top: 130px; }
.review-img-box:nth-child(7) .review-thumb { margin-top: 20px; }
.review-img-box:nth-child(8) .review-thumb { margin-top: 130px; }
.review-img-box:nth-child(9) .review-thumb { margin-top: 30px; }
.review-img-box:nth-child(10) .review-thumb { margin-top: 50px; }
.review-img {max-height: 400px;}
.review-txt {font-size:14px; font-weight: 700; color: #B6B6B6; margin-top:22px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;text-align: left; width: 100%;}

@keyframes scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(calc(-200px * 5)); /* 첫 번째 세트 길이만큼 이동 */
    }
}

.rw-bot{width: 100%; max-width: 1300px; padding: 230px 0; margin: 0 auto; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative;}
.rw-bot-bg{width: 100%; height: auto; object-fit: cover; z-index: -1; position: absolute;}
.rw-bot-title{font-size: 45px; font-weight: 600; color: #fff; line-height: 56px; text-align: center;}
.rw-bot-desc{font-size: 19px; font-weight: 300; color: #CFCFCF; margin-top: 34px;}
.rw-btn{margin-top: 80px; display: flex; align-items: center; gap: 12px;}
.rw-btn-item{display: flex; align-items: center; justify-content: center; padding: 0 30px; height: 50px; border-radius: 24px; border: 1px solid #ffffff40; font-size: 23px; font-weight: 400; color: #fff; cursor: pointer; transition: 0.3s ease;}
.left-btn{background: rgba(255, 255, 255, 0.13);}
.left-btn:hover{background: #fff; color: #000;}
.right-btn{background: rgba(101, 63, 208, 0.5);}
.right-btn:hover{background: #643fce; color: #fff;}