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

body{
    overflow-x:hidden;
}

:root {
    --black: #1D1D1F;
    --white: #f3f3f1;
    --blue:#4C96FE;
}

.navbar{
    top:0;
    width:100vw;
    padding:10px;
    display:flex;
    position:fixed;
    justify-content: space-between;
    align-items: center;
    font-family: "Ubuntu", serif;
    font-weight: 400;
    font-style: normal;
    z-index: 1000;
    height: fit-content;
}

.contact-button{
    padding:10px;
    border: 1px solid var(--black);
    border-radius:100vh;
}

.navitem-home{
    color: #fff;
}

.navitem-home:hover{
    color: pink;
}

.boxshadow{
    box-shadow: 0 2px 2px -2px rgba(0,0,0,.2);
    background-color: #fff;
}

nav{
    display:flex;
    align-items: center;
    gap:10px;
    margin: 0 1vw 0 0;
}

a{
    text-decoration: none;
    color: var(--black);
}

a:hover{
    color:var(--blue);
    mix-blend-mode: multiply;
}


h1{
    font-family: "Bungee", serif;
    font-weight: 400;
    font-style: normal;
}

h2{
    font-family: "Bungee", serif;
    font-style: normal;
    color: var(--black);
}

h3{
    font-family: "Bungee", serif;
    font-style: normal;
    color: var(--black);
}

p{
    font-family: "Ubuntu", serif;
    font-weight: 400;
    font-style: normal;
}

.bungee{
    font-family: "Bungee", serif;
    font-weight: 400;
    font-style: normal;
    position:relative;
    display:inline-block;
}

.p-white{
    color: var(--white);
}

.paragraph{
    width:95vw;
    max-width:700px;
    position: relative;
    display:block;
    left:50%;
    transform:translate(-50%, 0);
    margin: 100px 0 100px 0;
}

.article{
    background-color: #e9f2ff;
    padding: 10px;
    border-radius:10px;
    margin: 20px 0 0 0;
}

.article-bar{
    width:100%;
    display:flex;
    justify-content: space-between;
    align-items: center;
}

.article-text{
    margin: 10px 0 0 0;
}

.tags{
    display:flex;
    position:relative;
    gap:10px;
    align-items: center;
}

.tag{
    font-family: "Ubuntu", serif;
    font-weight: 600;
    font-style: normal;
    padding:5px;
    border-radius: 5px;
    background-color: #c9dfff;
    width:fit-content;
}

.dropdown-button{
    position: relative;
    border-radius: 100%;
    background-color: #c9dfff;
    display: flex;
    height:100%;
    aspect-ratio: 1 / 1;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    user-select: none;
    padding:5px;
}

.hide{
    display:none;
}

.title-flex{
    margin-top:50px;
    left:50%;
    transform:translate(-50%, 0);
    width:30vw;
    height:30vw;
    position:relative;
    /* z-index:-1; */
    transition: .2s cubic-bezier(.52,.01,.58,1.18);
    border-radius:100%;
}

.title-flex:hover{
    transform:translate(-50%, 0) scale(1.1);
}

.title-flex:hover .title{
    transform: translate(-50%, -50%) rotate(-10deg);
}

.title-flex img{
    width:100%;
    position:relative;
    display:block;
    top:0;
}

.logo{
    display:block;
    position:relative;
    width:40px;
    z-index:1000;
}

.logo img{
    position:relative;
    width:100%;
}

.title{
    position:absolute;
    color:white;
    transform: translate(-50%, -50%) rotate(-5deg);
    width:max-content;
    font-size:4vw;
    z-index:100;
    top:50%;
    left:50%;
    transition:transform .2s cubic-bezier(.52,.01,.58,1.18);
    user-select: none;
}

.title span{
    display:inline-block;
    position:relative;
    opacity:0;
    transform:translate(0, 500px);
    padding:0;
    width:fit-content;
    transition:transform .5s cubic-bezier(.52,.01,.58,1.18);
}

.gallery{
    display:grid;
    position:relative;
    width:97.5vw;
    left:1.25vw;
    gap:1vw;
    grid-template-columns: repeat(3, 1fr);
}

.gallery-item{
    overflow:hidden;
    aspect-ratio: 1 / 1;
}

.page-title{
    left:50vw;
    transform:translate(-50%, 0);
    position:relative;
    margin:50px 0 50px 0;
    width:fit-content;
}

.videoreel{
    width:95vw;
    max-width:1000px;
    position: relative;
    display:block;
    left:50%;
    transform:translate(-50%, 0);
    margin: 50px 0 0px 0;
    display:flex;
    grid-auto-columns: repeat(3, 1fr);
    gap:10px;
    /* justify-content: space-between; */
}

.video{
    width: 33%;
    aspect-ratio: 16 / 9;
    /* background-color: red; */
    position: relative;
}

.video iframe{
    width:100%;
    height:100%;
    position:relative;
}

.soundboard{
    position: relative;
    width:98vw;
    max-width:700px;
    aspect-ratio: 1 / 1;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(4, 1fr);
    gap: 10px;
    left:50%;
    transform:translate(-50%, 0);

}

.sound{
    width:100%;
    height:100%;
    background-color:red;
    padding:5px;
    cursor:pointer;
}

.sound:hover{
    transform: scale(1.1);
    background-color: blue;
}

@media only screen and (max-width: 600px) {
    .title-flex{
        width:60vw;
        height:60vw;
    }

    .title{
        font-size:8vw;
    }

}