/* Stylish */

* {
    box-sizing: border-box;
}

body {
    background: #fff;
    font-family: "Source Sans Pro", serif;
    -webkit-font-smoothing: antialiased;
    margin: 0px;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

ul {
    padding: 0px;
}

ul li {
    list-style: none;
}

img {
    max-width: 100%;
    height: auto;
}


/* Let’s Go! */

.wrap {
    position: relative;
    width: 100vw;
    height: 100vh;
    text-align: center;
}

.video-wrap {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%; 
    overflow: hidden;
    z-index: -10;
}

.video-wrap video {
    min-width: 100%; 
    min-height: 100%;
    width: auto;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}

.header {
    display: flex;
    flex-direction: column;
    width:100%;
    height: 100px;
    padding:50px 30px;
    text-align: center;
    justify-content: center;
    background:#fff;
}

.header ul {
    margin:0px auto;
    display: flex;
    width:100%;
    max-width: 800px;
    justify-content: space-between;
    align-items: center;
}

.header ul li a {
    text-decoration: none;
    color: #000;
    font-weight: 600;
    font-size: 17px;
}

.header ul li.logo a {
    display: inline-block;
}

.header ul li.logo a img {
    width: 150px;
    height: auto;
}

.header ul li.mobile {
	display:none;
}

nav {
	opacity:0;
	display:flex;
	justify-content: center;
	position: absolute;
	top: 100px;
	left:0px;
	right:0px;
	background:#000;
	width:100%;
	z-index:-1;
	transition:all 600ms;
	-webkit-transition:all 600ms;
	-moz-transition:all 600ms;
}

nav.active {
	z-index: 1;
	opacity:1;
	transition:all 200ms;
	-webkit-transition:all 200ms;
	-moz-transition:all 200ms;
}

nav a {
	display: block;
	padding:20px 10px;
    text-decoration: none;
    color: #fff;
    font-weight: 600;
    font-size: 17px;
}

.act {
    position: absolute;
    bottom:0px;
    left:0px;
    right:0px;
    display: flex;
    justify-content: center;
    margin-bottom:30px;
}

.act a {
    display: inline-block;
    padding:25px 45px;
    text-transform: uppercase;
    text-decoration: none;
    font-size: 17px;
    font-weight: 600;
}

.act a:first-child {
    background:rgba(0,0,0,0.9);
    color: #fff;
}

.act a:last-child {
    background:#292138;
    color:#FF4350;
    margin-left:20px;
}

.content {
    display: flex;
    justify-content: center;
    align-items: center;
    padding:0px 30px;
    max-width: 90%;
    height:70vh;
    margin:30px auto 0px;
}

.content.rev {
    margin-top: 50px;
}

.content .image {
    display: block;
    width: 100%;
    height: 100%;
}

.content .image img {
    max-width: 100%;
    height: auto;
}

.content .text {
    text-align: left;
    padding-left: 6%;
    line-height: 30px;
}

.content .text.left {
    padding-left: 0;
    padding-right: 6%;
}

.content .text h1 {
    font-size: 27px;
    font-weight: 600;
    margin:0px 0px 30px 0px;
}

.content .text h1 span {
    font-weight: 300;
}

.content .text p {
    font-size: 17px;
    margin:0px 0px 30px 0px;
}

.content .text ul li {
    font-size: 13px;
    line-height: 25px;
}

.content .text a {
	color: #174158;
}

.content.middle {
    margin-top:5%;
    justify-content: flex-start;
    height: auto;
}

.content.middle .text {
    padding:0px;
    width:100%;
    text-align:center;
}

.content.middle img.other {
	max-width: 100%;
	height: auto;
	width:400px;
	margin-top:30px;
}

.img-row {
    padding:0px 30px;
    max-width: 90%;
    margin:30px auto 0px;
}

.img-row img {
    max-height: 25rem;
    padding: 2rem;
}

.logos {
    display: flex;
    justify-content: center;
    margin-bottom: 30px;
}

.logos img {
    max-height: 30px;
    width:auto;
    margin:0px 10px;
}

@media only screen and (max-width: 740px),
only screen and (max-height: 500px) {
    .header {
        background:none;
    }
    
    .header ul li a {
        display: none;
    }

    .header ul li.logo {
        display: block;
    }
    
    .header ul li.mobile {
        display: block;
	    position: absolute;
	    right:30px;
    }
    
    .header ul li.mobile a {
	    display: block;
	    cursor: pointer;
    }
	
	.header ul li.mobile a img {
		width:25px;
		height:auto;
		margin-bottom:15px;
	}
    
    .content,
    .img-row {
	    flex-direction: column;
	    min-height: 600px;
	    padding:0px;
	    margin: 10px auto 0px;
    }

    .content.rev {
        flex-direction: column-reverse !important;
    }
    
    .content .image {
	    margin-bottom:30px;
    }

    .img-row img {
        padding: 1rem 0;
        max-height: 100% !important;
    }
}

@media only screen and (max-width: 414px) {
    .act {
        flex-direction: column;
        max-width: 90%;
        margin:0px auto 20px;
    }

    .act a:last-child {
        margin:0px;
    }
}