header{position:fixed;top:50px;left:50%;transform:translateX(-50%);background-color:#00000080;border-radius:50px;width:90%;z-index:999;padding:20px 0;color:#fff;backdrop-filter:blur(10px);transition:.3s ease-in-out}
header.header-hidden{top:-100px;transition:.3s ease-in-out}
header .inner{display:flex;align-items:center;justify-content:space-between;margin:0 auto;padding:0 30px}
header .logo img{height:40px}
header .gnb{display:flex;align-items:center;gap:40px}
header .gnb>li{position:relative}
header .gnb>li>a{color:#fff;text-decoration:none;font-weight:600;padding:10px 0;transition:color .3s ease}
header .gnb>li:hover>a{color:#E93ED8}
header .gnb .star_separator{display:flex;align-items:center;justify-content:center;width:20px;height:20px;margin:0 10px}
header .gnb .star_separator img{width:16px;height:16px;opacity:.6;transition:all .3s ease;animation:starTwinkle 2s ease-in-out infinite}
@keyframes starTwinkle {
    0%,100%{opacity:.6;transform:scale(1)}
    50%{opacity:1;transform:scale(1.1)}
}
header .gnb .depth{position:absolute;top:100%;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,#E93ED8,#B91D73);border-radius:15px;padding:20px 0;min-width:180px;visibility:hidden;transform:translateX(-50%) translateY(-10px);transition:all .3s ease;box-shadow:0 10px 30px #e93ed84d}
header .gnb>li:hover .depth{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
header .gnb .depth a{display:block;color:#fff;text-decoration:none;padding:12px 25px;transition:all .3s ease;position:relative}
header .gnb .depth a::before{content:'';position:absolute;left:15px;top:50%;transform:translateY(-50%);width:4px;height:4px;background:#fff;border-radius:50%;opacity:0;transition:opacity .3s ease}
header .gnb .depth a:hover::before{opacity:1}
header .sel_lang{position:relative}
header .lang_toggle{background:#ffffff1a;border:1px solid #fff3;border-radius:25px;padding:8px 15px;color:#fff;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s ease}
header .lang_toggle:hover{background:#fff3;border-color:#E93ED8}
header .lang_toggle .arrow{font-size:10px;transition:transform .3s ease}
header .sel_lang.active .arrow{transform:rotate(180deg)}
header .lang_list{position:absolute;top:100%;right:0;background:linear-gradient(135deg,#E93ED8,#B91D73);border-radius:15px;padding:10px 0;min-width:120px;list-style:none;margin:0;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .3s ease;box-shadow:0 10px 30px #e93ed84d;z-index:1000}
header .sel_lang.active .lang_list{opacity:1;visibility:visible;transform:translateY(0)}
header .lang_list li{margin:0}
header .lang_list a{display:block;color:#fff;text-decoration:none;padding:10px 20px;transition:all .3s ease}
header .lang_list a:hover{background:#ffffff1a}
header .header_util{display:flex;align-items:center;gap:15px}
header .mobile_menu_toggle{display:none;flex-direction:column;justify-content:space-around;width:30px;height:30px;background:transparent;border:none;cursor:pointer;padding:0;position:relative;transition:all .4s cubic-bezier(0.175,0.885,0.32,1.275)}
header .mobile_menu_toggle:hover{transform:scale(1.1)}
header .mobile_menu_toggle span{width:100%;height:2px;background:#fff;border-radius:2px;transition:all .4s cubic-bezier(0.175,0.885,0.32,1.275);transform-origin:center;position:relative;box-shadow:0 0 10px #ffffff4d}
header .mobile_menu_toggle:hover span{box-shadow:0 0 15px #ff6b9d99;background:linear-gradient(45deg,#ff6b9d,#fff,#ff6b9d)}
header .mobile_menu_toggle.active{transform:scale(1.2) rotate(180deg)}
header .mobile_menu_toggle.active span:nth-child(1){transform:rotate(45deg) translate(6px,6px);background:linear-gradient(45deg,#ff6b9d,#fff);box-shadow:0 0 20px #ff6b9dcc}
header .mobile_menu_toggle.active span:nth-child(2){opacity:0;transform:scale(0)}
header .mobile_menu_toggle.active span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px);background:linear-gradient(45deg,#fff,#ff6b9d);box-shadow:0 0 20px #ff6b9dcc}
header .mobile_menu_toggle::before{content:'';position:absolute;top:50%;left:50%;width:0;height:0;background:radial-gradient(circle,#ff6b9d4d 0%,transparent 70%);border-radius:50%;transform:translate(-50%,-50%);transition:all .6s ease;z-index:-1}
header .mobile_menu_toggle:hover::before{width:50px;height:50px;animation:menuPulse 1.5s ease-in-out infinite}
header .mobile_menu_toggle.active::before{width:60px;height:60px;animation:menuPulseActive 1s ease-in-out infinite}
@keyframes menuPulse {
    0%{transform:translate(-50%,-50%) scale(0.8);opacity:.6}
    50%{transform:translate(-50%,-50%) scale(1.2);opacity:.3}
    100%{transform:translate(-50%,-50%) scale(1.5);opacity:0}
}
@keyframes menuPulseActive {
    0%{transform:translate(-50%,-50%) scale(0.9);opacity:.8}
    50%{transform:translate(-50%,-50%) scale(1.3);opacity:.4}
    100%{transform:translate(-50%,-50%) scale(1.6);opacity:0}
}
.mobile_menu_overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000e6;backdrop-filter:blur(10px);z-index:9999;opacity:0;visibility:hidden;transition:all .3s ease}
.mobile_menu_overlay.active{opacity:1;visibility:visible}
.mobile_menu_content{position:absolute;top:0;right:0;width:80%;max-width:400px;height:100%;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);padding:0;transform:translateX(100%);transition:transform .3s ease;overflow-y:auto}
.mobile_menu_overlay.active .mobile_menu_content{transform:translateX(0)}
.mobile_menu_header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid #ffffff1a}
.mobile_menu_header .logo img{height:35px}
.mobile_menu_close{background:none;border:none;color:#fff;font-size:30px;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .3s ease}
.mobile_menu_close:hover{background:#ffffff1a}
.mobile_gnb{padding:20px 0}
.mobile_menu_list{list-style:none;margin:0;padding:0}
.mobile_menu_item{border-bottom:1px solid #ffffff0d}
.mobile_menu_header{display:flex;align-items:center;justify-content:space-between;padding:20px 25px;cursor:pointer;transition:all .3s ease}
.mobile_menu_header:hover{background:#e93ed81a}
.mobile_menu_link{color:#fff;text-decoration:none;font-size:18px;font-weight:600;transition:all .3s ease;flex:1}
.mobile_menu_header:hover .mobile_menu_link{color:#E93ED8}
.mobile_sub_toggle{color:#fff;font-size:20px;cursor:pointer;padding:5px;transition:all .3s ease;border-radius:50%;width:30px;height:30px;font-weight:100;display:flex;align-items:center;justify-content:center}
.mobile_sub_toggle:hover{background:#ffffff1a}
.mobile_sub_toggle.active{transform:rotate(45deg);background:#e93ed833}
.mobile_sub_menu{list-style:none;margin:0;padding:0;max-height:0;overflow:hidden;transition:max-height .3s ease;background:#0003}
.mobile_sub_menu.active{max-height:200px}
.mobile_sub_menu li{margin:0}
.mobile_sub_menu a{display:block;padding:15px 25px 15px 50px;color:#fffc;text-decoration:none;font-size:16px;transition:all .3s ease;border-left:3px solid transparent}
.mobile_sub_menu a:hover{background:#e93ed81a;color:#E93ED8;border-left-color:#E93ED8}
.mobile_lang{padding:30px 20px 0;border-top:1px solid #ffffff1a}
.mobile_lang_title{color:#fff;font-size:16px;font-weight:600;margin-bottom:15px}
.mobile_lang_buttons{display:flex;gap:10px;flex-wrap:wrap}
.mobile_lang_btn{background:#ffffff1a;border:1px solid #fff3;border-radius:20px;padding:6px 10px;color:#fff;cursor:pointer;transition:all .3s ease;font-size:14px}
.mobile_lang_btn:hover{background:#fff3;border-color:#E93ED8}
.mobile_lang_btn.active{background:linear-gradient(135deg,#E93ED8,#B91D73);border-color:#E93ED8}
.quick_menu{position:fixed;top:20%;right:5%;z-index:999}
.quick_menu .dday{position:relative;background:url(../images/common/dday.png) center / auto no-repeat;width:277px;height:193px;transform:translateY(59px)}
.quick_menu .dday>div{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);line-height:1.4;color:#fff}
.quick_menu .dday>div p{margin-bottom:-8px;font-size:16px}
.quick_menu .dday h1{animation:ddayPulse 2s ease-in-out infinite;transition:all .3s ease;font-size:2rem}
.quick_menu .dday h1:hover{transform:scale(1.05);filter:drop-shadow(0 0 10px #ffe31080)}
@keyframes ddayPulse {
    0%,100%{transform:scale(1);filter:brightness(1)}
    50%{transform:scale(1.02);filter:brightness(1.1)}
}
.quick_menu .quick_star{position:relative;height:208px}
.quick_menu .quick_star .chat{position:absolute;right:0;display:flex;align-items:center;gap:8px}
.quick_menu .quick_star .chat-text{color:#553838;opacity:1;transform:translateY(0);white-space:nowrap;position:absolute;top:16px;left:20px;font-size:16px;line-height:1.4;letter-spacing:-.08em;transform:rotate(3deg)!important;font-weight:800}
.quick_menu .quick_star .star_2{position:absolute;left:0;bottom:0;animation:starFloat 3s ease-in-out infinite}
@keyframes starFloat {
    0%,100%{transform:translateY(0px)}
    50%{transform:translateY(-15px)}
}
footer{position:relative;background:linear-gradient(135deg,#0a0a0a 0%,#1a1a2e 50%,#16213e 100%);border-radius:100px 100px 0 0;padding:100px 0 0;margin-top:-100px;color:#fff;z-index:99;overflow:hidden;margin-bottom:0!important;padding-bottom:0!important;transform:translateY(0)!important}
footer .top{justify-content:space-between}
footer .lbox h1{margin-bottom:50px}
footer dl{display:flex;flex-wrap:wrap;gap:0 40px}
footer dl:not(:last-child){margin-bottom:20px}
footer .sns{gap:0 40px;margin-bottom:50px}
footer .sns li{position:relative;transition:all .4s cubic-bezier(0.175,0.885,0.32,1.275)}
footer .sns li a{display:flex;position:relative;transition:all .4s cubic-bezier(0.175,0.885,0.32,1.275);filter:drop-shadow(0 0 10px #ffffff4d);width:50px;height:50px;border-radius:50px;border:1px solid #ffffff4d;justify-content:center;align-items:center}
footer .sns li a img{transition:all .4s cubic-bezier(0.175,0.885,0.32,1.275);filter:brightness(1) contrast(1)}
footer .sns li:hover{transform:translateY(-10px) scale(1.2)}
footer .sns li:hover a{filter:drop-shadow(0 0 20px #fffc) drop-shadow(0 0 40px #fff6)}
footer .sns li:hover a img{transform:scale(1.1);filter:brightness(1.3) contrast(1.2) hue-rotate(20deg)}
footer .sns li:nth-child(1):hover a img{filter:brightness(1.3) contrast(1.2) hue-rotate(0deg) saturate(1.5)}
footer .sns li:nth-child(2):hover a img{filter:brightness(1.3) contrast(1.2) hue-rotate(200deg) saturate(1.5)}
footer .sns li:nth-child(3):hover a img{filter:brightness(1.3) contrast(1.2) hue-rotate(300deg) saturate(1.5)}
footer .sns li::before{content:'';position:absolute;top:50%;left:50%;width:0;height:0;background:radial-gradient(circle,#ffffff4d 0%,transparent 70%);border-radius:50%;transform:translate(-50%,-50%);transition:all .6s ease;z-index:-1}
footer .sns li:hover::before{width:80px;height:80px;animation:snsPulse 1.5s ease-in-out infinite}
@keyframes snsPulse {
    0%{transform:translate(-50%,-50%) scale(0.8);opacity:.8}
    50%{transform:translate(-50%,-50%) scale(1.2);opacity:.4}
    100%{transform:translate(-50%,-50%) scale(1.5);opacity:0}
}
footer .rbox{margin-top:80px}
footer .copyright{margin-top:50px;border-top:1px solid #ffffff1a;padding:50px 0;text-align:center}
@media (max-width: 1400px) {
    header{width:95%}
    header .gnb{display:flex;align-items:center;gap:20px}
}
@media (max-width: 1024px) {
    header{top:10px}
    header .gnb{display:none}
    header .mobile_menu_toggle{display:flex}
    header .sel_lang{display:none}
    header .inner{padding:0 20px}
    header{width:95%;padding:15px 0}
    header{width:95%;padding:8px 0}
    .quick_menu{transform:scale(0.6)!important;top:auto;bottom:-40px;right:-30px}
    footer .top{flex-direction:column;text-align:center}
    footer .rbox{margin-top:30px;padding-top:30px;border-top:1px solid #ffffff1a}
    footer .sns{margin-bottom:30px}
    footer .lbox h1{font-size:1.3rem}
}