/*
	Theme Name: Iggo WP
	Theme URI: http://www.kipex.tv/
	Description: HTML5 and Bootstrap 4 based site
	Author: Kimmo Kovalainen
	Version: 2016 (4.6)
	Tags: html5, responsive, bootstrap4, iggo
*/






/* Global
---------------------------------------------------------------------------------------------------------------------- */
html { overflow-y: scroll; }
body { font-family: "Noto Serif", Arial, Helvetica, sans-serif; padding-top: 0; display: flex; display: -webkit-flex; flex-direction: column; -webkit-flex-direction: column; min-height: 100vh; }
header { width: 100%; }
section { width: 100%; padding: 3rem 0; z-index: 10; position: relative; }
footer { width: 100%; }
img { max-width: 100%; }
ul, div { margin: 0; padding: 0; }
select { -webkit-appearance: none; }
a,
a:focus { outline: none; }
button { outline: none; padding: 0; }
li, ul { margin: 0; padding: 0; }

/* Remove input shadows on iPad */
input[type="text"], input[type="email"], input[type="search"], input[type="password"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; border-radius: 0; }


	/* Small devices (landscape phones, less than 48em) */
	@media (max-width: 47.9em) {
		html { font-size: 14px; }
		body { margin-top: 50px !important; }
		body.noscroll { margin-top: 0 !important; }
	}






/* Typography
---------------------------------------------------------------------------------------------------------------------- */
h1 { font-family: "Noto Sans"; 	font-size: 2rem; 		font-weight: 700; 	text-transform: none;		color: #164a98; 		margin: 0 0 1.5rem 0;	line-height: 1.2; 	letter-spacing: 0px; }
h2 { font-family: "Noto Sans"; 	font-size: 1.375rem; 	font-weight: 700; 	text-transform: none;		color: #164a98; 		margin: 0 0 1rem 0;		line-height: 1.2; 	letter-spacing: 0px; }
h3 { font-family: "Noto Sans"; 	font-size: 1.188rem; 	font-weight: 700; 	text-transform: none;		color: #333; 			margin: 0 0 0.25rem;	line-height: 1.1; 	letter-spacing: 0px; }

.category h2 { margin: 0 0 0.25rem; }

a,
a:hover,
a:focus { color: #16AABA; }

blockquote { font-style: italic; margin: 1rem; padding: 1rem 1.5rem 0.1rem; background: #F0F0F0; }
hr { background-color: #CCC; border: 0 none; height: 1px; margin: 2rem 0; }


	/* Small devices (landscape phones, less than 48em) */
	@media (max-width: 47.9em) {
	}





/* Header
---------------------------------------------------------------------------------------------------------------------- */
header { height: 84px; z-index: 120; position: relative; background: #F3F1F8; transition: all 0.2s ease-in-out 0s; }

header .logo { position: absolute; top: 0; left: calc(50% - 150px); width: 300px; margin: 15px 10px 10px 0; transition: all 0.1s ease-in-out 0s; z-index: 135; transform: translate(0, 0); display: flex; } 
header .logo img { z-index: 10; position: relative; width: 100%; height: 100%; }
header .logo::after {content: "®"; font-size: 12px; margin-right: 5px; display: inline-block; vertical-align: middle; position: relative; z-index: 136; }
header .topbar { background: #333; color: #d1d6d8; height: 40px; line-height: 40px; letter-spacing: 0.5px; }
header .container { position: relative; }

header .textlinks,
header .textlinks p { text-transform: uppercase; margin: 0; font-weight: 400; font-size: 0.875rem; }
header .right { float: right; }
header .left { float: left; }

header .textlinks.right a {  }

header .left a { color: #d1d6d8; }

.language-switcher { float: left; margin: 29px 0 0 0; }
.language-switcher > a { font-weight: 700; font-size: 0.875rem; color: #164a98; }
.language-switcher .separator { font-size: 0.875rem; margin: 0 8px; color: rgba(0,0,0,0.4); }

.searchwrap { float: right; margin: 29px 0 0 0; }
form#searchform { }
form#searchform input[type="text"] { background: #FFF; border: 1px solid #DDD; border-radius: 0px; height: 28px; float: left; width: 160px; padding: 3px 7px; border-right: none; font-size: 0.813rem; }
form#searchform button { height: 28px; line-height: 28px; width: 28px; text-align: center; color: #FFF; text-shadow: none; border: none; float: right; background: #CCC; border-radius: 0; }
form#searchform .fa { display: block; margin-left: 1px; text-align: center; color: #FFF; font-size: 0.813rem; line-height: 28px; }

.nav-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.5); opacity: 1; transition: all 0.2s ease-in-out 0s; z-index: 101; visibility: visible; }
.nav-overlay.disabled { opacity: 0; visibility: hidden; background: rgba(0,0,0,0.0); }


	/* Medium devices (tablets, less than 62em) */
	@media (max-width: 61.9em) {
	}

	/* Small devices (landscape phones, less than 48em) */
	@media (max-width: 47.9em) {
		header { height: 50px; position: fixed; top: 0; left: 0; box-shadow: 0px 1px 2px rgba(0,0,0,0.15); }
		header .topbar { background: none; height: 50px; line-height: 50px; }
		header .logo { float: left; width: 150px; margin: 11px 0; position: relative !important; top: auto; left: auto; }
		header .logo img { float: left; }
		header .logo::after {content: "®"; font-size: 9px; margin-right: 5px; display: inline-block; vertical-align: middle; position: relative; z-index: 136; }
		header .container { padding-left: 0; }

		.language-switcher { float: right !important; line-height: 50px; margin: 0; }
		.language-switcher .separator { color: rgba(0,0,0,0.3); margin: 0 5px; }

		html.noscroll { overflow: hidden !important; height: 100%; }
		body.noscroll { overflow: hidden !important; height: 100%; position: relative; }

		.navbar-toggler { float: left; width: 50px; height: 50px; border: none; margin: 0 5px 0 0; transition: all 0.05s linear 0s; outline: none; z-index: 110; position: relative; border-radius: 0; padding: 5px 14px; }
		.navbar-toggler:active { background: rgba(0,0,0,0.15); }

		.icon-bar { background: #333; float: left; width: 100%; height: 2px; margin: 2px 0; transition: all 0.2s ease-in-out 0s; }
		.top-bar { transform: rotate(45deg); -webkit-transform: rotate(45deg); transform-origin: 10% 10%; -webkit-transform-origin: 10% 10%; }
		.middle-bar { opacity: 0; }
		.bottom-bar { transform: rotate(-45deg); -webkit-transform: rotate(-45deg); transform-origin: 10% 90%; -webkit-transform-origin: 10% 90%; }

    	.collapsed .top-bar { transform: rotate(0); -webkit-transform: rotate(0); }
    	.collapsed .middle-bar { opacity: 1; }
    	.collapsed .bottom-bar { transform: rotate(0); -webkit-transform: rotate(0); }

		nav#mobile ul > li { clear: both; float: left; width: 100%; }
		nav#mobile ul > li > a { float: left; width: 100%; color: #EEE; padding: 1rem 1rem; transition: all 0.05s linear 0s; font-weight: bold; }
		nav#mobile ul > li > a:hover,
		nav#mobile ul > li > a:focus { text-decoration: none; }
		nav#mobile ul > li > a:active { background: rgba(255,255,255,0.15); color: #FFF; }

		.nav-overlay { background: rgba(0,0,0,0.75); }
	}





/* Nav
---------------------------------------------------------------------------------------------------------------------- */
nav#main { clear: both; float: right; width: 100%; height: 40px; position: relative; box-shadow: 0 2px 2px rgba(0,0,0,0.15); }
nav .container { position: relative; }

.navbg { float: left; width: 100%; height: 100%; z-index: 0; background: #F3F1F8 url("images/pattern-top.svg") repeat-x 0px 16px / 24px; transition: all 0.1s ease-in-out 0s; }
.menu-zwrap { background: #FFF; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -1; }

/* Sticky NAV after scrolling x pixels determined in header */
body.sticky { margin-top: 90px; }
nav.sticky { position: fixed !important; top: 0; left: 0; z-index: 1000; }

nav .menu { position: relative; display: flex; display: -webkit-flex; flex-wrap: nowrap; -webkit-flex-wrap: nowrap; }

.mainmenu { z-index: 130; margin: 0; font-family: "Noto Sans"; }
.mainmenu .menu > li { list-style: none; margin: 0; transition: all 0.2s ease-in-out 0s; position: relative; flex-grow: 1; -webkit-flex-grow: 1; }
.mainmenu .menu > li > a { float: left; width: 100%; text-align: center; color: #164a98; line-height: 38px; padding: 0; font-weight: 400; font-size: 0.938rem; transition: all 0.2s ease-in-out 0s; position: relative; background: #F3F1F8; border-top: 2px solid #F3F1F8; }

.mainmenu .menu > li:hover > a,
.mainmenu .menu > li.selected > a,
.mainmenu .menu > li.current-menu-item > a,
.mainmenu .menu > li.current_page_ancestor > a { background: #FFF; border-top: 2px solid #164a98; }

.mainmenu .menu > li > a:hover { text-decoration: none; }
.mainmenu .menu > li > a:focus { text-decoration: none; }
.mainmenu .menu > li.current-menu-item > a { background: #FFF; }

/* 2nd Level */
.mainmenu .menu > li > .sub-menu { visibility: hidden; opacity: 0; background: #FFF; position: absolute; top: 100%; left: 0; min-width: 100%; padding: 0; box-shadow: 0 3px 3px 0px rgba(0, 0, 0, 0.2); transition: all 0.2s ease-in-out 0s; z-index: -2; transform: translate3d(0, -14px, 0); -webkit-transform: translate3d(0, -14px, 0); }
.mainmenu .menu > li:last-child > .sub-menu { left: auto; right: 0; }
.mainmenu .menu > li.selected > .sub-menu { visibility: visible; opacity: 1; transform: translate3d(0, 0, 0); -webkit-transform: translate3d(0, 0, 0); }

.mainmenu .menu > li > ul > li { float: left; list-style: none; padding: 0; margin: 0; width: 100%; position: relative; border-top: 1px solid #DDD; }
.mainmenu .menu > li > ul > li:nth-child(4) { clear: both; }

.mainmenu .menu > li > ul > li:last-child { border-bottom: none; }
.mainmenu .menu > li > ul > li:first-child { margin-left: 0; }
.mainmenu .menu > li > ul > li > a { float: left; font-size: 0.813rem; letter-spacing: 0px; line-height: 1.2 !important; padding: 0.5rem 1rem; width: 100%; text-align: center; color: #164a98; }

.mainmenu .menu > li > ul > li > a:hover { text-decoration: none; background: rgba(0,0,0,0.05); }

/* 3rd Level */
.mainmenu .sub-menu > li > .sub-menu { display: none; }
.mainmenu .sub-menu > li > .sub-menu > li { clear: both; float: left; list-style: none; line-height: 1.1; margin: 3px 0; }
.mainmenu .sub-menu > li > .sub-menu > li > a { color: #333; font-size: 0.813rem; }


	/* Medium devices (tablets, less than 62em) */
	@media (max-width: 61.9em) and (min-width: 48em) {
		nav .logo { width: 70px; }

		.mainmenu .menu > li > a { font-size: 0.813rem; padding: 0 !important; letter-spacing: -0.5px; }

		.mainmenu .menu > li > ul > li { margin: 6px 0; }
		.mainmenu .menu > li > ul > li > a { font-size: 0.813rem; }
	}

	/* Small devices (landscape phones, less than 48em) */
	@media (max-width: 47.9em) {
	}





/* Content
---------------------------------------------------------------------------------------------------------------------- */
section#content { background: #F3F1F8 url("images/pattern-bottom.svg") repeat-x 0px 2px / 24px; padding: 4rem 0 3.125rem; }
section.expand { flex: 1 1 auto; -webkit-flex: 1 1 auto; }

section p,
section li { line-height: 1.4; color: #164a98; font-size: 1rem; letter-spacing: 0px; }

.home section p,
.home section li { line-height: 1.5; color: #164a98; font-size: 1.313rem; font-weight: 400; }

section ul,
section ol { margin: 0 0 1rem; padding: 0; }
section ul li,
section ol li { margin-left: 0.9375rem; margin-bottom: 8px; }

section strong { font-weight: 700; }

section img { margin: 0; max-width: 100%; height: auto; }

section .alignleft { display: inline; float: left; margin: 5px 24px 20px 0; max-width: 50%; }
section .alignright { display: inline; float: right; margin: 5px 0 20px 24px; max-width: 50%; }
section .aligncenter { clear: both; display: block; margin: 5px auto 12px;  }

.wp-caption { background: #f1f1f1; line-height: 18px; text-align: center; margin-bottom: 0; padding: 0; }
.wp-caption img { padding: 8px 8px 4px 8px; }
.wp-caption-text { margin: 1px 10px 8px; color: #666; font-size: 0.813rem; font-style: italic; }

/* Sidemenu */
ul.sidemenu { clear: both; float: left; width: 100%; margin: 4px 0 1rem !important; font-family: "Noto Sans"; }

ul.sidemenu li { list-style: none !important; }
ul.sidemenu > li { clear: both; float: left; width: 100%; padding: 0; margin: 0 !important; border-bottom: 2px dotted #164a98; }
ul.sidemenu > li:first-child { border-top: 2px dotted #164a98; }
ul.sidemenu > li > a { float: left; width: 100%; padding: 6px; color: #164a98; border-radius: 0; font-size: 0.938rem; text-align: center; }
ul.sidemenu > li > a:hover,
ul.sidemenu > li > a:focus { background: linear-gradient(to right, rgba(255,255,255,1) 0%,rgba(243,243,243,1) 100%); text-decoration: none; }

ul.sidemenu > li:nth-child(2) > a { border-radius: 0; }
ul.sidemenu > li:last-child > a { border-radius: 0; }
ul.sidemenu > li:last-child.current_page_item.page_item_has_children > a,
ul.sidemenu > li:last-child.current_page_ancestor.page_item_has_children > a { border-radius: 0; }

ul.sidemenu > li.current_page_item > a { background: #FFF; }
ul.sidemenu > li.current_page_ancestor > a { background: #FFF; }

#kolttalogo { text-align: center; clear: left; padding-top: 25px; }


/* Lvl2 */
ul.sidemenu > li > ul.children { clear: both; float: left; width: 100%; display: none; margin: 5px 0 10px; border-radius: 0; overflow: hidden; }
ul.sidemenu > li.current_page_ancestor > ul.children,
ul.sidemenu > li.current_page_item > ul.children { display: block; }

ul.sidemenu > li > ul.children > li { clear: both; float: left; width: 100%; background: none; padding: 0; margin: 0 !important; }
ul.sidemenu > li > ul.children > li:first-child { border-top: none; }
ul.sidemenu > li > ul.children > li > a { float: left; width: 100%; font-size: 14px; padding: 4px 10px 4px 17px; color: #333; position: relative; }
ul.sidemenu > li > ul.children > li > a:before { content: "»"; position: absolute; top: 3px; left: 5px; }
ul.sidemenu > li > ul.children > li > a:hover,
ul.sidemenu > li > ul.children > li > a:focus { text-decoration: none; background: linear-gradient(to right, rgba(255,255,255,1) 0%,rgba(243,243,243,1) 100%); }
ul.sidemenu > li > ul.children > li.current_page_item > a { color: rgb(0,168,230); }

ul.sidemenu > li:last-child > ul.children { border-radius: 0; overflow: hidden; }


/* Widemenu (not in use) */
.widemenu { margin: 0 auto; padding: 0; max-width: 700px; text-align: center; }
.widemenu li { display: inline-block; list-style: none; padding: 0; margin: 2px 10px; font-size: 1rem; font-weight: 500; }
.widemenu li a { float: left; }
.widemenu li.current_page_item a { color: #999; }


	/* Medium devices (tablets, less than 62em) */
	@media (max-width: 61.9em) {
		ul.sidemenu > li > a { font-size: 0.938rem; }
	}





/* Topimage
---------------------------------------------------------------------------------------------------------------------- */
section#topimage { padding: 0; background: #16AABA; }

#iggoslider { width: 100%; overflow: hidden; }
#iggoslider .single-slide { width: 100%; outline: none; background-size: cover; background-position: center top; }

.home #topimage,
.home #iggoslider,
.home #iggoslider .single-slide,
.home #iggoslider .slick-list,
.home #iggoslider .slick-track { height: 395px; }

#topimage,
#iggoslider,
#iggoslider .single-slide,
#iggoslider .slick-list,
#iggoslider .slick-track { height: 225px; }

.single-slide .bgcolor { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.single-slide .bgcolor.red { background: linear-gradient(to right, rgba(191,59,19,0.6) 0%,rgba(191,59,19,0.6) 33%,rgba(191,59,19,0) 66%,rgba(191,59,19,0) 100%); }
.single-slide .bgcolor.green { background: linear-gradient(to right, rgba(131,186,14,0.6) 0%,rgba(131,186,14,0.6) 33%,rgba(131,186,14,0) 66%,rgba(131,186,14,0) 100%); }
.single-slide .bgcolor.greengrey { background: linear-gradient(to right, rgba(60,85,7,0.6) 0%,rgba(60,85,7,0.6) 33%,rgba(60,85,7,0) 66%,rgba(60,85,7,0) 100%); }
.single-slide .bgcolor.blue { background: linear-gradient(to right, rgba(0,115,189,0.6) 0%,rgba(0,115,189,0.6) 33%,rgba(0,115,189,0) 66%,rgba(0,115,189,0) 100%); }
.single-slide .bgcolor.bluegrey { background: linear-gradient(to right, rgba(47,72,88,0.6) 0%,rgba(47,72,88,0.6) 33%,rgba(47,72,88,0) 66%,rgba(47,72,88,0) 100%); }
.single-slide .bgcolor.orange { background: linear-gradient(to right, rgba(238,115,0,0.6) 0%,rgba(238,115,0,0.6) 33%,rgba(238,115,0,0) 66%,rgba(238,115,0,0) 100%); }
.single-slide .bgcolor.black { background: linear-gradient(to right, rgba(0,0,0,0.6) 0%,rgba(0,0,0,0.6) 33%,rgba(0,0,0,0) 66%,rgba(0,0,0,0) 100%); }

#iggoslider .container { height: 100%; position: relative; display: flex; display: -webkit-flex; align-items: center; -webkit-align-items: center; }

.endcontent { align-items: flex-end !important; -webkit-align-items: flex-end !important; }

.slideinfo { color: #FFF; width: 50%; padding: 0 0 0.375rem; background: none; }

.slideinfo .buttongroup { display: flex; display: -webkit-flex; align-items: stretch; -webkit-align-items: stretch; flex-wrap: wrap; -flex-wrap: wrap; margin: 0 -5px; }
.buttongroup > .sbwrap { flex: 0 0 100%; -webkit-flex: 0 0 100%; }
.sbwrap > a { max-width: 100%; margin: 0 5px; }

.slideinfo .buttongroup a { background: none; display: inline-block; padding: 0.75rem 1.75rem; border-radius: 0; transition: all 0.15s ease-in-out 0s; color: #FFF; text-shadow: none; position: relative; overflow: hidden; font-size: 1rem; cursor: pointer; border: 1px solid #FFF; text-transform: uppercase; letter-spacing: 1.5px; font-weight: 400 !important; }
.slideinfo .buttongroup a:hover,
.slideinfo .buttongroup a:focus { background: #FFF; color: rgb(137,84,157); text-decoration: none; }

.slideinfo h2 { margin-top: 0 !important; margin-bottom: 1.438rem !important; font-size: 3.5rem; font-weight: 700; text-transform: uppercase; color: #FFF; letter-spacing: 1.5px; }
.slideinfo p { color: #FFF !important; font-size: 1rem !important; margin-bottom: 0.875rem !important; margin-top: 0.125rem; font-weight: 400 !important; letter-spacing: 1.5px; text-transform: uppercase; }

/* Subpage view */
#slider-pageinfo { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 10; }
#slider-pageinfo > .container { display: flex; display: -webkit-flex; align-items: center; -webkit-align-items: center; height: 100%; position: relative; }
.section-title { width: 100%; }
.section-title h2 { margin: 0; color: #FFF; font-size: 2.5rem; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px; }

#slider-pageinfo .tk2019 { position: absolute; width: 280px; height: auto; top: 2rem; right: 3rem; }
#slider-pageinfo .pienimmanpuolesta { position: absolute; top: calc(50% - 70px); left: 4rem; }


	/* Large devices (desktops, less than 75em) */
	@media (max-width: 74.9em) {
		.home #topimage,
		.home #iggoslider,
		.home #iggoslider .single-slide,
		.home #iggoslider .slick-list,
		.home #iggoslider .slick-track { height: 395px; }
	}

	/* Medium devices (tablets, less than 62em) */
	@media (max-width: 61.9em) {
		.home #topimage,
		.home #iggoslider,
		.home #iggoslider .single-slide,
		.home #iggoslider .slick-list,
		.home #iggoslider .slick-track { height: 395px; }

		#topimage,
		#iggoslider,
		#iggoslider .single-slide,
		#iggoslider .slick-list,
		#iggoslider .slick-track { height: 200px; }

		.slideinfo h2 { font-size: 2.5rem; }
		.slideinfo p { font-size: 0.875rem !important; }
		.slideinfo .buttongroup a { font-size: 0.875rem !important; }
	}

	/* Small devices (landscape phones, less than 48em) */
	@media (max-width: 47.9em) {
		.home #topimage,
		.home #iggoslider,
		.home #iggoslider .single-slide,
		.home #iggoslider .slick-list,
		.home #iggoslider .slick-track { height: 250px; }

		#topimage,
		#iggoslider,
		#iggoslider .single-slide,
		#iggoslider .slick-list,
		#iggoslider .slick-track { height: 120px; }

		.slideinfo { width: 100%; text-align: center; }
		.slideinfo h2 { font-size: 1.5rem; }
		.section-title { text-align: left; }
		.section-title h2 { font-size: 1.5rem; }
	}





/* SLICK Sliders
---------------------------------------------------------------------------------------------------------------------- */
.slick-prev,
.slick-next { position: absolute; top: calc(50% - 68px); box-shadow: none; width: 50px; height: 140px; border: none; z-index: 3; opacity: 0.3; transition: all 0.1s ease-in-out 0s; }
.slick-prev { background: url("images/slick-arrows.png") no-repeat 10px 0px; left: 20px; }
.slick-next { background: url("images/slick-arrows.png") no-repeat 10px -160px; right: 20px; }

.slick-prev:hover { opacity: 1; background-position: 5px 0px; }
.slick-next:hover { opacity: 1; background-position: 15px -160px; }

.slick-dots { position: absolute; bottom: 20px; left: 0; margin: 0; width: 100%; text-align: center; z-index: 20; }
.slick-dots > li { display: inline-block; overflow: hidden; margin: 0 0.375rem; }
.slick-dots > li > button { -webkit-appearance: none; display: block; width: 14px; height: 14px; border-radius: 14px; padding: 0; border: none; background: none; border: 2px solid #FFF; outline: none; text-indent: -100px; }
.slick-dots > li.slick-active > button { background: #FFF; }

.page .slick-dots { display: none !important; }
.home .slick-dots { display: block !important; }

#ref-slider .slick-dots { top: 0; }
#ref-slider .slick-dots > li { margin: 0 0.188rem; }
#ref-slider .slick-dots > li > button { width: 22px; height: 22px; line-height: 20px; font-size: 0.875rem; border-radius: 0; border: 1px solid #FFF; color: #FFF; }
#ref-slider .slick-dots > li.slick-active > button { background: rgba(255,255,255,0.5); color: #FFF; }

#ref-slider .slick-prev,
#ref-slider .slick-next { background: none; width: auto; height: auto; top: 3px; }

#ref-slider .slick-prev { left: 0; }
#ref-slider .slick-next { right: 0; }


	/* Slightly larger than desktop for arrow extra space */
	@media (max-width: 1300px) {
	    #topimage .slick-prev,
	    #topimage .slick-next { display: none !important; }
	}

	/* Small devices (landscape phones, less than 48em) */
	@media (max-width: 47.9em) {
		#ref-slider .slick-dots > li > button { line-height: 22px; }
	}





/* FRONTPAGE: Quicklinks
---------------------------------------------------------------------------------------------------------------------- */
section#quicklinks { padding: 4rem 0 2.5rem; background: #F3F1F8 url("images/pattern-bottom.svg") repeat-x 0px 2px / 24px; }

.widelinks { clear: both; display: flex; display: -webkit-flex; align-items: stretch; -webkit-align-items: stretch; flex-wrap: wrap; -webkit-flex-wrap: wrap; justify-content: center; -webkit-justify-content: center; margin: 0 -0.938rem; }
.widelinks .single-link { display: flex; display: -webkit-flex; flex-wrap: wrap; -webkit-flex-wrap: wrap; flex: 0 0 calc(100% / 3); -webkit-flex: 0 0 calc(100% / 3); max-width: calc(100% / 3); flex-basis: calc(100% / 3); padding: 0.938rem; position: relative; }
.widelinks .single-link .pattern-wrap { padding: 13px 0; background: url("images/dotpattern.svg") repeat-x left top, url("images/dotpattern.svg") repeat-x left bottom; background-size: 36px; display: flex; display: -webkit-flex; width: 100% !important;}
.widelinks .single-link a { background-size: cover; background-position: center center; padding-top: 6rem; display: flex; display: -webkit-flex; width: 100%; }

.widelinks .inner { float: left; width: 100%; padding: 1.25rem 1.25rem 1.375rem; text-align: center; position: relative; transition: all 0.15s ease-in-out 0s; }

.widelinks .single-link:nth-child(odd) .inner { background: rgba(96,43,129,0.7); }
.widelinks .single-link:nth-child(even) .inner { background: rgba(61,170,187,0.7); }

.widelinks .single-link:nth-child(odd) a:hover .inner {  }
.widelinks .single-link:nth-child(even) a:hover .inner {  }

.widelinks img { position: absolute; top: -55px; left: calc(50% - 55px); width: 110px; height: auto; }
.widelinks .title { width: 100%; float: left; color: #FFF; font-size: 1.375rem; margin: 0 0 0.625rem; line-height: 1.2; font-family: "Noto Sans"; font-weight: 700; }
.widelinks .desc { clear: both; float: left; width: 100%; color: #FFF; font-size: 0.938rem; line-height: 1.3; }
.widelinks .desc a { color: #FFF; text-decoration: none; }
.widelinks .date { clear: both; float: left; width: 100%; color: #FFF; text-transform: uppercase; font-size: 0.875rem; margin: 0 0 0.375rem; }


	/* Medium devices (tablets, less than 62em) */
	@media (max-width: 61.9em) {
		.widelinks .inner { padding: 1.25rem 1.25rem 1.375rem; }
		.widelinks .title { font-size: 1.063rem; }
	}

	/* Small devices (landscape phones, less than 48em) */
	@media (max-width: 47.9em) {
		.widelinks .single-link { flex: 0 0 100%; -webkit-flex: 0 0 100%; max-width: 100%; flex-basis: 100%; padding: 0.5rem 0.938rem; }

		.widelinks .title { font-size: 1.125rem; }
		.widelinks .desc { font-size: 1rem; }
	}





/* FRONTPAGE: Events
---------------------------------------------------------------------------------------------------------------------- */
section#events { padding: 24px 0 0; background: #F3F1F8 url("images/pattern-top.svg") repeat-x 0px 0px / 24px; }
.eventwrap { background: #16AABA; padding: 3rem 0; }
#events .pattern-wrap { padding: 2rem 1rem; background: url("images/dotpattern.svg") repeat-x left top, url("images/dotpattern.svg") repeat-x left bottom; background-size: 36px; }
.whitebox { width: 100%; background: #FFF; padding: 2px 0; }

#events img { width: 100%; }

.eventinfo { color: #164a98; line-height: 1.4; font-size: 1.125rem; }
.eventinfo .eventdate { }
.eventinfo .eventtime { }
.eventinfo .location { }

#events h2 { text-align: center; font-size: 1.75rem; margin: 0 0 1.5rem; }
.event-list {  }

.event-imgwrap { float: left; width: 100%; height: 275px; background-size: cover; background-position: center center; }

.single-eventlist { border-top: 2px solid #164a98; padding: 1rem 0; clear: both; float: left; width: 100%; }
.single-eventlist:first-child { border-top: none; padding-top: 0; }
.single-eventlist:last-child { padding-bottom: 0; }
.single-eventlist .link { clear: both; float: left; width: 100%; }
.single-eventlist .when { clear: both; float: left; width: 100%; }
.single-eventlist .date { float: left; }
.single-eventlist .time { float: right; }
.single-eventlist .location { clear: both; float: left; width: 100%; color: #999; font-size: 0.875rem; }


	/* Small devices (landscape phones, less than 48em) */
	@media (max-width: 47.9em) {
		#events { text-align: center; }
		.event-imgwrap { max-width: 50%; height: 125px; margin: 0 0 1rem; float: none; display: inline-block; }
		.single-eventlist .date { float: none; }
		.single-eventlist .time { float: none; }
	}





/* FRONTPAGE: News
---------------------------------------------------------------------------------------------------------------------- */
section#news { padding: 5rem 0 2.5rem; background: #F3F1F8 url("images/pattern-bottom.svg") repeat-x 0px 2px / 24px; }

#news .titlebox { float: left; width: 100%; margin: 0; text-align: center; }
#news .titlebox h2 { font-size: 1.75rem; margin: 0 0 1.5rem; }


	/* Medium devices (tablets, less than 62em) */
	@media (max-width: 61.9em) {
	}

	/* Small devices (landscape phones, less than 48em) */
	@media (max-width: 47.9em) {
	}





/* FRONTPAGE: Social
---------------------------------------------------------------------------------------------------------------------- */
section#social { padding: 0 0 5rem; background: #F3F1F8; }
#social .fb-page,
#social .fb-page > span,
#social .fb-page iframe { width: 100%; float: right; }

#social .pattern-wrap { padding: 14px 0; background: url("images/dotpattern.svg") repeat-x left top, url("images/dotpattern.svg") repeat-x left bottom; background-size: 36px; }
#social .whitebox { background: #FFF; }
#social h2 { margin: 0; background: #FFF; width: 100%; padding: 1.5rem 1.5rem 1rem 1.75rem; }

#social img { width: 100%; }


	/* Small devices (landscape phones, less than 48em) */
	@media (max-width: 47.9em) {
		#social .map { margin-bottom: 1rem; }
	}




/* CATEGORY view
---------------------------------------------------------------------------------------------------------------------- */
.category .article-list {  }
.category .single-article { margin: 2.5rem 0; }
.category .single-article:first-child { margin-top: 0; }
.category .single-article:last-child { margin-bottom: 0; }

.meta { color: #999; font-size: 0.813rem; text-transform: uppercase; letter-spacing: 1px; display: block; margin: 0 0 5px; }
.category .single-article h3 { margin: 0 0 0.75rem; }

.post-catlist { display: block; width: 100%; margin: -6px 0 0.25rem; }
.post-catlist li { list-style: none; }
.post-catlist li a { font-size: 0.938rem; color: #999; }






/* SINGLE Event
---------------------------------------------------------------------------------------------------------------------- */
.single .calendar { margin-bottom: 15px; }

.calendar { background: #DDD; padding: 0; overflow: hidden; float: left; width: 100%; }
.calendar table { width: 100%; border-collapse: initial; }
.calendar table td { background: #FFF; padding: 0; }

.calendar table thead td { background: none; border: none; background: #164a98; }
.calendar table thead td.month_name { font-weight: 400; padding-top: 8px; padding-bottom: 8px; color: #FFF; font-size: 16px; }
.calendar table thead td a.em-calnav { font-weight: 700; color: #FFF; }

.calendar table tbody tr.days-names td { background: none; border: none; text-transform: uppercase; font-size: 13px; }

.calendar table td.eventful,
.calendar table td.eventful-today { background: rgba(22,74,152,1); }
.calendar table td.eventful > a,
.calendar table td.eventful-today > a { color: #FFF !important; height: 23px; width: 100%; display: inline-block; }
.calendar table td.eventful > a:hover,
.calendar table td.eventful-today > a:hover,
.calendar table td.eventful > a:focus,
.calendar table td.eventful-today > a:focus { background: rgba(22,74,152,0.85); text-decoration: none; }

.calendar table td.eventless-pre { }

.calendar table td.eventless-today { background: #EEE; color: #333; font-weight: bold; }
.calendar table td.eventful-today { background: #16AABA; color: #FFF; }

.calendar table tbody > tr {  }
.calendar table tbody td { border-left: 1px solid rgba(113, 173, 48, 0.3); border-top: 1px solid rgba(113, 173, 48, 0.3); font-size: 14px; line-height: 23px; height: 23px; }
.calendar table tbody td:last-child { border-right: 1px solid rgba(113, 173, 48, 0.3); }
.calendar table tbody tr:last-child td { border-bottom: 1px solid rgba(113, 173, 48, 0.3); }

section .eventlist { margin: 0; padding: 0; }
section .eventlist li { clear: both; float: left; width: 100%; border-top: 1px solid #DDD; list-style: none; padding: 4px 0 6px; margin: 0; }
section .eventlist .leftcol { float: left; width: calc(100% - 80px); }
section .eventlist .rightcol { float: right; width: 70px; }
section .eventlist .date { float: right; color: #888; font-size: 13px; line-height: 17px; margin-top: 2px; }
section .eventlist .title { clear: both; float: left; }
section .eventlist .title a { }
section .eventlist .title a:hover,
section .eventlist .title a:focus { }
section .eventlist .location { clear: both; float: left; font-size: 13px; line-height: 15px; color: #333; }

.eventmap > .em-location-map-container { width: 100% !important; height: 300px !important; }





/* Formidable
---------------------------------------------------------------------------------------------------------------------- */
.frm_forms { font-size: 0.875rem; text-align: left; }
.frm_forms hr { margin: 1.5rem 0 2rem; }

.frm_forms label { font-weight: 400 !important; font-family: inherit !important; color: #333 !important; margin: 0; padding-bottom: 2px !important; position: relative; font-size: 1rem !important; }
.frm_forms .frm_required { color: #FFF !important; }

.frm_forms input[type="text"],
.frm_forms input[type="url"],
.frm_forms input[type="email"],
.frm_forms textarea { width: 100%; background: #F0F0F0 !important; border: none !important; border-radius: 0 !important; border-bottom: 3px solid #CCC !important; transition: all 0.15s ease-in-out 0s; margin: 0 !important; font-family: inherit !important; }

.frm_forms input[type="text"],
.frm_forms input[type="url"],
.frm_forms input[type="email"] { padding: 0 8px !important; height: 35px !important; }

.frm_forms textarea { padding: 8px !important; }
.frm_forms select { width: 100%; height: 33px; padding: 0 3px !important; background: #F0F0F0; transition: all 0.15s ease-in-out 0s; margin: 0 !important; border-bottom: 3px solid #CCC !important; border-radius: 0 !important; }

.frm_forms input[type="text"]:focus,
.frm_forms input[type="url"]:focus,
.frm_forms input[type="email"]:focus,
.frm_forms textarea:focus,
.frm_forms select:focus { border-bottom: 3px solid rgb(57, 43, 30) !important; background: #F5F5F5 !important; box-shadow: none !important; }

.frm_forms .frm_checkbox input[type="checkbox"] { vertical-align: middle !important; margin-bottom: 2px !important; }

.frm_forms .frm_submit { position: relative; }
.frm_forms .frm_submit input[type="submit"] { background: none !important; border: 1px solid rgb(57, 43, 30) !important; height: 42px !important; line-height: 40px !important; text-align: center !important; padding: 0 10px !important; min-width: 110px; transition: all 0.15s ease-in-out 0s; color: rgb(57, 43, 30) !important; box-shadow: none !important; border-radius: 0 !important; font-family: inherit !important; font-size: 1rem !important; font-weight: 600 !important; display: inline-block !important; }
.frm_forms .frm_submit input[type="submit"]:hover { background: rgb(57, 43, 30) !important; color: rgb(0,168,230) !important; }

.frm_forms .frm_ajax_loading { position: absolute; top: 62px; left: calc(50% - 8px); }

.frm_style_formidable-style.with_frm_style .frm_error { font-family: inherit !important; font-weight: 400 !important; font-size: 1rem !important; color: #333 !important; }
.frm_forms .g-recaptcha iframe { border: none !important; }






/* Footer
---------------------------------------------------------------------------------------------------------------------- */
footer { background: #F3F1F8 url("images/pattern-top.svg") repeat-x 0px 0px / 24px; clear: both; overflow: hidden; position: relative; padding: 24px 0 0; }

.footerwrap { background: #16AABA; padding: 3rem 0; }

footer h3 { text-transform: uppercase; color: rgb(0,168,230); font-weight: 700; margin: 0 0 1rem; font-size: 1rem; }
footer h3 a { color: rgb(0,168,230); }
footer p { font-size: 0.938rem; color: #FFF; }
footer p strong { font-weight: 700; }
footer p a { color: #FFF; }
footer p a:hover,
footer p a:focus { color: #FFF; }

.footlogo { margin: 0 auto 1.25rem; display: block; max-width: 180px; }
.footlapland { max-width: 160px; }

.footer-info { float: left; margin: 0 5rem 0 0; }
.footinfo1 { text-align: center; }

.footer-right { float: right; text-align: center; }
.footer-right > a { margin-right: 1.5rem; color: #FFF; }
.footer-right > a:last-of-type { margin-right: 0; }
.footer-right .fa { font-size: 2.5rem; }

footer hr { background: #FFF; margin: 2rem 0 0.75rem; }

footer .copyright { color: #FFF; font-size: 0.813rem; }


	/* Medium devices (tablets, less than 62em) */
	@media (max-width: 61.9em) {
		footer { text-align: center; }
		.footer-info { float: left; margin: 0 0 1.5rem; width: 50%; }
		.footer-right { clear: both; float: none; margin: 0 auto; }
	}

	/* Small devices (landscape phones, less than 48em) */
	@media (max-width: 47.9em) {
		.footer-top { padding: 3rem 0; }
		.footer-info { clear: both; float: left; width: 100%; margin: 0 0 1rem; }
		.footer-right { clear: both; float: left; width: 100%; margin: 0; }
		.footer-right > a { margin: 0 0.75rem !important; }
	}






/* Large devices (desktops, less than 75em) */
@media (max-width: 74.9em) { ... }

/* Medium devices (tablets, less than 62em) */
@media (max-width: 61.9em) { ... }

/* Small devices (landscape phones, less than 48em) */
@media (max-width: 47.9em) { ... }

/* Extra small devices (portrait phones, less than 34em) */
@media (max-width: 33.9em) { ... }