/*wv-theme-main-visual*/
#wv-theme-main-visual{padding:0;width:100%; height:100vh;overflow: hidden;}
#wv-theme-main-visual .wv-slide-container {height:100vh;}
#wv-theme-main-visual .wv-slide-container > div{position: absolute;top: 0;left: 0;z-index:2;width: 100%;height: 100%;}
#wv-theme-main-visual .img{position: relative;overflow: hidden;}
#wv-theme-main-visual .img > img{transform: scale(1.05);transition: all 2s;}
#wv-theme-main-visual .img.on > img{transform: scale(1.0);}
#wv-theme-main-visual .wv-slide-container .img:before {content: "";display:block;background: rgba(0,0,0,0.4);position: absolute;top: 0;left: 0;z-index:1;width: 100%;height: 100%;}
#wv-theme-main-visual .wv-slide-container .video:before {content: "";display:block;position: absolute;top: 0;left: 0;z-index:1;width: 100%;height: 100%;}
#wv-theme-main-visual .wv-theme-main-visual-text-container{position:absolute;top:0;left:0;width:100%;height:100%;display: flex;flex-direction: column;align-items: center;place-content: center;color:#fff;}
#wv-theme-main-visual .wv-text01 {font-size: var(--main-title01);transition-delay: .2s;font-family: 'NEXON Lv1 Gothic OTF', sans-serif;font-weight: 700;}
#wv-theme-main-visual .wv-text02 {text-align: center;line-height: 1.75;word-break: keep-all;transition-delay: .4s;font-size:var(--main-text01);}
#wv-theme-main-visual .wv-text03{transition-delay: .6s;font-size:var(--main-text01);}
#wv-theme-main-visual .wv-theme-main-visual-text-container [class*="wv-text"]{color:#fff;text-align:center;transform: translateY(10px);opacity: 0;transition: all 1s;}
#wv-theme-main-visual .wv-theme-main-visual-text-container.on [class*="wv-text"]{transform: translateY(0);opacity: 1;}
#wv-theme-main-visual .wv-slide-btn-container [class*="wv-slide-btn"]{padding:0 20px;display:inline-block;text-align: center;border:2px solid transparent;min-width: 200px;line-height:55px;cursor:pointer;text-transform:uppercase;transition:all .3s;}
#wv-theme-main-visual .wv-slide-btn-container .wv-slide-btn01{background: #fff;border-color: #fff;color: #000;}
#wv-theme-main-visual .wv-slide-btn-container .wv-slide-btn01:hover{background: var(--main-color);border-color: var(--main-color);color: #fff;}
#wv-theme-main-visual .wv-slide-btn-container .wv-slide-btn02{border-color: #fff;color: #fff;background: transparent;}
#wv-theme-main-visual .wv-slide-btn-container .wv-slide-btn02:hover{background: var(--main-color);border-color: var(--main-color);}

#wv-theme-main-visual .slick-dots{position:absolute;bottom:20%;left: 50%;transform: translateX(-50%);font-size: 0;cursor: pointer;transition: all .5s;}
#wv-theme-main-visual .slick-dots > li{margin: 0 4px;display:inline-block;width: 8px;height: 8px;background: rgba(255,255,255,0.5);border-radius: 100%;vertical-align: middle;}
#wv-theme-main-visual .slick-dots > li.slick-active{width:25px;height:8px;background: rgba(255,255,255,1);border-radius: 30px;}
#wv-theme-main-visual .slick-arrow{position:absolute;top:50%;transform: translateY(-50%);z-index:100;width: 49px;height: 49px;border: 2px solid rgba(255,255,255,0.5);color: #fff;font-size: 0;}
#wv-theme-main-visual .slick-arrow:before {content: "";display: block;font-family:xeicon;font-size:18px;position: absolute;top: 45%;left: 50%;transform: translate(-50%, -50%);}
#wv-theme-main-visual .slick-prev{left: 49px;}
#wv-theme-main-visual .slick-prev:before{content:"\e93b"}
#wv-theme-main-visual .slick-next{right: 49px;}
#wv-theme-main-visual .slick-next:before{content:"\e93e"}
#wv-theme-main-visual .wv-theme-main-visual-scroll {bottom: 0;color: rgba(255,255,255,0.8);}
#wv-theme-main-visual .scroll-line {position:relative;margin: 0 auto;overflow: hidden;width: 1px;height: 100px;background: rgba(255,255,255,0.3);}
#wv-theme-main-visual .scroll-line:before {content: '';position: absolute;top: 0;left: 50%;width: 2px;height: 0;background-color: rgba(255,255,255);transform: translateX(-50%);animation: scrollAnimation01 1.2s infinite;}
@keyframes scrollAnimation01 {
    0%{
        height: 0;
    }
    100%{
        height: 105%;
    }
}

#wv-theme-main-visual .scroll-line:after {content: '';position: absolute;top: 0;left: 50%;width: 2px;height: 0;background-color: rgba(255,255,255,0.3);transform: translateX(-50%);animation: scrollAnimation02 1.2s infinite .6s;}
@keyframes scrollAnimation02 {
    0%{
        height: 0;
    }
    100%{
        height: 105%;
    }
}


/*배너 이미지가 없을 경우------------------------------------------------------------------------------------------------------------------ */
#wv-theme-main-visual .wv-slider-container {height: 100%;}
#wv-theme-main-visual .wv-slider {height: 100%;}
#wv-theme-main-visual .wv-no-banner {height: 100%;background: #ddd;  align-items: center;place-content: center;}
#wv-theme-main-visual .wv-no-banner .wv-title{font-size:var(--main-title03);}

@media screen and (max-width:1280px){
    #wv-theme-main-visual{margin-top: 60px;height:calc(100vh - 83px);}
    #wv-theme-main-visual .wv-slide-container {height:calc(100vh - 83px);}
}


@media screen and (max-width:576px){
    #wv-theme-main-visual .wv-text02{padding:0 20px;width: 100%;}
    #wv-theme-main-visual .wv-slide-btn-container [class*="wv-slide-btn"]{padding:12px 0;line-height:initial;min-width: 35vw;}
    #wv-theme-main-visual .slick-dots {position:absolute;left:50%;transform:translateX(-50%);display: flex !important;}
    #wv-theme-main-visual .slick-dots li {margin: 0 5px;}
    #wv-theme-main-visual .slick-dots li button {font-size: 0; background: rgba(255,255,255,0.4); border-radius: 50%; width:8px; height:8px;cursor: pointer;}
    #wv-theme-main-visual .slick-dots li.slick-active button {background: rgba(255,255,255,1); }
	#wv-theme-main-visual .wv-no-banner .wv-title{padding:40px 20px 20px 20px;}
}

@media screen and (max-width:320px){
	.wv-mt-40{margin-top:30px !important;}
}

/* --- 반응형 메인 배너 최종 스타일 --- */

/* 모바일 배너 래퍼 스타일 */
.mobile-banner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: none; /* 기본적으로 모바일 배너는 숨김 */
}

/* 모바일 영상 스타일 */
.mobile-video-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.mobile-video-wrapper iframe {
    width: 100%;
    height: 100%;
    max-width: 56.25vh; /* 100vh 기준 9:16 비율 너비 */
    max-height: 177.77vw; /* 100vw 기준 9:16 비율 높이 */
}


/* 화면 가로 크기가 768px 이하일 때 (모바일) */
@media screen and (max-width: 768px) {
    /* PC 배너 숨기기 */
    .pc-banner {
        display: none !important;
    }
    /* 모바일 배너 보여주기 */
    .mobile-banner {
        display: block !important;
    }
}