/* ── Footer: light lavender watercolour, purple + blue blobs ── */
.o-footer{
  background:
    radial-gradient(ellipse 90% 65% at 0%   15%, rgba(139,92,246,0.09)  0%, transparent 58%),
    radial-gradient(ellipse 65% 80% at 85%  5%,  rgba(96,165,250,0.08)  0%, transparent 55%),
    radial-gradient(ellipse 60% 55% at 70%  85%, rgba(124,58,237,0.07)  0%, transparent 50%),
    radial-gradient(ellipse 75% 60% at 20%  90%, rgba(59,130,246,0.06)  0%, transparent 52%),
    radial-gradient(ellipse 50% 45% at 48%  48%, rgba(167,139,250,0.05) 0%, transparent 42%),
    radial-gradient(ellipse 40% 38% at 92%  58%, rgba(147,197,253,0.04) 0%, transparent 44%),
    linear-gradient(150deg, #f5f0ff 0%, #eef2ff 50%, #f5f0ff 100%)!important;
  color:#1e1b4b!important;
  border-top:none!important;
}
/* Decorative brand-symbol with concave shadow+shine baked into the same layer.
   Gradient sits on top of the SVG in the background stack, no z-index clash
   with the content container (which stays at z-index:1). */
.o-footer::after{
  filter:none!important;
  opacity:0.42!important;
  z-index:0!important;
}
.o-footer::before{
  display:none!important;
}
/* Logo: original brand colours, no card */
.o-footer__top-logo img,
.o-footer__top-logo svg{
  filter:none!important;
  opacity:1!important;
}
.o-footer__top-logo{
  height:36px!important;
  display:inline-flex!important;
  align-items:center!important;
  padding:0!important;
  background:none!important;
  border:none!important;
  border-radius:0!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  box-shadow:none!important;
}
/* Social icons */
.o-footer__social-link{
  box-shadow:none!important;
  border:1.5px solid rgba(109,40,217,0.22)!important;
  border-radius:50%!important;
  background:rgba(109,40,217,0.07)!important;
  width:36px!important;
  height:36px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  transition:background .2s,border-color .2s!important;
}
.o-footer__social-link:hover{background:rgba(109,40,217,0.16)!important;border-color:rgba(109,40,217,0.45)!important;}
.o-footer__social-link::before{background:none!important;}
.o-footer__social-link::after{background:none!important;}
/* Social icon SVGs: navy, no filter */
.o-footer__social-link svg{filter:none!important;opacity:1!important;}
/* Align logo + socials on same centre line */
.o-footer__top-col{display:flex!important;align-items:center!important;gap:16px!important;flex-wrap:wrap!important;}
.o-footer__top-logo{flex-shrink:0!important;}
.o-footer__socials{margin:0!important;}
.o-footer__social-list{display:flex!important;align-items:center!important;gap:8px!important;margin:0!important;padding:0!important;list-style:none!important;}
/* Cert logos: single horizontal row, uniform small size */
.o-footer__images{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;align-items:center!important;filter:none!important;}
.o-footer__img{display:flex!important;align-items:center!important;justify-content:center!important;padding:6px!important;border:none!important;border-radius:0!important;background:none!important;overflow:hidden!important;}
.o-footer__img img,.o-footer__img picture img{max-width:100%!important;max-height:56px!important;width:auto!important;height:auto!important;object-fit:contain!important;filter:none!important;opacity:0.75!important;}
.o-footer__buttons-login{
  color:#5b21b6!important;
  font-weight:700!important;
}
.o-footer__buttons-login:hover{color:#7c3aed!important;}

/* Section titles, navy */
.o-footer__middle-title{
  color:#010347!important;
  border-bottom-color:rgba(1,3,71,0.12)!important;
  font-weight:800!important;
  font-size:17px!important;
}

/* Sub-category labels, dark enough to read on light lavender */
.o-footer__nav-title{
  color:#3b0764!important;
  font-weight:700!important;
  letter-spacing:.04em!important;
}

/* Nav links */
.o-footer__nav-list a{
  color:#4b5563!important;
  text-decoration:none!important;
  transition:color .15s!important;
}
.o-footer__nav-list a:hover{color:#7c3aed!important;}

/* Bottom bar */
.o-footer__bottom{
  background:transparent!important;
  border-top:none!important;
  margin:0!important;
  padding:18px 0!important;
  border-radius:0!important;
}
.o-footer__bottom-row p{color:#374151!important;font-size:13px!important;}
.o-footer__bottom-menu a{color:#374151!important;font-size:13px!important;text-decoration:none!important;}
.o-footer__bottom-menu a:hover{color:#a78bfa!important;}
