*,:after,:before{box-sizing:border-box}
body{font-weight:300;margin:0}
:root{
    --primary-colour:rgb(138, 2, 2);
    --secondary-colour:rgb(255, 255, 255);
    --foreground:rgb(100, 100, 100);
    --background:rgb(240, 240, 240);
    --dark:blue;
    --light:orange;
}
main{
    scroll-snap-type:y;
    position:relative;
    overflow-y:hidden;
    overflow-x:hidden;
}
.no-scroll{overflow:hidden}
.section{
    width:100vw;
    scroll-snap-align:start;
    padding:1.5em;
    box-sizing:border-box;
    display:inline-block;
    transform:skewY(-7deg);
    overflow:hidden;
    box-shadow:0 0 20px rgba(0,0,0,.3);
    border:none;
    margin-left:-10px;
}
.content{
    transform:skewY(7deg);
    overflow:hidden;
    margin:-1.5em;
    margin-bottom:100px;
    height:100%;
}
#start{margin-bottom:-30px}
#portfolio{
    height:auto;
    margin-top:-100px;
    background:#fbf6f6;
    border-top:10px solid #b31313;
}

a,h2,h3,h4{
    font:400 4rem/1.5 sans-serif;
    color:var(--background);
    transform-origin:center;
    text-decoration:none;
}
h3{font:400 2em/1.5 sans-serif}
h1{
    font-size:50px;
    font-family:'Roboto Condensed',sans-serif;
    font-weight:700;
    background:var(--primary-colour);
    color:#fff;
    padding:5px 15px;
    border-radius:5px;
}
.header{
    z-index:1;
    position:absolute;
    background:transparent;
}
.header h1{
    background:transparent;
    color:var(--primary-colour);
    margin-top:0;
}
h2{
    font-size:35px;
    font-family:'Roboto Condensed',sans-serif;
    font-weight:700;
    margin-top:-28px;
    line-height:40px;
}
p{
    font-family:Lora,serif;
    font-weight:400;
    font-size:20px;
    margin-top:-20px;
    color:var(--background);
}
a{
    color:var(--primary-colour);
    font-size:inherit;
    padding:8px;
}
a:hover{
    background:var(--primary-colour);
    color:#fff;
}
a:visited{color:var(--primary-colour)}
.right h1,.right h2,.right h3,.right h4,.right p{
    text-align:left;
    float:left;
    width:100%;
    color: white;
}
.left h1,.left h2,.left h3,.left h4,.left p{
    text-align:right;
    float:right;
    width:100%;
    color: white;
}
.left h1,.right h1{width:auto}
.item{
    position:relative;
    min-height:450px;
    margin:30px auto;
    display:inline-block;
    color:var(--primary-colour);
    padding:20px;
    margin:0 0 1.5em;
    box-sizing:border-box;
    width:50%;
    opacity:0;
    visibility:hidden;
    will-change:transform,opacity;
}

.back{
    background-size:cover;
    width:50%;
    border-radius:10px;
    border:5px solid #efefef;
    box-shadow:0 0 20px rgba(0,0,0,.3);
}
.left{float:left}
.right{float:right}
.center{width:100%}
.center h1,h2,h3,h4,p{text-align:center}
.menuHolder{
    position:fixed;
    z-index:1000;
    width:100%;
    left:0;
    display:inline-block;
    background:radial-gradient(circle,red 0,#c90000 37%,#6e0000 100%);
    height:100%;
    opacity:0;
    visibility:hidden;
}
.menuItem{list-style:none;text-align:center}
.menuItem a{
    font-size:30px;
    list-style:none;
    display:inline-block;
    cursor:pointer;
    list-style-type:none;
    padding:5px;
    border-bottom:1px solid #b30000;
    font-family:'Roboto Condensed',sans-serif;
    color:#fff;
}
.menuItem a:hover{
    background:#efefef;
    color:red;
}
.menuOff{visibility:hidden}
.one,.three,.two{
    position:absolute;
    width:400px;
    height:300px;
    background-size:cover;
    

    border-radius: 7px;
    
    box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;


}
.one{left:10%;top:50px}
.two{left:20%;top:20%}
.three{
    left:15%;
    top:40%;
    width:150px;
}
.wide{
    left:15%;
    top:40%;
    width:400px;
}
.left .one{
    left:auto;
    right:10%;
}
.left .three{
    right:30%;
    left:auto;
}
.images{
    position:relative;
    min-height:450px;
    margin:30px auto;
    display:inline-block;
    color:var(--background);
    padding:20px;
    margin:0 0 1.5em;
    box-sizing:border-box;
    width:50%;
}
.single{
    position:absolute;
    width:400px;
    height:300px;
    background-size:cover;
    border-radius:10px;
    
    box-shadow:0 0 20px rgba(0,0,0,.3);
}
.left .single{
    right:40px;
    
    top:50px;
}
.right .single{
    left:40px;
    
    top:50px;
}
.x{
    font-size:40px;
    position:absolute;
    color:#fff;
    z-index:2000;
    cursor:pointer;
    user-select:none;
    top:5px;
    right:20px;
    font-weight:700;
    font-family:sans-serif;
}
#menuClose{display:none}
.o{
    font-size:40px;
    position:absolute;
    color:#fff;
    z-index:999;
    cursor:pointer;
    user-select:none;
    float:right;
    right:20px;
    top:10px;
    display:inline-block;
}
.chatButton{
    position:absolute;
    color:#fff;
    z-index:999;
    cursor:pointer;
    user-select:none;
    float:right;
    right:18px;
    top:50px;
}
.menuLine{
    width:35px;
    height:5px;
    background-color:#fff;
    margin:6px 0;
}
.youtube-video-container{
    position:relative;
    overflow:hidden;
    width:33%;
    box-sizing:border-box;
}
.youtube-video-container::after{
    display:block;
    content:"";
    padding-top:56.25%;
}
.youtube-video-container iframe{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
#vid_po{
    position:absolute;
    right:0;
    bottom:0;
    min-width:100%;
    min-height:100%;
    visibility:hidden;
    height:100vh;
    object-fit:cover;
}
#vid_la{
    right:0;
    bottom:0;
    min-width:100%;
    min-height:100%;
    visibility:visible;
    width:100%;
    object-fit:cover;
    height:100%;
}
.section-header{
    width:auto;
    font-size:100px;
    color:var(--primary-colour);
    background:transparent;
    top:0;
    font-weight:700;
    text-shadow:0 -1px 0 #222,0 1px 0 #aaa;
    transform:rotate(-7deg);
    margin-top:50px;
    text-align:center;
    border-bottom:1px dotted var(--primary-colour);
}
#about .section-header,#music .section-header{
    color:#fff;
    border-bottom:1px dashed #fff;
}
#start .content{
    height:100vh;
    margin-bottom:-20px;
}
.line{
    border-bottom:1px dashed var(--primary-colour);
    display:inline-block;
    position:relative;
    width:100%;
    margin-top:20px;
    margin-bottom:40px;
    transform:rotate(-7deg);
    z-index:-1;
}
.rightline{
    border-bottom:1px dashed var(--primary-colour);
    display:inline-block;
    position:relative;
    width:100%;
    margin-top:20px;
    margin-bottom:40px;
    transform:rotate(7deg);
    z-index:-1;
}
#about .rightline{border-bottom:1px dashed #fff}
#about .line{border-bottom:1px dashed #fff}
.iconStrip{
    display:inline-block;
    position:relative;
    float:left;
}
.left .iconStrip{
    display:inline-block;
    position:relative;
    float:right;
}
.devicon{font-size:30px}
.menuHolder{margin-top:-50px}
.menu{
    transform:skewY(7deg);
    margin-top:140px;
    margin-left:-30px;
}
.login{
    background:var(--background);
    height:100%;
    z-index:2;
    position:absolute;
    padding:50px;
    display:inline-block;
    width:100%;
    margin-left:-20px;
    margin-top:-20px;
}
.login h2{
    color:var(--primary-colour);
    position:relative;
    float:left;
    border-bottom:5px solid;
    text-align:left;
    left:0;
}
#username{
    width:100%;
    padding:12px;
    border:none;
    box-sizing:border-box;
    margin-top:6px;
    margin-bottom:16px;
    resize:vertical;
    border-bottom:2px solid var(--primary-colour);
    font-family:'Roboto Condensed',sans-serif;
    outline:0;
    -webkit-border-radius:0;
    border-radius:0;
    -webkit-appearance:none;
    background:transparent;
    font-size:20px;
}
#loginButton{
    display:inline;
    background-color:var(--primary-colour);
    color:var(--background);
    padding:12px 20px;
    border:none;
    border-radius:4px;
    cursor:pointer;
    -webkit-border-radius:0;
    border-radius:0;
    -webkit-appearance:none;
    font-size:20px;
}
.login .iconStrip{
    position:relative;
    color:var(--primary-colour);
    float:right;
}
#loginButton:hover{background-color:#04aa6d}
.chatContainer{
    position:fixed;
    z-index:20000;
    background:var(--background);
    padding:20px;
    padding-bottom:20px;
    height:100vh;
    width:50%;
    visibility:hidden;
    box-shadow:0 0 20px rgba(0,0,0,.5);
    display:inline-flex;
    box-sizing:border-box;
}
.chatSys{
    visibility:hidden;
    width:100%;
}
.chatContainer p{
    font-family:Roboto,sans-serif;
    font-weight:300;
    display:inline;
}
#messages{
    padding:0;
    position:absolute;
    height:calc(100% - 195px);
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    flex:auto;
}
#messages li{
    list-style:none;
    margin-left:0;
    display:inline-block;
    width:100%;
    margin-top:10px;
    font-family:Roboto,sans-serif;
    font-weight:300;
}
#messages li img{max-width:100%}
#messages .thumbnail{max-width:100%}
.user{
    border-radius:5px;
    width:auto;
    display:inline-block;
    padding:10px;
}
#m{
    width:100%;
    padding:12px;
    border:none;
    box-sizing:border-box;
    margin-top:6px;
    margin-bottom:16px;
    resize:vertical;
    border-bottom:2px solid var(--primary-colour);
    font-family:'Roboto Condensed',sans-serif;
    outline:0;
    -webkit-border-radius:0;
    border-radius:0;
    -webkit-appearance:none;
    background:transparent;
    font-size:20px;
    bottom:30px;
    position:absolute;
    display:flex;
}
#subButton{
    position:absolute;
    bottom:20px;
    padding:10px;
    float:right;
    right:0;
    display:flex;
}
.temp{
    display:inline-block;
    padding:10px 0;
    left:0;
    float:right;
    width:auto;
    height:35px;
    font-size:20px;
    position:absolute;
    bottom:80px;
    z-index:20;
    fontfont-family:'Roboto Condensed',sans-serif;
}
.private{
    background:var(--primary-colour);
    padding:20px;
    color:#fff;
}
#music{height:100%}
.third{
    width:33%;
    display:inline-block;
    padding:20px;
}
.third h1,.third h2,.third h3,.third p{
    background:transparent;
    color:#fff;
    text-align:center;
}
#voice .third{width:33%;display:inline-flex}
#waveform,#waveform2{
    position:relative;
    overflow-x:hidden;
    width:100%;
    transform:rotate(-7deg);
}
.playlistItem{
    list-style:none;
    cursor:pointer;
    border-radius:4px;
    color:var(--primary-colour);
    background:var(--background);
    font-size:16px;
    text-align:left;
    padding:15px;
    margin-bottom:10px;
    font-family:'Roboto Condensed';
    border-right:10px solid orange;
}
.playIcon{
    box-sizing:border-box;
    position:relative;
    display:block;
    transform:scale(var(--ggs,1));
    width:42px;
    height:42px;
    right:0;
    float:right;
}
.playIcon::before{
    content:"";
    display:block;
    box-sizing:border-box;
    position:relative;
    width:0;
    height:20px;
    border-top:10px solid transparent;
    border-bottom:10px solid transparent;
    border-left:12px solid;
    top:0;
    right:0;
}
.playlistItem:hover{
    background:var(--primary-colour);
    color:#fff;
}
.playing{
    background:var(--primary-colour);
    color:#fff;
}
.time{
    width:100%;
    position:relative;
    margin-left:0;
    color:gray;
    text-align:center;
    top:-50px;
    transform:rotate(-7deg);
}
.time p{
    display:inline;
    font-family:'Roboto Condensed',sans-serif;
    color:orange;
    padding:4px;
    font-size:30px;
}
.third ul{
    padding-inline-start:0;
    margin-block-start:0;
}
input[type=email],input[type=text],select,textarea{
    width:100%;
    padding:12px;
    border:none;
    box-sizing:border-box;
    margin-top:6px;
    margin-bottom:16px;
    resize:vertical;
    border-bottom:2px solid var(--primary-colour);
    font-family:'Roboto Condensed',sans-serif;
    outline:0;
    -webkit-border-radius:0;
    border-radius:0;
    -webkit-appearance:none;
}
input[type=email]:focus,input[type=text]:focus,select:focus,textarea:focus{
    border-bottom:5px solid var(--primary-colour);;
}
input[type=submit]{
    background-color:#04aa6d;
    color:#fff;
    padding:12px 20px;
    border:none;
    border-radius:4px;
    cursor:pointer;
    -webkit-border-radius:0;
    border-radius:0;
    -webkit-appearance:none;
}
input[type=submit]:hover{
    background-color:#45a049;
    -webkit-border-radius:0;
    border-radius:0;
    -webkit-appearance:none;
}
select{
    background:var(--primary-colour);
    color:#fff;
    font-family:'Roboto Condensed';
    -webkit-border-radius:0;
    border-radius:0;
    -webkit-appearance:none;
}
.container{
    border-radius:5px;
    padding:20px;
    width:100%;
    margin-left:auto;
    margin-right:auto;
}
#about h2,#about p{
    color:var(--background);
    font-family:sans-serif;
}
#about .item{min-height:100px}
#contact .chatButton{
    color:var(--primary-colour);
    position:relative;
    top:0;
}

#chatClose{
    display:inline-block;
    color:var(--primary-colour);
}
.youtube-player{
    position:relative;
    padding-bottom:56.25%;
    height:0;
    overflow:hidden;
    max-width:100%;
    background:#000;
    margin:0;
    width:100%;
}
.youtube-player iframe{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index:100;
    background:transparent;
}
.youtube-player img{
    object-fit:cover;
    display:block;
    left:0;
    bottom:0;
    margin:auto;
    max-width:100%;
    width:100%;
    position:absolute;
    right:0;
    top:0;
    border:none;
    height:auto;
    cursor:pointer;
    -webkit-transition:.4s all;
    -moz-transition:.4s all;
    transition:.4s all;
}
.youtube-player img:hover{-webkit-filter:brightness(75%)}
.youtube-player .play{
    height:72px;
    
    left:50%;
    top:50%;
    margin-left:-36px;
    margin-top:-36px;
    position:absolute;
    background: url(v2/images/play-button.png);
    background-repeat: repeat;
    background-size: auto;
    background-size: contain;
    background-repeat: no-repeat;
}
.section:nth-of-type(1){background:radial-gradient(circle,red 0,#c90000 37%,#6e0000 100%)}
.section:nth-of-type(2){background:#fff}
.section:before{transform:skewY(10deg)}
.section:nth-of-type(3){background:radial-gradient(circle,red 0,#c90000 37%,#6e0000 100%)}
.section:nth-of-type(4){background:radial-gradient(circle,#fff 0,#d5d5d5 37%,#e6e6e6 100%)}
.section:nth-of-type(5){background:radial-gradient(circle,red 0,#c90000 37%,#6e0000 100%)}

#portfolio .right p, #portfolio .right h2, #portfolio .right h3{
    color:var(--primary-colour);
}

#portfolio .left p, #portfolio .left h2, #portfolio .left h3{
    color:var(--primary-colour);
}


#contact .right p, #contact .right h2, #contact .right h3{
    color:var(--primary-colour);
}

#contact .left p, #contact .left h2, #contact .left h3{
    color:var(--primary-colour);
}


@media only screen and (min-width:320px) and (max-width:1000px){
    .item{width:100%}
    .right{
        float:left;
        text-align:left
    }
    #vid_la{visibility:hidden}
    #vid_po{visibility:visible}
    .section-header{font-size:70px}
    .header h1{
        background:transparent;
        color:#fff;
        margin-top:20px;
        margin-left:10px;
        transform:rotate(-7deg)
    }
    .images{
        min-height:280px;
        width:100%
    }
    .item{min-height:100px}
    .one,.three,.two{
        position:absolute;
        width:300px;
        height:200px;
        background-size:cover;
        border-radius: 7px;
        
        box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;
    }
    .left .one,.right .one{
        left:10%;
        top:0
    }
    .left .two,.right .two{
        left:25%;
        top:20%
    }
    .left .three,.right .three{
        left:20%;
        top:40%;
        width:120px
    }
    .left .single{
        right:auto;
        left:20px
    }
    .right .single{
        left:auto;
        right:20px
    }
    .chatContainer{width:100%}
    .third{
        width:100%;
        display:inline-block;
        padding:20px
    }
    #voice .third{
        width:100%;
        margin:5px;
        padding:0;
        display:inline-flex
    }
    .third h1,.third h2,.third h3,.third p{
        background:transparent;
        color:#fff;
        text-align:center
    }
    .playlistItem{
        list-style:none;
        cursor:pointer;
        border-radius:4px;
        color:var(--primary-colour);
        background:var(--background);
        font-size:16px;
        text-align:left;
        padding:10px;
        margin-bottom:10px
    }
    .playing{
        background:var(--primary-colour);
        color:#fff
    }
    .time{
        width:100%;
        position:relative;
        margin-left:20px;
        color:gray
    }
    .time p{
        display:inline;
        font-family:'Roboto Condensed',sans-serif;
        color:orange;
        padding:4px;
        font-size:30px
    };
}

@media only screen and (min-device-width:768px) and (max-device-width:1024px) and (orientation:landscape){
    #vid_la{visibility:visible}
    #vid_po{visibility:hidden};
}

@media only screen and (min-device-width:768px) and (max-device-width:1024px) and (orientation:portrait){
    #vid_la{visibility:hidden}
    #vid_po{visibility:visible}
    .third{
        width:100%;
        display:inline-block;
        padding:20px
    };
}

@media only screen and (min-device-width:768px) and (max-device-width:1024px) and (orientation:landscape) and (-webkit-min-device-pixel-ratio:2){
    #vid_la{visibility:visible}
    #vid_po{visibility:hidden}
    .third{
        width:50%;
        display:inline-block;
        padding:20px
    };
}

@media only screen and (min-device-width:768px) and (max-device-width:1024px) and (orientation:portrait) and (-webkit-min-device-pixel-ratio:2){
    #vid_la{visibility:hidden}
    #vid_po{visibility:visible};
}