Template:Home/FeaturedCard/styles.css
Template page
More actions
/* ---- Section wrapper (grid-level) ---- */
.fc-section {
margin: 32px 0;
}
.fc-section-label {
font-size: 20px;
font-weight: 600;
color: #000;
margin: 0 0 16px 0;
letter-spacing: -0.01em;
}
.fc-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
}
@media (max-width: 720px) {
.fc-grid {
grid-template-columns: 1fr;
}
}
/* ---- Card ---- */
.fc-card {
position: relative;
aspect-ratio: 3 / 2;
overflow: hidden;
border-radius: 3px;
background: #1a1a1a;
transition: transform 0.2s ease;
}
.fc-card:hover {
transform: translateY(-2px);
}
/* ---- Media ---- */
.fc-media,
.fc-media figure,
.fc-media .mw-file-description,
.fc-media .mw-file-element,
.fc-media span {
position: absolute;
inset: 0;
margin: 0;
padding: 0;
line-height: 0;
font-size: 0;
display: block;
}
.fc-media img {
width: 100% !important;
height: 100% !important;
max-width: none !important;
object-fit: cover;
display: block;
transition: transform 0.5s ease;
}
.fc-card:hover .fc-media img {
transform: scale(1.04);
}
/* ---- Gradient scrim ---- */
.fc-card::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(
to top,
rgba(0, 0, 0, 0.85) 0%,
rgba(0, 0, 0, 0.55) 25%,
rgba(0, 0, 0, 0.15) 55%,
rgba(0, 0, 0, 0) 75%
);
z-index: 1;
}
/* ---- Text overlay ---- */
.fc-body {
position: absolute;
left: 0;
right: 0;
bottom: 0;
padding: 18px 20px 20px;
color: #fff;
z-index: 2;
}
.fc-title {
font-size: 17px;
font-weight: 600;
line-height: 1.3;
color: #fff;
margin: 0 0 4px 0;
letter-spacing: -0.005em;
max-height: calc(1.3em * 2);
overflow: hidden;
}
.fc-title a,
.fc-title a:visited,
.fc-title a:hover,
.fc-title a:active {
color: #fff;
text-decoration: none;
}
/* Whole-card click target via pseudo-element on the title link */
.fc-title a::before {
content: "";
position: absolute;
inset: 0;
z-index: 3;
}
.fc-subtitle {
font-size: 13px;
font-weight: 400;
color: rgba(255, 255, 255, 0.88);
line-height: 1.4;
margin: 0;
max-height: calc(1.4em * 2);
overflow: hidden;
}