/* ═══ GATED CONTENT ═══ */
.gated-wrap { margin-top: 48px; }
.gated-content {
  background: var(--bg-card); border: 1px solid var(--border-light);
  border-radius: var(--radius); overflow: hidden;
  box-shadow: var(--shadow-sm);
  position: relative;
}
.gated-top { padding: 36px 36px 20px; }
.gated-top h3 { margin-bottom: 10px; }
.gated-top p { color: var(--text-secondary); font-size: 0.92rem; }
.gated-blur {
  padding: 0 36px 36px;
  filter: blur(5px); user-select: none; pointer-events: none; opacity: 0.45;
}
.gated-blur p { font-size: 0.88rem; color: var(--text-secondary); margin-bottom: 8px; }
.gated-overlay {
  position: absolute; bottom: 0; left: 0; right: 0; height: 300px;
  background: linear-gradient(to bottom, transparent, var(--bg-card) 65%);
  display: flex; flex-direction: column; align-items: center; justify-content: flex-end;
  padding-bottom: 36px; gap: 14px;
}
.gated-lock {
  width: 52px; height: 52px; border-radius: 50%;
  background: var(--accent-soft); border: 2px solid rgba(108,63,160,0.15);
  display: flex; align-items: center; justify-content: center;
  animation: lockBounce 2s ease-in-out infinite;
}
@keyframes lockBounce {
  0%, 100% { transform: translateY(0); } 50% { transform: translateY(-6px); }
}
.gated-overlay p { font-size: 0.9rem; color: var(--text-secondary); }
.gated-overlay strong { color: var(--accent); }
