
/* ================== Solvedslim Footer Deluxe (2025-09-10) ================== */
/* Color safety */
:root{
  --footer-bg: linear-gradient(135deg, #3CBF9F, #1F5E68);
  --footer-text: rgba(255,255,255,.92);
  --footer-muted: rgba(255,255,255,.75);
  --footer-border: rgba(255,255,255,.18);
  --footer-chip: rgba(255,255,255,.12);
  --footer-chip-hover: rgba(255,255,255,.22);
}

/* Base */
.footer{
  background: var(--footer-bg);
  color: var(--footer-text);
}
.footer a{ color: var(--footer-text); text-decoration: none; }
.footer a:hover{ color: #fff; }

/* Container & grid */
.footer .container{
  width: min(1200px, 100% - 2rem);
  margin-inline: auto;
}
.footer .footer-content{
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr 1.2fr;
  gap: clamp(1rem, 2.5vw, 2rem);
  align-items: start;
}

/* Headings */
.footer .footer-section h4{
  margin: 0 0 .75rem 0;
  font-weight: 700;
  color: #fff;
}

/* Brand & logo (no stretching) */
.footer .footer-brand{ display: grid; gap: .9rem; justify-items: start; }
.footer .footer-logo,
.footer .footer-brand img{
  display: block;
  height: 56px;
  width: auto;
  max-width: 100%;
  object-fit: contain;
  image-rendering: -webkit-optimize-contrast;
}

/* Social icons -> horizontal chips */
.footer .footer-social,
.footer .social-icons,
.footer .social-list{
  display: flex;
  flex-wrap: wrap;
  gap: .6rem .7rem;
  align-items: center;
  list-style: none;
  padding: 0;
  margin: .25rem 0 0;
}
.footer .footer-social a,
.footer .social-icons a,
.footer .social-list a{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px; height: 36px;
  border-radius: 999px;
  background: var(--footer-chip);
  border: 1px solid var(--footer-border);
  transition: background .2s ease, transform .08s ease;
}
.footer .footer-social a:hover,
.footer .social-icons a:hover,
.footer .social-list a:hover{ background: var(--footer-chip-hover); transform: translateY(-1px); }

/* Link lists */
.footer .link-list, .footer ul{
  list-style: none;
  margin: 0; padding: 0;
}
.footer .link-list li + li{ margin-top: .45rem; }
.footer .link-list a{ color: var(--footer-muted); }
.footer .link-list a:hover{ color: #fff; }

/* Contact list rows */
.footer .contact-list{ list-style: none; margin: 0; padding: 0; }
.footer .contact-list li{
  display: grid;
  grid-template-columns: 20px auto;
  gap: .6rem;
  align-items: start;
  color: var(--footer-muted);
}
.footer .contact-list li + li{ margin-top: .5rem; }
.footer .contact-list i, .footer .contact-list svg{ opacity: .95; margin-top: .15rem; }

/* Bottom bar */
.footer .footer-bottom{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: clamp(1.25rem, 3vw, 2rem);
  padding-top: 1rem;
  border-top: 1px solid var(--footer-border);
  color: var(--footer-muted);
  font-size: .95rem;
}

/* Responsive */
@media (max-width: 1024px){
  .footer .footer-content{ grid-template-columns: 1.2fr 1fr 1fr; }
}
@media (max-width: 768px){
  .footer .footer-content{ grid-template-columns: 1fr; text-align: center; }
  .footer .footer-brand{ justify-items: center; }
  .footer .footer-social{ justify-content: center; }
  .footer .contact-list{ justify-items: center; }
  .footer .contact-list li{ grid-template-columns: 20px auto; }
  .footer .footer-section{ margin: 0; }
}
/* =========================================================================== */
