* {
    margin: 0 auto;
    padding:0;
}

html {
    margin: 0 auto;
    padding:0;
    scroll-behavior:smooth;
}

::-webkit-scrollbar {
    width:6.5px;
    background:rgba(255,255,255,1);
}

::-webkit-scrollbar-thumb {
    background:rgba(0,0,0,0.8);
    border-radius:10px;
}

.title {
    width:100%;
    height:100vh;
    background-size:cover;
    background-repeat:no-repeat;
    background-attachment:fixed;
}

.title a {
    width:100%;
    display:flex;
    justify-content:center;
    margin:0;
    position:relative;
}

.title i {
    position:absolute;
    top:0;
    left:50%;
    transform:translateX(-50%);
    transition: top 0.3s ease-in-out;
}

.title i:hover {
    top:3vh;
    transition: all 0.3s ease-in-out;
}

.title .container {
    position:absolute;
    top:55%;
    left:50%;
    transform:translate(-50%, -50%);
    width:80%;
    font-family: 'Questrial', sans-serif;
}

.brand {
    color:#fff;
    text-align:center;
}

.subtitle {
    color:#fff;
    font-size:2vw;
    text-align:center;
}

.context,
.aim,
.design,
.comp {
    width:100%;
    height:100vh;
    background:#eee;
    color:#333;
    text-align:center;
}

.context .container,
.aim .container,
.design .container,
.comp .container {
    top:150%;
    left:50%;
    position:absolute;
    transform:translate(-50%, -50%);
    width:80%;
}

h1 {
    font-family:'Questrial', sans-serif;
    font-size:5vw;
}

.context p,
.aim p,
.design p {
    line-height:1.5;
    font-size:1.25vw;
    font-family:'Gothic A1', sans-serif;
    font-weight:700;
}

.context p:not(:first-child),
.aim p:not(:first-child),
.design p:not(:first-child) {
    padding-top:5vh;
}


.aim table,
.design table {
    padding-top:5vh;
    width:100%;
}

.context p {
    padding-top:5vh;
}

.aim,
.comp {
    background:#fff;
    color:#000;
}

.aim .container {
    top:250%;
}

.aim .mobile,
.design .mobile {
    display:none;
}

.aim td,
.design td {
    width:50%;
}

.aim img,
.design img {
    width:90%;
}

.design .container {
    top:400%;
}

.design {
    height:200vh;
}

.design h1 {
    padding-top:15vh;
}

.comp {
    margin-bottom:50vh;
    height:50vh
}

.comp .container {
    top:525%;
}

.comp mark {
    color:#5797ad;
    background:#fff;
}

.footer {
    height:50vh;
    background:#000;
    color:#fff;
    text-align:center;
    position:fixed;
    bottom:0;
    left:0;
    z-index:-1;
    width:100%;
}

.footer .container {
    position:absolute;
    width:100%;
    height:100%;
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
}

.sponsors,
.orgs,
.social-media {
    position:absolute;
    left:50%;
    top:10vh;
    transform:translateX(-50%);
}

.orgs {
    top:25vh;
}

.copyright {
    padding-top:20vh;
    font-size:1vw;
    font-family: 'Gothic A1', sans-serif;
}

.social-media {
    top:35vh;
}


.sponsors-row,as
.orgs-row,
.social-media-row {
    width:100%;
    height:100%;
    display:flex;
    gap:2.5vw;
}

.sponsors-cell {
    height:20%;
    position:relative;
}

.orgs-row {
    width:100%;
    height:100%;
    display:flex;
    gap:2.5vw;
}

.orgs-cell {
    height:100%;
    position:relative;
}

.sponsors-cell img,
.orgs-cell img {
    height:5vh;
    margin:0;
}

.social-media i,
.title i {
    color:#fff;
    font-size:3vw;
}

.social-media i {
    transition: color 0.2s ease-in-out;
}

.social-media i:hover {
    color:#79b9cf;
    transition: color 0.2s ease-in-out;
}

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

    .sponsors-cell img,
    .orgs-cell img {
        height:3.5vh;
        margin:0;
    }

    .copyright {
        font-size:2vw;
    }

    .social-media i,
    .title i {
        color:#fff;
        font-size:5vw;
    }

    h1 {
        font-size:7.5vw;
    }

    .subtitle {
        font-size:4vw;
    }

    .context .container {
        width:90%;
    }

    .context p,
    .aim p,
    .design p {
        font-size:2.5vw;
    }

    .aim .desktop,
    .design .desktop {
        display:none;
    }

    .aim .mobile,
    .design .mobile {
        display:table;
    }

    .aim p,
    .design p {
        padding-bottom:3vh;
    }

    .aim img,
    .design img {
        width:60%;
    }

    .design h1 {
        padding-top:0;
    }
}