172 lines
2.9 KiB
CSS
172 lines
2.9 KiB
CSS
.flex {
|
|
display: grid;
|
|
grid-template-columns: repeat(2, 1fr);
|
|
}
|
|
|
|
.flex.card {
|
|
gap: 1rem;
|
|
padding: 1rem;
|
|
}
|
|
|
|
.flex.card.large {
|
|
padding: 1rem 0;
|
|
}
|
|
|
|
ul.flex li.block {
|
|
border-radius: 0.65rem;
|
|
transition: background 0.3s ease;
|
|
}
|
|
|
|
ul.flex li.subheader {
|
|
grid-column: 1/-1;
|
|
}
|
|
|
|
ul.flex.card li.subheader {
|
|
margin: -1rem 0;
|
|
}
|
|
|
|
.flex .block:not(.subheader) {
|
|
overflow: hidden;
|
|
}
|
|
|
|
.flex.card .block:not(.subheader) {
|
|
min-height: 5rem;
|
|
}
|
|
|
|
.flex.stacked .block:not(.subheader) {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.flex.third {
|
|
grid-template-columns: repeat(3, 1fr);
|
|
}
|
|
|
|
.flex.fourth {
|
|
grid-template-columns: repeat(4, 1fr);
|
|
}
|
|
|
|
.flex.fifth {
|
|
grid-template-columns: repeat(5, 1fr);
|
|
}
|
|
|
|
.flex .block.large,
|
|
.flex.card .block.large {
|
|
grid-column: 1/-1;
|
|
}
|
|
|
|
.column {
|
|
column-count: 3;
|
|
margin: 1rem 0;
|
|
line-height: 0;
|
|
}
|
|
|
|
.column > * {
|
|
display: inline-block;
|
|
width: 100%;
|
|
}
|
|
|
|
@media screen and (min-width: 451px) and (max-width: 900px) {
|
|
.flex.third {
|
|
grid-template-columns: repeat(2, 1fr);
|
|
}
|
|
|
|
.flex.fourth {
|
|
grid-template-columns: repeat(3, 1fr);
|
|
}
|
|
|
|
.flex.fifth {
|
|
grid-template-columns: repeat(4, 1fr);
|
|
}
|
|
|
|
.column {
|
|
column-count: 2;
|
|
}
|
|
}
|
|
|
|
@media screen and (max-width: 450px) {
|
|
.flex,
|
|
.flex.flex.third {
|
|
grid-template-columns: repeat(1, 1fr);
|
|
}
|
|
|
|
.flex.fourth {
|
|
grid-template-columns: repeat(2, 1fr);
|
|
}
|
|
|
|
.flex.flex.fifth {
|
|
grid-template-columns: repeat(3, 1fr);
|
|
}
|
|
|
|
.column {
|
|
column-count: 1;
|
|
}
|
|
}
|
|
|
|
/* Gallery */
|
|
|
|
ul.flex.gallery li.block:not(.subheader) {
|
|
min-height: 25rem;
|
|
}
|
|
|
|
ul.flex.gallery li.block.story {
|
|
width: 10rem;
|
|
min-height: 0;
|
|
padding: 0 0.5rem 0.5rem;
|
|
}
|
|
|
|
ul.flex.gallery li.block {
|
|
display: flex;
|
|
flex-direction: column;
|
|
max-width: 100%;
|
|
}
|
|
|
|
ul.flex.gallery li.block p a.node,
|
|
ul.flex.gallery li.block > img + span,
|
|
ul.flex.gallery li.block > span.primary,
|
|
ul.flex.gallery li.block > span.control {
|
|
display: none;
|
|
}
|
|
|
|
ul.flex.gallery li.block div {
|
|
flex: initial;
|
|
margin-top: auto;
|
|
width: 100%;
|
|
z-index: 0; /* It seems that the img mask is applied on the div */
|
|
}
|
|
|
|
ul.flex.gallery li.block img.main {
|
|
position: relative;
|
|
opacity: 1;
|
|
height: initial;
|
|
max-height: 35rem;
|
|
left: 0;
|
|
top: 0;
|
|
max-width: calc(100% + 3rem);
|
|
width: calc(100% + 3rem);
|
|
filter: none;
|
|
mask-image: linear-gradient(to bottom, black calc(100% - 20rem), transparent);
|
|
margin-bottom: -10rem;
|
|
}
|
|
|
|
ul.flex.gallery li.block.story img.main {
|
|
max-height: 100%;
|
|
max-width: calc(100% + 1rem);
|
|
}
|
|
|
|
ul.flex.gallery li.block img.main:after {
|
|
content: attr(alt);
|
|
}
|
|
|
|
ul.flex.gallery li.block.embed:before {
|
|
font-family: 'Material Symbols';
|
|
content: "\e02c";
|
|
display: flex;
|
|
align-items: center;
|
|
font-size: 3rem;
|
|
line-height: 5rem;
|
|
opacity: 0.75;
|
|
position: absolute;
|
|
left: 1.5rem;
|
|
z-index: 1;
|
|
}
|