/*!
 * vup_2018_child - components/footer.css
 * Footer layout, widget grid, and credit styling.
 */

.site-footer {
  --footer-bg: var(--vu-black);
  --footer-fg: var(--vu-fg);
  --footer-link: var(--vu-gold);
  --footer-gap: clamp(24px, 5vw, 40px);
  --footer-padding-block-start: clamp(36px, 6vw, 60px);
  --footer-padding-block-end: clamp(20px, 4vw, 40px);

  background-color: var(--footer-bg);
  background-image: var(--grad-footer, none);
  color: var(--footer-fg);
  padding-block: var(--footer-padding-block-start) var(--footer-padding-block-end);
}

.site-footer a {
  color: var(--footer-link);
  text-decoration: none;
}

.site-footer a:hover,
.site-footer a:focus-visible {
  text-decoration: underline;
}

.site-footer__inner {
  max-width: min(var(--content-w), 1200px);
  margin-inline: auto;
  padding-inline: clamp(16px, 3vw, 40px);
  display: flex;
  flex-direction: column;
  gap: var(--footer-gap);
}

.footer-widgets {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: clamp(16px, 4vw, 32px);
}

.footer-widgets .widget {
  /* Footer widgets use the base class but are reset in widgets-base.css */
  /* We can add specific footer-only styling here if needed, but for now let's keep it clean */
  /* background-color: rgba(255, 255, 255, 0.05); */
  /* background-image: var(--grad-surface-1, none); */
  padding: 0;
  /* Let grid handle spacing */
  border-radius: 0;
  box-shadow: none;
}

.footer-widgets .widget-title {
  margin: 0 0 12px;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--footer-link);
}

.site-info {
  font-size: 0.85rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

@media (max-width: 720px) {
  .footer-widgets {
    grid-template-columns: 1fr;
  }
}