@charset "utf-8";
/* CSS Document */

#paavalikko-resp{display:none !important;}
iframe{max-width: 100%;}


.center-col img {
	border: 0;
	max-width: 100%;
	height: auto;
}
	
	/*Desktop*/
@media screen and (max-width:1920px){
	.center-col {width: 1400px;}	
}

/*Laptob*/
@media screen and (max-width:1440px){
	.center-col {width: 1200px;}	
	ul.topnavi li a {padding: 15px 30px;}
  .ekanavi ul.topnavi li a{padding: 20px 30px;}
	ul.fullnavi{font-size:95%;}
	.etusivupk {
    padding: 150px 0;
}
.alavalikkopaikka {
  min-height: 169px;
}
/*Responsive form*/
.center-col form {
    width: auto !important;
}

.center-col form input {
border: 1px solid #cecece;
border-radius: 4px;
height: auto;
margin-bottom: 0;
font-size: 16px;
padding: 5px 1%;
line-height: 22px;
float: left;
}
.center-col form textarea {
    border: 1px solid #cecece;
    border-radius: 4px;
    margin-bottom: 10px;
    width: 96% !important;
    padding:5px 1%;
}
.center-col form input[type="radio"] {
    height: auto !important;
    width: auto !important;
}
.center-col form input[type="text"] {
    height: 25px !important;
    width: 96% !important;
}

.center-col input.lomakenappi_submit {

    width: 96% !important;

} 

.center-col form input.pmvk {
    width: auto !important; 
    border-radius: 3px;
}


/*mobiili*/
.center-col form td {
    padding: 0 0 5%;
    width: 95% !important;
    font-size: 16px;
    float: left;
}  
  
  
	
}


/*Laptob, Tablets*/
@media screen and (max-width:1280px){
	
	.center-col {width: 1000px;}
	.logo img {width: 90%; margin: 0 auto;}
  
		ul.topnavi li a{padding: 15px 18px;}
  
  .ekanavi ul.topnavi li a{padding:15px 18px;}
	.kielinavi {
    margin-top: 0;
}

	
ul.fullnavi {
    font-size: 90%;
    float: left;
    width: 100%;
}
  
	ul.fullnavi li {width: 14%;}
	
	ul.fullnavi li:nth-of-type(3),
	ul.fullnavi li:nth-of-type(4),
	ul.fullnavi li:last-of-type{
		width: 22%;
	}
	
		.etusivupk {
    padding: 130px 0;
 
}
  
 .alavalikkopaikka {
    min-height: 130px;
  }
  
	
	
.etusivupk p{font-size:18px;}
	
}


/*Tablets*/
@media screen and (max-width:1024px){
	
	body{font-size:88%;}
	
	.center-col {width: 760px;}	

	
	.etusivupk {padding: 100px 0;}
	
	footer.vihrea { padding:0;}
	
p,
.etusivupk p,
.sisalto li,
.sisalto ul{
	font-size: 16px;
	line-height: 22px;
}
	
.palvelu, footer .center-col > div {
    padding-right: 3.1%;
    padding-left: 3.1%;
    padding-top: 50px;
    padding-bottom: 50px;
	text-align:center;

	}
	
a.webiolinkkipainike {
    padding: 15px 20px;
	}
	
	
footer > div div:last-of-type{
	padding-right: 0;
	padding-left: 0;
	width:100%;
	padding-top:0;
}
	
footer .center-col > div {
    padding-right: 2%;
    padding-left: 2%;
    padding-top: 50px;
    padding-bottom: 50px;
    width: 46%;
}
	
	
.alasivuotsikko {
    background-size: cover;
}	
  
  
  .col-16.right.kielinavi {
    position: absolute;
    top: -55px;
    right: 0;
    width: 30%;
}
  
  
.kielinavi .dd .ddTitle {
    padding: 10px 5%;
}  
  
.col-16.right.kielinavi { top: -45px;}  
 
  
  ul.topnavi li:last-of-type {
    float: left;
}
  
header .vihrea {
    margin-top: 30px;
}  
  
  
.ekanavi li:nth-of-type(3) {
    width: 40%;
}
  
    .harmaa {
    padding: 50px 5%;
    margin: 0;
    width: 90%;
  }
  
	.harmaa > div{
		width:100%;
	}	
	
	.sivupalkki{margin-top:35px;}
	
  
  .kuvagalleriaselain, .kuvagalleriaselain > div {
    width: 70% !important;
}
  
  
/* Webio Asettelumallidivit */
  .col-left, .col-right, .col-3, .col-3-center, .col-4 {
width:100%;
padding:3% 0;
}

table {
   display:block;
  width:100%;
  height:auto;
}


 .col-3-center {margin: 0;}  
  
	
  
	header .vihrea,
	header nav,
  .col-16.right.kielinavi,
    .alavalikkopaikka,
  .linkkipalkki_bottom{display:none;}
  

  
  	#paavalikko-resp{display:block !important;}	
	
	.logo{position:relative; z-index:91;}
	
	
	header {
    padding: 30px 0;
  }
  
  
  
	/* #######################################################################

	meanMenu
	--------
	
	To be used with jquery.meanmenu.js by Chris Wharton (http://www.meanthemes.com/plugins/meanmenu/)

####################################################################### */




/* hide the link until viewport size is reached */
a.meanmenu-reveal {
	display: none;
}

#paavalikko-resp {
    display: block !important;
    position: absolute;
    top: 0;
    z-index: 9;
    width: 100%;
}
  
  
#resp-mobinavi-langmenu a {
    width: 14.8%;
    float: left;
    border-right: 1px solid #80D7D1;
    text-align: center;
}

  #resp-mobinavi-langmenu a:last-of-type{border-right:none;}
	
/*COLORS*/
	
.mean-container a.meanmenu-reveal::after,
.mean-container a.meanmenu-reveal{color:#163D96;}
.mean-container a.meanmenu-reveal span{background: #163D96;} 

.mean-container .mean-nav{background: #00AFA2;}	



/* when under viewport size, .mean-container is added to body */
.mean-container .mean-bar {
	float: left;
	width: 100%;
	position: relative;
	padding: 10px 0px;
min-height: 60px;
	z-index: 90;
}
.mean-container a.meanmenu-reveal {

/*		width: 40px;
	height: 42px;*/
	width: 40px;
	height: 22px;
	padding: 10px 0px 11px;
	position: absolute;
	top: 10px;
	cursor: pointer;
	text-decoration: none;
	font-size: 16px;
	text-indent: -9999em;
	line-height: 22px;
	display: block;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: 700;
	margin-right:5%;
}


.mean-container a.meanmenu-reveal::after { 
    content: "Valikko";
		font-size:10px;
		text-align:center;
}

.mean-container a.meanmenu-reveal.meanclose::after{
content:none;

}

.mean-container a.meanmenu-reveal span {
    display: block;
    height: 4px;
    margin-top: 5px;
    border-radius: 3px;
}
.mean-container .mean-nav {
	float: left;
	width: 100%;
margin-top: 69px;
}
.mean-container .mean-nav ul {
	padding: 0;
	margin: 0;
	width: 100%;
	list-style-type: none;
}
.mean-container .mean-nav ul li {
	position: relative;
	float: left;
	width: 100%;
}
.mean-container .mean-nav ul li a {
	display: block;
	float: left;
	width: 90%;
	padding: 1em 5%;
	margin: 0;
	text-align: left;
	color: #fff;
	font-size: 14px;
	border-bottom: 1px solid #383838;
	border-bottom: 1px solid rgba(255,255,255,0.5);
	text-decoration: none;
	text-transform: uppercase;
}
.mean-container .mean-nav ul li li a {
	width: 80%;
	padding: 1em 10%;
	border-bottom: 1px solid #f1f1f1;
	border-bottom: 1px solid rgba(255,255,255,0.25);
	opacity: 0.75;
	text-shadow: none !important;
	visibility: visible;
}
.mean-container .mean-nav ul li.mean-last a {
	border-bottom: none;
	margin-bottom: 0;
}
.mean-container .mean-nav ul li li li a {
	width: 70%;
	padding: 1em 15%;
}
.mean-container .mean-nav ul li li li li a {
	width: 60%;
	padding: 1em 20%;
}
.mean-container .mean-nav ul li li li li li a {
	width: 50%;
	padding: 1em 25%;
}
.mean-container .mean-nav ul li a:hover {
	background: #252525;
	background: rgba(255,255,255,0.1);
}
.mean-container .mean-nav ul li a.mean-expand {
	width: 26px;
	height: 26px;
	border: none !important;
	padding: 12px !important;
	text-align: center;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 2;
	font-weight: 700;
}
.mean-container .mean-nav ul li a.mean-expand:hover {
	background: none;
}
.mean-container .mean-push {
	float: left;
	width: 100%;
	padding: 0;
	margin: 0;
	clear: both;
}
.mean-nav .wrapper {
	width: 100%;
	padding: 0;
	margin: 0;
}
.mean-currentpage{display:none;}
  
}


/*Tablets, mobilephones -horizontal*/
@media screen and (max-width:765px){
	
		body{font-size:70%;}

	.center-col {width: 94%;}
		
	
.etusivupk {
    padding: 50px 5%;
	width:90%;
 
}
	
	.button{background-image:none; background-color:#00B0A3; padding:20px;}

footer .center-col > div {
	padding:50px 0 0;
    width: 100%;
}
	
		
#semiowebio{
	padding:50px 0;
	float:left;
}
	
.flex-container{display:block;}
	
.palvelu{
    padding-right: 2%;
    padding-left: 2%;
    width: 96%;
}
	
	
	.alasivuotsikko {
    padding: 55px 0;
}
	



  
  
  
  

  
}

/*mobilephones -horizontal*/
@media screen and (max-width:640px){
	
	
}

/*mobilephones -horizontal*/
@media screen and (max-width:568px){
	
	
		.logo {
    width: 50%;
}
	
	
	.alasivuotsikko {
    padding: 35px 0;
}
	

	.harmaa {
    padding: 35px 5%;
    width: 90%;
    margin: 0;
}
	
}



/*mobilephones*/
@media screen and (max-width:480px){

body {
    font-size: 60%;
}
	
  
  #resp-mobinavi-langmenu a {
    width: 14.6%;
}
  
}


/*mobilephones*/
@media screen and (max-width:375px){

  .logo {
    width: 80%;
}
  
  .kuvagalleriaselain, .kuvagalleriaselain > div {
    width: 90% !important;
}
  
}



/*mobilephones*/
@media screen and (max-width:320px){
	
}