@font-face{font-family:'SUIT Variable';font-weight:100 900;font-display:swap;src:url('/assets/fonts/SUIT-Variable.woff2') format('woff2-variations'),url('/assets/fonts/SUIT-Variable.woff2') format('woff2');}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto;}}
body{margin:0;background:#FFFFFF;}
[hidden]{display:none !important;}
a{color:#002A71;text-decoration:none;}
a:hover{color:#000000;}
.on-dark a, a.on-dark{color:#FFFFFF;}
.on-dark a:hover, a.on-dark:hover{color:rgba(255,255,255,0.72);}
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible{outline:2px solid #FFFFFF;outline-offset:3px;box-shadow:0 0 0 5px #002A71;}
input,select,textarea,button{font-family:inherit;}
.wake{stroke-dasharray:3200;stroke-dashoffset:3200;animation:draw 2.6s cubic-bezier(.6,.05,.25,1) .3s forwards;}
@keyframes draw{to{stroke-dashoffset:0;}}
@media (prefers-reduced-motion: reduce){.wake{animation:none;stroke-dashoffset:0;}}
.sector{transition:background-color .2s ease,color .2s ease;}

/* dropdown menu */
.dd{position:relative;padding:10px 0;}
.dd-menu{position:absolute;top:100%;left:50%;transform:translateX(-50%);min-width:170px;padding:8px 0;background:#FFFFFF;border-radius:6px;box-shadow:0 12px 32px rgba(0,0,0,0.18);display:none;z-index:20;}
.dd:hover .dd-menu,.dd:focus-within .dd-menu{display:block;}
.on-dark .dd-menu a{display:block;padding:11px 20px;color:#002A71;white-space:nowrap;font-size:15px;}
.on-dark .dd-menu a:hover{background:#EEEEEF;color:#002A71;}

/* mobile menu (760px and below) */
.m-nav{position:fixed;inset:0;z-index:100;background:#002A71;color:#FFFFFF;overflow-y:auto;padding:28px 48px 40px;box-sizing:border-box;display:flex;flex-direction:column;}
.m-nav-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;}
.m-nav .menu-btn{display:flex;width:44px;height:44px;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(255,255,255,0.6);border-radius:6px;color:#FFFFFF;cursor:pointer;}
.m-nav-list{list-style:none;margin:40px 0 0;padding:0;border-top:1px solid rgba(255,255,255,0.28);}
.m-nav-list li{padding:20px 0;border-bottom:1px solid rgba(255,255,255,0.28);}
.m-nav-top{font-family:var(--head);font-size:22px;font-weight:600;letter-spacing:-0.02em;}
.m-nav-sub{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:10px;}
.m-nav-sub a{font-size:15px;font-weight:500;color:rgba(255,255,255,0.78) !important;}
.m-nav-sub a:hover{color:#FFFFFF !important;}
.m-nav-lang{margin:32px 0 0;font-size:13px;font-weight:400;}
body.nav-open{overflow:hidden;}

.map-live .root_daum_roughmap{width:100% !important;border:0 !important;}

/* consultation form */
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;}
.consent-detail{margin:10px 0 0 30px;font-size:13px;color:rgba(0,0,0,0.7);}
.consent-detail summary{cursor:pointer;color:#002A71;font-weight:600;width:max-content;text-decoration:underline;text-underline-offset:3px;}
.consent-detail table{width:100%;margin-top:12px;border-collapse:collapse;}
.consent-detail th,.consent-detail td{border-top:1px solid rgba(0,42,113,0.2);border-bottom:1px solid rgba(0,42,113,0.2);padding:8px 10px;text-align:left;vertical-align:top;line-height:1.6;}
.consent-detail th{background:#EEEEEF;color:#002A71;font-weight:600;width:26%;white-space:nowrap;}
.consent-detail p{margin:10px 0 0;}
.form-status{margin:0;padding:14px 16px;border-radius:6px;background:#EEEEEF;color:#002A71;font-size:15px;font-weight:600;line-height:1.6;}
.form-status.is-error{background:#FFFFFF;border:1px solid #002A71;}
.consult-form button[disabled]{opacity:0.6;cursor:wait;}
/* after a successful submit the fields give way to the confirmation */
.consult-form.is-sent > :not(.form-status){display:none !important;}
.consult-form.is-sent .form-status{display:flex;align-items:center;min-height:240px;padding:40px 32px;background:#EEEEEF;font-family:var(--head);font-size:clamp(20px,2vw,24px);font-weight:700;line-height:1.6;letter-spacing:-0.02em;}

/* privacy policy */
.pv h2{margin:64px 0 0;font-size:22px;font-weight:600;color:#002A71;letter-spacing:-0.02em;}
.pv p,.pv li{font-size:16px;line-height:1.85;color:rgba(0,0,0,0.78);}
.pv p{margin:14px 0 0;}
.pv ul,.pv ol{margin:14px 0 0;padding-left:1.3em;}
.pv table{width:100%;border-collapse:collapse;margin-top:18px;font-size:15px;}
.pv th,.pv td{border-top:1px solid rgba(0,42,113,0.3);border-bottom:1px solid rgba(0,42,113,0.3);padding:14px 16px;text-align:left;vertical-align:top;line-height:1.7;}
.pv th{background:#EEEEEF;color:#002A71;font-weight:600;width:28%;}

/* disclosure list */
.ds-head{display:flex;}
.ds-title:hover{text-decoration:underline;color:#002A71 !important;}
.ds-body > :first-child{margin-top:0;}
.ds-body p,.ds-body ul,.ds-body ol{margin:0 0 1em;}
.ds-body ul,.ds-body ol{padding-left:1.3em;}
.ds-body h2,.ds-body h3{margin:1.6em 0 0.6em;color:#002A71;font-weight:600;letter-spacing:-0.02em;line-height:1.5;}
.ds-body h2{font-size:22px;}
.ds-body h3{font-size:19px;}
.ds-body a{text-decoration:underline;text-underline-offset:3px;}

@media (max-width: 760px){
  .sv-head{display:none !important;}
  .gnb{display:none !important;}
  .menu-btn{display:flex !important;}
  .logo-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important;}
  .logo-grid li{height:92px !important;padding:0 14px !important;}
  .ob-wave{display:none !important;}
  .ds-head{display:none !important;}
  .ds-meta{flex-basis:100% !important;}
  .consult-form{padding:28px 22px !important;}
}
@media (min-width: 761px){.m-nav{display:none !important;}}
