--- /** * InterestHero.astro * --------------------------------------------------------------------------- * Shared header for every interest sub-page, implementing the spec's * per-interest template (Header: title + tagline; Overview: narrative). Uses the * warm "interest" surface tone via InterestLayout. * * The decorative icon and the tagline (in mono, as a pull quote) give each page * a consistent rhythm while the page supplies its own title + overview copy. * * An optional `image` prop renders a wide celestial-framed banner behind / above * the heading so each interest page leads with a vibe-matched photo. A faint * starfield + alchemical accent reinforces the esoteric mood. */ import Icon from '@components/Icon.astro'; import Reveal from '@components/motion/Reveal.astro'; import AnimatedBackground from '@components/hero/AnimatedBackground.tsx'; import StarBurst from '@components/mystic/StarBurst.astro'; interface Props { /** mdi icon used as the decorative mark. */ icon: string; title: string; /** The italicized pull-quote tagline from the spec. */ tagline: string; /** Back-to-hub breadcrumb label. */ eyebrow?: string; /** Optional hero banner image (vibe-matched stock; swap for real photos). */ image?: string; imageAlt?: string; } const { icon, title, tagline, eyebrow = 'Interests', image, imageAlt = '', } = Astro.props; ---
{eyebrow} {image && (
{imageAlt}
)}

{title}

{tagline}