
/* v5.1.80 — light footer visual polish.
   Goal: make the footer feel cleaner, more premium and easier to scan,
   without changing structure or behaviour. */

body.vlg-theme .vlg-footer.vlg-footer--premium.vlg-footer--refined {
  position: relative;
  overflow: clip;
}

body.vlg-theme .vlg-footer.vlg-footer--premium.vlg-footer--refined::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(255,255,255,.025), rgba(255,255,255,0) 24%),
    radial-gradient(circle at 50% 0%, rgba(255,191,94,.08), transparent 32%);
}

body.vlg-theme .vlg-footer-premium-wrap {
  position: relative;
  z-index: 1;
}

body.vlg-theme .vlg-footer-trustbar {
  gap: 16px !important;
}

body.vlg-theme .vlg-footer-trustitem {
  transition: transform .2s ease, border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}

body.vlg-theme .vlg-footer-trustitem:hover {
  transform: translateY(-2px);
  border-color: rgba(255,191,94,.18) !important;
  background: rgba(255,255,255,.045) !important;
  box-shadow: 0 14px 28px rgba(0,0,0,.14);
}

body.vlg-theme .vlg-footer-brand-card,
body.vlg-theme .vlg-footer-panel {
  backdrop-filter: blur(10px);
}

body.vlg-theme .vlg-footer-brand-card {
  box-shadow: 0 18px 40px rgba(0,0,0,.12) !important;
}

body.vlg-theme .vlg-footer-panel {
  box-shadow: 0 16px 34px rgba(0,0,0,.10) !important;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

body.vlg-theme .vlg-footer-panel:hover {
  transform: translateY(-2px);
  border-color: rgba(255,255,255,.12) !important;
  box-shadow: 0 18px 40px rgba(0,0,0,.14) !important;
}

body.vlg-theme .vlg-footer h3,
body.vlg-theme .vlg-footer-col h3 {
  letter-spacing: .12em;
}

body.vlg-theme .vlg-footer-about {
  max-width: 52ch;
}

body.vlg-theme .vlg-footer-menu a {
  padding: 4px 0;
  transition: color .2s ease, transform .2s ease, opacity .2s ease;
}

body.vlg-theme .vlg-footer-menu a:hover,
body.vlg-theme .vlg-footer-menu a:focus-visible {
  color: #ffd487 !important;
  transform: translateX(4px);
  opacity: 1;
}

body.vlg-theme .vlg-footer-menu a:focus-visible,
body.vlg-theme .vlg-footer-mini-card a:focus-visible,
body.vlg-theme .vlg-footer-contact-row a:focus-visible {
  outline: 2px solid rgba(255,191,94,.85);
  outline-offset: 3px;
  border-radius: 8px;
}

body.vlg-theme .vlg-footer-mini-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}

body.vlg-theme .vlg-footer-contact-row {
  padding: 16px 0;
}

body.vlg-theme .vlg-footer-contact-icon {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}

body.vlg-theme .vlg-footer-bottom.vlg-footer-bottom--premium {
  margin-top: 28px;
  padding: 16px 18px 0 !important;
  border-top-color: rgba(255,255,255,.08);
}

body.vlg-theme .vlg-footer-bottom__copy,
body.vlg-theme .vlg-footer-bottom__meta {
  line-height: 1.6;
}

body.vlg-theme .vlg-footer-bottom__meta {
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.035);
  border: 1px solid rgba(255,255,255,.08);
}

@media (max-width: 767px) {
  body.vlg-theme .vlg-footer.vlg-footer--premium.vlg-footer--refined {
    padding-top: 24px !important;
  }

  body.vlg-theme .vlg-footer-trustbar {
    gap: 10px !important;
  }

  body.vlg-theme .vlg-footer-trustitem:hover,
  body.vlg-theme .vlg-footer-panel:hover {
    transform: none;
  }

  body.vlg-theme .vlg-footer-brand-card,
  body.vlg-theme .vlg-footer-panel {
    box-shadow: 0 10px 24px rgba(0,0,0,.10) !important;
  }

  body.vlg-theme .vlg-footer-bottom.vlg-footer-bottom--premium {
    padding: 14px 0 0 !important;
  }

  body.vlg-theme .vlg-footer-bottom__meta {
    width: 100%;
    text-align: left;
  }
}


/* Admin selectable footer styles. The PHP option footer_style adds
   .vlg-footer-style--premium / --clean / --compact / --ecommerce. */
body.vlg-theme .vlg-footer.vlg-footer-style--premium {
  /* Keep current premium design as default. */
}

body.vlg-theme .vlg-footer.vlg-footer-style--clean {
  background: linear-gradient(180deg, #f8fafc 0%, #eef3f8 100%) !important;
  border-top: 1px solid #dce5ee !important;
  color: #1d2a38 !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--clean::after {
  background: radial-gradient(circle at 50% 0%, rgba(246,166,30,.12), transparent 30%);
}

body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-brand-card,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-panel,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-trustitem,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-mini-card,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-contact-icon,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-bottom__meta {
  background: rgba(255,255,255,.78) !important;
  border-color: rgba(29,42,56,.10) !important;
  color: #1d2a38 !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer h3,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-col h3,
body.vlg-theme .vlg-footer.vlg-footer-style--clean h3,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-trustitem span:last-child,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-mini-card a,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-contact-row a,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-contact-row span:last-child {
  color: #172331 !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-about,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-menu a,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-bottom__copy,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-bottom__meta {
  color: #405064 !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer h3,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-col h3,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-contact-row + .vlg-footer-contact-row,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-brand-tools,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-bottom.vlg-footer-bottom--premium {
  border-color: rgba(29,42,56,.10) !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-badge,
body.vlg-theme .vlg-footer.vlg-footer-style--clean .vlg-footer-trustitem__icon {
  background: rgba(246,166,30,.12) !important;
  border-color: rgba(246,166,30,.26) !important;
  color: #8a5300 !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--compact {
  margin-top: 34px !important;
  padding: 26px 0 16px !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer-trustbar {
  margin-bottom: 16px !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer-trustitem {
  min-height: 54px;
  padding: 10px 14px !important;
  border-radius: 14px !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer-trustitem__icon {
  width: 34px;
  height: 34px;
  flex-basis: 34px;
  border-radius: 11px;
}

body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer-shell {
  gap: 16px !important;
  grid-template-columns: minmax(260px, .85fr) minmax(0, 2.15fr) !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer-brand-card,
body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer-panel {
  padding: 16px !important;
  border-radius: 16px !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer-about {
  font-size: 14px !important;
  line-height: 1.55;
  margin-bottom: 12px !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer-mini-card {
  min-height: 70px;
  padding: 12px 14px !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer h3,
body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer-col h3 {
  margin-bottom: 10px !important;
  padding-bottom: 8px;
  font-size: 13px !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer-menu {
  gap: 5px !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer-menu a,
body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer-bottom__copy,
body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer-bottom__meta {
  font-size: 13px !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer-contact-row {
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 10px;
  padding: 10px 0;
}

body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer-contact-icon {
  width: 38px;
  height: 38px;
  border-radius: 12px;
}

body.vlg-theme .vlg-footer.vlg-footer-style--ecommerce {
  background:
    linear-gradient(180deg, #0e1a2a 0%, #07101d 100%) !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--ecommerce .vlg-footer-trustbar {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  margin-bottom: 22px !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--ecommerce .vlg-footer-trustitem {
  background: linear-gradient(180deg, rgba(255,191,94,.12), rgba(255,255,255,.035)) !important;
  border-color: rgba(255,191,94,.22) !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--ecommerce .vlg-footer-shell {
  grid-template-columns: minmax(310px, 1fr) minmax(0, 2fr) !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--ecommerce .vlg-footer-panel {
  background: rgba(255,255,255,.035) !important;
}

body.vlg-theme .vlg-footer.vlg-footer-style--ecommerce .vlg-footer-menu a {
  min-height: 34px;
  width: 100%;
  border-bottom: 1px solid rgba(255,255,255,.055);
}

body.vlg-theme .vlg-footer.vlg-footer-style--ecommerce .vlg-footer-bottom.vlg-footer-bottom--premium {
  background: rgba(255,255,255,.035);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 18px;
  padding: 14px 16px !important;
}

@media (max-width: 1180px) {
  body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer-shell,
  body.vlg-theme .vlg-footer.vlg-footer-style--ecommerce .vlg-footer-shell {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  body.vlg-theme .vlg-footer.vlg-footer-style--compact,
  body.vlg-theme .vlg-footer.vlg-footer-style--ecommerce {
    padding-bottom: calc(96px + env(safe-area-inset-bottom)) !important;
  }

  body.vlg-theme .vlg-footer.vlg-footer-style--ecommerce .vlg-footer-trustbar {
    grid-template-columns: 1fr !important;
  }

  body.vlg-theme .vlg-footer.vlg-footer-style--compact .vlg-footer-shell {
    grid-template-columns: 1fr !important;
  }
}
