/* Four always-visible language choices; all rules are scoped to this addition. */
#yj-ko-language {
  position: absolute;
  top: 6px;
  right: max(2.5%, calc((100% - 1600px) / 2));
  z-index: 105;
  display: flex;
  gap: 5px;
  color: #fff;
  font-family: "Pretendard Variable", Pretendard, sans-serif;
  text-align: center;
}
#yj-ko-language *, #yj-ko-language *::before, #yj-ko-language *::after { box-sizing: border-box; }
#yj-ko-language > a, #yj-ko-language > .yj-lang-current {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  height: 29px;
  padding: 0 8px;
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 4px;
  background: rgba(255,255,255,.05);
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  transition: background .15s, border-color .15s;
}
#yj-ko-language > .yj-lang-current { background: #e4f3fa; border-color: #e4f3fa; color: #205972; font-weight: 700; }
#yj-ko-language > a:hover { background: rgba(255,255,255,.19); border-color: #fff; }
#yj-ko-language > a:focus-visible { outline: 2px solid #bce4f7; outline-offset: 3px; }
#yj-ko-language .yj-lang-flag { font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif; font-size: 17px; line-height: 1; }
#header.yj-has-language .h_top .h_top_wrap > .tel { transform: translateY(14px); }
@media (min-width: 1001px) and (max-width: 1400px) {
  #yj-ko-language { top: 2px; gap: 4px; }
  #yj-ko-language > a, #yj-ko-language > .yj-lang-current { flex-direction: column; width: 52px; height: 38px; padding: 3px 0; gap: 3px; font-size: 10px; }
  #yj-ko-language .yj-lang-flag { font-size: 16px; }
  #header.yj-has-language .h_top .h_top_wrap > .tel { transform: translateY(20px); }
}
@media (max-width: 1000px) {
  /* A dedicated 44px language row leaves the logo, hamburger and both badges in place. */
  #header.yj-has-language .header { height: 124px; }
  #header.yj-has-language .header .h_top { height: 80px; }
  #yj-ko-language {
    top: 80px;
    right: auto;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    height: 44px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    padding: 0 2.5%;
    border-top: 1px solid rgba(255,255,255,.28);
    border-bottom: 1px solid #d7e8ef;
    background: #fff;
  }
  #yj-ko-language > a, #yj-ko-language > .yj-lang-current {
    height: 43px;
    gap: 5px;
    padding: 0 2px;
    border: 0;
    border-bottom: 2px solid transparent;
    border-radius: 0;
    background: transparent;
    color: #536b77;
    font-size: 12px;
  }
  #yj-ko-language > .yj-lang-current { background: #f0f8fc; color: #277b9f; border-bottom-color: #61a6c6; }
  #yj-ko-language > a:hover { background: #f0f8fc; color: #277b9f; }
  #yj-ko-language .yj-lang-flag { font-size: 19px; }
  #header.yj-has-language .header .h_bottom #nav { padding-top: 164px; }
  #header.yj-has-language ~ main #main_slide { margin-top: 124px; }
}
@media (max-width: 360px) {
  #yj-ko-language > a, #yj-ko-language > .yj-lang-current { gap: 4px; font-size: 10px; }
  #yj-ko-language .yj-lang-flag { font-size: 17px; }
}
@media (prefers-reduced-motion: reduce) {
  #yj-ko-language > a { transition: none; }
}
