
.ea-footer-links nav ul.list-unstyled {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)); /* two columns on phones */
  grid-column-gap: .75rem;
  grid-row-gap: .35rem;
  margin: 0;
  padding-left: 0;
}
.ea-footer-links .footer__title {
  margin-bottom: .5rem;
  text-align: left;
  letter-spacing: .02em;
}
.ea-footer-links nav ul.list-unstyled > li { list-style: none; }
.ea-footer-links nav ul.list-unstyled > li > a {
  display: block;
  white-space: normal;       /* override any nowrap */
  overflow-wrap: anywhere;
  line-height: 1.25;
  padding: .125rem 0;
}

/* Neutralize ea-nav row behavior in column 1 on phones */
@media (max-width: 767.98px) {
  .ea-footer-links .ea-nav.ea-nav-row-center ul {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-column-gap: .75rem;
    grid-row-gap: .35rem;
  }
  .ea-footer-links .ea-nav.ea-nav-row-center li { display: block !important; }
  .ea-footer-links .ea-nav.ea-nav-row-center a { display: block !important; white-space: normal !important; }
}

/* Ultra-narrow phones: stack to 1 column */
@media (max-width: 360px) {
  .ea-footer-links nav ul.list-unstyled { grid-template-columns: 1fr; }
}

/* Tablet and up: revert to simple vertical lists (desktop unchanged) */
@media (min-width: 768px) {
  .ea-footer-links nav ul.list-unstyled { display: block; }
}

/* Add space before each footer section header on phones */
@media (max-width: 767.98px) {
  .ea-footer-links .row .col-md-3:not(:first-child) .footer__title {
    margin-top: .85rem;     /* visual break above the header */
    padding-top: .25rem;    /* a touch of breathing room */
  }
}

/* ===== Footer section header color (scoped) ===== */
.ea-footer-links .footer__title a {
  color: #e54242;              /* Brand accent (matches your site) */
  text-decoration: none;
  font-weight: 700;
  letter-spacing: .02em;       /* subtle readability bump */
}

.ea-footer-links .footer__title a:hover,
.ea-footer-links .footer__title a:focus {
  color: #c03636;              /* accessible hover/focus shade */
  text-decoration: underline;
}

/* Keep regular footer links as-is */
.ea-footer-links nav ul.list-unstyled > li > a {
  color: inherit;              /* do not inherit the header color */
}

/* Footer links: restore readable light text */
.ea-footer-links { color: #e8eef8; } /* base text color in this block */
.ea-footer-links nav ul.list-unstyled > li > a {
  color: inherit;                    /* will now be #e8eef8 */
}
.ea-footer-links nav ul.list-unstyled > li > a:hover,
.ea-footer-links nav ul.list-unstyled > li > a:focus {
  color: #ffffff;
  text-decoration: underline;
}

/* === Unified footer (wrapper version) === */
.eden-footer {
  --eden-footer-bg: #0f1320;
  --eden-footer-text: #e8eef8;
  --eden-footer-muted: rgba(232,238,248,.72);
  --eden-footer-divider: rgba(255,255,255,.12);
  --eden-footer-accent: #e54242;

  background: var(--eden-footer-bg);
  color: var(--eden-footer-text);
  border-top: 1px solid var(--eden-footer-divider);
}

/* Shared spacing */
.eden-footer .container { padding-top: 1.25rem; padding-bottom: .75rem; }

/* Links inherit the base styles */
.eden-footer .ea-footer-links a { color: var(--eden-footer-text); }
.eden-footer .ea-footer-links a:hover,
.eden-footer .ea-footer-links a:focus { color: #fff; text-decoration: underline; }

.eden-footer .footer__title a { color: var(--eden-footer-accent); }

/* Legal section blends in, with a subtle seam */
.eden-footer .eden-legal-bar {
  background: transparent;
  border-top: 1px solid var(--eden-footer-divider);
  margin-top: .5rem;
  padding-top: .75rem;
  color: var(--eden-footer-muted);
}

.eden-footer .eden-legal-bar a { color: var(--eden-footer-text); }
.eden-footer .eden-legal-badge {
  display: inline-block;
  padding: .175rem .5rem;
  border: 1px solid var(--eden-footer-divider);
  border-radius: 9999px;
  font-size: .825rem;
  letter-spacing: .02em;
  color: var(--eden-footer-text);
}
.eden-footer .eden-legal-links .sep { opacity: .6; padding: 0 .35rem; }
.eden-footer .eden-last-updated { color: var(--eden-footer-muted); }

/* Rhythm polish */
.eden-footer .list-unstyled > li + li { margin-top: .175rem; }

/* Gentle fade at the very top of the footer */
.eden-footer::before {
  content: "";
  display: block;
  height: 8px;
  background: linear-gradient(to bottom, rgba(0,0,0,.08), rgba(0,0,0,0));
}


/* ========================================================= */
/* START: Unified footer gradient + legal cardlets           */
/* ========================================================= */

/* 1) Bluish gradient background (works whether you used .eden-footer wrapper or not) */
.eden-footer,
.ea-footer-links,
.eden-legal-bar {
  --eden-grad-start: #183252;   /* top: deep blue */
  --eden-grad-mid:   #132844;   /* mid: richer */
  --eden-grad-end:   #0f1d35;   /* bottom: darkest */
  --eden-text:       #e8eef8;
  --eden-muted:      rgba(232,238,248,.74);
  --eden-divider:    rgba(255,255,255,.14);
  --eden-accent:     #e54242;

  background: linear-gradient(180deg,
              var(--eden-grad-start) 0%,
              var(--eden-grad-mid) 52%,
              var(--eden-grad-end) 100%);
  color: var(--eden-text);
}

/* Keep titles Eden-red, links readable */
.ea-footer-links .footer__title a { color: var(--eden-accent); }
.ea-footer-links a,
.eden-legal-bar a { color: var(--eden-text); }
.ea-footer-links a:hover,
.eden-legal-bar a:hover,
.ea-footer-links a:focus,
.eden-legal-bar a:focus { color: #fff; text-decoration: underline; }

/* 2) Turn the three legal columns into consistent "cardlets" — no markup changes needed */
.eden-legal-bar { border-top: 1px solid var(--eden-divider); margin-top: .5rem; padding-top: .75rem; }
.eden-legal-bar .row > [class*="col-"] {
  position: relative;
  background: rgba(255,255,255,.045);
  border: 1px solid var(--eden-divider);
  border-radius: .75rem;
  padding: .75rem .9rem;
  margin-bottom: .75rem;                 /* nice gap on mobile */
  box-shadow: 0 6px 18px rgba(0,0,0,.18);
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.eden-legal-bar .row > [class*="col-"]:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(0,0,0,.22);
  border-color: rgba(255,255,255,.22);
}
/* Focus-within ring for keyboard users */
.eden-legal-bar .row > [class*="col-"]:focus-within {
  outline: 2px solid var(--eden-accent);
  outline-offset: 2px;
}

/* Badge + small text polish stays coherent inside cards */
.eden-legal-badge {
  display: inline-block;
  padding: .2rem .55rem;
  border: 1px solid var(--eden-divider);
  border-radius: 9999px;
  font-size: .83rem;
  letter-spacing: .02em;
  color: var(--eden-text);
}
.eden-legal-links .sep { opacity: .6; padding: 0 .35rem; }
.eden-last-updated { color: var(--eden-muted); }

/* Tighten interior rhythm a bit */
.eden-legal-bar p { margin-bottom: 0; }
.eden-legal-bar nav a + a { margin-left: .35rem; }

/* Respect BS4 layout at md+ while keeping mobile niceties */
@media (min-width: 768px) {
  .eden-legal-bar .row > [class*="col-"] { margin-bottom: 0; }
}

/* Subtle fade where footer meets page content */
.eden-footer::before,
.ea-footer-links::before {
  content: "";
  display: block;
  height: 8px;
  background: linear-gradient(to bottom, rgba(0,0,0,.08), rgba(0,0,0,0));
}

/* ========================================================= */
/* END: Unified footer gradient + legal cardlets             */
/* ========================================================= */


/* ========================================================= */
/* START: Animated gradient edge for legal cardlets          */
/* ========================================================= */

/* 0) Base: make each legal column a self-contained layer */
.eden-legal-bar .row > [class*="col-"] {
  position: relative;
  isolation: isolate;                  /* prevents bleed into children */
  background: rgba(255,255,255,.045);
  border: 1px solid var(--eden-divider);
  border-radius: .85rem;
  padding: .9rem 1rem;
  box-shadow: 0 6px 18px rgba(0,0,0,.18);
}

/* 1) Animated conic-gradient ring (12s linear, Eden-red bias) */
@keyframes edenBorderSpin { to { transform: rotate(1turn); } }

.eden-legal-bar .row > [class*="col-"]::before {
  content: "";
  position: absolute;
  inset: -2px;                         /* sits just outside the card edge */
  border-radius: inherit;
  padding: 2px;                        /* ring thickness */
  background: conic-gradient(
    from 0deg,
    #e54242 0%,
    #ff8a65 12%,
    #ffd166 22%,
    #8bd1ff 38%,
    #4fc3f7 50%,
    #8bd1ff 62%,
    #ffd166 78%,
    #ff8a65 88%,
    #e54242 100%
  );
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;     /* show only the border ring */
  /* animation: edenBorderSpin 12s linear infinite; */
  z-index: 0;
  pointer-events: none;
}

/* Content stays above the animated ring */
.eden-legal-bar .row > [class*="col-"] > * { position: relative; z-index: 1; }

/* Hover lift (subtle) */
.eden-legal-bar .row > [class*="col-"]:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(0,0,0,.22);
}

/* 2) Kill the tiny red shimmer on the Disclaimer/Terms pill */
.eden-legal-badge {
  position: relative; z-index: 1;      /* sit above the ring cleanly */
  background: rgba(255,255,255,.045);
  background-image: none !important;   /* no inherited gradients, just in case */
  border: 1px solid var(--eden-divider);
  border-radius: 9999px;
  padding: .2rem .55rem;
  font-size: .83rem;
  letter-spacing: .02em;
  color: var(--eden-text);
  -webkit-background-clip: padding-box;
          background-clip: padding-box;
}

/* (Optional) If you ever see edge fringing in rare GPUs, un-comment: */
/* .eden-legal-bar .row > [class*="col-"] { backface-visibility: hidden; } */

/* ========================================================= */
/* END: Animated gradient edge for legal cardlets            */
/* ========================================================= */

/* Spacing between the three legal cardlets */
.eden-legal-bar .row > [class*="col-"] { margin-bottom: .75rem; }  /* fallback */

/* If the browser supports flex gap, use it (cleaner), and remove the fallback margin */
@supports (gap: 1rem) {
  .eden-legal-bar .row { gap: .75rem; }
  .eden-legal-bar .row > [class*="col-"] { margin-bottom: 0; }
}

/* Neutralize hover lift and any hover border tweaks */
.eden-legal-bar .row > [class*="col-"]:hover {
  transform: none !important;
  box-shadow: 0 6px 18px rgba(0,0,0,.18) !important;
  border-color: var(--eden-divider) !important;
}
/* Make sure the ring stays still even if a hover rule sneaks in later */
.eden-legal-bar .row > [class*="col-"]:hover::before { animation: none !important; }

/* Badge links: keep clean, accessible */
a.eden-legal-badge {
  text-decoration: none;
  position: relative;
  z-index: 1;
  background: rgba(255,255,255,.045);
  border: 1px solid var(--eden-divider);
  border-radius: 9999px;
  padding: .2rem .55rem;
  font-size: .83rem;
  letter-spacing: .02em;
  color: var(--eden-text);
  -webkit-background-clip: padding-box;
          background-clip: padding-box;
}
a.eden-legal-badge:hover { text-decoration: underline; }
a.eden-legal-badge:focus { outline: 2px solid var(--eden-accent); outline-offset: 2px; }

/* === Legal cardlets: no overflow, tighter fit === */

/* Kill any row gap that might blow past 12 columns */
.eden-legal-bar .row { gap: 0 !important; }

/* Card sizing & spacing (mobile gets vertical space only) */
.eden-legal-bar .row > [class*="col-"] {
  margin-bottom: .65rem;        /* mobile vertical spacing */
  padding: .75rem .85rem;       /* slightly tighter padding */
  border-radius: .75rem;
  overflow: hidden;             /* clip the border-ring flush to column */
}

/* At md+, use Bootstrap’s built-in gutters only (no extra margins) */
@media (min-width: 768px) {
  .eden-legal-bar .row > [class*="col-"] { margin-bottom: 0; }
}

/* Border ring stays static and slimmer so it never widens the column */
.eden-legal-bar .row > [class*="col-"]::before {
  inset: -1px;                  /* was -2px */
  padding: 1px;                 /* thinner ring */
  animation: none !important;   /* ensure static */
}

/* Keep “no hover motion” */
.eden-legal-bar .row > [class*="col-"]:hover {
  transform: none !important;
  box-shadow: 0 6px 18px rgba(0,0,0,.18) !important;
  border-color: var(--eden-divider) !important;
}
.eden-legal-bar .row > [class*="col-"]:hover::before { animation: none !important; }

/* Inline legal links with gentle spacing, no bullets */
.eden-legal-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .25rem .5rem;                /* safe: scoped inside the col */
}
.eden-legal-links .sep { display: none !important; }  /* hide any legacy separators */
.eden-legal-links span { color: var(--eden-muted); }

/* =========================================================
   FINAL PATCH: restore static glimmer + clean separation
   (wins cascade; leaves hover OFF; prevents overflow)
   ========================================================= */

/* Card body contrast so the ring reads clearly */
.eden-legal-bar .row > [class*="col-"] {
  background: rgba(255,255,255,.06);     /* a hair brighter than before */
  border: 1px solid rgba(255,255,255,.18);
  border-radius: .8rem;
  padding: .8rem .95rem;
  margin-bottom: .6rem;                  /* mobile */
  overflow: hidden;                      /* clip ring flush to edge */
  box-shadow: 0 6px 18px rgba(0,0,0,.18);
}

/* md+ keeps Bootstrap’s gutters only */
@media (min-width: 768px) {
  .eden-legal-bar .row > [class*="col-"] { margin-bottom: 0; }
  .eden-legal-bar .row { gap: 0 !important; }
}

/* Static glimmer ring (no spin), slightly thicker & brighter */
.eden-legal-bar .row > [class*="col-"]::before {
  content: "";
  position: absolute;
  inset: 0;                               /* inside the card edge */
  border-radius: inherit;
  padding: 2px;                           /* ring thickness */
  background:
    conic-gradient(
      from 0deg,
      #e54242 0%,
      #ff8a65 12%,
      #ffd166 22%,
      #8bd1ff 38%,
      #4fc3f7 50%,
      #8bd1ff 62%,
      #ffd166 78%,
      #ff8a65 88%,
      #e54242 100%
    );
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  animation: none !important;             /* ensure static */
  opacity: .9;                            /* make the ring read */
  z-index: 0;
  pointer-events: none;
}

/* Freeze hover (no lift, no shadow change) */
.eden-legal-bar .row > [class*="col-"]:hover {
  transform: none !important;
  box-shadow: 0 6px 18px rgba(0,0,0,.18) !important;
  border-color: rgba(255,255,255,.18) !important;
}
.eden-legal-bar .row > [class*="col-"]:hover::before { animation: none !important; }

/* Badge as link (keep it neat) */
a.eden-legal-badge {
  text-decoration: none;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 9999px;
  padding: .2rem .55rem;
  font-size: .83rem;
  letter-spacing: .02em;
  color: var(--eden-text, #e8eef8);
}
a.eden-legal-badge:hover { text-decoration: underline; }
a.eden-legal-badge:focus  { outline: 2px solid var(--eden-accent, #e54242); outline-offset: 2px; }

	