
/*
* Skeleton V1.2
* Copyright 2011, Dave Gamache
* www.getskeleton.com
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
* 6/20/2012
*/


/* Table of Content
==================================================
	#Reset & Basics
	#Basic Styles
	#Site Styles
	#Typography
	#Links
	#Lists
	#Images
	#Buttons
	#Forms
	#Misc */


/* #Reset & Basics (Inspired by E. Meyers)
================================================== */
	html, body {
		/*font-family: "Open Sans", "Georgia", "Times New Roman", serif;*/
		font-family: "Georgia", "Times New Roman", serif;
		font-size: 13px;
		line-height: 1.4em;
        scroll-behavior: smooth;
	}
	html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6,
	p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em,
	img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center,
	dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption,
	tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed,
	figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary,
	time, mark, audio, video {
		margin: 0;
		padding: 0;
		border: 0;
		vertical-align: baseline; }
	article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
		display: block; }
	body {
		line-height: 1.3; }
	ol, ul {
		list-style: none; }
	blockquote, q {
		quotes: none; }
	blockquote:before, blockquote:after,
	q:before, q:after {
		content: '';
		content: none; }
	table {
		border-collapse: collapse;
		border-spacing: 0; }



/* #Defining Global Colors
================================================== */
    :root {
        --accent-color: #0051d4;
		--sidebar-accent-color: #5e9cff;
    }


/* #Basic Styles
================================================== */
	body {
		background: #FAF9F6;
		/*font: 14px/21px "Muli", "Open Sans", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;*/
		font: 14px/20px "Muli", "Open Sans", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
		font-weight: 300;
		color: #444;
		-webkit-font-smoothing: antialiased; /* Fix for webkit rendering */
		-webkit-text-size-adjust: 100%;
 }


/* #Typography
================================================== */
	h1, h2, h3 {
		color: black;
		font-family: "Georgia", "Times New Roman", serif;
		font-weight: 300; }
	h4, h5, h6 {
		color: black;
		font-family: "Open Sans", "Georgia", "Times New Roman", serif;
		font-weight: 300; }
	h4, h5, h6 {
		font-weight: 300;
		font-size: 13px;
	}
	h2 {
		/* color: #053fff;
		color: #053fff;*/
        color: var(--accent-color);
        color: var(--accent-color);
		text-shadow: 0 1px 2px #e7e7e9;
		font-size: 16px;
	}
	h2 a {
		text-shadow: none;
	}
	h5 {
		color: #252525;
	}
	h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { font-weight: inherit; }
	h1 { font-size: 38px; line-height: 50px; margin-bottom: 14px;}
	h2 { font-size: 26px; line-height: 40px; margin-bottom: 10px; }
	h3 { font-size: 26px; line-height: 34px; margin-bottom: 8px; }
	h4 { font-size: 18px; line-height: 30px; margin-bottom: 4px; }
	h5 { font-size: 15px; line-height: 24px; }
	h6 { font-size: 14px; line-height: 21px; }
	.subheader {
		font-size: 17px; line-height: 24px; color: #252525;
		padding-left: 0em;
	}

	p { margin: 0 0 20px 0; }
	p img { margin: 0; }
	p.lead { font-size: 21px; line-height: 27px; color: #777;  }

	em { font-style: italic; }
	strong { font-weight: bold; color: #333; }
	small { font-size: 80%; }

/*	Blockquotes  */
	blockquote, blockquote p { font-size: 17px; line-height: 24px; color: #777; font-style: italic; }
	blockquote { margin: 0 0 20px; padding: 9px 20px 0 19px; border-left: 1px solid #ddd; }
	blockquote cite { display: block; font-size: 12px; color: #555; }
	blockquote cite:before { content: "\2014 \0020"; }
	blockquote cite a, blockquote cite a:visited, blockquote cite a:visited { color: #555; }

	hr { border: dotted #dadada; border-width: 1px 0 0; clear: both; margin: 10px 0 30px; height: 0; }


/* #Links
================================================== */
	a, a:visited { text-decoration: underline; outline: 0; }
	a:hover, a:focus {  }
	p a, p a:visited { line-height: inherit; }


/* #Lists
================================================== */
	ul, ol { margin-bottom: 20px; }
	ul { list-style: none outside; }
	ol { list-style: decimal; }
	ol, ul.square, ul.circle, ul.disc { margin-left: 30px; }
	ul.square { list-style: square outside; }
	ul.circle { list-style: circle outside; }
	ul.disc { list-style: disc outside; }
	ul ul, ul ol,
	ol ol, ol ul { margin: 4px 0 5px 30px; font-size: 95%;  }
	ul ul li, ul ol li,
	ol ol li, ol ul li { margin-bottom: 6px; }
	li { /*line-height: 1.3em;*/ margin-bottom: 12px; }
	ul.large li { line-height: 1.3em; }
	li p { line-height: 1.3em; }

/* #Course Tables
================================================== */
    #course-table{
        border-collapse: collapse;
        width: 100%;
        margin-left: 4px;
    }

    #course-table tr {
        border: 0px solid #dddddd;
		padding-top: 20px;
    }

    #course-table td{
        text-align: left;
        padding-left: 5px;
		padding-right: 5px;
        width: 25%;
    }


/* #Course Tables
================================================== */
    ul.bullet-list {
        list-style: unset;
        margin-left: 2em;
    }

    ul.bullet-list li {
        padding: 0px 0px 0px 0px;
    }


/* #Images
================================================== */

	img.scale-with-grid {
		max-width: 100%;
		height: auto; }
	

/* Custom Styles
================================================== */

	#cooper {
		border: 3px solid white;
		border-radius: 8px; 
	}

	#cooper:hover{
		border: 3px solid var(--accent-color);
		border-radius: 5px; 
		box-shadow:1 1px rgb(0, 0, 0);
		transition: transform 0.2s ease;
		transform: translateY(-4px);
	}
	
	.sm-link {
		all: unset;
		display: inline-block;
		cursor: pointer;
	}

	.sm-link:hover {
		background-color: transparent !important;
		box-shadow: none !important;
		color: inherit !important;
	}

	.sm-link .sm-icon {
		all: unset;
		display: inline-block;
		cursor: pointer;
		transition: transform 0.2s ease;
	}

	.sm-link:hover .sm-icon {
		transform: translateY(-4px);
	}

	.raise-on-hover:hover{
		transition: transform 0.2s ease;
		transform: translateY(-3px);
	}


.steam {
	all: unset;
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
	justify-content: flex-start;
	margin-top: 1em;
}


#steam-account {
	margin-top: 1em;
	display: flex;
}

.steam-profile {
	all: unset;
	display: flex;
	align-items: center;
	gap: 1em;
	background-color: #171a21 !important;
	padding: 1em;
	border-radius: 8px;
	border: 1px solid #2a475e !important;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
	width: 90%;
	margin-bottom: 16px;
	margin-top: 3px;
	max-width: 460px;
}

.steam-profile:hover {
	transition: transform 0.2s ease;
	transform: translateY(-3px);
}

.steam-profile img {
	all: unset;
	width: 80px;
	height: 80px;
	border-radius: 50%;
}

.steam-profile a {
	color: #66c0f4 !important;
}

.steam-profile a:hover {
	color: #202020 !important;
	text-decoration: underline !important;
}

.steam-profile p a {
	margin: inherit;
	padding: inherit;
	color: #929292 !important;
}

.steam-profile-info * {
	margin: 0.2em 0;
}

.game-card {
	all: unset;
	color: #c7d5e0 !important;
	display: flex;
	align-items: center;
	gap: 0.8em;
	padding: 0.5em 1em;
	margin-bottom: 10px;
	background-color: #171a21 !important;
	border: 1px solid #2a475e !important;
	border-radius: 6px;
	box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.2);
	width: 80%;
	color: #c7d5e0 !important;
	max-width: 460px;
}

.game-card:hover {
	transition: transform 0.2s ease;
	transform: translateY(-3px);
}

.game-card * {
	color: #c7d5e0 !important;
}




/* #Buttons
================================================== */

	.button,
	button,
	input[type="submit"],
	input[type="reset"],
	input[type="button"] {
		background: #eee; /* Old browsers */
		background: #eee -moz-linear-gradient(top, rgba(255,255,255,.2) 0%, rgba(0,0,0,.2) 100%); /* FF3.6+ */
		background: #eee -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,.2)), color-stop(100%,rgba(0,0,0,.2))); /* Chrome,Safari4+ */
		background: #eee -webkit-linear-gradient(top, rgba(255,255,255,.2) 0%,rgba(0,0,0,.2) 100%); /* Chrome10+,Safari5.1+ */
		background: #eee -o-linear-gradient(top, rgba(255,255,255,.2) 0%,rgba(0,0,0,.2) 100%); /* Opera11.10+ */
		background: #eee -ms-linear-gradient(top, rgba(255,255,255,.2) 0%,rgba(0,0,0,.2) 100%); /* IE10+ */
		background: #eee linear-gradient(top, rgba(255,255,255,.2) 0%,rgba(0,0,0,.2) 100%); /* W3C */
	  border: 1px solid #aaa;
	  border-top: 1px solid #ccc;
	  border-left: 1px solid #ccc;
	  -moz-border-radius: 3px;
	  -webkit-border-radius: 3px;
	  border-radius: 3px;
	  color: #444;
	  display: inline-block;
	  font-size: 11px;
	  font-weight: bold;
	  text-decoration: none;
	  text-shadow: 0 1px rgba(255, 255, 255, .75);
	  cursor: pointer;
	  margin-bottom: 20px;
	  line-height: normal;
	  padding: 8px 10px;
	  font-family: "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif; }

	.button:hover,
	button:hover,
	input[type="submit"]:hover,
	input[type="reset"]:hover,
	input[type="button"]:hover {
		color: #222;
		background: #ddd; /* Old browsers */
		background: #ddd -moz-linear-gradient(top, rgba(255,255,255,.3) 0%, rgba(0,0,0,.3) 100%); /* FF3.6+ */
		background: #ddd -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,.3)), color-stop(100%,rgba(0,0,0,.3))); /* Chrome,Safari4+ */
		background: #ddd -webkit-linear-gradient(top, rgba(255,255,255,.3) 0%,rgba(0,0,0,.3) 100%); /* Chrome10+,Safari5.1+ */
		background: #ddd -o-linear-gradient(top, rgba(255,255,255,.3) 0%,rgba(0,0,0,.3) 100%); /* Opera11.10+ */
		background: #ddd -ms-linear-gradient(top, rgba(255,255,255,.3) 0%,rgba(0,0,0,.3) 100%); /* IE10+ */
		background: #ddd linear-gradient(top, rgba(255,255,255,.3) 0%,rgba(0,0,0,.3) 100%); /* W3C */
	  border: 1px solid #888;
	  border-top: 1px solid #aaa;
	  border-left: 1px solid #aaa; }

	.button:active,
	button:active,
	input[type="submit"]:active,
	input[type="reset"]:active,
	input[type="button"]:active {
		border: 1px solid #666;
		background: #ccc; /* Old browsers */
		background: #ccc -moz-linear-gradient(top, rgba(255,255,255,.35) 0%, rgba(10,10,10,.4) 100%); /* FF3.6+ */
		background: #ccc -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,.35)), color-stop(100%,rgba(10,10,10,.4))); /* Chrome,Safari4+ */
		background: #ccc -webkit-linear-gradient(top, rgba(255,255,255,.35) 0%,rgba(10,10,10,.4) 100%); /* Chrome10+,Safari5.1+ */
		background: #ccc -o-linear-gradient(top, rgba(255,255,255,.35) 0%,rgba(10,10,10,.4) 100%); /* Opera11.10+ */
		background: #ccc -ms-linear-gradient(top, rgba(255,255,255,.35) 0%,rgba(10,10,10,.4) 100%); /* IE10+ */
		background: #ccc linear-gradient(top, rgba(255,255,255,.35) 0%,rgba(10,10,10,.4) 100%); /* W3C */ }

	.button.full-width,
	button.full-width,
	input[type="submit"].full-width,
	input[type="reset"].full-width,
	input[type="button"].full-width {
		width: 100%;
		padding-left: 0 !important;
		padding-right: 0 !important;
		text-align: center; }

	/* Fix for odd Mozilla border & padding issues */
	button::-moz-focus-inner,
	input::-moz-focus-inner {
    border: 0;
    padding: 0;
	}


/* #Forms
================================================== */

	form {
		margin-bottom: 20px; }
	fieldset {
		margin-bottom: 20px; }
	input[type="text"],
	input[type="password"],
	input[type="email"],
	textarea,
	select {
		border: 1px solid #ccc;
		padding: 6px 4px;
		outline: none;
		-moz-border-radius: 2px;
		-webkit-border-radius: 2px;
		border-radius: 2px;
		font: 13px "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
		color: #777;
		margin: 0;
		width: 210px;
		max-width: 100%;
		display: block;
		margin-bottom: 20px;
		background: #fff; }
	select {
		padding: 0; }
	input[type="text"]:focus,
	input[type="password"]:focus,
	input[type="email"]:focus,
	textarea:focus {
		border: 1px solid #aaa;
 		color: #444;
 		-moz-box-shadow: 0 0 3px rgba(0,0,0,.2);
		-webkit-box-shadow: 0 0 3px rgba(0,0,0,.2);
		box-shadow:  0 0 3px rgba(0,0,0,.2); }
	textarea {
		min-height: 60px; }
	label,
	legend {
		display: block;
		font-weight: bold;
		font-size: 13px;  }
	select {
		width: 220px; }
	input[type="checkbox"] {
		display: inline; }
	label span,
	legend span {
		font-weight: normal;
		font-size: 13px;
		color: #444; }

/* #Misc
================================================== */
	.remove-bottom { margin-bottom: 0 !important; }
	.half-bottom { margin-bottom: 10px !important; }
	.add-bottom { margin-bottom: 20px !important; }

	h1 {
		margin-top: 40px;
	}
	.myname {
		padding-bottom: 2em;
	}
	.myname .scheme {
		display:none;
	}
	.infos {
		margin-top: 50px;
		font-size: 100%;
		line-height: 1.3em;
		display:none;
	}
	.infos .contact {
		padding-left: 0.6em;
		font-size: 110%;
	}
	.infos p {
		margin-bottom: 1em;
		padding-left: 0.3em;
	}
	/*.column .h3:not(:first-child) {*/
	.column h3 {
		margin-top: 1em;
	}
	.column h3:first-child {
		margin-top: 0.2em;
	}
	.column h4 {
		padding-top: 0.5em;
	}
	.column h4:first-child {
		padding-top: 0;
	}

	h3 .date {
		vertical-align:top;
		color: #888;
		padding-top: 2px;
		font-size: 16px;
		margin-right: 0.3em;
	}
	h3 .date span {
		background-color: #444;
		border-radius: 3px;
		padding: 2px 0.5em;
		padding-right: 0.3em;
		color: #ddd;
		box-shadow: 1px 1px 6px #ddd;
	}
	h3 .date .duration {
		color: #aaa;
		box-shadow: none;
	}
	p {
		color: #333;
	}
	hr {
		margin-top: 3em;
		margin-bottom: 3em;
	}
	a {
		text-decoration: none;
		padding: 1px 0.3em;
		border-radius: 2px;
		color: var(--accent-color);
	}
	a:hover {
		background-color:	rgb(212, 214, 217);
		color: black !important;
		box-shadow: 1px 1px 6px #ddd;
	}
	h2 a {
		color: white;
	}
	a img {
		border: 1px solid #555;
	}
	a:hover img {
		background-color:	rgb(214, 141, 76);
	}
	.right {
		text-align: right;
	}

	.column hr {
		margin: 1em 0 1em 0;
		margin-top: 3.5em;
	}

	.exp-projects {
		background: url('../images/projects.png') left center no-repeat;
		padding-left: 40px;
	}
	.exp-education {
		background: url('../images/education.png') left center no-repeat;
		padding-left: 40px;
	}
	ul li ul {
		list-style-type: square;
	}
	ul li ul li {
		color: #333;
		padding-right: 2em;
	}
	ul li ul li span {
		color: #333;
		padding-left: 0.3em;
	}
	p + ul li ul {
		margin-top: 0;
		padding-top: 0;
		padding-bottom: 0.6em;
	}

	.screenshot {
		border-radius: 5px;
		width: 128px;
		box-shadow: 1px 1px 6px #ddd;
		margin: 1px 2px;
		border: 1px solid #555;
		float: right;
		cursor: zoom-in;
	}
	abbr {
		border: 1px dotted #555;
		border-left-style: none;
		border-top-style: none;
		border-right-style: none;
		cursor: help;
	}
	.screenshot:hover {
		border-color: #bf7b43;
		border: 1px solid #bf7b43;
		box-shadow: 1px 1px 6px #aaa;
		opacity: 0.7;
	}
	.taglist {
		clear: both;
		/*background-image: url('../images/tag.png');*/
		background-repeat: no-repeat;
		background-position: left 4px;
		padding-left: 23px;
		color: #ccc;
	}
	.taglist2 {
		clear: both;
		color: #ccc;
	}
	.tag {
		display: inline-block;
		padding: 2px 5px;
		padding-top: 1px;
		border-radius: 2px;
		white-space:nowrap;
		color: #555;
	}
	li .tag {
		font-size: 95%;
	}
	.tag + .tag:before {
	}
	.tagtitle {
		padding: 1px 4px;
		/*border: 1px solid #dadada;*/
		border-radius: 2px;
		white-space:nowrap;
		color: #000;
		float: left;
		margin: 1px 1px;
	}

	.tag b {
		color: black;
		color: #666;
		font-weight: bold;
	}
	.tag:hover {
		box-shadow: 1px 1px 6px #ccc;
		border-color: #ccc;
		background-color: #555;
		color: #eee;
	}
	.tag:hover b {
		color: #ddd;
	}
	.endtag {
		clear: left;
	}
	.summary {
		background-color: black;
		position: fixed;
		top: 0;
		bottom: 0;
		left: 0;
		width: 240px;
		color: #eee;
		padding: 3.5em 0px;
		font-size: 18px;
	}
	.summary p {
		color: #eee;
		line-height: 1.3em;
		padding: 0 20px;
		margin: 0;
		margin-bottom: 0.5em;
	}
	.summary .addr {
		color: #aaa;
		font-size: 13px;
	}
	.summary .mail {
		font-size: 13px;
	}
	.summary .toc {
		padding: 0.5em 0px;
		margin-bottom: 2em;
	}
	.summary a:hover {
		background-color: #333;
		color: white !important;
		box-shadow: none;
	}
	.summary a {
		display: block;
		border-radius: 0;
		padding-left: 0;
	}
	.summary .toc a {
		display: block;
		color: #eee !Important;
		font-size: 12px;
		border-radius: 0;
		padding-left: 22px;
		text-transform: uppercase;
		letter-spacing:1px;
	}
	.summary .toc .email {
		margin-bottom: 0.4em;
		color: var(--sidebar-accent-color) !important;
	}
	.summary .toc .email .arobase {
		color: var(--sidebar-accent-color) !important;
		padding-left: 0.1em;
		padding-right: 0.1em;
	}
	.summary hr {
		border-color: #333;
		margin: 1.7em 10px;
		margin-right: 20px;
	}
	footer {
		padding: 6em 2em ;
		margin: 10em 2em;
	}
	.star-3:before {
		content: "★★★";
		padding-right: 1em;
	}
	.star-2:before {
		content: "★★☆";
		padding-right: 1em;
	}
	.star-1:before {
		content: "★☆☆";
		padding-right: 1em;
	}
	.star-1:before {
		content: "★☆☆";
		padding-right: 1em;
	}

	.nowrap {
		white-space: nowrap;
	}
	.logo {
		width: 48px;
		float: left;
		margin-right: 1em;
		border-radius: 4px;
		padding: 2px 4px;
		opacity: 0.9;
		background-color: white;
	}
	.square:before {
		color: #888;
		content: "\25A0";
		padding-right: 0.5em;
	}
	.pdf {
		background-image: url('../images/pdf.png');
		background-position: 2px center;
		background-repeat: no-repeat;
		padding-left: 20px;
	}
	@media only screen and (max-width: 1630px) {
		.summary {
			display: none;
		}
		.infos {
			display: block;
		}
	}
	@page {
		margin: 1.5cm 1cm 1.5cm 1cm;
	}
@media print and (color) {
* {
	-webkit-print-color-adjust: exact;
	print-color-adjust: exact;
}
}

h4 {
	font-weight: 300;
}
.print-only {
	display: none;
}
.vert-space {
	padding-top: 14em;
}


	@media print {
		.summary, .logo, .noprint {
			display: none;
		}
		.print-only {
			display: block;
		}
		body {
			font-size: 14pt;
			line-height: 1.3em !important;
			text-shadow: none !important;
			margin: 0 !important;
			padding: 0 !important;
		}
		.myname .scheme {
			display: inline;
		}
		li {
			line-height: 1.3em !important;
		}
		hr {
			border-style: none;
			margin-bottom: 2cm;
			margin-top: 2cm;
		}
		li .tag {
			font-size: 100%;
		}
		ul li ul li span {
		}
		h3 {
			font-size: 20pt !important;
		}
		div[section="experience"] h3 {
			padding-top: 1.5em;
		}
		div[section=""]
		h1 {
			margin-top: 0;
		}
		h3 span.date {
			font-size: 16pt;
			padding-right: 0.5em;
		}
		h4 {
			font-size: 20pt !important;
			padding-bottom: 0.5em;
			padding-top: 0.6em;
		}
		h2 {
			font-size: 18pt !important;
			padding-left: 0 !important;
			margin-left: 0 !important;
			text-shadow: none !important;
		}
		h2 a {
			display: none;
		}
		.subheader {
			font-size: 15pt;
		}
		.column {
			padding: 0 !important;
			margin:  0 !important;
		}
		.column h3 {
			margin-top: 1cm !important;
		}
		.column h3 .date span {
			box-shadow: none !important;
			border-radius: 4px;
		}
		.screenshot {
			box-shadow: none !important;
			display: none;
		}
		.column h3:first-child {
			margin-top: 2pt !important;
			padding-top: 0 !important;
		}
		div[section="experience"] h3 {
			padding-top: 0;
		}
		.column h4 {
			padding-top: 1cm !important;
		}
		.column h3 + h4 {
			padding-top: 0 !important;
		}
		a {
			color: black !important;
		}
		p, li {
			text-align: left;
			color: black !important;
		}
		.tag {
			color: black !important;
		}
		.infos {
			padding-top: 4mm !important;
		}
		.row {
			clear: both;
			padding: 0 !important;
			margin: 0 !important;
			display: table;
			width: 100% !important;
			border-collapse: collapse;
			border-spacing: 0;
			vertical-align: top;
			left: 0;
		}
		.container {
			padding:0 !important;
			margin: 0 !important;
		}
		.one-third.column:not(.infos) {
			width: 3.8cm !important;
			display: table-cell !important;
			padding: 0 !important;
			margin: 0 !important;
			float: left;
			vertical-align: top;
		}
		.two-thirds.column:not(.myname) {
			margin: 0;
			display: table-cell !important;
			padding: 0 !important;
			width: 23cm !important;
			float: none;
			width: 100%;
			vertical-align: top;
		}
	}

.subheader {
	padding-bottom: 0.3em;
}
