/* Viliante shared footer CSS - parallel mode */

/* ===== viliante-final-footer-css ===== */
.site-footer.viliante-footer-final {
  background:
    radial-gradient(circle at 10% 0%, rgba(226, 197, 166, 0.12), transparent 28%),
    radial-gradient(circle at 88% 18%, rgba(255, 255, 255, 0.045), transparent 26%),
    linear-gradient(135deg, #222827 0%, #151b1b 52%, #101515 100%);
  color: #f7efe4;
  padding: 30px 0 16px;
  margin-top: 0;
  border-top: 1px solid rgba(226, 197, 166, 0.18);
}

.viliante-footer-final .viliante-footer-top {
  display: grid;
  grid-template-columns: 1.02fr 0.76fr 0.84fr 0.7fr 0.9fr;
  gap: 24px;
  align-items: start;
}

.viliante-footer-final .viliante-footer-brand {
  max-width: 250px;
}

.viliante-footer-final .viliante-footer-logo {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  color: #ffffff;
  font-size: clamp(28px, 2.8vw, 42px);
  line-height: 0.9;
  font-weight: 900;
  letter-spacing: -0.075em;
}

.viliante-footer-final .viliante-footer-email {
  margin: 14px 0 0;
}

.viliante-footer-final .viliante-footer-email a {
  color: #d7b58f;
  text-decoration: none;
  font-size: 15px;
  font-weight: 750;
  letter-spacing: -0.01em;
}

.viliante-footer-final .viliante-footer-email a:hover {
  color: #ffffff;
}

.viliante-footer-final .viliante-footer-description {
  display: none !important;
}

.viliante-footer-final .viliante-footer-column {
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.viliante-footer-final .viliante-footer-column h3 {
  margin: 0 0 7px;
  color: #ffffff;
  font-family: "Comic Sans MS", "Arial Rounded MT Bold", "Trebuchet MS", system-ui, sans-serif;
  font-size: 17px;
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -0.03em;
}

.viliante-footer-final .viliante-footer-column a {
  color: rgba(247, 239, 228, 0.76);
  text-decoration: none;
  font-size: 14px;
  line-height: 1.16;
  font-weight: 650;
  letter-spacing: -0.01em;
  transition: color 160ms ease, transform 160ms ease;
}

.viliante-footer-final .viliante-footer-column a:hover {
  color: #ffffff;
  transform: translateX(2px);
}

.viliante-footer-final .viliante-footer-bottom {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-top: 24px;
  padding-top: 13px;
  border-top: 1px solid rgba(247, 239, 228, 0.20);
}

.viliante-footer-final .viliante-footer-bottom p {
  margin: 0;
  color: rgba(247, 239, 228, 0.72);
  font-size: 13px;
  font-weight: 650;
  letter-spacing: -0.01em;
}

@media (max-width: 1100px) {
  .viliante-footer-final .viliante-footer-top {
    grid-template-columns: 1fr 0.76fr 0.84fr 0.7fr 0.9fr;
    gap: 20px;
  }

  .viliante-footer-final .viliante-footer-column a {
    font-size: 13.5px;
  }
}

@media (max-width: 900px) {
  .site-footer.viliante-footer-final {
    padding: 32px 0 18px;
  }

  .viliante-footer-final .viliante-footer-top {
    grid-template-columns: 1fr 1fr;
    gap: 24px 22px;
  }

  .viliante-footer-final .viliante-footer-brand {
    grid-column: 1 / -1;
    max-width: 100%;
  }

  .viliante-footer-final .viliante-footer-bottom {
    margin-top: 26px;
  }
}

@media (max-width: 640px) {
  .site-footer.viliante-footer-final {
    padding: 32px 0 20px;
  }

  .viliante-footer-final .viliante-footer-top {
    grid-template-columns: 1fr;
    gap: 21px;
  }

  .viliante-footer-final .viliante-footer-logo {
    font-size: 38px;
  }

  .viliante-footer-final .viliante-footer-email {
    margin-top: 13px;
  }

  .viliante-footer-final .viliante-footer-email a {
    font-size: 15px;
  }

  .viliante-footer-final .viliante-footer-column {
    gap: 8px;
  }

  .viliante-footer-final .viliante-footer-column h3 {
    font-size: 18px;
    margin-bottom: 6px;
  }

  .viliante-footer-final .viliante-footer-column a {
    font-size: 15px;
  }

  .viliante-footer-final .viliante-footer-bottom {
    margin-top: 24px;
    padding-top: 15px;
  }
}

/* ===== viliante-footer-contact-clean-v1 ===== */
.viliante-footer-final .viliante-footer-top{
  grid-template-columns: 1.35fr .85fr .85fr 1fr 1.15fr !important;
  gap: 54px !important;
}

.viliante-footer-contact .footer-contact-item{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  margin:0 0 12px !important;
  color:rgba(255,255,255,.72) !important;
  text-decoration:none !important;
  font-weight:700 !important;
}

.viliante-footer-contact .footer-contact-item:hover{
  color:#ffffff !important;
}

.footer-contact-icon{
  width:28px;
  height:28px;
  border-radius:999px;
  display:inline-grid;
  place-items:center;
  background:rgba(255,255,255,.08);
  color:#e6c79a;
  font-size:14px;
  flex:0 0 auto;
}

@media(max-width:900px){
  .viliante-footer-final .viliante-footer-top{
    grid-template-columns:1fr 1fr !important;
    gap:30px !important;
  }
}

@media(max-width:640px){
  .viliante-footer-final .viliante-footer-top{
    grid-template-columns:1fr !important;
  }
}

/* ===== footer-social-links-css ===== */
.footer-column a{
  display:block;
  color:inherit;
  text-decoration:none;
  margin-bottom:12px;
}
.footer-column a:hover{
  color:#d8b98c;
}

/* ===== footer-viliante-letter-spacing-css ===== */
.viliante-footer-final .viliante-footer-logo{
  letter-spacing:0.035em !important;
}

