.site-footer{
  margin-top:48px;
  border-top:2px solid var(--navy,#132d3d);
  background:#fffdf6;
  color:var(--muted,#59656c);
  font-family:var(--sans,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans KR",sans-serif);
}
.site-footer-inner{
  width:min(calc(100% - 40px),1120px);
  margin:0 auto;
  padding:26px 0 calc(32px + env(safe-area-inset-bottom));
}
.site-footer-top{
  display:grid;
  grid-template-columns:minmax(180px,240px) minmax(0,1fr);
  align-items:start;
  gap:20px 32px;
}
.site-footer-brand-row{
  display:flex;
  align-items:flex-end;
  justify-content:flex-start;
  gap:12px;
  min-width:0;
}
.site-footer-brand{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  line-height:0;
  text-decoration:none;
  border-radius:8px;
}
.site-footer-brand img{
  display:block;
  width:min(220px,100%);
  height:auto;
}
.site-footer-links{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:2px 8px;
}
.site-footer-links a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:0 9px;
  border-radius:8px;
  color:var(--navy,#132d3d);
  font-size:13px;
  font-weight:750;
  line-height:1.25;
  text-decoration:none;
}
.site-footer-links a:hover{
  background:#f2ede0;
  color:var(--navy,#132d3d);
}
.site-footer-brand:focus-visible,
.site-footer-links a:focus-visible{
  outline:3px solid #0072b2;
  outline-offset:3px;
}
.site-footer-note{
  margin:14px 0 0;
  max-width:72ch;
  color:var(--muted,#59656c);
  font-size:12px;
  line-height:1.6;
  text-wrap:pretty;
}
html[lang="ko"] .site-footer-links a,
html[lang="ko"] .site-footer-note{
  word-break:keep-all;
  overflow-wrap:break-word;
}
.site-footer--menu{
  margin-top:0;
  border-top:1.5px solid #eee8d8;
}
.mx-menu .site-footer--menu .site-footer-inner{
  width:100%;
  padding:12px 14px 14px;
}
.mx-menu .site-footer--menu .site-footer-top{
  display:block;
}
.mx-menu .site-footer--menu .site-footer-brand-row{
  justify-content:space-between;
  margin-bottom:6px;
}
.mx-menu .site-footer--menu .site-footer-brand{
  min-height:36px;
}
.mx-menu .site-footer--menu .site-footer-brand img{
  width:118px;
}
.mx-menu .site-footer--menu .site-footer-links{
  display:grid;
  /* Two equal columns forced the long "General parking rules" label onto a
     second line while its row neighbours stayed single-line, so the list read
     as ragged. Size the short column to its content and give the remainder to
     the long labels instead of splitting the panel down the middle. */
  grid-template-columns:auto minmax(0,1fr);
  gap:0 4px;
}
.mx-menu .site-footer--menu .site-footer-links a{
  min-width:0;
  padding:0 5px;
  font-size:12px;
  justify-content:flex-start;
}
.mx-menu .site-footer--menu .site-footer-note{
  margin-top:8px;
  font-size:12px;
  line-height:1.5;
}
@media(max-width:700px){
  .site-footer-inner{width:min(calc(100% - 30px),1120px)}
  .site-footer-top{display:block}
  .site-footer-brand-row{margin-bottom:8px}
  .site-footer-brand img{width:min(190px,58vw)}
  .site-footer-links{
    display:grid;
    grid-template-columns:1fr 1fr;
    justify-content:stretch;
    gap:0 6px;
  }
  .site-footer-links a{padding:0 6px;font-size:12.5px}
}
