/* =========================================================
   GLASSMORPHIC TRANSPARENT FOOTER — Same Style as NAV BAR
   (Dark overlay, blur, soft whites, accent blue)
========================================================= */
@import url('https://fonts.googleapis.com/css2?family=Bitcount+Prop+Single&display=swap');

footer {
  background: rgba(0, 0, 0, 0.15);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  padding: 55px 20px;
  text-align: center;
  width: 100%;
  color: #e8ecf3;
  box-shadow: 0 -6px 18px rgba(0,0,0,0.35);
}
.logo-bio {
  font-family: 'Bitcount Prop Single';
  font-size: 42px;

  background: linear-gradient(90deg, #00d1c1, #30c9ff, #7bb5ff);
  background-size: 200%;
  -webkit-background-clip: text;
  color: transparent;

  animation: gradientShift 3s ease infinite;
  text-shadow: 0 3px 6px var(--nav-shadow);
}

.logo-journal {
  font-family: 'Bitcount Prop Single';
  font-size: 42px;
  font-weight: 600;
  color: #eef5ff;
  text-shadow: 0 1px 3px rgba(0,0,0,0.3);
}

@keyframes gradientShift {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}
/* Wrapper */
.footer-content,
.footer-footnotes {
  max-width: 1300px;
  margin: 0 auto;
}

/* Logo */
.footer-logo a {
  width: 140px;
  height: auto;
  margin-bottom: 15px;
  filter: drop-shadow(0 3px 8px rgba(0,0,0,0.5));
  text-decoration: none;
}

/* Brand hover glow */
.logo-bio,
.logo-journal {
  transition:
    transform 0.35s cubic-bezier(0.22, 1, 0.36, 1),
    text-shadow 0.35s ease;
  will-change: transform, text-shadow;
}

.logo-bio:hover,
.logo-journal:hover {
  transform: scale(1.06);
  text-shadow:
    0 0 6px rgba(123, 181, 255, 0.45),
    0 0 14px rgba(123, 181, 255, 0.25);
}

/* Text + Links */
footer p,
footer nav a {
  color: #e8ecf3;
  font-size: 15px;
  line-height: 1.6;
  font-family: "Inter", sans-serif;
  margin: 12px 0;
  transition: 0.25s ease;
}

/* Inline links */
footer p a {
  color: #7bb5ff;
  text-decoration: none;
  font-weight: 500;
}

footer p a:hover {
  color: #a8d2ff;
  text-shadow: 0 0 8px rgba(125,175,255,0.6);
}

/* Divider */
.custom-line {
  border: none;
  height: 1px;
  width: 80%;
  margin: 25px auto;
  background: rgba(255,255,255,0.12);
}

/* Footer Navigation */
footer nav {
  display: flex;
  gap: 25px;
  justify-content: center;
}

footer nav a:hover {
  color: #7bb5ff;
  text-shadow: 0 0 8px rgba(125,175,255,0.7);
}

/* Footnotes */
.footer-footnotes > p {
  font-family: "Fira Code", monospace;
  font-size: 12px;
  color: #9da3b0;
  text-align: left;
  margin-top: 15px;
}

.footer-footnotes sup {
  font-size: 8px;
  color: #9da3b0;
}

.footer-footnotes a {
  color: #7bb5ff;
}

.footer-footnotes a:hover {
  color: #a8d2ff;
}

/* Website Logos */
.website-logos {
  display: flex;
  gap: 28px;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  padding: 25px 0;
}

.website-logo-link {
  text-decoration: none;
  color: #e8ecf3;
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: 0.25s ease;
}

.website-logo-link:hover {
  transform: scale(1.06);
  color: #7bb5ff;
}

.website-logo {
  width: 70px;
  filter: drop-shadow(0px 3px 8px rgba(0,0,0,0.4));
  transition: 0.25s ease;
}

.website-logo:hover {
  transform: scale(1.12);
}

/* Author Info */
.author-info {
  font-family: "Inter", sans-serif;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.09);
  padding: 15px 20px;
  border-radius: 10px;
  display: inline-block;
  color: #d6d8df;
  margin-top: 25px;
  backdrop-filter: blur(6px);
}

.author-info i {
  color: #7bb5ff;
  margin-right: 5px;
}

.author-info span {
  font-weight: 600;
  color: #cfd3dc;
}

#author_wilder i:hover {
  color: #a8d2ff;
}


/* =========================================================
   RESPONSIVE FOOTER — TABLET & MOBILE OPTIMIZATION
   (Desktop untouched)
========================================================= */

/* ---------- Tablets (≤ 900px) ---------- */
@media (max-width: 900px) {

  footer {
    padding: 45px 18px;
  }

  footer nav {
    gap: 18px;
  }

  .website-logos {
    gap: 22px;
  }
}


/* ---------- Mobile (≤ 768px) ---------- */
@media (max-width: 768px) {

  .footer-footnotes {
    padding-left: 18px;
    padding-right: 18px;
  }
  footer {
    padding: 40px 16px;
  }

  footer nav {
    align-items: center;
    gap: 14px;
  }

  footer nav a {
    padding: 8px 0;          /* larger tap area */
  }

  .custom-line {
    width: 92%;
  }

  .website-logos {
    flex-direction: row;
    gap: 18px;
  }

  .website-logo {
    width: 64px;
  }

  .author-info {
    width: 100%;
    max-width: 420px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }
}


/* ---------- Small Phones (≤ 480px) ---------- */
@media (max-width: 480px) {
  .footer-footnotes {
    padding-left: 14px;
    padding-right: 14px;
  }
  footer {
    padding: 36px 14px;
  }

  footer p,
  footer nav a {
    font-size: 14px;
  }

  .logo-bio,
  .logo-journal {
    font-size: 34px;   /* prevents overflow */
  }

  .website-logos {
    gap: 14px;
  }

  .website-logo {
    width: 58px;
  }

  .author-info {
    font-size: 13px;
    padding: 14px 16px;
  }

  .footer-footnotes > p {
    font-size: 11px;
    line-height: 1.5;
  }
}
/* =========================================================
   FOOTER FOOTNOTES — SAFE INNER PADDING (ALL DEVICES)
========================================================= */

.footer-footnotes {
  padding-left: 20px;
  padding-right: 20px;
  box-sizing: border-box;
}

