#location {
    margin-bottom: 125px
}

#location h2 {
    padding: 0 15%
}

#location-map {
    margin: 100px 0 75px;
    display: flex;
    height: 718px
}


#location-map .map-select {
    display: none
}

#location-map .map-content {
    width: calc(100% / 3);
    position: relative;
    height: 100%
}

#location-map .map-content h5 {
    text-transform: uppercase;
    margin-bottom: 1em;
    margin-top: .75em
}

#location-map .map-content p {
    margin-top: 0;
    margin-bottom: .75em
}

#location-map .map-content > div {
    padding: 10px 28px;
    opacity: 0;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 0;
    transition: all .2s
}

#location-map .map-content > div p {
    font-size: 90%
}

#location-map .map-content > div.show {
    opacity: 1;
    z-index: 1
}

#location-map .map-content .contact-text {
    max-width: 65%
}

#location-map .map-buttons {
    position: relative;
    width: calc(100% / 3 * 2)
}

#location-map .map-buttons button {
    position: absolute;
    background: none;
    border: 0 none;
    width: 64px;
    cursor: pointer;
    z-index: 9
}

#location-map .map-buttons button img {
    border-radius: 50%;
    box-shadow: 0 0 0 grey;
    transition: all .2s;
    border: 2px solid transparent
}

#location-map .map-buttons button.active img {
    border-color: #fc0
}

#location-map .map-buttons button:hover {
    z-index: 10
}

#location-map .map-buttons button:hover img {
    box-shadow: 0 0 8px grey
}

#location-map .map-buttons button#btn-gb {
    left: 30%;
    top: 50%
}

#location-map .map-buttons button#btn-de {
    left: 49%;
    top: 52%
}

#location-map .map-buttons button#btn-scot {
    top: 30%;
    left: 29%
}

#location-map .map-buttons button#btn-irl {
    left: 18%;
    top: 44%
}

#location-map .map-buttons button#btn-fr {
    left: 35%;
    top: 65%
}

#location-map .map-buttons button#btn-it {
    left: 52%;
    top: 78%
}

#location-map .map-buttons button#btn-gr {
    left: 72%;
    top: 90.5%
}

#location-map .map-buttons button#btn-lle {
    top: 36%;
    left: 64%
}

#location-map .map-buttons button#btn-pl {
    top: 49%;
    left: 60%
}

#location-map .map-buttons button#btn-por {
    top: 82%;
    left: 9%
}

#location-map .map-buttons button#btn-rum {
    top: 66%;
    left: 73%
}

#location-map .map-buttons button#btn-bul {
    top: 76%;
    left: 76%
}

#location-map .map-buttons button#btn-slo {
    top: 66%;
    left: 55%
}

#location-map .map-buttons button#btn-kro {
    top: 73%;
    left: 60%
}

#location-map .map-buttons button#btn-spa {
    top: 81%;
    left: 22%
}

#location-map .map-buttons button#btn-uts {
    top: 54%;
    left: 68%
}

#location-map .map-buttons button#btn-oe {
    top: 62%;
    left: 48%
}

#location-map .map-buttons button#btn-ch {
    top: 69%;
    left: 43%
}

#location-map .map-buttons button#btn-bnl {
    top: 53%;
    left: 40%
}

#location-map .map-buttons button#btn-fin {
    top: 20%;
    left: 65%
}

#location-map .map-buttons button#btn-nor {
    top: 27%;
    left: 44%
}

#location-map .map-buttons button#btn-swe {
    top: 32%;
    left: 55%
}

#location-map .map-buttons button#btn-dan {
    top: 40%;
    left: 46%
}

#location-map .map-buttons button#btn-soe {
    top: 80%;
    left: 67%
}

#location-map .map-buttons button#btn-ung {
    top: 65%;
    left: 64%
}

#location-map .map-buttons button#btn-tsch {
    top: 57.5%;
    left: 58%
}

#location-map .map-contact {
    display: flex;
    justify-content: center;
    margin-top: 3rem
}

#location-map .map-contact img {
    width: 60px;
    border-radius: 50%;
    flex-shrink: 0;
    margin-right: 10px
}

#location-map .map-contact p {
    font-size: 1.8rem
}

#location-map .map-contact p b, #location-map .map-contact p small {
    display: block
}

#location-map .map-contact p small {
    font-size: .8em;
    margin-bottom: .25em
}

#location-map .map-contact a {
    color: black;
    font-size: .95em
}

#location-map .map-contact p a:hover {
    text-decoration: underline
}

.bg-primary {
    background-color: #fc0
}

@media (max-width: 1280px) and (min-width: 1025px) {
    #location-map {
        margin-top: 75px;
        height: 59.9vw
    }

    #location-map .map-buttons {
        overflow: hidden
    }

    #location-map .map-buttons img {
        width: 110%;
        max-width: none;
        margin-left: -10%
    }

    #location-map .map-buttons button {
        transform: translateX(-45px) scale(0.8)
    }
}

@media (max-width: 1024px) {
    #location-map {
        margin-top: 75px;
        display: block;
        height: auto
    }

    #location-map .map-buttons {
        display: none
    }

    #location-map .map-select {
        display: block !important;
        opacity: 1 !important;
        text-align: center
    }

    #location-map .map-select select {
        position: absolute;
        width: 100%;
        left: 0;
        opacity: 0;
        height: 2.5em
    }

    #location-map .map-select label {
        font-family: "Interstate Bd";
        font-style: normal;
        font-weight: normal;
        width: 100%;
        background-color: white;
        text-align: left;
        border-radius: 20px;
        display: block;
        line-height: 2.5;
        font-size: 1.1em;
        padding: 0 20px;
        position: relative
    }

    #location-map .map-select label::after {
        content: '';
        display: block;
        width: 0;
        height: 0;
        border-left: .45em solid transparent;
        border-right: .45em solid transparent;
        border-top: .7em solid black;
        position: absolute;
        top: 50%;
        right: 20px;
        transform: translateY(-45%)
    }

    #location-map .map-content {
        width: 100%;
        padding: 15px 20%
    }

    #location-map .map-content > div {
        display: none;
        position: relative;
        padding: 10px 0
    }

    #location-map .map-content > div.show {
        display: block
    }
}

.text-center {
    text-align: center
}

h5 {
    font-size: 2rem;
    margin-bottom: 1.5em
}
#location  p {
    line-height: 1.25;
}