/* One readable footer shared by public, sign-in and member screens. */
.dg-site-footer {
  clear: both;
  margin-top: var(--dg-space-9);
  padding: var(--dg-space-8) var(--dg-content-padding);
  border-top: 1px solid var(--dg-border);
  background: var(--dg-surface);
  color: var(--dg-text-muted);
  font: var(--dg-font-weight-regular) var(--dg-font-body-sm)/var(--dg-line-height-base) var(--dg-font-family);
  overflow-wrap: anywhere;
}
.dg-site-footer-inner { max-width: var(--dg-content-max); margin-inline: auto; }
.dg-site-footer-heading { display: flex; align-items: center; flex-wrap: wrap; gap: var(--dg-space-3) var(--dg-space-6); }
.dg-site-footer-heading p,.dg-site-footer-copyright { margin: 0; }
.dg-site-footer-brand { display: inline-flex; align-items: baseline; gap: var(--dg-space-2); min-height: var(--dg-control-sm); color: var(--dg-text); font-size: var(--dg-font-heading-md); font-weight: var(--dg-font-weight-bold); text-decoration: none; }
.dg-site-footer-brand span { color: var(--dg-text-muted); font-size: var(--dg-font-body-sm); }
.dg-site-footer-links { display: flex; flex-wrap: wrap; gap: var(--dg-space-1) var(--dg-space-5); margin-block: var(--dg-space-4) var(--dg-space-5); }
.dg-site-footer-links a { display: inline-flex; align-items: center; gap: var(--dg-space-2); min-height: var(--dg-control-sm); padding-block: var(--dg-space-2); color: var(--dg-text); text-underline-offset: .2em; }
.dg-site-footer-contact svg { flex-shrink: 0; width: var(--dg-space-6); height: var(--dg-space-6); }
.dg-site-footer-business { padding-top: var(--dg-space-5); border-top: 1px solid var(--dg-border); }
.dg-site-footer-business h2 { margin: 0 0 var(--dg-space-3); color: var(--dg-text); font-size: var(--dg-font-body-md); font-weight: var(--dg-font-weight-bold); }
.dg-site-footer-business-groups { display: grid; gap: var(--dg-space-3); }
.dg-site-footer-business dl { display: flex; flex-wrap: wrap; gap: var(--dg-space-2) var(--dg-space-6); margin: 0; }
.dg-site-footer-business dl + dl { padding-top: var(--dg-space-3); border-top: 1px solid var(--dg-border); }
.dg-site-footer-business dl > div { min-width: 0; max-width: 100%; }
.dg-site-footer-business dt { display: inline; margin-inline-end: var(--dg-space-2); font-weight: var(--dg-font-weight-bold); }
.dg-site-footer-business dd { display: inline; margin: 0; overflow-wrap: anywhere; }
.dg-site-footer-business dd a { color: inherit; text-underline-offset: .2em; }
.dg-site-footer-pending { margin-bottom: 0; }
.dg-site-footer-copyright { margin-top: var(--dg-space-5); }
.dg-site-footer-copyright a { color: var(--dg-text); text-underline-offset: .2em; }
.dg-has-global-mobile-nav .dg-site-footer { padding-bottom: calc(var(--dg-space-9) + var(--dg-control-lg) + env(safe-area-inset-bottom)); }
.dunggeul-public-landing .dg-site-footer { padding-bottom: calc(var(--dg-space-9) + var(--dg-control-lg) + env(safe-area-inset-bottom)); }
@media (min-width: 48rem) {
  .dg-has-global-desktop-nav .dg-site-footer-inner { margin-left: calc(var(--dg-app-sidebar) + var(--dg-app-gutter)); }
  .dg-has-global-mobile-nav .dg-site-footer { padding-bottom: var(--dg-space-8); }
}
@media (min-width: 48rem) and (max-width: 63.9375rem) {
  .dg-has-global-desktop-nav .dg-site-footer-inner { margin-left: calc(var(--dg-app-sidebar-compact) + var(--dg-app-gutter-compact)); }
}
@media (max-width: 47.9375rem) {
  .dg-site-footer-heading { display: block; }
  .dg-site-footer-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .dg-site-footer-business dl { gap: var(--dg-space-1) var(--dg-space-4); }
}

/* Member footers follow the same viewport-based content column as .dg-shell. */
@media (min-width: 47.5625rem) {
  body[class*="dunggeul-"].dg-has-global-desktop-nav:not(.dunggeul-public-landing) .dg-site-footer {
    padding-inline: 0;
  }
  body[class*="dunggeul-"].dg-has-global-desktop-nav:not(.dunggeul-public-landing) .dg-site-footer-inner {
    box-sizing: border-box;
    width: min(var(--dg-app-main), calc(100vw - var(--dg-app-sidebar) - var(--dg-app-gutter) - (var(--dg-content-padding) * 2)));
    max-width: var(--dg-app-main);
    margin-left: max(
      calc(var(--dg-content-padding) + var(--dg-app-sidebar) + var(--dg-app-gutter)),
      calc(50vw - (var(--dg-app-frame) / 2) + var(--dg-app-sidebar) + var(--dg-app-gutter))
    );
    margin-right: auto;
  }
}
@media (min-width: 47.5625rem) and (max-width: 70rem) {
  body[class*="dunggeul-"].dg-has-global-desktop-nav:not(.dunggeul-public-landing) .dg-site-footer-inner {
    width: calc(100vw - var(--dg-app-sidebar-compact) - var(--dg-app-gutter-compact) - (var(--dg-content-padding) * 2));
    margin-left: calc(var(--dg-content-padding) + var(--dg-app-sidebar-compact) + var(--dg-app-gutter-compact));
  }
}
