@charset "utf-8";

#mainVisual{position:relative;margin:0;padding-top:100px;width:100%;}
#mainVisual .tit{margin-top: calc((100vh - 375px) / 2); margin-bottom: calc((100vh - 175px) / 2);margin-left:auto;width:calc(100% - (50% / 4))}
#mainVisual .tit h1{margin-top:35px;line-height:1.1;font-size:130px;font-weight:700;word-break:keep-all;color:#84ff00;}
#mainVisual .tit p span{color:#84ff00}
#mainVisual h2{position:relative;margin:230px auto 0;padding:60px 0 0 70px;width:calc(100% / 3);font-size:24px;font-weight:500}
#mainVisual h2:after{content:"";position:absolute;top:0px;left:0px;width:15px;height:15px;border-radius:50%;background-color:#84ff00}
#mainVisual .gsap_wrap{padding-bottom:50px}
#mainVisual .gsap_wrap .img_cont{position:relative;width:100%;height:100vh;}
#mainVisual .gsap_wrap img{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:calc(100%);height:100%;object-fit:cover; filter: brightness(0.5);}
#mainVisual .gsap_wrap h3{position:absolute;bottom:50%;left:50%;transform:translate(-50% , 50%);width:100%;line-height:1.5;text-align:center}
#mainVisual .gsap_wrap h3 span{position:relative;display:inline;white-space:pre-line;font-size:78px;font-weight:600}
.video-background { position: absolute; top: 0; left: 0; width: 100%; height: 100vh; z-index: -1; min-height: 500px;}
.video-background video { width: 100%; height: 100%; object-fit: cover;}

.ticket-button {display: flex ; gap: 5px; position: fixed; right: 30px; bottom: 60px; background-color: #FB33DB; color: #fff; padding: 15px 25px; border-radius: 50px; font-size: 16px; font-weight: bold; text-decoration: none; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2); z-index: 1000; transition: all 0.2s ease-in-out; }
.ticket-button:hover { background-color: #e725c8; transform: translateY(-3px); box-shadow: 0 6px 16px rgba(0, 0, 0, 0.25); }
.ticket-button img{display: inline-block; width: 22px;}

/* 반응형 [s] */
@media (max-width:1980px){
#mainVisual .tit h1{font-size:130px}
#mainVisual h2{font-size:19px}
#mainVisual .gsap_wrap h3 span{font-size:56px}
}
@media (max-width:1380px){
#mainVisual .tit{width:calc(100% - (25% / 4));margin-bottom: calc((100vh - 95px) / 2);}
#mainVisual .tit h1{font-size:85px}
#mainVisual h2{padding:50px 0 0 60px;width:40%;font-size:17px}
#mainVisual h2:after{width:12px;height:12px}
#mainVisual .gsap_wrap h3 span{font-size:45px}
}
@media (max-width:1024px){
#mainVisual{margin:auto;padding-top:20px;}
#mainVisual .tit{width:100%;text-align:center}
#mainVisual .tit h1{margin-top:30px;font-size:55px}
#mainVisual h2{padding:40px 0 0 0;margin-top:130px;width:70%;font-size:16px;text-align:center}
#mainVisual h2:after{left:50%;transform:translateX(-50%);width:75%;height:2px;border-radius:0px}
#mainVisual .gsap_wrap h3 span{font-size:35px}
}
@media (max-width:768px){
#mainVisual .tit h1{margin-top:25px;font-size:40px}
#mainVisual h2{margin-top:80px;width:75%}
#mainVisual .gsap_wrap h3 span{font-size:26px}
.ticket-button{right: 10px; bottom: 30px;}
}
@media (max-width:480px){
#mainVisual .tit h1{margin-top:20px;font-size:30px}
#mainVisual h2{margin-top:70px;width:80%;font-size:15px;white-space:pre-line !important}
#mainVisual .gsap_wrap h3 span{font-size:23px}
#mainVisual .tit{margin-bottom: calc((100vh - 55px) / 2);}
}
@media (max-width:390px){
#mainVisual .tit h1{margin-top:16px;font-size:25px}
#mainVisual h2{margin-top:80px;font-size:14px;width:85%; margin-bottom: 70px;}
#mainVisual .gsap_wrap h3 span{font-size:20px;white-space:normal}
#mainVisual .tit{margin-bottom: calc((100vh - 35px) / 2);}
}
/* 반응형 [e] */