:root {
    --darkblue: #0F658B;
    --lightblue: #8FB8D0;
}


@media screen and (width<1200px) {
    html {
        font-size: 13px;
    }
}

@media screen and (width<1024px) {
    html {
        font-size: 11px;
    }
}

@media screen and (width<840px) {
    html {
        font-size: 9.5px;
    }
}

body {
    padding: 0;
    margin: 0;
    background-color: var(--lightblue);
    font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
    display: flex;
    flex-direction: column;
    background-color: var(--lightblue);
    align-items: center;
}

#bg-logo {
    width: 100vw;
    height: 100vh;
    background-image: url("logos/pplinks.png");
    z-index: -1;
    position: fixed;
    top: 0;
    left: 0;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 130%;
    opacity: 0.15;
    overflow: hidden;
}

@media screen and (orientation:portrait) {
    #bg-logo {
        background-size: 200%;
    }
}





header {
    width: calc(95% - 3rem);
    margin-bottom: 1.5rem;
    background-color: var(--darkblue);
    color: white;
    display: flex;
    flex-direction: column;
    align-items: start;
    padding: 1.5rem;
    margin-top: 3rem;
}




#upper {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}


#main-img {
    width: 25vw;
}

#title h1 {
    text-align: left;
    font-size: 5rem;
    margin: 0;
}

#title h2 {
    text-align: right;
    font-size: 2rem;
    color: rgb(190, 190, 190);
    font-weight: 300;
    font-style: italic;
    margin: 0;
}


#pplinks-logo {
    width: 15rem;
}



@media screen and (orientation:portrait) {
    #upper {
        flex-direction: column;
    }

    #main-img {
        width: 100%;
    }
}



#lower {
    margin-top: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 25vw;
}

#lower a {
    height: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

#lower a img {
    width: 3rem;
    border-radius: 0.1rem;
}

@media screen and (orientation: portrait) {
    #lower {
        width: 100%;
    }
}

main {
    width: 100vw;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}


section {
    width: 95%;
    margin-bottom: 2rem;

}


section h1 {
    color: white;
    font-size: 3.5rem;
    text-align: center;
    background-color: var(--darkblue);
    margin: 0 auto;
    padding: 0.5rem 0;
}


.img-container {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    padding: 1.5rem 0;
    justify-content: center;
}

.img-with-text {
    font-size: 1.5rem;
    text-align: center;
    text-decoration: none;
    color: black;

    flex-shrink: 1;
    flex-grow: 1;
    min-width: 200px;
    width: 400px;
    max-width: 400px;
}

.img-text {
    margin: 1rem 0;
    font-size: 2rem;
    text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.329);
}



.img-with-text img {
    /* width: calc((95vw - 4rem) / 3); */
    width: 100%;
    border-radius: 0.5rem;
}


footer {
    width: calc(95% - 3rem);
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: var(--darkblue);
    padding: 1rem 1.5rem;
    margin-bottom: 1.5rem;
}


footer a {
    height: 7rem;

}

footer a img {
    height: 100%;
    border-radius: 0.3rem;
}





@media screen and (orientation:portrait) {
    footer {

        display: flex;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
        gap: 1rem;
    }
}


#kollazs {
    border: #0F658B 0.5rem solid;
    width: calc(95% - 1rem);
}

.kollazs-row {
    width: 100%;
    overflow: hidden;
}

.kollazs-row figure {
    position: relative;
    margin: 0;
    overflow: hidden;
}

.kollazs-row img {
    display: block;
}

/* Desktop / landscape collage layout */
@media screen and (orientation: landscape) and (min-width: 769px) {
    .kollazs-row {
        display: flex;
    }

    .kollazs-row figure {
        height: var(--row-height);
        flex: 0 0 auto;
    }

    .kollazs-row img {
        height: 100%;
        width: auto;
    }
}

/* Mobile / portrait layout */
@media screen and (orientation: portrait),
screen and (max-width: 768px) {
    .kollazs-row {
        display: flex;
        flex-direction: column;
    }

    .kollazs-row figure {
        height: auto;
    }

    .kollazs-row img {
        width: 100%;
        height: auto;
    }
}

/* Shine effect */
.kollazs-row figure::before {
    position: absolute;
    top: 0;
    left: -100%;
    z-index: 2;
    display: block;
    content: "";
    width: 50%;
    height: 100%;
    background: linear-gradient(to right,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.3) 100%);
    transform: skewX(-25deg);
    pointer-events: none;
}

.kollazs-row figure:hover::before {
    animation: shine 0.75s;
}

@keyframes shine {
    100% {
        left: 125%;
    }
}