@charset "UTF-8";
/* The homepage and all Tiles layouts share these header dimensions and type rules.
   Keep the existing homepage scale without inheriting page-specific body/rem resets. */
.sf-site-header {
  --sf-header-unit: 16px;
  position: relative;
  width: 100%;
  min-height: 0;
  margin: 0;
  padding: 0;
  background: #fff;
  border-bottom: 1px solid #dcdcdc;
  font-family: "Noto Sans KR", sans-serif;
  font-size: var(--sf-header-unit);
  font-weight: 400;
  line-height: normal;
  letter-spacing: normal;
  color: #111;
}
@media (min-width: 768px) and (max-width: 1023px) {
  .sf-site-header { --sf-header-unit: 12px; }
}
@media (min-width: 1024px) and (max-width: 1705px) {
  .sf-site-header { --sf-header-unit: 14.5px; }
}
.sf-site-header .header_inner {
  width: min(calc(74.6875 * var(--sf-header-unit)), calc(100% - 2.5 * var(--sf-header-unit)));
  margin: 0 auto;
  padding: 0;
}
.sf-site-header .header_inner,
.sf-site-header .logo,
.sf-site-header .header_login {
  font: inherit;
  letter-spacing: normal;
}
.sf-site-header .logo {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: auto;
  margin: 0;
  padding: calc(6.25 * var(--sf-header-unit)) 0;
}
.sf-site-header .logo > span { width: calc(13.75 * var(--sf-header-unit)); }
.sf-site-header .logo > a { display: block; flex-shrink: 0; }
.sf-site-header .logo img { display: block; width: 292px; height: 51px; }
.sf-site-header a { color: #111; font: inherit; letter-spacing: normal; text-decoration: none; }
.sf-site-header .header_login {
  display: flex;
  align-items: center;
  justify-content: space-between;
  column-gap: calc(.9375 * var(--sf-header-unit));
  margin: 0 calc(2.3125 * var(--sf-header-unit)) 0 0;
  padding: calc(.5 * var(--sf-header-unit)) calc(1.375 * var(--sf-header-unit));
}
.sf-site-header .header_login a {
  margin: 0;
  padding: 0 calc(.9375 * var(--sf-header-unit)) 0 0;
  font-size: calc(.75 * var(--sf-header-unit));
  font-weight: 400;
  line-height: 1;
  white-space: nowrap;
}
.sf-site-header .header_login a:last-child { padding-right: 0; }
.sf-site-header .header_menu {
  display: flex;
  height: auto;
  margin: 0;
  padding: 0;
  overflow: visible;
}
.sf-site-header .header_menu > li { flex: 1; margin: 0; padding: 0; }
.sf-site-header .header_menu .menu_btn {
  margin: 0;
  padding: 0 0 calc(1.25 * var(--sf-header-unit));
  font-size: calc(1.25 * var(--sf-header-unit));
  font-weight: 700;
  line-height: normal;
  letter-spacing: normal;
  text-align: center;
}
.sf-site-header .header_menu .menu_btn > a { font: inherit; }
.sf-site-header .sf-coming { font-weight: inherit; letter-spacing: inherit; }
.sf-site-header .sub_menu a {
  font-size: calc(1.0625 * var(--sf-header-unit));
  font-weight: 400;
  line-height: normal;
  letter-spacing: -.51px;
}
.sf-site-header .sub_menu a b {
  font-size: calc(1.125 * var(--sf-header-unit));
  font-weight: 700;
  line-height: normal;
}
.sf-site-header .header_menu > li:first-child > .sub_menu,
.sf-sticky-header > li:first-child > .sub_menu { left: 0; right: auto; transform: none; }
.sf-site-header .header_menu > li:last-child > .sub_menu,
.sf-sticky-header > li:last-child > .sub_menu { left: auto; right: 0; transform: none; }
@media (max-width: 767px) {
  .sf-site-header { --sf-header-unit: 15px; }
  .sf-site-header .logo { padding: 70.3125px 0 25.3125px; justify-content: center; }
  .sf-site-header .logo > span,
  .sf-site-header .header_login,
  .sf-site-header .header_menu { display: none; }
  .sf-site-header .logo img { width: 140.625px; height: auto; }
}
/* Hide by the bar's own height, not viewport height: short windows otherwise show
   a blue strip at the very top even before the user scrolls. */
.scroll_header {
  top: 0;
  margin: 0;
  transform: translateY(calc(-100% - 20px));
  visibility: hidden;
  transition: transform .3s ease, visibility .3s;
}
.scroll_header.active { transform: translateY(0); visibility: visible; }
.sf-sticky-header { padding: 0 20px; box-sizing: border-box; column-gap: clamp(20px, 4vw, 83px); }
.sf-sticky-header > li { padding: 20px 0; }
.sf-sticky-header .menu_btn { margin: 0; padding: 0; line-height: 1.5; }
.sf-sticky-header .menu_btn > a { color: #fff; font-size: 20px; font-weight: 700; white-space: nowrap; }
.sf-sticky-header > li > .sub_menu { top: 100%; }
@media (min-width: 768px) and (max-width: 1023px) {
  .sf-sticky-header .menu_btn > a { font-size: 12px; }
  .sf-sticky-header { column-gap: 24px; }
}
@media (min-width: 1024px) and (max-width: 1440px) {
  .sf-sticky-header .menu_btn > a { font-size: 15.4px; }
}
@media (prefers-reduced-motion: reduce) { .scroll_header { transition: none; } }
/* Mobile resource links need their own rows and must retain the entitlement icon.
   The legacy list_sub bullet otherwise overrides the shared ch-lock ::before. */
.m_side_menu .ch-nav-m a { display: block; white-space: normal; overflow-wrap: anywhere; }
.m_side_menu .ch-nav-m a[href] { min-height: 40px; padding: 9px 0; box-sizing: border-box; font-size: 14px; line-height: 1.5; }
.m_side_menu .ch-nav-m .list_title { margin-top: 10px; padding-bottom: 8px; }
.m_side_menu .ch-nav-m .ch-lock { opacity: .65; }
.m_side_menu .ch-nav-m .ch-lock::before { content: '\1F512\00A0'; display: inline; width: auto; height: auto; background: none; font-size: 11px; }
