*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{

font-family:Arial,Helvetica,sans-serif;

background:#111;

color:white;

line-height:1.6;

}

img{

width:100%;

display:block;

}

a{

text-decoration:none;

}

/*--------------------- n a v    b a r -------------*/

li {
    list-style: none;
}

a {
    text-decoration: none;
}

.navbar {
    display: flex; 
    width: 100vw;   
    position: fixed;
    top: 0;
    z-index: 1000; /* Keeps it above other content */
    justify-content: space-between;
    align-items: center;
    padding: 1.5px 2px;
    padding-right: 2.5%;
    padding-left: 2.5%;
    background-color: #1C1B1B;
    color: white;

}

.navbar a{
    color: white;
    font-size: 2em;

}

.navbar img{
    width: 1em;
}


.hamburger {
    display: none;
}

.bar {
    display: block;
    width: 25px;
    height: 3px;
    margin: 5px auto;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    background-color: white;
}

.nav-menu {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #1C1B1B;

}

#no-border{
    border-bottom: none; 
}

.nav-item {
    margin-left: 2em;    
}

/*----------------------------- menu links -----------------*/

.nav-item a{
    color: white;    
    font-weight: bold;
    text-decoration: none;
    font-size: .8em;
    text-transform: uppercase;
    letter-spacing: 3px;
    text-align: center;
}

.nav-item a:hover {
    color: red;
}


.nav-item img{
    display: block;
    margin: auto;
    width: 30%;
}

.nav-link{
    font-size: .8em;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 400;
    color: white;
}

.nav-link:hover{
    color: black;
}

.nav-logo {
    font-size: 2.1em;
    font-weight: 500;
    letter-spacing: 5px;
}



.hero{

background:linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.7)),
url(../images/misc/landing-page-image.jpg) center/cover;

height:70vh;

display:flex;

justify-content:center;

align-items:center;

text-align:center;

padding:20px;

}

.hero h1{

font-size:3rem;

margin-bottom:15px;

}

.hero p{

font-size:1.1rem;

margin-bottom:30px;

}

.btn{

background:#ff3d57;

color:white;

padding:15px 35px;

border-radius:50px;

transition:.3s;

display:inline-block;

}

.btn:hover{

background:#ff6380;

transform:translateY(-3px);

}

.section{

padding:60px 20px;

max-width:1400px;

margin:auto;

}

.dark{

background:#1b1b1b;

}

.section-title{

display:flex;

justify-content:space-between;

align-items:center;

margin-bottom:30px;

flex-wrap:wrap;

gap:15px;

}

.section-title a{

color:#ff3d57;

font-weight:bold;

}

.grid{

display:grid;

gap:25px;

}

.four{

grid-template-columns:1fr;

}

.two{

grid-template-columns:1fr;

}

.three{

grid-template-columns:1fr;

}

.card{

background:#222;

border-radius:15px;

overflow:hidden;

transition:.3s;

box-shadow:0 10px 25px rgba(0,0,0,.25);

}

.card:hover{

transform:translateY(-8px);

box-shadow:0 20px 35px rgba(0,0,0,.4);

}

.content{

padding:20px;

}

.content h3{

margin-bottom:10px;

}

.artist{

color:#ff3d57;

margin-bottom:10px;

}

.date{

color:#bbb;

font-size:.9rem;

margin-bottom:15px;

}

.card-btn{

display:inline-block;

margin-top:15px;

background:#ff3d57;

padding:10px 20px;

border-radius:30px;

color:white;

transition:.3s;

}

.card-btn:hover{

background:white;

color:#111;

}

/*---   F O O T E R ----------------------------------------*/

footer {
    display: flex;
    width: 100%;
    flex-direction: row;
    text-align: center;
    float: none;
    position:relative;
    top: auto;
    right:auto;
    padding: 2%;
    height: auto;
    line-height: auto;
    background: #1C1B1B;
    border-top: 5px solid red;
}

.footer-col{
    flex: 1;
    color: white;
}

.footer-col h2{
    font-size: 1em;
    justify-content: left;
    color: white;
}

.footer-col ul li{
    text-align: justify;
    color: white;
}


.footer-col a{
    color: white;
    font-weight: bold;
    text-decoration: none;
    display: inline-block;
    float:none;
    padding: 2%;
}

footer h1{
    text-decoration: none;
    font-size: 2em;
    color: white;
}

#footer-text{
    font-size: .5em;
}

/* Tablet */

/*----------------------------- A D V E R T -----------------------------*/

.advert{
    width:100%;
    max-width:100%;
    padding:60px 20px;
    text-align:center;
    overflow:hidden;
}

.advert-box{
    width:100%;
    max-width:100%;
    min-width:0;
    border:3px dashed #666;
    padding:30px;
    margin:25px auto 0;
    background:#222;
    font-size:1.2rem;
    box-sizing:border-box;
    overflow:hidden;
}

/* Keep the Google AdSense unit inside the advert box */
.advert-box .adsbygoogle{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 auto;
    box-sizing:border-box;
}

@media only screen and (max-width:480px){
    .advert{
        width:100%;
        max-width:100%;
        padding:40px 10px;
        overflow:hidden;
    }

    .advert-box{
        width:100%;
        max-width:100%;
        padding:15px;
        margin-top:20px;
        overflow:hidden;
    }

    .advert-box .adsbygoogle{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
    }
}



/*-----------------------------      MOBILE NAVIGATION -------------------------------*/

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

    html,
    body{
        height:100%;
    }

    header{
        width:100%;
        border-bottom:2px solid red;
    }

    .nav-menu{
        position:fixed;
        left:-100%;
        top:0;
        flex-direction:column;
        width:100%;
        border-radius:10px;
        text-align:center;
        transition:.3s;
        box-shadow:0 10px 27px rgba(0,0,0,.05);
        z-index:1;
        background:#1C1B1B;
    }

    .nav-menu.active{
        left:0;
    }

    .nav-item{
        margin:2.5rem 0;
    }

    .navbar{
        font-size:.5em;
    }

    .navbar a{
        color:white;
        font-size:1.5em;
    }

    .navbar img{
        width:1.5em;
    }

    .hamburger{
        display:block;
        cursor:pointer;
    }

    .hamburger.active .bar:nth-child(2){
        opacity:0;
    }

    .hamburger.active .bar:nth-child(1){
        transform:translateY(8px) rotate(45deg);
    }

    .hamburger.active .bar:nth-child(3){
        transform:translateY(-8px) rotate(-45deg);
    }

    footer{
        flex-direction: column;
    }

}

@media(min-width:768px){

.two{

grid-template-columns:repeat(2,1fr);

}

.three{

grid-template-columns:repeat(3,1fr);

}

.four{

grid-template-columns:repeat(2,1fr);

}

.hero h1{

font-size:4rem;

}

footer{
        flex-direction: column;
    }

}

/* Desktop */

@media(min-width:1100px){

.four{

grid-template-columns:repeat(4,1fr);

}

.hero{

height:85vh;

}

}