/* ==========================================
   AURIA FOOTER – PREMIUM (MATCH HEADER)
   Scope: .auria-footer only (no global leaks)
   Non-sticky by design
   ========================================== */

/* Footer-local fallbacks in case :root tokens are missing */
.auria-footer{
  --af-bg:   var(--auria-bg,  #0b1220);
  --af-bg2:  var(--auria-bg2, #0e1628);
  --af-surface:  var(--auria-surface,  rgba(255,255,255,0.05));
  --af-surface2: var(--auria-surface2, rgba(255,255,255,0.08));
  --af-border:   var(--auria-border,   rgba(255,255,255,0.10));
  --af-text:     var(--auria-text,     #e6ebf2);
  --af-muted:    var(--auria-muted,    #9aa4b2);
  --af-radius:   var(--auria-radius,   16px);
  --af-shadow:   var(--auria-shadow,   0 18px 40px rgba(0,0,0,.35));
}

/* Footer root */
.auria-footer{
  position: relative;
  z-index: 1;
  color: var(--af-text);

  /* MATCH header gradient */
  background: linear-gradient(180deg, var(--af-bg), var(--af-bg2));

  /* Frame consistency */
  border-top: 1px solid var(--af-border);
  box-shadow: 0 -18px 40px rgba(0,0,0,.30);

  /* ensure overlays don’t spill */
  overflow: hidden;

  /* explicitly non-sticky */
  top: auto !important;
  bottom: auto !important;
}

/* Soft highlight overlay (same “glass depth” language as header) */
.auria-footer::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(1000px 380px at 20% 0%, rgba(255,255,255,0.06), transparent 55%),
    radial-gradient(900px 360px at 80% 10%, rgba(255,255,255,0.04), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,0.05), transparent 28%);
  opacity: .9;
}

/* Inner container (align to header container philosophy) */
.auria-footer__inner{
  position: relative;
  max-width: 1240px;   /* matches .auria-container max-width */
  margin: 0 auto;
  padding: 64px 16px 22px;
}

/* Grid */
.auria-footer__grid{
  display:grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  gap: 56px;
  align-items:start;
}

/* Brand */
.auria-footer__logo{
  display:inline-flex;
  align-items:center;
  text-decoration:none;
  color: var(--af-text);
  font-size: 22px;
  font-weight: 750;
  letter-spacing: .2px;
  margin-bottom: 12px;
}

.auria-footer__desc{
  margin: 0 0 18px 0;
  max-width: 40ch;
  color: rgba(230,235,242,0.72); /* match header readability */
  font-size: 15px;
  line-height: 1.75;
}

/* Titles (match header typography cues) */
.auria-footer__title{
  margin: 0 0 14px 0;
  font-size: 16px;
  font-weight: 750;
  letter-spacing: .2px;
  color: var(--af-text);
  position: relative;
}

/* Subtle underline: NOT gold, to avoid “accent confusion” */
.auria-footer__title::after{
  content:"";
  display:block;
  width: 34px;
  height: 2px;
  margin-top: 10px;
  background: linear-gradient(90deg, rgba(255,255,255,0.22), transparent);
}

/* Lists */
.auria-footer__list{
  list-style:none;
  margin:0;
  padding:0;
}

.auria-footer__list li{
  margin: 10px 0;
}

/* Link rows: clean + premium hover */
.auria-footer__list a{
  display:inline-flex;
  align-items:center;
  gap: 10px;

  color: rgba(230,235,242,0.78);
  text-decoration:none;

  font-size: 14px;
  line-height: 1.4;

  transition: transform .2s ease, color .2s ease, background .2s ease, border-color .2s ease;
}

/* Minimal dot marker (NOT gold) */
.auria-footer__list a::before{
  content:"";
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: rgba(255,255,255,0.20);
  transform: translateY(1px);
}

/* Hover: same language as header pills (surface hover) */
.auria-footer__list a:hover{
  color: var(--af-text);
  transform: translateX(2px);
}

.auria-footer__list a:hover::before{
  background: rgba(255,255,255,0.38);
}

/* Social buttons: match header icon button style (surface + border + radius) */
.auria-footer__social{
  display:flex;
  align-items:center;
  gap: 10px;
  margin-top: 6px;
}

.auria-footer__social a{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  width:44px;
  height:44px;

  border-radius: 14px; /* match .auria-iconbtn radius */
  border: 1px solid var(--af-border);
  background: var(--af-surface);

  color: var(--af-text);
  text-decoration:none;

  transition: transform .2s ease, background .2s ease, border-color .2s ease;
}

.auria-footer__social a:hover{
  background: var(--af-surface2);
  transform: translateY(-1px);
  border-color: rgba(255,255,255,0.18);
}

/* Bottom bar */
.auria-footer__bottom{
  margin-top: 46px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,0.08); /* like header dividers */
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 16px;
}

.auria-footer__copy{
  color: rgba(154,164,178,0.95); /* uses header muted tone */
  font-size: 13px;
  line-height: 1.4;
}

/* Responsive */
@media (max-width: 1024px){
  .auria-footer__inner{
    padding: 52px 16px 20px;
  }

  .auria-footer__grid{
    gap: 40px;
  }

  .auria-footer__desc{
    max-width: 48ch;
  }
}

@media (max-width: 767px){
  .auria-footer__inner{
    padding: 44px 16px 18px;
  }

  .auria-footer__grid{
    grid-template-columns: 1fr;
    gap: 26px;
  }

  .auria-footer__title{
    margin-bottom: 12px;
  }

  .auria-footer__list li{
    margin: 9px 0;
  }

  .auria-footer__bottom{
    margin-top: 34px;
    flex-direction: column;
    align-items: flex-start;
  }
}

.auria-footer__logoImg{
  max-height:44px;
  width:auto;
  display:block;
}

/* Stronger readable text (fix “pale” columns) */
.auria-footer__desc{
  color: rgba(230,235,242,0.82);
}

.auria-footer__list a{
  color: rgba(230,235,242,0.82);
}

.auria-footer__list a:hover{
  color: rgba(255,255,255,0.98);
}

/* Make dot marker slightly brighter */
.auria-footer__list a::before{
  background: rgba(255,255,255,0.30);
}
.auria-footer__list a:hover::before{
  background: rgba(255,255,255,0.55);
}

/* Social buttons: match header icon style */
.auria-footer__socialLink{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,0.14);
  background: rgba(255,255,255,0.06);
  transition: transform .2s ease, background .2s ease, border-color .2s ease;
}

.auria-footer__socialLink:hover{
  background: rgba(255,255,255,0.10);
  transform: translateY(-1px);
  border-color: rgba(255,255,255,0.22);
}

/* SVG icon styling (stroke-like, premium) */
.auria-footer__icon{
  width:18px;
  height:18px;
  fill: none;
  stroke: rgba(230,235,242,0.95);
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.auria-footer__socialLink:hover .auria-footer__icon{
  stroke: rgba(255,255,255,0.98);
}

/* ==========================================
   FIX: Strong footer contrast (override Elementor kit/theme)
   Put at the very END of auria-footer.css
   ========================================== */

.auria-footer,
.auria-footer p,
.auria-footer small,
.auria-footer li,
.auria-footer .auria-footer__title{
  color: rgba(230,235,242,0.92) !important;
}

/* Links */
.auria-footer a,
.auria-footer a:visited{
  color: rgba(230,235,242,0.84) !important;
  opacity: 1 !important;
  filter: none !important;
  text-decoration: none !important;
}

.auria-footer a:hover{
  color: rgba(255,255,255,0.98) !important;
}

/* Description slightly softer, but still readable */
.auria-footer .auria-footer__desc{
  color: rgba(230,235,242,0.82) !important;
}

/* Lists (menu items) – keep solid */
.auria-footer .auria-footer__list a{
  color: rgba(230,235,242,0.86) !important;
}

.auria-footer .auria-footer__list a::before{
  background: rgba(255,255,255,0.34) !important;
}

.auria-footer .auria-footer__list a:hover::before{
  background: rgba(255,255,255,0.60) !important;
}

/* Bottom copyright muted but readable */
.auria-footer .auria-footer__copy{
  color: rgba(154,164,178,0.95) !important;
}