.hero { background: linear-gradient(135deg, rgba(168, 85, 247, 0.08) 0%, rgba(236, 72, 153, 0.08) 50%, rgba(168, 85, 247, 0.08) 100%); padding: var(--space-12) 0 var(--space-8); text-align: center; position: relative; overflow: hidden; } .hero::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: radial-gradient(circle at 20% 80%, rgba(168, 85, 247, 0.1) 0%, transparent 50%), radial-gradient(circle at 80% 20%, rgba(236, 72, 153, 0.1) 0%, transparent 50%); pointer-events: none; } .hero-content { position: relative; z-index: 1; } .hero h1 { font-family: var(--font-display); font-size: clamp(2rem, 5vw, 3.5rem); font-weight: 900; margin-bottom: var(--space-4); background: linear-gradient(135deg, var(--color-primary-600) 0%, var(--color-accent-500) 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; line-height: 1.1; letter-spacing: -0.02em; } .hero .subtitle { font-size: var(--text-lg); color: var(--color-neutral-600); margin-bottom: var(--space-6); max-width: 700px; margin-left: auto; margin-right: auto; font-weight: 500; } .cta-group { display: flex; gap: var(--space-4); justify-content: center; flex-wrap: wrap; margin-bottom: var(--space-8); } .hero-stats { display: flex; justify-content: center; gap: var(--space-6); flex-wrap: wrap; } .hero-stat { text-align: center; } .hero-stat-number { font-family: var(--font-display); font-size: var(--text-xl); font-weight: 800; color: var(--color-primary-600); display: block; } .hero-stat-label { font-size: var(--text-xs); color: var(--color-neutral-500); font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; } .section { padding: var(--space-12) 0; } .section-header { text-align: center; margin-bottom: var(--space-8); } .section-title { font-family: var(--font-display); font-size: clamp(1.5rem, 3vw, 2.5rem); font-weight: 800; margin-bottom: var(--space-3); color: var(--color-neutral-900); line-height: 1.2; } .section-description { font-size: var(--text-lg); color: var(--color-neutral-600); max-width: 600px; margin: 0 auto; } .features-section { background: linear-gradient(135deg, var(--color-primary-50) 0%, var(--color-accent-50) 100%); } .features-grid { display: grid; gap: var(--space-6); } @media (min-width: 768px) { .features-grid { grid-template-columns: repeat(2, 1fr); } } @media (min-width: 1024px) { .features-grid { grid-template-columns: repeat(4, 1fr); } } .feature-card { background: white; padding: var(--space-6); border-radius: var(--radius-xl); text-align: center; box-shadow: var(--shadow-sm); border: 1px solid var(--color-neutral-200); transition: all var(--duration-normal) var(--ease-out); } .feature-card:hover { transform: translateY(-2px); box-shadow: var(--shadow-md); } .feature-icon { width: 56px; height: 56px; background: linear-gradient(135deg, var(--color-primary-500) 0%, var(--color-accent-400) 100%); color: white; border-radius: var(--radius-xl); display: flex; align-items: center; justify-content: center; margin: 0 auto var(--space-3); box-shadow: var(--shadow-purple-sm); } .feature-title { font-family: var(--font-display); font-size: var(--text-lg); font-weight: 700; margin-bottom: var(--space-2); color: var(--color-neutral-900); } .feature-description { color: var(--color-neutral-600); line-height: 1.6; font-size: var(--text-sm); } .stats-section { background: var(--color-neutral-900); color: white; } .stats-grid { display: grid; gap: var(--space-6); text-align: center; } @media (min-width: 768px) { .stats-grid { grid-template-columns: repeat(2, 1fr); } } @media (min-width: 1024px) { .stats-grid { grid-template-columns: repeat(4, 1fr); } } .stat-item { padding: var(--space-4); } .stat-number { font-family: var(--font-display); font-size: clamp(1.5rem, 4vw, 2.5rem); font-weight: 900; color: var(--color-accent-400); display: block; margin-bottom: var(--space-1); } .stat-label { color: var(--color-neutral-300); font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; font-size: var(--text-xs); } .cta-section { background: linear-gradient(135deg, var(--color-primary-600) 0%, var(--color-accent-500) 100%); color: white; text-align: center; padding: var(--space-12) 0; } .cta-content h2 { font-family: var(--font-display); font-size: clamp(1.5rem, 3vw, 2rem); font-weight: 800; margin-bottom: var(--space-3); } .cta-content p { font-size: var(--text-lg); margin-bottom: var(--space-6); opacity: 0.9; }