`.
Use this when you're placing the card inside your own layout.
- **Grid column** — when `gridColSpan` is provided, the card renders as
`PageGrid.Col as="li"` with the modifier class
`bds-card-text-icon-card--grid-col`. The card *is* the grid column, so it must
sit inside a `PageGrid.Row as="ul"`.
This is how [CardsTextGrid](../../sections/CardsTextGrid/README.md) and
[CardsIconGrid](../../sections/CardsIconGrid/README.md) consume it — both pass
`gridColSpan={{ base: 4, md: 4, lg: 6 }}`.
```tsx
```
### Heading levels
`headingAs` defaults to `'h3'`. Because these cards are usually rendered under a
section heading, set it explicitly when `h3` would skip a level:
```tsx
```
## Component Structure
```tsx
<>
{icon && (

)}
{heading}
{description}
>
```
## Responsive Sizing
| Breakpoint | Icon Size | Padding | Gap |
|------------|-----------|---------|-----|
| Base (< 576px) | 32px | 16px | 16px |
| MD (576px - 991px) | 36px | 20px | 20px |
| LG (≥ 992px) | 40px | 32px | 24px |
## Files
- `CardTextIconCard.tsx` - React component with TypeScript
- `CardTextIconCard.scss` - Styles with BEM naming
- `index.ts` - Barrel exports
- `README.md` - This file
## Import
```tsx
import { CardTextIconCard } from 'shared/components/CardTextIcon';
// or
import { CardTextIconCard, type CardTextIconCardProps } from 'shared/components/CardTextIcon';
```
## Design System
Part of the Brand Design System (BDS) with `bds-` namespace prefix.