@charset "utf-8";
@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.css');

:root{
--blue: #002789;
--teal: #5CB1BD;
--grad: linear-gradient(135deg, var(--teal) 0%, var(--blue) 100%);
--bg_black: #050505;
--white: #fff;
--txt_gray: rgba(255,255,255,0.4);
--glass_bg: rgba(255,255,255,0.03);
--glass_line: rgba(255,255,255,0.12);
--nav_bg: rgba(15,15,15,0.85);
--radius_lg: 1.5rem;
--radius_md: 0.75rem;
--radius_sm: 0.5rem;
--motion: all 0.5s cubic-bezier(0.16,1,0.3,1);
--motion_fast: all 0.2s cubic-bezier(0.16,1,0.3,1);
}

/* set */
*{box-sizing:border-box;}
html, body{margin:0;padding:0;background-color:var(--bg_black);font-family:'Pretendard',-apple-system,BlinkMacSystemFont,system-ui,sans-serif;font-size:16px;color:var(--white);-webkit-font-smoothing:antialiased;}
h1, h2, h3, p, ul{margin:0;padding:0;}
ul{list-style:none;}
a{color:inherit;text-decoration:none;}
button{padding:0;border:none;background:none;font-family:inherit;color:inherit;cursor:pointer;}
img{vertical-align:top;}
.wrap{overflow-x:clip;position:relative;}
.sec_in{width:100%;max-width:80rem;padding:0 1.5rem;margin:0 auto;}
.pc_only{display:none;}
@media (min-width:768px){
.pc_only{display:block;}
}

.m_wrap{padding: 0 12px;position: relative;}

/* background */
.mesh_bg{position:fixed;top:0;left:0;z-index:-3;width:100%;height:100%;background-image:radial-gradient(at 0% 0%, rgba(0,39,137,0.18) 0px, transparent 55%),radial-gradient(at 100% 100%, rgba(78,146,157,0.15) 0px, transparent 55%);opacity:0.9;pointer-events:none;}
.mesh_blob{position:fixed;z-index:-2;width:80vw;height:80vh;border-radius:50%;filter:blur(120px);opacity:0.035;animation:planos_flow 25s infinite ease-in-out;pointer-events:none;}
.blob1{top:-10%;left:-10%;background:var(--blue);}
.blob2{bottom:-10%;right:-10%;background:var(--teal);animation-delay:-5s;}
.glow_ring{position:fixed;z-index:9999;width:800px;height:800px;border-radius:50%;background:radial-gradient(circle at center, rgba(92,177,189,0.15) 0%, transparent 70%);transform:translate(-50%,-50%);filter:blur(40px);opacity:0;transition:opacity 0.5s ease;pointer-events:none;}
@keyframes planos_flow{
0%, 100%{transform:translate(0,0) scale(1);}
50%{transform:translate(3%,3%) scale(1.05);}
}

/* header */
#header{overflow:visible;position:fixed;top:0;left:0;z-index:1000;width:100%;height:96px;border-bottom:1px solid var(--glass_line);background:var(--nav_bg);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);transition:all 0.7s cubic-bezier(0.16,1,0.3,1);}
.head_in{display:flex;align-items:center;justify-content:space-between;max-width:80rem;height:96px;padding:0 1.5rem;margin:0 auto;}
.logo a{display:block;}
.logo img{height:40px;}
.gnb{display:none;}
.menu_btn{display:flex;position:relative;z-index:1001;flex-direction:column;align-items:flex-end;gap:6px;padding:8px;}
.menu_btn span{display:block;width:32px;height:2px;background:var(--white);transition:all 0.3s;}
.menu_btn span:nth-child(2){width:24px;}
#header.on .menu_btn span:nth-child(1){transform:translateY(8px) rotate(45deg);}
#header.on .menu_btn span:nth-child(2){opacity:0;}
#header.on .menu_btn span:nth-child(3){transform:translateY(-8px) rotate(-45deg);}
@media screen and (min-width:768px){
.head_in{padding:0 3rem;}
.gnb{display:flex;height:100%;margin-left:auto;margin-right:3rem;}
.gnb>ul{display:flex;gap:2.5rem;height:100%;}
.gnb>ul>li{display:flex;position:relative;align-items:center;height:96px;}
.gnb>ul>li>a{font-size:1.1rem;font-weight:500;color:rgba(255,255,255,0.75);transition:var(--motion_fast);}
#header:not(.on) .gnb>ul>li:hover>a{color:var(--white);}
.gnb_sub{display:flex;visibility:hidden;position:absolute;top:96px;left:50%;z-index:1010;flex-direction:column;gap:0.3rem;min-width:240px;padding:1.5rem;border:1px solid var(--glass_line);border-top:none;border-radius:0 0 var(--radius_lg) var(--radius_lg);background:rgba(15,15,15,0.95);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);box-shadow:0 20px 40px rgba(0,0,0,0.5);opacity:0;transform:translateX(-50%) translateY(10px);transition:var(--motion);}
#header:not(.on) .gnb>ul>li:hover .gnb_sub{visibility:visible;opacity:1;transform:translateX(-50%) translateY(0);}
.sub_link{padding:0.5rem 0.75rem;border-radius:var(--radius_sm);font-size:1rem;color:rgba(255,255,255,0.5);white-space:nowrap;transition:var(--motion_fast);}
.sub_link:hover,.sub_link.on{background:rgba(255,255,255,0.05);color:var(--white);}
.sub_tit{padding:0.5rem 0.75rem;border-bottom:1px solid rgba(255,255,255,0.05);margin-bottom:0.25rem;font-size:1.2rem;font-weight:700;color:var(--teal);transition:var(--motion_fast);}
.sub_tit:hover,.sub_tit.on{color:var(--white);}
.sub_dep3{display:block;position:relative;padding:0.5rem 0.75rem 0.5rem 2.8rem;border-radius:var(--radius_sm);font-size:1rem;line-height:1.4;color:rgba(255,255,255,0.4);transition:var(--motion_fast);}
.sub_dep3::before{content:'';position:absolute;left:1.4rem;top:calc(50% - 0.6rem);width:2px;height:0.6rem;background:rgba(255,255,255,0.15);}
.sub_dep3::after{content:'';position:absolute;left:1.4rem;top:50%;width:0.6rem;height:2px;background:rgba(255,255,255,0.15);transform:translateY(-50%);}
.sub_dep3:hover,.sub_dep3.on{background:rgba(255,255,255,0.05);color:var(--white);}
}

/* sitemap */
#header.on{height:auto;padding-bottom:40px;background:rgba(15,15,15,0.98);box-shadow:0 40px 80px rgba(0,0,0,0.6);overflow:hidden;}
#header.on .gnb_sub{display:none;}
.sitemap{visibility:hidden;max-width:80rem;padding:50px 1.5rem 3rem;margin:0 auto;opacity:0;transition:var(--motion);}
#header.on .sitemap{visibility:visible;opacity:1;}
.site_grid{display:grid;grid-template-columns:repeat(2,1fr);gap:3rem;text-align:left;}
.site_tit{padding-left:12px;border-left:2px solid var(--teal);margin-bottom:1.5rem;font-size:1rem;font-weight:800;letter-spacing:0.25em;color:var(--teal);}
.site_link{display:block;margin-bottom:1.25rem;font-size:1.5rem;font-weight:700;color:var(--white);transform-origin:left;transition:var(--motion);}
.site_link:hover{color:var(--teal);transform:translateX(10px) scale(1.05);}
.site_sub{display:block;padding-left:1rem;margin-bottom:0.85rem;font-size:1.05rem;letter-spacing:0.05em;color:rgba(255,255,255,0.45);transform-origin:left;transition:var(--motion);}
.site_sub:hover{color:var(--white);transform:translateX(8px) scale(1.05);}
.menu_dim{display:none;position:fixed;top:0;left:0;z-index:999;width:100%;height:100%;}
.menu_dim.on{display:block;}
@media screen and (min-width:768px){
#header.on{height:600px;padding-bottom:0;}
.sitemap{padding:50px 3rem 3rem;}
.site_grid{grid-template-columns:repeat(4,1fr);}
}

/* main common */
main{display:block;}
section{display:flex;position:relative;flex-direction:column;align-items:center;justify-content:center;width:100%;padding:5rem 0;}
@media (min-width:768px){
section{padding:7rem 0;}
}

/* footer */
#footer{width:100%;padding:5rem 0;border-top:1px solid var(--glass_line);background:rgba(255,255,255,0.01);}
.foot_in{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:3rem;max-width:80rem;padding:0 1.5rem;margin:0 auto;}
.foot_info{display:flex;flex-direction:column;gap:1.5rem;max-width:42rem;}
.foot_logo img{height:48px;}
.foot_addr{font-size:0.875rem;font-weight:300;line-height:1.6;color:#9CA3AF;}
.foot_addr p{margin-bottom:0.5rem;}
.foot_addr .addr_tit{font-weight:500;color:rgba(255,255,255,0.8);}
.foot_contact{display:flex;flex-wrap:wrap;align-items:center;gap:0.75rem 1.5rem;padding-top:0.5rem;font-size:0.75rem;font-weight:300;color:#9CA3AF;}
.foot_contact li{display:flex;align-items:center;gap:0.5rem;}
.foot_contact svg{flex-shrink:0;width:1rem;height:1rem;color:var(--teal);}
.foot_contact a{transition:color 0.2s;}
.foot_contact a:hover{color:var(--white);}
.copyright{font-size:0.75rem;font-weight:700;text-transform:uppercase;color:#6B7280;}
@media screen and (min-width:768px){
.foot_in{padding:0 3rem;}
.foot_contact{font-size:0.875rem;}
.copyright{font-size:0.875rem;}
}
@media screen and (min-width:1024px){
.foot_in{flex-direction:row;}
.copyright{align-self:flex-end;}
}

.grad_txt{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}
.btn_cta{display:inline-flex;align-items:center;justify-content:center;padding:1.15rem 3.25rem;border-radius:9999px;background:var(--grad);font-size:1rem;font-weight:700;color:var(--white);box-shadow:0 10px 30px -10px rgba(0,39,137,0.5);transition:var(--motion);cursor:pointer;}
.btn_cta:hover{transform:scale(1.05) translateY(-2px);filter:brightness(1.15);box-shadow:0 15px 35px -10px rgba(0,39,137,0.7);}
.btn_cta:active{transform:scale(0.98) translateY(0);}
.glass_box{border:1px solid var(--glass_line);border-radius:var(--radius_lg);background:var(--glass_bg);transition:var(--motion);}
.glass_box:hover{border-color:var(--teal);background:rgba(255,255,255,0.05);transform:translateY(-8px);box-shadow:0 20px 40px rgba(0,0,0,0.4);}

.reveal{opacity:0;transform:translateY(40px);transition:var(--motion);transition-duration:1.4s;}
.reveal.on{opacity:1;transform:translateY(0);}

.sec_head{margin-bottom:4rem;text-align:center;}
.sec_logo{width:auto;height:3.5rem;margin:0 auto 1.5rem;}
.sec_tit{font-size:1.875rem;font-weight:700;letter-spacing:-0.025em;color:var(--white);}
@media (min-width:768px){
.sec_logo{height:4rem;}
.sec_tit{font-size:2.25rem;}
}

.modal{display:none;position:fixed;top:0;left:0;z-index:5000;align-items:center;justify-content:center;width:100%;height:100%;background:rgba(5,5,5,0.95);backdrop-filter:blur(30px);opacity:0;transition:0.5s;cursor:pointer;}
.modal.on{display:flex;opacity:1;}
.modal_box{position:relative;width:90%;max-width:1100px;padding:4rem;border:1px solid rgba(255,255,255,0.1);border-radius:3rem;background:rgba(255,255,255,0.03);cursor:default;}
.modal_close{display:flex;position:absolute;top:2rem;right:2rem;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--white);color:#000;cursor:pointer;}
.modal_body{display:grid;grid-template-columns:1fr;align-items:center;gap:3rem;}
.modal_vis{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;border:1px solid rgba(255,255,255,0.1);border-radius:var(--radius_lg);background:rgba(255,255,255,0.05);}
.modal_vis svg{width:8rem;height:8rem;color:var(--teal);opacity:0.3;}
.modal_info{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;height:100%;text-align:left;}
.modal_label{display:block;margin-bottom:1rem;font-size:0.875rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--teal);}
.modal_tit{margin-bottom:1.5rem;font-size:1.875rem;font-weight:700;color:var(--white);}
.modal_txt{margin-bottom:2rem;font-size:1.125rem;font-weight:300;line-height:1.6;color:#9CA3AF;}
.modal_list{margin-bottom:2.5rem;}
.modal_list li{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;font-size:1rem;color:#E5E7EB;}
.modal_list li::before{content:'';flex-shrink:0;width:0.375rem;height:0.375rem;border-radius:50%;background:var(--teal);}
.modal_link{display:inline-flex;align-items:center;gap:0.5rem;padding:0.875rem 2rem;border-radius:9999px;background:var(--grad);font-size:0.875rem;font-weight:700;color:var(--white);box-shadow:0 10px 25px -5px rgba(92,177,189,0.3);transition:var(--motion);}
.modal_link:hover{transform:scale(1.05);}
.modal_link svg{width:1rem;height:1rem;}
@media (min-width:768px){
.modal_body{grid-template-columns:1fr 1fr;}
.modal_tit{font-size:3rem;}
}

/** tablet **/
@media screen and (min-width: 768px) {
.m_wrap{padding: 0 20px;}
}

/** pc-wide **/
@media screen and (min-width: 1600px) {
.m_wrap{max-width: 1600px;margin: 0 auto;padding: 0;}
}
