@charset "UTF-8";
/* CSS Document */

/* -------------------------------- BASICS */
body {
	width: 100%;
	max-width: 2560px;
}
#PageHeader, #PageContainer, #PageFooter {
	width: 100%;
    max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
}
#PageFooter {
    padding: 1em;
    box-sizing: border-box;
}
    #PageHeader {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        padding: 1.0em 1.5em;
        user-select: none;
        box-sizing: border-box;
    }
    #MobileNavLink {
        display: none;
    }
        .nav {
            position: relative;
            transition: color 0.5s linear;
        }
            .nav:hover {
                color: #5db4d0;
            }
            .nav.building .nav-marker {
                transition: none;
            }
            .nav-marker {
                position: absolute;
                left: 50%;
                top: 200%;
                transform: translate(-50%, -40%);
                opacity: 0.0;
                transition: all 0.5s ease-in-out;
                transition-delay: 0.25s;
            }
            .nav:hover .nav-marker {
                opacity: 1.0;
            }
                .nav-marker img {
                    width: 20px;
                }
            .About .nav-About,
            .Expertise .nav-Expertise,
            .References .nav-References,
            .Design .nav-Design,
            .Build .nav-Build,
            .Team .nav-Team,
            .Contact .nav-Contact {
                color: #5db4d0;
            }
            .About .nav-About .nav-marker,
            .Expertise .nav-Expertise .nav-marker,
            .References .nav-References .nav-marker,
            .Design .nav-Design .nav-marker,
            .Build .nav-Build .nav-marker,
            .Team .nav-Team .nav-marker,
            .Contact .nav-Contact .nav-marker {
                opacity: 1.0;
            }

    #PageContainer {
        max-width: none;
    }
#PageTitleSection {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 100%;
    max-width: none;
    background-image: url("../assets/TitleBG.jpg");
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    border-top: 8px solid #a1a1a1;
    padding: 1vh;
    box-sizing: border-box;
}
    #PageTitle {
        width: auto;
        max-width: 850px;
        font-family: 'Montserrat', sans-serif;
        font-size: 1.9em;
        color: #1c415d;
        word-spacing: 0.25em;
        letter-spacing: 0.3em;
        text-transform: uppercase;
        line-height: 1.9em;
        margin: 1em 0;
    }
#IntroTextSection {
    padding: 2em 0;
}
    #IntroTextContainer {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
    }
        #IntroContent {
            font-size: 1.5em;
            line-height: 4em;
            width: 83%;
        }
            #IntroTextContainer .logo {
                margin-top: 2em;
                margin-right: 1em;
            }

#BodyTextSection {
    padding: 2em 0;
}
    #BodyContent {
        font-size: 22px;
        line-height: 4em;
    }

#BottomDecoSection {
    border-top: 8px solid #a1a1a1;
    width: 100%;
    max-width: none;
    height: 15vw;
    background-image: url("/assets/BottomDeco.jpg");
    background-size: cover;
}

#KeywordsSection {
    position: relative;
    width: 100%;
    max-width: none;
    height: 10vh;
    background-image: url("../assets/TitleBG.jpg");
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    border-top: 8px solid #a1a1a1;
    border-bottom: 8px solid #a1a1a1;
    overflow: hidden;
    perspective: 150px;
}
    .keyword {
        position: absolute;
        top: 110%;
        font-size: 1.7em;
        font-weight: 700;
        animation-name: keywords;
        animation-duration: 18s;
        animation-iteration-count: infinite;
        animation-timing-function: ease;
        /*display: none;*/
    }
        @keyframes keywords {
          from {top: 130%;}
          to {top: -40%;}
        }


    #PageFooter {

    }
        #FooterFlex {
            display: flex;
            flex-direction: row;
            justify-content: space-between;
            align-items: center;
        }
            #FooterContact, #FooterAbout {
                
            }
                #FooterContact p, #FooterAbout p {
                    margin: 1.5em 0 1.5em 0;
                    line-height: 1.5em;
                }
                #FooterContact li, #FooterAbout li {
                    line-height: 1.5em;
                }
        #copyright {
            width: 100%;
            max-width: 1000px;
            padding: 1em;
            font-size: 14px;
            color: #a1a1a1;
            text-align: right;
            box-sizing: border-box;
        }

/* -------------------------------- MISCELLANY */
.full-width {
	width: 100%;
}
.limited-width {
	width: 100%;
	max-width: 1000px;
}
.logo {
    width: 220px;
}
.hilight {
    color: #5db4d0;
}
.capital {
    text-transform: uppercase;
}
.contact-button {
    position: relative;
    font-size: 1em;
    text-transform: uppercase;
    padding: 12px;
    border: 2px solid #5db4d0;
    border-right: 40px solid #5db4d0;    
}
    .contact-arrow {
        position: absolute;
        left: 100%;
        top: 50%;
        transform: translate(0, -50%);
        width: 40px;
    }
.blue {color: #6a99cf;}
.grey {color: #a1a1a1;}
.white {color: #ffffff;}
.ltblue {color: #5db0cc;}

