10 ืขื™ืฆื•ื‘ื™ Hero Section ืžื•ื“ืจื ื™ื™ื (ื“ื•ื’ืžืื•ืช ื—ื™ื•ืช + ืงื•ื“)

ื”-Hero Section (ืื• ื‘ืฉืžื• ื”ืขื‘ืจื™ ืดืื–ื•ืจ ื”ืคืชื™ื—ื”ืด) ื”ื•ื ื”ื‘ืœื•ืง ื”ืจืืฉื•ืŸ ืฉื”ื’ื•ืœืฉ ืจื•ืื” ื›ืฉื”ืขืžื•ื“ ื ื˜ืขืŸ. ื”ื•ื ืžื›ื™ืœ ื›ื•ืชืจืช, ืฉื•ืจื” ืชื•ืžื›ืช, ืงืจื™ืื” ืœืคืขื•ืœื” ื•ืœืจื•ื‘ ื’ื ื•ื™ื–'ื•ืืœ, ื•ื™ืฉ ืœื• ืฉื ื™ื•ืช ืกืคื•ืจื•ืช ืœื”ืกื‘ื™ืจ ืžื” ืžืฆื™ืข ื”ืขืžื•ื“ ื•ืžื” ื›ื“ืื™ ืœืขืฉื•ืช ื”ืœืื”.

ื‘ืจืืฉ ืคื•ืกื˜ ื–ื” ืชืžืฆืื• ืขืฉืจื” Hero Sections ืžื•ื“ืจื ื™ื™ื ื›ื“ื•ื’ืžืื•ืช ื—ื™ื•ืช. ื›ืœ ืื—ื“ ืžื”ื ืžืฆื™ื’ ื’ื™ืฉื” ืขื™ืฆื•ื‘ื™ืช ืื—ืจืช ื•ืืช ื”-CSS ืฉืžืื—ื•ืจื™ื”, ื”ื—ืœ ืž-Container Queries ื•ืขื“ ืื ื™ืžืฆื™ื•ืช ืžื‘ื•ืกืกื•ืช ื’ืœื™ืœื”. ื”ื ืžืชื—ืœืคื™ื ืื•ื˜ื•ืžื˜ื™ืช ื›ืœ ืขื•ื“ ื”ื ืžื•ืคื™ืขื™ื ืขืœ ื”ืžืกืš (ื”ืขื‘ื™ืจื• ืืช ื”ืขื›ื‘ืจ ืžืขืœื™ื”ื ื‘ื›ื“ื™ ืœืขืฆื•ืจ), ืื• ื‘ื—ืจื• ืื—ื“ ืžื”ื ื‘ืกืจื’ืœ ื”ืชื—ืชื•ืŸ. ื‘ื”ืžืฉืš ืืกื‘ื™ืจ ื›ื™ืฆื“ ื‘ื ื•ื™ ื›ืœ ืื—ื“ ืžื”ื.

ืžื”ื• Hero Section?

ื”-Hero Section ื”ื•ื ื”ืื–ื•ืจ ื”ืขืœื™ื•ืŸ ืฉืœ ื”ืขืžื•ื“, ื”ื—ืœืง ืฉืจื•ืื™ื ืขื•ื“ ืœืคื ื™ ืฉื’ื•ืœืœื™ื. ื‘ืจื•ื‘ ื”ืืชืจื™ื ื–ื” ื”ื‘ืœื•ืง ื”ื ืฆืคื” ื‘ื™ื•ืชืจ ื‘ืขืžื•ื“, ื•ืœื ืคืขื ื”ื•ื ื–ื” ืฉืžื›ืจื™ืข ืื ื”ื’ื•ืœืฉ ื™ื™ืฉืืจ.

Hero ื˜ื•ื‘ ื‘ื ื•ื™ ืžืื•ืชื ื›ืžื” ืจื›ื™ื‘ื™ื, ืœื ืžืฉื ื” ืื™ืš ื”ื•ื ื ืจืื”:

  • ื›ื•ืชืจืช ืฉืื•ืžืจืช ื‘ืžื™ืœื™ื ืคืฉื•ื˜ื•ืช ืžื” ืืชื ืžืฆื™ืขื™ื.
  • ืฉื•ืจื” ืชื•ืžื›ืช ืฉืžื‘ื”ื™ืจื” ืœืžื™ ื–ื” ืžื™ื•ืขื“ ืื• ื‘ืžื” ื–ื” ืฉื•ื ื”.
  • ืงืจื™ืื” ืจืืฉื™ืช ืื—ืช ืœืคืขื•ืœื”, ื•ืื ืฆืจื™ืš ื’ื ืงืจื™ืื” ืžืฉื ื™ืช.
  • ื•ื™ื–'ื•ืืœ ืฉืžืฆื™ื’ ืืช ื”ืžื•ืฆืจ, ืืช ื”ืขื‘ื•ื“ื” ืื• ืืช ื”ืื•ื•ื™ืจื”.
  • ืื•ืช ืืžื•ืŸ ื›ืฉื™ืฉ ืœื›ื ื›ื–ื”: ืžืกืคืจ, ืจืฉื™ืžืช ืœืงื•ื—ื•ืช ืื• ื“ื™ืจื•ื’.

ืขืฉืจืช ื”-Heroes ืฉื‘ื”ืžืฉืš ืžืฉืชืžืฉื™ื ื‘ืจื›ื™ื‘ื™ื ื”ืืœื• ื‘ื“ืจื›ื™ื ืฉื•ื ื•ืช ืžืื•ื“. ื”ืžื•ืชื’ื™ื ื‘ื“ื•ื™ื™ื, ื›ืš ืฉืœื›ืœ ื’ื™ืฉื” ื™ืฉ ืžืจืื” ืžืฉืœื”.

ืžื” ื”ื•ืคืš Hero Section ืœืžื•ื“ืจื ื™

ืžื•ื“ืจื ื™ ืœื ืื•ืžืจ ื™ื•ืชืจ ืื ื™ืžืฆื™ื”. ื”-Heroes ืฉืžื—ื–ื™ืงื™ื ืžืขืžื“ ื‘-2026 ื—ื•ืœืงื™ื ื›ืžื” ืชื›ื•ื ื•ืช:

  • ืžืกืจ ืื—ื“. ื›ื•ืชืจืช ืื—ืช, ืคืขื•ืœื” ืจืืฉื™ืช ืื—ืช, ื‘ืœื™ ืกืœื™ื™ื“ืจ ืฉืœ ื—ืžืฉ ื”ืฆืขื•ืช ืฉืžืชื—ืจื•ืช ื–ื• ื‘ื–ื•.
  • ื”ืฆื’ื” ืจืืฉื•ื ื” ืžื”ื™ืจื”. ื”-Hero ืžื›ื™ืœ ื‘ื“ืจืš ื›ืœืœ ืืช ืืœืžื ื˜ ื”-LCP (ื‘ืฉืžื• ื”ืžืœื Largest Contentful Paint), ื•ืœื›ืŸ ื˜ืงืกื˜ ืื• ืชืžื•ื ื” ืงืœื” ืขื“ื™ืคื™ื ืขืœ ื•ื™ื“ืื• ื›ื‘ื“.
  • Layout ืฉืžื’ื™ื‘ ืœืงื•ื ื˜ื™ื™ื ืจ. ื‘ืขื–ืจืช Container Queries ืื•ืชื• Hero ืขื•ื‘ื“ ื‘ืžืกืš ืžืœื, ื‘ืชื•ืš ืขืžื•ื“ื” ืื• ื‘ื—ืœื•ืŸ ืชืฆื•ื’ื” ืžืงื“ื™ืžื”.
  • ืชื ื•ืขื” ืขื ืžืชื’ ื›ื™ื‘ื•ื™. ื›ืœ ืื ื™ืžืฆื™ื” ื ืขืฆืจืช ื›ืฉื”ื’ื•ืœืฉ ืžื‘ืงืฉ ืชื ื•ืขื” ืžื•ืคื—ืชืช (Reduced Motion).

ื”ื ื” ื”ืฉื•ื•ืื” ื‘ื™ืŸ ื”ืขืฉืจื”:

Hero ืžืชืื™ื ื‘ืžื™ื•ื—ื“ ืœ ื”ื˜ื›ื ื™ืงื” ื”ืžืจื›ื–ื™ืช ืฉื™ืœื•ื‘ ื’ื•ืคื ื™ื
X-ray lens ืื“ืจื™ื›ืœื•ืช, ื”ื ื“ืกื”, ื›ืœื™ ืคื™ืชื•ื— mask-image ืขื ืžืฉืชื ื™ CSS ืกืื ืก ืฆืจ ื•ื“ืง + ืชื•ื•ื™ื•ืช ืžื•ื ื•ืกืคื™ื™ืก
Particle type ืคืกื˜ื™ื‘ืœื™ื, ืืžื ื•ืช ื•ืžื•ืชื’ื™ื ื™ืฆื™ืจืชื™ื™ื ื“ื’ื™ืžืช Canvas + ืคื™ื–ื™ืงืช ืงืคื™ืฆื™ื ืกืื ืก ื›ื‘ื“ ืื—ื“ + ื˜ืงืกื˜
Live bento grid ืžื•ืฆืจื™ SaaS ืขื ื›ืžื” ื™ืชืจื•ื ื•ืช grid-template-areas, @container ืกืื ืก ื›ื‘ื“ + ืกืคืจื•ืช ื˜ื‘ืœืื™ื•ืช
Self-playing product UI ืืคืœื™ืงืฆื™ื•ืช ื•ื“ืฉื‘ื•ืจื“ื™ื perspective, ืกื™ื•ืจ ืžืชื•ืกืจื˜ ืกืื ืก + ืžื•ื ื•ืกืคื™ื™ืก ืœื ืชื•ื ื™ื
Kinetic proximity type ืื™ืจื•ืขื™ื, ืžื•ืชื’ื™ ื˜ื™ืคื•ื’ืจืคื™ื” ื•ืขื™ืฆื•ื‘ ืฆื™ืจื™ื ืฉืœ Variable Font ืกืื ืก ืžืฉืชื ื” ืื—ื“
View-transition configurator ืžื•ืฆืจื™ื ืขื ื•ืจื™ืืฆื™ื•ืช startViewTransition() ืกืจื™ืฃ ืชืฆื•ื’ื” + ืกืื ืก
Split-flap board ืชื™ื™ืจื•ืช, ืื™ืจื•ืขื™ื, ื”ืฉืงื•ืช ื“ืฉื™ื ื‘ืชืœืช ืžืžื“, backface-visibility ืกืื ืก ืฆืคื•ืฃ + ืฉืขื•ืช ื‘ืกืคืจื•ืช ื˜ื‘ืœืื™ื•ืช
Scroll-driven cinematic ื”ืฉืงื•ืช ืžื•ืฆืจ, ืžื•ืฆืจื™ื ืคื™ื–ื™ื™ื animation-timeline: view() ืจื•ื—ื‘ ืฆืคื•ืฃ ื•ืจื•ื—ื‘ ืจื’ื™ืœ ืžืื•ืชื” ืžืฉืคื—ื”
Type-first editorial ืกื˜ื•ื“ื™ื•ืื™ื, ืกื•ื›ื ื•ื™ื•ืช, ืžื•ืชื’ื™ื ืื™ืฉื™ื™ื clamp() ืขื cqi, text-wrap: balance ืกืจื™ืฃ ืชืฆื•ื’ื” + ืกืื ืก ื ื™ื˜ืจืœื™
Prompt-first ื›ืœื™ AI, ื—ื™ืคื•ืฉ, ืžื—ื•ืœืœื™ื border ืžื•ื ืคืฉ ืขื @property ืกืื ืก ืจืš ืื—ื“

ื›ืœ ื”ื“ื•ื’ืžืื•ืช ื ืฉืขื ื•ืช ืขืœ ืื•ืชื• ื‘ืกื™ืก: ื”-Hero ื”ื•ื ืงื•ื ื˜ื™ื™ื ืจ ืžื‘ื•ืกืก ื’ื•ื“ืœ, ื•ืœื›ืŸ ื ืงื•ื“ื•ืช ื”ืฉื‘ื™ืจื” ืฉืœื• ื ืงื‘ืขื•ืช ืœืคื™ ื”ืจื•ื—ื‘ ืฉืœื• ื•ืœื ืœืคื™ ืจื•ื—ื‘ ื”ืžืกืš. ื–ื• ื”ืกื™ื‘ื” ืฉื”ื›ืคืชื•ืจื™ื Desktop, Tablet ื•-Phone ื‘ื›ืœ ื“ื•ื’ืžื” ืžืฉื ื™ื ืืช ื”-layout ื‘ื–ืžืŸ ืฉื”ืžืกืš ืฉืœื›ื ื ืฉืืจ ืื•ืชื• ื“ื‘ืจ.

.hero {
  container: hero / inline-size;
}

@container hero (max-width: 760px) {
  .hero-bottom { grid-template-columns: 1fr; }
}

ืื Container Queries ื—ื“ืฉื™ื ืœื›ื, ื”ืžื“ืจื™ืš ื”ืžืœื ืœ-Container Queries ืžืกื‘ื™ืจ ืืช ื”ืชื—ื‘ื™ืจ ื•ืืช ื”ื™ื—ื™ื“ื•ืช ื‘ืคื™ืจื•ื˜.

1. Hero ืขื ืขื“ืฉืช ืจื ื˜ื’ืŸ (X-ray Lens)

ื”-Hero ืขื ืขื“ืฉืช ื”ืจื ื˜ื’ืŸ ื”ื•ื ื–ื” ืฉื”ืขืžื•ื“ ื ืคืชื— ืื™ืชื•. ื”ื•ื ืžื ื™ื— ืฉืชื™ ื’ืจืกืื•ืช ืฉืœ ืื•ืชื” ืงื•ืžืคื•ื–ื™ืฆื™ื” ื–ื• ืขืœ ื’ื‘ื™ ื–ื•: ืœืžืขืœื” ื”ืขื™ืฆื•ื‘ ื”ืžื•ื’ืžืจ, ื•ืžืชื—ืชื™ื• ื”ืฉืจื˜ื•ื˜ ืฉืœื•. ืขื“ืฉื” ืขื’ื•ืœื” ืขื•ืงื‘ืช ืื—ืจื™ ื”ืขื›ื‘ืจ ื•ืคื•ืชื—ืช ื—ื•ืจ ื‘ืฉื›ื‘ื” ื”ืขืœื™ื•ื ื”, ื›ืš ืฉืจื•ืื™ื ื“ืจื›ื” ืืช ื”ืชื•ื›ื ื™ืช.

Live demo · X-ray lens
Atelier Nord / Architecture

We draw the lines you will live between.

Houses and small civic buildings in timber and stone, designed from the first sketch to the last joint.

ื”ื—ื•ืจ ื”ื•ื radial gradient ื”ืžืฉืžืฉ ื›-mask, ื›ืฉื”ืžืจื›ื– ื•ื”ืจื“ื™ื•ืก ืฉืœื• ืžื•ื’ื“ืจื™ื ื‘ืžืฉืชื ื™ CSS:

.render {
  mask-image: radial-gradient(
    circle var(--r) at var(--x) var(--y),
    transparent 98%, #000 100%
  );
}

ื”-JavaScript ืจืง ืžื–ื™ื– ืืช --x ื•ืืช --y ื‘ื”ื“ืจื’ื” ืœื›ื™ื•ื•ืŸ ื”ืขื›ื‘ืจ, ื‘ื›ื“ื™ ืœื™ืฆื•ืจ ืžืขืงื‘ ืจืš. ืฉื›ื‘ืช ื”ืฉืจื˜ื•ื˜ ืžืกื•ืžื ืช aria-hidden, ืžื›ื™ื•ื•ืŸ ืฉื”ื™ื ื—ื•ื–ืจืช ืขืœ ืื•ืชื• ืชื•ื›ืŸ.

ื›ืœ ืฉื›ื‘ื” ืžืฆื™ื™ืจืช ืืช ื”ื‘ื™ืช ื›-SVG ืžื•ื˜ืžืข (inline) ืขื ืื•ืชื• viewBox ื•ืื•ืชืŸ ืงื•ืื•ืจื“ื™ื ื˜ื•ืช, ื›ืš ืฉื›ืœ ืงื• ื‘ืฉืจื˜ื•ื˜ ื™ื•ืฉื‘ ื‘ื“ื™ื•ืง ืžืชื—ืช ืœืชืžื•ื ื”. ื‘ืฉื›ื‘ืช ื”ืฉืจื˜ื•ื˜, vector-effect: non-scaling-stroke ืฉื•ืžืจ ืขืœ ืงื•ื•ื™ื ื‘ืขื•ื‘ื™ ืคื™ืงืกืœ ืื—ื“ ื‘ื›ืœ ื’ื•ื“ืœ.

SVG ืžื•ื˜ืžืข ืื™ื ื• ืžื•ืขืžื“ ืœ-LCP. ื‘ื‘ื“ื™ืงื” ืฉืœื™ ื‘ืขืžื•ื“ ื–ื” ื”ื›ื•ืชืจืช ื ืฉืืจื” ืืœืžื ื˜ ื”-LCP, ืœืžืจื•ืช ืฉื”ืฉืจื˜ื•ื˜ ืชื•ืคืก ื™ื•ืชืจ ืžื”ืžืกืš.

ื”ื˜ื™ืคื•ื’ืจืคื™ื” ืžืžืฉื™ื›ื” ืืช ืจืขื™ื•ืŸ ืฉื•ืœื—ืŸ ื”ืฉืจื˜ื•ื˜: ืกืื ืก ื“ืง ื•ืฆืจ ืœื›ื•ืชืจืช ื•ื’ื•ืคืŸ ืžื•ื ื•ืกืคื™ื™ืก ืœืชื•ื•ื™ื•ืช ื•ืœืžื™ื“ื•ืช, ื›ืžื• ื‘ื˜ื‘ืœืช ื”ื›ื•ืชืจืช ืฉืœ ืฉืจื˜ื•ื˜ ื˜ื›ื ื™. ื‘ืฉื•ืœื™ ื”ืขื“ืฉื” ื™ืฉ ืฉื•ืœื™ื™ื ืื“ื•ืžื™ื ื•ื›ื—ื•ืœื™ื ืขื“ื™ื ื™ื, ื›ืžื• ื‘ื–ื›ื•ื›ื™ืช ืืžื™ืชื™ืช. ืžืชื—ืช ื™ืฉ ื—ืชืš ืืžื™ืชื™ ืฉืœ ื”ื‘ื™ืช: ืžืกื‘ืš ื”ืคืœื“ื” ื”ื—ื‘ื•ื™ ื‘ืงื™ืจื•ืช ืฉื ื•ืฉื ื–ื™ื– ืฉืœ 11 ืžื˜ืจื™ื, ื›ืœื•ื ืกืื•ืช ืขื“ ืœืกืœืข, ืœื•ืœืืช ื—ื™ืžื•ื ื’ื™ืื•ืชืจืžื™ืช ื•ื–ื•ื•ื™ื•ืช ื”ืฉืžืฉ ืฉืœ ื”ืžื’ืจืฉ.

ื–ื” ืžื” ืฉื”ื•ืคืš Hero ื›ื–ื” ืœืฉื•ื•ื” ืืช ื”ืžืืžืฅ. ื”ืขื“ืฉื” ืžืจืื” ืžืฉื”ื• ืฉื”ืชืžื•ื ื” ื”ืžื•ื’ืžืจืช ืœื ืžืจืื”, ื•ืœื›ืŸ ื‘ืืžืช ืžืฉืชืœื ืœื”ื–ื™ื– ืืช ื”ืขื›ื‘ืจ.

ื”ืจืขื™ื•ืŸ ืžืชืื™ื ืœื›ืœ ืขืกืง ืขื ืกื™ืคื•ืจ ืดืžืื—ื•ืจื™ ื”ืงืœืขื™ืืด: ืื“ืจื™ื›ืœื™ื, ืžื”ื ื“ืกื™ื, ืžืขืจื›ื•ืช ืขื™ืฆื•ื‘ (Design Systems) ืื• ื›ืœื™ ืคื™ืชื•ื— ืฉืžืจืื” ืืช ื”ืงื•ื“ ืฉืžืชื—ืช ืœืžืžืฉืง.

2. Hero ืขื ื˜ื™ืคื•ื’ืจืคื™ื™ืช ื—ืœืงื™ืงื™ื (Particle Type)

ื›ืืŸ ื”ื›ื•ืชืจืช ื‘ื ื•ื™ื” ืžื›ืฉืœื•ืฉืช ืืœืคื™ื ื—ืœืงื™ืงื™ื. ื”ืขื‘ื™ืจื• ืืช ื”ืขื›ื‘ืจ ื“ืจืš ื”ืื•ืชื™ื•ืช ื•ื”ืŸ ืžืชืคื–ืจื•ืช ื•ืื– ืงื•ืคืฆื•ืช ื—ื–ืจื” ืœืžืงื•ืžืŸ. ื‘ื ื™ื™ื“, ื ื’ื™ืขื” ืžืคื–ืจืช ืื•ืชืŸ ื•ืจื•ื— ืื™ื˜ื™ืช ืžื–ื™ื–ื” ืื•ืชืŸ ื›ืœ ื›ืžื” ืฉื ื™ื•ืช.

Live demo · Particle type
A festival of generative artReykjavik, 4 to 6 March 2027

Drift

Art made of code, light and noise. Three nights, forty artists, one harbour.

ื”ื˜ืจื™ืง ื”ื•ื ืœืฆื™ื™ืจ ืืช ื”ืžื™ืœื” ืคืขื ืื—ืช ืขืœ Canvas ืžื•ืกืชืจ, ื•ืื– ืœืฉืžื•ืจ ื›ืœ ื›ืžื” ืคื™ืงืกืœื™ื ืฉืื™ื ื ืฉืงื•ืคื™ื. ื›ืœ ืคื™ืงืกืœ ืฉื ืฉืžืจ ื”ื•ืคืš ืœื—ืœืงื™ืง ืขื ืดืžื™ืงื•ื ื‘ื™ืชืด:

off.font = `900 ${size}px "Noto Sans Hebrew"`;
off.fillText('DRIFT', x, y);
const { data } = off.getImageData(0, 0, w, h);

for (let y = 0; y < h; y += step) {
  for (let x = 0; x < w; x += step) {
    if (data[(y * w + x) * 4 + 3] > 140) {
      particles.push({ hx: x, hy: y, x, y, vx: 0, vy: 0 });
    }
  }
}

ื‘ื›ืœ ืคืจื™ื™ื, ื›ืœ ื—ืœืงื™ืง ื ืžืฉืš ื—ื–ืจื” ืืœ ืžื™ืงื•ื ื”ื‘ื™ืช ืฉืœื• ื•ื ื“ื—ืฃ ื”ืจื—ืง ืžื”ืขื›ื‘ืจ:

for (const p of particles) {
  p.vx = (p.vx + (p.hx - p.x) * 0.05) * 0.85;
  p.vy = (p.vy + (p.hy - p.y) * 0.05) * 0.85;
  const dx = p.x - px, dy = p.y - py, d = Math.hypot(dx, dy);
  if (d < radius) {
    p.vx += (dx / d) * (1 - d / radius) * 4;
    p.vy += (dy / d) * (1 - d / radius) * 4;
  }
  p.x += p.vx;
  p.y += p.vy;
}

ืฉืœื•ืฉื” ื›ืœืœื™ื ืฉื•ืžืจื™ื ืขืœ ื–ื” ืงืœื™ืœ. ื”ืœื•ืœืื” ื ืขืฆืจืช ื‘ืจื’ืข ืฉื›ืœ ื”ื—ืœืงื™ืงื™ื ื ืจื’ืขื™ื, ื”ื™ื ืจืฆื” ืจืง ื›ืฉื”-Hero ืขืœ ื”ืžืกืš, ื•ื—ืœืงื™ืงื™ื ื‘ืื•ืชื• ืฆื‘ืข ืžืฆื•ื™ืจื™ื ื™ื—ื“, ื›ืš ืฉื”-Canvas ืžื—ืœื™ืฃ ืฆื‘ืข ืžื™ืœื•ื™ ืฉืฉ ืคืขืžื™ื ื‘ื›ืœ ืคืจื™ื™ื ื•ืœื ืฉืœื•ืฉืช ืืœืคื™ื.

Canvas ืื™ื ื• ื˜ืงืกื˜, ื•ืœื›ืŸ ื”ื›ื•ืชืจืช ื”ืืžื™ืชื™ืช ื™ื•ืฉื‘ืช ืœื™ื“ื• ื›ืืœืžื ื˜ ืžื•ืกืชืจ ื•ื™ื–ื•ืืœื™ืช, ื•ื”ืฉื•ืจื” ืฉืžืชื—ืช ืœืžื™ืœื” ื”ื™ื HTML ืจื’ื™ืœ. ืืช ืื•ืชื” ืฉื•ืจื” ืžืงื‘ืœื™ื ืžื ื•ืขื™ ื”ื—ื™ืคื•ืฉ ื•ืงื•ืจืื™ ื”ืžืกืš, ื•ื”ื™ื ื’ื ื–ื• ืฉื”ื“ืคื“ืคืŸ ื™ื›ื•ืœ ืœื“ื•ื•ื— ืขืœื™ื” ื›-Largest Contentful Paint.

3. Hero ืขื Bento Grid ื—ื™

Hero ื‘ืกื’ื ื•ืŸ Bento ืžื—ืœืง ืืช ื”ืžืกืš ื”ืจืืฉื•ืŸ ืœืืจื™ื—ื™ื ื‘ื’ื“ืœื™ื ืฉื•ื ื™ื, ื›ืžื• ืงื•ืคืกืช ืื•ื›ืœ ื™ืคื ื™ืช. ื”ื•ื ืขื•ื‘ื“ ื›ืฉื™ืฉ ืœืžื•ืฆืจ ื›ืžื” ื™ืชืจื•ื ื•ืช ื•ืื™ืŸ ื›ื•ืชืจืช ืื—ืช ืฉื™ื›ื•ืœื” ืœืฉืืช ืืช ื›ื•ืœื. Bento ืกื˜ื˜ื™ ื ืจืื” ื›ืžื• ื‘ืจื•ืฉื•ืจ, ื•ืœื›ืŸ ื›ืืŸ ื”ื›ืœ ื–ื–: ืžื•ื ื” ืžื‘ืงืจื™ื ื‘ื–ืžืŸ ืืžืช, ืคื™ื“ ืฉืœ ืื™ืจื•ืขื™ื ื—ื“ืฉื™ื, ืžืกืคืจื™ื ืฉืขื•ืœื™ื ื•-borders ืฉื ื“ืœืงื™ื ืžืชื—ืช ืœืขื›ื‘ืจ.

Live demo · Live bento grid
Pulseboard product analytics

Know what every visitor did next.

Funnels, retention and live sessions in one dashboard. Set up in five minutes, no SQL.

Activation, last 30 days

+38%

Signup funnel, this week
Visited
100%
Signed up
42%
Activated
31%
Paid
12%
Live now1,284
Used by product teams at
northwindHALCYONCorvidMERIDIANostralumenARBOR & COQUILLtessera

ื”-layout ื”ื•ื Grid ืขื ืื–ื•ืจื™ื ื‘ืขืœื™ ืฉื. ืืจื™ื— ื”ื›ื•ืชืจืช ืคืจื•ืฉ ืขืœ ืคื ื™ ืฉืชื™ ืขืžื•ื“ื•ืช ื•ืฉืชื™ ืฉื•ืจื•ืช, ื›ืš ืฉื”ื’ื•ื“ืœ ืœื‘ื“ื• ืื•ืžืจ ืœืขื™ืŸ ืžืื™ืคื” ืœื”ืชื—ื™ืœ. ืฉื ื™ Container Queries ืžืกื“ืจื™ื ืื•ืชื• ืžื—ื“ืฉ ื‘ืฉืชื™ ืขืžื•ื“ื•ืช, ื•ืื– ื‘ืขืžื•ื“ื” ืื—ืช:

.bento {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-template-areas:
    "head head stat feed"
    "head head chart feed"
    "logos logos logos logos";
}
@container hero (max-width: 820px) {
  .bento {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-areas: "head head" "stat chart" "feed feed" "logos logos";
  }
}

ื”-border ื”ื–ื•ื”ืจ ืขื•ืงื‘ ืื—ืจื™ ื”ืขื›ื‘ืจ. ืœื›ืœ ืืจื™ื— ื™ืฉ ืคืกืื•ื“ื•-ืืœืžื ื˜ ืขื radial gradient ื‘ืžื™ืงื•ื ื”ืขื›ื‘ืจ, ื•-mask ืฉื—ื•ืฉืฃ ืจืง ืืช ื”ืฉื•ืœื™ื™ื ื‘ืจื•ื—ื‘ ืคื™ืงืกืœ ืื—ื“:

.tile::after {
  content: '';
  position: absolute;
  inset: 0;
  padding: 1px;
  border-radius: inherit;
  background: radial-gradient(220px circle at var(--mx) var(--my), #1d6b43, transparent 70%);
  mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
}

ื›ืœืœื™ื ืฉืฉื•ืžืจื™ื ืขืœ Bento ืžืœื”ืคื•ืš ืœืขืจื™ืžืช ื›ืจื˜ื™ืกื™ื:

  • ืืจื™ื— ื“ื•ืžื™ื ื ื˜ื™ ืื—ื“. ืืจื™ื— ื”ื›ื•ืชืจืช ื”ื•ื ื”ื’ื“ื•ืœ ื‘ื™ื•ืชืจ ื•ื”ื™ื—ื™ื“ ืฉื›ื”ื”.
  • ื ืชื•ื ื™ื ืืžื™ืชื™ื™ื ื‘ืืจื™ื—ื™ื. ืžืกืคืจ, ื’ืจืฃ ืื• ืคื™ื“ ื—ื™ ืžืฆื“ื™ืงื™ื ืืช ื”ืžืงื•ื ืฉืœื”ื. ืืจื™ื— ืขื ืื™ื™ืงื•ืŸ ื•ื›ื•ืชืจืช ื‘ืœื‘ื“ ืœื.
  • ืกืคืจื•ืช ื˜ื‘ืœืื™ื•ืช ืœืžืกืคืจื™ื. font-variant-numeric: tabular-nums ืžื•ื ืข ืžืžื•ื ื” ืžืชืขื“ื›ืŸ ืœืงืคื•ืฅ, ื‘ืœื™ ืœืขื‘ื•ืจ ืœื’ื•ืคืŸ ืžื•ื ื•ืกืคื™ื™ืก.
  • ืคื—ื•ืช ืืจื™ื—ื™ื ื‘ื ื™ื™ื“. ื”ื“ื•ื’ืžื” ืžื•ื•ืชืจืช ืขืœ ื”ืžืฉืคืš ื•ืขืœ ืจืฆื•ืขืช ื”ืœื•ื’ื•ืื™ื ื‘ืžืกื›ื™ื ืฆืจื™ื, ื‘ืžืงื•ื ืœืขืจื•ื ืฉื™ืฉื” ื›ืจื˜ื™ืกื™ื ื–ื” ืขืœ ื–ื”.

4. Hero ืขื ืžืžืฉืง ืžื•ืฆืจ ืฉืžื“ื’ื™ื ืืช ืขืฆืžื•

Hero ืฉืœ ืžื•ืฆืจ ืžืฆื™ื’ ืืช ื”ืžืžืฉืง ืขืฆืžื•, ื•ื”-Hero ื”ื–ื” ื’ื ืžืคืขื™ืœ ืื•ืชื•: ืกืžืŸ ืดืจืคืื™ืืด ืžืชืื™ื ื‘ื™ืŸ ืฉืชื™ ื—ืฉื‘ื•ื ื™ื•ืช, ื”ืžื•ื ื™ื ืžืชืขื“ื›ื ื™ื, ื”ื•ื“ืขืช toast ืžืืฉืจืช ื›ืœ ื”ืชืืžื” ื•ื”ื—ื•ื“ืฉ ื ืกื’ืจ. ื”ื’ื•ืœืฉ ืจื•ืื” ืืช ื”ืžื•ืฆืจ ืขื•ื‘ื“ ืขื•ื“ ืœืคื ื™ ืฉื ืจืฉื.

Live demo · Self-playing product UI
New Auto-reconcile is live →

Close the books in hours, not weeks.

Ledgerline matches payouts, invoices and bank lines as they land, so month-end is a review, not a project.

2,400 finance teamsSOC 2 Type II

ื”ืžืžืฉืง ื”ื•ื HTML ื•-CSS ืจื’ื™ืœื™ื ื•ืœื ื•ื™ื“ืื• ืื• ืฆื™ืœื•ื ืžืกืš, ื›ืš ืฉื”ื•ื ื ืฉืืจ ื—ื“ ื‘ื›ืœ ื’ื•ื“ืœ ื•ืฉื•ืงืœ ื›ืžื” ืงื™ืœื•ื‘ื™ื™ื˜ื™ื ื‘ื•ื“ื“ื™ื. ื”ืคืื ืœื™ื ืžืžื•ืงืžื™ื ื‘ืžืจื—ื‘ ืชืœืช ืžืžื“ื™: ื”ืืœืžื ื˜ ื”ื”ื•ืจื” ืžื’ื“ื™ืจ perspective, ื”ืขืจื™ืžื” ืžืฉืชืžืฉืช ื‘-transform-style: preserve-3d, ื•ื›ืœ ื›ืจื˜ื™ืก ืฆืฃ ืžืงื‘ืœ ืขื•ืžืง ืžืฉืœื• ืขื translateZ().

ื”ืกื™ื•ืจ ื”ื•ื ืกืงืจื™ืคื˜ async ืงืฆืจ. ื”ืกืžืŸ ื–ื– ืข"ื™ ืฉื™ื ื•ื™ ืฉืœ ืฉื ื™ ืžืฉืชื ื™ CSS, ื•ื”-CSS ืžื˜ืคืœ ื‘ื”ืื˜ื” (easing):

async function tour() {
  while (true) {
    await untilVisible();
    await click(rowA.querySelector('.match'));  // cursor glides there, presses
    setStatus(rowA, 'Matched');
    count('matched', +1);
    toast('Invoice #4472 matched');
    await sleep(1000);
    await click(closeButton);
    showBanner('March closed, 3 days early');
    await sleep(5000);                         // hold, reset, loop
  }
}

ืกื™ื•ืจ ื›ื–ื” ื“ื•ืจืฉ ืืช ืื•ืชื” ืชืฉื•ืžืช ืœื‘ ื›ืžื• ื•ื™ื“ืื•. ื”ื•ื ื ืขืฆืจ ื›ืฉื”-Hero ื™ื•ืฆื ืžื”ืžืกืš, ื”ื•ื ืืฃ ืคืขื ืœื ืžื–ื™ื– ืืช ื”ืขื›ื‘ืจ ื”ืืžื™ืชื™ ื•ืœื ื’ื•ื ื‘ ืคื•ืงื•ืก, ื•ืชื—ืช ืชื ื•ืขื” ืžื•ืคื—ืชืช ื”ื•ื ื ืฉืืจ ื‘ืžืฆื‘ื• ื”ืจืืฉื•ืŸ. ืกืžื ื• ืืช ื”ืžืžืฉืง ื”ืžื“ื•ืžื” ื‘-aria-hidden="true", ืžื›ื™ื•ื•ืŸ ืฉื”ืžืกืคืจื™ื ืฉื‘ื• ื”ื ืงื™ืฉื•ื˜.

ื’ื•ืคืŸ ืžื•ื ื•ืกืคื™ื™ืก ืฉื™ื™ืš ืจืง ืœื ืชื•ื ื™ื ืฉื‘ืชื•ืš ื”ืžืžืฉืง: ืกื›ื•ืžื™ื, ืกืคื™ืจื•ืช, ืชื–ืจื™ื. ื”ื›ื•ืชืจืช ื•ื”ื›ืคืชื•ืจื™ื ื ืฉืืจื™ื ื‘ืกืื ืก.

5. Hero ืขื ื˜ื™ืคื•ื’ืจืคื™ื” ืงื™ื ื˜ื™ืช (Kinetic Type)

ืืช ื”-Hero ื”ื–ื” ื›ืžืขื˜ ืœื ืจื•ืื™ื ื‘ืืชืจื™ื. ื›ืœ ืื•ืช ื‘ื›ื•ืชืจืช ื ืขืฉื™ืช ื›ื‘ื“ื” ื•ืฆืจื” ื™ื•ืชืจ ื›ื›ืœ ืฉื”ืขื›ื‘ืจ ืžืชืงืจื‘ ืืœื™ื”, ื›ืื™ืœื• ื”ื˜ื™ืคื•ื’ืจืคื™ื” ืžื’ื™ื‘ื” ืืœื™ื›ื. ื‘ืžืกื›ื™ ืžื’ืข, ื’ืœ ืื™ื˜ื™ ืขื•ื‘ืจ ื“ืจืš ื”ืื•ืชื™ื•ืช ื‘ืžืงื•ื ื–ืืช.

Live demo · Kinetic proximity type
A conference on type for screensLisbon, 13 to 15 May 2027

Type thatmoves withyou.

Three days, one track, 24 speakers on variable fonts, motion and reading on screens.

ื–ื” ืขื•ื‘ื“ ืžื›ื™ื•ื•ืŸ ืฉืœื’ื•ืคืŸ ืžืฉืชื ื” (Variable Font) ื™ืฉ ืฆื™ืจื™ื ืจืฆื™ืคื™ื. ื”ื’ื•ืคืŸ ื›ืืŸ ื ืข ื‘ื™ืŸ ืžืฉืงืœ 300 ืœ-900 ื•ื‘ืจื•ื—ื‘ ืฉื‘ื™ืŸ 62.5 ืœ-100, ื›ืš ืฉื›ืœ ืื•ืช ื™ื›ื•ืœื” ืœืฉื‘ืช ื‘ื›ืœ ื ืงื•ื“ื” ื‘ื™ื ื™ื”ื. ื”-JavaScript ืžืคืจืง ืืช ื”ื›ื•ืชืจืช ืœืชื’ื™ื•ืช span ืœื›ืœ ืื•ืช ื•ืžื’ื“ื™ืจ ืขืœ ื›ืœ ืื—ืช ืฉื ื™ ืžืฉืชื ื™ื:

.ch {
  display: inline-block;
  font-variation-settings: "wght" var(--w, 300), "wdth" var(--s, 100);
}

ืœื•ืœืืช ืคืจื™ื™ืžื™ื ืžื•ื“ื“ืช ืืช ื”ืžืจื—ืง ื‘ื™ืŸ ื›ืœ ืื•ืช ืœืขื›ื‘ืจ ื•ืžืงืจื‘ืช ืืช ื”ืขืจื›ื™ื ื‘ื”ื“ืจื’ื” ืœื™ืขื“. ื”ื™ื ืจืฆื” ืจืง ื›ืฉื”-Hero ืขืœ ื”ืžืกืš, ื“ื‘ืจ ืฉื ื‘ื“ืง ื‘ืขื–ืจืช IntersectionObserver.

ืื™ืŸ ื›ืืŸ ืฉื™ืœื•ื‘ ื’ื•ืคื ื™ื, ื•ื–ื” ื‘ื›ื•ื•ื ื”: ืžืฉืคื—ื” ืžืฉืชื ื” ืื—ืช ื”ื™ื ื›ืœ ื”ื”ืฆื’ื”. ืฉื ื™ ืคืจื˜ื™ื ื”ื•ืคื›ื™ื ืืช ื–ื” ืœื‘ื˜ื•ื— ืœืฉื™ืžื•ืฉ:

  • ืงื•ืจืื™ ื”ืžืกืš ืžืงื‘ืœื™ื ืžืฉืคื˜ ื•ืœื ืื•ืชื™ื•ืช. ืชื’ื™ื•ืช ื”ืื•ืชื™ื•ืช ืžืกื•ืžื ื•ืช aria-hidden, ื•ืขื•ืชืง ืžื•ืกืชืจ ื•ื™ื–ื•ืืœื™ืช ืžื—ื–ื™ืง ืืช ื”ื›ื•ืชืจืช ื”ืžืœืื”.
  • ืฉืžืจื• ืขืœ ื›ื•ืชืจืช ืงืฆืจื”. ื›ืœ ืฉื™ื ื•ื™ ืจื•ื—ื‘ ืžืกื“ืจ ืžื—ื“ืฉ ืืช ื”ืฉื•ืจื”, ื•ืœื›ืŸ ื–ื” ืขื•ื‘ื“ ืœื›-25 ืื•ืชื™ื•ืช ื•ืœื ืœืคืกืงื”.

6. Hero ืขื ืงื•ื ืคื™ื’ื•ืจื˜ื•ืจ ื•-View Transitions

ื‘-Hero ื”ื–ื” ื”ืžื•ืฆืจ ื”ื•ื ื”ืงืจื™ืื” ืœืคืขื•ืœื”. ื‘ื—ืจื• ืฆื‘ืข ื•ื›ืœ ื”-Hero ืžืฉืชื ื” ื‘ื”ืชืื: ื”ืื•ื–ื ื™ื•ืช, ื”ืจืงืข ื•ื”ื˜ืงืกื˜. ื”ืžืจืื” ื”ื—ื“ืฉ ืžืชืคืฉื˜ ื‘ืžืขื’ืœ ืžืชื•ืš ื“ื•ื’ืžื™ืช ื”ืฆื‘ืข ืขืœื™ื” ืœื—ืฆืชื.

Live demo · View-transition configurator
Halo One / wireless over-ear

Silence, in four colours.

Adaptive noise cancelling, 40 hours of battery and cushions you forget you are wearing.

Ink · €349

ื›ืœ ืฆื‘ืข ืžื•ื’ื“ืจ ื›ืกื˜ ืฉืœ Custom Properties ืขืœ ื”-Hero, ื›ืš ืฉื”ื—ืœืคืช ืฆื‘ืข ื”ื™ื ืฉื™ื ื•ื™ ืฉืœ ืื˜ืจื™ื‘ื™ื•ื˜ ืื—ื“:

.hero[data-c="ink"]  { --bg: #121418; --ink: #f1efea; --body: #3a3e46; }
.hero[data-c="sand"] { --bg: #ece5d9; --ink: #231f19; --body: #cdbb9e; }
.headphones .cup     { fill: var(--body); }

ื”ื—ืฉื™ืคื” ืžื’ื™ืขื” ืžื”-View Transitions API. ื”ื“ืคื“ืคืŸ ืžืฆืœื ืืช ื”-Hero ืœืคื ื™ ื”ืฉื™ื ื•ื™ ื•ืื—ืจื™ื•, ื•ืืชื ืžื ืคื™ืฉื™ื ืืช ื”ืฆื™ืœื•ื ื”ื—ื“ืฉ ืขื ืขื™ื’ื•ืœ ืฉื’ื“ืœ:

hero.style.viewTransitionName = 'hero';
const vt = document.startViewTransition(() => { hero.dataset.c = colour; });

vt.ready.then(() => {
  document.documentElement.animate(
    { clipPath: [`circle(0 at ${x}px ${y}px)`, `circle(${r}px at ${x}px ${y}px)`] },
    { duration: 750, easing: 'cubic-bezier(.65, 0, .35, 1)',
      pseudoElement: '::view-transition-new(hero)' }
  );
});

View Transitions ื‘ืชื•ืš ืื•ืชื• ืžืกืžืš ืขื•ื‘ื“ื™ื ื‘ื›ืจื•ื 111 ื•ืžืขืœื”, ื‘ืกืคืืจื™ 18 ื•ืžืขืœื” ื•ื‘ืคื™ื™ืจืคื•ืงืก 144 ื•ืžืขืœื”. ื”ื™ื›ืŸ ืฉืื™ืŸ ืชืžื™ื›ื”, ืื• ืชื—ืช ืชื ื•ืขื” ืžื•ืคื—ืชืช, ื”ืฆื‘ืข ืคืฉื•ื˜ ืžืชื—ืœืฃ. ื“ื•ื’ืžื™ื•ืช ื”ืฆื‘ืข ื”ืŸ ืงื‘ื•ืฆืช radio ืืžื™ืชื™ืช, ื›ืš ืฉืžืงืฉื™ ื”ื—ื™ืฆื™ื ืขื•ื‘ืจื™ื ื‘ื™ืŸ ื”ืฆื‘ืขื™ื ื•ืงื•ืจื ืžืกืš ืžื›ืจื™ื– ืขืœ ื”ืฆื‘ืข ืฉื ื‘ื—ืจ.

ืฉื™ืœื•ื‘ ื”ื’ื•ืคื ื™ื ื”ื•ื ื”ืงืœืืกื™ ืฉืœ ืžื•ืชื’ื™ ื™ื•ืงืจื”: ืกืจื™ืฃ ืฆืจ ืœื›ื•ืชืจืช, ืขื ื”ืื™ื˜ืœื™ืง ืฉืœื• ื‘ืฆื‘ืข ื”ืžื•ืฆืจ, ื•ืกืื ืก ืคืฉื•ื˜ ืœื›ืœ ื”ืฉืืจ.

7. Hero ื‘ืกื’ื ื•ืŸ ืœื•ื— ื”ืžืจืื•ืช (Split-Flap)

ื”-Hero ื”ื–ื” ื”ื•ืคืš ืืช ื”ื›ื•ืชืจืช ืœืœื•ื— ื™ืฆื™ืื•ืช ืฉืœ ืชื—ื ืช ืจื›ื‘ืช. ื›ืœ ืื•ืช ืžืชื”ืคื›ืช ื“ืจืš ื”ืืœืคื‘ื™ืช ืขื“ ืฉื”ื™ื ื ื•ื—ืชืช, ื•ื”ืฉื•ืจื” ื”ืื—ืจื•ื ื” ืžืžืฉื™ื›ื” ืœื”ื—ืœื™ืฃ ื™ืขื“: ื‘ืจืœื™ืŸ, ื•ื™ื ื”, ืคืจืื’, ืคืจื™ื–.

Live demo · Split-flap board
Departures, Oslo Sentral22:14

Fall asleep in Oslo. Wake up in Berlin, Vienna, Prague or Paris.

Private cabins, real beds and breakfast at the border. Five sleeper routes from Oslo, every night.

ื›ืœ ืชื ื‘ื ื•ื™ ืžืืจื‘ืข ืฉื›ื‘ื•ืช: ื”ื—ืฆื™ ื”ืขืœื™ื•ืŸ ื•ื”ืชื—ืชื•ืŸ ืฉืœ ื”ืื•ืช ื”ื ื•ื›ื—ื™ืช, ื•ืขื•ื“ ืฉื ื™ ื“ืฉื™ื. ื”ื“ืฉ ื”ืขืœื™ื•ืŸ ืžืชืงืคืœ ืœืžื˜ื”, ื•ืื– ื”ื“ืฉ ื”ืชื—ืชื•ืŸ ืžืชืงืคืœ ืœืžืขืœื” ืขื ื”ืื•ืช ื”ื‘ืื”:

.cell .top-flap {
  transform-origin: 50% 100%;
  backface-visibility: hidden;
  animation: fold-down 38ms ease-in forwards;
}
.cell .bottom-flap {
  transform-origin: 50% 0;
  transform: rotateX(90deg);
  animation: fold-up 38ms ease-out 38ms forwards;
}
@keyframes fold-down { to { transform: rotateX(-90deg); } }
@keyframes fold-up   { to { transform: rotateX(0); } }

ื”-JavaScript ืžืขื‘ื™ืจ ื›ืœ ืชื ื“ืจืš ืกื˜ ื”ืชื•ื•ื™ื ืขื“ ืœื™ืขื“ ืฉืœื•, ื•ืžืชื—ื™ืœ ื›ืœ ืขืžื•ื“ื” 45 ืžื™ืœื™ืฉื ื™ื•ืช ืื—ืจื™ ื–ื• ืฉืœืคื ื™ื”, ื•ื–ื” ืžื” ืฉื ื•ืชืŸ ืœืœื•ื— ืืช ืืคืงื˜ ื”ื’ืœ. ื”ืœื•ื— ืžืกื•ืžืŸ aria-hidden, ื•ืžืฉืคื˜ ืžื•ืกืชืจ ื•ื™ื–ื•ืืœื™ืช ื ื•ืฉื ืืช ื”ืžืกืจ, ื›ืš ืฉืงื•ืจื ืžืกืš ืœื ืžืงืจื™ื ืืจื‘ืขื™ื ืื•ืชื™ื•ืช ืฉืžืชื—ืœืคื•ืช.

ืงื‘ืขื• ืืช ื’ื•ื“ืœ ื”ืชืื™ื ื‘-cqi ื›ืš ืฉื”ืœื•ื— ื›ื•ืœื• ื™ื™ื›ื ืก ื‘-Hero ื‘ื›ืœ ืจื•ื—ื‘. ื—ืžืฉ ืขืฉืจื” ืขืžื•ื“ื•ืช ืฉืœ 7.4cqi ื ื›ื ืกื•ืช ื‘ื˜ืœืคื•ืŸ ื‘ืจื•ื—ื‘ 390px ืขื ืžืงื•ื ืคื ื•ื™.

8. Hero ืงื•ืœื ื•ืขื™ ืžื‘ื•ืกืก ื’ืœื™ืœื” (Scroll-Driven)

ื”-Hero ื”ืงื•ืœื ื•ืขื™ ืžืชื—ื™ืœ ื›ื›ื•ืชืจืช ืžืขืœ ืชืžื•ื ื” ืžืžื•ืกื’ืจืช. ื‘ื–ืžืŸ ื”ื’ืœื™ืœื” ื”ืชืžื•ื ื” ื ืคืชื—ืช ืœืจื•ื—ื‘ ืžืœื, ื•ืžืคืจื˜ ื”ืžื•ืฆืจ ืžื•ืคื™ืข ื‘ืกื•ืฃ.

Live demo · Scroll-driven cinematic
Kestrel Field Unit

Go where the signal ends.

A satellite messenger the size of a lighter. Text from anywhere on Earth.

140 gweight21 daysbatterySpring 2027first units ship
Scroll

ื›ืœ ื”ืืคืงื˜ ื”ื•ื CSS. ื›ืš MDN ืžืชืืจื™ื ืืช ื”ืคื™ืฆ'ืจ:

"The CSS scroll-driven animations module provides functionality that builds on the CSS animations module and Web Animations API. It allows you to animate property values along a scroll-based timeline rather than the default time-based document timeline." (MDN, CSS scroll-driven animations)

ื”-Hero ื’ื‘ื•ื” ืžื”ืžืกืš ื•ื”ืฉื›ื‘ื” ื”ืคื ื™ืžื™ืช ืฉืœื• ื”ื™ื position: sticky, ื›ืš ืฉื”ื™ื ื ืฉืืจืช ื ืขื•ืฆื” ื‘ื–ืžืŸ ืฉื’ื•ืœืœื™ื ื“ืจื›ื•. View Timeline ืขื ืฉื ืฉืžื•ื’ื“ืจ ืขืœ ื”-Hero ืžื ื™ืข ืืช ื”ืื ื™ืžืฆื™ื•ืช:

.hero {
  height: 220svh;
  view-timeline: --cine block;
  view-timeline-inset: var(--header-height) 0px;
}
.hero-pin { position: sticky; top: var(--header-height); height: 100svh; }

@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .hero-media {
      animation: open linear both;
      animation-timeline: --cine;
      animation-range: contain 0% contain 60%;
    }
  }
}
@keyframes open {
  from { clip-path: inset(56% 14% 7% 14% round 14px); }
  to   { clip-path: inset(0 0 0 0 round 0); }
}

view-timeline-inset ืžืคื—ื™ืช ืืช ื’ื•ื‘ื” ื”ื”ื“ืจ ื”ืงื‘ื•ืข ืฉืœ ื”ืืชืจ, ื›ืš ืฉื”ืื ื™ืžืฆื™ื” ืžืชื—ื™ืœื” ื‘ืจืืฉ ื”ืขืžื•ื“ ื•ืœื 87px ืžืื•ื—ืจ ื™ื•ืชืจ. ื‘ืœื™ ืชืžื™ื›ื”, ืื• ืขื ืชื ื•ืขื” ืžื•ืคื—ืชืช, ื”-Hero ื—ื•ื–ืจ ืœ-layout ืจื’ื™ืœ ื‘ื’ื•ื‘ื” ืžืกืš ืื—ื“ ืฉื‘ื• ื”ื›ืœ ื’ืœื•ื™.

ืื ื™ืžืฆื™ื•ืช ืžื‘ื•ืกืกื•ืช ื’ืœื™ืœื” ืขื•ื‘ื“ื•ืช ื”ื™ื•ื ื‘ื›ืœ ื”ืžื ื•ืขื™ื ื”ื’ื“ื•ืœื™ื. ื›ืจื•ื ื•-Edge ืชื•ืžื›ื™ื ื‘ื”ืŸ ืžื’ืจืกื” 115, ืกืคืืจื™ ืžื’ืจืกื” 26, ื•-ืคื™ื™ืจืคื•ืงืก 159 ื”ืคืขื™ืœ ืื•ืชืŸ ื›ื‘ืจื™ืจืช ืžื—ื“ืœ ื‘-27 ื‘ืื•ืงื˜ื•ื‘ืจ 2026.

ืฉื›ื‘ื•ืช ืขืจืคืœ ื ืขื•ืช ื‘ืžื”ื™ืจื•ื™ื•ืช ืฉื•ื ื•ืช ื‘ื–ืžืŸ ื”ื’ืœื™ืœื”, ื”ื›ื•ื›ื‘ื™ื ื ืขืœืžื™ื ื›ืฉื”ืชืžื•ื ื” ื ืคืชื—ืช, ื•ื”ืžื›ืฉื™ืจ ืขืฆืžื• ืขื•ืœื” ื™ื—ื“ ืขื ื”ืžืคืจื˜ ื‘ืกื•ืฃ.

ื”ื›ื•ืชืจืช ืืฃ ืคืขื ืœื ื ืขืœืžืช. ืจืง ื”ืชื•ื•ื™ืช ื•ื”ื›ืคืชื•ืจ ื“ื•ื”ื™ื, ื›ืš ืฉื”ืžืกืจ ืขื“ื™ื™ืŸ ืฉื ื›ืฉื”ืชืžื•ื ื” ืžืžืœืืช ืืช ื”ืžืกืš. ื”ื’ื•ืคื ื™ื ืžื’ื™ืขื™ื ืžืžืฉืคื—ื” ืื—ืช ื‘ืฉื ื™ ืจื•ื—ื‘ื™ื: ื”ื—ื™ืชื•ืš ื”ืฆืคื•ืฃ ืœื›ื•ืชืจืช ื•ืœืžืคืจื˜, ื•ื”ืจื•ื—ื‘ ื”ืจื’ื™ืœ ืœืฉื•ืจื” ืฉืžืชื—ืชื™ื”ื.

ืœื’ื‘ื™ ื”ื’ื‘ื”ื™ื, svh ืžื•ื ืข ืžื”ืฉื›ื‘ื” ื”ื ืขื•ืฆื” ืœืงืคื•ืฅ ื›ืฉืกืจื’ืœ ื”ื›ืœื™ื ืฉืœ ื“ืคื“ืคืŸ ื”ื ื™ื™ื“ ืžื•ืคื™ืข ื•ื ืขืœื. ื”ืžื“ืจื™ืš ืœ-dvh, svh ื•-lvh ืžืกื‘ื™ืจ ืืช ื”ื”ื‘ื“ืœ.

9. Hero ื˜ื™ืคื•ื’ืจืคื™ ื‘ืกื’ื ื•ืŸ ืžื’ื–ื™ื ื™ (Editorial)

ื”-Hero ื”ื˜ื™ืคื•ื’ืจืคื™ ืžื•ื•ืชืจ ืขืœ ื”ืชืžื•ื ื” ื•ื ื•ืชืŸ ืœื›ื•ืชืจืช ืื—ืช ื’ื“ื•ืœื” ืœืฉืืช ืืช ื”ืขืžื•ื“. ื”ื•ื ืžืชืื™ื ืœืกื˜ื•ื“ื™ื•ืื™ื ื•ืœืžื•ืชื’ื™ื ืื™ืฉื™ื™ื, ืฉื‘ื”ื ื”ืงื•ืœ ื—ืฉื•ื‘ ื™ื•ืชืจ ืžืฆื™ืœื•ื ืžื•ืฆืจ.

Live demo · Type-first editorial
Independent design studio, Lisbon Booking spring 2027

Brands people remember long after the scroll.

Identity, websites and motion for companies that would rather be recognised than merely seen.

  1. 01Identity systems
  2. 02Websites
  3. 03Motion

ื’ื•ื“ืœ ื”ื›ื•ืชืจืช ื ื’ื–ืจ ืžืจื•ื—ื‘ ื”ืงื•ื ื˜ื™ื™ื ืจ, ื‘ืขื–ืจืช ื”ื™ื—ื™ื“ื” cqi (ืื—ื•ื– ืื—ื“ ืžื”ืจื•ื—ื‘ ื”ืคื ื™ืžื™ ืฉืœ ื”ืงื•ื ื˜ื™ื™ื ืจ). ืžื’ื‘ืœื” ืฉื ื™ื™ื”, ืœืคื™ ื’ื•ื‘ื” ื”ืžืกืš, ืžื•ื ืขืช ืžื”ื›ื•ืชืจืช ืœื’ืœื•ืฉ ื‘ืžืกืš ื ืžื•ืš ืฉืœ ืžื—ืฉื‘ ื ื™ื™ื“:

.hero-title {
  font-family: 'Instrument Serif', Georgia, serif;
  font-size: clamp(2.9rem, min(10.4cqi, var(--stage-height) * .135), 12rem);
  line-height: .9;
  text-wrap: balance;
  max-width: 16ch;
}

text-wrap: balance ืžืื–ืŸ ืืช ืื•ืจื›ื™ ื”ืฉื•ืจื•ืช ื›ืš ืฉื”ืฉื•ืจื” ื”ืื—ืจื•ื ื” ืœื ืชื”ื™ื” ืžื™ืœื” ื™ืชื•ืžื” ืื—ืช. ื”ืžื“ืจื™ืš ืœ-text-wrap ืžืกื‘ื™ืจ ืžืชื™ ืœื”ืฉืชืžืฉ ื‘-balance ื•ืžืชื™ pretty ื”ื™ื ื”ื‘ื—ื™ืจื” ื”ื˜ื•ื‘ื” ื™ื•ืชืจ.

ื”ืขื‘ื™ืจื• ืืช ื”ืขื›ื‘ืจ ืžืขืœ ืจืฉื™ืžืช ื”ืฉื™ืจื•ืชื™ื ื•ื›ืจื˜ื™ืก ืคืจื•ื™ืงื˜ ื™ืขืงื•ื‘ ืื—ืจื™ ื”ืกืžืŸ. ื–ื” ืžื”ืœืš ื ืคื•ืฅ ื‘ืืชืจื™ ืกื˜ื•ื“ื™ื•, ืฉื ื•ืชืŸ ืœ-Hero ื˜ื™ืคื•ื’ืจืคื™ ืžืฉื”ื• ืœื”ืจืื•ืช ื‘ืœื™ ืœื”ื•ืกื™ืฃ ืชืžื•ื ื” ืœื”ืฆื’ื” ื”ืจืืฉื•ื ื”.

ื”ื’ื•ืคื ื™ื ื›ืืŸ ืžื ื•ื’ื“ื™ื ื‘ื›ื•ื•ื ื”: ืกืจื™ืฃ ืชืฆื•ื’ื” ืฆืจ ื•ื‘ืขืœ ื ื™ื’ื•ื“ื™ื•ืช ื’ื‘ื•ื”ื” ืœื›ื•ืชืจืช, ื•ืกืื ืก ืคืฉื•ื˜ ืœื˜ืงืกื˜ ื”ืจืฅ. ืฉืžืจื• ืืช ื”ืกืจื™ืฃ ืœื›ื•ืชืจืช ื•ืœืœื•ื’ื• ื‘ืœื‘ื“, ืื—ืจืช ื”ื ื™ื’ื•ื“ ืžืคืกื™ืง ืœืขื‘ื•ื“.

ืฉื™ืžื• ืœื‘ ื’ื ืœืžืฉืงืœ ื”ื’ื•ืคืŸ ื‘ืจืฉืช. ื’ื•ืคืŸ ื”ืชืฆื•ื’ื” ื”ื•ื ื›ืœ ื”ืขื™ืฆื•ื‘ ื›ืืŸ, ืื– ื”ืกืชืคืงื• ื‘ืงื•ื‘ืฅ ืื—ื“. ื”ืกืจื™ืฃ ื‘ื“ื•ื’ืžื” ื–ื• ื”ื•ื subset ืœื˜ื™ื ื™ ืฉืœ 15KB ืขื font-display: swap.

10. Hero ืžื‘ื•ืกืก Prompt

ื‘-Hero ืžื‘ื•ืกืก Prompt, ืชื™ื‘ืช ื”ืงืœื˜ ื”ื™ื ื”ืงืจื™ืื” ืœืคืขื•ืœื”. ื”ื•ื ื”ืคืš ืœื‘ืจื™ืจืช ื”ืžื—ื“ืœ ืฉืœ ื›ืœื™ AI, ืžื›ื™ื•ื•ืŸ ืฉื”ื“ืจืš ื”ืžื”ื™ืจื” ื‘ื™ื•ืชืจ ืœื”ืฆื™ื’ ืืช ื”ืžื•ืฆืจ ื”ื™ื ืœืชืช ืœื’ื•ืœืฉ ืœื”ืฉืชืžืฉ ื‘ื• ื›ื‘ืจ ื‘ืžืกืš ื”ืจืืฉื•ืŸ.

Live demo · Prompt-first
Draftwise 2.0now with live preview

What will you build today?

Describe it in a sentence. Get a working site you can edit, host and own.

ื”-border ื”ื–ื•ื”ืจ ื”ื•ื conic gradient ืฉื”ื–ื•ื•ื™ืช ืฉืœื• ืžื•ื ืคืฉืช. Gradients ืœื ื™ื›ื•ืœื™ื ืœื”ื™ื•ืช ืžื•ื ืคืฉื™ื ื‘ืขืฆืžื, ืื‘ืœ Custom Property ืฉื ืจืฉื ืขื @property ื›ืŸ:

@property --angle {
  syntax: '<angle>';
  inherits: false;
  initial-value: 0deg;
}
.prompt {
  border: 1px solid transparent;
  background:
    linear-gradient(#171620, #171620) padding-box,
    conic-gradient(from var(--angle), #8a5af4, #dd56b8, #4e82e5, #8a5af4) border-box;
  animation: spin 7s linear infinite;
}
@keyframes spin { to { --angle: 360deg; } }

ื”ืžื“ืจื™ืš ืœ-@property ื‘-CSS ืžืฆื™ื’ ืืคืงื˜ื™ื ื ื•ืกืคื™ื ืฉื‘ื ื•ื™ื™ื ื‘ืื•ืชื” ืฆื•ืจื”.

ืœื—ืฆื• ืขืœ ืื—ืช ื”ื”ืฆืขื•ืช ื•ื—ืœื•ืŸ ืชืฆื•ื’ื” ืžืงื“ื™ืžื” ืงื˜ืŸ ื™ืจื›ื™ื‘ ืขื‘ื•ืจื” ืืชืจ: ื›ื•ืชืจืช, ื‘ืœื•ืง Hero, ืžื•ืฆืจื™ื ืื• ืชืคืจื™ื˜. ื–ื• ื”ื“ืžื™ื” ื‘ืœื‘ื“, ืื‘ืœ ื”ื™ื ืžืจืื” ืžื” ื”ืžื•ืฆืจ ืขื•ืฉื” ื›ื‘ืจ ื‘ืฉื ื™ื•ืช ื”ืจืืฉื•ื ื•ืช.

ืฉืžืจื• ืขืœ ืชื™ื‘ื” ืฉื ื•ื— ืœื”ืฉืชืžืฉ ื‘ื”:

  • ืชื ื• ืœื” label ืืžื™ืชื™. Placeholder ืื™ื ื• label. ื”ื“ื•ื’ืžื” ืžืฉืชืžืฉืช ื‘ืชื’ื™ืช <label> ืžื•ืกืชืจืช ื•ื™ื–ื•ืืœื™ืช.
  • ืืœ ืชืคืขื™ืœื• autofocus. ื‘ื˜ืœืคื•ืŸ ื–ื” ืคื•ืชื— ืืช ื”ืžืงืœื“ืช ืžืขืœ ื”-Hero ืฉืœื›ื.
  • ืขืฆืจื• placeholders ืžืชื—ืœืคื™ื ื›ืฉื”ืฉื“ื” ื‘ืคื•ืงื•ืก ืื• ืžื›ื™ืœ ื˜ืงืกื˜, ื•ืขืฆืจื• ืื•ืชื ืœื’ืžืจื™ ืชื—ืช ืชื ื•ืขื” ืžื•ืคื—ืชืช.

ื›ื™ืฆื“ ืขืฉืจืช ื”-Heroes ืžืชื—ื‘ืจื™ื: ืฆื‘ืข ื•ื˜ื™ืคื•ื’ืจืคื™ื”

ืขืฉืจ ืคืœื˜ื•ืช ืฉืื™ืŸ ื‘ื™ื ื™ื”ืŸ ืงืฉืจ, ื›ืฉื”ืŸ ืžื•ืฆื’ื•ืช ืื—ืช ืื—ืจื™ ื”ืฉื ื™ื™ื”, ื ืจืื•ืช ื›ืžื• ื—ื‘ื™ืœืช ืชื‘ื ื™ื•ืช. ื‘ืžืงื•ื ื–ืืช, ื”ืกื˜ ืฉื•ืžืจ ืขืœ ื›ืžื” ื›ืœืœื™ื:

  • ื‘ื”ื™ืจ ื•ื›ื”ื” ืžืชื—ืœืคื™ื ืœืคื™ ืกื“ืจ ื”ืกืจื’ืœ, ื›ืš ืฉื›ืœ ืžืขื‘ืจ ื”ื•ื ื”ื—ืœืคืช ืกืฆื ื” ื‘ืจื•ืจื”.
  • ืœืฆื‘ืขื™ ื”ื”ื“ื’ืฉื” ื™ืฉ ื‘ื”ื™ืจื•ืช ืžืฉื•ืชืคืช. ื‘-Heroes ื”ื›ื”ื™ื ื›ืœ ืฆื‘ืข ื”ื“ื’ืฉื” ื™ื•ืฉื‘ ื‘ืขืจืš ื‘ืื•ืชื” ื‘ื”ื™ืจื•ืช OKLCH ื›ืžื• ื”ื–ื”ื‘ ืฉืœ ื”ืืชืจ, ื›ืš ืฉืืฃ ืื—ื“ ืžื”ื ืœื ืžืืคื™ืœ ืขืœ ื”ืฉืืจ.
  • ืืฃ ืฆื‘ืข ื”ื“ื’ืฉื” ืœื ืงืจื•ื‘ ืœื–ื”ื‘ ืฉืœ ื”ืกืจื’ืœ, ื›ืš ืฉื”ืคืงื“ื™ื ืœืขื•ืœื ืœื ื ื‘ืœืขื™ื ื‘ืชื•ืš ื”ื“ื•ื’ืžื”.
  • ื”ืฆื‘ืขื™ื ื”ื ื™ื˜ืจืœื™ื™ื ืฆื‘ื•ืขื™ื ืœื›ื™ื•ื•ืŸ ื”ื’ื•ื•ืŸ ืฉืœ ื›ืœ Hero, ื•ืœื ืืคื•ืจ ืคืฉื•ื˜.
  • ืœื›ืœ Hero ื™ืฉ ื”ื“ื’ืฉื” ืžืฉืœื•. ืžื™ืœื” ื‘ืื™ื˜ืœื™ืง, ืžืจืงืจ, ืฉื™ื ื•ื™ ืžืฉืงืœ ืื• ื”ืขื“ืฉื”, ื•ืœื ืื•ืชื” ืžื™ืœื” ืฆื‘ื•ืขื” ืขืฉืจ ืคืขืžื™ื.

ื”ื˜ื™ืคื•ื’ืจืคื™ื” ืฉื•ืžืจืช ืขืœ ื›ืœืœ ืื—ื“: ืœื›ืœ ื”ื™ื•ืชืจ ืฉืชื™ ืžืฉืคื—ื•ืช ื’ื•ืคื ื™ื ื‘ื›ืœ Hero, ื•ืœื›ืœ ืื—ืช ืชืคืงื™ื“ ืื—ื“. ื”-Heroes ื”ื˜ื™ืคื•ื’ืจืคื™ื™ื ื•ืฉื ื™ ื”-Heroes ืขื ื”ืกืจื™ืฃ ืืฃ ืคืขื ืœื ืฆืžื•ื“ื™ื ื–ื” ืœื–ื” ื‘ืกืจื’ืœ, ื›ืš ืฉืื™ืŸ ืฉื ื™ ืฉื›ื ื™ื ืฉืžืจื’ื™ืฉื™ื ื“ื•ืžื™ื. ื’ื•ืคืŸ ืชืฆื•ื’ื” ืงื•ื‘ืข ืืช ื”ืงื•ืœ, ื’ื•ืคืŸ ื˜ืงืกื˜ ืžื™ื•ืขื“ ืœืงืจื™ืื”, ื•ืžื•ื ื•ืกืคื™ื™ืก ืžื•ืคื™ืข ืจืง ืœื ืชื•ื ื™ื.

ื›ืœ ืฆื‘ืขื™ ื”ื˜ืงืกื˜ ื‘ื“ื•ื’ืžืื•ืช ืขื•ืžื“ื™ื ื‘ื“ืจื™ืฉื•ืช ื™ื—ืก ื”ื ื™ื’ื•ื“ื™ื•ืช ืฉืœ WCAG, ื›ืœื•ืžืจ 4.5:1, ืื• 3:1 ืœื˜ืงืกื˜ ืชืฆื•ื’ื” ื’ื“ื•ืœ.

ืฆ'ืงืœื™ืกื˜ ื‘ื™ืฆื•ืขื™ื ื•ื ื’ื™ืฉื•ืช ืœ-Hero Section

ืœื ืžืฉื ื” ื‘ืื™ื–ื• ื’ื™ืฉื” ืชื‘ื—ืจื•, ื‘ื“ืงื• ืืช ื”ื“ื‘ืจื™ื ื”ื‘ืื™ื ืœืคื ื™ ืฉืืชื ืขื•ืœื™ื ืœืื•ื•ื™ืจ:

  • ื”ื›ื™ืจื• ืืช ืืœืžื ื˜ ื”-LCP ืฉืœื›ื. ื‘ืจื•ื‘ ื”-Heroes ื–ื• ื”ื›ื•ืชืจืช ืื• ื”ืชืžื•ื ื” ื”ืจืืฉื™ืช. ืœืขื•ืœื ืืœ ืชืชื—ื™ืœื• ืื•ืชื• ื‘-opacity: 0 ื‘ืฉื‘ื™ืœ ืื ื™ืžืฆื™ื™ืช ื›ื ื™ืกื”, ืžื›ื™ื•ื•ืŸ ืฉืืœืžื ื˜ ืฉืงื•ืฃ ืœื ื ืกืคืจ ื›ืžื•ืฆื’ ืขื“ ืฉื”ื•ื ืžื•ืคื™ืข.
  • ื”ืชืื™ืžื• ืืช ื’ื•ื“ืœ ื”ืชืžื•ื ื•ืช ืœืžืกืš. ื”ื’ื™ืฉื• ืงื•ื‘ืฅ ืงื˜ืŸ ื™ื•ืชืจ ืœื˜ืœืคื•ื ื™ื, ื•ื”ื™ืžื ืขื• ืžื•ื•ื™ื“ืื• ื›ื•ื•ื™ื–'ื•ืืœ ื”ื™ื—ื™ื“.
  • ื”ืฉืชืžืฉื• ื‘-svh ืœ-Heroes ื‘ื’ื•ื‘ื” ืžืœื ื•ืœื ื‘-100vh, ืฉื’ื‘ื•ื” ืžื”ืื–ื•ืจ ื”ื’ืœื•ื™ ื‘ื ื™ื™ื“.
  • ื›ื‘ื“ื• ืชื ื•ืขื” ืžื•ืคื—ืชืช. ืขื˜ืคื• ืชื ื•ืขื” ื‘-prefers-reduced-motion: no-preference ื•ืขืฆื‘ื• ืžืฆื‘ ืกื˜ื˜ื™ ื˜ื•ื‘.
  • ื‘ื“ืงื• ื ื™ื’ื•ื“ื™ื•ืช ื‘ื›ืœ ืฉื›ื‘ื”. ื’ื ื˜ืงืกื˜ ืžืขืœ gradients ื•ืชืžื•ื ื•ืช ืฆืจื™ืš 4.5:1.
  • ื”ืฉืชืžืฉื• ื‘ื›ืคืชื•ืจื™ื ื•ื‘-labels ืืžื™ืชื™ื™ื. ืงืจื™ืื” ืœืคืขื•ืœื” ืฉื”ื™ื div ืžืขื•ืฆื‘ ืื™ื ื” ื ื’ื™ืฉื” ืžื”ืžืงืœื“ืช.

ืฉืืœื•ืช ื ืคื•ืฆื•ืช

ืฉืืœื•ืช ื ืคื•ืฆื•ืช ื‘ื ื•ืฉื Hero Sections:

ืžื”ื• Hero Section ื‘ืืชืจ?
ื”-Hero Section ื”ื•ื ื”ื‘ืœื•ืง ื”ืจืืฉื•ืŸ ื‘ืจืืฉ ื”ืขืžื•ื“, ืฉื ืจืื” ืขื•ื“ ืœืคื ื™ ืฉื’ื•ืœืœื™ื. ื‘ื“ืจืš ื›ืœืœ ื”ื•ื ืžื›ื™ืœ ืืช ื”ื›ื•ืชืจืช ื”ืจืืฉื™ืช, ืฉื•ืจื” ืชื•ืžื›ืช ืงืฆืจื”, ืงืจื™ืื” ืœืคืขื•ืœื” ื•ื•ื™ื–'ื•ืืœ, ื•ื”ื•ื ืื•ืžืจ ืœื’ื•ืœืฉื™ื ืžื” ื”ืขืžื•ื“ ืžืฆื™ืข.
ืžื” ืฆืจื™ืš ืœื›ืœื•ืœ Hero Section?
ื›ื•ืชืจืช ื‘ืจื•ืจื”, ืžืฉืคื˜ ืชื•ืžืš ืื—ื“, ืงืจื™ืื” ืจืืฉื™ืช ืื—ืช ืœืคืขื•ืœื” ื•ื•ื™ื–'ื•ืืœ ืฉืžืฆื™ื’ ืืช ื”ืžื•ืฆืจ ืื• ืืช ื”ืขื‘ื•ื“ื”. ืื ื™ืฉ ืœื›ื ืื•ืช ืืžื•ืŸ, ื›ืžื• ืจืฉื™ืžืช ืœืงื•ื—ื•ืช ืื• ืžืกืคืจ ืžืจื›ื–ื™, ื”ื•ืกื™ืคื• ื’ื ืื•ืชื•.
ืžื” ื”ื’ื•ื‘ื” ื”ืžื•ืžืœืฅ ืœ-Hero Section?
ื”ื•ื ืœื ื—ื™ื™ื‘ ืœืžืœื ืืช ื”ืžืกืš. Heroes ื‘ื’ื•ื‘ื” ืžืœื ืžืชืื™ืžื™ื ืœืขืžื•ื“ื™ ืžื•ืชื’ ื•ื”ืฉืงื”; ื”ืฉืชืžืฉื• ื‘-100svh ืคื—ื•ืช ื’ื•ื‘ื” ื”ื”ื“ืจ ื›ื“ื™ ืฉื™ื™ื›ื ืก ื‘ื ื™ื™ื“. ื‘ืขืžื•ื“ื™ ืžื•ืฆืจ ืขื“ื™ืฃ ืœืจื•ื‘ Hero ื ืžื•ืš ื™ื•ืชืจ, ืฉืžืจืื” ืจืžื– ืœื—ืœืง ื”ื‘ื.
ืื™ืœื• ื’ื•ืคื ื™ื ืžืชืื™ืžื™ื ืœ-Hero Section?
ื”ืฉืชืžืฉื• ืœื›ืœ ื”ื™ื•ืชืจ ื‘ืฉืชื™ ืžืฉืคื—ื•ืช, ืœื›ืœ ืื—ืช ืชืคืงื™ื“ ืื—ื“: ื’ื•ืคืŸ ืชืฆื•ื’ื” ืœื›ื•ืชืจืช ื•ื’ื•ืคืŸ ื˜ืงืกื˜ ืงืจื™ื ืœืฉืืจ. ื’ื•ืคืŸ ืžืฉืชื ื” (Variable Font) ื™ื›ื•ืœ ืœื›ืกื•ืช ืืช ืฉื ื™ื”ื ื‘ืขื–ืจืช ืžืฉืงืœื™ื ื•ืจื•ื—ื‘ื™ื ืฉื•ื ื™ื, ื•ื”ื•ื ืขื•ืœื” ืงื•ื‘ืฅ ืื—ื“ ื‘ืžืงื•ื ื›ืžื”.
ืืคืฉืจ ื›ื‘ืจ ืœื”ืฉืชืžืฉ ื‘ืื ื™ืžืฆื™ื•ืช ืžื‘ื•ืกืกื•ืช ื’ืœื™ืœื” ื‘-Hero?
ื›ืŸ. ื›ืจื•ื ื•-Edge ืžื’ืจืกื” 115, ืกืคืืจื™ ืžื’ืจืกื” 26 ื•ืคื™ื™ืจืคื•ืงืก ืžื’ืจืกื” 159 ืชื•ืžื›ื™ื ื‘ื”ืŸ. ืขื˜ืคื• ืืช ื”ืื ื™ืžืฆื™ื” ื‘-@supports (animation-timeline: view()) ื•ื‘-prefers-reduced-motion, ื•ื•ื“ืื• ืฉื”-Hero ื ืงืจื ื”ื™ื˜ื‘ ื’ื ื‘ืœืขื“ื™ื”.
ื›ื™ืฆื“ ื”ื•ืคื›ื™ื Hero Section ืœืจืกืคื•ื ืกื™ื‘ื™?
ื”ืคื›ื• ืืช ื”-Hero ืœืงื•ื ื˜ื™ื™ื ืจ ืžื‘ื•ืกืก ื’ื•ื“ืœ ื•ื›ืชื‘ื• ืืช ื ืงื•ื“ื•ืช ื”ืฉื‘ื™ืจื” ืฉืœื• ื›-Container Queries, ื•ืื– ืงื‘ืขื• ืืช ื’ื•ื“ืœ ื”ื˜ืงืกื˜ ืขื clamp() ื•ื™ื—ื™ื“ื•ืช cqi. ื›ืš ื”-Hero ืžืชืื™ื ืืช ืขืฆืžื• ืœืžืงื•ื ืฉื”ื•ื ืžืงื‘ืœ, ื‘ื™ืŸ ืื ื–ื” ืžืกืš ืžืœื, ืขืžื•ื“ื” ืื• ืชืฆื•ื’ื” ืžืงื“ื™ืžื”.

ืกื™ื›ื•ื

Hero Section ืžื•ื“ืจื ื™ ืขื•ืฉื” ืขื‘ื•ื“ื” ืื—ืช: ื”ื•ื ืื•ืžืจ ืœื’ื•ืœืฉื™ื ืžื” ื”ืขืžื•ื“ ืžืฆื™ืข ื•ืžื” ืœืขืฉื•ืช ื”ืœืื”, ื•ืžื”ืจ. ืขืฉืจ ื”ื’ื™ืฉื•ืช ื›ืืŸ ืžื’ื™ืขื•ืช ืœืฉื ื‘ื“ืจื›ื™ื ืฉื•ื ื•ืช ืžืื•ื“. ืื—ืช ื”ื™ื ืคืฉื•ื˜ ื›ื•ืชืจืช ื’ื“ื•ืœื”, ืื—ืช ื”ื™ื ืขื“ืฉื” ืฉื—ื•ืฉืคืช ืืช ื”ืฉืจื˜ื•ื˜ ืฉืžืชื—ืช ืœืขื™ืฆื•ื‘, ื•ืื—ืช ื”ื™ื ืœื•ื— ืžืจืื•ืช ืฉื”ื•ืคืš ื‘ืขืฆืžื• ืืช ื”ืื•ืชื™ื•ืช ืฉืœื•.

ื‘ื—ืจื• ืืช ื”ื’ื™ืฉื” ืฉืžืชืื™ืžื” ืœืกื™ืคื•ืจ ืฉืœื›ื, ื‘ื ื• ืื•ืชื” ื›ืงื•ื ื˜ื™ื™ื ืจ ื›ืš ืฉืชืขื‘ื•ื“ ื‘ื›ืœ ืจื•ื—ื‘, ืฉืœื‘ื• ืœื›ืœ ื”ื™ื•ืชืจ ืฉื ื™ ื’ื•ืคื ื™ื ืขื ืชืคืงื™ื“ื™ื ื‘ืจื•ืจื™ื, ื•ืชื ื• ืœื›ืœ ืชื ื•ืขื” ื—ืœื•ืคื” ืกื˜ื˜ื™ืช ื•ืจื’ื•ืขื”. ืื ื™ ืžืงื•ื•ื” ืฉื”ื“ื•ื’ืžืื•ืช ื™ืชื ื• ืœื›ื ื”ืฉืจืื” ืœ-Hero ื”ื‘ื ืฉืœื›ื.

ื“ื™ื•ืŸ ื•ืชื’ื•ื‘ื•ืช
[  0 ืชื’ื•ื‘ื•ืช  ]

ื”ืฉืื™ืจื• ืชื’ื•ื‘ื”

ื”ื•ืกื™ืคื• ืงื•ื“ ื‘ืืžืฆืขื•ืช ื”ื›ืคืชื•ืจื™ื ืžื˜ื”. ืœืžืฉืœ, ื‘ื›ื“ื™ ืœื”ื•ืกื™ืฃ PHP ืœื—ืฆื• ืขืœ ื”ื›ืคืชื•ืจ PHP ื•ื”ื•ืกื™ืคื• ืืช ื”ืงื•ื“ ื‘ืชื•ืš ื”ืฉื•ืจื˜ืงื•ื“. ืžืฆืืชื ืฉื’ื™ืื” ื‘ืคื•ืกื˜? ืขื“ื›ื ื• ืื•ืชื ื•...