#menu {
    overflow: hidden;
}

#menu .icon {
    display: none;
}

.responsiveLogo {
    display: none;
    font-weight: bold;
    font-size: 2em;
}

.responsiveOnly {
    display: none;
}

@media screen and (max-width: 1024px) {

    h1 {
        font-size: 2.5em;
    }

    iframe {
        float: left;
        margin: 0 30px 30px 0;
        width: 100%;
        height: calc((100vw - 60px) * (9 / 21));
    }

    .search {
        display: none;
    }

    #container {
        width: 100%;
        box-shadow: none;
    }

    #main-content svg {
        display: none;
    }

    #header {
        display: none;
    }

    #menu {
        overflow: visible;
        height: 50px;
        padding: 0;
    }

    #menu a {
        display: none;
        color: #fff;
        border: none;
        margin-right: 0;
    }

    #menu a:first-child {
        text-align: left;
        padding: 5px 14.5px;
        margin: 0;
        display: block;
        border: none;
        border-bottom: 2px solid #98bf0e;
    }

    #menu.responsive a:first-child {
        padding: 5px 14.5px;
    }

    #menu a.icon {
        position: absolute;
        top: 0;
        right: 0;
        float: right;
        display: block;
        border: none;
        padding: 3px 20px;
        font-size: 2em;
    }

    #menu a::before {
        content: none;
    }

    #menu.responsive {
        position: relative;
        z-index: 5;
    }

    #menu.responsive .responsiveOnly {
        display: block;
    }

    #menu.responsive .icon {
        padding: 3px 20px;
        border: none;
        background: none;
    }

    #menu.responsive .icon:hover {
        background: none;
    }

    #menu.responsive a {
        float: none;
        display: block;
        text-align: left;
        padding: 14.5px;
        margin: 0;
        background-color: #333;
        border: none;
        border-bottom: 2px solid #98bf0e;
    }

    #menu a:hover {
        background: none;
    }

    #menu.responsive a:hover {
        background: none;
        background-color: #333;
    }

    #menu.responsive .responsiveLogo {
        background-color: #98bf0e;
    }

    #menu.responsive .responsiveLogo:hover {
        background-color: #98bf0e;
    }

    #menu .responsiveLogo + a {
        display: none;
    }

    #submenu {
        display: none;
    }

    hr {
        display: none;
    }

    .cardContainer {
        grid-template: auto / 1fr 1fr;
        width: 80%;
        margin: auto;
    }

    #footer {
        text-align: center;
    }

    #partner {
        display: grid;
        grid-template: auto / 1fr 1fr;
        box-sizing: border-box;
        grid-gap: 20px;
        padding: 20px 15vw;
        background-color: #a5cf0f;
        border: none;
    }

    #partner a {
        margin: auto;
        padding: 0;
    }

    #partner img {
        width: 30vw;
        height: auto;
        margin: 0;
        filter: drop-shadow(5px 5px #2d2d2d);
    }

    #partner a:nth-child(n) img {
        margin: 0;
    }

}

@media screen and (max-width: 600px) {
    h1 {
        font-size: 1.5em;
    }

    .cardContainer {
        grid-template: auto / 1fr;
    }
}
