* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    background-color: rgb(98, 36, 132);
    font-size: 120%;
    width: 100%;
}

@media screen and (max-width: 1199px) {
    body {
        font-size: 110%;
    }
}

@media screen and (max-width: 999px) {
    body {
        font-size: 100%;
    }
}

@media screen and (max-width: 899px) {
    body {
        font-size: 90%;
    }
}

@media screen and (max-width: 799px) {
    body {
        font-size: 80%;
    }
}

body::-webkit-scrollbar {
    display: none;
}

.btn {
    width: 100%;
    height: 45px;
    background: rgb(192, 163, 46);
    border: 3px solid rgb(192, 163, 46);
    outline: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 1.3em;
    color: rgb(98, 36, 132);
    font-weight: 500;
    transition: .25s;
}

.btn:hover {
    background: rgb(98, 36, 132);
    color: rgb(192, 163, 46);
}

.navigation {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    padding: 1vh 0;
    background: rgb(192, 163, 46);
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 1;
    font-size: 120%;
}

.navigation .title-bottom {
    margin-top: -5px;
}

.navigation a {
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    cursor: pointer;
}

/* LEFT */

.navigation .left {
    display: flex;
    flex-direction: row;
    font-size: 1.4em;
    color: rgb(98, 36, 132);
}

.navigation .left i {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.5em;
}

.navigation .left a {
    margin-left: 2vh;
    position: relative;
    color: rgb(98, 36, 132);
    text-decoration: none;
}

.navigation .left .title {
    display: flex;
    flex-direction: row;
    cursor: pointer;
    position: relative;
    margin-left: 1vh;
}

.navigation .left .title::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 3px;
    background: rgb(98, 36, 132);
    border-radius: 5px;
    transform-origin: right;
    transform: scaleX(0);
    transition: transform .25s;
}

.navigation .left .title:hover::after {
    transform-origin: left;
    transform: scaleX(1);
}

.navigation .left a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 5px;
    width: 100%;
    height: 3px;
    background: rgb(98, 36, 132);
    border-radius: 5px;
    transform-origin: right;
    transform: scaleX(0);
    transition: transform .25s;
}

.navigation .left a:hover::after {
    transform-origin: left;
    transform: scaleX(1);
}

/* CENTER */

/* RIGHT */

.navigation .right {
    display: flex;
    flex-direction: row;
    font-size: 1.4em;
}

.navigation .right .profile {
    text-decoration: none;
    padding-right: 2vh;
    color: rgb(98, 36, 132);
}

.navigation .right .profile i {
    padding-right: .5vh;
}

.nav-btn {
    background: transparent;
    border: 2px solid rgb(98, 36, 132);
    outline: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 1.2em;
    color: rgb(98, 36, 132);
    font-weight: 500;
    transition: .25s;
    overflow: hidden;
    text-align: center;
    margin-right: 2vh;
    padding: 3px;
}

.nav-btn:hover {
    background: rgb(98, 36, 132);
    color: rgb(192, 163, 46);
    overflow: hidden;
}

@media screen and (max-width: 849px) {
    .navigation .right .profile {
        display: none;
    }
}

#map {
    height: 100%; 
    z-index: 0;
}