.div {	border:1px red solid; 	}

body {	margin:0;  word-spacing:0.1em;  letter-spacing:0.07em;  
font-family: Arial, Helvetica, Tahoma, "Liberation Sans", "sans-serif";   }
.kursiivifonttienvarasto { 	font-family:"Abyssinica SIL", "Liberation Serif", FreeSerif, Serif;	 }

td { 	padding:0;  vertical-align:top;  }
table { 	border-collapse:collapse;  empty-cells:show;}
img {	border:0;  display:block; }
* {	box-sizing:border-box; 	}
html {	scroll-behavior:smooth;	}



.perusvari	{	background-color:hsl(207,100%,31%);	color:rgb(0,87,156); 	}
.piristevihree	{	background-color:hsl(111,80%,60%);	}


h1 {		padding:66px 3% 0 0; margin:0;  font-size:222%;  font-weight:normal;  font-family: 'Comfortaa', cursive;		     }
h2 {		padding:0;  margin:33px 0 0 0;  font-size:144%; 		  }
h3 {		padding:0;  margin:22px 0 0 0;  font-size:122%;     }
p {		padding:22px 0 0 0;  margin:0;  font-size:111%;  line-height:155%;   }
.pamp {		padding:0px 0px 0px 33px;  margin:5px 0 5px 1%;   font-size:111%;  background-image:url(kuvat/pallomusta.png);  background-size:0.4em;  background-position:0 0.56em;  background-repeat:no-repeat;  line-height:155%;   }

.apuotsikko {	padding-top:33px; 	}
.leveeotsikko {	text-align:center; font-size:222%;  padding:77px 3% 0 3%;  margin:0 auto; 
		border-width: 0 0 4px 0;  border-color:hsl(111,80%,60%);  border-style:solid;
		font-weight:bold;  word-spacing:0.14em;  letter-spacing:0.07em;  display:table;  font-family: 'Comfortaa', cursive;		 }

.leveeotsikkoylin {	margin-top:0;     }
.alateksti {	background-color:hsl(0,0%,100%); padding:11px 5%;  margin:0;  font-size:94%;  line-height:144%;   }



/*    alueet    .......................................................................................................................................................        */

.sivu {		width:100%;  display:table; 	}
.aluelevee {	width:100%;  display:table; 	}
.aluevakio {	padding:11px 9% 99px 9%;  background-color:hsl(0,0%,100%);  width:100%;  display:table;  }

.alueimage {	height:555px; padding:0 0 33px 0;  width:100%;  position:relative; 
		background-image:url(kuvat/imagekuva.jpg); background-size:1920px;  
		background-position:50% 40%;  background-repeat:no-repeat;  display:table;    }
.taustavaalea {	background-color:hsla(207,100%,31%, 0.2);  	}
.taustahaalea {	background-color:hsla(207,100%,31%, 0.05);  	}
.taustavalkea {	background-color:hsl(0,0%,100%);  	}


.alueingressi {	padding:66px 9% 77px 9%;  width:100%;  display:table;   	}
.ingressibxv  {	width:55%;   padding-bottom:11px; float:left;    }
.ingressiteksti {	padding:0;   margin:22px 0 0px 0px;  font-size:177%;  zzcolor:hsl(207,100%,31%);   line-height:166%;    }
.ingressibxo  {	width:35%;   margin:11px 0 0 0;  float:right; background-color:hsla(0,0%,100%, 0.2);   }
.ingressislogan {	padding:33px 7%;   margin:0px;  font-size:222%;  line-height:166%;  
		color:hsl(111,80%,60%);  text-shadow:2px 1px hsl(0,0%,55%);  text-align:center; 
		font-style:italic;   zzfont-weight:bold;  font-family: 'EB Garamond', serif;  }




/*    logo   .......................................................................................................................................................        */

.logolohko { 	width:100%;  margin:22px auto 0 auto;  background:hsla(0,100%,100%, 0.6);  display:table;   }
.logokuva {	width:90%; max-width:444px; margin:44px auto 0 auto;    }
.logoteksti {	text-align:center;  padding:11px 0 33px 0;  font-size:188%;  color:hsl(207,100%,31%);  word-spacing:0.1em;  letter-spacing:0.09em;      }
.haiveviiva { 	height:1px;  width:77%;  margin:66px auto 0 auto;  background:linear-gradient( 90deg, transparent , hsl(0,0%,0%) , transparent );   }
.imageslogan {	width:100%;  margin:66px 0 0 0;  padding:0 66px; font-size:188%;  text-align:center;    
		text-shadow:1px 1px hsl(0,0,0); color:hsl(0, 100%, 100%);  word-spacing:0.2em;  letter-spacing:0.1em;   }




/*    navigointi    .......................................................................................................................................................        */

.aluenavi {	position:absolute;  top:455px;  width:100%;  font-size:1.5em;  height:3em;   display:table;   }
nav {		width:44em;  margin-left:calc(50% - 22em);  z-index: 111;  display:table;     }
ul { 		list-style-type:none;  margin:0;  padding:0;  position:absolute;    }
li { 		display:inline-block;  float:left;	 }			
li a { 		width:10em;  min-width:9em;  margin:0 0.5em; border-radius:1.5em;  
		height:3em;  line-height:3em; color:hsl(0,0%,100%);  
		background:linear-gradient( hsl(207,100%,21%) , hsl(207,100%,41%) );
		border-width:0;  border-color:hsl(36,100%,50%);  border-style:solid; 
		text-decoration:none;  text-align:center;  display:block;     }	
li:hover a { 	background:hsl(207,100%,41%);  color:hsl(0,0%,100%);  }								
li ul { 		display: none; 	}											
ul li a:hover + .hidden, .hidden:hover { 	display: block; }
							
.nnvlink { 			display:none;	 }										
input[type=checkbox]{     		display:none;    -webkit-appearance:none; }				
input[type=checkbox]:checked ~ #menu{  	display:block;	 }
	

.nnkele {	 	bottom:4px;  right:4px;  position:fixed;   }
.nnk:link { 	background-image:url(kuvat/nnkoy255.png);   }
.nnk:visited { 	background-image:url(kuvat/nnkoy255.png);     }
.nnk:hover { 	background-image:url(kuvat/nnkoy255.png);  background-color:hsl(207,100%,60%);   }
.nnk {	 	background-color:hsl(207,100%,31%);    
		height:60px;  width:60px;  background-size:30px;  border-radius:50%;  
		background-repeat:no-repeat;  background-position:50% 50%;  display:block;  text-decoration:none;  }



.tekstilinkki:link {	color:hsl(207,100%,31%);   text-decoration:underline; }  
.tekstilinkki:visited {	color:hsl(207,100%,31%); text-decoration:underline; }
.tekstilinkki:hover {	color:hsl(300,80%,20%);   text-decoration:none; }




/*    boxit    .......................................................................................................................................................        */




.boxialue2 {	margin:33px 0 0 0; width:100%;  display:flex; justify-content:space-between;  flex-wrap:wrap;	}
.boxi2 {		width:45%;   margin:33px 0;     }
.boxikuva2 {	width:100%;      	}
.pamp2 {	padding:0px 0px 0px 33px;  margin:5px 0 5px 1%;   font-size:111%;  background-image:url(kuvat/pallomusta.png);  background-size:0.4em;  background-position:0 0.56em;  background-repeat:no-repeat;  line-height:155%;   }


.kuultootsikko {	position:absolute;  bottom:33px;  width:100%;  text-align:center;  padding:1em 2em; margin:0;  font-size:144%;  background-color:hsl(0,0%,100%, 0.7); 	}
.taustakuva21 {	background-image:url(kuvat/taustakuva21.jpg);  height:444px;  background-position:50% 50%;  width:100%;  margin-bottom:33px;  position:relative;  background-size:cover; }
.taustakuva22 {	background-image:url(kuvat/taustakuva22.jpg);  height:444px;  background-position:50% 50%;  width:100%;  margin-bottom:33px;  position:relative;  background-size:cover; }


.boxialue3 {	margin:66px 0 0 0;  width:100%;  display:flex; justify-content:space-between; flex-wrap:wrap;  }
.boxi3 {		width:30%;        }
.boxikuva3 {	width:100%;     }	
.boxiotsikko3 {	margin:22px 0 0 0;  font-size:122%;     }
.pamp3 {		padding:0px 0px 0px 22px;  margin:4px 0 4px 0;   font-size:100%;  background-image:url(kuvat/pallomusta.png);  background-size:0.3em;  background-position:0 0.6em;  background-repeat:no-repeat;  line-height:155%;   }
.kuultoalue {	position:relative; }
.kuultoh3	 {  	font-size:144%;  margin:0;  padding:0.7em 2em;  position:absolute;  bottom:40px;
		color:hsl(0,100%,100%);  background-color:hsla(207,100%,31%, 0.7);  width:100%;  text-align:center;  font-weight:normal;	}

.boxialue4 {	margin:66px 0 0 0;  width:100%;  display:flex; justify-content:space-between; flex-wrap:wrap; 	}
.boxi4 {		width:20%; margin:22px 0;        }
.boxikuva4 {	border-radius:50%;  width:100%;    }




/*    yhteydet    .......................................................................................................................................................        */

.alueyhteys {	padding:66px 7%;  background-color:hsla(207,100%,31%, 0.2);  display:flex;  justify-content:space-between;  flex-wrap:wrap; 	}

.yhteystekstilohko {	width:22em;  margin:0;  padding:0 3% 0 0%;  display:table;    }
.yhteysboxi1 {	 	}
.yhteysboxi2 {	margin-top:22px;  	}
.yhteysotsikko {	color:hsl(0,0%,10%);  font-size:144%;  margin:0;  padding:11px 0 0 0;  color:rgb(0,87,156);  word-spacing:0.14em;  letter-spacing:0.07em;    }
.yhteystieto {	color:hsl(0,0%,10%);  font-size:111%;  margin:0;  padding:11px 0 0 0;   word-spacing:0.14em;  letter-spacing:0.07em;    }
.ytunnus {	color:hsl(0,0%,44%);  font-size:99%;  margin:0;  padding:33px 0 0 0;   word-spacing:0.14em;  letter-spacing:0.07em;    }
.yhteysrako {	margin-top:22px;	}

.yhteyskartta {	width:calc(100% - 22em);  margin:0 0 0 0; padding:22px 33px; background-image:url(kuvat/kuvayhteys.jpg);  background-position:50% 66%;  background-size:cover;     }
.karttaele {	width:300px; float:right; 	}
.iframeele {	    }
.karttateksti {	padding:11px 22px;  	}

.aluealin {	padding:33px 66px;  width:100%;  background-color:hsl(207,100%,31%);     display:table;  }
.alalause {	text-align:center;  font-size:133%;  font-style:italic;  color:hsl(0,100%,100%);     }


/*    harvinaiset    .......................................................................................................................................................        */

.pilarirakonolla {		}
.pilarirakopieni {		}
.pilarirakoiso {		}





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

.aluevakio {	padding:11px 5% 77px 5%;   }

.alueimage {	height:444px;  }
.imageslogan {	width:100%;  margin:55px 0 0 0;  padding:0 66px; text-align:center; float:none;   }

.alueingressi {	padding:77px 3% 88px 3%;  width:100%;  display:table;   	}
.ingressibxv  {	width:100%;   float:none;    }
.ingressiteksti {	   }
.ingressibxo {	width:100%;  float:none;    }

.logolohko { 	margin:77px auto 0 auto;     }



.aluenavi {	background-color:transparent; width:444px;  margin:0; position:absolute;  top:11px;  right:4px;      }
nav {		width:20em; float:right;   }
ul { 		width:20em;  position:static;  display:none;	 }			
ul li, li a {  	width:100%;  box-sizing:content-box;   }			
li a { 		padding:1em 0px;  margin:3px 0;  border-radius:2.5em; }	

.nnv:link {	       }
.nnv:visited {	       }
.nnv:hover {	background-image: url(kuvat/nnv255.png);  background-color:hsl(207,100%,41%);      }
.nnv {	 	float:right;  
		background-image:url(kuvat/nnv255.png); background-color:hsl(207,100%,21%); 
		height:60px;  width:60px;  background-size:30px;  border-radius:50%;   
		background-repeat:no-repeat;  background-position:50% 50%;  display:block;  text-decoration:none;  }

.boxi2 {		width:48%;       }
.boxi3 {		width:31%;        }
.boxi4 {		width:21%; margin:22px 0;        }	

		
.yhteysboxi1 {	padding:0 3%;  width:50%; float:left;  display:table; 	}
.yhteysboxi2 {	padding:0 3%;  margin:0; width:50%; float:right;  display:table;	}
.yhteystekstilohko {	padding:0;  width:100%;     }
.yhteyskartta {	width:100%;  margin:66px 0 0 0;     }


			 	}	/*	--------------------    */





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

.alueimage {	height:333px;  border-width:0 0  22px 0;  border-color:hsl(207,100%,31%);  border-style:solid;   }
.alueingressi {	padding:77px 3% 88px 3%;    	}
.ingressiteksti {	font-size:144%;     }

.boxi2 {		width:100%;       }
.boxi3 {		width:100%;  	}
.boxi4 {		width:48%;       }

.alueyhteys {	padding:66px 3%;   	}
.yhteysboxi1 {	padding:11px 3% 11px 15%;  width:100%; float:none;   	}
.yhteysboxi2 {	padding:11px 3% 11px 15%;  width:100%; float:none; 	}


.pilarirakonolla {	margin-top:0;	}
.pilarirakopieni {	margin-top:44px;	}
.pilarirakoiso {	margin-top:66px;	}


			 	}	/*	--------------------    */








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


.alueimage {	padding:0 0 33px 0;      }
.aluevakio {	padding:11px 5% 55px 5%;   }


.logolohko { 	max-width:100%;  width:98%;  margin-left:auto;  margin-right:auto;    }
.logokuva {	width:70%; max-width:333px;     }
.imageslogan {	font-size:144%;  }

.aluenavi {	max-width:100%;  width:calc(100% - 8px);  top:4px;  right:4px;        }
nav {		width:100%;   }
ul { 		width:calc(100% + 8px);  margin-left:-4px; 	 }

.leveeotsikko {	font-size:188%;  padding:66px 3% 0 7%;    }
.kuultoh3	 {  	font-size:122%;   padding:0.5em 1em;  	}

.boxi4 {		width:100%;       }
.isoteksti {	font-size:111%;    }

.yhteysboxi1 {	padding:11px 3% 11px 7%;    	}
.yhteysboxi2 {	padding:11px 3% 11px 7%;   	}
.karttaele {	width:90%; float:none;  margin:22px auto;	}


      


			 	}	/*	--------------------    */











/*	kestotietoa yyy           --------------------------------------------------------------------------------------------   */

.vaaleaotsikko {	color:hsl(0,0%,100%);    }

.ypadmaxi { 	padding-top:111px; }
.ypadiso { 	padding-top:66px; }
.ypadpieni { 	padding-top:33px; }
.ypadnolla { 	padding-top:0; }

.apadmaxi { 	padding-bottom:111px; }
.apadiso { 	padding-bottom:66px; }
.apadpieni { 	padding-bottom:33px; }
.apadnolla { 	padding-bottom:0; }

.ymargmaxi { 	margin-top:111px; }
.ymargiso { 	margin-top:66px; }
.ymargpieni { 	margin-top:33px; }
.ymargnolla { 	margin-top:0; }

.amargmaxi { 	margin-bottom:111px; }
.amargiso { 	margin-bottom:66px; }
.amargpieni { 	margin-bottom:33px; }
.amargnolla { 	margin-bottom:0; }

.vasemmalle {	text-align:left; }
.keskelle {	text-align:center; }
.oikealle {	text-align:right; }
.kuvakeskelle {	margin-left:auto;  margin-right:auto; }
.valkea {		color:hsl(0,0%,100%); 	}
.levee100 {	width:100%; }




.liukusavypysty { 	background:linear-gradient( hsl(111,80%,40%) , hsl(111,80%,100%) ); }
.zzhaiveviiva { 	height:1px;  width:77%;  margin:33px auto; background:linear-gradient( 90deg, transparent , hsl(0,0%,100%) , transparent );   }
.liukupystymalli { 	background:linear-gradient( hsl(111,80%,40%) , hsl(111,80%,100%) ); }
.taustakuvamalli {	background-image:url(kuvat/taustakuva.jpg);  background-size:cover;  background-position:0 0;   min-height:555px;  }

.sininen {	background-color:hsl(208,100%,33%);	color:rgb(0, 61, 204); }
.keltainen {	background-color:hsl(60,100%,50%);	color:rgb(255, 255, 0); }
.oranssi {	background-color:hsl(25,100%,50%);	color:rgb(255, 106, 0); }
.vihree {		background-color:hsl(207,100%,31%);	color:rgb(0, 166, 0); }
.punainen {	background-color:hsl(0,82%,48);	color:rgb(222, 22, 22); }
.valkoinen {	background-color:hsl(0,100%,100%);	color:rgb(255, 255, 255); }
.musta {		background-color:hsl(0,100%,0%);	color:rgb(0, 0, 0); }

.fontti {    	font-family:'Alfa Slab One'; 	}
.levee100 {	width:100%;  }
.erotin {		width:100%;  height:1px;  display:block;  }
.eimarginaalia {	margin-right:0;   }

