.footer { background:#05060F; color:#eef2ff; margin-top:40px; }
.footer a { color:inherit; text-decoration:none; opacity:.92; }
.footer a:hover { opacity:1; text-decoration:underline; }

.footer__inner {
  display:grid;
  grid-template-columns: 220px 1fr 240px; /* brand | sitemap | legal */
  gap:32px;
  padding:32px 0;
}
.footer__brand .footer__logo img { width:160px; height:auto; display:block; }
.footer__tag { margin:10px 0 0; font-family:"Gothic One",system-ui,sans-serif; letter-spacing:.3px; opacity:.8; }

/* Make the nav wrapper behave like separate columns */
.footer__nav { display:contents; }      /* so its children occupy grid columns */
.footer__nav .footer__col:first-child { grid-column: 2; }   /* Site Map */
.footer__nav .footer__col:last-child  { grid-column: 3; }   /* Legal  */

/* Headings */
.footer__heading{
  margin:0 0 10px;
  font-family:"Gothic One",system-ui,sans-serif;
  font-size:14px;
  text-transform:uppercase;
  letter-spacing:.6px;
  opacity:.95;
}

/* ===== Site Map (auto-built) ===== */
#footer-sitemap ul{ list-style:none; margin:0; padding:0; }
#footer-sitemap li{ margin:6px 0; break-inside: avoid; } /* avoid column breaks inside items */

/* Multi-column layout for top level */
#footer-sitemap > ul{
  column-count: 3;
  column-gap: 40px;
  padding-top: 2px;
}

/* Top-level links (act like section titles) */
#footer-sitemap > ul > li > a{
  display:inline-block;
  font-weight:600;
  font-size:15px;
  line-height:1.5;
  opacity:.96;
  margin:6px 0 2px;
}

/* Sub-level styling */
#footer-sitemap > ul > li > ul{
  margin:6px 0 10px 14px;
  padding-left:10px;
  border-left:1px solid rgba(255,255,255,.12);
}
#footer-sitemap > ul > li > ul > li > a{
  font-size:14px;
  line-height:1.45;
  opacity:.9;
}

/* Sub-sub level */
#footer-sitemap > ul > li > ul > li > ul{
  margin:6px 0 4px 14px;
  padding-left:10px;
  border-left:1px solid rgba(255,255,255,.08);
}
#footer-sitemap > ul > li > ul > li > ul a{
  font-size:13px;
  line-height:1.35;
  opacity:.85;
}

/* Remove any leftover bullets/markers from UA styles */
#footer-sitemap ul li::marker{ content:""; }

/* ===== Legal column ===== */
.footer__list{ list-style:none; margin:0; padding:0; }
.footer__list li{ margin:6px 0; }
.footer__list a{ font-size:15px; line-height:1.5; }

/* ===== Bottom bar ===== */
.footer__bottom{ border-top:1px solid rgba(255,255,255,.08); font-size:14px; }
.footer__bottom-inner{
  padding:14px 0 18px;
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  opacity:.85;
}

/* ===== Responsive ===== */
@media (max-width: 1100px){
  #footer-sitemap > ul{ column-count: 2; }
}
@media (max-width: 900px){
  .footer__inner{ grid-template-columns: 1fr; }
  .footer__nav{ display:block; }
  .footer__nav .footer__col{ grid-column:auto; margin-top:8px; }
  #footer-sitemap > ul{ column-count: 1; }
  .footer__bottom-inner{ flex-direction:column; align-items:flex-start; }
}
.footer__brand .footer__logo img {
  width: 160px;
  height: auto;
  display: block;
  /* Stronger base glow */
  filter: drop-shadow(0 0 10px rgba(255,255,255,0.85))
          drop-shadow(0 0 20px rgba(255,255,255,0.4));
  transition: filter 0.3s ease;
  animation: glowPulse 4s ease-in-out infinite;
}

/* On hover, amplify the glow even more */
.footer__brand .footer__logo img:hover {
  filter: drop-shadow(0 0 16px rgba(255,255,255,0.95))
          drop-shadow(0 0 28px rgba(255,255,255,0.6));
}

/* Pulse animation — stronger midpoint intensity */
@keyframes glowPulse {
  0%, 100% {
    filter: drop-shadow(0 0 8px rgba(255,255,255,0.7))
            drop-shadow(0 0 18px rgba(255,255,255,0.4));
  }
  50% {
    filter: drop-shadow(0 0 20px rgba(255,255,255,1))
            drop-shadow(0 0 36px rgba(255,255,255,0.75));
  }
}
