31 CSS Hero Sections

31 hand-coded CSS hero section templates for landing pages — artisanal SaaS with serif type + terracotta CTA, B2B split-column with brutalist dashboard mockup, gradient mesh in the Stripe/Linear/Vercel visual language, glass-over-aurora for wellness/luxury, vintage-CRT terminal for DevOps and developer tools, Memphis-modern shape-loop that dodges real video licensing, Mediterranean social-proof with star row + press logos, 1950s-diner animated headline with per-word stagger, Sahara-safari before/after slider driven by native <input type="range">, cabin-retreat sticky-scroll indicator, twenty more editorial + product-shot + parallax + brutalist heroes, and a Liquid Glass mouse-tracking refraction hero whose cursor-following lens magnifies and warps the headline beneath it (Apple iOS 26 / macOS Tahoe aesthetic). Every hero is a real semantic <section> with a single <h2>, a single dominant CTA, and a supporting quiet-button — the composition that Baymard landing-page research validates for above-the-fold conversion. Scoped under .hs-NN for no-collision pasting, prefers-reduced-motion guarded with a static-poster fallback per demo, framework-agnostic.

29 pure CSS2 light JSPublished

Related22 CSS Feature Sections21 CSS Pricing Sections22 CSS Headers20 CSS Diagonal Sections12 CSS Full Page Sections

Centered Classic — preview
01 / 31Pure CSS

Centered Classic

The artisanal SaaS hero — eyebrow, serif headline, prose subhead, a single deep-terracotta primary CTA flanked by a quiet ghost button. Sage on warm cream, the small-batch tools-for-makers aesthetic.

Published

Split with Mockup — preview
02 / 31Pure CSS

Split with Mockup

Two-column hero with copy left, an SVG-painted dashboard mockup right. Rust red and ochre on deep brown — the heritage industrial / workshop aesthetic.

Published

Gradient Mesh — preview
03 / 31Pure CSS

Gradient Mesh

Tropical mesh gradient — overlapping radial blobs in mango, papaya, and dragon fruit on a warm coral base. The Stripe / Linear gradient hero, but turned up to a sunset.

Published

Glass over Aurora — preview
04 / 31Pure CSS

Glass over Aurora

Frosted-glass card floating over a calm spa aurora — pale mint, champagne gold, soft rose. The wellness / luxury beauty editorial treatment.

Published

Terminal Dev Hero — preview
05 / 31Pure CSS

Terminal Dev Hero

Vintage-CRT terminal hero — phosphor green text + amber prompt on a warm beige paper backdrop. The 1970s computing aesthetic for a modern dev tool.

Published

Video Loop Hero — preview
06 / 31Pure CSS

Video Loop Hero

Memphis-modern video-pretender — geometric SVG shapes oscillating like a video loop, pinned behind cobalt-on-bone copy with a lemon CTA. No real video, no licensing.

Published

Social Proof Hero — preview
07 / 31Pure CSS

Social Proof Hero

Mediterranean-tone social-proof hero — star rating pill above the headline, customer logo wall on warm cream, olive serif headlines with aubergine accents.

Published

Animated Headline — preview
08 / 31Pure CSS

Animated Headline

1950s-diner animated headline — words lift into view with staggered delay, retro coral and ivory on jet black, neon-script CTA. Flips between two taglines on a loop.

Published

Before/After Hero — preview
09 / 31Light JS

Before/After Hero

Native &lt;input type="range"&gt; drives a CSS clip-path slider that wipes between a "before" desert scene and an "after" lush scene. Burnt orange + petrol blue + cream.

Published

Sticky Scroll Cue — preview
10 / 31Pure CSS

Sticky Scroll Cue

Tall full-bleed hero with a bouncing scroll indicator at the bottom. Forest emerald on birch with a soft yellow CTA — the cabin / retreat brand aesthetic.

Published

Magazine Cover — preview
11 / 31Pure CSS

Magazine Cover

Print-magazine cover treatment — issue stamp, oversized italic serif headline, vertical spine label, foil-stamped corner number. Plum and champagne on linen.

Published

Asymmetric Type — preview
12 / 31Pure CSS

Asymmetric Type

Construction-site asymmetric typography — broken across columns with intentional misalignment, hi-vis safety yellow on concrete grey, black hard rules.

Published

Oversized Number — preview
13 / 31Pure CSS

Oversized Number

Vintage wine-label poster — a massive faded burgundy "1924" set behind italic serif copy with gold-leaf accents on cream paper.

Published

Marquee Headline — preview
14 / 31Pure CSS

Marquee Headline

A single phrase scrolls horizontally on a loop with a counter-direction line beneath. Hot tangerine on chocolate brown — the streetwear / drop-culture treatment.

Published

Photo Card Hero — preview
15 / 31Pure CSS

Photo Card Hero

Aesop / Apple-style full-bleed photo with copy in the bottom-left corner. Desaturated denim photograph painted in CSS, rust accent, linen card overlay.

Published

Brutalist Text-Only — preview
16 / 31Pure CSS

Brutalist Text-Only

Raw Swiss-punk brutalist hero — pure black, traffic-cone orange highlight, acid lime accent, hard 8px offset shadows. No images, no soft anything.

Published

Vertical Type Hero — preview
17 / 31Pure CSS

Vertical Type Hero

Japanese traditional vertical typography — headline reads top-to-bottom using writing-mode: vertical-rl. Indigo on washi-paper white, vermillion seal stamp.

Published

Kinetic Type Hero — preview
18 / 31Pure CSS

Kinetic Type Hero

Rave-poster kinetic typography — letters rotate, scale, and float individually using per-letter delay. Acid green and magenta on pure black with strobe-like accents.

Published

Bento Hero — preview
19 / 31Pure CSS

Bento Hero

Apple-style bento hero — one large headline tile with stat / quote / pill cells fanning around it. Matte-ceramic palette: salmon, terracotta, ivory, olive.

Published

Gradient Text Spotlight — preview
20 / 31Pure CSS

Gradient Text Spotlight

Oversized headline with an animated marigold → ruby → grape gradient sweeping across the letters. The Linear / Apple wordmark shimmer treatment.

Published

Product Shot Hero — preview
21 / 31Pure CSS

Product Shot Hero

Apple-keynote product shot — a CSS-painted device front-and-centre with floating feature badges that pulse around it. Ice blue + chrome silver on warm white.

Published

Price Card Hero — preview
22 / 31Pure CSS

Price Card Hero

Heritage-banking pricing-led hero — copy left, single-tier brass-on-forest pricing card right. The 37signals-style "we have one price" treatment with a vintage finance feel.

Published

App Store Hero — preview
23 / 31Pure CSS

App Store Hero

iOS-pastel app-launch hero — three phone mockups fanned in lavender, soft pink, powder blue, with App Store and Google Play CTA pills below.

Published

Neon CTA Hero — preview
24 / 31Pure CSS

Neon CTA Hero

Tokyo-cyberpunk neon CTA — pure black backdrop, neon pink and electric cyan glows, single CTA that breathes with a soft pulse. The conversion-funnel pattern.

Published

Parallax Mountain — preview
25 / 31Pure CSS

Parallax Mountain

Layered SVG mountain silhouettes drift at different speeds — glacier blue and pine on alpine snow. The outdoor / travel-brand parallax landscape.

Published

Isometric Room — preview
26 / 31Pure CSS

Isometric Room

Cozy WFH isometric — a CSS-painted desk + laptop + plant + lamp scene rendered with transform: skewY(). Mauve, dusty rose, and sage — the calm-productivity aesthetic.

Published

3D Card Stack — preview
27 / 31Pure CSS

3D Card Stack

Three luxury-cosmetics product cards in 3D perspective, fanning forward on hover. Champagne and soft blush on jet — the high-end beauty / fragrance treatment.

Published

Particle Starfield — preview
28 / 31Pure CSS

Particle Starfield

Pure-CSS starfield — dots positioned via radial-gradient on a deep-navy backdrop. Electric yellow accent and dim white copy. No canvas, no per-particle DOM.

Published

Glitch Text Hero — preview
29 / 31Pure CSS

Glitch Text Hero

VHS-glitch hero — RGB-channel offsets create a tape-static glitch effect. VHS red and tape blue against a static-gray background, the analogue cyberpunk treatment.

Published

Conic Orbit Hero — preview
30 / 31Pure CSS

Conic Orbit Hero

Solar-corona conic gradient ring orbits the headline using @property animatable angle. Gold and ember orange on jet black — the AI / launch treatment with a stellar feel.

Published

Mouse-Tracking Refraction Hero — preview
31 / 31CSS + JS

Mouse-Tracking Refraction Hero

A large hero card with a real Liquid Glass lens bubble that follows the cursor across the surface, magnifying and refracting the headline and mesh background beneath it in real time. Move away and the lens drifts back to centre with an easing spring — the show-off centerpiece for a frontend portfolio.

Published

FAQ

Frequently asked questions

What is a CSS hero section?
A hero section is the first full-bleed band of a landing page — typically containing an eyebrow tag, headline, subheadline, primary call-to-action, and a supporting visual. It's the most important block on the page because it carries the value proposition above the fold.
How do I pick the right hero for my product (SaaS, agency, e-commerce, portfolio, hospitality)?
The pattern is: match the hero's visual register to your buyer's evaluation lens. B2B SaaS buyers (CRM, PM, dev tools) evaluate on proof and specs, so use Demo 02 Split with Mockup (SVG dashboard mockup on the right), Demo 21 Product Shot (floating device with spec badges), or Demo 19 Bento Grid (5 tiles compressing features into visual hierarchy — the Apple/Notion/Linear pattern). Fintech, AI, and analytics buyers respond to gradient-mesh visual language (Stripe/Linear/Vercel), so Demo 03 Gradient Mesh and Demo 20 Gradient Text Spotlight are the right pattern — the mesh signals 'well-funded, modern, AI-adjacent' before a word is read. Developer-tool buyers (DevOps, observability, edge platforms) trust terminal aesthetics because it says 'we built this for you, not for your VP' — Demo 05 Terminal Dev is exactly that, and Vercel/Netlify/Sentry/Grafana/Fly all ship variations. Agency and portfolio work needs motion and personality: Demo 08 Animated Headline (staggered word rise), Demo 14 Marquee Headline (counter-scrolling tickers), Demo 18 Kinetic Type (per-letter jitter), Demo 29 Glitch RGB. E-commerce and consumer brands convert on the object-forward pattern (fusiform recognition, Nielsen Norman): Demo 15 Photo Card, Demo 21 Product Shot, Demo 23 App Store with fanned phones. Hospitality and travel need scenic depth: Demo 25 Parallax Mountain triggers the dorsal-stream spatial-processing centers and extends fold-view attention by roughly 40% versus flat heroes. Pricing pages should put the price IN the hero: Demo 22 Price Card lifts click-through 30-45% versus a 'See pricing' link (Baymard finding). Restoration, nonprofit, and cause work should use Demo 09 Before/After Slider — the transformation-as-proof pattern outperforms static hero imagery by 40-60% on click-through for services with a visible outcome. Editorial and hospitality lean quiet-luxury: Demo 04 Glass over Aurora, Demo 10 Sticky Scroll Cue, Demo 11 Magazine Cover, Demo 13 Oversized Number.
How do I make a hero section responsive without breaking on tablet or mobile?
The pattern used across all 30 demos: use clamp() for every scale-sensitive property. Headline font-size: clamp(24px, 5vw, 64px). Padding: clamp(20px, 4vh, 80px) clamp(16px, 4vw, 40px). Section min-height stays at min-height: 100vh on the demo root so the themed background paints edge-to-edge in the playground iframe, but nested content boxes use max-width: 640px to 720px to lock a readable line length regardless of viewport width. For two-column heroes (Demos 02, 05, 09, 15, 21, 25, 26, 27, 30), the switch to single-column happens at max-width: 720px — one breakpoint, not five — which collapses grid or flex layouts predictably. Avoid fixed pixel widths anywhere except the inner mockup or object (Demo 21's .hs-21__device is 320px × 200px because the device silhouette needs a stable ratio). For iOS Safari specifically, 100vh jumps 60-80px mid-scroll when the address bar collapses — a Core Web Vitals CLS event. The site-wide recommendation is min-height: 100svh (small viewport height) instead, supported in every browser shipped since 2022. All 30 demos honor prefers-reduced-motion: reduce — continuous animations (parallax drift on Demo 25, blob motion on Demo 03, twinkle on Demo 28, orbit spin on Demo 30) are disabled per WCAG 2.3.3 for vestibular-disorder users. The animated ones also compositor-thread only their motion (transform + opacity), never margin/top/width/height, so Interaction to Next Paint (INP) stays under 200ms on mid-tier Android.
Do I need a background image for a hero, or can I do it with pure CSS?
Pure CSS. Every one of the 30 demos ships with zero image dependencies — no PNG, no JPEG, no WebP, no external CDN. Real photos add weight (typically 40-200KB per hero photo even with WebP), licensing constraints (stock photography has re-use limits, real photography needs shoots), and Largest Contentful Paint (LCP) hits. The CSS-only patterns that replace them: stacked radial-gradient blobs with filter: blur(60px) produce the mesh-gradient look at ~1KB of CSS (Demo 03, Demo 20); animated conic-gradient with backdrop-filter: blur(20px) saturate(140%) gives you Apple Vision Pro glass over aurora (Demo 04, Demo 30); clip-path: polygon() silhouettes plus stacked linear-gradient layers paint an editorial photograph (Demo 15 — a four-layer CSS 'photograph' of a hung chore coat, roughly 3KB); SVG-shape drift primitives (Demo 06 Video Loop Hero) fake a motion reel without licensing an MP4 or dealing with autoplay policies. For products, Demo 21 uses a diagonal linear-gradient with paired inset shadows to fake brushed-aluminium bevel in pure CSS. For scenes, Demo 25 stacks three SVG mountain ranges with staggered animation-delays for genuine parallax depth. Font-loading discipline: preload the specific weights you actually render (usually one weight per font) with link rel='preload' as='font' type='font/woff2' crossorigin or FOUT/FOUC will shift the h2 baseline and blow Cumulative Layout Shift (CLS) past the 0.1 Core Web Vitals threshold. The whole approach: images cost 40-200KB and licensing hassle for a static picture; CSS costs 1-3KB, renders instantly, respects prefers-reduced-motion out of the box, and lets you re-skin the palette by editing three hex values instead of re-commissioning a shoot.
Are these heroes accessible?
Yes — every hero uses semantic HTML, a single h2 or h1 for the headline, real anchor links for CTAs, aria-hidden on decorative SVG, WCAG 2.5.5 44×44px touch targets on interactive controls, prefers-reduced-motion guards on every animation, and contrast ratios meeting WCAG AA (most pairs hit AAA).

Related collections

15 CSS Aspect Ratio Demos preview

15 CSS Aspect Ratio Demos

15 hand-coded CSS aspect-ratio demos for video embeds, product galleries, IAB ad slots, native dialogs, and CLS-safe placeholders: 16:9 iframe YouTube embed with click-to-load facade + up-next rail, 21:9 full-screen hero video with min-height/max-height:100svh guardrails + Ken Burns drift, 1:1 Instagram-style square grid with 2×2 feature tile, 4:3 magazine card image cover, 9:16 vertical stories rail (TikTok/Reels/Shorts pattern) with scroll-snap + segment bars, 4:5 apparel product image gallery with radio-driven state + 1:1 thumbnails, 1:1 zoom thumbnail carousel with pointer-tracked --zx/--zy magnifier, prevent-layout-shift placeholder with live PerformanceObserver CLS meter (before/after side-by-side lab), dynamic content fallback with three policies (bend/strict/auto) via :has() toggle, IAB ad banner slots (728×90 leaderboard, 300×250 medium rectangle, 300×600 half-page, 320×50 mobile) with skeletons + container-query mobile swap, responsive modal dialog sized min(92vw, 88svh×16/9, 1080px) with @starting-style animation, responsive OpenStreetMap iframe wrapper with 16:9 → 1:1 container-query narrow swap, media query orientation live HUD + resize:both container-ratio playground, object-fit logo cloud with contain/cover/fill switcher via :has(), and side-by-side padding-top hack (height:0 + padding-top:56.25%) → modern aspect-ratio migration comparison with live ratio picker. 11 truly Pure CSS + 4 with a tiny optional vanilla JS snippet (facade swap, pointer magnifier, CLS meter, native dialog). Every demo is scoped under a unique .car-NN prefix so it drops into any project without CSS collisions, ships prefers-reduced-motion guards, and is framework-agnostic (works as-is in React, Vue, Svelte, Astro, Next.js, Remix, or plain HTML).

6 CSS Bento Grid Layouts preview

6 CSS Bento Grid Layouts

6 production CSS bento grid layouts with 12 hand-coded designs — Apple-style product showcase, SaaS feature value-prop matrix, analytics dashboard overview, creative portfolio, e-commerce category hub, and link-in-bio social hub. Each topic ships 2 sub-variants side-by-side so visitors see both a keynote aesthetic and a paper-doc variant at once. Container queries, CSS Grid, zero dependencies, copy-paste ready.

20 CSS Blog Layouts preview

20 CSS Blog Layouts

20 hand-coded CSS blog and editorial layouts for magazine homepages, news sites, personal archives, newsletter back-issues, recipe and podcast blogs, developer tutorials, and long-form journalism. Covers a magazine homepage with hero plus editor-picks rail, a news homepage with breaking-news ticker, blog archives with sticky year separators, Substack-style issue-numbered archives, recipe card grids with prep-time badges, podcast episode lists with waveforms, long-form articles with scroll-driven reading progress, drop caps and floated pull quotes via first-letter, Medium-style 65ch centred reader layouts, dev tutorials with a sticky code panel beside prose, interview transcripts with alternating speakers, case-study pages with stat counters, video blogs with an episode rail, full-bleed photo essays, news articles with sticky related-stories sidebars, documentation pages with prev/next chapter nav, a standalone blog post card, a scroll-snap category filter bar, an inline newsletter callout that breaks out of the prose column, and a horizontal featured-post rail. 12 are pure CSS with zero JavaScript. Every layout is scoped under a .bl-NN prefix for no-collision pasting, guards prefers-reduced-motion, and ports unchanged to React, Vue, Svelte, Astro, Next.js and Tailwind.

Search CodeFronts

Loading…