/* 
    Created on : 16-09-2016, 10:39:12
    Updated on : 29-05-2017
    Author     : Carsten Boel Larsen
*/

.js-loading-overlay {
	background-color: rgba(0, 0, 0, 0.5);
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

/********************\
|**** Site Style ****|
\********************/
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

pre,
code,
select,
input,
textarea {
	outline: none;
}

pre,
code,
textarea {
	overflow: auto;
}

html, body {
	margin: 0;
	padding: 0;
}

body {
	font: 16px/1 'Open Sans', sans-serif;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	background-color: #DBEAF9;
}

header, footer, .container, .container-fluid {
	position: absolute;
	right: 0;
	left: 0;
}

header {
	height: 70px;
	line-height: 70px;
	top: 0;
}

header .container-fluid,
header .container {
	min-width: 100% !important;
	background-color: #252525;
}

header h2,
header small {
	color: #FFF !important;
}

header h2 {
	font-size: 18px;
	font-variant: small-caps;
	/*text-transform: uppercase;*/
}

.navtext, .navtext a {
	color: #000;
	text-decoration: none;
}

.welcome {
	font-family: "Avant Garde", Avantgarde, "Century Gothic", CenturyGothic, "AppleGothic", sans-serif;
	font-size: 72px;
	padding: 80px 50px;
	text-align: center;
	text-transform: uppercase;
	text-rendering: optimizeLegibility;
	color: #e0dfdc;
	/*background-color: #333;*/
	letter-spacing: .1em;
	text-shadow: 0 -1px 0 #fff, 0 1px 0 #2e2e2e, 0 2px 0 #2c2c2c, 0 3px 0 #2a2a2a, 0 4px 0 #282828, 0 5px 0 #262626, 0 6px 0 #242424, 0 7px 0 #222, 0 8px 0 #202020, 0 9px 0 #1e1e1e, 0 10px 0 #1c1c1c, 0 11px 0 #1a1a1a, 0 12px 0 #181818, 0 13px 0 #161616, 0 14px 0 #141414, 0 15px 0 #121212, 0 22px 30px rgba(0, 0, 0, 0.9);
}

main.container-fluid,
main.container {
	min-width: 100% !important;
	padding: 2% 10%;
	top: 69px;
	bottom: 50px;
	background-color: #DBEAF9;
	overflow: auto;
}

main.frontbg {
	background-image: url("/assets/images/design/space-aliens-pirate-station.jpg");
	background-repeat: no-repeat;
	background-position: center;
	background-attachment: local;
	-webkit-background-size: 100%;
	-moz-background-size: 100%;
	-o-background-size: 100%;
	background-size: 100%;
	background-color: #DBEAF9;
	margin: 0;
	border: 0;
	overflow: hidden;
}

footer {
	background-color: #FFF !important;
	border-top: 1px solid #000;
	font-size: .8em;
	height: 50px;
	bottom: 0;
	text-align: center;
	vertical-align: middle;
}

footer p {
	padding: 0;
	margin: 10px 0 0;
}

/********************\
|**** Nav Styles ****|
\********************/
#cssmenu,
#cssmenu ul,
#cssmenu li,
#cssmenu a {
	margin: 0;
	padding: 0;
	border: 0;
	list-style: none;
	font-weight: 400;
	text-decoration: none;
	font-size: 24px;
	position: relative;
	text-transform: uppercase;
	z-index: 18;
}

#cssmenu a {
	line-height: 30px;
}

img.grayscale {
	filter: url("data: image/svg+xml;utf8,<svg xmlns='http: //www.w3.org/2000/svg'><filter id='grayscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0'/></filter></svg>#grayscale");
	/* Firefox 3.5+ */
	filter: gray;
	/* IE6-9 */
	-webkit-filter: grayscale(100%);
	/* Chrome 19+ & Safari 6+ */
	/*border: 1px solid #FFF;*/
}

img.grayscale:hover {
	filter: none;
	-webkit-filter: grayscale(0%);
	/*border: 1px solid #FFF;*/
}

.melogo {
	float: left;
	margin-top: 10px;
	margin-right: 10px;
}

@media all and (min-width: 768px) {
	#cssmenu a {
		padding: 0 10px;
	}

	.vcenter {
		display: inline-block;
		vertical-align: middle;
	}
}

#cssmenu {
	width: 100%;
	background-color: #252525;
	height: 30px;
}

#cssmenu > ul {
	border: 1px solid #000000;
	-moz-box-shadow: inset 1px 1px 0 rgba(255, 255, 255, 0.2);
	-webkit-box-shadow: inset 1px 1px 0 rgba(255, 255, 255, 0.2);
	box-shadow: inset 1px 1px 0 rgba(255, 255, 255, 0.2);
	background-color: #292828;
}

#cssmenu > ul:after {
	clear: both;
	content: '';
	display: table;
}

@media all and (max-width: 768px) {
	header {
		height: 111px;
	}
	
	.welcome {
		font-size: 36px;
		padding: 40px 25px;
		text-shadow: 
		0 -1px 0 #fff,
		0 1px 0 #2e2e2e,
		0 2px 0 #2c2c2c,
		0 3px 0 #2a2a2a,
		0 4px 0 #282828,
		0 5px 0 #262626,
		0 6px 0 #242424,
		0 7px 0 #222,
		0 8px 0 #202020,
		0 11px 15px rgba(0, 0, 0, 0.9);
	}

	main.container {
		top: 111px;
	}

	main.frontbg {
		background-image: url("/assets/images/design/space-aliens-pirate-station-mo.jpg");
	}
	
	header img {
		margin: 0 auto;
	}
	
	.nopad {
		padding: 0;
	}

	#cssmenu {
		/* margin-bottom: 20px; */
		margin-bottom: 13px;
	}

	#cssmenu > ul {
		max-height: 43px;
		overflow: hidden;
		-webkit-transition: max-height 0.5s;
		transition: max-height 0.5s;
	}

	#cssmenu.expand > ul {
		max-height: 900px;
		/* max-height: calc(100vh - 70px); */
		/* background-color: #f00; */
	}

	/*
	.scrollable-menu {
		height: auto;
		max-height: 200px;
		overflow-x: hidden;
		overflow-y: scroll;
	}
	
	.scrollable-menu::-webkit-scrollbar {
		-webkit-appearance: none;
		width: 4px;        
	}
    
	.scrollable-menu::-webkit-scrollbar-thumb {
		border-radius: 3px;
		background-color: lightgray;
		-webkit-box-shadow: 0 0 1px rgba(255,255,255,.75);        
	}
	*/

	.DoDaScroll {
		position: fixed;
		overflow-y: scroll;
		height: calc(100vh);
	}
}

#cssmenu > ul > li {
	border-right: 1px solid #000000;
	-moz-box-shadow: 1px 0 0 rgba(255, 255, 255, 0.2);
	-webkit-box-shadow: 1px 0 0 rgba(255, 255, 255, 0.2);
	box-shadow: 1px 0 0 rgba(255, 255, 255, 0.2);
	float: left;
}

#cssmenu > ul > li.mobile {
	display: none;
	border-right: 0 none;
	-moz-box-shadow: 0 0 0 transparent;
	-webkit-box-shadow: 0 0 0 transparent;
	box-shadow: 0 0 0 transparent;
}

#cssmenu > ul > li > ul > li.active,
#cssmenu > ul > li.active {
	background-color: #222121;
	border-bottom: none;
}

@media all and (max-width: 768px) {
	#cssmenu > ul > li {
		border-right: 0 none;
		-moz-box-shadow: 0 0 0 transparent;
		-webkit-box-shadow: 0 0 0 transparent;
		box-shadow: 0 0 0 transparent;
		display: block;
		float: none;
	}

	#cssmenu > ul > li.mobile {
		display: block;
	}
	
	#cssmenu > ul > li > ul {
		background-color: #333131;
		border-radius: 0;
	}
	
	#cssmenu > ul > li > ul > li ul {
		background-color: #444141;
		border-radius: 0;
		border: 0;
		left: auto;
		right: 0;
	}
}

#cssmenu > ul > li:last-child,
#cssmenu > ul > li > ul > li:last-child {
	-moz-box-shadow: 0 0 0 transparent;
	-webkit-box-shadow: 0 0 0 transparent;
	box-shadow: 0 0 0 transparent;
}

#cssmenu > ul > li:last-child ul {
	left: auto;
	right: 0;
}

#cssmenu > ul > li > a {
	margin: 0 0 2px 0;
	font-size: 12px;
	display: block;
	color: #FFF;
	text-shadow: 0 1px 1px #000;
}

#cssmenu > ul > li > ul > li > a:after {
	content: ' ';
	position: absolute;
	border: 5px solid transparent;
	border-left: 0 solid transparent;
	border-width: 5px;
	left: 85%;
	top: 40%;
	border-color: transparent transparent transparent #FFF;
}

#cssmenu > ul > li > ul > li.active > a.showmenu:after,
#cssmenu > ul > li > ul > li > a:hover:after {
	border-color: transparent transparent transparent #4e7386;
}

#cssmenu > ul > li > a:after {
	content: ' ';
	position: absolute;
	border: 5px solid transparent;
	border-top: 0 solid transparent;
	border-width: 5px;
	left: 50%;
	top: 75%;
	margin-left: -5px;
	border-color: #FFF transparent transparent transparent;
}

#cssmenu > ul > li.active > a.showmenu:after,
#cssmenu > ul > li > a:hover:after {
	border-color: #4e7386 transparent transparent transparent;
}

@media all and (max-width: 768px) {
	#cssmenu > ul > li > a:after,
	#cssmenu > ul > li > ul > li > a:after,
	#cssmenu > ul > li > ul > li > ul > li > a:after {
		content: ' ';
		position: absolute;
		border: 5px solid transparent;
		border-top: 0 solid transparent;
		border-width: 5px;
		left: 85%;
		top: 50%;
		border-color: #FFF transparent transparent transparent;
	}
	
	#cssmenu > ul > li > ul > li.active > a.showmenu:after,
	#cssmenu > ul > li > ul > li > a:hover:after {
		border-color: #4e7386 transparent transparent transparent;
	}
}

#cssmenu ul > li > a:only-child:after {
	margin-right: 0;
	content: "";
	border: 0;
}

#cssmenu > ul > li > a > span {
	display: block;
	padding: 6px 10px;
	font-weight: bold;
}

#cssmenu > ul > li.active > a.showmenu,
#cssmenu > ul > li.active > ul > li.active > a.showmenu,
#cssmenu > ul > li > ul > li > a:hover,
#cssmenu > ul > li > a:hover {
	text-decoration: none;
	color: #4e7386;
}

#cssmenu ul ul {
	background-color: #222121;
	border: 1px solid #4e4e4e;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	-moz-box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.25);
	-webkit-box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.25);
	box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.25);
	display: none;
	position: absolute;
	top: 45px;
	left: 0;
	width: 200px;
	z-index: 19;
}

#cssmenu ul ul ul {
	background-color: #222121;
	border: 1px solid #4e4e4e;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	-moz-box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.25);
	-webkit-box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.25);
	box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.25);
	
	display: none;
	position: absolute;
	top: -1px;
	left: 100%;
	min-width: 100%;
	z-index: 20;
}

#cssmenu ul ul a,
#cssmenu ul ul ul a {
	padding: 0 12px;
	color: #FFF;
	display: block;
	font-size: 12px;
	font-weight: bold;
}

#cssmenu ul li ul li:not(.divider):hover,
#cssmenu ul li ul li ul li:not(.divider):hover {
	background-color: #292828;
	color: #4e7386;
}

@media all and (max-width: 768px) {
	#cssmenu ul ul,
	#cssmenu ul ul ul {
		position: relative;
		top: 0;
		width: 100%;
	}

	#cssmenu ul ul a {
		padding: 5px 27px;
	}
	
	#cssmenu ul ul ul a {
		padding: 5px 42px;
	}

	#cssmenu ul li ul li:not(.divider):hover,
	#cssmenu ul li ul li ul li:not(.divider):hover {
		background-color: #292828;
		color: #4e7386;
	}

	#cssmenu #menu-button {
		display: block;
		text-decoration: none;
		font-size: 13px;
		font-weight: 700;
		color: #FFF;
		padding-left: 20px;
		text-transform: uppercase;
		letter-spacing: 1px;
		cursor: pointer;
	}

	#cssmenu #menu-button::after {
		display: block;
		content: '';
		position: absolute;
		height: 7px;
		width: 22px;
		border-top: 2px solid #FFF;
		border-bottom: 2px solid #FFF;
		right: 25px;
		top: 14px;
	}

	#cssmenu #menu-button::before {
		display: block;
		content: '';
		position: absolute;
		height: 3px;
		width: 22px;
		border-top: 2px solid #FFF;
		right: 25px;
		top: 24px;
	}
}

#cssmenu ul ul li,
#cssmenu ul ul ul li {
	padding: 3px 0;
}

#cssmenu ul ul a:hover,
#cssmenu ul ul ul a:hover {
	/*color: #FFF;*/
	color: #4e7386;
}

#cssmenu ul li:not(#searchLi):not(.divider):hover {
	background-color: #222121;
	color: #4e7386;
}

#cssmenu li.divider {
	height: 1px;
	margin: 0 auto;
	padding: 0;
	background-color: transparent !important;
}

#cssmenu li.divider hr {
	max-width: 75%;
	height: .5px;
	margin-top: 0;
	margin-bottom: 0;
	border: 0;
	background-image: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.75), rgba(255, 255, 255, 0));
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
	#cssmenu li.divider hr {
		height: 1px;
	}
	
	#cssmenu ul li ul > li:nth-child(odd) ul li.divider hr {
		height: .5px;
	}
}

/**********************\
|***   SEARCH BOX   ***|
\**********************/
/* Search icon by IcoMoon, made with http://icomoon.io/app/ */
@font-face {
	font-family: 'icomoon';
	src: url("../../fonts/icomoon/icomoon.eot");
	src: url("../../fonts/icomoon/icomoon.eot?#iefix") format("embedded-opentype"), url("../../fonts/icomoon/icomoon.woff") format("woff"), url("../../fonts/icomoon/icomoon.ttf") format("truetype"), url("../../fonts/icomoon/icomoon.svg#icomoon") format("svg");
	font-weight: normal;
	font-style: normal;
}

.sb-search {
	position: relative;
	margin: 2px 2px 0;
	width: 0%;
	min-width: 58px;
	height: 40px;
	line-height: 40px;
	float: left;
	overflow: hidden;
	-webkit-transition: width 0.3s;
	-moz-transition: width 0.3s;
	transition: width 0.3s;
	-webkit-backface-visibility: hidden;
}

.sb-search-input {
	position: absolute;
	top: 0;
	left: 0;
	border: none;
	outline: none;
	background: #000;
	width: 98%;
	height: 40px;
	margin: 0;
	z-index: 110;
	padding: 2px 2px 2px 65px;
	font-family: inherit;
	font-size: 16px;
	color: #FFF;
}

.sb-icon-search,
.sb-search-submit {
	width: 60px;
	height: 40px;
	line-height: 40px;
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	padding: 0;
	margin: 0;
	text-align: center;
	cursor: pointer;
}

.sb-search-submit {
	background: #292828;
	/* IE needs this */
	-ms-filter: "progid: DXImageTransform.Microsoft.Alpha(Opacity=0)";
	/* IE 8 */
	filter: alpha(opacity=0);
	/* IE 5-7 */
	opacity: 0;
	color: transparent;
	border: none;
	outline: none;
	z-index: -1;
}

.sb-icon-search {
	color: #fff;
	background: #292828;
	z-index: 190;
	font-size: 16px;
	font-family: 'icomoon';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	-webkit-font-smoothing: antialiased;
}

.sb-icon-search:before {
	content: "\e000";
}

/* Open state */
.sb-search.sb-search-open,
.no-js .sb-search {
	width: 100%;
}

.sb-search.sb-search-open .sb-icon-search,
.no-js .sb-search .sb-icon-search {
	background: #222121;
	color: #FFF;
	z-index: 111;
}

.sb-search.sb-search-open .sb-search-submit,
.no-js .sb-search .sb-search-submit {
	z-index: 190;
}

/***************************\
|**** Pagination Styles ****|
\***************************/
.Ppagination {
	margin: 0;
	padding: 0;
}

.Ppagination li {
	display: inline;
	padding: 6px 10px 6px 10px;
	border: 1px solid #ddd;
	margin-right: -1px;
	font: 13px/20px Arial, Helvetica, sans-serif;
	background: #FFFFFF;
}

.Ppagination li a {
	text-decoration: none;
	color: #598deb;
}

.Ppagination li.Pfirst {
	border-radius: 5px 0px 0px 5px;
}

.Ppagination li.Plast {
	border-radius: 0px 5px 5px 0px;
}

.Ppagination li:hover {
	background: #EEE;
}

.Ppagination li.Pcurrent {
	background: #89B3CC;
	border: 1px solid #89B3CC;
	color: #FFFFFF;
}

.pagelinks {
	float: left;
}

#JumpPage {
	-moz-appearance: none;
	display: inline;
	margin: 0px;
}

#JumpPage input {
	-moz-appearance: none;
	border: 1px #000000 solid;
	scrollbars: true;
	margin: 0 2px;
	text-indent: 2px;
}

#JumpPage input[type='text'], #JumpPage input.text {
	width: 22px;
}

#JumpPage input[type='button'], #JumpPage input.button {
	padding: 2.5px 3px 2.5px 2px;
	font-weight: 600;
}

/**********************\
|**** Mixed Styles ****|
\**********************/
.socialicons {
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
}

.socialicons > a {
	margin: 0 5px;
	flex: auto;
}

.fa-facebook-square {
	color: #46629e;
}

.fa-google-plus-square {
	color: #db4437;
}

.fa-linkedin-square {
	color: #1a85bc;
}

.fa-twitter-square {
	color: #1da1f2;
}

a.nostyle {
	text-decoration: none;
}

.center {
	text-align: center;
	margin: auto auto;
}

.vcenter {
	vertical-align: middle;
}

.email {
	-moz-appearance: none;
	unicode-bidi: bidi-override;
	direction: rtl;
}

h1 {
	margin-top: 0;
}

h2.fun {
	margin-top: 0;
}

h2.title {
	margin-bottom: 2px;
}

h4.subh1 {
	margin-top: 0;
	margin-bottom: 20px;
}

.icon {
	color: #000;
}

.grey {
	color: #666;
}

.red {
	color: #F00;
}

.green {
	color: #0F0;
}

/**********************\
|**** News Details ****|
\**********************/
#news .post {
	padding: 5px;
}

#news h3 {
	/*font-size: 24px;
	font-weight: normal;
	text-transform: uppercase;*/
	margin: 0 0 5px 0;
}

#news p {
	margin: 0 0 5px 0;
}

#news .post-thumbnail {
	float: left;
	margin: 4px 20px 10px 0;
}

#news .post-thumbnail img {
	max-width: 300px;
	max-height: 300px;
	padding: 1px;
}

#news .post-info {
	padding: 1px;
}

#news .post-info ul {
	list-style: none;
	padding: 5px 0;
	overflow: hidden;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
}

#news .post-info ul li.date {
	float: left;
}

#news .post-info ul li.author {
	float: left;
	margin-left: 20px;
}

/********************\
|**** Show Boxes ****|
\********************/
pre {
	margin-top: 2px;
	width: 800px;
	max-width: 100%;
	padding: 10px;
	padding-bottom: 0;
	border: 1px solid #000;
}

pre, code {
	overflow: hidden;
	background-color: #fcda81;
	color: #000;
	font-family: "Courier new", Courier, "Andale Mono", monospace;
}

pre code[title]:after {
	font-weight: 900;
	content: attr(title);
	display: block;
	text-align: right;
	font-size: smaller;
	padding: 5px 0;
}

div.result {
	background-color: #fcda81;
	color: #000;
	font-family: "Courier new", Courier, "Andale Mono", monospace;
	padding: 10px;
	margin-top: 10px;
	width: 800px;
	max-width: 100%;
	border: 1px solid #000;
}

/*****************\
|*** FUN STUFF ***|
\*****************/
.funstuff {
	margin-top: 20px;
	background-color: #737474;
	color: #FFF;
	font-size: 1.8em;
	height: 50px;
	line-height: 50px;
}

.list {
	width: 350px;
	margin: 0 auto;
}

.list ol {
	counter-reset: li;
	list-style: none;
	*list-style: decimal;
	font-size: 15px;
	font-family: 'Raleway', sans-serif;
	padding: 0;
	/* margin-bottom: 4em; */
}

.list a {
	/* text-decoration: none; */
	color: #666;
}

.list span {
	position: relative;
	display: block;
	padding: .4em .4em .4em 2em;
	*padding: .4em;
	margin: .5em 0;
	background: #CCC;
	color: #000;
	text-decoration: none;
	box-shadow: inset 0.5em 0 #999;
	-webkit-transition: box-shadow 1s;
	/* For Safari 3.1 to 6.0 */
	transition: box-shadow 1s;
}

.list span:hover {
	box-shadow: inset 1.4em 0 #999;
}

/*********************\
|*** RATING STYLES ***|
\*********************/
.Rating a:hover {
	color: #ffa200 !important;
	text-decoration: none;
}

.Rating a,
.RateStar,
.RateStar-o {
	color: #ffa200;
}

.DaStar > a > i:before {
	content: "\f005" !important;
}

/*******************\
|*** SKILLS TING ***|
\*******************/
.skills {
	margin-top: 20px;
}

.skills h2 {
	margin-top: 0;
}

.SkillCircles {
	margin: 10px auto;
	display: flex;
	flex-wrap: wrap;
}

.SkillCircles > div {
	margin: 20px;
	flex: auto;
}

.SkillCircles h4 {
	text-align: center;
	font-weight: 600;
}

.progress-bar {
	line-height: 27px;
	background-color: #1da1f2;
}

.progress {
	position: relative;
	height: 25px;
}

.progress > .progress-type {
	position: absolute;
	left: 0;
	font-weight: 800;
	padding: 3px 30px 2px 10px;
	background-color: rgba(10, 10, 10, 0.1);
	color: white;
}

.stacked-label {
	font-weight: 600;
	color: #FFFFFF;
}

.progress > .progress-completed {
	position: absolute;
	right: 0;
	font-weight: 600;
	padding: 2px 2px 2px;
}


/*******************\
|*** PAGE LOADER ***|
\*******************/
.loader {
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background: url('/assets/images/design/loader.gif') 50% 50% no-repeat rgb(0,0,0);
}