Plain editable Etch tree (eyebrow, heading, intro) holding a 3D image ribbon: only the card is a component ("Bend Card": image, imageAlt, caption), placed as six instances that can be duplicated, reordered or deleted in Layers. Built on Swiper for the drag/swipe track; a tiny per-frame handler reads each slide's built-in progress value and writes it to a –p custom property, which the CSS alone turns into a perspective rotate + depth push + a light sweep across the card's seam lines, so cards lean and flex like a jointed ribbon as they travel — no JS animation loop, just one number driving CSS. Every carousel option is a data attribute on the Ribbon element (edit it in Etch's attributes panel): images (per card: image, imageAlt, caption); data-bend (subtle|medium|strong) how far each card leans in 3D perspective as it leaves centre; data-segments (3|5|7) number of seam lines etched across each card, giving it the look of a jointed, flexible strip; data-nav (drag|arrows|both) which input drives navigation: pointer drag/swipe only, arrow buttons only, or both (keyboard arrows always work for accessibility). Without JS the track is a native scroll-snap row with the controls hidden. Labelled carousel region, :focus-visible rings, keyboard arrows always available, no perspective animation under prefers-reduced-motion.