body.fixed{overflow:hidden;}

/* VISUAL */

.visual-slide{position:absolute;top:0;left:0;width:100%;height:100%;}
.visual-slide .swiper-slide{width:100%;height:100%; overflow : hidden;}
.visual-bg{width:100%;height:100%;overflow:hidden;position : absolute;left : 0;top : 0;}
.visual-bg > img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.2);transition:transform 0s 1.2s;}
.visual-bg > video{display : block; width:100%;height:100%;object-fit:cover;transform:scale(1.2);transition:transform 0s 1.2s;}
.active .visual-bg > img{transform:scale(1);transition:transform 5s;}
/* .visual-inner{display:flex;justify-content:center;align-items:flex-start;position:relative;z-index:1;width:100%;max-width:1740px;height:100%;margin:0 auto;padding:230px 0 57px;pointer-events:none;}
.visual-tit-box{display:flex;align-items:flex-end;gap:18px;color:#fff;transition:color 1.2s;}
.t2 .visual-tit-box{color:#000;}
.t2 .visual-line{background:rgba(0,0,0,0.4);}
.t2 .visual-sub-tit{color:#000;}
.visual-tit{font-family:Athena;font-size:39px;font-weight:400;letter-spacing:0.2em;line-height:49px;}
.visual-tit .char{display:inline-block;opacity:0;transform:translateY(-30px);}
.visual-sub-tit{font-family:PT;font-size:16px;font-weight:400;line-height:28px;padding-bottom:6px;opacity:0;}
.visual-line{width:200px;height:1px;margin-bottom:21px;margin-left:-40px;background:rgba(255,255,255,0.5);opacity:0;transform:scaleX(0);transform-origin:left;transition:background 1.2s;} */
.open-rotate-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;z-index:1;right:80px;bottom:57px;width:143px;height:143px;opacity:0;transform:translateX(100px);transition:transform 1.2s,opacity 1.2s;}
.on .open-rotate-btn{opacity:1;transform:translateX(0);transition-delay:1s;}
.open-rotate-btn::after{position:absolute;content:'';width:100%;height:100%;background:url(../images/main/open-rotate-text.png) no-repeat center / contain;animation:rotate-text 8s infinite linear;}
@keyframes rotate-text{100%{transform:rotate(360deg);}}
.open-rotate-btn > p{font-family:PT;font-size:19px;font-weight:700;letter-spacing:-0.04em;color:#fff;transition:color 1.2s;}

.visual-inner{display : flex; align-items : end; height : 100%; position : relative; width : 100%; max-width : 1740px; margin : 0 auto; color : #fff;z-index : 1;padding-bottom: 118px;}
.visual-tit-box{display : flex; align-items : center; gap : 18px; font-family : PT;font-weight : 700; padding-left: 128px;}
.visual-tit{font-size : 53px;}
.visual-tit .char{opacity : 0; transform : translateY(-50px)}
.visual-line{width : 400px; background: rgba(255,255,255,0.6);height : 1px; clip-path : inset(0 100% 0 0); transition : 0s 1s;}
.on .swiper-slide-active .visual-line{clip-path : inset(0); transition : 1s 1s;}
.visual-desc{font-size : 20px; transform : translateX(100px); opacity : 0; transition: 0s 1s;}
.on .swiper-slide-active .visual-desc{transform : translateX(0); opacity : 1; transition : 2s 1.5s;}

.visual-subway{position : absolute; transition : 0s 1s; transform : translateY(100%)}
.visual-subway-01{right : 200px;  bottom : 0;}
.visual-subway-02{left : 0px; bottom : 0;}
.on .swiper-slide-active .visual-subway-01{transform : translateY(0); transition :1.4s .5s}
.on .swiper-slide-active .visual-subway-02{transform : translateY(0); transition :1.4s .6s;}


/*PREMIUM */
.main-section-premium{position:relative;}
.premium-inner{display:flex;width:100%;height:100%;}
.premium-panel{position:relative;flex:1;height:100%;overflow:hidden;}
.panel-01{background:#1c1c1c;}
.panel-02{background:#f4f4ef;}
.panel-03{background:#1a3a6b;}
.panel-img{position:absolute;z-index:1;}
.panel-img > img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:none;}
.panel-01 .panel-img{bottom:80px;left:43px;right:43px;clip-path:inset(100% 0 0 0);transition:clip-path 0s;}
.panel-02 .panel-img{bottom:0;right:0;clip-path:inset(0 100% 0 0);transition:clip-path 0s;}
.panel-03 .panel-img{bottom:139px;left:67px;right:44px;clip-path:inset(0 0 0 100%);transition:clip-path 0s;}
.fp-active .panel-01 .panel-img{clip-path:inset(0 0 0 0);transition:clip-path 2.2s cubic-bezier(0.77,0,0.175,1);}
.fp-active .panel-02 .panel-img{clip-path:inset(0 0 0 0);transition:clip-path 2.2s cubic-bezier(0.77,0,0.175,1) 0.2s;}
.fp-active .panel-03 .panel-img{clip-path:inset(0 0 0 0);transition:clip-path 2.2s cubic-bezier(0.77,0,0.175,1) 0.4s;}
.panel-content{position:absolute;inset:0;z-index:2;padding:54px 36px 50px;}
.panel-01 .panel-top{position:absolute;bottom:653px;left:132px;}
.panel-slogan{position:relative;font-family:Athena;font-size:22px;font-weight:400;letter-spacing:0.2em;line-height:30px;color:rgba(255,255,255,0.65);margin-left:105px;margin-bottom:69px;opacity:0;transform:scale(0.8);transform-origin:left top;}
.panel-slogan > span{position:absolute;left:-140px;top:-48px;font-family:AV;font-size:35px;font-weight:400;letter-spacing:0;color:#fff;white-space:nowrap;transform:rotate(-10deg) translateY(20px);}
.panel-01 .panel-tit{font-family:Noto Sans KR;font-size:20px;font-weight:700;letter-spacing:-0.04em;color:#fff;opacity:0;transform:scale(0.8);transform-origin:left top;}
.panel-01 .panel-vertical{position:absolute;left:64px;bottom:235px;writing-mode:vertical-lr;font-family:Brown;font-size:15px;letter-spacing:0.18em;text-transform:uppercase;color:#909090;opacity:0;transform:scale(0.8);transform-origin:center bottom;}
.panel-01 .panel-bottom{position:absolute;right:124px;bottom:60px;padding-left:16px;opacity:0;transform:scale(0.85);transform-origin:right bottom;}
.panel-01 .panel-bottom::before{position:absolute;content:'';left:0;top:0;width:1px;height:0;background:rgba(255,255,255,0.4);transition:height 0s;}
.fp-active .panel-01 .panel-bottom::before{height:100%;transition:height 0.8s ease 1.4s;}
.panel-sub{font-family:Noto Sans KR;font-size:12px;font-weight:400;letter-spacing:-0.03em;color:rgba(255,255,255,0.55);margin-bottom:5px;}
.panel-01 .panel-name{font-family:PT;font-size:16px;font-weight:400;letter-spacing:-0.04em;line-height:28px;color:#fff;}
.panel-02 .panel-top{position:absolute;bottom:658px;left:103px;}
.panel-02 .panel-tit{font-family:Noto Sans KR;font-size:20px;font-weight:700;letter-spacing:-0.04em;color:#111;opacity:0;transform:scale(0.8);transform-origin:left top;}
.premium-rotate-btn{display:flex;align-items:center;justify-content:center;position:absolute;z-index:3;left:65px;bottom:449px;width:68px;height:68px;border-radius:50%;background-color:#024099;opacity:0;transform:scale(0.2);transform-origin:center center;}
.premium-rotate-btn::after{position:absolute;content:'';width:121px;height:121px;background:url(../images/main/premium-rotate-text.png) no-repeat center / contain;animation:rotate-text 8s infinite linear;}
.panel-02 .panel-vertical{position:absolute;left:64px;bottom:256px;writing-mode:vertical-lr;font-family:Brown;font-size:15px;letter-spacing:0.2em;text-transform:uppercase;color:#000;opacity:0;transform:scale(0.8);transform-origin:center bottom;}
.panel-02 .panel-bottom{position:absolute;left:118px;bottom:60px;padding-left:16px;opacity:0;transform:scale(0.85);transform-origin:right bottom;}
.panel-02 .panel-bottom::before{position:absolute;content:'';left:0;top:0;width:1px;height:0;background:rgba(17,17,17,0.25);transition:height 0s;}
.fp-active .panel-02 .panel-bottom::before{height:100%;transition:height 0.8s ease 1.6s;}
.panel-02 .panel-name{font-family:PT;font-size:16px;font-weight:400;letter-spacing:-0.04em;line-height:28px;color:#000;}
.panel-03 .panel-top{position:absolute;bottom:672px;left:363px;text-align:right;}
.panel-03 .panel-tit{font-family:Noto Sans KR;font-size:20px;font-weight:700;letter-spacing:-0.04em;color:#fff;opacity:0;transform:scale(0.8);transform-origin:right top;}
.panel-03 .panel-vertical{position:absolute;right:54px;bottom:503px;writing-mode:vertical-lr;font-family:Brown;font-size:15px;letter-spacing:0.2em;text-transform:uppercase;color:#909090;opacity:0;transform:scale(0.8);transform-origin:center bottom;}
.panel-03 .panel-bottom{position:absolute;left:145px;bottom:60px;padding-left:16px;opacity:0;transform:scale(0.85);transform-origin:left bottom;}
.panel-03 .panel-bottom::before{position:absolute;content:'';left:0;top:0;width:1px;height:0;background:rgba(255,255,255,0.4);transition:height 0s;}
.fp-active .panel-03 .panel-bottom::before{height:100%;transition:height 0.8s ease 1.8s;}
.panel-03 .panel-name{font-family:PT;font-size:16px;font-weight:400;letter-spacing:-0.04em;line-height:28px;color:#fff;}

/* ENVI */
.envi-slide{width:100%;height:100%;}
.envi-inner{display:flex;position:absolute;left:0;top:0;width:100%;height:100%;z-index:1;transition:transform 1.2s;}
.t2 .envi-inner{transform:translateX(-100%);}
.envi-inner > div{position:relative;overflow:hidden;width:100%;height:100%;flex-shrink:0;}
.envi-01{background:#F7F7F7;}
.envi-01 .envi-bg{position:relative;z-index:1;width:100%;height:100%;transition:1.2s;}
.t2 .envi-01 .envi-bg{width:60%;}
.envi-01 .envi-bg > img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.1);transition:transform 5s;}
.active .envi-01 .envi-bg > img{transform:scale(1);}
.envi-01 .envi-con{display:flex;align-items:center;justify-content:center;position:absolute;left:0;top:0;width:40%;height:100%;}
.envi-con-inner{}
.envi-01 .envi-tit{position:relative;font-family:Athena;font-size:65px;font-weight:400;letter-spacing:0.2em;line-height:86px;color:#000;margin-bottom:12px;}
.envi-01 .envi-tit > span{position:absolute;left:-75px;top:-80px;font-family:AV;font-size:35px;font-weight:400;letter-spacing:0;color:#242424;white-space:nowrap;transform:rotate(-10deg) translateY(20px);}
.envi-01 .envi-tit > em{font-style:normal;}
.envi-01 .envi-tit .char{opacity:0;}
.envi-diamonds{position:absolute;right:0;top:0;width:60%;height:100%;pointer-events:none;}
.envi-diamond{position:absolute;overflow:hidden;transform:rotate(45deg);}
.envi-diamond > img{width:100%;height:100%;object-fit:cover;transform:rotate(-45deg) scale(1.5);}
.envi-diamond-main{width:29vw;height:29vw;right:13%;top:20%;box-shadow:0 30px 30px rgba(0,0,0,0.16);opacity:0;transform:rotate(45deg) translate(0,-100%);}
.envi-diamond-main > video{display : block; width:100%;height:100%;object-fit:cover;transform:rotate(-45deg) scale(1.5);}
.envi-diamond-01{width:8vw;height:8vw;top:0;right:53%;opacity:0;transform:rotate(45deg) translate(0,-100%);}
.envi-diamond-02{width:8vw;height:8vw;bottom:19%;right:-4%;opacity:0;transform:rotate(45deg) translate(0,-100%);}
.envi-diamond-03{width:8vw;height:8vw;bottom:0;right:51%;opacity:0;transform:rotate(45deg) translate(0,-100%);}
.envi-02 .envi-bg{display:flex;align-items:center;justify-content:center;position:absolute;left:0;top:0;width:100%;height:100%;}
.envi-map{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.2);transition:transform 2s;}
.active .t2 .envi-map{transform:scale(1);}
.envi-02-inner{display:flex;flex-direction:column;justify-content:center;position:relative;z-index:1;width:100%;max-width:1650px;height:100%;margin:0 auto;padding-bottom:138px;}
.envi-02 .envi-small-tit{position:relative;font-family:PT;font-size:16px;font-weight:400;line-height:28px;letter-spacing:-0.04em;color:#000;margin-bottom:24px;}
.envi-02 .envi-tit{position:relative;font-family:PT;font-size:37px;font-weight:700;line-height:51px;letter-spacing:-0.04em;color:#024099;margin-bottom:84px;}
.envi-02 .envi-tit .char{opacity:0;}
.envi-rotate-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;width:91px;height:91px;border-radius:50%;background:#024099;opacity:0;transition:opacity 0.7s;}
.envi-rotate-btn::after{position:absolute;content:'';width:143px;height:143px;background:url(../images/main/envi-rotate-text.png) no-repeat center / contain;animation:rotate-text 8s infinite linear;}
.envi-rotate-btn > p{font-family:PT;font-size:18px;font-weight:700;line-height:1;letter-spacing:-0.04em;color:#fff;}

/* DESIGN */
.main-section-design{position:relative;}
.design-bg{position:absolute;inset:0;overflow:hidden;}
.design-bg > img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.2);transition:transform 0s;}
.design-bg > video{width:100%;height:100%;object-fit:cover;object-position:center;}
.fp-active .design-bg > img{transform:scale(1);transition:transform 4s ease;}
.design-inner{display:flex;align-items:center;justify-content:center;position:absolute;inset:0;z-index:1;}
.design-rotate-wrap{display:flex;align-items:center;justify-content:center;position:relative;width:400px;height:400px;opacity:0;transform:scale(0.6);transition:opacity 0s,transform 0s;}
.active .design-rotate-wrap{opacity:1;transform:scale(1);transition:opacity 1.2s 0.3s,transform 1.2s 0.3s cubic-bezier(0.34,1.2,0.64,1);}
.design-rotate-text{position:absolute;inset:0;background:url(../images/main/design-rotate-text.png) no-repeat center / contain;animation:rotate-text 12s infinite linear;}
.design-center{display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1;text-align:center;}
.design-desc{font-family:PT;font-size:16px;font-weight:700;line-height:28px;color:#fff;opacity:0;transform:translateY(15px);transition:opacity 0s,transform 0s;}
.active .design-desc{opacity:1;transform:translateY(0);transition:opacity 1s 1.2s,transform 1s 1.2s ease;}

/* LOCATION */
.main-section-location{position:relative;}
.location-swiper{width:100%;height:100%;}
.location-swiper .swiper-slide{position:relative;width:100%;height:100%;}
.location-swiper .swiper-slide::after{position:absolute;content:'';inset:0;z-index:0;background:rgba(0,0,0,0.4);}
.location-bg{position:absolute;inset:0;overflow:hidden;}
.location-bg > img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.1);transition:transform 0s;}
.location-bg > video{width:100%;height:100%;object-fit:cover;object-position:center;}
.swiper-slide-active .location-bg > img{transform:scale(1);transition:transform 4s ease;}
.location-inner{display:flex;flex-direction:column;justify-content:center;position:absolute;inset:0;z-index:1;width:100%;max-width:1520px;height:100%;margin:0 auto;left:50%;padding:431px 0 120px;transform:translateX(-50%);}
.location-top{position:relative;margin-bottom:210px;}
.location-eng{position:absolute;left:-40px;top:-30px;font-family:AV;font-size:35px;font-weight:400;color:#fff;opacity:0;transform:rotate(-10deg) translateY(20px);transition:opacity 0.8s,transform 0.8s;}
.swiper-slide-active .location-eng{opacity:1;transform:rotate(-10deg) translateY(0);transition-delay:0.3s;}
.location-tit{font-family:Athena;font-size:65px;font-weight:400;letter-spacing:0.2em;line-height:86px;color:#fff;opacity:0;transform:translateY(30px);transition:opacity 0.8s,transform 0.8s;}
.swiper-slide-active .location-tit{opacity:1;transform:translateY(0);transition-delay:0.5s;}
.location-bottom{opacity:0;transform:translateY(20px);transition:opacity 0.8s 0.7s,transform 0.8s 0.7s;}
.swiper-slide-active .location-bottom{opacity:1;transform:translateY(0);}
.location-label{font-family:PT;font-size:20px;font-weight:700;line-height:1.4;color:#fff;margin-bottom:21px;}
.location-desc{font-family:PT;font-size:16px;font-weight:400;line-height:1.625;color:#fff;}
.location-nav{display:flex;align-items:stretch;position:absolute;bottom:294px;left:0;z-index:10;width:100%;padding:0 200px;border-bottom:1px solid rgba(255,255,255,0.25);}
.location-nav__item{position:relative;flex:1;padding:19px 0;font-family:Brown;font-size:16px;font-weight:400;letter-spacing:0.2em;color:#EAEAEA;cursor:pointer;transition:color 0.3s;}
.location-nav__item::after{position:absolute;content:'';bottom:-1px;left:0;width:0;height:2px;background:#fff;transition:width 0s;}
.location-nav__item.active{color:#fff;}
.location-nav__item.active::after{width:100%;transition:width 4000ms linear;}
.location-nav__item:hover{color:rgba(255,255,255,0.8);}

/* CONTACT*/

.contact-bg{position:absolute;width : 100%;height : 100%; left : 0;top : 0; overflow : hidden;}
.contact-bg > img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.1);transition:0s 1s;}
.fp-active .contact-bg > img{transform : scale(1); transition : 3s}

.contact-inner{display : flex; flex-direction : column; align-items : center; position : relative;font-family : Noto Sans KR}

.contact-tit{font-size : 65px; font-family : athena; font-weight : 400; color : #2B2B2B; letter-spacing : 0.2em;}
.contact-tit .char{opacity : 0;}
.contact-desc{margin-bottom: 46px; letter-spacing : -0.06em; transform : translateY(100px); opacity : 0; transition : 1s .4s}
.fp-active .contact-desc{transform : translateY(0); opacity : 1;}

.contact-container{display : flex;gap : 40px; letter-spacing : -0.04em;}
.contact-box{transition : 0s 1s; opacity : 0;}
.contact-container .contact-box:first-child{transform : translateX(-100px);}
.contact-container .contact-box:last-child{transform : translateX(100px);}

.fp-active .contact-container .contact-box{transform : translateX(0); opacity : 1; transition : 1s 1s;}

.contact-map{margin-bottom: 18px;}
.contact-address-box{display : flex; flex-direction : column; margin-bottom: 28px;}
.contact-address-box b{color : #024099; font-size : 22px;font-weight : 500; margin-bottom: 4px;}

.contact-btn-box{display : flex;gap : 9px;}