/*!  
    Grid Overflow ver: 1.2.3 -  https://github.com/Roman-Flossler/
    Copyright (c) 2023 Roman Flössler - Grid Overflow is licensed under MIT license 
*/
.gridOverflow {
    --itemMinWidth: 200px;
    --itemAspectRatio: 3/2;
    --gridGap: 0px;
    --linkActionIcon: "⤢";
    --itemRounding: 0px;
    --masonryItemHeight: 320px;
    margin: auto;
    display: grid;
    grid-gap: var(--gridGap);
    grid-template-columns: repeat(auto-fit, minmax(min(calc(50% - var(--gridGap)), var(--itemMinWidth)), 1fr));
    grid-auto-flow: dense
}

.go_gridItem {
    padding-bottom: calc(100% * var(--itemAspectRatio));
    height: 0;
    position: relative;
    box-sizing: border-box;
    overflow: hidden;
    display: block;
    border-radius: var(--itemRounding)
}

.go_gridItem>* {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    box-sizing: border-box
}

.go_gridItem-centered>* {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6%;
    hyphens: auto
}

.go_caption {
    background-color: rgba(0, 0, 0, 0.5);
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    height: auto;
    color: white;
    box-sizing: border-box;
    line-height: 1.33em;
    padding: .15rem 1rem;
    width: auto;
    text-align: center;
    position: absolute;
    hyphens: auto
}

.go_caption-full {
    width: 100%;
    display: block
}

.go_gridItem-panorama {
    grid-column: span 2;
    padding-bottom: calc(((100% - var(--gridGap)) / 2) * var(--itemAspectRatio))
}

.go_gridItem-vertigo {
    grid-row: span 2;
    padding-bottom: calc(100% * var(--itemAspectRatio) * 2 + var(--gridGap))
}

.go_gridItem-VIP {
    grid-column: span 2;
    grid-row: span 2;
    padding-bottom: calc(((100% - var(--gridGap))) * var(--itemAspectRatio) + var(--gridGap))
}

.go-masonry {
    gap: var(--gridGap);
    display: flex;
    flex-wrap: wrap
}

.go-masonry .go_gridItem {
    padding-bottom: 0;
    display: flex;
    flex-grow: 1;
    height: var(--masonryItemHeight);
    flex-basis: fit-content
}

.go-masonry .go_gridItem>* {
    position: static;
    flex-grow: 1;
    width: auto
}

.go-masonry .go_gridItem-centered,
.go-masonry .go_gridItem-noImage {
    flex-basis: var(--itemMinWidth)
}

.go-masonry .go_caption {
    position: absolute
}

.go-actionIcon>a.go_gridItem::after {
    content: var(--linkActionIcon);
    position: absolute;
    top: 10px;
    right: 10px;
    color: white;
    font-size: 111%;
    border-radius: 3px;
    line-height: .6em;
    font-family: sans-serif;
    opacity: .5;
    text-shadow: 0 0 3px #000, 0 0 1px #000, 0 0 2px #000, 0 0 2px #000, 0 0 6px #000, 0 0 16px #000
}

.go-actionIcon>a.go_gridItem:hover:after {
    opacity: .88
}

.go-3Dfx>.go_gridItem,
.go-3Dfx>.go_gridItem>*,
.go-3Dfx>.go_gridItem::before,
.go-3Dfx>.go_gridItem::after {
    transition: all .13s ease-in
}

.go-3Dfx>.go_gridItem:hover,
.go-3Dfx>.go_gridItem:hover>*,
.go-3Dfx>.go_gridItem:hover::before,
.go-3Dfx>.go_gridItem:hover:after {
    transition: all .25s ease
}

.go-3Dfx>.go_gridItem:hover {
    box-shadow: 4px 6px 13px 1px rgba(13, 13, 13, 0.73);
    transform: skew(-2deg, -2deg) scale(0.965, 0.965);
    background: #454545
}

.go-3Dfx>.go_gridItem-panorama:hover {
    transform: skew(-2deg, -1.22deg) scale(0.983, 0.96) !important
}

.go-3Dfx>.go_gridItem-vertigo:hover {
    transform: skew(-1.2deg, -2deg) scale(0.965, 0.98) !important
}

.go-3Dfx>.go_gridItem-VIP:hover {
    transform: skew(-1.2deg, -1.2deg) scale(0.978, 0.978) !important
}

.go-3Dfx>.go_gridItem:hover>* {
    opacity: 1
}

.go-3Dfx>.go_gridItem::before {
    content: "";
    position: absolute;
    background: linear-gradient(155deg, rgba(191, 252, 255, 0.33) 0, rgba(212, 253, 255, 0.22) 23%, rgba(216, 253, 255, 0) 36%);
    transform: translate(-36%, -36%);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100
}

.go-3Dfx>.go_gridItem:hover::before {
    transform: translate(-1%, -1%)
}