/* ============================
   Footer Modern (Lux consistent)
   ============================ */

.footer-modern{
  position: relative;
  margin-top: 4rem;
  padding-top: 4.2rem !important;
  padding-bottom: 3.8rem !important;
  background:
    radial-gradient(900px 500px at 20% 10%, rgba(200,164,93,.12), transparent 60%),
    radial-gradient(900px 500px at 80% 30%, rgba(74,163,255,.10), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.00));
  border-top: 1px solid rgba(255,255,255,.10);
  overflow: hidden;
}

.footer-modern::before{
  content:"";
  position:absolute;
  inset:-2px;
  pointer-events:none;
  background:
    radial-gradient(650px 260px at 65% 25%, rgba(123,227,214,.10), transparent 60%),
    radial-gradient(650px 260px at 15% 65%, rgba(200,164,93,.10), transparent 60%);
  opacity:.85;
}

.footer-modern .container{
  position: relative;
  z-index: 1;
}

.footer-modern .brand-logo{
  width: 46px;
  height: 46px;
  object-fit: cover;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.06);
  box-shadow: 0 12px 36px rgba(0,0,0,.35);
}

.footer-modern .brand-badge{
  width: 46px;
  height: 46px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight: 900;
  letter-spacing: .5px;
  color: rgba(255,255,255,.94);
  border: 1px solid rgba(200,164,93,.35);
  background: rgba(200,164,93,.12);
  box-shadow: 0 12px 36px rgba(0,0,0,.35);
}

.footer-modern .fw-semibold{
  color: rgba(255,255,255,.92);
  font-weight: 900 !important;
  letter-spacing: -0.01em;
}

.footer-modern .text-muted,
.footer-modern small.text-muted,
.footer-modern .small.text-muted{
  color: rgba(255,255,255,.68) !important;
}

.footer-modern a.text-muted{
  color: rgba(255,255,255,.70) !important;
  font-weight: 700;
  border-radius: 12px;
  padding: .35rem .55rem;
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  transition: transform .2s ease, background-color .2s ease, color .2s ease;
}

.footer-modern a.text-muted:hover{
  color: rgba(255,255,255,.94) !important;
  background: rgba(255,255,255,.08);
  transform: translateY(-1px);
}

.footer-modern a.text-muted::before{
  content:"";
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: rgba(200,164,93,.75);
  box-shadow: 0 0 0 3px rgba(200,164,93,.12);
  opacity: .65;
}

.footer-modern a.text-muted:hover::before{
  opacity: .95;
}

.footer-modern .small{
  letter-spacing: .15px;
}

/* ✅ FIX: media query ditutup dengan benar */
@media (max-width: 991px){
  .footer-modern{
    margin-top: 3rem;
    padding-top: 3.4rem !important;
    padding-bottom: 3.2rem !important;
  }
}

/* =========================================================
   OVERRIDE style.css LIGHT THEME (Fix kontras & keterbacaan)
   Letakkan di PALING BAWAH koperasi-lux-shell.css
   ========================================================= */

body.public-site{
  background:
    radial-gradient(1200px 600px at 20% 10%, rgba(74,163,255,.14), transparent 60%),
    radial-gradient(900px 500px at 80% 20%, rgba(123,227,214,.14), transparent 55%),
    radial-gradient(900px 500px at 60% 85%, rgba(200,164,93,.12), transparent 60%),
    #070A12 !important;
  color: rgba(255,255,255,.90) !important;
}

body.public-site::before{
  display:none !important;
}

body.public-site h1,
body.public-site h2,
body.public-site h3,
body.public-site h4,
body.public-site h5{
  color: rgba(255,255,255,.96) !important;
}

/* Reveal versi stable (butuh reveal.js untuk nambah class is-visible) */
body.public-site .reveal{
  animation: none !important;
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .7s cubic-bezier(.2,.8,.2,1), transform .7s cubic-bezier(.2,.8,.2,1);
}
body.public-site .reveal.is-visible{
  opacity: 1;
  transform: translateY(0);
}

body.public-site .text-muted{ color: rgba(255,255,255,.72) !important; }
body.public-site .text-secondary{ color: rgba(255,255,255,.72) !important; }
body.public-site .text-white-50{ color: rgba(255,255,255,.78) !important; }

.hero-slider .hero-overlay{
  background:
    linear-gradient(90deg, rgba(7,10,18,.92) 0%, rgba(7,10,18,.82) 45%, rgba(7,10,18,.60) 70%, rgba(7,10,18,.74) 100%),
    radial-gradient(900px 500px at 20% 25%, rgba(200,164,93,.20), transparent 55%),
    radial-gradient(900px 500px at 80% 20%, rgba(74,163,255,.16), transparent 55%) !important;
}

.hero-content .lead{ color: rgba(255,255,255,.80) !important; }

.badge-soft{
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  color: rgba(255,255,255,.92) !important;
}

.service-card{
  background: linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.04)) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 18px 50px rgba(0,0,0,.32) !important;
}
.service-card p{ color: rgba(255,255,255,.76) !important; }

.service-tag{
  border: 1px solid rgba(200,164,93,.30) !important;
  background: rgba(200,164,93,.10) !important;
  color: rgba(255,255,255,.92) !important;
}

.soft-surface,
.card-ghost,
.card-elevated{
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  box-shadow: 0 18px 60px rgba(0,0,0,.35) !important;
}

.soft-surface .text-muted{ color: rgba(255,255,255,.72) !important; }

.footer-modern{
  background:
    radial-gradient(900px 500px at 20% 10%, rgba(200,164,93,.12), transparent 60%),
    radial-gradient(900px 500px at 80% 30%, rgba(74,163,255,.10), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.00)) !important;
  border-top: 1px solid rgba(255,255,255,.10) !important;
}
.footer-modern .text-muted{ color: rgba(255,255,255,.68) !important; }

.main-nav{
  background: rgba(7,10,18,.58) !important;
  border-bottom: 1px solid rgba(255,255,255,.10) !important;
  box-shadow: 0 16px 60px rgba(0,0,0,.35) !important;
}
.main-nav .nav-link{ color: rgba(255,255,255,.78) !important; }