feat(SW-1542): Carousel component * feat(SW-1542): add Embla Carousel component and use in CarouselCards * fix(SW-1542): remove max-width constraint for card on ipad * fix(SW-1542): Add padding to start page content container * refactor(SW-1542): Improve Embla Carousel type imports * refactor(SW-1542): Remove unnecessary carousel wrapper div * refactor(SW-1542): Modularize Carousel component structure * refactor(SW-1542): Remove carousel dots display * feat(SW-1542): Add carousel dots navigation * refactor(SW-1542): Update Carousel component styling and types * refactor(SW-1542): Remove uneeded useCallback from Carousel navigation methods * refactor(SW-1542): Modify CarouselContextProps type to exclude className * refactor(SW-1542): Optimize React imports in Carousel components * refactor(SW-1542): Consolidate Carousel component and remove CarouselRoot * refactor(SW-1542): Update Carousel navigation methods to use function-based scroll checks * refactor(SW-1542): Add explicit children prop support to CarouselContent component * refactor(SW-1542): Add children prop support to CarouselItem component Approved-by: Christian Andolf
57 lines
970 B
CSS
57 lines
970 B
CSS
.card {
|
|
display: grid;
|
|
}
|
|
|
|
.imageContainer {
|
|
position: relative;
|
|
aspect-ratio: 16/9;
|
|
border-radius: var(--Corner-radius-Medium);
|
|
overflow: hidden;
|
|
transition: border-radius 0.3s ease-in-out;
|
|
}
|
|
|
|
.image {
|
|
border-radius: var(--Corner-radius-Medium);
|
|
transition:
|
|
transform 0.3s ease-in-out,
|
|
border-radius 0.3s ease-in-out;
|
|
}
|
|
|
|
.card:hover,
|
|
.card:hover .imageContainer,
|
|
.card:hover .image {
|
|
border-radius: var(--Corner-radius-Large);
|
|
}
|
|
|
|
.card:hover .image {
|
|
transform: scale(1.05);
|
|
}
|
|
|
|
.promoTag {
|
|
position: absolute;
|
|
top: 14px;
|
|
left: 14px;
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
.content {
|
|
display: flex;
|
|
padding: var(--Spacing-x-one-and-half);
|
|
flex-direction: column;
|
|
align-items: flex-start;
|
|
gap: var(--Spacing-x-one-and-half);
|
|
align-self: stretch;
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.content {
|
|
padding: var(--Spacing-x2) var(--Spacing-x2) var(--Spacing-x2) 0;
|
|
}
|
|
}
|
|
|
|
@media (max-width: 767px) {
|
|
.card {
|
|
min-width: 300px;
|
|
}
|
|
}
|