Internal QA/reference page for the canonical LAGO content container. Every example uses the real production LagoContentCard component. Not linked from any product navigation.
DS-003 LagoContentCard — the canonical shared content container. 12px radius, 1px semantic border, white surface, no default shadow. Media is flush to the card edge (0px gap).
A guided 2-hour sunset paddle through the lakes of Muskoka.
Half-day charter with a licensed captain. Rods and bait provided.
Full-day pontoon rental. Seats up to 10 guests comfortably.
For dense layouts — lists, search results, side panels.
Hover, pressed, focus-visible via the interactive prop or onClick. Visible focus ring is teal.
Tab to me to see the focus ring.
Renders as a router Link.
0px image-to-border gap. 16:9 default. object-fit cover. Card overflow-hidden clips the top corners to the 12px radius. Content padding begins below the media.



overflow-hidden rounded-xl clips the media's top corners to the 12px radius. No inner padding around the image.The full anatomy of LagoContentCard — title, metadata, description, divider, footer, children — plus responsive and accessibility behavior.
Children content sits between description and footer.
Footer pins to the bottom (mt-auto). Use DS-001 Button for actions.
Footer actions align to the card bottom.
The divider separates content from footer.
Card grids collapse to fewer columns on narrow screens. Actions may stack beneath the title on mobile.
Grid collapses 4→2→1 columns.
Grid collapses 4→2→1 columns.
Grid collapses 4→2→1 columns.
Grid collapses 4→2→1 columns.
Component: src/components/lago/LagoContentCard.jsx
Geometry: 12px radius (rounded-xl), 1px border, no default shadow
Padding: 24px default (p-6) / 16px compact (p-4)
Media: flush 16:9, object-fit cover, 0px gap to border
Dependencies: DS-001 Button (footer/action), DS-002 Lucide, DS-009 LagoStatusBadge
src/components/ui/card.jsx primitive is unchanged — 41 consumers unaffected. LagoContentCard is the canonical DS-003 implementation.Regression specimen for narrow viewports (320–430px). Long unbreakable strings, multiple actions, and flush media must remain fully inside the card. No horizontal page scroll.
Constrained to 240px to simulate the tightest grid cell at mobile widths.
Media stays flush and 16:9; long title/metadata wrap inside the card.



break-words; flex children shrink via min-w-0.