/* ============================================
   HERO
   ============================================ */
.hero{padding:5rem 0 3rem;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;top:-50%;right:-20%;width:600px;height:600px;background:radial-gradient(circle,var(--primary-light) 0%,transparent 70%);opacity:.3;filter:blur(60px);pointer-events:none}
.hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;position:relative}
.hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-alt);border:1px solid var(--border);border-radius:100px;font-size:.85rem;font-weight:500;color:var(--text-muted);margin-bottom:1.25rem}
.hero-badge::before{content:"";width:8px;height:8px;background:var(--success);border-radius:50%;box-shadow:0 0 0 4px color-mix(in srgb,var(--success) 20%,transparent)}
.hero h1{font-size:clamp(2rem,5vw,3.5rem);font-weight:900;line-height:1.1;letter-spacing:-.03em;margin-bottom:1rem}
.hero h1 span{background:linear-gradient(135deg,var(--primary),var(--accent));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero p{font-size:1.15rem;color:var(--text-muted);margin-bottom:2rem;max-width:520px}
.hero-cta{display:flex;gap:.75rem;flex-wrap:wrap}
.hero-stats{display:flex;gap:2rem;margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--border)}
.stat-num{font-size:1.8rem;font-weight:800;color:var(--text);line-height:1}
.stat-label{font-size:.85rem;color:var(--text-muted);margin-top:.25rem}
.hero-visual{position:relative;aspect-ratio:1;max-width:500px;margin:0 auto}
.hero-card{position:absolute;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-lg);animation:float 6s ease-in-out infinite}
.hero-card-1{top:10%;left:5%;width:220px;animation-delay:0s}
.hero-card-2{top:45%;right:0;width:200px;animation-delay:-2s}
.hero-card-3{bottom:10%;left:15%;width:240px;animation-delay:-4s}
.hero-card-icon{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;color:#fff;margin-bottom:.75rem;font-size:1.2rem}
.hero-card-title{font-weight:700;font-size:.95rem;margin-bottom:.25rem}
.hero-card-sub{font-size:.8rem;color:var(--text-muted)}
.hero-card-bar{height:6px;background:var(--border);border-radius:100px;margin-top:.75rem;overflow:hidden}
.hero-card-bar-fill{height:100%;border-radius:100px;background:linear-gradient(90deg,var(--primary),var(--accent))}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.5rem;border-radius:10px;font-weight:600;font-size:.95rem;transition:all .2s;white-space:nowrap}
.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;box-shadow:0 4px 14px color-mix(in srgb,var(--primary) 40%,transparent)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px color-mix(in srgb,var(--primary) 50%,transparent)}
.btn-secondary{background:var(--bg-alt);color:var(--text);border:1px solid var(--border)}
.btn-secondary:hover{background:var(--border-light);border-color:var(--primary)}
