/** 
 * main.css
 * 
 * 1. General HTML tags
 * 2. Masthead area
 * 3. Main content and sidebar
 * 4. Footer
 * 5. Media queries for responsive layout
 * 6. Accessibility helpers
 * 
 */

/*********************************************************************
 * 1. General HTML tags
 *
 */

* {
	box-sizing: border-box; 
}

body {
margin: 0;
height:100%;
font-family: 'Montserrat Alternates', sans-serif;
font-size: 15px; 
line-height: 1.2em;
font-weight: 400;
color: #222; 
}
body p {
margin: 0;
}

h1 {
font-family: 'Bodoni Moda', serif;
font-size: 37px;
line-height: 1.3em;
color: #222;
margin:0;
font-weight: normal;
text-transform: uppercase;
}

h2 {
font-family: 'Bodoni Moda', serif;
font-size: 30px;
line-height: 1.3em;
color: #cea44a;
margin: 20px 0px 0px 0px;
font-weight: normal;
}

h3 {
font-family: 'Bodoni Moda', serif;
font-size: 22px;
line-height: 1.3em;
letter-spacing: 1px;
color: #333;
padding: 0px;
margin:3px 0px;
font-weight: normal;
text-transform: uppercase;
}

h4 {
font-family: 'Bodoni Moda', serif;
font-size: 20px;
color: #777;
}

a {
color:#cea44a;
text-decoration: none;
}
a:hover {
color:#777;
text-decoration: none;
}

blockquote {
	margin-left: 0;
	padding-left: 1.5em;
	padding-right: 2em; 
	border-left: 4px solid #ddd; 
	font-style: italic; 
	color: #777; 
}

pre, code {
	background: #eee; 
	border: 1px solid #ddd; 
}

pre {
	font-size: 14px; 
	line-height: 1.4em;
	padding: 1em;
	border-left: 4px solid #ddd; 
}

/*********************************************************************
 * 2. Masthead area
 *
 */

nav{
height: 100px;
width:100%;
margin: auto;
font-family: 'Montserrat Alternates', sans-serif;
font-size: 15px;
position:fixed;
top:0;
display: flex;
justify-content: space-between;
padding: 0 16px 0 0;
background-color: #fff;
box-shadow: 0px 0px 4px #888;
z-index: 9999;
}

header {
display: flex;
height: 100px;
padding: 0;
margin-left: 20px;
align-items: center;
color: #333;
font-size: 55px;
-moz-transition: all 0.20s ease-in-out;
-o-transition: all 0.20s ease-in-out;
-webkit-transition: all 0.20s ease-in-out;
}

nav ul{
font-family: 'Montserrat Alternates', sans-serif;
display: flex;
list-style: none;
justify-content: space-around;
align-items: center;
height: 100%;
margin: 0;
padding: 0px 10px 0px 0px;
}

nav ul li a{
color: #333;
font-size: 17px;
padding: 7px 17px;
text-decoration: none;
text-align: center;
-moz-transition: all 0.20s ease-in-out;
-o-transition: all 0.20s ease-in-out;
-webkit-transition: all 0.20s ease-in-out;
}

nav ul li a:hover{
color: #bbb;
transition: .5s;
}
nav li.current a {
color: #cea44a;
transition: .5s;
text-decoration: underline;
}

.checkbtn{
font-size: 50px;
color: #aaa;
float: right;
margin-right: 40px;
margin-top: 20px;
cursor: pointer;
display: none;
}
#check{
  display: none;
}

.murupolku {
    position: fixed;
    top:100px;
    left:0;
width:100%;
background: #bbb;
display: flex;
list-style: none;
text-align: center;
justify-content: space-around;
align-items: center;
padding: 10px 40px;
margin:0 auto;
margin-bottom: 50px;
text-align: center;
align-items:center;
}
#murupolku-kategoriat {
width: 100%;
text-align: center;
}
#muru-nimi{
color: #fff;
position: relative;
margin:0 auto;
overflow: visible;
font-size: 12px;
line-height: 1.5em;
-moz-transition: all 0.20s ease-in-out;
-o-transition: all 0.20s ease-in-out;
-webkit-transition: all 0.20s ease-in-out;
}
#muru-nimi:hover{
color: #ccc;
-moz-transition: all 0.20s ease-in-out;
-o-transition: all 0.20s ease-in-out;
-webkit-transition: all 0.20s ease-in-out;
}


/*********************************************************************
 * 3. Main content and sidebar
 *
 */

#main{
width: 100%;
height:100%;
background: #eee;
}

#content { 
max-width: 900px;
padding: 70px 20px;
margin: 0 auto;
margin-top: 100px;
}
#content p{
font-family: 'Montserrat Alternates', sans-serif;
font-size: 16px;
line-height: 1.6em;
font-weight: 300;
color: #444;
}

#banner {
height: 650px;
width: 100%;
margin-bottom: -120px;
}
#banner img {
height: 650px;
width: 100%;
object-fit: cover;
}
.banneriotsikko {
position: relative;
margin:0 auto;
margin-top: -190px;
right:-25%;
text-align: center;
width: 600px;
font-family: 'Bodoni Moda', serif;
color: #fff;
text-shadow: 1px 1px 4px #000;
font-size: 32px;
line-height: 1.4em;
text-transform: uppercase;
z-index: 1000;
}
.banneriotsikko p {
margin-bottom: 22px;    
}

.etusivu-box {
display: grid;
grid: auto / auto auto auto;
grid-auto-columns: auto auto auto;
grid-gap: 30px 0px;
text-align: center;
margin:50px 10px;
}
#etusivu-kategoriat{
grid-column: auto / auto;
text-align: center;
-moz-transition: all 0.20s ease-in-out;
-o-transition: all 0.20s ease-in-out;
-webkit-transition: all 0.20s ease-in-out;
}
#etusivu-kategoriat a{
color: #fff;
text-shadow: 1px 1px 5px #000;
font-family: 'Bodoni Moda', serif;
text-transform: uppercase;
font-size: 22px;
}
#etusivu-kategoriat:hover{
opacity: 0.5;
filter: grayscale(100%);
-webkit-filter: grayscale(100%);
-moz-transition: all 0.20s ease-in-out;
-o-transition: all 0.20s ease-in-out;
-webkit-transition: all 0.20s ease-in-out;
}

#etusivu-kategoriat:hover a{
color: #000;
text-shadow: 1px 1px 5px #fff;
font-family: 'Bodoni Moda', serif;
text-transform: uppercase;
font-size: 22px;
}
#kategoria-nimi{
position: relative;
margin:0 auto;
top:45%;
width: 220px;
height: 0;
overflow: visible;
line-height: 1.5em;
}

.box {
display: flex;
padding: 0;
}
.wysiwyg1{
width:60%;
margin-right: 40px;
box-sizing: border-box;
}
.sidebar {
background: #eee;
width: 40%;
padding: 20px;
margin:0px 10px;
box-sizing: border-box;
}

#page-content {
display: flex;
padding: 0;
margin: 0 10%;
margin-bottom: 20px;
}
#text-box {
margin-right: 20px;
box-sizing: border-box;
text-align: right;
padding-top: 20%;
}
#page-image{
width: 450px;
box-sizing: border-box;
}
#page-image img{
width:450px;
height:450px;
object-fit: cover;
}

#yhteystiedot-content {
display: flex;
padding: 0;
margin: 20px 0px;
}
#yhteystiedot-box {
width: 55%;
margin-right: 20px;
box-sizing: border-box;
padding-top: 20px;
}
#yhteystiedot-image{
width: 45%;
box-sizing: border-box;
margin-right: 30px;
}
#yhteystiedot-image img{
width:100%;
height:auto;
}

.galleria{
display: grid;
grid: auto / auto auto auto auto;
grid-auto-columns: auto auto auto auto;
grid-gap: 0;
text-align: center;
margin: 20px 0;
}


.align_left {
	/* for images placed in rich text editor */ 
	float: left;
	margin: 0 1em 0.5em 0; 
	position: relative;
	top: 0.5em;
	max-width: 50%; 
    display: block;
}

.align_right {
	/* for images placed in rich text editor */ 
	float: right;
	margin: 0 0 0.5em 1em;
	max-width: 50%; 
    display: block;
}

.align_center {
	/* for images placed in rich text editor */ 
	display: block;
	margin: 1em auto; 
	position: relative;
	top: 0.5em;
    display: block;
}

figure {
	display: table;
	width: 1px;
	margin: 1em 0;
}

figure img {
	display: table-row;
	margin-bottom: 0.5em;
}

figure figcaption {
	display: table-row;
	font-size: smaller;
	color: #777;
	line-height: 1.4em;
}

/*********************************************************************
 * 4. Footer
 *
 */

footer{
background-color: #bbb;
padding: 20px 40px;
margin: 0;
box-sizing: border-box;
left:0;
width: 100%;
display: block;
}
footer p {
color: #fff;
}
#fool {
width:100%;
display: flex;
margin: 0 auto;
}

#column1{
width: 50%;
padding: 15px;
box-sizing: border-box;
text-align: left;
color: #fff;
}
#column1 img{
width: auto;
height:200px;
line-height: 1.4em;
}
#column2{
width: 50%;
padding: 15px;
box-sizing: border-box;
text-align: right;
line-height: 1.4em;
color: #fff;
}
#column2 a{
color: #fff !important;
}
#column2 i{
padding-left:10px;
}

#copyright {
margin-top:20px;
text-align: right;
font-size: 11px;
}
#copyright a{
color: #fff;
}
#copyright a:hover{
color: rgb(240, 207, 60);
}

/*********************************************************************
 * 5. Media queries for responsive layout
 *
 */

@media only screen and (max-width:1300px) {

#content{
width: 100%;
box-sizing:border-box;
}

nav ul li a{
font-size: 15px;
}

}

@media only screen and (max-width:1100px) {

header{
font-size: 23px;
-moz-transition: all 0.20s ease-in-out;
-o-transition: all 0.20s ease-in-out;
-webkit-transition: all 0.20s ease-in-out;
}

nav ul li a{
font-size: 13px;
padding: 7px 9px;
-moz-transition: all 0.20s ease-in-out;
-o-transition: all 0.20s ease-in-out;
-webkit-transition: all 0.20s ease-in-out;
}

#banner{
padding: 0px;
}
.banneriotsikko {
position: relative;
right: 0px;
font-size: 30px;
line-height: 1.4em;
-moz-transition: all 0.20s ease-in-out;
-o-transition: all 0.20s ease-in-out;
-webkit-transition: all 0.20s ease-in-out;
}

#content{
padding:70px 20px;
}

#page-content {
display: flex;
padding: 0;
margin: 0 auto;
}
#text-box {
width:50%;
}

img {
    max-width: 100%;
}

}

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

#nappi {
font-size: 17px;
width: 170px;
text-align: center;
}

nav ul li a{
font-size: 12px;
padding: 7px 8px;
}

.banneriotsikko {
position: relative;
right: 0px;
font-size: 23px;
width: 100%;
-moz-transition: all 0.20s ease-in-out;
-o-transition: all 0.20s ease-in-out;
-webkit-transition: all 0.20s ease-in-out;
}

}



@media only screen and (max-width:830px) {

.checkbtn{
display: block;
}

nav{
display: block;
}

nav ul{
position: fixed;
width: 100%;
top: 100px;
left: -110%;
background: #ddd;
display: inline-block;
align-items: center; 
text-align: center;
z-index: 10000;
-moz-transition: all 0.5s ease-in-out;
-o-transition: all 0.5s ease-in-out;
-webkit-transition: all 0.5s ease-in-out;
}

nav ul li{
margin: 30px 0;
}

nav ul li a{
font-size: 25px;
color: #fff;
}

a:hover,a.active{
background: none;
color: #eee;
}

#check:checked ~ ul{
left: 0;
}

#content {
padding:40px;
}
#content p{
font-size: 16px;
line-height: 1.5em;
}

.murupolku {
display:none;
}

.etusivu-box {
display: grid;
grid: auto / auto auto;
grid-auto-columns: auto auto;
}
#etusivu-kategoriat{
grid-column: auto / auto;
text-align: center;
padding:10px;
-moz-transition: all 0.20s ease-in-out;
-o-transition: all 0.20s ease-in-out;
-webkit-transition: all 0.20s ease-in-out;
}
#etusivu-kategoriat a{
font-size: 19px;
}
#etusivu-kategoriat:hover a{
font-size: 19px;
}

.galleria{
display: grid;
grid: auto / auto auto auto ;
grid-auto-columns: auto auto auto;
grid-gap: 5px 5px;
text-align: center;
margin: 20px 0;
}

.box {
display:block;
}

.yhteystiedot {
display: block;
padding: 0;
}
.lomake{
width:100%;
margin: 10px 0px;
box-sizing: border-box;
}
.sidebar {
width: 100%;
padding: 20px;
margin: 10px 0px;
box-sizing: border-box;
}

footer{
display: block;
padding: 20px;
}

#fool{
display: block;
}
#column1{
width: 100%;
text-align: center;
padding: 0px;
margin-bottom: 20px;
font-size: 17px;
line-height: 1.4em;
}
#column2{
width: 100%;
text-align: center;
padding: 0px;
font-size: 17px;
line-height: 1.4em;
}
#copyright {
text-align: center;
font-size: 11px;
margin-top: 15px;
}

}


@media only screen and (max-width:700px) {
#main {
display: block;
}

#content { 
width: 100%;
box-sizing: border-box;
}

}

@media only screen and (max-width:550px) {

.checkbtn{
margin-right: 20px;
}

.etusivu-box {
display: grid;
grid: auto / auto;
grid-auto-columns: auto auto;
grid-gap: 5px 0px;
}
#etusivu-kategoriat{
grid-column: auto / auto;
text-align: center;
width:100%;
object-fit: cover;
padding:0px;
-moz-transition: all 0.20s ease-in-out;
-o-transition: all 0.20s ease-in-out;
-webkit-transition: all 0.20s ease-in-out;
}

#page-content {
display: block;
padding: 0;
margin: 0 auto;
}
#text-box {
margin-right: 0;
margin-bottom:30px;
box-sizing: border-box;
text-align: center;
padding-top: 0;
width: 100%;
}
#page-image{
width: 100%;
height:450px;
box-sizing: border-box;
}
#page-image img{
width:100%;
height:450px;
object-fit: cover;
}

.galleria{
display: grid;
grid: auto / auto auto ;
grid-auto-columns: auto auto;
grid-gap: 5px 5px;
text-align: center;
margin: 20px 0;
}

#yhteystiedot-content {
display: block;
padding: 0;
margin: 20px 0px;
}
#yhteystiedot-box {
width: 100%;
margin: 0px;
box-sizing: border-box;
padding-top: 20px;
}
#yhteystiedot-image{
width: 100%;
box-sizing: border-box;
margin: 0px;
}

h1 {
font-size: 26px;
}
h2 {
font-size: 20px;
}

}

/*********************************************************************
 * 6. Accessibility helpers
 *
 */

/* Hide visually, but remain approachable for screenreader */

.visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	white-space: nowrap;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	border: 0;
}

/* Show bypass link on hover */

.element-focusable:focus {
	clip: auto;
	overflow: visible;
	height: auto;
}

/* Sample styling for bypass link */

.bypass-to-main:focus {
	top: 0;
	left: 0;
	width: 100%;
	height: 40px;
	line-height: 40px;
	text-align: center;
	background: #333;
	color: #fff;
 }