169 lines
2.6 KiB
CSS
169 lines
2.6 KiB
CSS
.nextStayCard {
|
|
border-radius: var(--Corner-Radius-lg);
|
|
border: 1px solid var(--Border-Default);
|
|
overflow: hidden;
|
|
display: flex;
|
|
flex-direction: column;
|
|
background: var(--Base-Surface-Primary-light-Normal);
|
|
}
|
|
|
|
.imageContainer {
|
|
position: relative;
|
|
width: 100%;
|
|
aspect-ratio: 16/9;
|
|
border-radius: var(--Corner-Radius-lg) var(--Corner-Radius-lg) 0 0;
|
|
background:
|
|
linear-gradient(0deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.4) 100%),
|
|
lightgray 50% / cover no-repeat,
|
|
var(--Neutral-20);
|
|
overflow: hidden;
|
|
}
|
|
|
|
.image {
|
|
width: 100%;
|
|
height: 100%;
|
|
object-fit: cover;
|
|
position: relative;
|
|
z-index: 1;
|
|
}
|
|
|
|
.imageOverlay {
|
|
position: absolute;
|
|
inset: 0;
|
|
background: linear-gradient(
|
|
to bottom,
|
|
rgba(0, 0, 0, 0.1) 0%,
|
|
rgba(0, 0, 0, 0.3) 50%,
|
|
rgba(0, 0, 0, 0.6) 100%
|
|
);
|
|
display: flex;
|
|
padding: 1.5rem;
|
|
z-index: 2;
|
|
flex-direction: column;
|
|
justify-content: center;
|
|
align-items: center;
|
|
text-align: center;
|
|
}
|
|
|
|
.overlayText {
|
|
color: white;
|
|
text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
|
|
}
|
|
|
|
.content {
|
|
padding: var(--Space-x3);
|
|
display: grid;
|
|
grid-template-areas:
|
|
"header"
|
|
"."
|
|
"booking"
|
|
"."
|
|
"actions";
|
|
grid-template-rows:
|
|
auto var(--Space-x3)
|
|
auto var(--Space-x2)
|
|
auto;
|
|
}
|
|
|
|
.header {
|
|
grid-area: header;
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: var(--Space-x1);
|
|
}
|
|
|
|
.daysUntil,
|
|
.address {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: var(--Space-x15);
|
|
}
|
|
|
|
.daysUntil {
|
|
color: var(--Text-Heading);
|
|
}
|
|
|
|
.address {
|
|
color: var(--Text-Accent-Primary);
|
|
}
|
|
|
|
.daysUntilIcon,
|
|
.addressIcon {
|
|
display: flex;
|
|
align-items: center;
|
|
}
|
|
|
|
.booking {
|
|
grid-area: booking;
|
|
display: grid;
|
|
gap: var(--Space-x1);
|
|
}
|
|
|
|
.bookingInfo {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
}
|
|
|
|
.bookingInfo span:first-child {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: var(--Space-x05);
|
|
}
|
|
|
|
.fromToDates {
|
|
display: flex;
|
|
gap: var(--Space-x05);
|
|
}
|
|
|
|
.actions {
|
|
grid-area: actions;
|
|
}
|
|
|
|
.cta {
|
|
width: 100%;
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.nextStayCard {
|
|
max-width: 100%;
|
|
}
|
|
|
|
.imageContainer {
|
|
aspect-ratio: 21/9;
|
|
}
|
|
|
|
.imageOverlay {
|
|
padding: 2rem;
|
|
}
|
|
}
|
|
|
|
@media (min-width: 1367px) {
|
|
.nextStayCard {
|
|
display: grid;
|
|
grid-template-columns: 1fr 1fr;
|
|
align-items: stretch;
|
|
}
|
|
|
|
.imageContainer {
|
|
flex: 1;
|
|
aspect-ratio: 16/9;
|
|
width: 100%;
|
|
border-radius: var(--Corner-Radius-lg) 0 0 var(--Corner-Radius-lg);
|
|
}
|
|
|
|
.content {
|
|
width: 100%;
|
|
padding: var(--Space-x4);
|
|
grid-template-areas:
|
|
"header"
|
|
"."
|
|
"booking"
|
|
"."
|
|
"actions";
|
|
grid-template-rows:
|
|
auto var(--Space-x6)
|
|
auto var(--Space-x3)
|
|
auto;
|
|
}
|
|
}
|