*{
    box-sizing: border-box
}

html, body{
    font-size: 16px;
    font-family: Montserrat, sans-serif;
    padding: 0;
    margin: 0
}

h1, h2, h3, h4, h5, h6{
    margin: .4em 0 0 0
}

a{
    color: #14f;
    text-decoration: none
}

header{
    background-color: #567;
    padding: .4em;
    font-size:1.8em
}

header a{
    color: #eee;
    text-shadow: 1px 1px 1px rgba(0,0,0,.5)
}

section{
    padding: .5em 1em
}

footer{
    font-size: .8em;
    text-align: center;
    padding-bottom: 70px
}

h1{
    margin: 0;
    font-weight: 300;
    font-size: 2.2em
}

h2{
    font-weight: 300;
    font-size: 1.8em
}

.flex{
    display: flex;
    flex-direction: column
}

nav a{
    padding: .2em .9em
}
nav a:first-child{
    padding: .2em .9em .2em 0;
    font-size: 1.5em
}

.flex-row{
    flex-direction: row;
    align-items: center
}

a > i{
    color: #f63;
    font-size: 1.4em
}

section.artist:nth-child(even){
    background-color: #f9f9f9
}

#floatingPlayer{
    position: fixed;
    height: 84px;
    bottom: 0;
    right: 0;
    left: 0;
    opacity: 0;
    width: 100%;
    transition: opacity .4s;
    background-color: rgba(255,255,255,.8);
    filter: hue-rotate( 160deg ) saturate(.7);
    color: #333;
    backdrop-filter: blur(2px);
}

#floatingPlayer.playing{
    opacity: 1
}

#floatingPlayer.stopped{
    opacity: 0
}

#floatingPlayer > h1{
    margin-left: .3em;
    font-size: 1.8em;
    padding-top: 4px
}

#player{
    position: fixed;
    bottom: 0;
    height: 40px;
    width: 100%
}

@media screen and (max-width: 400px){
    body{
        font-size: .9em
    }
    h1{
        font-size: 1.4em
    }
    h2{
        font-size: 1.2em
    }
}