/* === Zoe Theme Overrides === */

/* Brand Colors */
:root {
  --zoe-purple: #6a1b9a; /* Royalty */
  --zoe-green:  #2e7d32; /* Life */
  --zoe-gold:   #d4af37; /* Divinity */
  --zoe-white:  #ffffff; /* Purity */
}

/* Text Colors */
.text-primary { color: var(--zoe-purple) !important; }
.text-success { color: var(--zoe-green) !important; }
.text-warning { color: var(--zoe-gold) !important; }

/* Backgrounds */
.bg-primary { background-color: var(--zoe-purple) !important; }
.bg-success { background-color: var(--zoe-green) !important; }
.bg-warning { background-color: var(--zoe-gold) !important; }

/* Buttons */
.btn-primary {
  background-color: var(--zoe-purple) !important;
  border-color: var(--zoe-purple) !important;
}
.btn-success {
  background-color: var(--zoe-green) !important;
  border-color: var(--zoe-green) !important;
}
.btn-warning {
  background-color: var(--zoe-gold) !important;
  border-color: var(--zoe-gold) !important;
}

/* Spinners */
.spinner-border.text-primary,
.spinner-grow.text-primary {
  color: var(--zoe-purple) !important;
}
<style>
  /* --- FOOTER OVERRIDES --- */
  .footer {
    background: #fff !important;
    color: #000 !important;
  }

  /* Headings green */
  .footer .footer-item h4 { 
    color: #198754 !important; /* Bootstrap success green */
  }

  /* Make ALL text/icons/links readable (black) */
  .footer .footer-item p,
  .footer .footer-item a,
  .footer .footer-item i,
  .footer .footer-item span,
  .footer .footer-item li,
  .footer .text-white,
  .footer .text-light,
  .footer .text-muted {
    color: #000 !important;
  }

  /* Link hover accent */
  .footer .footer-item a:hover {
    color: #198754 !important;
    text-decoration: none;
  }

  /* Inputs & placeholders */
  .footer .form-control {
    background: #fff !important;
    color: #000 !important;
    border: 1px solid #ced4da !important;
  }
  .footer ::placeholder { color: #6c757d !important; }

  /* Newsletter button (green) */
  .footer .btn.btn-success {
    background: #198754 !important;
    border-color: #198754 !important;
    color: #fff !important;
  }
  .footer .btn.btn-success:hover {
    background: #146c43 !important;
    border-color: #146c43 !important;
  }

  /* Make location/email/phone icons black */
  .footer .fa-map-marker-alt,
  .footer .fa-envelope,
  .footer .fa-phone { color: #000 !important; }

  /* --- COPYRIGHT BAR --- */
  .copyright {
    background: #6f42c1 !important; /* purple */
    color: #fff !important;
  }
  .copyright a { color: #fff !important; }
  .copyright a:hover { opacity: .85; }

  /* Social buttons on copyright */
  .copyright .btn {
    background: #fff !important;
    border: 0 !important;
  }
  .copyright .btn i.fa-facebook-f  { color: #1877F2 !important; }
  .copyright .btn i.fa-twitter     { color: #1DA1F2 !important; }
  .copyright .btn i.fa-instagram   { color: #E4405F !important; }
  .copyright .btn i.fa-linkedin-in { color: #0A66C2 !important; }
</style>
