/** {
    border: 1px solid red;
}*/

* {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -webkit-text-size-adjust: none;
    margin: 0;
}

html {
    scroll-behavior: smooth;
    overflow-x: hidden;
}

body {
    margin: 0;
    font-family: Helvetica, sans-serif;
    background-color: black;
    color: white;
    overflow-x: hidden;
}

a {
    text-decoration: none;
}

:root {
    --primary: #00B4FF;
}




nav {
    position: absolute;
    width: 50vw;
    top: 0;
    right: 0;
    padding: 3% 3% 0 0;
    z-index: 5;
}

nav .nav-ul {
    display: flex;
    flex-direction: row;
    -ms-flex-direction: row;
    justify-content: space-around;
    font-size: 1.5vw;
}

nav .projects-ul, nav .media-ul {
    display: none;
    flex-direction: column;
    -ms-flex-direction: column;
    font-size: 1.5vw;
    justify-content: space-around;
    height: 15vw;
    width: 100%;
    padding: 0;
    margin-top: 10%;
}

nav .media-ul img {
    height: 2.5vw;
}

nav ul li {
    display: block;
    width: 10vw;
}

nav ul li a {
    color: white;
    transition: color 0.5s ease;
    -o-transition: color 0.5s ease;
    -moz-transition: color 0.5s ease;
    -webkit-transition: color 0.5s ease;
}

nav ul li a#pad {
    padding: 0 1.8vw;
}

nav ul li a:hover {
    color: var(--primary);
}

nav ul li a img:hover {
    opacity: 0.7;
}

@media only screen and (orientation: portrait) {
    nav {
        width: 100vw;
        padding: 8% 3% 0 0;
    }

    nav .nav-ul {
        font-size: 4vw;
    }

    nav .projects-ul, nav .media-ul {
        font-size: 4vw;
        height: 45vw;
    }

    nav ul li {
        width: 22vw;
    }

    nav ul li a#pad {
        padding: 0 5vw;
    }


    nav .media-ul img {
        height: 7.5vw;
    }
}




.landing {
    height: 100vh;
    width: 100vw;
}

.landing .back {
    background: url("img/fsa_logo.png") no-repeat center, #121212;
    background-size: contain;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.landing .box {
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 1));
    height: 175%;
    width: 100%;
}

.landing .box .top {
    height: 57.5%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.landing .box .top .title {
    z-index: 1;
    width: 60%;
}

.landing .box .top .title h1 {
    font-size: 8vw;
}

.landing .box .top .title p {
    margin-left: 10%;
    width: 80%;
    font-size: 2.2vw;
    line-height: 3vw;
    font-family: "Old English Text MT", sans-serif;
}

.landing .box .top .title .motto {
    width: 100%;
    margin-left: 0;
    margin-top: 2%;
    font-size: 2vw;
    font-style: italic;
    font-family: "Harlow Solid Italic", sans-serif;
}

.landing .box .bottom {
    display: flex;
    flex-direction: column;
    height: 42.5%;
    width: 100%;
    font-family: monospace;
}

.landing .box .bottom .info {
    width: 100%;
    height: 60%;
    display: flex;
    justify-content: space-around;
}

.landing .box .bottom .info p {
    font-size: 4vw;
    line-height: 6vw;
}

.landing .box .bottom .info p span {
    color: var(--primary);
}

.landing .box .bottom .info .desc {
    font-size: 1.5vw;
    line-height: 2.5vw;
    text-align: justify;
    width: 70%;
    padding-top: 4%;
}

.landing .box .bottom .info .desc a {
    color: var(--primary);
}

.landing .box .bottom .info .desc a:hover {
    text-decoration: underline;
}

.landing .box .bottom .social {
    width: 100%;
    height: 40%;
    display: flex;
}

.landing .box .bottom .social .side {
    width: 50%;
    display: flex;
    justify-content: space-evenly;
}

.landing .box .bottom .social .side .m {
    width: 40%;
    height: min-content;
    border-radius: 0.8vw;
    padding: 3%;
    cursor: pointer;
    transition: transform 500ms ease-out;
}

.landing .box .bottom .social .side .m:hover {
    transform: scale(1.05);
}

.landing .box .bottom .social .side .m .wrap {
    width: 100%;
    margin-bottom: 0.5vw;
    display: flex;
}

.landing .box .bottom .social .side .m .wrap h3 {
    width: 80%;
    font-size: 1.8vw;
    text-align: left;
}

.landing .box .bottom .social .side .m .wrap img {
    width: 15%;
    margin-right: 5%;
}

.landing .box .bottom .social .side .m p {
    font-size: 1.2vw;
    text-align: left;
}

.landing .box .bottom .social .side .yt {
    background-color: red;
}
.landing .box .bottom .social .side .ig {
    background: radial-gradient(circle at 30% 107%, #fd5949 25%,#d6249f 60%,#285AEB 90%);
}
.landing .box .bottom .social .side .fc {
    background-image: url("img/fc.png");
    background-size: cover;
}
.landing .box .bottom .social .side .dc {
    background-color: #990099;
}

@media only screen and (orientation: portrait) {
    .landing {
        height: 175vh;
        width: 100vw;
    }

    .landing .back {
        background: url("img/fsa_logo.png") no-repeat center, #121212;
        background-size: contain;
        height: 100%;
        width: 100%;
        position: absolute;
        top: 0;
        left: 0;
    }

    .landing .box {
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 1));
        height: 100%;
        width: 100%;
        position: relative;
    }

    .landing .box .top .title {
        width: 90%;
    }

    .landing .box .top .title h1 {
        font-size: 15vw;
        margin-bottom: 5vw;
    }

    .landing .box .top .title p {
        font-size: 5vw;
        line-height: 8vw;
    }

    .landing .box .top .title .motto {
        font-size: 4.5vw;
        margin-top: 6%;
    }

    .landing .box .bottom .info {
        flex-direction: column;
        align-items: center;
    }

    .landing .box .bottom .info p {
        font-size: 8vw;
        line-height: 12vw;
    }

    .landing .box .bottom .info .desc {
        font-size: 3.75vw;
        line-height: 6.5vw;
        width: 90%;
        padding-top: 0;
    }

    .landing .box .bottom .social .side {
        flex-direction: column;
        align-items: center;
    }

    .landing .box .bottom .social .side .m {
        width: 90%;
        border-radius: 1.6vw;
        padding: 6%;
    }

    .landing .box .bottom .social .side .m .wrap {
        margin-bottom: 1vw;
    }

    .landing .box .bottom .social .side .m .wrap h3 {
        font-size: 4.2vw;
    }

    .landing .box .bottom .social .side .m p {
        font-size: 3vw;
    }
}




.steam {
    height: 100vh;
    width: 100vw;
    display: flex;
    background-color: black;
}

.steam .left {
    width: 30vw;
    display: flex;
    align-items: center;
}

.steam .left video {
    width: 100%;
}

.steam .right {
    width: 70vw;
}

.steam .right .inner {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: start;
    font-size: 2vw;
    padding-top: 10%;
}

.steam .right .inner .sub {
    width: 95%;
    margin-bottom: 20%;
}

.steam .right .inner .sub h3 {
    color: var(--primary);
    font-size: 1.5vw;
    font-weight: normal;
    margin-bottom: 3vw;
}

.steam .right .inner .sub div h4 {
    font-size: 2vw;
    font-weight: normal;
    font-family: monospace;
    margin: 2vw 0 1vw;
}

.steam .right .inner .sub div h4 a {
    color: white;
    transition: color 0.5s ease;
}

.steam .right .inner .sub div h4 a:hover {
    color: var(--primary);
}

.steam .right .inner .sub div p {
    font-size: 1.5vw;
    line-height: 2.5vw;
    margin-bottom: 2.5vw;
    color: #d9d9d9;
}

.steam .right .inner .sub div p a {
    color: #d9d9d9;
    line-height: 8vw;
    border: 0.2vw solid #d9d9d9;;
    padding: 1.5% 2.5%;
    border-radius: 5vw;
    transition: all 500ms ease-in-out;
}

.steam .right .inner .sub div p a:hover {
    background-color: var(--primary);
    border: 0.2vw solid var(--primary);
}

@media only screen and (orientation: portrait) {
    .steam {
        height: auto;
        flex-direction: column;
    }

    .steam .left {
        display: none;
    }

    .steam .right {
        width: 100%;
    }

    .steam .right .inner {
        font-size: 6vw;
        align-items: center;
    }

    .steam .right .inner .sub {
        width: 90%;
    }

    .steam .right .inner .sub h3 {
        font-size: 4.5vw;
        font-weight: normal;
        margin-bottom: 9vw;
    }

    .steam .right .inner .sub div h4 {
        font-size: 6vw;
        font-weight: normal;
        font-family: monospace;
        margin: 6vw 0 3vw;
    }

    .steam .right .inner .sub div p {
        font-size: 4.5vw;
        line-height: 7.5vw;
        margin-bottom: 7.5vw;
    }

    .steam .right .inner .sub div p a {
        line-height: 24vw;
        border: 0.6vw solid #d9d9d9;;
        padding: 4.5% 7.5%;
        border-radius: 15vw;
    }

    .steam .right .inner .sub div p a:hover {
        border: 0.6vw solid var(--primary);
    }
}




footer {
    margin-top: 15vh;
    background-color: #121212;
}

footer p {
    padding: 2.5%;
    text-align: center;
    font-size: 1vw;
}

footer p a {
    color: var(--primary);
    cursor: pointer;
}

@media only screen and (orientation: portrait) {
    footer {
        margin-top: 5vh;
    }

    footer p {
        padding: 7.5%;
        font-size: 4.5vw;
        line-height: 9vw;
    }
}