.atrio-tile-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 28px 24px;
margin: 0;
padding: 0;
list-style: none;
}
.atrio-tile-grid__item {
min-width: 0;
margin: 0;
padding: 0;
}
.atrio-tile-grid__link {
display: block;
height: 100%;
color: inherit;
text-decoration: none;
transition: box-shadow 180ms ease, transform 180ms ease, color 180ms ease;
}
.atrio-tile-grid__link:focus-visible {
outline: 3px solid currentColor;
outline-offset: 4px;
}
.atrio-tile-grid__media {
position: relative;
display: block;
width: 100%;
aspect-ratio: 4 / 3;
overflow: hidden;
}
.atrio-tile-grid__external-icon {
position: absolute;
z-index: 1;
display: flex;
align-items: center;
justify-content: center;
box-sizing: border-box;
width: 22px;
height: 22px;
color: #fff;
background-color: rgba(0, 0, 0, 0.35);
font-size: 22px;
line-height: 1;
pointer-events: none;
}
.atrio-tile-grid__external-icon--top-right {
top: var(--atrio-external-icon-offset, 14px);
right: var(--atrio-external-icon-offset, 14px);
}
.atrio-tile-grid__external-icon--top-left {
top: var(--atrio-external-icon-offset, 14px);
left: var(--atrio-external-icon-offset, 14px);
}
.atrio-tile-grid__external-icon--bottom-right {
bottom: var(--atrio-external-icon-offset, 14px);
right: var(--atrio-external-icon-offset, 14px);
}
.atrio-tile-grid__external-icon--bottom-left {
bottom: var(--atrio-external-icon-offset, 14px);
left: var(--atrio-external-icon-offset, 14px);
}
.atrio-tile-grid__external-icon i,
.atrio-tile-grid__external-icon svg {
display: block;
width: 100%;
height: 100%;
}
.atrio-tile-grid__external-icon svg {
fill: currentColor;
}
.atrio-tile-grid .atrio-tile-grid__media > .atrio-tile-grid__image {
display: block;
width: 100%;
height: 100%;
max-width: none;
object-fit: cover;
transition: transform 220ms ease;
}
.atrio-tile-grid__placeholder {
display: block;
width: 100%;
height: 100%;
background: #f0f0f0;
}
.atrio-tile-grid__title {
display: block;
margin-top: 12px;
text-align: center;
}
.atrio-tile-grid--hover-yes .atrio-tile-grid__link:hover .atrio-tile-grid__image,
.atrio-tile-grid--hover-yes .atrio-tile-grid__link:focus-visible .atrio-tile-grid__image {
transform: scale(1.035);
}
@media (max-width: 1024px) {
.atrio-tile-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
}
@media (max-width: 639px) {
.atrio-tile-grid {
grid-template-columns: minmax(0, 1fr);
}
}
@media (prefers-reduced-motion: reduce) {
.atrio-tile-grid__link,
.atrio-tile-grid__image {
transition: none;
}
}