/*
Theme Name: Orangelab
Theme URI: http://orangelab.se
Description: Theme for orangelab.se
Author: Orangelab
Version: 1.1
*/

/* Reset */

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
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,font,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{border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;margin:0;padding:0}
body{line-height:1}
ol,ul{list-style:none}
blockquote,q{quotes:none}
blockquote:before,blockquote:after,q:before,q:after{content:none}
:focus{outline:0}
ins{text-decoration:none}
del{text-decoration:line-through}
table{border-collapse:collapse;border-spacing:0}

/* Global */

body {
	font-family: arial, sans-serif;
	font-size: 62.5%;
	color: #333;
	line-height: 1.5;
	background-color: #ffffff;
}

.clear {
	clear: both;
}

a {
	color: #ff6600;
	text-decoration: none;
	font-weight: normal;
}

a:hover {
	color: #000;
}

/* Layout */

#page {
	width: 600px;
	margin: 0 auto;
	font-size: 1.4em;
}

body.archive #content {
	width: 640px;
}

#header {
	position: relative;
}

#container {
	padding: 20px 0;
}

#footer {
	border-top: 1px solid #ccc;
	margin: 0 auto 0 auto;
	padding: 20px 0 50px;
	position: relative;
	font-size: 0.8em;
	color: #888;
}

#footer .footer-col {
	width: 150px;
	float: left;
	padding-top: 20px;
}

#footer .copyright {
	padding-top: 20px;
}

#site-title a {
	display: block;
	padding-top: 20px;
}

/* Misc. styles */

.alignleft {
	float: left;
}

.alignright {
	float: right;
}

.padding-10 {
	padding: 10px;
}

img.alignright {
	margin: 0 0 10px 10px;
}

a.small {
	font-size: 0.8em;
	color: #888;
}

#wplab-link {
	display: block;
	width: 80px;
	height: 95px;
	position: absolute;
	left: 0;
	top: 180px;
	background: url(images/wordpress_heart_wp_lab.gif) transparent;
	background-position: 0 0;
}

#wplab-link:hover {
	background-position: 0 -95px;
}

.clearer {
	width: 100%;
	height: 1px;
	background: #ccc;
	margin: 20px 0;
	clear: both;
}

.back-btn {
	display: none;
}

/* Page and content */

h1.page-title, h1.entry-title, h3 {
	font-family: Arial, sans-serif;
	font-size: 2.1em;
	letter-spacing: -2px;
	line-height: 1.1;
	color: #222222;
	margin: 0 0 20px 0;
	display: block;
	font-weight: normal;
}

h2 {
	font-weight: normal;
	font-size: 1.3em;
	margin: 0 0 10px;
}

.post {
	clear: both;
}

.entry-image {
	border: 1px solid #ddd;
	padding: 1px;
	margin: 0 0 20px 0;
}

.entry-image img {
	display: block;
}

.post .entry-date {
	float: left;
	clear: left;
	color: #666;
	width: 30%;
	padding: 10px 0 10px 0;
}

.post .entry-content {
	float: left;
	clear: right;
	width: 70%;
	padding: 10px 0 10px 0;
}

#content p {
	margin-bottom: 20px;
}

.case-link {
	position: relative;
	display: block;
	float: left;
	margin-bottom: 20px;
	width: 280px;
}

.case-link img {
	clip: rect(0px,60px,200px,0px);
	border: 5px solid #fff;
	margin-bottom: 5px;
	box-shadow: 1px 1px 5px rgba(0,0,0,0.4);
	-moz-box-shadow: 1px 1px 5px rgba(0,0,0,0.4);
	-webkit-box-shadow: 1px 1px 5px rgba(0,0,0,0.4);

}

body.home .case-link:nth-child(2n+1),
body.archive .case-link {
	margin-right: 40px;
}

.case-link .title {
	display: block;
	color: #333;
	font-weight: bold;
	margin: 0 0 5px;
}

.case-link .text, .case-link .link {
	color: #333;
	display: block;
	margin-bottom: 10px;
}

.case-link:hover .text, .case-link:hover .link  {
	color: #ff6600;
}

.case-link:hover img {
	border: 5px solid #ff6600;
}

.post-meta-key {
	font-weight: bold;
	display: block;
}

ul.post-meta li {
	display: block;
	margin-bottom: 20px;
}

.filters {
	margin: 5px 40px 10px 0;
	float: right;
}

.filters a.filter-link {
	display: block;
	float: left;
	padding: 2px 10px;
	font-size: 0.8em;
	background: #fff;
	color: #666;
	margin: 0 0 10px;
	border-left: 1px solid #ccc;
}

.filters a.filter-link:first-child {
	border-left: 0;
}

.filters a.filter-link:last-child {
	padding-right: 0;
}

.filters a.filter-link.active {
	color: #ff6600;
}

.filters a.filter-link:hover {
	color: #000;
}

/* Menu */

.mainmenu {
	float: right;
	border-bottom: 1px solid #dddddd;
	width: 100%;
	margin: 20px 0 0;
}

.mainmenu ul li {
	float: left;
}

.mainmenu ul li a {
	display: block;
	float: left;
	font-size: 0.9em;
	padding: 5px 10px;
	margin: 0 10px 0 0;
	background: #f7f7f7; /* Old browsers */
	background: -moz-linear-gradient(top,  #f7f7f7 0%, #eaeaea 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f7f7f7), color-stop(100%,#eaeaea)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #f7f7f7 0%,#eaeaea 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  #f7f7f7 0%,#eaeaea 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  #f7f7f7 0%,#eaeaea 100%); /* IE10+ */
	background: linear-gradient(top,  #f7f7f7 0%,#eaeaea 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7f7f7', endColorstr='#eaeaea',GradientType=0 ); /* IE6-9 */
	color: #555;
	border-radius: 10px 10px 0 0;
	-moz-border-radius: 10px 10px 0 0;
	-webkit-border-radius: 10px 10px 0 0;
	-khtml-border-radius: 10px 10px 0 0;
	border: 1px solid #dddddd;
	border-bottom: 0;
	box-shadow: 0 0 5px #e6e6e6, inset 0 1px 1px #fff;
}

.mainmenu ul li.current-menu-item a, .mainmenu ul li.current-menu-parent a, .mainmenu ul li.current-menu-ancestor a {
	color: #333;
	background: #ffffff;
	border-bottom: 1px solid #ffffff;
	margin-bottom: -1px;
}

.mainmenu ul li a:hover, .mainmenu ul li.current-menu-item a:hover {
	color: #ff6600;
}

.mainmenu ul li ul.sub-menu {
	display: none;
}

#menu-overlay {
	width: 100%;
	height: 5px;
	position: absolute;
	background-color: #fff;
	bottom: -5px;
	left: 0;
}

/* Responsive rules */

@media screen and (max-device-width: 480px) {

	#page {
		width: 320px;
	}

	#header, #container {
		padding: 0 10px;
	}

	body.archive #content {
		width: auto;
	}

	.back-btn {
		display: block;
		position: absolute;
		left: 0;
		top: 0;
		color: #000;
		border-radius: 0 0 10px 0;
		-moz-border-radius: 0 0 10px 0;
		-webkit-border-radius: 0 0 10px 0;
		-khtml-border-radius: 0 0 10px 0;
		background: #eeeeee;
		padding: 10px;
	}

	body.home .back-btn {
		display: none;
	}

	#site-title a {
		padding: 10px 0;
	}

	#site-title a img {
		height: 50px;
		width: auto;
		margin: 0 auto;
		display: block;
	}

	.case-link {
		margin-left: 10px;
		float: none;
	}

	.case-link .text {
		border-radius: 10px;
		-moz-border-radius: 10px;
		-webkit-border-radius: 10px;
		-khtml-border-radius: 10px;
		background: #eeeeee;
		color: #000;
		display: block;
		padding: 5px 10px;
		text-align: center;
	}

	.case-link:hover .text {
		background: #ff6600;
		color: #ffffff;
	}

	#wplab-link {
		display: none;
	}

	#footer {
		width: auto;
		padding: 0 10px;
		background: #f6f6f6;
		margin-bottom: 0;
	}

	img {
		max-width: 296px;
		height: auto;
	}

	#page .team {
		position: relative;
		bottom: -19px;
		right: 0;
		width: 249px;
		height: 142px;
	}

}

@media screen and (max-device-width: 480px) and (orientation: portrait) {

	.mainmenu {
		display: none;
	}

	body.home .mainmenu {
		display: block;
	}

	.mainmenu ul li {
		float: none;
	}

	.mainmenu ul li a {
		border-radius: 0;
		-moz-border-radius: 0;
		-webkit-border-radius: 0;
		-khtml-border-radius: 0;
		border: 0;
		margin: 0;
		float: none;
		padding: 5px 0;
		border-top: 1px solid #dddddd;
		background: #ffffff;
	}

	.mainmenu ul li.current-menu-item a, .mainmenu ul li.current-menu-parent a, .mainmenu ul li.current-menu-ancestor a {
		margin: 0;
		font-weight: bold;
	}

	#menu-overlay {
		display: none;
	}

	#map_1 {
		width: 100% !important;
	}

}

@media screen and (max-device-width: 480px) and (orientation: landscape) {

	#page {
		width: 480px;
	}

	.case-link {
		float: left;
		width: 200px;
	}

	body.home .case-link:nth-child(2n+1),
	body.archive .case-link {
		margin-right: 20px;
	}

	.case-link img {
		width: 190px;
		height: auto;
	}

	img {
		max-width: 456px;
		height: auto;
	}

}


/* Team */

.team {
	position: fixed;
	bottom: 0;
	right: 2%;
	width: 249px;
}

a.team-member {
	display: block;
	position: absolute;
	bottom: -1px;
}

a.team-member .bubble {
	position: absolute;
	top: 28px;
	left: -110px;
	width: 140px;
	background: #ffffff;
	border: 1px solid #000;
	font-size: 0.9em;
	-webkit-border-radius: 5px;
	 -khtml-border-radius: 5px;
	   -moz-border-radius: 5px;
			border-radius: 5px;
	display: none;
}

a.team-member .bubble div {
	position: relative;
	padding: 5px;
}

a.team-member .bubble div:after {
	content: '';
	width: 0;
	height: 0;
	position: absolute;
	top: 40px;
	right: -20px;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 20px solid #444;
	z-index: 6;
}

a.team-member .bubble div:before {
	content: '';
	width: 0;
	height: 0;
	position: absolute;
	top: 42px;
	right: -18px;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 20px solid #fff;
	z-index: 7;
}

a.team-member:hover .bubble {
	display: block;
}

a#rickard {
	background: url(images/rickard-small.png) no-repeat top left;
	width: 143px;
	height: 142px;
	z-index: 3;
}

a#rickard:hover {
	background-position: -143px 0;
}

a#johan {
	background: url(images/johan-small.png) no-repeat top left;
	width: 106px;
	height: 138px;
	left: 133px;
	z-index: 2;
}

a#johan:hover {
	background-position: -106px 0;
	z-index: 4;
}

/* Mosaic */

#mosaic {
	z-index: 0;
	position: absolute;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
	overflow: hidden;
}

#mosaic .box {
	-moz-user-select: none;
	background-color: #FFFFFF;
	float: left;
	height: 10%;
	width: 10%;
}

body.page-template-page-mosaic-php #page-wrapper {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

body.page-template-page-mosaic-php #page-wrapper #page #container {
	background: #fff;
	padding-left: 20px;
	padding-right: 20px;
	border-radius: 0 0 20px 20px;
	-moz-border-radius: 0 0 20px 20px;
	-webkit-border-radius: 0 0 20px 20px;
	-khtml-border-radius: 0 0 20px 20px;
}
