File: D:/HostingSpaces/SBogers10/reiskick.komma.nl/resources/sass/5-Components/_components.card.scss
.c-card {
position: relative;
display: flex;
flex-direction: column;
height: 100%;
text-decoration: none;
cursor: pointer;
@include border-radius(l);
overflow: hidden;
&:before,
&:after{
content: '';
position: absolute;
z-index: 2;
left: 0;
bottom: 0;
width: 100%;
}
&:before {
height: 100%;
background: palette(secondary, 950);
opacity: 0;
transition: opacity 0.4s;
}
&:after {
height: 50%;
background-image: linear-gradient(to bottom, rgba(palette(secondary, 400), 0), rgba(palette(secondary, 950), 0.8));
}
&:hover {
&:before {
opacity: 0.5;
}
}
}
.c-card--journey {
background-color: palette(secondary, 950);
&:before, &:after {
display: none;
}
@include mq(1160) {
max-width: 320px;
margin: auto;
}
}
.c-card__picture {
display: block;
width: 100%;
height: 0;
padding-bottom: 75%;
.c-card--journey & {
position: relative;
padding-bottom: 115%;
}
}
.c-card__img {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: palette(neutral, 200);
background-position: center;
background-size: cover;
filter: blur(0);
transition: filter 0.3s;
.c-card:hover & {
filter: blur(1.6px);
}
.c-card--journey & {
filter: blur(0) !important;
&:before {
content: '';
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
display: block;
background-color: palette(secondary, 950);
opacity: 0;
transition: opacity 0.3s;
}
}
.c-card--journey:hover & {
&:before {
opacity: 0.25;
}
}
}
.c-card__label {
position: absolute;
z-index: 3;
bottom: 0;
left: 0;
width: 100%;
overflow: hidden;
padding: 16px 24px 17px;
font-size: 1.4rem;
line-height: 1.2;
text-transform: uppercase;
font-weight: bold;
letter-spacing: 1.8px;
color: palette(neutral, 0);
transition-property: background;
transition-duration: 250ms;
.c-card--journey & {
position: relative;
font-size: 1rem;
overflow: visible;
}
}
.c-card__journey-icon {
position: absolute;
z-index: 4;
right: 24px;
top: -24px;
display: flex;
justify-content: center;
align-items: center;
width: 64px;
height: 64px;
margin-top: -64px;
margin-left: auto;
padding: 15px;
border-radius: 50%;
background-color: palette(secondary, 200);
&:after, &:before {
content: '';
position: absolute;
left: -14px;
bottom: -6px;
display: block;
width: 36px;
height: 2px;
background-color: white;
transform-origin: 100% 50%;
transform: rotate(126deg) scaleX(0);
opacity: 0;
transition: opacity 0.3s, transform 0.3s ease-in-out;
}
&:after {
left: -24px;
}
img {
transform: translate3d(-2px,0,0);
width: 100%;
transition: transform 0.3s ease-in-out;
}
.c-card:hover & {
img {
transform: translate3d(10px,-12px,0);
}
&:after, &:before {
transform: rotate(126deg) scaleX(1);
opacity: 1;
}
}
}
.c-card__journey-label {
position: absolute;
z-index: 3;
right: 28px;
top: -70px;
color: rgba(white, 0);
font-size: 0.8rem;
text-transform: uppercase;
font-weight: bold;
letter-spacing: 1.8px;
padding: 6px 68px 6px 12px;
transition: color 0.3s;
&:before {
content: '';
position: absolute;
z-index: -1;
right: 0;
top: 0;
width: 100%;
height: 100%;
border-radius: 4px;
background-color: palette(secondary, 200);
transform: scaleX(0.5);
transform-origin: 100% 50%;
opacity: 0;
transition: all ease-in-out 0.3s;
}
.c-card:hover & {
color: white;
&:before {
transform: scaleX(1);
opacity: 1;
}
}
}
.c-card__sublabel {
position: relative;
top: -1px;
font-size: 0.8rem;
color: palette(neutral, 300);
}