body {
    background-color: black;
    color: lightgray;
    position: relative;
}

#header {
    top: 0px;
    left: 0px;
    padding: 3%;
    text-align: center;
    width: 50vw;
    height: 35vh;
}

#rechts {
    position: absolute;
    top: 0px;
    left: 50vw;
    padding: 5rem 5rem;
    text-align: center;
    width: 48vw;
    height: 35vh;
}


#photos {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin: auto;
    width: 60%;
    padding-top: 3rem;
    justify-content: wrap;
}

#photos div:hover {
    animation: zoomIn 0.1s ease-in-out forwards;
}

.photo {
    width: 33.3%;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    height: 100%;
}

.photo:after {
    content: "";
    display: block;
    padding-bottom: 100%;
  }

  #footer {
    position: relative;
    text-align: center;
    margin: 3rem auto 1rem auto;
  }

  @keyframes zoomIn {
    from {transform: scale(1);}
    to {transform: scale(1.1);}
}

@media only screen and (max-width: 734px) {
    #header {
        position:relative;
        top: 0px;
        left: 0px;
        padding: 3%;
        text-align: center;
        width: 100vw;
        height: 25vh;
    }

    #photos {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        margin: auto;
        width: 60%;
        padding-top: 3rem;
        justify-content: wrap;
    }

    .photo {
        width: 100%;
        overflow: hidden;
        background-size: cover;
        background-position: center;
        height: 100%;
    }
}