@import url('https://fonts.googleapis.com/css?family=Raleway:,200,200i,400,700');
@import url('https://fonts.googleapis.com/css?family=Source+Code+Pro');

html, body, * {
	margin:0;
	padding: 0;
	box-sizing: border-box;
	font-family: Raleway;
}

html, body{
	width: 100%;
	height: 100%;
}
body {
	overflow-x: hidden;
}
p {
	margin-bottom: 1em;
	color: black
}

#content{
	display: block;
	margin: 0 auto;
	width: 100%;
}

.wide-image{
	display: block;
	width: 100%;
	position: relative;
	box-shadow: inset 0px 0px 50px rgba(0,0,0,0.7);
}

.wide-image-contained{
	display: block;
	width: 100%;
	padding: 1vw 15vw 1vw 15vw;
	position: relative;
}

.wide-image[mobile="true"] {
	z-index: 1;
	pointer-events: none;
}

.image[mobile="false"] {
	position: absolute;
	display: block;
	z-index: 0;
	left: 0px;
	right: 0px;
	
	top: 0px;
	bottom: 0px;
	background-size: cover;
	background-position: 50% 50%;
	background-attachment: fixed;
	background-repeat: no-repeat;
}
.image[mobile="true"] {
	position: fixed;
	display: block;
	z-index: -1;
	left: 0px;
	pointer-events: none;
	right: 0px;
	top: 0px;
	bottom: 0px;
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: no-repeat;
}
.image-head {
	position: absolute;
	display: block;
	z-index: 0;
	left: 0px;
	right: 0px;
	top: 0px;
	bottom: 0px;
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: no-repeat;
}

.image-scroll {
	background-attachment: initial !important;
	height: 25vw;
	background-size: 100%;
	box-shadow: none !important;
}

.navigation{
	display: flex;
	/*! margin: 1vw 15vw 1vw 15vw; */
	padding-top: .3em;
	padding-bottom: .3em;
	/*! border-top: 1px solid #ff8a00; */
	/*! border-bottom: 1px solid #504e41; */
	/*! color: black; */
	overflow: hidden;
	text-align: center;
	background-color: none;
	flex-direction: row;
	align-items: last baseline;
	align-content: center;
	justify-content: start;
	flex-wrap: wrap;
	transform: translateY(-100%);
	width: 7ß%;
	padding-left: 2rem;
}

.navigation .navigation-item:hover {
	color:#ff8a00 !important;
}
.navigation .navigation-item:hover a {
	/*! color:#1a1000 !important; */ 
}
.navigation-item{
	display:inline-block;
	/*! padding-left: 1.5em; */
	/*! padding-right: 1.5em; */
	cursor: pointer;
	width: 100px;
}

.navigation-text{
	display: block;
	padding: .4em 1em;
	z-index: 0;
	position:relative;
}

.navigation-background{
	display: block;
	background-color: #ff8a00;
	position:absolute;
	z-index: -1;
	top: 0px;
	bottom: 0px;
	left: 50%;
	right: 50%;
	opacity: 0;

	transition: all 0.1s ease-in-out;
	-moz-transition: all 0.1s ease-in-out;
	-web-kit-transition: all 0.1s ease-in-out;
	border-radius: 10px;
}

.navigation-background::after{
	display: none;
	position: absolute;
	z-index: -0;
	left: 99%;
	content: "";
	top: 0;
	bottom: 0;
	background-image: url("images/flag.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: left center;
	opacity: 0;
}

.navigation-background::before{
	display: none;
	position: absolute;
	z-index: 0;
	right: 99%;
	content: "";
	top: 0;
	bottom: 0;
	background-image: url("images/flagLeft.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: right center;
	opacity: 0;
}


.navigation-item:hover .navigation-background{
	left: 0px;
	right: 0px;
	opacity: 1;
	background-color: #ffffff80;
}

.navigation-item:hover .navigation-background::after, .navigation-item:hover .navigation-background::before{
	opacity: 1;

	transition: all 0.1s ease-in-out;
	-moz-transition: all 0.1s ease-in-out;
	-web-kit-transition: all 0.1s ease-in-out;
}

.wide-header{
	display: inline-block;
	position:relative;
	font-size: 2em;
	padding-top: 2rem;
	padding-bottom: 2rem;
	padding-right: 2rem;
	margin-top: 2vw;
	margin-left: 15vw;
	margin-right: 15vw;
	font-weight: 400;
	width: auto;
	color:#1A1000;
}

.wide-header::before{
	display: block;
	position: absolute;
	z-index: -1;
	left: -15vw;
	content: " ";
	top: 0;
	bottom: 0;
	right: 0;
	background-color: #F4904C;
}

.wide-header::after{
	display: block;
	position: absolute;
	z-index: -1;
	right: -20vw;
	left: 99.9%;
	content: " ";
	top: 0;
	bottom: 0;
	/*! background-image: url("images/flag.png"); */
	background-size: contain;
	background-repeat: no-repeat;
	background-position: left center;
	width: 40px;
	background-color: #F4904C;
	border-radius: 100px;
	transform: translateX(-20px);
}

.wide-header-text{
	font-size: 1em;
	padding: 3vw 15vw 0vw 15vw;
	font-weight: 200;
	color:black;
}

.wide-timeline {
	display: block;
	font-size: 1em;
	padding: 3vw 15vw 0vw 15vw;
	font-weight: 200;
	color:#5d2b39;
}

.timeline-normal {
  display: block !important;
}

.timeline-mobile {
  display: none !important;
}


.timeline-item {
	display: block;
	padding-top: .5vw;
	padding-bottom: .5vw;
	border-top: 1px solid;
	width: 100%;
}

.timeline-image {
	background-position: center;
	box-sizing: border-box;
	background-size: cover;
	height: 6vw;
	width: 5vw;
	
}

.timeline-logo {
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	height: 5vw;
	width: 5vw;
	min-width: 5vw;
	vertical-align: top;
	background-image: url(/assets/company/hdm/icon.jpg);
	background-position: top;
}

.timeline-table {
	border: 0;
	width: 100%;
	height: 5vw;
}

.timeline-text{
	width: 30%;
	padding-left: 2vw;
	vertical-align: top;
}

.timeline-title-text {
	width: 20%;
	vertical-align: top;
}

.timeline-text-wrapper {
	display: block;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	vertical-align: top;
	padding-left: 1vw;
	padding-right: 1vw;
}

nobreak {
	display: inline-block;
}

.timeline-item-last {
	border-bottom: 1px solid;
}

.game > block {
	background-color: #5d2b39;
}

.speech > block {
	background-color: #5959FF;
}

.work > block {
	background-color: grey;
}

.timeline-item:hover > block{
	opacity: 1;
}

.timeline-item > block > strong {
	font-weight: 700;
}

.timeline-item > block > a, .timeline-item > block > a:link, .timeline-item > block > a:visited {
	position: absolute;
	width: 100%;
	left: 0px;
	bottom: 8px;
	margin-top: 12px;
	padding: 4px;
	display: block;
	text-decoration: none;
	color: silver;
}

.timeline-item > block > a:hover {
	color: black;
}

.wide-footer .wide-header, .wide-footer .wide-text{
	border: 0;
	color: #1a1000;
}

.wide-text, .wide-blog{
	display: block;
	font-size: 1em;
	padding: 3vw 15vw 0vw 15vw;
	font-weight: 200;
	color:#5d2b39;
}

.wide-blog ol {
	margin-left: 2vw;
	margin-top: 8px;
	margin-bottom: 8px;
}
.wide-blog li {
	margin-left: 2vw;
	margin-top: 8px;
	margin-bottom: 8px;
}

.wide-blog table {
	margin: 0 auto;
}
.wide-blog td, .wide-blog th {
	padding: 8px;
}

.wide-blog td {
	text-align: right;
}

.wide-blog p {
	text-align: justify;
}

code {
	font-family: 'Source Code Pro', monospace;
}

.wide-code {
	display: block;
	width: 100%;
	height: 30vw;
	font-size: 1em;
	padding: 3vw 15vw 0vw 15vw;
	color:#5d2b39;
	font-family: 'Source Code Pro', monospace;
}

.wide-youtube-video {
	display: block;
	font-size: 1em;
	height: 47vw;
	width: 100%;
	padding: 3vw 0vw 0vw 0vw;
	font-weight: 200;
	color:#5d2b39;
}

.grid{
	display: flex;
	margin: 2vw;
	margin-left: 15vw;
	margin-right: 15vw;
	overflow: auto;
	flex-direction: row;
	flex-wrap: wrap;
}

.grid-item{
	display: flex;
	box-sizing: border-box;
	position:relative;
	background-color: #ff8a00;
	margin: .25vw;
	float: left;
	cursor: pointer;
	overflow: hidden;
	border-radius: 8px;
	border: 0px solid #ff8a00;
	aspect-ratio: 0.8;
	width: 33%;
	flex-grow: 1;
	flex-basis: 30%;
	min-width: 200px;
	transition: border 0.1s;
	flex-direction: column;
	text-decoration: none;
}

.grid-item:hover {
	border: 8px solid #ff8a00;
	font-weight: 700;
}

.grid-image{
	display: block;
	background-size: cover;
	background-position: 50% 50%;
	border-radius: 0px;
	background-repeat: no-repeat;
	flex-grow: 1;
	/*! aspect-ratio: 0.93; */
	transition: border-radius 0.1s;
	flex-basis: 100%;
}

.grid-image:hover{
	transition-delay: 0s;
	-moz-transition-delay: 0s;
	-web-kit-transition-delay: 0s;
}

.grid-item:hover > .grid-image {
	border-radius: 8px;
}

.grid-item > projectName{
	display: flex;
	font-size: 1.2rem;
	font-weight: 400;
	background-color: #f4904c;
	color: #1a1000;
	padding: .6em;
	padding-left: .6em;
	/*! opacity: 0; */

	transition: all 0.1s ease-in-out;
	-moz-transition: all 0.1s ease-in-out;
	-web-kit-transition: all 0.1s ease-in-out;

	transition-delay: 0s;
	-moz-transition-delay: 0s;
	-web-kit-transition-delay: 0s;
	height: 80px;
}

.grid-item:hover > projectName {
	opacity: 1;
	padding-left: 0.6em;
	background-color: ;
	transition-delay: 0.1s;
	-moz-transition-delay: 0.1s;
	-web-kit-transition-delay: 0.1s;
}

.wide-footer{
	display: block;
	background-color: #f4904c;
	color: #1a1000;
	padding-bottom: 2em;
	margin-top: 3em;
}

.social, .social:link, .social:visited{
	display: inline-block;
	background-position: 0% 50%;
	background-size: contain;
	background-repeat: no-repeat;
	color: #e9c7cf;
	text-decoration: none;
	padding: 1vw;
	font-weight: 400;
	border-radius: 4px;
	padding-left: 4vw;
	padding-right: 5vw;
    margin-bottom: 1vw;
}

.cookies, .cookies:link, .cookies:visited{
	display: inline-block;
	background-position: 0% 50%;
	background-size: contain;
	background-repeat: no-repeat;
	color: #e9c7cf;
	text-decoration: none;
	padding: 1vw;
	font-weight: 400;
	border-radius: 4px;
	padding: 2vw;
    margin-bottom: 1vw;
    vertical-align: middle;
}

.wide-footer a:link,.wide-footer  a:visited,.wide-footer  a {
	color: #edcbd4;
}

a:link,a:visited,a {
	color: #1a1000;
}

.navigation a {
	text-decoration: none;
	padding: 1rem;
}

a:hover {
	color: #5d2b39;
	/*! background-color: #ff8a00; */
	text-decoration: none;
	border-radius: 10px;
}

strong {
	font-weight: 400;
}

.wide-header strong {
	font-size: 0.8em;
}
.social:hover {
	color: #edcbd4;
	text-align: center;
	background-color: #c68a4f;
	transition: background-color 0.1s ease-in-out;
	-moz-transition: background-color 0.1s ease-in-out;
	-web-kit-transition: background-color 0.1s ease-in-out;
}

.wide-social{
	font-size: 1em;
	padding: 3vw 15vw 0vw 15vw;
	font-weight: 200;
}
.blog-link {
	text-decoration: none;
	display: block;
	padding: 16px;
}
.blog-link:hover {
	opacity: 0.8;
	cursor: pointer;
}

.wide-image-side-scroll {
	overflow: hidden;
	overflow-x: scroll;
	height: 25vw;
	margin-left: 15vw;
	margin-right: 15vw;
}

.wide-image-side-scroll  .image-scroll {
	display: inline-block;
	height: 25vw;
	width: 25vw;
	margin-right: 1vw;
	background-position: center;
	background-size: cover;
	background-repeat: none;
	background-color: black;
}

.skill {
	display: inline-block;
	text-align: right;
	width: 20vw;
	box-sizing: border-box;
	padding: 1vw;
	color: #5d2b39;
	margin-bottom: 1px;
	font-weight: 400;
}

.rating-block {
	display: inline-block;
	box-sizing: border-box;
	color: #ff8a00;
}

.rating-text {
	display: inline-block;
	padding-right: 1vw;
}

rating {
	display: inline;
	padding-right: 1em;
}

[stars="1"]::after {
	content: "\2605\00a0\2606\00a0\2606\00a0\2606\00a0\2606";
	padding: 0 0.5em;
}

[stars="2"]::after {
	content: "\2605\00a0\2605\00a0\2606\00a0\2606\00a0\2606";
	padding: 0 0.5em;
}

[stars="3"]::after {
	content: "\2605\00a0\2605\00a0\2605\00a0\2606\00a0\2606";
	padding: 0 0.5em;
}

[stars="4"]::after {
	content: "\2605\00a0\2605\00a0\2605\00a0\2605\00a0\2606";
	padding: 0 0.5em;
}

[stars="5"]::after {
	content: "\2605\00a0\2605\00a0\2605\00a0\2605\00a0\2605";
	padding: 0 0.5em;
}


#cookies-box {
	position: fixed;
	left: 0px;
	right: 0px;
	bottom: -350px;
	height: 250px;
	transition: bottom 0.3s ease-in-out;
	-moz-transition: bottom 0.3s ease-in-out;
	-web-kit-transition: bottom 0.3s ease-in-out;
}

#cookies-child {
	margin-top: 0 !important;
}

@media (max-width: 1000px) {

	.wide-timeline, .wide-header, .wide-header-text, .grid {
		margin-left: 1rem;
		margin-right: 1rem;
	}


}

@media (max-width: 600px) {
.navigation {
			transform: initial;
			width: 100%;
			background-color: #f4904c;
			justify-content: center;
			padding: 0.5rem;
	}
}