html, body {
	padding: 0;
	margin: 0;
	background-color: #EBEAEA;
	max-width: 100%;
	overflow-x: hidden;
}

body {
	font-family: 'Open Sans', sans-serif;
	max-width: 100%;
	min-width: 300px;
}


img {
	max-width: 100%;
}

:focus { outline: none; }

.formHolder td {
	padding: 5px 0;
}

.formHolder td:first-child {
	padding-right: 10px;
}

.formEmailinput, .formTextinput, .formTextarea, .formTelinput {
	padding: .4em;
	border: 1px solid #ccc;
}

.formEmailinput:focus, .formTextinput:focus, .formTextarea:focus, .formTelinput:focus { border-color: #000fff; }

.formTextarea {
	overflow: auto;
}

/* global rules */
.black-link{
	color: #1C1C1C;
	transition: all 0.2s ease-in-out;
}
.black-link:hover{
	color: #1C1C1C;
	opacity:0.9;
}
.no-text-decoration:hover{
	text-decoration: none;
}
/* CHANGE FONT SIZE */

body.font-larger .js-resize-font-size {
	font-size: 18px;
}


/* HEADER STYLES */

.bg-black {
	background-color: #1C1C1C;
}

.bg-white {
	background-color: #FFFFFF;
}

.bg-lightblue {
	background-color: #4CA6BC;
}

.header-space {
	background-color: white;
	width: 100%!important;
}

.header-section {
	-webkit-box-shadow: 0 2px 4px 0 rgba(0,0,0,0.2);
	box-shadow: 0 2px 4px 0 rgba(0,0,0,0.2);
	width: 100%!important;
}

.header-left {
	float: left;
	width: 130px;
	display: block;
	min-height: 1px;
	position: relative;
}

.header-left.top {
	height: 50px;
}

.header-right {
	float: left;
	width: calc(100% - 161px);
	padding-left: 20px;
}

.header-right.top {
	height: 50px;
	padding-top: 7px;
}

.header-right.bottom {
	padding-top: 22.5px;
	padding-bottom: 22.5px;
	-webkit-transition: all .25s;
	transition: all .25s;
}

.header-right.bottom.scrolled {
	padding-top: 5px;
	padding-bottom: 5px;
}


.mainsearch-container {
	float: right;
	display: inline-block;
}

input.main-search-input {
	height: 50px;
	width: 205px;
	margin-top: -7px;
	padding-left: 20px;
	padding-right: 1px;
	color: #1C1C1C;
	border: none;
	background-color: #EBEAEA;
	float: left;
}

button.search-submit {
	color: #1C1C1C;
	border: none;
	background-color: #EBEAEA;
	-webkit-appearance: none;
	height: 50px;
	width: 51px;
	display: inline-block;
	margin-top: -7px;
	font-size: 26px;
	padding-right: 12px;
	padding-left: 12px;
	vertical-align: middle;
	float: left;
	-webkit-transform: scaleX(-1);
	transform: scaleX(-1);
	-webkit-filter: FlipH;
	filter: FlipH;
	-ms-filter: "FlipH";
	margin-left: -1px;
}

.header-logo-container {
	border: 1px solid #EBEAEA;
	border-radius: 0 0 10px 10px;
	background-color: #FFFFFF;
	display: block;
	padding: 15px 20px 20px 20px;
	text-align: center;
	position: absolute;
	z-index: 201;
}

.header-logo {
	-webkit-transition: all .25s;
	transition: all .25s;
	width: 100%;
}

.header-logo.scrolled {
	width: 76%;
	height: auto;
}

span.text-size {
	color: #8E8E8E;
	vertical-align: middle;
	display: inline-block;
}

button.text-resize-btn {
	height: 35px;
	width: 90px;
	border-radius: 3px;
	background-color: transparent;
	-webkit-box-shadow: none;
	box-shadow: none;
	border: none;
	color: #8E8E8E;
	font-weight: 600;
	vertical-align: middle;
	margin-left: 15px;
}


button.text-resize-btn.active {
	height: 35px;
	width: 90px;
	border-radius: 3px;
	background-color: #CFDA58;
	-webkit-box-shadow: 0 2px 4px 0 rgba(0,0,0,0.5);
	box-shadow: 0 2px 4px 0 rgba(0,0,0,0.5);
	border: none;
	color: white;
	font-weight: 600;
	vertical-align: middle;
}


.nuoriyty {
	float: right;
	-webkit-transition: all .25s;
	transition: all .25s;
	width: 15%;
	margin-top: 10px;
	text-align: center;
}

.nuoriyty img {
	-webkit-transition: all .25s;
	transition: all .25s;
	width: 70px;
	height: 70px;
	margin-bottom: 10px;
}

.lahjoita {
	/*float: right;*/
	-webkit-transition: all .25s;
	transition: all .25s;
	width: 15%;
	margin-top: 10px;
	text-align: center;
}

.lahjoita img {
	-webkit-transition: all .25s;
	transition: all .25s;
	width: 140px;
	height: auto;
	margin-bottom: 10px;
	margin-top: 19px;
}


/* MAIN MENU */

ul.main-menu li.level1 a {
	color: #1C1C1C;
	font-size: 18px;
	font-weight: bold;
	-webkit-transition: all .25s;
	transition: all .25s;
}

ul.main-menu li.level1 a:hover {
	text-decoration: none;
	color: #CFDC29;
}

ul.main-menu li.current.level1 a {
	color: #CFDC29;
}

ul.main-menu li.level1 {
	display: inline-block;
	padding-right: 25px;
}

ul.main-menu {
	padding: 22.5px 0 22.5px 0;
	margin: 0;
	display: inline-block;
	float: left;
    width: 85%;
}

ul.main-menu-narrowed {
	padding: 22.5px 0 22.5px 0;
	margin: 0;
	display: inline-block;
	float: left;
    width: 70%;
}

/*
.scrolled ul.main-menu {
padding: 25px 0 25px 0;
}
*/


@media (max-width: 1200px) {

.lahjoita img {
	width:95px;
	}
	
}

@media (max-width: 991px) {

	
	.nuoriyty {
		width: 40%;
		text-align: right;
		margin-top: 20px;
	}
	
	.nuoriyty img {
		float: right;
		margin-left: 10px;
		margin-top: -5px;
	}
	
	.nuoriyty br {
		display: none;
	}
	
	.lahjoita img {
	width: 100px;
	}
	
}

@media (max-width: 550px) {
	.nuoriyty {
		width: 40%; /*70%*/
	}
	
	.mobile-text {
	display:none;
	}
}


@media (max-width: 400px) {
	.nuoriyty span {
		display: none;
	}
	
	.lahjoita img {
		width: 80px;
		margin-top: 16px;
	
	}
	
	
}



/* KARUSELLI */

.carousel, .slider, .slider-item {
	height: 640px;
}

.carousel {
	overflow: hidden;
	position: relative;
}

.slider-item {
	background-repeat: no-repeat;
	background-size: cover;
	background-position:center;
}


.bottom-curve {
	position: absolute;
	left: 0;
	right: 0;
	width: 100%;
	bottom: 0;
	height: 65px;
	z-index: 2;
}

.bottom-curve-inner {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
}


.bottom-curve-inner:after {
	content: "";
	position: absolute;
	background-color: white;
	top: -65px;
	left: 0;
	right: 0px;
	bottom: 0;
	background: radial-gradient(ellipse 53% 50%, transparent 0, transparent 97%, #EBEAEA 100%);
}


.slider-content {
	text-align: center;
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.slider-text {
	max-width: 880px;
	margin: 0 auto;
	position: relative;
}

.slider-text *:first-child {
	margin-top: 0;
}

.slider-text h1 {
	color: #FFFFFF;
	font-family: "Open Sans";
	font-size: 53px;
	font-weight: bold;
	line-height: 1.3;
	margin-bottom: 0.3em;
	text-align: center;
	text-shadow: 0 2px 4px rgba(0,0,0,0.57);
}


.default-btn {
	height: 51.98px;
	color: white;
	padding: 16px 36px;
	font-weight: 600;
	border-radius: 5px;
	border: none;
	background-color: #CFDA58;
	-webkit-box-shadow: 0 2px 4px 0 rgba(0,0,0,0.2);
	box-shadow: 0 2px 4px 0 rgba(0,0,0,0.2);
	display: inline-block;
	-webkit-transition: all .25s;
	transition: all .25s;
}

.default-btn:hover {
	color: white;
}

/* DEFAULT MARGINS, SECTIONS AND ITEMS */

/* CONTENT SECTION USED WHEN NO ITEMS */
.content-section {
	margin-bottom: 40px;
}

/* ITEM MARGIN USED WITH ITEMS, TOTAL MARGIN-BOTTOM 40px */
.item-container {
	margin-bottom: 10px;
}

.item-margin {
	margin-bottom: 30px;
}

/* FRONTPAGE LIFTS */

.container.frontpage-lift {
	margin-top: -85px;
	z-index: 3;
	position: relative;
}

.lift-item {
	background-color: white;
	-webkit-box-shadow: 0 2px 4px 0 rgba(0,0,0,0.2);
	box-shadow: 0 2px 4px 0 rgba(0,0,0,0.2);
	height: 140px;
}

.lift-left {
	float: left;
	width: calc(100% - 160px);
	height: 100%;
	padding: 30px;
}

.lift-left p {
	color: #1C1C1C;
	font-size: 22px;
	margin-bottom: 0;
}

.lift-right {
	float: left;
	width: 160px;
}

.lift-left h2 {
	margin-top: 0;
	color: #1C1C1C;
	font-size: 26px;
	font-weight: bold;
}

/* PAGE INTRO, BLACK */

.page-intro {
	text-align: center;
	padding-top: 60px;
	padding-bottom: 60px;
	max-width: 880px;
	margin: 0 auto;
}

.page-intro h1 {
	margin-top: 0;
	line-height: 1.3;
	margin-bottom: 0.3em;
	color: white;
	font-size: 53px;
}

.page-intro p, .page-intro p a {
	color: #4CA6BC;
	font-size: 28px;
	font-weight: bold;
	margin-bottom: 0;
}

/* HEADING BLOCK */

h2.heading-block {
	display: block;
	text-align: center;
	color: white;
	margin-top: 0;
	padding: 10px;
	font-size: 28px;
	font-weight: bold;
}

h2.heading-block a {
	color: white;
}

/* FRONTPAGE AJANKOHTAISTA, AND PRODUCTLIST ITEM */

.text-container {
	padding: 20px;
}

.news-item, .product-item {
	height: 100%;
}

.news-item img {
	max-width: 110%;
	width: 100%;
}

.product-item img {
	display: block;
	margin-left: auto;
	margin-right: auto;
	padding: 25px 25px 5px 25px;
}

.news-item h3, .news-item h3 a, .product-item h3, .product-item h3 a {
	font-size: 16px;
	color: #1C1C1C;
	font-weight: bold;
	margin-top: 0;
}

.news-date, .product-prize {
	font-size: 14px;
	font-weight: bold;
}

.news-date {
	color: #434343;
}

.product-price {
	color: #FF0000;
	font-weight: bold;
}

.store-link {
	color: #1C1C1C;
	text-decoration: underline;
}

.news-ingress {
	color: #1C1C1C;
	font-size: 16px;
}

.container.read-more {
	text-align:right; 
	margin-bottom:3rem; 
	font-weight:bold; 
	font-size:18px;
}

/* TOIMINTAA */

.activity-link-item a {
	font-size: 18px;
	font-weight: bold;
	font-size: 18px;
	color: #1C1C1C;
	text-align: center;
	display: block;
}

/* FOOTER */

.container.footer {
	padding-top: 30px;
	padding-bottom: 30px;
	color: white;
}

.container.footer p {
	color: white;
	margin-bottom: 20px;
	font-size: 14px;
	line-height: 19px;
}

.container.footer a {
	color: white;
	font-size: 14px;
	line-height: 19px;
	text-decoration: underline;
}

.footer-heading {
	margin-top: 0;
	margin-bottom: 20px;
	line-height: 1;
	text-transform: uppercase;
	font-size: 14px;
	color: white;
}

/* SOME FEEDS &  FRONTPAGE */

.some-links {
	padding: 20px 0;
}

.youtube-player-container {
	position: relative;
	padding-top: 56.25%;
}

.youtube-player {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

h2.feed-heading {
	font-size: 25px;
	text-align: center;
	margin-top: 30px;
	margin-bottom: 30px;
	color: #1C1C1C;
}

.feed-panel {
	display: block;
	text-align: center;
	margin-bottom: 30px;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.feed-panel-inner, .panel-item {
	display: inline-block;
}

.panel-item {
	font-size: 35px;
	width: 65px;
	height: 65px;
	position: relative;
	float: left;
	cursor: pointer;
	-webkit-transform: translate(0);
	transform: translate(0);
	-webkit-transition: all .25s;
	transition: all .25s;
}

.panel-item:hover {
	-webkit-transform: translateY(-5px);
	transform: translateY(-5px);
}

.panel-item:before {
	top: 50%;
	left: 50%;
	-webkit-transform:translate(-50% , -50%);
	transform:translate(-50% , -50%);
	position: absolute;
}


/* DEFAULT STYLES FOR SOME ICONS */
.panel-item.instagram {
	color: white;
	background-color: rgba(69,118,160,1);
}

.panel-item.facebook {
	color: white;
	background-color: rgba(49,78,172,1);
}

.panel-item.twitter {
	color: white;
	background-color: rgba(51,206,255,1);
}

.panel-item.youtube {
	color: white;
	background-color: rgba(206,15,30,1);
}

/* ACTIVE STYLES */

.panel-item.instagram.active {
	color: rgba(69,118,160,1);
	background-color: white;
}

.panel-item.facebook.active {
	color: rgba(49,78,172,1);
	background-color: white;
}

.panel-item.twitter.active {
	color: rgba(51,206,255,1);
	background-color: white;
}

.panel-item.youtube.active {
	color: rgba(206,15,30,1);
	background-color: white;
}

.feed-text-container h3, .feed-text-container h3 a {
	font-size: 15px;
	line-height: 20px;
	color: #1C1C1C;
	word-break: break-word;
	display: inline-block;
}

/* SUBPAGE STYLES */

.subpage-main-content {
	margin-top: -65px;
}

.subpage-banner {
	height: 320px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.slider-text.subpage h1 {
	font-size: 38px;
}

.subpage-left {
	padding: 30px;
	border: 1px solid #EBEAEA;
	border-radius: 3px;
}

/* SIDENAV */

ul.sidenav {
	padding: 0;
	border: 1px solid #EBEAEA;
	border-radius: 3px;
	background-color: #FFFFFF;
}

ul.sidenav li {
	list-style: none;
	display: block;
	position: relative;
}

ul.sidenav li a {
	display: block;
	font-size: 15px;
	color: rgba(28,28,28,1);
	font-weight: 600;
	margin-bottom: -1px;

}

ul.sidenav li a:hover {
	text-decoration: none;
	outline: 0!important;
}

ul.sidenav li a:active {
	text-decoration: none;
	outline: 0!important;
}

ul.sidenav li a:focus {
	text-decoration: none;
	outline: 0!important;
}


ul.sidenav li.level1 > a {
	padding: 15px 20px;
	background-color: rgba(213,225,73,1);
}

.sidenav-submenu-icon {
	color: rgba(28,28,28,1);
	font-size: 30px;
	font-weight: bold;
	position: absolute;
	right: 20px;
	top: 10px;
}

ul.sidenav-submenu {
	padding: 0;
	padding-bottom: 2px;
}

ul.sidenav-submenu li a {
	padding: 15px 0 15px 0;
	margin-left: 20px;
	margin-right: 20px;
	border-bottom: 1px solid transparent;
	-webkit-transition: all .25s;
	transition: all .25s;
}


ul.sidenav a.current-page {
	font-weight: bold;
	color: #859e43;
}

ul.sidenav-submenu a:hover {
	padding-left: 5px;
	border-bottom: 1px solid #DEDEDE;
}

ul.sidenav li.level1 > a:hover, ul.sidenav li.level1 > a:focus, ul.sidenav li.level1 > a:active {
	border-bottom: none;
	outline: 0;
	text-decoration: none;
}

ul.sidenav li.current.level1 > a {
	border-bottom: none;
}

ul.sidenav-submenu-3 {
	padding-left: 20px;
}

ul.sidenav-submenu-3 li a {
	padding-top: 6px;
	padding-bottom: 6px;
}

/* EDITOR LIVE STYLES */

.editor > *:first-child {
	margin-top: 0;
}

.editor > *:last-child {
	margin-bottom: 0;
}

@media all and (max-width:992px) {
	.on992-marginbottom20 {
		margin-bottom: 20px;
	}
}

.editor {
	color: #1C1C1C;
	font-size: 16px;
}


.editor h1,
.editor h2,
.editor h3,
.editor h4,
.editor h5,
.editor h6,
.subpage-title,
#title-404-error{
	color: #1C1C1C;
	font-weight: bold;
	font-family: 'Open Sans', sans-serif;
	line-height: 1.4;
	padding: 0;
	margin: 20px 0 20px 0;
}

.editor h1, .subpage-title, #title-404-error { font-size: 26px; }
.editor h2 { font-size: 22px; }
.editor h3 { font-size: 18px; }

.subpage-title {
	margin-top: 0;
}

.editor h4,
.editor h5,
.editor h6 {
	font-size: 100%;
}

.editor p, #body-404-error {
	color: #1C1C1C;
	padding: 0;
	font-size: 16px;
	line-height: 1.5;
	margin: 0 0 20px 0;
}

/* ERROR PAGE*/

#title-404-error {
	margin-top: 0;
}

#body-404-error {
	margin-bottom: 0;
}

.error-page .slider-text.subpage h1 {
	display: none;
}

/* ERROR PAGE, END */

.editor a, .editor p a {
	/*font-size: 14px;*/
	outline: none;
	text-decoration: underline;
	color: #474748;
	font-weight: bold;
}

.editor a:hover,
.editor p a:hover,
.editor a:active,
.editor p a:active,
.editor a:focus,
.editor p a:focus {
	text-decoration: underline;
	color: #111;

}

.editor a:active,
.editor p a:active,
.editor a:focus,
.editor p a:focus,
.editor a:visited,
.editor p a:visited {
	font-weight: normal;
}

.editor ul {
	margin: 20px 0;
	padding-left: 10px;
	list-style: none;
}

.editor ol {
	margin: 20px 0;
	padding-left: 20px;
}

.editor ol li {
	margin-bottom: 20px;
}

.editor ol li:last-of-type {
	margin-bottom: 0;
}

.editor ul li {
	list-style: none;
	position: relative;
}

.editor ul li:before {
	content: "-";
	position: absolute;
	left: -10px;
}

.editor table caption {
	color: #1C1C1C;
	font-weight: bold;
	font-size: 18px;
	text-align: left;
}

.editor table {
	max-width: 100%;
	table-layout: fixed;
	margin: 20px 0;
}

.editor th, .editor td {
	padding: 10px 20px;
	border: 1px solid #EBEAEA;
	text-align: left;
	vertical-align: top;
}

.editor img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}

/* LARGER FONT */

.font-larger .editor p {
	font-size: 18px;
}

.editor hr {
	margin: 30px 0 30px 0;
	border: 0;
	border-top: 1px solid #EBEAEA;
}

.editor-spacing-hr {
	margin: 30px 0 30px 0;
	border: 0;
	border-top: 1px solid #EBEAEA;
}

p.editor-image-description {
	color: #434343;
	font-size: 14px;
}

img.editor-image {
	margin-bottom: 13px;
}

/* MOBILE MENU */
.mobile-menu-icon,
.desktop-menu-icon {
	display: inline-block;
	float: right;
	height: 35px;
	width: 90px;
	border-radius: 3px;
	background-color: #CFDA58;
	-webkit-box-shadow: 0 2px 4px 0 rgba(0,0,0,0.5);
	box-shadow: 0 2px 4px 0 rgba(0,0,0,0.5);
	border: none;
	color: white;
	font-weight: 600;
	vertical-align: middle;
}

.desktop-menu-icon {
	float: left;
	margin-right: 15px;
}

.float-right {
	float: right;
}

.menu-hide .header-bottom {
	display: none;
}

.header-space.menu-hide {
	height: 50px !important;
}

.hymn-navlinks {
	float: right;
}

@media (min-width: 500px) {
	.hymn-navlinks {
		float: none;
	}
}

.subpage .header-space.menu-hide {
	height: 190px !important;
}

body.no-scroll, html.no-scroll {
	height: 100vh;
	width: 100%;
	overflow-y: hidden;
	overflow-x: hidden;
}

.mobile-menu-spacer {
	position: relative;
}

.mobile-menu-container {
	position: absolute;
	width: 84%;
	/*height: calc(100vh - 135px);*/
	height: calc(100vh - 250px);
	top: 0;
	left: 100%;
	z-index: 300;
	border: 1px solid #EBEAEA;
	background-color: #d5e149;

}

.mobile-menu-spacer.menu-open {
	/*
	-webkit-transform: translateX(0);
	transform: translateX(0);
	*/
}

.mobile-menu-spacer.menu-open .mobile-menu-container {
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

.mobile-menu-overlay {
	visibility: hidden;
	opacity: 0;
	position: absolute;
	background-color: rgba(0,0,0,.4);
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 0;
	-webkit-transition: all .25s;
	transition: all .25s;
}

.content-wrap {
	-webkit-transform: translateX(0);
	transform: translateX(0);
	-webkit-transition: all .25s;
	transition: all .25s;
	position: relative;
}

.content-wrap.move-left {
	-webkit-transform: translateX(-84%);
	transform: translateX(-84%);
}

.content-wrap.move-left .mobile-menu-overlay {
	visibility: visible;
	opacity: 1;
	z-index: 299;
}

@media all and (min-width:992px) {

	.mobile-menu-overlay {
		display: none;
	}
}


ul.mobile-menu {
	padding: 0;
	background-color: #FFFFFF;
}

ul.mobile-menu li {
	list-style: none;
	display: block;
	position: relative;
}


.mobile-menu li.current.level1 > a {
	background-color: rgba(28,28,28,1);
	color: white;
}

.mobile-menu li.current.level1 > .mobile-submenu-icon {
	color: white;
}



ul.mobile-menu li a {
	display: block;
	font-size: 15px;
	color: rgba(28,28,28,1);
	font-weight: 600;
	border-bottom: 1px solid #ebeaea;
}

ul.mobile-menu li a:hover {
	text-decoration: none;
}

.mobile-menu .current-page {
	font-weight: bold;
}


ul.mobile-menu li.level1 > a {
	padding: 15px 20px;
	background-color: rgba(213,225,73,1);
}

.mobile-submenu-icon {
	color: rgba(28,28,28,1);
	font-size: 30px;
	font-weight: bold;
	position: absolute;
	right: 0;
	top: 0;
	padding: 0;
	z-index: 301;
	height: 50px;
	width: 60px;
	cursor: pointer;
}

.mobile-submenu-icon:before {
	position: relative;
	top: 9px;
	left: 18px;
}

ul.mobile-submenu-2, ul.mobile-submenu-3 {
	padding: 0;
	display: none;
}

ul.mobile-submenu-2 li a {
	padding: 15px 20px 15px 20px;
	/*border-bottom: 1px solid #EBEAEA;*/
	-webkit-transition: all .25s;
	transition: all .25s;
}

/*
.mobile-submenu-2 li.current > a {
font-weight: bold;
text-decoration: underline;
}
*/

/*
ul.mobile-submenu-3 {

}
*/

ul.mobile-submenu-2 > li a {
	padding-left: 40px;
}

ul.mobile-submenu-3 > li a {
	padding-left: 60px;
}

/*
ul.mobile-submenu-3 li a {

}
*/

.mobile-search-container {
	height: 50px;
	display: block;
}


/* EVENT PAGE */

.sideheading {
	display: block;
	padding: 20px;
	color: #1C1C1C;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.2;
	background-color: white;
	border-radius: 3px;
}

.event-search, .product-search {
	font-size: 15px;
	color: #1C1C1C;
}

h1.event-search-title, h1.product-page-title, h1.news-page-title, h1.search-page-title {
	margin-top: 0;
	margin-bottom: 0;
	font-size: 28px;
	padding-bottom: 20px;
	border-bottom: 1px solid #8E8E8E;
	font-weight: bold;
	line-height: 1.2;
}

h1.product-page-title {
	margin-bottom: 30px;
}

.event-search label {
	display: inline-block;
	max-width: 100%;
	margin-bottom: 13px;
	font-weight: 600;
}

.form-field.form-field-checkbox .checkbox-item:last-of-type label:last-of-type {
	margin-bottom: 0;
}

.checkbox-item label {
	font-size: 14px;
	margin: 0;
}

.checkbox-item input {
	position: absolute;
	left: 0px;
	top: 2px;
}

.checkbox-item {
	position: relative;
	padding-left: 25px;
	margin-bottom: 10px;
}


.form-field {
	margin: 20px 0;
}

.form-field-input input,
.form-field-select select {
	display: block;
	width: 100%;
	border: 1px solid #8E8E8E;
	border-radius: 3px;
	background-color: #FFFFFF;
	padding: 10px;
	font-size: 14px;
	height: 43px;
}

.form-field.form-field-checkbox input {
	display: inline-block;
	width: 18px;
	height: 18px;
	margin-top: 0;
	margin-bottom: 2px;
	vertical-align: middle;
	border-radius: 3px;
}

.date-item-holder {
	position: relative;
	display: block;
}

.calendar-icon {
	position: absolute;
	left: 15px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}


.date-item-holder input {
	padding-left: 40px;
	font-size: 14px;
	color: #1C1C1C;
}



.date-item-holder input::-webkit-input-placeholder { /* Chrome/Opera/Safari */
	font-family: 'Open Sans', sans-serif;
	color: #1C1C1C;
	font-size: 14px;
	font-weight: 600;
}

.date-item-holder input::-moz-placeholder { /* Firefox 19+ */
	font-family: 'Open Sans', sans-serif;
	color: #1C1C1C;
	font-size: 14px;
	font-weight: 600;
}

.date-item-holder input:-ms-input-placeholder { /* IE 10+ */
	font-family: 'Open Sans', sans-serif;
	color: #1C1C1C;
	font-size: 14px;
	font-weight: 600;
}

.date-item-holder input:-moz-placeholder { /* Firefox 18- */
	font-family: 'Open Sans', sans-serif;
	color: #1C1C1C;
	font-size: 14px;
	font-weight: 600;
}


/*
.checkbox-item input {
margin: 0;
display: inline-block;

-moz-appearance: none;
-webkit-appearance: none;
appearance: none;

border-radius: 3px;
background-color: white;
border: 1px solid #8E8E8E;
width: 15px;
height: 15px;
padding: 7px;
position: relative;
}

.checkbox-item input:checked {
outline: none;
}

.checkbox-item input:checked:after {
content: "\2713 ";
font-weight: bold;
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50% , -50%);
transform: translate(-50% , -50%);
}
*/

/* ALUE KARTTA */

.aluekartta {
	width: 160px;
	height: 320px;
	margin: 0 auto;
}

.lasi {
	background: url(/layout/img/aluekartta_v2.png) top left no-repeat;
	max-width: none;
}

.lasi.pohjoinen-alue {
	background-position: -160px 0;
}

.lasi.keski-pohjanmaa {
	background-position: -320px 0;
}

.lasi.kainuu {
	background-position: -480px 0;
}

.lasi.pohjois-karjala {
	background-position: -640px 0;
}

.lasi.pohjois-savo {
	background-position: -800px 0;
}

.lasi.keski-suomi {
	background-position: -960px 0;
}

.lasi.etela-pohjanmaa {
	background-position: -1120px 0;
}

.lasi.lounais-suomi {
	background-position: -1280px 0;
}

.lasi.hame {
	background-position: -1440px 0;
}

.lasi.helsinki-uusimaa {
	background-position: -1600px 0;
}

.lasi.kaakkois-suomi {
	background-position: -1760px 0;
}


button#search-event-button-js, button#search-product-button-js, button.reset-button, .site-search-button {
	color: white;

	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;

	height: 38px;
	width: 62px;
	border-radius: 3px;
	background-color: #434343;
	-webkit-box-shadow: 0 2px 4px 0 rgba(0,0,0,0.25);
	box-shadow: 0 2px 4px 0 rgba(0,0,0,0.25);
	border: 1px solid #8E8E8E;
	cursor: pointer;
}

button.reset-button {
	width: auto;
	padding: 0 15px;
}


/* MAIN EVENT LIST */

.event-main-list {
	border-top: 1px solid #8E8E8E;
	margin-top: 30px;
	min-height: 49px;
}
.event-main-list.activate {
	display: block;
}
.event-item {
	padding-top: 20px; /*original 30px*/
	padding-bottom: 20px; /*original 30px*/
	border-bottom: 1px dashed #8E8E8E;
}

.event-main-list .event-item:last-of-type {
	border-bottom: 0;
	margin-top: 0;
}

h2.event-item-title, h2.event-item-title a {
	margin-top: 0;
	margin-bottom: 13px;
	color: #1C1C1C;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
	text-decoration: none;
}
.event-item-title a:hover {
	color: #CFDC29;
}
p.event-ingress {
	margin-bottom:10px;
}
/*
.event-details-panel {
display: inline-block;
background-color: #EBEAEA;
border-radius: 3px;
border: 1px solid #8E8E8E;
padding: 10px 15px;
margin-bottom: 15px;
}

*/
.event-details-panel {
	margin-bottom:10px;
}
/*
.event-details-item {
display: inline-block;
float: left;
padding-right: 20px;
}
*/
.event-details-panel .event-details-item:last-of-type {
	padding-right: 0;
}

.event-details-item i, .event-details-item span {
	display: inline-block;
}

.event-details-item i {
	font-size: 15px;
	padding-right: 10px;
	color: #1C1C1C;
}

p.read-more {
	font-size: 14px;
}

img.event-img {
	float: right;
	padding-left: 20px;
	margin-bottom: 20px;
}

.no-search-js {
	cursor: not-allowed!important;
}

/* SEARCH RESULTS */

p.results-text {
	padding: 0;
	margin: 25px 0 0 0;
	color: #1C1C1C;
	font-size: 14px;
	line-height: 1.2;
}

h2.event-region-title {
	margin-top: 20px;
	margin-bottom: 0;
	font-size: 26px;
	font-weight: bold;
	line-height: 1.2;
}

/* PICK A DATE FROM TO */

.picker__holder {
	position: absolute;
	background-color: white;
	border: 1px solid black;
	top: 55px;
	left: 0;
	min-width: 300px;
	font-size: 1.2em;
	display: none;
	z-index: 2;
}

.picker--opened .picker__holder {
	display:block;
}


/* EVENT PAGE */

h2.event-title {
	color: #1C1C1C;
	margin-top: 30px;
	margin-bottom: 25px;
	font-size: 28px;
	font-weight: bold;
	line-height: 1.4;
}

.backlink {
	color: #1C1C1C;
	padding: 0;
	font-size: 16px;
	line-height: 1.4;
	margin: 0 0 20px 0;
}

.backlink a {
	font-size: 14px;
	outline: none;
	text-decoration: none;
	color: #474748;
}

.backlink a:hover,
.backlink a:hover,
.backlink a:active,
.backlink a:active,
.backlink a:focus,
.backlink a:focus {
	text-decoration: underline;
	color: #111;

}

.event-details-panel.single-event {
	display: block;
	margin-bottom: 30px;
}

img.event-page-img {
	margin-bottom: 28px;
}

/* GOOGLEMAP */

div#contact-map {
	display: block;
	height: 505px;
	max-width: 750px;
}


/* PRODUCT SEARCH, SIIONIN VIRRET */

.product-search-input {
	display: block;
	width: 100%;
}

.hymn-main-list {
	border-top: 1px solid #EBEAEA;
	margin-top: 35px;
	padding-top: 10px;
	min-height: 104px;
}

.hymn-item {
	margin: 20px 0 0 0;
	color: #1C1C1C;
	font-size: 18px;
}

.hymn-item span {
	display: inline-block;
	margin-right: 15px;
}

.hymn-item mark {
	background-color: #f4f4f4;
	font-weight: bold;
}

span.hymn-author {
	display: inline;
}

span.open-hymn-link {
	margin-right: 0;
	float: right;
}

span.open-hymn-link, span.open-hymn-link a {
	color: #1C1C1C;
	font-size: 16px;
}

span.hymn-name {
	font-weight: bold;
}

span.hymn-number {
	padding: 6px 10px;
	line-height: 1;
	border: 1px solid #8E8E8E;
	border-radius: 3px;
	margin-bottom: 10px;
}

span.hymn-number--hymn-page {
	padding: 6px 10px;
	line-height: 1;
	border: 1px solid #8E8E8E;
	border-radius: 3px;
	margin-right: 15px;
	font-weight: 500;
	display: inline-block;
}

.hymn-title {
	color: #1C1C1C;
	margin-top: 30px;
	margin-bottom: 30px;
	font-size: 28px;
	font-weight: bold;
	vertical-align: middle;
}

.no-ajax-results-title {
	font-size: 26px;
	font-weight: bold;
	color: #1C1C1C;
	margin: 0;
	padding-top: 20px;
}

.editor.hymn-page-editor {
	max-width: 250px;
	margin-left: 50px;
}

.editor.hymn-page-editor ol {
	margin-bottom: 30px;
}


/* SUBPAGE LIFT */

.row.subpage-lift {
	padding-top: 40px;
}

.subpage-lift-item {
	height: 174px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}

.subpage-lift-link {
	position: absolute;
	display:block;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #1C1C1C;
	font-size: 15px;
	color: #FFFFFF;
	font-weight: bold;
	text-align: center;
	padding: 10px;
}

/* DICTIONARY */

.dictionary-search-field {
	border-top: 1px solid #EBEAEA;
	padding-top: 20px;
	margin-top: 30px;
}

.dictionary-search-field label {
	font-size: 16px;
	color: #1C1C1C;
	font-weight: 600;
	margin-bottom: 12px;
}

.dictionary-name {
	color: #1C1C1C;
	font-size: 15px;
	font-weight: bold;
	line-height: 22px;
	padding: 8px 40px 8px 20px;
	background-color: rgba(235,234,234,1);
	margin-top: 0px;
	margin-bottom: 10px;
	cursor: pointer;
	position: relative;
}

.dictionary-name i {
	position: absolute;
	right: 20px;
	top: 12px;
}

.dictionary-item:nth-child(odd) .dictionary-name {background-color: rgba(235,234,234,1);}
.dictionary-item:nth-child(even) .dictionary-name {background-color: white;}

.dictionary-description {
	padding: 15px 20px;
	display: none;
}

.dictionary-description p {
	font-size: 15px;
	color: #1C1C1C;
	line-height: 21px;
}

.dictionary-list {
	padding-top: 30px;
	min-height: 78px;
}

.dictionary-image-holder {
	max-width: 200px;
	float: right;
	padding-left: 20px;
}

.dictionary-image-holder img {
	margin-bottom: 10px;
}

.dictionary-image-description {
	font-size: 14px!important;
	line-height: 1.4!important;
}

.key-letter-js {
	font-size: 20px;
	line-height: 1;
	color: #1C1C1C;
	font-weight: bold;
	border-bottom: 1px dashed #EBEAEA;
	margin-top: 10px;
	margin-bottom: 15px;
	padding-bottom: 10px;
}

.letter-panel {
	margin-top: 30px;
}

.letter-panel a {
	font-size: 20px;
	color: #1C1C1C;
}

.letter-panel span {
	display: inline-block;
	padding-right: 15px;
}

/* NEWSPAGE */

.newspage-item {
	padding-top: 30px;
	padding-bottom: 30px;
	border-bottom: 1px dashed #8E8E8E;
}

.pagination span, .pagination span a {
	color: #1C1C1C;
	font-size: 16px;
	margin: 0 5px 0 0;
}

.pagination span.curPage strong {
	text-decoration: underline;
}

/* SEARCH PAGE */

.search-results-list {
	/*border-top: 1px solid #8E8E8E;*/
	/*margin-top: 30px;*/
	padding-top: 30px;
}

.search-item {
	padding-top: 30px;
	padding-bottom: 30px;
	border-bottom: 1px dashed #8E8E8E;

}

h2.search-item-title, h2.search-item-title a {
	margin-top: 0;
	margin-bottom: 13px;
	color: #1C1C1C;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
	text-decoration: none;
}

/* RESPONSIVE STYLES */

@media all and (min-width:992px) {

	.mobile-menu-spacer {
		display: none!important;
	}
}

@media all and (max-width:1200px) {
	.lift-left {
		padding: 20px;
	}

	ul.main-menu li.level1 a {
		font-size: 16px;
	}

	ul.main-menu li.level1 {
		padding-right: 10px;
	}
	.lahjoita-table {
		width: 645px!important;
	}
}

@media all and (max-width:992px) {
	.lahjoita-table {
		width: 100%!important;
	}

	input.main-search-input {
		margin-top: 0;
		width: calc(100% - 60px);
	}

	button.search-submit {
		margin-top: 0;
		width: 61px;
		text-align: right;
	}

	.header-right.bottom {
		padding-top: 5px;
		padding-bottom: 10px;
	}

	.header-logo-container {
		padding: 20px 18px 10px 18px;
	}

	.header-left {
		width: 107px;
	}

	.header-right {
		width: calc(100% - 107px);
	}

	.header-right.bottom.scrolled {
		padding-top: 5px;
		padding-bottom: 10px;
	}

	.header-logo.scrolled {
		/* width: 100%; */
		height: auto;
	}

	/* KARUSELLI */

	.carousel, .slider, .slider-item {
		height: 245px;
	}

	.slider-text a {
		margin-top: 5px;
	}

	.subpage-banner {
		height: 195px;
	}

	.slider-text.subpage h1 {
		font-size: 32px;
	}

	.bottom-curve {
		height: 10px;
	}

	.bottom-curve-inner:after {
		top: -10px;
		background: radial-gradient(ellipse 53% 50%, transparent 0, transparent 92%, #EBEAEA 100%);
	}

	.slider-text h1 {
		font-size: 26px;
	}

	.container.frontpage-lift {
		margin-top: 30px;
	}

	.slick-dots {
		bottom: 15px;
	}

	.slider-text .default-btn {
		height: 40px;
		padding: 10px 20px;
	}

	.lift-right img {
		padding: 15px;
	}

	.content-section {
		margin-bottom: 30px;
	}

	.lift-item {
		height: auto;
	}

	.lift-left {
		padding: 20px 0 20px 15px;
	}

	.lift-left h2 {
		font-size: 20px;
	}

	.lift-left p {
		font-size: 14px;
	}

	.item-margin {
		margin-bottom: 20px;
	}

	.page-intro {
		padding-top: 20px;
		padding-bottom: 20px;
	}

	.page-intro h1 {
		font-size: 32px;
	}

	.page-intro p, .page-intro p a {
		font-size: 23px;
	}

	.news-item img {
		display: none;
	}

	.feed-item img {
		display: none;
	}

	.feed-panel {
		margin-bottom: 20px;
	}

	.editor hr {
		margin: 20px 0 20px 0;
	}

	.editor-spacing-hr {
		margin: 20px 0 20px 0;
	}

	.subpage-left {
		padding: 18px 15px 18px 15px;
	}

	.subpage-main-content {
		margin-top: 30px;
	}
}

@media all and (max-width:768px) {

	.table-wrap table {
		margin-bottom: 10px;
		width: 100%;
		min-width: 500px;
		margin-top: 0;
	}

	.table-wrap {
		max-width: 100%;
		overflow-x: auto;
		margin-bottom: 20px;
	}

	.table-wrap table td, .table-wrap table th {
		word-wrap: break-word;
	}
	
	.lahjoita-table {
		min-width: 0 !important;	
	}
	
	.lahjoita-table td {
		float: left;
		width: 100%;
		display: block;
	}

	img.event-img {
		float: none;
		padding-left: 0px;
		margin-bottom: 20px;
	}

	.hymn-item {
		font-size: 16px;
		text-align: center;
	}

	.divider {
		display: none!important;
	}

	.hymn-author {
		margin-top: 5px;
		margin-bottom: 10px;
		display: block!important;
	}

	.open-hymn-link {
		float: none!important;
	}

	.editor.hymn-page-editor {
		margin-left: 0;
	}

	.date-item-holder.first {
		margin-bottom: 10px;
	}

	.location-popup {
		padding: 20px;
	}

	.dictionary-image-holder {
		float: none;
		padding-left: 0;
	}

	h1.event-search-title, h1.product-page-title, h1.news-page-title, h1.search-page-title {
		font-size: 26px;
	}

	h2.event-title {
		margin-top: 25px;
		font-size: 26px;
	}

	.newspage-item, .search-item, .event-item {
		padding-top: 20px;
		padding-bottom: 20px;
	}

	.search-results-list {
		margin-top: 20px;
		padding-top: 20px;
	}

	.desktop-alueet.form-field {
		margin-top: 30px;
		margin-bottom: 0;
	}

}

@media all and (max-width: 480px) {

	.event-details-item {
		margin-bottom: 10px;
	}

	.event-details-panel {
		padding-bottom: 0;
	}

	img.event-img {
		width: 100%;
	}

	img.event-page-img {
		width: 100%;
	}

	.lift-left {
		width: calc(100% - 120px);

	}

	.lift-right {
		float: left;
		width: 120px;
	}

}



/* Hymn-listing respo fixes */
.hymn-item {
	margin: 0 -15px;
	padding: 10px 15px;
}

@media screen and (max-width: 768px) {
	.hymn-item:nth-of-type(even) {
		background-color: #f9f9f9;
	}

	.hymn-item {
		text-align: left;
	}

	.hymn-item .hymn-author {
		display: inline-block !important;
	}

	.hymn-item .divider {
		display: none !important;
	}

	.hymn-item span.open-hymn-link {
		display: block;
	}
}

@media screen and (max-width: 450px) {
	.hymn-item .divider {
		display: none !important;
	}

	.hymn-item .hymn-author {
		display: block !important;
	}
}





/* Hymn-page gallry, youtube embed and downloadable files */
.subheader {
	margin-bottom: 20px;
}

.hymn-page-editor {
	margin-bottom: 30px;
}

.hymn-section {
	padding: 15px 0;
}

.hymn-section:first-of-type {
	margin-top: 30px;
}

.hymn-gallery .row {
	display: -ms-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
}

.hymn-gallery a:focus {
	outline: 0;
}

.hymn-image {
	padding-top: 100%;
	margin-bottom: 20px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	-webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
	box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
	-webkit-transition: all 0.3s cubic-bezier(.25,.8,.25,1);
	transition: all 0.3s cubic-bezier(.25,.8,.25,1);
}

.hymn-image:hover {
	-webkit-box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23);
	box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23);
	-webkit-transform: translateY(-3px);
	transform: translateY(-3px);
}

.hymn-page audio {
	display: block;
	width: 100%;
	margin-bottom: 15px;
}




/* Form styles */
.flex-outer,
.flex-inner {
	list-style-type: none;
	padding: 0;
}

.flex-outer {
	max-width: 800px;
	margin: 0 auto;
}

.flex-outer li,
.flex-inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.flex-inner {
	padding: 0;
}

.flex-outer > li:not(:last-child) {
	margin-bottom: 20px;
}

.flex-outer li label,
.flex-outer li p {
	padding: 8px;
	font-weight: 600;
	letter-spacing: .03em;
	color: #1C1C1C;
}

.flex-outer > li > label,
.flex-outer li p {
	-webkit-box-flex: 1;
	-ms-flex: 1 0 120px;
	flex: 1 0 120px;
	max-width: 220px;
}

.flex-outer > li > label + *,
.flex-inner {
	-webkit-box-flex: 1;
	-ms-flex: 1 0 220px;
	flex: 1 0 220px;
}

.flex-outer li p {
	margin: 0;
}

.flex-outer li input:not([type='checkbox']),
.flex-outer li textarea,
.flex-outer li select {
	border: 1px solid #8e8e8e;
	border-radius: 3px;
	background-color: #fff;
	padding: 10px;
	font-size: 14px;
	color: #1c1c1c;
}

.flex-outer li input[type='checkbox'],
.flex-outer li input[type='radio'] {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-top: 0;
	margin-bottom: 2px;
	vertical-align: middle;
	border-radius: 3px;
}

.flex-outer li button {
	color: white;
	padding: 8px 16px;
	font-weight: 600;
	border-radius: 5px;
	border: none;
	background-color: #CFDA58;
	-webkit-transition: all .25s;
	transition: all .25s;
	margin-left: auto;
}

.flex-inner li {
	width: 100px;
}

.flex-inner > label {
	-webkit-box-flex: 1;
	-ms-flex: 1 1 auto;
	flex: 1 1 auto;
}


@media screen and (max-width: 579px) {
	.flex-outer > li > label + *,
	.flex-inner {
		-ms-flex: 100%;
		-webkit-box-flex: 100%;
		flex: 100%;
	}
}

span.tag:not(:last-of-type)::after { 
	content: ', ' 
}