/* =Reset default browser CSS. Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */

html, body, div, span, applet, object,
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 {
    background: transparent;
    border: 0;
    margin: 0;
    padding: 0;
    height:auto;
    width:auto;
    vertical-align: baseline;
/*	font-family:sans-serif; */
}
/* End reset */

@keyframes animatedBackground {
	from { background-position: 0 0; }
	to { background-position: 64px 0; }
}

/* general
--------------------------------------------------------*/

.onlyMobile {
	display:none;	
}

body {
	font-family:Segoe, "Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, sans-serif;
	color: #333333;
	background-color:#efefef;
}

/* passion finns i 400, 700 och 900 */
h1 {
	font-family: 'Passion One', cursive;
	font-size:5em;
	font-weight:700;
	letter-spacing:0.05em;
}

h2 {
/*	font-family: 'Passion One', cursive; */
	font-size:3em;
	font-weight:400;
	line-height:2em;
	margin:0.5em 0 0.5em 0;
	letter-spacing:0.15em;
}
h2.centered:before {
	content:"–";
	margin-right:1em;
}
h2.centered:after {
	content:"–";
	margin-left:1em;	
}

p {
	margin-bottom:1em;	
}

.centered {
	text-align:center;	
}

.centerText {
	position:absolute;
	left:0;
	right:0;
	bottom:0;	
	bottom: 50%;
    text-align: center;
    top: auto;
    transform: translateY(50%);
}

.titleText {
	position:absolute;
	left:0;
	right:0;
	bottom: 5%;
    text-align: center;
}

.whiteText {
	color:#ffffff;	
}

.shadowText {
	text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.65);	
}

.clear-fix::before, .clearfix::after {
    content: "";
    display: table;
}
.clear-fix::after {
    clear: both;
	content: "";
	float:none;
	display:block;
}

.anchor {
	top:-80px; /* compesate for fixed header height */
	position:relative;
	display:block;
/*	background-color:#ff99ff; */
	margin-left:-100px;
	width:20px;
	height:20px;
}

.width75 {
	width:75%;
	margin:0 auto 24px auto;	
}

.width50 {
	width:50%;
	margin:0 auto 24px auto;	
}

/* header
--------------------------------------------------------*/
#headerWrapper {
}
#headerContainer {
	overflow:hidden;
	height:560px;
	width:100%;
	min-width:1200px;
	display:block;
	background-color:rgb(137, 214, 250);
	background-color:rgb(126, 179, 232);
	background-image:url('images/studsmatta-hoppa-glada-bäst-i-test.jpg');
	background-repeat:no-repeat;
	background-position:bottom center;
	position:relative;
}
#footerWrapper {
	height:40px;
	background-color:rgb(126, 179, 232);
	line-height:40px;
	width:100%;
}

#footerContainer {
	color:#222222;
	width:1200px;
	margin:0 auto 0 auto;
	text-align: center;
}

#menuWrapper {
	height:80px;
	width:100%;
	background-color:rgb(126, 179, 232);
	background-color:rgba(126, 179, 232, 0.85);	
	position:fixed;
	z-index:9999;
	padding-top:32px;
}
#menuContainer {
	width:1200px;
	margin:0 auto 0 auto;
}
#logoWrapper {
	width:100%;
	max-width:240px;
	height:auto;
	display:block;
	position:absolute;
	margin-top:-16px;
}
#logoContainer {
	width:100%;
	height:auto;
}
#logoContainer img {
	width:100%;
	height:auto;	
}

#mainMenu {
	list-style-type:none;	
	margin-left:256px;
}
#mainMenu li {
	float:left;
	color:#ffffff;
}
#mainMenu li a {
	text-decoration:none;
	color:#222222;
	padding:2px 10px 2px 10px;
	font-size:1.5em;
	line-height:2em;
	font-weight:700;
	text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.65);
}


/* Main Content
--------------------------------------------------------*/

#mainContainer {
	width: 1200px;
	margin: 0 auto;
/* 	margin-top: 100px; */
	background-color:#ffffff;
	overflow:hidden;
}

/* Colums
--------------------------------------------------------*/

.columns-wrapper {
    margin: 0 auto;
    position: relative;
}

.column {
	float: left;
}

.column-content {
/*	padding:0 24px 0 24px; */
	position:relative;
	margin:0 24px 0 24px;
}

.full {
	width: 100%;	
}

.third {
	width: 33.33%;
}

/* Test Boxes
--------------------------------------------------------*/

.title {
	width: 100%;
/*
	background-color: #ca3a18;
	color: #FFF;
*/	
	line-height: 2em;
	text-align: center;
	margin: 0 auto;
	text-transform: uppercase;
	font-weight: 700;
}

.small-col {
	width: 45%;	
	float: left;
}

.image-wrapper {
	padding:10px 10px 0 0;	
}
.image-wrapper img {
	width:100%;
	height:auto;	
}

.big-col {
	width: 55%;
	float: right;
}

.bar { 
	width: 100%;
	height: 24px;
	position: relative;
	background: #FFF;
/*	border: 1px solid #b7b7b7; */
	background-color:#efefef;
	margin: 10px 0;
	line-height: 24px;
  font-size: 13.5px;
}

.bar > span {
  display: block;
  height: 100%;
  position: relative;
  overflow: hidden;
}
.bar.good > span {
	background-color: #3ab54b;
}
.bar.average > span {
	background-color: #ffbb00;
}
.bar.best {
	border-color: lime;
}
.bar.best > span {
	background-color: #7ad56b;
	background-image:url('images/animated-pattern.png');
	animation: animatedBackground 3s linear infinite;
}
.bar.bad > span {
	background-color: #d45953;
}

.bar .bar-text {
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
	position:absolute;
	top:0px;
	width:auto;
	left:10px;
	right:10px;
}


.percent-text {
	margin-top: -60px;
	margin-bottom: -30px;
	font-size: 40px;
	font-weight: 700;
	text-align: center;
	width:auto;
}

blockquote.test-comment {
	margin-top: 10px;
	padding-left: 10px;
	border-left: 3px solid #ccc;
	quotes: "\201C""\201C""\201C""\201C";
}
blockquote.test-comment:before {
	content: open-quote;
	font-size: 3em;
	font-family: arial;
	line-height: 0.1em;
	vertical-align: -.3em;
}
/*blockquote.test-comment:after {
	content: close-quote;
	font-size: 3em;
	font-family: arial;
	line-height: 0.1em;
	vertical-align: -.3em;
}*/

.price-info {
	padding-top: 20px;
	text-align: center;
	clear: both;
}
.price-info span.price {
	font-weight: bold;
}

.line {
	padding-top: 20px;
	margin-bottom:40px;
}

.line hr {
	background-color: #cbcbcb;
	height: 1px;
	margin: 0;
	border: 0;
}

.three-options {
	margin-top: 20px;
	margin-bottom: 40px;
}
.three-options a {
	color: #222222;
	text-decoration: none;
}
.three-options a:hover .option .option-icon {
	color: orange;
}
.three-options .option {
	/*width: 33%;
	float: left;*/
}
.three-options .option .option-icon {
	font-size: 80px;
	color: darkorange;
	float: left;
	margin-right: 15px;
	line-height: 80px;
	margin-top: 5px;
}
.three-options .option h4.option-title {
	font-size: 20px;
	margin-top: 10px;
}


#resultsWrapper {
	background-color:#ffffff;	
	display:block;
}

/* TABLE */
.table-wrapper {
	overflow-x: auto;
	overflow-y:visible;
	display:block;
	margin-left:200px;
}

.cell-image {
/*	height:75px; */
	padding:0px;
	margin:0px;
}
.cell-image img {
	display:block;	
}



table.results-table {
	border-spacing: 0;
	border-collapse: collapse;
	table-layout:fixed;
	position:relative;
	z-index:99;
	font-size:0.8em;
}
table.results-table img {
	margin:0 auto 0 auto;
	display:block;
	width:128px;
	height:auto;
	padding:0 8px 0 8px;
}
 .image-placeholder {
	margin:0 auto 0 auto;
	display:block;
	width:128px;
	height:96px;
	padding:0 8px 0 8px;
}

table.results-table tbody {
}

table.results-table tbody tr {
	padding:0px;
	margin:0px;
}

table.results-table thead th, table.results-table tbody th {
	padding:0px;
	margin:0px;
}


table.results-table tbody td {
	text-align: center;
	padding:0px;
	margin:0px;
}
table.results-table tbody td:first-child {
	text-align: left;
}
.fixed {
	display:none;
	position:absolute;
	left:0px;
/*	margin-top:-150px;	 */
}

table.results-table tbody tr:last-child td {
	text-align: left;	
}

table.results-table td.focus-bad {
	color: red;
	font-weight: bold;
}
table.results-table td.focus-good {
	color: darkgreen;
	font-weight: bold;
}

table.results-table th {
	height:32px;
	vertical-align:bottom;
}

table.results-table td {
	height:24px;
	line-height:16px;
}

/* TABLE BEFORE */

.table-headers {
	width:100%;
	border-collapse: collapse;
    border-spacing: 0;
	position:absolute;
	z-index:2;	
	font-size:0.8em;
}

table.table-headers th {
	text-align:left;
	height:24px;
	line-height:16px;
	font-weight:100;
/*	
	white-space:nowrap;
	text-overflow:ellipsis;
	overflow:hidden;
*/
}
table.table-headers tr:nth-child(2) th {
	height:32px;
	vertical-align:bottom;	
	font-weight:700;
}

.dividerTitle {
	background-color:#f9f9f9;
	width:100%;	
	padding-left:6px;
	font-weight:700 !important;
	line-height:22px !important;
}


/* Test specification
--------------------------------------------------------*/
.test-specification-part {
	width: 45%;
	float: left;
	margin-right: 20px;
}
.test-specification-part img {
	width: 200px;
	margin: 10px 0 10px 10px;
	float: right;
	border: 1px solid #333333;
	border-radius: 50%;
}





/* Studsmatta bilden
--------------------------------------------------------*/
.hotspot-image-wrapper {
	position:relative;	
}

.hotspot-image-wrapper img {
	width:100%;
	height:auto;	
}

.hotspot-spots {
	display:block;
	width:100%;
	height:auto;
	position:relative;	
}

.hotspot {
	border-radius:100%;
	background-color:#ffffff;
	background-color:rgba(255, 255, 255, 0.8);
	border:2px solid #000000;
	border:2px solid rgba(0, 0, 0, 0.8);
	width:48px;
	height:48px;
	text-align:center;
	position:absolute;
	font-size:2.5em;
	font-weight:700;
	line-height:1.1em;
}

.hotspot-menu {
	border:2px solid #000000;
	border:2px solid rgba(0, 0, 0, 0.8);
	position:absolute;
	right:24px;
	top:0px;
	background-color:#ffffff;		
}

.hotspot-menu ul {
	list-style-type:none;	
}
.hotspot-menu ul li {
	padding:4px 10px 4px 10px;	
}
.hotspot-highlight {
	color:#ffffff;
	background-color:#000000;
	background-color:rgba(0, 0, 0, 0.8);			
}


/* TABLE SPECIFICATIONS
--------------------------------------------------------*/

table.spec-table {
	width:100%;
	border-collapse:separate;
}
table.spec-table tr td {
	text-align:center;
	padding-bottom:0.5em;
}
table.spec-table tr td:first-child {
	text-align:left;
}

table.list-table tr td {
	padding-bottom:1em;	
}

table.spec-table tr:nth-child(even),
table.list-table tr:nth-child(even) {
    background-color: #eeeeee;
}

table caption {
	font-size:1.1em;
	margin-top:1em;	
}

table caption:before {
	content:"–";
	margin-right:1em;
}
table caption:after {
	content:"–";
	margin-left:1em;	
}

/* TESTVINNARE
--------------------------------------------------------*/
.testVinnare {
	background-color:#ea7c11;
	border-radius:100%;
	color:#efefef;
	position:absolute;
	width:80px;
	height:80px;
	border:2px solid #efefef;
  -webkit-box-shadow: 0px 0px 0px 4px #222222; /* Android 2.3+, iOS 4.0.2-4.2, Safari 3-4 */
          box-shadow: 0px 0px 0px 4px #222222;
	top:24px;
	left:-16px;
 -webkit-transform: rotate(-13deg); 
      -ms-transform: rotate(-13deg);
          transform: rotate(-13deg);  	
	font-size:1.5em;
	line-height:1.0em;
}
.testVinnare span {
	text-align:center;
	position:absolute;
	top:50%;
	transform:translateY(-50%);	
	font-family: 'Passion One', cursive;
	left: 0;
	right: 0;
}
