body {
    font-family: "Rubik", sans-serif;
    font-display: fallback;
    margin: 0%;
}

header {
    text-align: center;
}

nav {
    text-align: right;
    font-size: 100%;
    top: 0;
    padding: 1%;
    margin: 0%;
    background-color: #f2f2f2;
}

.navButton {
    padding-left: 1%;
    padding-right: 1%;
    text-decoration: none;
    color: #303030;
}
.pagetitle {
    text-align: center;
}

.content {
    padding-left:5%;
    padding-right:5%;
    opacity: 0;
    animation: fadeIn 0.5s forwards;
}
@keyframes fadeIn {
    to {
        opacity: 1;
    }
}

.contentStatic {
    padding-left:5%;
    padding-right:5%;
}

.icons {
    padding-right: 0.5%;
}

.filters {
    padding: 2%;
}

.filterButton {
    border: none;
    font-family: "Rubik", sans-serif;
    font-size:large;
    font-weight:bold;
    font-display: fallback;
    outline: none;
    background-color:deepskyblue;
    color: white;
    cursor: pointer;
    padding-left: 1.25%;
    padding-right: 1.25%;
    padding-top: 0.75%;
    padding-bottom: 0.75%;
    border-radius: 10%;
}

.filterButton:hover {
    background-color: skyblue;
}

.filterButton.include {
    background-color: seagreen;
}

.filterButton.include:hover {
    background-color: #4ac47f;
}

.filterButton.exclude {
    background-color:crimson;
}

.filterButton.filterButton.exclude:hover {
    background-color: #f06984;
}

.container {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 15px 15px;
}

@media (aspect-ratio: 16/9) {
    .container {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-aspect-ratio: 4/3) {
    .container {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-aspect-ratio: 1/1) {
    .container {
        grid-template-columns: 1fr;
    }
    .navbar {
        text-align: center;
    }
}


.container a {
    color:black;
    text-decoration: none;
}

.gridItem {
    overflow: hidden;
    border: 1px solid #eaeaea;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    transition: transform 0.3s ease;
    cursor: pointer;
    position: relative;
}

.overlay {
    position: absolute;
    background-color: rgba(255, 255, 255, 0.8);
    width: 100%;
    height: 100%;
    bottom: -100%;
    left:0;
    transition: all 0.3s ease;
}

.overlay p {
    position: relative;
    font-size: 150%;
    text-align: center; 
    padding:2%;
    margin-top: 20%;
    opacity: 0;
    transition: opacity 0.1s ease;
}
.gridItem:hover {
    transform: scale(1.025);
}

.gridItem:hover .overlay {
    bottom:0;
}
.gridItem:hover .overlay p {
    opacity: 1;

}
.gridItem img {
    width:100%;
    height:320px;
    max-width:100%;
    max-height:320px;
    overflow: hidden;
}

.center {
    display: block;
    margin-left:auto;
    margin-right:auto;
    width:600px;
    height:375px;
}

.writeUp {
    font-size:125%;
    padding-top:3%;
    padding-bottom:5%;
    padding-left:10%;
    padding-right:10%;
    line-height:1.5;
}
#Contact {
    padding: 0% 0% 0.5%;
    background-color: #505050;
    color: #eee;
}

#toTop {
    display: none;
    position: fixed;
    bottom: 3%;
    right: 2%;
    z-index: 99;
    border: none;
    font-family: "Rubik", sans-serif;
    font-display: fallback;
    font-size:large;
    font-weight:bold;
    outline: none;
    background-color: deepskyblue;
    color: white;
    cursor: pointer;
    padding-left: 1.25%;
    padding-right: 1.25%;
    padding-top: 0.75%;
    padding-bottom: 0.75%;
    border-radius: 10%;
}

#toTop:hover {
    background-color: skyblue;
}

#backButton {
    background: none;
    border: none;
    padding-left:0.1%;
    text-decoration: none;
    color: #202020;
    cursor: pointer;
    font-family: "Rubik", sans-serif;
    font-display: fallback;
    font-size: 150%;
    font-weight:bold;
}