/* ============================================================
   Footer – Lykos SEO
   ============================================================ */

.site-footer {
  background-color: var(--color-bg);
  border-top:       1px solid var(--color-border-dark);
  padding-block:    4rem 2rem;
}

.site-footer__inner {
  max-width:    var(--container-max);
  margin-inline:auto;
  padding-inline:var(--container-px);
  display:      grid;
  grid-template-columns: 2fr 1fr 1fr 1fr 1fr;
  gap:          3rem;
  align-items:  start;
}

/* ---- Brand column ---- */
.site-footer__brand {
  display:        flex;
  flex-direction: column;
  gap:            1rem;
}

.site-footer__logo {
  display:     flex;
  align-items: center;
  gap:         .5rem;
}

.site-footer__logo img { height: 36px; width: auto; }

.site-footer__logo span {
  font-weight: 700;
  font-size:   var(--text-base);
  color:       var(--color-text);
}

.site-footer__brand > p {
  font-size:  var(--text-sm);
  color:      var(--color-text-muted);
  line-height:1.6;
  max-width:  260px;
}

/* Social links */
.site-footer__social {
  display:     flex;
  align-items: center;
  gap:         .75rem;
  margin-top:  .5rem;
}

.site-footer__social a {
  display:         flex;
  align-items:     center;
  justify-content: center;
  width:           36px;
  height:          36px;
  border-radius:   var(--radius-md);
  border:          1px solid var(--color-border-dark);
  color:           var(--color-text-muted);
  transition:      color var(--transition), border-color var(--transition);
}

.site-footer__social a:hover {
  color:        var(--color-primary);
  border-color: var(--color-primary);
}

.site-footer__social svg { width: 16px; height: 16px; }

/* ---- Link groups ---- */
.site-footer__group {
  display:        flex;
  flex-direction: column;
  gap:            .75rem;
}

.site-footer__group h2 {
  font-size:      var(--text-xs);
  font-weight:    700;
  text-transform: uppercase;
  letter-spacing: .1em;
  color:          var(--color-text-muted);
  margin-bottom:  .25rem;
}

.site-footer__group a,
.site-footer__group span {
  font-size:  var(--text-sm);
  color:      var(--color-text-muted);
  transition: color var(--transition);
  display:    block;
}

.site-footer__group a:hover { color: var(--color-text); }

/* ---- Copyright bar ---- */
.site-footer__copyright {
  max-width:     var(--container-max);
  margin-inline: auto;
  padding-inline:var(--container-px);
  padding-top:   2rem;
  margin-top:    2rem;
  border-top:    1px solid var(--color-border-dark);
  font-size:     var(--text-xs);
  color:         var(--color-text-muted);
  text-align:    center;
}

/* ---- Responsive ---- */
@media (max-width: 1024px) {
  .site-footer__inner { grid-template-columns: 1fr 1fr 1fr; }
  .site-footer__brand { grid-column: 1 / -1; }
}

@media (max-width: 640px) {
  .site-footer__inner { grid-template-columns: 1fr 1fr; gap: 2rem; }
  .site-footer__brand { grid-column: 1 / -1; }
}

@media (max-width: 480px) {
  .site-footer__inner { grid-template-columns: 1fr; }
}
