body {
	font-family: Raleway;
	background-color: #E4E4E4;
	margin: 0;
	display: flex;
	flex-direction: column;
	position: relative;
	min-height: 100vh;
}

.toplogo {
	height: 2vw;
	margin: 1.5vw auto 1.5vw 10vw;
}

.nav {
	background-color: #0d3963;
	display: flex;
	width: 100%;
	flex-direction: row;
	box-sizing: border-box;
	align-items: center;
/*		background-color: #0d3963;*/
}

.menu {
	display: flex;
	flex-direction: row;
	box-sizing: border-box;
	align-items: center;
	font-size: 1.1vw;
	margin-left: auto;
/*		background-color: #0d3963;*/
}

.nav.home {
	background-color: #154c82;
}

.menu a {
	color: #2584bb;
	text-decoration: none;
	transition: color 0.3s ease;
	padding: 1.5vw 1.5vw 1.5vw 0;
	text-align: center;
}

@media only screen and (max-width: 1000px) {
	.nav, .nav.home, .menu {
		flex-direction: column;
		font-size: 5vw;
		background-color: #154c82;;
	}

	.menu {
		background-color: #0d3963;
		margin: 0;
		width: 100%;
		padding: 1vh 0;
	}

	.toplogo {
		height: 8vw;
		margin: 4vh;
	}
}

.menu a:hover {
	color: white;
}

.menu a.selected {
	font-weight: bold;
	color: white;
}

.header {
	display: flex;
	align-items: center;
	background-color: #154c82;
}

.topsection {
	padding-left: 10vw;
	display: flex;
	align-items: center;
	height: 70vmin;
	background-color: #154c82;
/*	background-image: url("workshop.jpg");*/
	background-size: cover;
}

.bigheader {
	font-size: 4.5vw;
	width: 60vw;
	color: #F1F1F1;
}

.opener {
	padding-left: 10vw;
	padding-right: 10vw;
	padding-top: 5em;
	color: #3F3F3F;
}

.textcontent {
	font-size: 1.8em;
	width: 60vw;
}

.pushright {
	border-left: 3px solid #2584bb;
	padding: 0.3em 0 0 0.5em;
	margin-left: 2em;
}

.ourteam h1 {
	color: #154c82;
	margin-bottom: 0;
	font-size: 2em;
	margin-bottom: 0.3em;
	margin-top: 1.5em;
}

.bignumlist {
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: 1vh;
}

.bignumber {
	font-family: Roboto Mono;
	font-weight: 500;
	font-size: 4em;
	color: #2584bb;
	margin-right: 0.2em;
}

.numberedrow {
	color: #3F3F3F;
	margin-left: 2em;
	font-size: 2em;
	max-width: 25em;
	display: flex;
	align-items: center;
}

.anim {
	transition: all 0.5s ease;
}

.numberedrow.prescroll {
	transform: translateX(-2em);
	opacity: 0;
}

.iconrow {
	display: flex;
	justify-content: space-evenly;
	margin: 4em 0;
	flex-wrap: wrap;
}

.iconrowitem {
	text-align: center;
	flex: 1;
}

.iconrowitem p {
	font-size: 1.5em;
	color: #154c82;
}

.iconrowitem i {
	font-size: 10em;
	color: #2584bb;
}

.iconrowitem.prescroll {
	transform: translateY(2em);
	opacity: 0;
}

.ourteam {
	padding-right: 10vw;
	padding-left: 10vw;
	margin-top: 5vh;
	color: #3F3F3F;
	margin-bottom: 5vh;
}

.textcontent.right {
	text-align: right;
	float: right;
}

.boss {
	padding-top: 2em;
/*	background-color: #154c82;*/
}

.card {
	display: flex;
	align-items: start;
	margin: 1vw 10vw;
	background-color: #EFEFEF;
	border-radius: 1em;
	overflow: hidden;
	padding: 4em;
}

.clientscard {
	flex-direction: column;
}

.bossimage {
	min-height: 15em;
	min-width: 15em;
	border-radius: 50%;
	margin-right: 4em;
	background-size: cover;
}

@media only screen and (max-width: 1000px) {

    .card {
    	flex-direction: column;
    	align-items: center;
    }

    .bossimage {
    	margin-right: 0;
    	margin-bottom: 2em;
    }
}

.teamcontent {
	font-size: 1.4em;
}

.bossheader {
	font-weight: bold;
	font-size: 2em;
}

.bosssub {
	font-weight: bold;
	font-size: 1em;
	color: #2584bb;
	margin: 0.2em 0;
}

ul {
	list-style: none;
	margin-bottom: 1em;
}

ul li {
	font-size: 1.6em;
	border-left: 3px solid #2584bb;
	padding-left: 0.5em;
	margin: 0.6em;
}

.worktypes ul li {
	font-size: 1.4em;
}

.worktypes ul li.prescroll {
	border-left: 0px solid #2584bb;
	opacity: 0;
}

ol {
	list-style-type: none;
    counter-reset: ol-counter;
    margin-left: 2em;
    margin-bottom: 2em;
}

ol li {
	position: relative;
	margin: 1em;
}

ol li.prescroll {
	opacity: 0;
}

ol li:before {
	content: counter(ol-counter);
    counter-increment: ol-counter;
    position: absolute;
    left: -1em;
    top: -0.1em;
    font-family: Roboto Mono;
    font-size: 2.5em;
    color: #2584bb;
}

ol li h1 {
	font-size: 1.5em;
	margin: 0 0 0.2em 0;
}

.contacttop {
	padding: 3vh 10vw 0 10vw;
	color: white;
	background-color: #154c82;
	flex-grow: 1;
}

.contacttop li {
	position: relative;
	border: none;
	margin-bottom: 1em;
}

.contacttop li i {
	position: absolute;
	left: -1em;
	top: 0.1em;
	text-align: right;
	width: 1em;
	color: #2584bb;
}

.howtop {
	padding: 5vh 10vw 9vh 10vw;
	color: white;
	background-color: #154c82;
}

.worktypes {
	padding: 0 0 3vw 0;
	position: relative;
}

.worktype {
	width: 60vw;
	margin: 0 0 0 10vw;
}

.worktypeheader {
	font-size: 2em;
	padding: 1em 10vw 0.5em 10vw;
	font-weight: bold;
	color: #154c82;
	width: 100%;
	box-sizing: border-box;
}

#worktypefixedheader {
	padding: 1em 10vw;
	font-size: 2em;
	font-weight: bold;
	color: #154c82;
	width: 100%;
	position: fixed;
	top: 0;
	opacity: 0;
	left: 0;
	background-color: #DDDDDD;
	pointer-events: none;
}

#worktypefixedheader.show {
	opacity: 1;

}

.worktypetext {
	font-size: 1.5em;
	color: #222222;
}

.teamcardquote {
	margin-left: 1.5em;
	font-style: italic;
	font-size: 1em;
	color: #555555;
	border-left: 3px solid #CCCCCC;
	position: relative;
	padding-left: 0.5em;
	margin-top: 1em;
	max-width: 70%;
	margin-bottom: 0;
}

.quotemid {
	padding: 5vw 10vw;
	background-color: #CCCCCC;
	margin: 3vh 0;
}

.bigquote {
	padding: 1em;
	font-style: italic;
	font-size: 1.8vw;
	color: rgba(255,255,255,1);
	position: relative;
	text-align: center;
	border-top: 2px solid rgba(0,0,0,0.2);
	border-bottom: 2px solid rgba(0,0,0,0.2);
}

.worktypequote {
	margin-left: 2em;
	font-style: italic;
	font-size: 1.5em;
	color: #555555;
	border-left: 3px solid #CCCCCC;
	position: relative;
	padding-left: 0.5em;
}

.quoteorigin {
	color: #2584bb;
	font-size: 0.6em;
	font-weight: bold;
}

/*.worktypequote:before {
	position: absolute;
	left: 0;
	z-index: -1;
	opacity: 0.5;
	content: '"';
	font-size: 3em;
}*/

p {
	margin: 0.5em 0;
}

.worktype h2 {
	margin-bottom: 0;
	color: #2584bb;
}

.footer {
	background-color: #0d3963;
	width: 100%;
	padding: 2em 10vw;
	box-sizing: border-box;
	color: white;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.copyright {
	font-size: 1em;
	color: white;
	margin-left: 2em;
}

.footerlogo {
	height: 2em;
}

.clientholder {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	margin-top: 1em;
	padding: 0 4vw;
}

.clientholder img {
	height: auto;
	width: 7vw;
	align-self: center;
	margin: 2em 3em;
}

#worktypecontents {
	background-color: #154c82;
	color: #154c82;
	padding: 1em 10vw;
	display: flex;
	z-index: 10;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	box-sizing: border-box;
	flex-wrap: wrap;
	transition: background-color 0.3s ease;
	pointer-events: none;
}

.worktypelink {
	margin: 1em;
	font-size: 1.1em;
	margin-right: 1vw;
	transition: all 0.3s ease;
	cursor: pointer;
	border-bottom: 2px solid rgba(21,76,130,0);
}

#worktypecontents.fixed {
	color: #2584ab;
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	background-color: #0d3963;
	pointer-events: default;
}

#worktypecontents.fixed .worktypelink.selected {
	border-bottom: 2px solid #2584bb;
	color: white;
}

#worktypecontentsplaceholder {

}