/* v3.27 | user original logo + balanced desktop navigation */
/* Keep the logo artwork unmodified; modify display dimensions only. */
.site-header .brand .brand-mark{
  width:47px!important;height:50px!important;flex:0 0 47px!important;
  padding:0!important;background:transparent!important;
  border:0!important;box-shadow:none!important;
}
.site-header .brand .brand-mark img{
  width:100%!important;height:100%!important;object-fit:contain!important;
  display:block;
}
/* Bring the organization's Korean and English lettering down to the visual center of the crest. */
.site-header .brand .sg-brand-type{
  transform:translateY(5px);
  justify-content:center;
  flex-shrink:0;
}
.site-header .brand{gap:10px!important;min-width:0;align-items:center!important}
/* Stretch the full header row: mark left, menu evenly distributed, primary action right. */
@media (min-width:1221px){
  .site-header .header-inner.container{
    display:grid!important;
    grid-template-columns:max-content minmax(0,1fr) max-content;
    align-items:center;
    gap:clamp(16px,1.65vw,31px)!important;
    width:calc(100% - 52px)!important;
    max-width:1720px!important;
    min-height:96px;
    padding:0 0 23px;
    position:relative;
  }
  .site-header .brand{margin:0!important;justify-self:start;}
  .site-header .desktop-nav{
    display:flex!important;min-width:0!important;
    width:100%;margin:0!important;
    align-items:center;justify-content:space-between!important;
    gap:clamp(7px,.8vw,21px)!important;
    transform:translateY(-1px);
  }
  .site-header .desktop-nav a{
    flex:0 0 auto;text-align:center;
    font-size:clamp(12px,.79vw,14px)!important;
    white-space:nowrap;
    padding-inline:2px;
  }
  .site-header .header-actions{
    justify-self:end;justify-content:flex-end;
    min-width:max-content;gap:10px!important;
    margin:0!important;
  }
  .site-header .sg-auth-shift{
    position:absolute!important;right:152px!important;
    bottom:3px!important;z-index:3;
    display:flex;align-items:center;gap:11px;
    transform:none;
  }
  .site-header .nav-cta{white-space:nowrap}
}
/* Keep comfortable spacing on narrower desktop windows without text overlap. */
@media(min-width:1221px) and (max-width:1450px){
  .site-header .header-inner.container{width:calc(100% - 36px)!important;gap:clamp(20px,1.45vw,25px)!important}
  .site-header .brand .brand-mark{width:39px!important;height:42px!important;flex-basis:39px!important}
  .site-header .brand .sg-brand-type{transform:translateY(4px)}
  .site-header .desktop-nav{gap:clamp(5px,.57vw,10px)!important}
  .site-header .desktop-nav a{font-size:clamp(11px,.84vw,12.5px)!important;padding-inline:1px}
  .site-header .sg-auth-shift{right:140px!important}
}
/* The mobile hamburger keeps the same logo alignment but doesn't reserve unused desktop space. */
@media(max-width:1220px){
  .site-header .header-inner{display:flex!important;align-items:center;justify-content:space-between}
  .site-header .brand .brand-mark{width:42px!important;height:45px!important;flex-basis:42px!important}
  .site-header .brand .sg-brand-type{transform:translateY(4px)}
}
@media(max-width:600px){
  .site-header .brand .brand-mark{width:34px!important;height:37px!important;flex-basis:34px!important}
  .site-header .brand .sg-brand-type{transform:translateY(3px)}
  .site-header .brand{gap:6px!important}
}
/* Keep footer brand proportion consistent with the header; partner logo is unchanged. */
.sg-footer-brandicon{width:43px!important;height:48px!important;flex:0 0 43px!important}
.sg-footer-brand-type{transform:translateY(3px)}
@media(max-width:600px){.sg-footer-brandicon{width:36px!important;height:39px!important;flex-basis:36px!important}}
