@import url("https://fonts.googleapis.com/css2?family=Vollkorn:ital,wght@0,400..900;1,400..900&display=swap");
* {
    margin: 0;
    padding: 0;
    border: 0;
    font-family: "Vollkorn", serif;
    font-optical-sizing: auto;
}
html {
    min-height: 100vh;
    width: 100%;
}
body {
    min-height: 100vh;
    width: 100%;
    background-color: #fff;
}
nav {
    height: calc(50px + 4vh + 4vw);
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4vh;
    place-items: center;
}
nav > a {
    font-size: calc(10px + 2vh + 1vw);
    color: #000;
    text-decoration: none;
}
nav > a:hover {
    text-decoration: underline;
}
nav > a:first-child {
    justify-self: end;
}
nav > a:last-child {
    justify-self: start;
}
.active-link {
    text-decoration: underline;
}

/* Portfolio Page */

.pictures {
    width: calc(100px + 70vw);
    margin: auto;
    display: grid;
    grid-template-columns: repeat(auto-fit, calc(60vh - 12vw));
    gap: 2vh;
    place-items: center;
    place-content: center;
}
.pictures > div {
    width: calc(60vh - 12vw);
    height: calc(60vh - 12vw);
    max-width: calc(100vw - 4vh);
    max-height: calc(100vw - 4vh);
}
.pictures > div > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Contacts Page */

.contacts {
    font-size: calc(10px + 1vh + 1vw);
    width: 100%;
    min-height: 50vh;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 4vh;
    row-gap: 2vh;
    place-items: start;
    place-content: center;
}
@media only screen and (max-width: 1000px) {
    .contacts {
        grid-template-columns: 1fr 2fr;
    }
}
.contacts > div {
    justify-self: end;
    font-weight: bold;
}
.contacts > a {
    justify-self: start;
}
