/* ===== Hero background pakai assets/background.jpg ===== */
.hero-bg{
  background-image:url("../assets/background.jpg");
  background-size:cover;
  background-position:center;
}

/* ===== WhatsApp Float Pulse ===== */
.wa-float{ position:fixed; }
.wa-pulse{
  position:absolute;
  width:100%;
  height:100%;
  border-radius:999px;
  animation: waPulse 1.8s infinite;
  background: rgba(37, 211, 102, .25);
  z-index:-1;
}
@keyframes waPulse{
  0%{ transform:scale(1); opacity:.9; }
  70%{ transform:scale(1.5); opacity:0; }
  100%{ transform:scale(1.5); opacity:0; }
}

/* ===== WhatsApp Modal ===== */
.wa-modal{ position:fixed; inset:0; z-index:200; }
.wa-modal-backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.45); backdrop-filter: blur(2px); }
.wa-modal-card{
  position:relative;
  width:min(520px, calc(100% - 32px));
  margin: 90px auto 0 auto;
  background:#fff;
  border-radius:18px;
  box-shadow:0 18px 60px rgba(0,0,0,.25);
  overflow:hidden;
}
.wa-modal-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:16px 16px 10px 16px;
  border-bottom:1px solid #eee;
}
.wa-x{
  width:38px; height:38px;
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:12px;
  background:#f3f4f6;
  border:1px solid #e5e7eb;
}
.wa-modal-body{ padding:14px 16px 16px 16px; display:flex; flex-direction:column; gap:10px; }
.wa-action{
  display:flex; gap:12px;
  padding:12px 12px;
  border:1px solid #e5e7eb;
  border-radius:14px;
  text-decoration:none;
  cursor:pointer;
  transition:.2s ease;
}
.wa-action:hover{ transform:translateY(-1px); box-shadow:0 10px 24px rgba(0,0,0,.08); border-color:#cbd5e1; }
.wa-ico{
  width:42px; height:42px;
  border-radius:14px;
  display:flex; align-items:center; justify-content:center;
  background:#ecfdf5; color:#16a34a;
  flex:0 0 auto;
}
.wa-title{ display:block; font-weight:800; color:#111827; }
.wa-sub{ display:block; font-size:12px; color:#6b7280; margin-top:2px; }
.wa-note{
  margin-top:6px;
  display:flex; gap:10px; align-items:flex-start;
  padding:12px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:14px;
  color:#334155;
}