/* ===== CAMPAIGN MEWAH - PILIHAN 3 KOTAK 3D + KILAU EMAS ===== */
body.theme-program #wrapper .flat-spacing .container .row,
body.theme-program #wrapper .flat-spacing .container .row > div,
body.theme-program #wrapper .campaign-card,
body.theme-program #wrapper .campaign-img img,
body.theme-program #wrapper .campaign-title{
  all:unset !important;
  display:revert !important;
}

/* HERO - KOTAK-KOTAK MENARIK GA POLOS */
.hero-campaign{
  position:relative !important;
  padding:70px 0 !important;
  text-align:center !important;
  color:#fff !important;
  overflow:hidden !important;
  isolation:isolate !important;
  background:#070d1f !important;
}
.hero-campaign::before{
  content:'' !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  background:
    repeating-linear-gradient(0deg, transparent, transparent 40px, rgba(212,175,55,0.07) 40px, rgba(212,175,55,0.07) 41px),
    repeating-linear-gradient(90deg, transparent, transparent 40px, rgba(212,175,55,0.07) 40px, rgba(212,175,55,0.07) 41px),
    radial-gradient(800px at 20% 20%, rgba(30,58,138,0.85) 0%, transparent 60%),
    radial-gradient(500px at 80% 80%, rgba(212,175,55,0.32) 0%, transparent 70%),
    linear-gradient(135deg, #070d1f 0%, #0f172a 100%) !important;
}
.hero-campaign::after{
  content:'' !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  opacity:0.14 !important;
  background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M30 0 L60 30 L30 60 L0 30 Z' fill='none' stroke='%23FFD700' stroke-width='0.7'/%3E%3Ccircle cx='30' cy='30' r='1.5' fill='%23D4AF37'/%3E%3C/svg%3E") !important;
  background-size:60px 60px !important;
}
.hero-campaign .hero-glow{
  position:absolute !important;
  width:500px !important; height:500px !important;
  right:-120px !important; top:-80px !important;
  background:radial-gradient(circle, rgba(212,175,55,0.35) 0%, transparent 70%) !important;
  filter:blur(30px) !important; z-index:1 !important; pointer-events:none !important;
}
.hero-campaign .hero-line-top{position:absolute !important; top:0 !important; left:0 !important; right:0 !important; height:1px !important; background:linear-gradient(90deg, transparent, rgba(212,175,55,0.6), transparent) !important; z-index:2 !important}
.hero-campaign .hero-line-bottom{position:absolute !important; bottom:0 !important; left:0 !important; right:0 !important; height:1px !important; background:linear-gradient(90deg, transparent, rgba(212,175,55,0.25), transparent) !important; z-index:2 !important}
.hero-campaign .container{position:relative !important; z-index:3 !important;}
.hero-campaign h1{font-family:'Playfair Display',serif !important; font-size:42px !important; font-weight:800 !important; margin-bottom:14px !important; color:#fff !important;}
.hero-campaign h1 span{background:linear-gradient(135deg,#D4AF37,#FFD700) !important; -webkit-background-clip:text !important; -webkit-text-fill-color:transparent !important; filter:drop-shadow(0 2px 12px rgba(212,175,55,0.4)) !important;}
.hero-campaign p{font-size:15px !important; color:#cbd5e1 !important; max-width:600px !important; margin:0 auto !important;}

/* GRID */
body.theme-program .campaign-grid{display:grid !important; grid-template-columns:repeat(auto-fill,minmax(320px,1fr)) !important; gap:32px !important; margin-top:50px !important;}
body.theme-program .campaign-card-mewah{background:#fff !important; border-radius:24px !important; overflow:hidden !important; box-shadow:0 10px 40px rgba(15,23,42,0.08) !important; border:1px solid #E8DEC2 !important; max-width:100% !important; display:block !important;}
body.theme-program .campaign-img-mewah{height:220px !important; border-radius:18px !important; margin:10px !important; overflow:hidden !important; position:relative !important}
body.theme-program .campaign-img-mewah img{width:100% !important; height:100% !important; object-fit:cover !important; border-radius:18px !important}
body.theme-program .campaign-badge{position:absolute !important; top:16px !important; left:16px !important; background:linear-gradient(135deg, #d4af37, #b8941f) !important; color:#0f172a !important; padding:6px 16px !important; border-radius:50px !important; font-size:11px !important; font-weight:700 !important; z-index:2 !important}
.lazyload{opacity:0 !important}.lazyloaded{opacity:1 !important; transition:opacity 300ms !important}