@import url(//fonts.googleapis.com/css?family=Open+Sans:400,300,600);

html {
	background-color: #404149;
	padding: 0 !important;
	margin: 0;
    overflow-y: scroll;
	}

body {
	padding: 0 !important;
	margin: 0;
	background-color: #fff;
	min-width: 320px;	
	}

:focus { outline: none; }

.page-content ul{
	list-style-type: square;
}

.alanavi {
	margin-top: -20px;
	margin-left: 0px;
}

.alanavi a {
	font-family: 'Open Sans', sans-serif;
	font-weight: normal;
	font-size: 14px;
}

.top-bar {
	background: transparent url('/media/layout/images/top-shadow.gif') bottom repeat-x;	
	}
	
.top-bar .column {
	padding-top: 10px;
	padding-bottom: 17px;
	}

.secondary-nav {
	float: left;	
	}

.secondary-nav a {
	font-weight: normal;
	color: #404149;
	font-size: 14px;
	line-height: 23px;
	display: block;
	clear: both;
	float: left;
	}
		
.text-right {
	text-align: right;	
	}
	
.tertiary-nav {
	position: absolute;
	right: 12px;
	bottom: 22px;
	}	
		
.tertiary-nav,
.tertiary-nav a {
	float: right;
	}

.tertiary-nav a {
	display: block;
	text-align: right;
	clear: both;
	}
	
.tertiary-nav a:first-child {
	margin-bottom: 10px;	
	}
	
.tertiary-nav a:first-child img {
	width: 108px;	
	}

.tertiary-nav img {
	width: 135px;	
	}
	
.logo-bar {
	padding-top: 12px;
	padding-bottom: 12px;
	text-align: center;
	padding-left: 10px;
	padding-right: 10px;
	}
	
header {
	height: 295px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	}
	
.logo {
	margin: 0 10px;
	display: block;
	}
	
.main-nav {
	position: relative;
	width: 100%;
	z-index: 2;
	top: -7px;
	left: 0;
	}
		
.main-nav ul {
	list-style: none;
	margin: 0;
	padding: 8px 0 0 0;
	box-shadow: 0 0 8px rgba(0,0,0,.3);
	background: #ff3d31;
	display: none;
	}
	
.main-nav ul ul {
	box-shadow: none;
	background: #fff url('../images/menu-shadow.png') top repeat-x;
	padding: 10px 5px;
	display: none;
	}
	
.main-nav .level1.current ul {
	display: block;	
	}
	
.main-nav .level1 a {
	display: block;
	background: #ff3d31;
	color: #fff;
	line-height: 35px;
	padding: 0 15px;
	border-bottom: 1px solid #e68099;
	position: relative;
	font-size: 14px;
	}

.main-nav .level1.hasSubItems a:after,
.main-nav .level1.hasSubItems.current.current-closed a:after {
	position: absolute;
	content: '+';
	font-size: 20px;
	right: 15px;
	bottom: 0;
	}
				
.main-nav .level1.open > div > a,
.main-nav .level1.current > div > a {
	background-color: #404149;	
	}

.main-nav .level1.current-closed > div > a {
	background-color: #cc0033;
	border-bottom: 1px solid #e68099;
	}
	
.main-nav .level1.current.first > div > a {
	background-color: #ff3d31;
	}
		
.main-nav .level1.open a:after,
.main-nav .level1.hasSubItems.current a:after {
	content: '−';	
	}
	
.main-nav .level2 a {
	background: #fff;
	color: #404149;
	font-weight: normal;
	font-size: 12px;
	padding: 0 10px;
	}
	
.main-nav .level2 a,
.main-nav .level1.open a,
.main-nav .level1.last a {
	border-bottom: none;	
	}
	
.main-nav .level2 a:after {
	display: none;
	}
	
.main-nav .level2 a:hover,
.main-nav .level2.current a {
	background-color: #ececec;	
	}
	
.menu-bar {
	margin-top: 3px;
	background: transparent url('../images/menu-shadow.png') center 39px repeat-x;
	height: 40px;
	padding-bottom: 7px;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	position: relative;
	z-index: 4;
	}
	
.toggle-menu {
	width: 100%;
	height: 40px;
	display: block;
	float: left;
	background: #ff3d31 url('../images/icon-menu.png') 12px no-repeat;
	padding-left: 45px;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	line-height: 40px;
	}
	
.toggle-menu:hover {
	/*background-color: #ff3d31;*/
	color: #fff;
	}

.toggle-menu span {
	padding-left: 12px;
	background: transparent url('../images/red-link-arrow.png') left no-repeat;
	}

.page-content {
	padding-top: 15px;	
	}
	
.padder {
	padding-left: 5px;
	padding-right: 5px;
	}
				
footer {
	margin: 20px 0 0 0;
	color: #fff;
	background: #404149; 
	}
	
footer .padder {
	overflow: hidden;
	padding: 25px 0 25px 0;
	}
		
footer h2 {
	font-size: 26px;
	margin-bottom: 20px;
	}
	
footer h3 {
	font-size: 18px;
	margin-bottom: 5px;
	font-weight: 300;
	}
	
footer p {
	font-size: 13px;
	line-height: 20px;
	}
			
.separator {
	clear: both;
	width: 100%;
	}
	
.border {
	height: 2px;
	margin: 0 10px 20px 10px;
	clear: both;
	background: transparent url('../images/border-bg.gif') left bottom repeat-x;
	}
	
.contact {
	margin-bottom: 30px;
	float: left;
	width: 100%;
	}	

.contact .img-wrapper {
	float: left;
	width: 130px;
	height: 160px;
	margin-right: 15px;
	-webkit-box-shadow: 0 0 8px rgba(156,154,153,.55);
	box-shadow: 0 0 8px rgba(156,154,153,.55);
	}
	
.contact .text {
	overflow: hidden;
	word-break: break-word;
	}
	
.contact h3 {
	font-size: 16px;
	line-height: 22px;
	margin-bottom: 7px;
	}
	
.contact p {
	font-size: 12px;
	line-height: 18px;
	margin: 0;
	}
	
.white-box {
	background: transparent url('../images/border-bg.gif') top repeat-x;
	padding-top: 25px;
	margin-top: 15px;
	}
	
.white-box_vo {
	background: transparent url('../images/border-bg.gif') top repeat-x;
	padding-top: 25px;
	margin-top: 15px;
	}
	
.white-box_vo_ilmantaustaa {
	background: transparent url('../images/border-bg.gif') top repeat-x;
	padding-top: 25px;
	margin-top: 15px;
	}
	
.white-box.modded {
	font-size: 14px;
	padding-bottom: 15px;
	}
	
.white-box.modded .iso-otsikko {
	font-size: 31px;
	}
	
.white-box.modded ul {
	margin: 0;
	padding: 0 0 0 20px;
	}
	
.white-box.modded li {
	padding-bottom: 15px;	
	}
	
.white-box.modded strong {
	font-size: 16px;
	}
	
footer .f p {
	background: transparent url('../images/footer-border.gif') left bottom repeat-x;
	padding-bottom: 25px;
	}
	
.hide-from-small,
.hide-from-large,
.hide-to-small {
	display: block;
	}

.hide-to-large,
.feedback-link-desktop {
	display: none;
	}

.formHolder {
	width: 100%;	
	}
	
.formHolder td {
	padding-bottom: 5px;
	}

.formLabelHolder {
	display: block;
	margin-bottom: 5px;
	}
	
.formCheckboxLabelHolder {
	display: inline-block;
	padding-bottom: 5px;
	}
		
.formSubmit {
	border: none;
	margin: 0;
	}
	
.formTextinput, .formEmailinput, .formTelinput, textarea {
	width: 100%;
	line-height: 35px;
	-webkit-box-shadow: inset 0 0 2px rgba(0,0,0,.2);
	box-shadow: inset 0 0 2px rgba(0,0,0,.2);
	height: 35px;
	border: 1px solid #d4d4d4;
	}
	
textarea {
	height: 200px;	
	}
	
.formRadioLabelHolder {
	margin-right: 10px;
	}
	
.formSubmit {
	display: inline-block;
	background: #ff3d31 url('/media/layout/images/red-link-arrow.png') right center no-repeat;
	color: #fff;
	padding: 6px 32px 6px 20px;
	border-radius: 4px;
	}
	
.formSubmit:hover {
	background-color: #e90f0f;	
	}	
	
.sitemap ul {
	padding: 0 0 0 22px;
	margin: 0 0 30px 0;
	font-size: 14px;
	}
	
.sitemap li {
	padding-bottom: 5px;
	word-break: break-word;
	}
	
.sitemap .border {
	margin: 0 9px 25px 0;
	}
	
.ie8 .main-nav ul {
	border: 1px solid #ddd;	
	}
		
.tabletkuva {
	display: none;
	}
	
.page-1 header {
	background-position: -285px center;
	}
	
.page-2 header {
	background-position: -112px center;
	}
	
.page-3 header {
	background-position: -170px center;
	}
	
.page-5 header {
	background-position: right center;	
	}

.category-title {
	clear: both;
	margin-bottom: 0;
	text-transform: uppercase;
}

.single-column-seconds + .single-column {
	clear: both;
}

.single-column-seconds.medium-4 + .single-column {
	clear: none;
}

.link-to-mobiles {
	clear: both;
	float: left;
	margin-top: 30px;
	margin-bottom: 30px;
}

@media only screen and (min-width: 1025px) {

	.single-column-seconds + .single-column {
		clear: none;
	}
	
	.single-column-thirds + .single-column {
		clear: both;
	}

}

@media only screen and (min-width: 400px) {
	
	.tabletkuva {
		display: inline-block;	
		}
		
	.puhelin-ja-tyopoytakuva {
		display: none;	
		}
		
	.page-1 header {
		background-position: -185px center;
		}
		
	.page-3 header  {
		background-position: center center;
		}
		
	}		
		
@media only screen and (min-width: 640px) {

	
	.white-box.modded {
		background-image: none;	
		}
		
	.white-box.modded ul {
		padding-left: 10px;
		}
	
	.page-1 header, .page-2 header {
		background-position: center center;
		}
				
	.logo {
		margin: 0;
		display: inline;
		}
	
	.border {
		margin: 0 20px 25px 20px;
		}
		
	.contact .img-wrapper {
		margin-right: 25px;	
		}
			
	.feedback-link-desktop {
		position: absolute;
		left: 10px;
		bottom: 25px;
		display: inline-block;
		}

	.feedback-link-mobile {
		display: none;	
		}

	.row {
		max-width: 680px;
		}
	
	footer .f {
		float: left;
		width: 26%;
		padding-right: 15px;
		}
	
	footer .s {
		padding-left: 30px;
		float: left;
		width: 74%;
		background: transparent url('../images/footer-bg.gif') left top repeat-y;
		}
		
	footer .f p {
		background: none;
		padding: 0 0 20px 0;
		}
	
	.hide-to-small,
	.hide-to-large,
	.hide-from-small {
		display: block;
		}
		
	.hide-from-large {
		display: none;
		}
		
	.secondary-nav {
		float: none;
		text-align: center;
		}
		
	.secondary-nav a {
		background: transparent url('/media/layout/images/secondary-nav.gif') left center no-repeat;
		padding: 0 16px;
		float: none;
		clear: none;
		display: inline;
		font-size: 12px;
		}
	
	.secondary-nav a:first-child {
		background: none;	
		}	
	
	.logo-bar div a {
		float: right;
		display: block;
		margin-top: 7px;
		margin-left: 15px;
		}
		
	.logo-bar div a:first-child img {
		width: 135px;	
		}
		
	.logo-bar div img {
		width: 108px;	
		}	
		
	.logo-bar > a:first-child {
		float: left;
		}
		
	.white-box {
		padding: 20px 25px 34px 25px;
		margin-top: 17px;
		-webkit-box-shadow: 0 0 8px rgba(156,154,153,.55);
		box-shadow: 0 0 8px rgba(156,154,153,.55);
		position: relative;
		min-height: 310px;
		background: transparent url('../images/white-box-bg.gif') right bottom no-repeat;
		margin-bottom: 25px;
		}
		
		.white-box_vo {
		padding: 20px 25px 34px 15px;
		margin-top: 17px;
		-webkit-box-shadow: 0 0 8px rgba(156,154,153,.55);
		box-shadow: 0 0 8px rgba(156,154,153,.55);
		position: relative;
		min-height: 310px;
		background: transparent url('../images/white-box-bg.gif') right bottom no-repeat;
		margin-bottom: 25px;
		}
		
		.white-box_vo_ilmantaustaa {
		padding: 20px 25px 34px 15px;
		margin-top: 17px;
		-webkit-box-shadow: 0 0 8px rgba(156,154,153,.55);
		box-shadow: 0 0 8px rgba(156,154,153,.55);
		position: relative;
		min-height: 310px;
		margin-bottom: 25px;
		max-width: 450px;
		}
		
	.ie8 .white-box, .ie8 .contact img {
		border: 1px solid #ddd;
		}
	
	.white-box .punainen-linkki {
		position: absolute;
		right: 5px;
		bottom: 5px;	
		}
		
	footer h2 {
		font-size: 28px;
		}
	
	footer h3 {
		font-size: 18px;
		}
	
}
			
@media only screen and (min-width: 860px) {

	.tabletkuva {
		display: none;	
		}
		
	.puhelin-ja-tyopoytakuva {
		display: inline-block;	
		}	
	
	.punainen-linkkitaulukko {
		float: right;
		}
	
	.sitemap .border {
		display: none;
		}
			
	.logo-bar div a {
		margin-left: 19px;	
		}
	
	.logo-bar div a:first-child img,
	.logo-bar div img {
		width: auto;	
		}
	
	.one-three,
	.two-three,
	.three-three {
		float: left;
		}
		
	.one-three {
		padding-left: 0;
		width: 25%;
		}
		
	.two-three {
		width: 37%;
		padding-left: 15px;
		}
	
	.three-three {
		padding-left: 15px;
		width: 37%;
		}
		
	.one-rest {
		float: left;
		padding-left: 10px;
		width: 74%;
		}
				
	.one {
		float: left;
		width: 26%;
		padding-left: 0;
		}
	
		
	footer .f {
		width: 18%;
		}
	
	footer .s {
		width: 82%;
		}
		
	header {
		height: 500px;
		}
	
	.secondary-nav {
		text-align: right;
		}
		
	.secondary-nav .last {
		padding-right: 0;	
		}
	
	.row {
 		max-width: 100%;
		}

	.border {
		margin: 0 15px 25px 15px;
		}

	.menu-bar {
		display: none;
		}			
			
	.padder, footer .padder {
		padding-left: 30px;
		padding-right: 30px;
		}
		
	.small-menu {
		display: none;
		}
		
	.main-nav .level1.current.first > div > a,
	.main-nav .level1 > div > a:hover {
		background-color: #404149;	
		}
		
	.main-nav {
		margin-top: 3px;
		padding: 0 0 7px 0;
		background: #e90f0f url('/media/layout/images/menu-shadow.gif') bottom repeat-x;
		position: static;
		}
		
	.main-nav.full-menu {
		display: table;
		width: 100%;
		}
		
	.main-nav ul {
		margin: 0;
		padding: 0;
		display: table-row;
		background: none;
		box-shadow: none;
		}
		
	.main-nav > ul > li {
		display: table-cell;
		text-align: center;
		position: relative;
		}
	
	.main-nav a {
		display: block;
		color: #fff;
		}
		
	.ie .main-nav a {
		padding: 0 10px;
		}
	
	.main-nav li > div {
		position: relative;
		}
		
	.main-nav .level1 > div > a {
		font-size: 14px;
		line-height: 35px;
		font-weight: 600;
		padding: 0;
		border: none;
		background: none;
		z-index: 5;
		}
		
	.main-nav .level1.first > div > a {
		padding-left: 15px;
		padding-right: 10px;
		}	
		
	.main-nav .level1.last > div > a {
		padding-left: 10px;
		padding-right: 15px;
		}
		
	.main-nav .level1.hasSubItems a:after,
	.main-nav .level1.current ul {
		display: none;	
		}
		
	.main-nav .level1 > div > a.over {
		background: #ff3d31 !important;
		}
		
	.ie8 .main-nav li > div > a {
		font-size: 13px;	
		}
		
	.main-nav li:hover > div > a,
	.main-nav .level1.current > div > a {
		background: #404149;
		}
	
	.main-nav .hasSubItems > div:after {
		z-index: 6;
		display: none;
		position: absolute;
		content: '';
		width: 24px;
		height: 13px;
		left: 50%;
		margin-left: -12px;
		top: 100%;
		background: transparent url('../images/current-arrow.png') no-repeat;
		}
		
	.main-nav .hasSubItems:hover ul,
	.main-nav .hasSubItems:hover > div:after {
		display: block;	
		}
		
	.main-nav ul ul {
		background: #fff url('../images/sub-menu-bg.png') top repeat-x;
		position: absolute;
		z-index: 2;
		top: 100%;
		left: auto;
		list-style: none;
		margin: 0;
		padding: 15px 5px;
		box-shadow: 0 0 5px rgba(0,0,0,.4);
		}
		
	.main-nav ul ul li {
		text-align: left;
		}
		
	.main-nav li.level2 a {
		padding: 0 10px;
		line-height: 30px;
		white-space: nowrap;
		font-size: 12px;
		font-weight: 400;
		}
		
	.ie8 .main-nav ul ul {
		border: 1px solid #ccc;	
		}
		
	.page-content {
		padding-top: 20px;	
		}
		
	.contact p {
		font-size: 13px;
		}
		
	.contact-us-img {
		position: absolute;
		right: 0;
		top: 0;
		}
		
}

.spring-wrapper img {
	position: absolute;
    z-index: -1;
	}
	
	
img.category-icon{
	max-height: 80px;
	margin: 0 20px;
}	

/*
.overflowScroll{
overflow-x:scroll;
-webkit-overflow-scrolling: touch;
}*/