{
CF
}
Code
Fronts
Back to CSS Hero Sections
Gradient Mesh
Pure CSS
Edit any tab — preview updates live
CSS
HTML
Reset
Copy
.hs-mesh { width: 100%; min-height: clamp(220px, 28vh, 100vh); padding: clamp(20px, 4vh, 80px) clamp(16px, 4vw, 40px); background: radial-gradient(35% 40% at 15% 25%, rgba(124,108,255,0.45), transparent 70%), radial-gradient(35% 40% at 85% 30%, rgba(255,108,138,0.40), transparent 70%), radial-gradient(45% 50% at 50% 90%, rgba(46,184,138,0.35), transparent 70%), radial-gradient(35% 35% at 80% 80%, rgba(245,168,74,0.30), transparent 70%), #0a0a14; display: flex; align-items: center; justify-content: center; font-family: system-ui, sans-serif; color: #fff; text-align: center; animation: hs-mesh-drift 14s ease-in-out infinite alternate; } .hs-mesh-inner { max-width: 640px; display: flex; flex-direction: column; align-items: center; gap: 12px; } .hs-mesh h1 { margin: 0; font-size: clamp(22px, 5vw, 60px); font-weight: 800; line-height: 1.05; letter-spacing: -0.03em; } .hs-mesh p { margin: 0; font-size: clamp(11px, 1.6vw, 17px); color: rgba(255,255,255,0.85); line-height: 1.5; } .hs-mesh-cta { display: inline-block; padding: 9px 20px; border-radius: 8px; background: rgba(255,255,255,0.95); color: #0e0e16; font-size: clamp(11px, 1.5vw, 14px); font-weight: 700; text-decoration: none; margin-top: 4px; transition: transform 0.15s, box-shadow 0.15s; } .hs-mesh-cta:hover { transform: translateY(-1px); box-shadow: 0 8px 24px rgba(255,255,255,0.2); } @keyframes hs-mesh-drift { 0% { background-position: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0 0; } 100% { background-position: 4% 3%, -4% 2%, 2% -3%, -3% -2%, 0 0; } } @media (prefers-reduced-motion: reduce) { .hs-mesh { animation: none; } }
<section class="hs-mesh"> <div class="hs-mesh-inner"> <h1>Beautifully simple.</h1> <p>The future of design tooling — fast, opinionated, and ready to ship.</p> <a class="hs-mesh-cta" href="#">Start free trial</a> </div> </section>
Live preview
Ready