body {
  background-color: #ffffff !important;
  text-align: center !important;
  font-family: Roboto Flex, Calibri, Arial, Helvetica, sans-serif !important;
  color: #444444 !important;
  padding: 0.00 !important;
  margin: 0.00 !important;
  font-size: 1em !important;
}


h1, h2, h3, h4, h5, h6, p, ul, li {
  padding: 0.00 !important;
  margin: 0.00 !important;
  font-weight: normal !important;
}

a {
  outline: none !important;
  color: #555555 !important;
  text-decoration: none !important;
  background-color: inherit !important;
}

a:hover {
  color: #aaaaaa !important;
  background-color: inherit;
}

img {
  max-width: 100%;
  display: block;
}

a img {
  border: 0.00 !important;
}





#header, #menu, .text-section, .gallery, #footer {
}

#content-area {
  margin: auto !important;
  max-width: 998px; !important;
  min-width: 320px !important;
	
}

#header {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: flex-start;
  xxmax-width: 98%; !important;
  min-width: 320px !important;
  background-color: white !important;
  text-align: center !important;
  min-height: 1px !important;
  padding: 0px 44px 10px 44px !important;  /* laitetaan breakpointeilla isommaksi leveällä näytöllä */
  margin: 0px auto 0 !important;
  color: inherit;
  
  }

.gallery {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: flex-start;
  
  padding: 0.00 !important;
  margin: 5px auto 20px auto !important;
}

.frame img.top  { object-position: top; }
.frame img.bottom  { object-position: bottom; }
.frame img.left  { object-position: left; }
.frame img.right  { object-position: right; }

.gallerythumb {
  background-color: #ffffff !important;
  border-style: solid !important;
  border-width: 0px !important;
  padding: 2px !important;
  margin: 0 auto !important;
  border-color: #ffffff !important;
  color: inherit;
}

img.gallerythumb  { 
  object-fit: cover;
  max-width: 300%;  /* Tämä siksi, että muuten vaakapikkukuvien ylä/alapuolelle jää tyhjä tila */
}

.w192 {
  height: 185px !important;
  width: 185px !important;
}

img.gallerythumb192  { object-fit: cover; }

.browsearrows {
	position: relative !important;
	left: -15px!important;
	
	width: 100%;
	font-size: 3em;
	font-weight: bold;
	overflow: visible !important;
	height: 1px !important;
}

.browsearrows.top {
	
	xborder-bottom: 4px solid green !important; 
	overflow: visible !important;
	height: 1px !important;
	top: 17px!important;
}

.browsearrows.bottom {
	border-top: 2px solid red !important; 
	padding-top: 30px!important; 
	
}

.browsearrow {
	overflow: visible !important;
	width: 1px !important;
	height: 1px !important;
	padding: 10px 10px; 
	background-color: white !important;
	color: #bbbbbb !important;
}
.browsearrow.prev {
	float: left !important; 
	margin: 0 8px 0 0; 
}
.browsearrow.next {
	float: right!important; 
	margin: 0 0 0 8px; 
}


/* Index page captions */
.badge {
  position: relative;
  bottom: 0px;
  left: 5px;
  padding: 5px 0px;
  color: #222222;
  background: white;
  line-height: 1;
  transition: opacity 100ms linear;
  /* font-size: 14px; */
  font-weight: bold!important;
  text-align: left!important;
  width: 100% !important;
}
.badge--hidden {
  opacity: 0;
}

	

div.text-section {
	xwidth: 98%!important; 
	max-width: 998px!important; 
	height: auto!important; 
	text-align: left !important;
	clear: both;
	padding: 0px 44px 15px 44px !important;
	
	font-size: 0.9em !important;
}

div.text-section h1 {
	font-weight: bold !important;
	font-size: 1.8em !important;
	border-bottom: 2px solid red !important;
	margin-bottom: 4px !important;
	padding-bottom: 2px !important;
}

div.text-section h2 {
	xfont-weight: bold !important;
	font-size: 1.3em !important;
	margin-bottom: 6px !important;
	line-height: 0.7em !important;
}


#footer {
  background-color: transparent !important;
  color: #666666 !important;

  margin: 10px auto 20px !important;
  font-size: 10px !important;
}




#siteTitle {
  float: left !important;
  background-color: transparent !important;
  color: #444444 !important;

  padding: 5px 0 0 0 !important;
  margin: 0.00 !important;

  font-size: 1em !important;
  font-weight: bold !important;
  background-color: inherit;
  margin-bottom: 4px !important;

}

#contactInfo {
  padding: 5px; 0px 0 0 !important;
  margin: 0.00 !important;
  text-align: center !important;
  font-size: 0.7em !important;
  
}

.clear {
  clear: both !important;
  padding: 0.00 !important;
  margin: 0.00 !important;
}












.topnav {
  overflow: hidden;
  background-color: #eeeeee;
}

.topnav a {
  float: left !important;
  display: block !important;
  color: #444444 !important;
  text-align: center !important;
  padding: 4px 8px !important;
  text-decoration: none !important;
  font-size: 17px !important;
  border: 2px solid white;
  border-top-right-radius: 10px !important;
}

.active {
  background-color: white !important;
  color: red !important;
}

.topnav .icon {
  display: none !important;;
}

.dropdown {
  float: left !important;
  overflow: hidden !important;
}

.dropdown .dropbtn {
  font-size: 17px !important;
  border: none !important;
  outline: none !important;
  color: #999999 !important;
  padding: 4px 8px !important;
  background-color: inherit !important;
  font-family: inherit !important;
  margin: 0 !important;
}

.dropdown-content {
  display: none !important;
  position: absolute !important;
  background-color: #f9f9f9 !important;
  min-width: 160px !important;
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2) !important;
  z-index: 1 !important;
}

.dropdown-content a {
  float: none !important;
  color: black !important;
  padding: 4px 16px !important;
  text-decoration: none !important;
  display: block !important;
  text-align: left !important;
}

.topnav a:hover, .dropdown:hover .dropbtn {
  background-color: #dddddd !important;
  color: red !important;
}

.dropdown-content a:hover {
  background-color: #ddd !important;
  color: black !important;
}

.dropdown:hover .dropdown-content {
  display: block !important;
}

@media screen and (max-width: 600px) {
  .topnav a:not(:first-child), .dropdown .dropbtn {
    display: none !important;
  }
  .topnav a.icon {
    float: right !important;
    display: block !important;
  }
}

@media screen and (max-width: 600px) {
  .topnav.responsive {position: relative !important;}
  .topnav.responsive .icon {
    position: absolute !important;
    right: 0 !important;
    top: 0 !important;
  }
  .topnav.responsive a {
    float: none !important;
    display: block !important;
    text-align: left !important;
  }
  .topnav.responsive .dropdown {float: none !important;}
  .topnav.responsive .dropdown-content {position: relative !important;}
  .topnav.responsive .dropdown .dropbtn {
    display: block !important;
    width: 100% !important;
    text-align: left !important;
  }
}



#menu {
  clear: both !important;
  text-align: center !important;
  background-color: blue !important;
  color: #777777 !important;
  padding: 0.00 !important;
  xmargin: 0 0 10px 0 !important;
  xwidth: 100% !important;
  margin: 10px auto 0 !important;
  xwidth: 958px !important;
}

#menuUL {
  padding: 0.00 !important;
  margin: 0.00 !important;
}

#menu li {
  padding: 0.00 !important;
  list-style: none !important;
  float: left !important;

}


.menuActive {
	font-weight: bold !important;
	border-bottom: 2px solid red !important;
	padding-bottom: 2px;
}

.menuParentActive {
	font-weight: bold !important;
}






.frame, .indexframe {
	  background-color: white !important;
	  border-style: solid !important;
	  border-width: 1px !important;
	  float: left !important;
	  text-align: center !important;
	  overflow: hidden !important;
	  border-color: white !important;
	  color: inherit;
	  xxposition: relative;
	max-width: 185px !important;
	height: 185px !important;
}

.indexframe {
	height: 250px !important;
}




@media (max-width: 380px) {

	#menu li {
		    line-height: 1.4em !important;
		    margin: 0 0 0 5px !important;
		    font-size: 2em!important;
		  }
	.frame {
		  flex: 1 185px;
		  
		  height: 185px !important;
		  margin: 0px 0px;
	}
	.indexframe {
		height: 270px !important;

}

@media (min-width: 381px) {

	#menu li {
		    line-height: 1.3em !important;
		    margin: 0 0 0 5px !important;
		    font-size: 0.9em!important;
	}
	.frame {
		  flex: 1 185px;
		  
		  height: 185px !important;
		  margin: 0px 0px;
	}
	.indexframe {
		height: 270px !important;
}
}





.unchecked {
  background-image: url(../images/chk_off.png) !important;
}

.checked {
  background-image: url(../images/chk_on.png) !important;
}


.collectionTitle {
  clear: right !important;
  color: #A6A6A6 !important;
  float: right !important;
  padding: 0px 0 0 0 !important;
  margin: 0.00 !important;
  font-size: 18px !important;
  background-color: inherit;
}


#lbImage, #lbBottom {
  border: 10px solid black !important;
}








.pswp__custom-caption {
  background: rgba(75, 150, 75, 0.75);
  font-size: 16px;
  color: #fff;
  width: calc(100% - 32px);
  max-width: 400px;
  padding: 2px 8px;
  border-radius: 4px;
  position: absolute;
  left: 50%;
  bottom: 16px;
  transform: translateX(-50%);
  font-weight: light !important;
}
.pswp__custom-caption a {
  color: #fff;
  text-decoration: underline;
}
.hidden-caption-content {
  display: none;
}