Trigger button + slide-out panel. The panel body embeds content elements via sflg_drawer_content (Collection, foreign_table=tt_content) — editors create/edit whatever CE fits inline: the real form plugin for a contact drawer, an image slider CE for a lodge drawer, plain text for a testimonial, etc. Rendered via content-blocks' own {data._grids.*} mechanism (same method used for the hero-search element) — no custom TypoScript needed; page.typoscript's "page-content" dataProcessing keeps these children from also rendering as loose page content. header/subheader/bodytext cover the shared intro (title/eyebrow/text) above that content.

{data -> f:render.text(field: 'bodytext')}