diff --git a/README.md b/README.md
index 57728f54f..b3fe094e5 100644
--- a/README.md
+++ b/README.md
@@ -682,7 +682,7 @@ Astro Rocket includes 44 components across four categories. All UI components us
| Layout | 2 | Header (with scroll progress bar), Footer |
| Hero | 1 | Hero section with centered/split layouts, grid pattern, and typing effect |
-`src/components/` also holds components built for this site's own pages — blog, landing, SEO and theme-switching pieces, the `YouTube` embed for MDX, and the `Callout` and `LetterGlitchBand` patterns. They are outside the 44 that `component-registry.json` counts.
+`src/components/` also holds components built for this site's own pages — blog, landing, SEO and theme-switching pieces, the `YouTube` embed for MDX, and the `Callout`, `CtaBand` and `LetterGlitchBand` patterns. They are outside the 44 that `component-registry.json` counts.
### Usage Example
diff --git a/src/components/blog/BlogCta.astro b/src/components/blog/BlogCta.astro
index a550a1732..3f4631387 100644
--- a/src/components/blog/BlogCta.astro
+++ b/src/components/blog/BlogCta.astro
@@ -12,11 +12,12 @@
* the same invitation wherever someone meets it; the copy is `blog.cta` in the
* locale files, which makes changing it a content change.
*
- * The arrangement is the one the old block used — a plain CTA on a phone, the
- * LetterGlitch band from `md` up — because that was already carrying this slot
- * on every blog page and there is no reason to move it.
+ * One band at every width. It used to be a pair — a flat CTA on a phone and
+ * the LetterGlitch band from `glitch` up — because the canvas cannot run below
+ * that breakpoint. A gradient has no such limit, so the duplicate is gone and
+ * every screen gets the same block.
*/
-import CTA from '@/components/ui/marketing/CTA/CTA.astro';
+import CtaBand from '@/components/patterns/CtaBand.astro';
import LetterGlitchBand from '@/components/patterns/LetterGlitchBand.astro';
import Button from '@/components/ui/form/Button/Button.astro';
import Icon from '@/components/ui/primitives/Icon/Icon.astro';
@@ -25,17 +26,22 @@ import { t } from '@/i18n';
interface Props {
locale: string;
- /** Render the desktop LetterGlitch band beneath the mobile CTA. */
- glitchBand?: boolean;
- /** Classes for the mobile CTA element. */
- ctaClass?: string;
- /** Classes for the section wrapping the desktop band. */
- bandSectionClass?: string;
- /** Inner width of the desktop band. Matches LetterGlitchBand's own prop. */
- bandMaxWidth?: '6xl' | '7xl';
+ /** Classes for the section wrapping the band — background, spacing. */
+ sectionClass?: string;
+ /** Inner width of the band. Matches CtaBand's own prop. */
+ maxWidth?: '6xl' | '7xl';
+ /**
+ * Swap the gradient band for the LetterGlitch canvas on desktop.
+ *
+ * Off everywhere but the post that documents the effect, which is the one
+ * page where a reader is there for it. Below `glitch` — 1024px and a fine
+ * pointer — the canvas cannot run, so those screens keep the gradient band
+ * and the page still closes on something.
+ */
+ glitch?: boolean;
}
-const { locale, glitchBand = true, ctaClass, bandSectionClass, bandMaxWidth } = Astro.props;
+const { locale, sectionClass, maxWidth = '6xl', glitch = false } = Astro.props;
/**
* The repo, taken from the site's own links so a fork points at its own rather
@@ -46,27 +52,31 @@ const repoUrl =
'https://github.com/hansmartensdev/astro-rocket';
---
- {t('blog.cta.description', locale)}
+ {t('blog.cta.description', locale)}
+ {t('blog.cta.heading', locale)}
-
+ {t('blog.cta.heading', locale)}
+
+
{cta.description}
-- {cta.description} -
-- {cta.description} -
-