@charset "utf-8";

/* Import van de andere stijlbladen. */
@import url("https://meyerweb.com/eric/tools/css/reset/reset.css");
@import "typografy.css";

/* Import van fonts. */
@import url("https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css");

/* --------------------------------------------------
	Stijlblad voor de niet typografische stijlen.
-------------------------------------------------- */

/* Algemeen. */
html,
body {
	height: 100%;
	min-width: 100%;
}

a.back-to-top {
	display: none;
	height: 3.8em;
	width: 3.8em;	
	text-indent: -625em;
	position: fixed;
	z-index: 999;
	right: 1.3em;
	bottom: 1.3em;
	background: #3DCE97 url("../images/up-arrow.png") no-repeat center 43%;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	border-radius: 30px;
}

a:hover.back-to-top {
	background-color: #22846C;
}

.center {
	margin: 0 auto;
}

.divider {
	display: inline-block;
	margin: 1.9em 0;
	width: 6em;
	height: 2px;
	background-color: #3DCE97;
}

a.reverse {
	unicode-bidi: bidi-override;
	direction: rtl;
}

/* Portfolio. */
div#home {
	overflow: hidden;
	background-image: url("../images/stars.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-attachment: fixed;
	-webkit-background-size: cover;
  	-moz-background-size: cover;
  	-o-background-size: cover;	
	background-size: cover;
	box-shadow: 0 0 0 2038px rgba(0, 0, 0, 0.4) inset;
	height: 100vh;
	width: 100%;
	display: table;
}

div.home-wrapper,
section#about,
section#skills,
section#portfolio,
div#contact div.section-content-wrapper,
footer.page-footer {
	padding: 1em;
}

div.home-wrapper {
	display: table-cell;
	width: 100%;
	margin: 0 auto;
	vertical-align: middle;	
}

div#home h1,
div#home h2 {
	margin: 3.5em 0;	
}

div#home h1::before {
	content: "{ ";
}

div#home h1::after {
	content: " }";
}

div#home h2::before {
	content: "< ";
}

div#home h2::after {
	content: " >";
}

div.scroll-desktop {
	display: none;
}

div.scroll-mobile {
	display: block;
	position: absolute;
	right: 0;
	bottom: 1em;	
	left: 0;	
}

div.scroll-desktop span,
div.scroll-mobile span {
	display: inline-block;
	width: 100%;
	clear: both;
}

nav.page-navigation {
	background-color: #C1C1C1;
	border-bottom: 2px solid #CCC;
}

nav.page-navigation ul li {
	display: inline-block;
	padding: 0.8em;	
}

nav.page-navigation ul li a {
	transition: all 0.8s ease;
}

nav.page-navigation ul li a:hover,
nav.page-navigation ul li a:active {
	border-bottom: 2px solid #3DCE97;
	transition: all 0.8s ease;
}

div.section-content-wrapper p,
div.section-content-wrapper a,
div.contact-texts ul {
	padding: 1em 0;
}

div.section-content-wrapper h3 {
	padding: 3em 0 1em;
}

section,
div#contact {
	position: relative;
	overflow: hidden;
}

section h2,
div#contact h2 {	
	padding: 3em 0;
}

section#about img,
section#portfolio img {
    height: auto !important;
    max-width: 100%;
    width: auto;
    margin: 0 1em;
}

div.picture-about img {
	border-radius: 5px;
}

section::before,
section::after {
	position: absolute;
	content: "";
	pointer-events: none;
}

section.triangles::before,
section.triangles::after {
	left: 50%;	
	height: 80px;
	width: 80px;
	-webkit-transform: translateX(-50%) rotate(45deg);
	transform: translateX(-50%) rotate(45deg);
}

section.triangles::after {
	bottom: -40px;
	z-index: 10;
	background: inherit;
}

section#skills,
div#contact {
	background-color: #F6F6F6;
}

div.grid {
	display: inline-block;	
	width: 100%;
	margin: 0 auto;
}

div.skill {
	position: relative;
	min-height: 140px;
	height: 100%;
	max-width: 140px;	
	margin: 0 auto 2em;
	-webkit-transition: all .3s ease-out; 
   	-moz-transition: all .3s ease-out; 
   	-o-transition: all .3s ease-out; 
   	transition: all .3s ease-out;
}

img.skillZoom {
	-webkit-transition: all .3s ease-out; 
   	-moz-transition: all .3s ease-out; 
   	-o-transition: all .3s ease-out; 
   	transition: all .3s ease-out;
}

img.skillZoom, img.skillBase {
	position: absolute;
	max-height: 100%;
	min-width: 100%;
	max-width: 100%;
}

span.skillText {
	position: absolute;
	width: 100%;
	top: 42%;
}

div.skill:hover img.skillZoom {
	-moz-transform: scale(1.07);
   	-webkit-transform: scale(1.07);
   	-o-transform: scale(1.07);
  	transform: scale(1.07);
   	-ms-transform: scale(1.07);
	filter: progid:DXImageTransform.Microsoft.Matrix(sizingMethod="auto expand", M11=2, M12=-0, M21=0, M22=2);
}

.clearfix {
	margin-bottom: 2em;
}

section#portfolio img {
    max-width: 90%;
    box-shadow: 1px 10px 25px 0 rgba(0, 0, 0, .65);
}

section#jms-slideshow {
	padding: 2em 0 4em;
}

div.project-texts {
	clear: both;
}

a.view-project-btn:link,
a.view-project-btn:visited {
	display: inline-block;
    background: #3DCE97;
    cursor: pointer;
    padding: 0.6em 1em;
    margin: 1em;
    box-shadow: 0 4px 17px 0 rgba(0, 0, 0, .6);
}

a.view-project-btn:hover,
a.view-project-btn:active {
	background: #22846C;
	-webkit-transition: all 200ms ease-in-out;
    transition: all 200ms ease-in-out;
}

div#map {
  	height: 400px;
  	width: 100%;
}

div.contact-texts i {
	background: #3DCE97;
    height: 40px;
    width: 40px;
    padding-top: 0.6em;
    border-radius: 5px;
    margin: 0 0.6em 0.6em 0;
}

div.contact-form input,
div.contact-form textarea,
div.contact-form button {
	padding: 0.3em;
	border: 1px solid #3DCE97;
	margin: 0.3em 0;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

div.contact-form input,
div.contact-form textarea {
	min-width: 280px;
	max-width: 400px;
	width: 100%;
}

div.contact-form textarea {
	height: 150px;
	margin-bottom: 1em;
}

div.contact-submit-wrapper {
	height: 4em;
	margin-bottom: 1em;
}

div.contact-form button {
	background: #3DCE97;
	width: 250px;
	cursor: pointer;
	box-shadow: 2px 3px 0 #22846C;
	-moz-transition: all .1s ease;
	-webkit-transition: all .1s ease;	
	-ms-transition: all .1s ease;
	-o-transition: all .1s ease;
	transition: all .1s ease;
}

div.contact-form button:active {
	box-shadow: 1px 2px 0 #22846C;
	-webkit-transform: translate(0, 1px);
    transform: translate(0, 1px);
	-moz-transition: all .1s ease;
	-webkit-transition: all .1s ease;	
	-ms-transition: all .1s ease;
	-o-transition: all .1s ease;
	transition: all .1s ease;
}

div.social {
	clear: both;
}

div.social ul li {
	display: inline-block;
	padding: 0.6em;	
}

footer.page-footer {
	background: #C1C1C1;
}


/* Curriculum Vitae. */
div#personal,
div#skills,
div#languages,
div#computer-knowledge,
div#other {
	background: #F6F6F6;
}

div#personal,
section#experience,
section#education,
div#skills,
div#languages,
div#computer-knowledge,
div#other,
div#download {
	padding: 1em;
}

div#title {
	margin: 3.5em 0;
}

div#name p::before {
	content: "{ ";
}

div#name p::after {
	content: " }";
}

div#name p,
h1.section-header {	
	padding: 3em 0;
}

ul.personal-info {
	margin-left: 3.5em;
}

ul.personal-info i {
	background: #3DCE97;
    height: 40px;
    width: 40px;
    padding-top: 0.6em;
    border-radius: 5px;
    margin: 0 0.6em 0.6em 0;
}

section#experience,
section#education {
	overflow: hidden;
	background-image: url("../images/stars.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-attachment: fixed;
	-webkit-background-size: cover;
  	-moz-background-size: cover;
  	-o-background-size: cover;	
	background-size: cover;
	box-shadow: 0 0 0 2038px rgba(0, 0, 0, 0.4) inset;
	height: 100vh;
	width: 100%;
	margin: 0 auto;
	display: table;
}

h2.section-header {
	display: inline-block;
	padding: 0.5em;
	margin: 3em 0;
	background: #000;
}

div#skills img,
div#computer-knowledge img {
	height: 50px;
	width: 50px;
	margin: 1em;
}

div#skills ul li {
	display: inline-block;
}

div#languages td {
	width: 150px;
	height: 30px;
}

div#languages td i {
	padding: 0 0.5em;
}

div#computer-knowledge td {
	width: 100px;
	height: 60px;
	vertical-align: middle;
}

div#download {
	padding: 2em 1em;
	background: #3DCE97;
	margin: 0 auto;
	text-align: center;
	overflow: hidden;
}

div#download a {
	display: inline-block;
}

div#download img {
	max-width: 100%;
	margin: 1.7em auto;
	border-radius: 5px;
	box-shadow: 0 3px 6px rgba(0,0,0,0.9);
}

div.page-wrapper.full-height {
	overflow: hidden;
	min-height: 100%;
    height: auto !important;
    /*height: 100%;*/
	height: 100vh;
}












/*div#title {
	-webkit-transform-origin: left top 0;
    transform-origin: left top 0;
	-webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    width: 1100px;
    position: relative;
    top: 900px;
    left: 50px;
    display: inline-block;
}*/



/* -------------------------
    Resposieve stijlen.
--------------------------*/
@media only screen and (min-width: 480px) {
	div.grid {
		width: 50%;
		float: left;
	}
}

@media only screen and (max-width: 768px) {
	h1,	h2 {
		font-size: 1.2em;
	}

	div#home h1::before,
	div#home h1::after {
		font-size: 1.5em;
	}

	div#title p {
		font-size: 2em;
		text-align: center;
	}

	div#name p,
	h1.section-header,
	h2.section-header {
		font-size: 1.2em;
		text-align: center;
	}

	div#name p::before,
	div#name p::after {
		font-size: 1.5em;
	}	
}

@media only screen and (min-width: 960px) {
	div.scroll-mobile {
		display: none;
	}

	div.scroll-desktop {
		display: block;
	}

	div#home span.scroll-btn {
		display: block;	
		position: absolute;				
		left: 0;
		bottom: 1em;
		right: 0;
	}

	div.section-content-wrapper {
		max-width: 960px;
		margin: 0 auto;
	}

	div.section-content-wrapper p:first-child {
		padding-top: 0;
	}

	div.picture-about {
		width: 25%;
		float: left;
	}

	div.about-me {
		width: 75%;
		float: left;
	}

	div.grid {
		width: 33%;
	}

	.step a,
	div.project-texts {
		width: 48%;
		float: left;
	}

	div.contact-texts,
	div.contact-form {
		width: 50%;
		float: left;
	}

	div#experience-wrapper,
	div#education-wrapper {
		max-width: 960px;
		margin: 0 auto;
	}

	/* Stijlen voor de jmpress.js slideshow. */
	section.jms-slideshow {
		position: relative;
		height: 540px;
		width: 100%;
		max-width: 1400px;
		min-width: 600px;
		margin: 1.3em auto;	
	}

	.jms-wrapper {
		height: 540px;
		width: auto;
		min-width: 560px;	
		background-color: #FAFAFA;
		box-shadow: 0 3px 6px rgba(0, 0, 0, .5);
		-webkit-background-clip: padding;
		-moz-background-clip: padding;     
		background-clip: padding-box;
		border: 0.6em solid #FAFAFA;
		border: 0.6em solid rgba(61, 206, 151, 0.7);
		outline: none;
		-webkit-transition: background-color 1s linear;
		-moz-transition: background-color 1s linear;
		-o-transition: background-color 1s linear;
		-ms-transition: background-color 1s linear;
		transition: background-color 1s linear;
	}

	.color-slideshow {
		background-color: #F6F6F6;
		background-color: rgba(232, 229, 229, 1);
	}

	.step {
		display: block;
		height: 520px;
		width: 900px;	
		-webkit-transition: opacity 1s;
		-moz-transition: opacity 1s;
		-ms-transition: opacity 1s;
		-o-transition: opacity 1s;
		transition: opacity 1s;
	}

	.step:not(.active) {
		opacity: 0;
		filter: alpha(opacity=0); /* Voor Internet Explorer. */
	    -ms-filter: "progid: DXImageTransform.Microsoft.Alpha(opacity=0)"; /* Voor IE8. */
	}

	.jms-content {
		position: relative;
		margin: 3em 23.1em 0em 1.3em;
		clear: both;
	}

	a.jms-link {
		text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
		clear: both;
		-webkit-transition: all 4s ease-in-out 1s;
		-moz-transition: all 4s ease-in-out 1s;
		-ms-transition: all 4s ease-in-out 1s;
		-o-transition: all 4s ease-in-out 1s;
		transition: all 4s ease-in-out 1s;
	}

	.step:not(.active) a.jms-link {
		opacity: 0;
		margin-top: 5em;
	}

	.step a.project-image {
		position: absolute;
		top: 1.9em;
		right: 0em;		
	}

	.jms-dots {		
		position: absolute;
		width: 100%;
		bottom: 6.3em;		
		left: 0em;		
		text-align: center;
		z-index: 2000;
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		-o-user-select: none;
		user-select: none;
	}

	.jms-dots span {
		display: inline-block;
		position: relative;
		width: 12px;
		height: 12px;
		border-radius: 50%;		
		margin: 0.2em;
		background: #777;
		cursor: pointer;
		box-shadow: 
			1px 1px 1px rgba(0,0,0,0.1) inset, 
			1px 1px 1px rgba(255,255,255,0.3);
	}

	.jms-dots span.jms-dots-current:after {
		content: "";
		width: 0.5em;
		height: 0.5em;
		position: absolute;
		top: 2px;
		left: 2px;
		border-radius: 50%;
		background: #FAFAFA; /* Oudere browsers */
		background: -moz-linear-gradient(top, #FAFAFA 0%, #F6F6F6 47%, #EDEDED 100%); /* FF3.6+ */
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(47%,#F6F6F6), color-stop(100%,#EDEDED)); /* Chrome, Safari4+ */
		background: -webkit-linear-gradient(top, #FAFAFA 0%,#F6F6F6 47%,#EDEDED 100%); /* Chrome10+, Safari5.1+ */
		background: -o-linear-gradient(top, #FAFAFA 0%,#F6F6F6 47%,#EDEDED 100%); /* Opera 11.10+ */
		background: -ms-linear-gradient(top, #FAFAFA 0%,#F6F6F6 47%,#EDEDED 100%); /* IE10+ */
		background: linear-gradient(top, #FAFAFA 0%,#F6F6F6 47%,#EDEDED 100%); /* W3C */
		filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#FFFFFF', endColorstr='#EDEDED',GradientType=0 ); /* IE6-9 */
	}

	.jms-arrows {
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		-o-user-select: none;
		user-select: none;
	}

	.jms-arrows span {
		position: absolute;
		top: 50%;		
		height: 5em;
		width: 1.9em;
		border: 1px solid #3DCE97;
		border-radius: 3px;
		margin-top: -2.5em;
		cursor: pointer;
		z-index: 2000;
		box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.1);		
	}

	.jms-arrows span.jms-arrows-prev {
		background: #FAFAFA url(../images/arrow_left.png) no-repeat 50% 50%;
		left: -0.6em;
	}

	.jms-arrows span.jms-arrows-next {
		background: #FAFAFA url(../images/arrow_right.png) no-repeat 50% 50%;
		right: -0.6em;
	}

	/* Indien jmpress.js slideshow niet ondersteund wordt. */
	.jms-wrapper.not-supported {
		background-color: #3DCE97;
		background-color: rgba(232, 229, 229, 1);
	}

	.jms-wrapper.not-supported:after {
		content: "De slideshow functionaliteit wordt op uw apparaat niet ondersteund. / The slideshow functionality is not supported on your device.";
		padding: 0em 0em 1.9em 0em;
		text-align: center;
		display: block;
	}

	.jms-wrapper.not-supported .step {
		display: none;
		position: relative;
		opacity: 1;
		filter: alpha(opacity=99); /* Voor Internet Explorer. */ 
	    -ms-filter: "progid: DXImageTransform.Microsoft.Alpha(opacity=99)"; /* Voor IE8. */
		margin: 1.3em auto;
	}

	.jms-wrapper.not-supported .step:first-of-type {
		display: block;
	}

	.jms-wrapper.not-supported .step:not(.active) a.jms-link {
		opacity: 1;
		margin-top: 2.5em;
	}
	/* Einde stijlen voor de jmpress.js slideshow. */
}