/*
	Theme Name: Iggo 20
	Description: HTML5, CSS Grid, CSS Variables and Flex. Mobile first CSS. No outside framework.
	Author: Kimmo Kovalainen
	Author URL: http://www.kipex.tv
	Version: 1.0 (01/2020 for WP 5.3)
	Tags: html5, css grid, css variables, flex, responsive, rule of 4, mobile first
*/




/* CSS Variables
---------------------------------------------------------------------------------------------------------------------- */
	body {
		/* Primary Color (Light -100 or -200, Dark +100 or +200) */
		--primary-light: #C192C2;
		--primary: #B37AB4;
		--primary-dark: #975B98;

		--primary-text-color: var(--white-primary);
		--primary-title-color: var(--white-primary);
		--primary-link-color: var(--white-primary);

		/* Secondary Color (Light -100 or -200, Dark +100 or +200) */
		--secondary-light: #48CDFF;
		--secondary: #00AEEF;
		--secondary-dark: #0090C6;

		--secondary-text-color: var(--white-primary);
		--secondary-title-color: var(--white-primary);
		--secondary-link-color: var(--white-primary);

		--linkcolor: #00648a; /* 6.58 Contrast, AA compliant */
		--linkcolor-hover: #00749F; /* 5.25 Contrast, AA compliant */
		--linkcolordark: var(--white-primary);
		--errorcolor: #D32F2F;

		/* Black - Primary 87%, Secondary 54%, Disabled 38% */
		--black: rgba(0,0,0,1);
		--black-primary: rgba(0,0,0,0.87);
		--black-secondary: rgba(0,0,0,0.54);
		--black-tertiary: rgba(0,0,0,0.46);
		--black-disabled: rgba(0,0,0,0.38);

		/* White - Primary 100%, Secondary 70%, Disabled 50% */
		--white-primary: rgba(255,255,255,1);
		--white-secondary: rgba(255,255,255,0.7);
		--white-disabled: rgba(255,255,255,0.5);

		/* Light - Grey or Creme */
		--light-primary: #f2f0eb;

		/* Header */
		--headerbg: #FFF;
		--navbg: #000;

		/* Fonts */
		--font-title: "Arial";
		--font-nav: "Arial";
		--font-para: "Arial";

		/* Fontsizes */
		--text-large: 17px;
		--text-normal: 15px;
		--text-small: 13px;
		--text-tiny: 11px;

		--h1: 32px;
		--h2: 24px;
		--h3: 17px;
		--h4: 16px;

		/* Element heights */
		--header-height: 60px;
		--botbar-height: 56px;

		/* Element widths */
		--container-maxwidth: 100%;

		/* Gap between elements */
		--gridgap: 32px;
		--cardgap: 32px;
		--gallerygap: 4px;
		--sidebargap: 10px 0;
		--sectiongap: 48px;
		--ifb-block-gap: 32px 16px;
		--ifb-block-gap-full: 32px 0;

		/* Transitions */
		--transition-fast: 0.16s cubic-bezier(0.4, 0.0, 0.2, 1);
		--transition-med: 0.25s cubic-bezier(0.4, 0.0, 0.2, 1);
		--transition-slow: 0.4s cubic-bezier(0.4, 0.0, 0.2, 1);

		/* Borders */
		--border-blacktrans: 1px solid rgba(0,0,0,0.12);
		--border-whitetrans: 1px solid rgba(255,255,255,0.12);
		--border-radius: 4px;
		--border-radius-round: 50px;

		/* Shadows */
		--elevation-2dp: 0 1px 4px rgba(0,0,0,0.14), 0 3px 3px rgba(0,0,0,0.12);
		--elevation-4dp: 0 2px 4px rgba(0,0,0,0.14), 0 4px 5px rgba(0,0,0,0.12);

		/* Buttons */
		--button-large-padding: 14px 28px;
		--button-large-lineheight: 1.5;

		--button-normal-padding: 12px 24px;
		--button-normal-lineheight: 1.5;

		--button-small-padding: 6px 12px;
		--button-small-lineheight: 1.5;
	}

		@media (min-width: 768px) {
			body {
				/* Element widths */
				--container-maxwidth: 1200px;

				/* Gap between elements */
				--gridgap: 48px;
				--sectiongap: 64px;
				--ifb-block-gap: 48px 0;

				/* Fontsizes */
				--text-large: 20px;
				--text-normal: 16px;
				--text-small: 14px;
				--text-tiny: 12px;

				--h1: 40px;
				--h2: 28px;
				--h3: 20px;
				--h4: 18px;
			}
		}


		@media (min-width: 992px) {
			body {
				/* Element heights */
				--header-height: 100px;
				--navbar-height: 70px;
			}
		}




/* Global
---------------------------------------------------------------------------------------------------------------------- */
	html { box-sizing: border-box; line-height: 1.6; touch-action: manipulation; height: 100%; }
	body { margin: 0; font-family: var(--font-para), Helvetica, Arial, sans-serif; font-size: var(--text-normal); display: flex; flex-direction: column; min-height: 100vh; height: 100%; word-wrap: break-word; }

	*,
	*::before,
	*::after { box-sizing: inherit; }

	header,
	section,
	footer { width: 100%; }

	img { max-width: 100%; display: block; }
	div, ul, li { margin: 0; padding: 0; }
	select { -webkit-appearance: none; }

	input, textarea, select { font-family: inherit; } /* Form elements rely on OS fonts unless overriden specifically */

	body:not(.user-is-tabbing) a:focus,
	body:not(.user-is-tabbing) button:focus,
	body:not(.user-is-tabbing) input:focus,
	body:not(.user-is-tabbing) select:focus,
	body:not(.user-is-tabbing) textarea:focus { outline: none; } /* Only remove focus outline for users who aren't using keyboard tab */

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

	.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0; }

	/* Focus for accessibility, focus-visible isn't well enough supported yet. This is used in combination with the script that adds user-is-tabbing to body, to avoid outlines for mouse use */
	*:focus { outline: 2px solid var(--secondary); }

	/* Accessibility related visually hidden text */
	.visually-hidden {
	    border: 0;
	    padding: 0;
	    margin: 0;
	    position: absolute !important;
	    height: 1px;
	    width: 1px;
	    overflow: hidden;
	    clip-path: inset(50%); /* modern browsers, clip-path works inwards from each corner */
	    white-space: nowrap; /* added line to stop words getting smushed together (as they go onto seperate lines and some screen readers do not understand line feeds as a space */
	}

	/* Ripple effect for buttons */
	.ripple { position: relative; overflow: hidden; transform: translate3d(0,0,0); }
	.ripple:after { content: ""; display: block; position: absolute; width: 100%; height: 100%; top: 0; left: 0; pointer-events: none; background-image: radial-gradient(circle,#000 10%,transparent 10.01%); background-repeat: no-repeat; background-position: 50%; transform: scale(10,10); opacity: 0; transition: transform .5s, opacity 1s; }
	.ripple:active:after { transform: scale(0,0); opacity: .2; transition: 0s; }

	.container { margin: 0 auto; padding: 0 20px; width: 100%; }

	.wrapper { height: 100%; overflow: auto; display: flex; flex-direction: column; min-height: 100vh; -webkit-overflow-scrolling: touch; position: relative; } /* Stop mobile background scrolling (height,overflow) */

			@media (min-width: 768px) {
				.container { max-width: var(--container-maxwidth); }
			}

			@media (min-width: 992px) {
				.container { padding: 0 32px; }
				.wrapper { overflow: inherit; }
			}





/* Typography
---------------------------------------------------------------------------------------------------------------------- */
	h1 { font-size: var(--h1);		color: var(--black-primary);	font-family: var(--font-title);	font-weight: 700; 	margin: 0 0 20px 0;		line-height: 1.2; }
	h2 { font-size: var(--h2);		color: var(--black-primary);	font-family: var(--font-title);	font-weight: 700; 	margin: 0 0 16px 0;		line-height: 1.1; 	position: relative; }
	h3 { font-size: var(--h3); 		color: var(--black-primary);	font-family: var(--font-title);	font-weight: 700;	margin: 0 0 8px 0;		line-height: 1.2; }
	h4 { font-size: var(--h4);		color: var(--black-primary);	font-family: var(--font-title);	font-weight: 700;	margin: 0 0 8px 0;		line-height: 1.2; }

	.content-fullwidth .block-style-dark h3,
	.content-fullwidth .block-style-dark h4 { color: var(--white-primary); }
	.content-fullwidth .block-style-black h3,
	.content-fullwidth .block-style-black h4 { color: var(--white-secondary); }

	/* Headings in the middle of long text blocks */
	p + h2,
	ul + h2,
	ol + h2 { margin-top: 32px; }
	p + h3,
	ul + h3,
	ol + h3 { margin-top: 24px; }

	/* Links */
	a { color: var(--linkcolor); text-decoration: underline; }
	a:hover,
	a:focus { color: var(--linkcolor-hover); }

	h1 a,
	h2 a,
	h3 a,
	h4 a { text-decoration: none; color: var(--black-primary); }

	h1 a:hover,
	h1 a:focus,
	h2 a:hover,
	h2 a:focus,
	h3 a:hover,
	h3 a:focus,
	h4 a:hover,
	h4 a:focus { text-decoration: none; color: var(--black-primary); }


	/* Misc */
	p { margin: 0 0 16px; }
	hr { border: var(--border-blacktrans); margin-top: var(--gridgap); }
	blockquote { font-size: var(--text-large); margin: 0 0 16px; padding: 60px 32px 20px; position: relative; border-left: 8px solid var(--secondary); margin: 24px 0; }
	blockquote::before { font-family: "Font Awesome 5 Pro"; content: "\f10e"; font-size: 28px; position: absolute; top: 8px; left: 32px; height: 32px; color: var(--secondary-dark); }

		@media (min-width: 992px) {
			blockquote { padding: 66px 32px 22px; margin: 32px 0; }
			blockquote::before { font-size: 32px; top: 12px; }
		}

	/* Readmore */
	.readmore { padding: var(--button-normal-padding); line-height: var(--button-large-lineheight); background: #1F1F1F; border: 3px solid #1F1F1F; color: #FFF; display: inline-block; transition: var(--transition-fast); border-radius: 100px; text-transform: uppercase; font-weight: bold; letter-spacing: 0.5px; text-decoration: none; }
	.readmore:hover,
	.readmore:focus { background: #333; color: #FFF; border: 3px solid #333; }

	.readmore-blue { background: var(--secondary); border: 3px solid var(--secondary); color: #000; }
	.readmore-blue:hover,
	.readmore-blue:focus { background: var(--secondary-light); border: 3px solid var(--secondary-light); color: #000; }

	.readmore-normal { padding: var(--button-normal-padding); line-height: var(--button-normal-lineheight); font-size: var(--text-small); }
	.readmore-small { padding: var(--button-small-padding); line-height: var(--button-small-lineheight); font-size: var(--text-small); }

	.content-fullwidth .block-style-dark .readmore,
	.content-fullwidth .block-style-black .readmore { background: var(--primary); color: var(--primary-text-color); border: 3px solid var(--primary); }

	.content-fullwidth .block-style-dark .readmore:hover,
	.content-fullwidth .block-style-black .readmore:hover { background: var(--primary-light); border: 3px solid var(--primary-light); }

	.content-fullwidth .block-style-primary .readmore { background: var(--secondary); color: var(--secondary-text-color); border: 3px solid var(--secondary); }
	.content-fullwidth .block-style-primary .readmore:hover { background: var(--secondary-light); border: 3px solid var(--secondary-light); }

	.content-fullwidth .block-style-secondary .readmore { background: var(--primary); color: var(--primary-text-color); border: 3px solid var(--primary); }
	.content-fullwidth .block-style-secondary .readmore:hover { background: var(--primary-light); border: 3px solid var(--primary-light); }

	/* Ghostbutton */
	.ghostbutton { padding: var(--button-normal-padding); line-height: var(--button-large-lineheight); border: 3px solid var(--black-primary); color: var(--black-primary); display: inline-block; transition: var(--transition-fast); border-radius: 100px; text-transform: uppercase; font-weight: bold; text-align: center; letter-spacing: 0.5px; text-decoration: none; }
	.ghostbutton:hover,
	.ghostbutton:focus { background: var(--black-primary); color: #FFF; }

	.content-fullwidth .block-style-dark .ghostbutton { border: 3px solid var(--white-primary); color: var(--white-primary); }
	.content-fullwidth .block-style-dark .ghostbutton:hover { background: var(--white-primary); color: var(--primary); }

	.content-fullwidth .block-style-black .ghostbutton { border: 3px solid var(--white-primary); color: var(--white-primary); }
	.content-fullwidth .block-style-black .ghostbutton:hover { background: var(--white-primary); color: var(--primary); }

	.content-fullwidth .block-style-primary .ghostbutton { background: none; color: var(--primary-text-color); border: 3px solid var(--primary-text-color); }
	.content-fullwidth .block-style-primary .ghostbutton:hover { background: var(--primary-text-color); color: var(--primary); }

	.content-fullwidth .block-style-secondary .ghostbutton { background: none; color: var(--secondary-text-color); border: 3px solid var(--secondary-text-color); }
	.content-fullwidth .block-style-secondary .ghostbutton:hover { background: var(--secondary-text-color); color: var(--secondary); }

	footer .ghostbutton { border: 3px solid var(--white-primary); color: var(--white-primary); }
	footer .ghostbutton:hover { background: var(--white-primary); color: var(--primary); }

	/* Ingress */
	.ingress { font-size: var(--text-large); font-weight: 400; color: var(--black-primary); line-height: 1.5; }

	.content-fullwidth .block-style-white .ingress,
	.content-fullwidth .block-style-light .ingress { color: var(--black-primary); }
	.content-fullwidth .block-style-dark .ingress,
	.content-fullwidth .block-style-black .ingress { color: var(--white-secondary); }
	.content-fullwidth .block-style-primary .ingress { color: var(--primary-text-color); }
	.content-fullwidth .block-style-secondary .ingress { color: var(--secondary-text-color); }





/* Header
---------------------------------------------------------------------------------------------------------------------- */
	header { height: var(--header-height); min-height: var(--header-height); z-index: 104; background: var(--headerbg); position: relative; top: 0; left: 0; transition: var(--transition-slow); transform: translate3d(0, 0, 0); }
	header .logo { width: 143px; height: 44px; z-index: 135; position: absolute; top: 8px; left: 20px; }

	header .rightside { float: right; }
	header .rightside .toprow { float: right; }
	header .rightside .botrow { float: right; clear: both; }

	header .langmenu { display: inline-block; margin-left: 16px; height: 30px; margin-top: 15px; }
	header .langmenu a { display: inline-block; color: var(--black-primary); font-weight: bold; font-size: var(--text-small); margin: 0 0 0 4px; line-height: var(--header-height); }
	header .langmenu img { width: 30px; height: auto; display: block; }

	/* Topmenu */
	#menu-topmenu,
	#menu-topmenu-en { display: none; }

	/* Botbar */
	#botbar { position: fixed; bottom: 0; left: 0; height: var(--botbar-height); background: #222; z-index: 150; text-align: center; }
	.botbar-overlay { position: absolute; bottom: 0; left: 0; width: 100%; height: 100%; background: #222; z-index: 3; }


			@media (min-width: 992px) {
				#botbar { display: none; }

				header { position: fixed; z-index: 110; }
				.pulldown header { transform: translate3d(0, 0, 0); }

				header .logo { position: relative; top: auto; left: auto; float: left; width: 227px; height: 70px; margin: 15px 16px 15px 0; }


				/* Rightside */
				header .rightside { margin: 13px 0; }
				header .rightside .toprow { display: grid; grid-template-columns: 300px minmax(0, 1fr); align-items: center; margin-bottom: 8px; float: right; }

				/* Topmenu */
				#menu-topmenu,
				#menu-topmenu-en { display: block; }
				#menu-topmenu li,
				#menu-topmenu-en li { display: inline-block; list-style: none; margin: 0 0 0 12px; padding: 0; }
				#menu-topmenu li a,
				#menu-topmenu-en li a { font-size: var(--text-small); color: var(--black-primary); text-decoration: none; }
				#menu-topmenu li a:hover,
				#menu-topmenu-en li a:hover { text-decoration: underline; }

				/* Langmenu */
				header .langmenu { margin: 0 0 0 20px; padding: 0; }
			}





/* Botbar & Search
---------------------------------------------------------------------------------------------------------------------- */
	#botbar .iconmenu-link { display: inline-block; position: relative; width: 70px; height: var(--botbar-height); text-align: center; z-index: 10; cursor: pointer; }
	#botbar .iconmenu-link i { font-size: 18px; color: #c295c3; margin-top: 11px; }
	#botbar .iconmenu-link svg { font-size: 16px; color: #c295c3; position: absolute; top: 12px; left: 0; width: 100%; }
	#botbar .iconmenu-link .title { position: absolute; bottom: 4px; left: 0; width: 100%; font-size: var(--text-tiny); color: #c295c3; line-height: 1.6; }

	#botbar .search-wrap { position: absolute; top: 0; left: 0; height: 50px; width: 100%; background: var(--primary-dark); opacity: 0; visibility: hidden; transition: var(--transition-med); transform: translate3d(0, 0, 0); }
	#botbar .search-wrap.active { opacity: 1; visibility: visible; transform: translate3d(0, -50px, 0); }

	#botbar form#mobile-searchform { display: grid; grid-template-columns: minmax(0,1fr) 60px; }
	#botbar form#mobile-searchform input { background: none; color: #FFF; border: none; height: 50px; padding: 0 20px; font-size: var(--text-normal); }
	#botbar form#mobile-searchform button { text-align: center; height: 50px; background: none; color: #FFF; border: none; padding: 0; cursor: pointer; border-left: 1px solid var(--primary-light); }

	.ifb-section-searchresults .search-item h4 a { color: var(--linkcolor); text-decoration: underline; }
	.ifb-section-searchresults .search-item h4 a:hover,
	.ifb-section-searchresults .search-item h4 a:focus { color: var(--linkcolor-hover); }


	/* Desktop variant in header */
	header .search-area { display: none; }


		@media (min-width: 992px) {
			header .search-area { display: inline-block; position: relative; }

			header .search-toggle { display: none; line-height: 40px; height: 40px; width: 40px; text-align: center; border-radius: 0; margin-top: 20px; background: var(--primary); transition: var(--transition-med); }
			header .search-toggle svg { color: #FFF; font-size: 18px; width: 100%; position: relative; top: 1px; }

			header .search-toggle:hover { background: #d0dbda; }

			header .search-wrap { position: static; top: 0; right: 0; opacity: 1; visibility: visible; z-index: 10; transition: all 0.2s ease-in-out 0s; width: 300px; }
			header .search-wrap.active { opacity: 1; visibility: visible; width: 300px; }

			header form#searchform { width: 100%; position: relative; }
			header form#searchform input[type="text"] { background: var(--headerbg); border: 1px solid #CCC; border-radius: 100px; height: 40px; width: 100%; padding: 3px 48px 3px 16px; font-size: var(--text-small); color: var(--black-primary); outline: none; }
			header form#searchform button { position: absolute; top: 0; right: 0; height: 40px; line-height: 40px; width: 50px; text-align: center; color: var(--black-primary); text-shadow: none; border: none; border-radius: 0; cursor: pointer; background: none; }
			header form#searchform i { display: block; font-size: 20px; }
		}





/* Megamenu
---------------------------------------------------------------------------------------------------------------------- */

	/* Displaying menu under iggo toggle and hiding megatoggle */
	nav#mobile-menu #mega-menu-wrap-primary .mega-menu-toggle { display: none; }
	nav#mobile-menu #mega-menu-primary { display: block !important; }

	nav#mobile-menu #mega-menu-wrap-primary .mega-menu-toggle + #mega-menu-primary { background: none; }

	nav#mobile-menu #mega-menu-primary > li.mega-menu-item > a.mega-menu-link { color: #c295c3; font-size: var(--text-large); }
	nav#mobile-menu #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover,
	nav#mobile-menu #mega-menu-primary > li.mega-menu-item.mega-toggle-on > a.mega-menu-link { background: none; color: #d1a3d2; }

	/* FA icon */
	.mega-menu-link > i { margin: 0 0 0 8px; }

	/* Submenu text colors */
	nav #mega-menu-primary a.mega-menu-link .mega-description-group {  }
	nav #mega-menu-primary a.mega-menu-link .mega-description-group .mega-menu-title { color: var(--black-primary); font-size: var(--text-normal); }
	nav #mega-menu-primary a.mega-menu-link .mega-description-group .mega-menu-description { color: var(--black-secondary); font-size: var(--text-small); margin: 0 !important; }

	nav#main #mega-menu-primary li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item { padding: 12px; }


		/* Larger than mobile */
			@media (min-width: 992px) {
				header > .container { position: relative; }

				nav#main #mega-menu-wrap-primary,
				nav#main #mega-menu-primary { position: static; }

				nav#main #mega-menu-primary > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
				nav#main #mega-menu-primary > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link,
				nav#main #mega-menu-primary > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link { background: none; color: var(--white-secondary); }

				/* First level links */
				nav#main #mega-menu-primary > li.mega-menu-item { margin: 0 12px; }
				nav#main #mega-menu-primary > li.mega-menu-item:first-child { margin: 0 12px 0 0; }

				nav#main #mega-menu-primary > li.mega-menu-item > a.mega-menu-link { color: var(--white-primary); height: var(--navbar-height); line-height: 1.2; font-size: var(--text-normal); font-weight: 700 !important; padding: 0 16px; transition: var(--transition-fast); text-align: center; }
				nav#main #mega-menu-primary > li.mega-menu-item > a.mega-menu-link { padding: 0; display: flex; align-items: center; }
				nav#main #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover,
				nav#main #mega-menu-primary > li.mega-menu-item.mega-toggle-on > a.mega-menu-link { background: none; color: var(--secondary); }

				nav#main #mega-menu-primary > li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator::after { margin: 0 0 0 2px; display: none; }

				nav#main #mega-menu-primary > li > a > .mega-indicator { display: none !important; }

				/* Submenu animation movement downwards */
				nav#main #mega-menu-primary > li > ul { transition: var(--transition-slow) !important; transform: translate3d(0, -30px, 0) !important; }
				nav#main #mega-menu-primary > li.mega-toggle-on > ul { transform: translate3d(0, 0, 0) !important; }

				/* Fullwidth menu and side backgrounds */
				nav#main #mega-menu-primary > li.mega-menu-megamenu > ul.mega-sub-menu { background: var(--navbg); padding: 24px 20px; z-index: -2; }
				nav#main #mega-menu-primary > li.mega-menu-megamenu > .mega-sub-menu::before { height: 100%; width: 4000px; background: var(--navbg); position: absolute; top: 0; right: 0; content: ""; z-index: -5; display: block; }
				nav#main #mega-menu-primary > li.mega-menu-megamenu > .mega-sub-menu::after { height: 100%; width: 4000px; background: var(--navbg); position: absolute; top: 0; left: 0; content: ""; z-index: -5; display: block; }


				nav#main #mega-menu-primary > li.mega-menu-flyout > ul.mega-sub-menu { z-index: -2; }

			}





/* Nav
---------------------------------------------------------------------------------------------------------------------- */
	nav#main { display: none; }

	.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: 100; visibility: visible; }
	.nav-overlay.inactive { opacity: 0; visibility: hidden; background: rgba(0,0,0,0.0); }


		/* Larger than mobile */
			@media (min-width: 992px) {
				nav#main { position: fixed; top: var(--header-height); width: 100%; }
				nav#main .center-wrap { width: 100%; display: block; position: relative; }

				nav#main { float: right; height: var(--navbar-height); display: block; z-index: 130; margin: 0 16px 0 0; font-family: var(--font-nav); }
				nav#main .menu-zwrap { position: absolute; top: 0; left: calc(50% - 2500px); width: 5000px; height: var(--navbar-height); z-index: -1; transition: var(--transition-slow); background: var(--navbg); }
				nav#main > .menu { position: relative; }
				nav#main li { list-style: none; }

				/* 1st Level */
				nav#main .menu > li { float: left; transition: var(--transition-fast); }
				nav#main .menu > li > a { display: block; color: var(--primary); line-height: var(--navbar-height); transition: var(--transition-fast); font-size: var(--text-normal); margin: 0; text-align: center; position: relative; padding: 0 8px; }
				nav#main .menu > li.selected > a,
				nav#main .menu > li.selected > a:hover,
				nav#main .menu > li.selected > a:focus { color: var(--primary-dark); }
				nav#main .menu > li:last-child > a { margin-right: 0; }

				nav#main .menu > li > a::before { width: 0; height: 0; border-left: 10px solid transparent; border-right: 10px solid transparent; border-bottom: 0px solid var(--primary); content: ""; position: absolute; bottom: 0; left: calc(50% - 5px); opacity: 0; transition: var(--transition-fast); transform: translate3d(0, 0, 0); }
				nav#main .menu > li.selected > a::before { opacity: 1; transform: translate3d(0, 0, 0); border-bottom: 10px solid var(--primary); }

				nav#main .menu > li > a:hover { color: var(--primary-dark); }

				nav#main .menu > li.current_page_item > a,
				nav#main .menu > li.current-menu-ancestor > a,
				nav#main .menu > li.current-menu-item > a { color: var(--secondary-dark); }

				/* 2nd Level */
				nav#main .menu > li > .sub-menu::before { height: 100%; width: 4000px; background: var(--primary); position: absolute; top: 0; right: 0; content: ""; z-index: -5; }
				nav#main .menu > li > .sub-menu::after { height: 100%; width: 4000px; background: var(--primary); position: absolute; top: 0; left: 0; content: ""; z-index: -5; }

				nav#main .menu > li > .sub-menu { visibility: hidden; opacity: 0; position: absolute; top: 100%; right: 0; width: 100%; padding: 32px 0; transition: var(--transition-fast); z-index: -2; transform: translate3d(0, -12px, 0); text-align: left; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
				nav#main .menu > li:last-child > .sub-menu { left: auto; right: 0; }
				nav#main .menu > li.selected > .sub-menu { visibility: visible; opacity: 1; transform: translate3d(0, 0, 0); top: var(--navbar-height); }

				nav#main .menu > li > ul > li { margin: 4px 0; position: relative; line-height: 1.3; }
				nav#main .menu > li > ul > li > a { color: var(--primary-text-color); font-size: var(--text-normal); }
				nav#main .menu > li > ul > li > a:hover { text-decoration: underline; }

				/* 3rd Level */
				nav#main .sub-menu > li > .sub-menu { display: none; margin: 0.375rem 0 0 1rem; }
				nav#main .sub-menu > li > .sub-menu > li { line-height: 1.1; margin: 5px 0; }
				nav#main .sub-menu > li > .sub-menu > li > a { }

				/* 4th Level */
				nav#main .sub-menu > li > .sub-menu > li > .sub-menu { display: none; }
			}

			@media (min-width: 1024px) {
				nav#main > .menu { grid-gap: 20px; }
			}

			@media (min-width: 1100px) {
				nav#main > .menu { grid-gap: 32px; }
			}

			@media (min-width: 1200px) {
				nav#main { margin: 0 32px 0 0; }
				nav#main > .menu { grid-gap: 40px; }
			}





/* IGGO Mobile Offcanvas Burger Menu
---------------------------------------------------------------------------------------------------------------------- */

	@media (min-width: 992px) {
		#mega-menu-primary > li.mega-menu-flyout > ul.mega-sub-menu > li.mega-menu-item a.mega-menu-link { display: grid !important; grid-template-columns: minmax(0, 1fr) 30px !important; line-height: 1.4 !important; padding: 6px 0 6px 16px !important; }
	}

	@media (max-width: 991px) {

		/* Megamenu changes for mobile only */
		#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-megamenu > ul.mega-sub-menu { background: rgba(0,0,0,0.5) !important; border-radius: 8px !important; }

		#mega-menu-primary > li:last-child { margin: 0 0 32px !important; }

		/* Overriding Max Mega Menu styles */
		.mega-menu-link {
		    display: grid !important;
		    grid-template-columns: minmax(0, 1fr) 30px !important;
		    line-height: 1.4 !important;
		    padding: 9px 10px 9px 20px !important;
		    border-bottom: 1px solid rgba(0,0,0,0.2) !important;
		}

		#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout > ul.mega-sub-menu > a.mega-menu-link { color: var(--black-primary); }

		#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item ul.mega-sub-menu a.mega-menu-link {
			background: #CCC;
			color: var(--black-primary);
			padding: 9px 10px 9px 30px !important;
		}



		/* Nav Toggler */
			#nav-toggler { display: inline-block; width: 70px; height: var(--botbar-height); transition: .5s ease-in-out; cursor: pointer; border: none; padding: 10px; background: rgba(255,255,255,0.1); z-index: 10; position: relative; vertical-align: top; margin: 0 16px; }
			#nav-toggler span.bar { display: block; position: absolute; height: 2px; width: 22px; background: #c295c3; opacity: 1; left: 24px; transform: rotate(0deg); transition: .25s ease-in-out; }

			#nav-toggler span.title { position: absolute; bottom: 5px; font-size: var(--text-tiny); color: #c295c3; width: 100%; left: 0; line-height: 1.6; }

			#nav-toggler span:nth-child(1) { top: 13px; }
			#nav-toggler span:nth-child(2),
			#nav-toggler span:nth-child(3) { top: 19px; }
			#nav-toggler span:nth-child(4) { top: 25px; }

			#nav-toggler.open span:nth-child(1) { top: 19px; width: 0%; left: 50%; }
			#nav-toggler.open span:nth-child(2) { transform: rotate(45deg); }
			#nav-toggler.open span:nth-child(3) { transform: rotate(-45deg); }
			#nav-toggler.open span:nth-child(4) { top: 19px; width: 0%; left: 50%; }

		/* Menu */
			#mobile-menu {
				font-size: var(--text-large);
				position: fixed;
				overflow-y: auto;
				display: block !important;
				bottom: 0;
				width: 100%;
				padding: 16px 0;
				height: calc(100% - var(--botbar-height));
				background: #000;
				border-top: none;
				margin: 0 !important;
				transform: translate3d(0, calc(0px - var(--botbar-height)), 0);
				transition: var(--transition-fast);
				z-index: 105;
				font-family: var(--font-nav);
				right: 0;
				}

			#mobile-menu.inactive { transform: translate3d(0, 100%, 0); }

			#mobile-menu > .nav { display: inline-block; width: 100%; margin: 0 0 24px; }

		/* All levels */
			nav { font-size: 14px; }
			nav .svg-inline--fa { float: left; text-align: left; color: var(--primary); }
			nav .nav .text { float: right; width: calc(100% - 0.75rem); color: #FFF; }

			.mobile-quicklinks { display: inline-block; margin-top: 16px; padding-top: 28px; border-top: 1px solid var(--primary); width: 100%; }
			.mobile-quicklinks h3 { text-transform: uppercase; }

			#mobile-menu ul > li { clear: both; float: left; width: 100%; list-style: none; position: relative;}
			#mobile-menu ul > li > a { float: left; width: 100%; transition: all 0.05s linear 0s; text-align: left; }
			#mobile-menu ul > li.menu-item-has-children > a { width: calc(100% - 50px); }
			#mobile-menu ul > li > a:hover,
			#mobile-menu ul > li > a:focus { text-decoration: none; }

		/* Toggle Mobile Expand */
			#mobile-menu li > .toggle-expand { position: absolute; top: 3px; right: 0; cursor: pointer; width: 50px; height: 50px; }
			#mobile-menu li > .toggle-expand svg.fa-minus-circle { display: none; }
			#mobile-menu li.selected > .toggle-expand svg.fa-minus-circle { display: block; }
			#mobile-menu li.selected > .toggle-expand svg.fa-plus-circle { display: none; }

			#mobile-menu .toggle-expand svg { float: right; margin-top: 14px; }

		/* Level 1 */
			ul.nav > li { clear: both; float: left; width: 100%; list-style: none; }
			ul.nav > li > a { float: left; width: 100%; padding: 12px 0; color: var(--primary); text-transform: uppercase; }

			ul.nav > li.selected > a { color: var(--secondary-dark); }

			ul.nav > li > a:hover,
			ul.nav > li > a:focus,
			ul.nav > li:hover > a,
			ul.nav > li:focus > a { background: none; cursor: pointer; text-decoration: none; }

			ul.nav > li > .fa-plus-circle { transition: var(--transform-fast); transform: rotate(0deg); }
			ul.nav > li.selected > .fa-plus-circle { transform: rotate(45deg); }

		/* Level 2 */
			ul.nav > li > ul { position: relative; top: auto; left: auto; margin: 0 0 0 16px; clear: both; float: left; width: calc(100% - 16px); display: none; background: none !important; transition: all 0.25s ease-in-out 0s; padding: 0; }
			ul.nav > li.selected > ul { display: block !important; visibility: visible; opacity: 1; }
			ul.nav > li > ul > li { clear: both; float: left; width: 100%; padding: 0; border-top: 1px solid rgba(0,0,0,0.25); }
			ul.nav > li > ul > li:last-child { border-bottom: 1px solid rgba(0,0,0,0.25); }
			ul.nav > li > ul > li > a { float: left; width: 100%; text-align: left; padding: 12px 0; margin: 0; transition: all 0.05s linear 0s; color: var(--primary); }

			ul.nav > li > ul > li > a:hover,
			ul.nav > li > ul > li > a:focus { text-decoration: none; }

			ul.nav > li > ul > li.selected > a { color: var(--secondary-dark); }

		/* Level 3 */
			ul.nav > li > .sub-menu > li > .sub-menu { display: none; margin: 0 0 0 16px; }
			ul.nav > li > .sub-menu > li.selected > .sub-menu { display: block !important; }
			ul.nav > li > ul > li > ul > li { clear: both; float: left; width: 100%; margin: 0; padding: 0; border-top: 1px solid rgba(0,0,0,0.25); }
			ul.nav > li > ul > li > ul > li > a { float: left; width: 100%; padding: 12px 0; margin: 0; transition: all 0.05s linear 0s; color: var(--primary); }

			ul.nav > li > ul > li > ul > li.selected > a { color: var(--secondary-dark); }

			ul.nav > li > ul > li > ul > li > a:hover,
			ul.nav > li > ul > li > ul > li > a:focus,
			ul.nav > li > ul > li > ul > li > a:hover .title,
			ul.nav > li > ul > li > ul > li > a:focus .title { text-decoration: none; }

		/* Level 4 */
			ul.nav > li > .sub-menu > li > .sub-menu > li > ul.sub-menu { display: none; margin: 0 0 0 16px; }
			ul.nav > li > .sub-menu > li > .sub-menu > li.selected > .sub-menu { display: block !important; }

			ul.nav > li > ul > li > ul > li > ul > li { clear: both; float: left; width: 100%; margin: 0; padding: 0; border-top: 1px solid rgba(0,0,0,0.25); }
			ul.nav > li > ul > li > ul > li > ul > li > a { float: left; width: 100%; padding: 12px 0; margin: 0; transition: all 0.05s linear 0s; color: var(--primary); }

			ul.nav > li > ul > li > ul > li > ul > li.selected > a { color: var(--secondary-dark); }

		/* Level 5 */
			ul.nav > li > .sub-menu > li > .sub-menu > li > .sub-menu > li > ul.sub-menu { display: none; margin: 0 0 0 16px; }
			ul.nav > li > .sub-menu > li > .sub-menu > li > .sub-menu > li.selected > .sub-menu { display: block !important; }

			ul.nav > li > ul > li > ul > li > ul > li > ul > li { clear: both; float: left; width: 100%; margin: 0; padding: 0; border-top: 1px solid rgba(0,0,0,0.25); }
			ul.nav > li > ul > li > ul > li > ul > li > ul > li > a { float: left; width: 100%; padding: 12px 0; margin: 0; transition: all 0.05s linear 0s; color: var(--primary); }

			ul.nav > li > ul > li > ul > li > ul > li > ul > li.selected > a { color: var(--secondary-dark); }

		/* Level 6 */
			ul.nav > li > .sub-menu > li > .sub-menu > li > .sub-menu > li > .sub-menu > li > ul.sub-menu { display: none; margin: 0 0 0 16px; }
			ul.nav > li > .sub-menu > li > .sub-menu > li > .sub-menu > li > .sub-menu > li.selected > .sub-menu { display: block !important; }

			ul.nav > li > ul > li > ul > li > ul > li > ul > li > ul > li { clear: both; float: left; width: 100%; margin: 0; padding: 0; border-top: 1px solid rgba(0,0,0,0.25); }
			ul.nav > li > ul > li > ul > li > ul > li > ul > li > ul > li > a { float: left; width: 100%; padding: 12px 0; margin: 0; transition: all 0.05s linear 0s; color: var(--primary); }

			ul.nav > li > ul > li > ul > li > ul > li > ul > li > ul > li.selected > a { color: var(--secondary-dark); }
	}


	@media (min-width: 992px) {
		nav#mobile-menu,
		#nav-toggler { display: none; }
	}





/* IGGO Slider
---------------------------------------------------------------------------------------------------------------------- */
	section#iggo-slider { background: #666; height: auto; position: relative; }

	#iggo-slider .darker-top { position: absolute; top: 0; width: 100%; height: 160px; background: linear-gradient(to bottom, rgba(0,0,0,0.3) 0%,rgba(0,0,0,0) 100%); z-index: 1; }

	#iggo-slider.low { }
	#iggo-slider.medium { }
	#iggo-slider.full { position: relative; flex: 1 0 auto; height: calc(100% - var(--header-height)); }

	/* LOW - max and min heights */
	#iggo-slider.low,
	#iggo-slider.low .single-slide img { max-height: 250px; min-height: 150px; }

	/* Slider max and min heights */
	#iggo-slider.medium,
	#iggo-slider.medium .single-slide img { max-height: 500px; min-height: 300px; }

	#iggo-slider, #slider-slides, #iggo-slider .single-slide, #iggo-slider .slick-list, #iggo-slider .slick-track { height: 100%; }

	/* Arrow down */
	#slider-arrow { z-index: 10; position: absolute; bottom: 60px; width: 40px; left: calc(50% - 20px); display: inline-block; font-size: 46px; color: rgba(255,255,255,0.3); text-align: center; }
	#slider-arrow:hover { color: rgba(255,255,255,0.65); }
	#slider-arrow:focus,
	#slider-arrow:active { color: rgba(255,255,255,0.3); }

	@keyframes bounce-down {
		0% { opacity: 0; transform: translateY(-20px); color: rgba(255,255,255,0.3); }
		40% { opacity: 1; transform: translateY(0); color: rgba(255,255,255,0.75); }
		60% { opacity: 1; transform: translateY(0); color: rgba(255,255,255,0.75); }
		100% { opacity: 0; transform: translateY(10px); color: rgba(255,255,255,0.3); }
	}

	#slider-arrow svg { animation: bounce-down 1.8s infinite; }

	/* Accessibility toggle for Play & Pause */
	.is-slidercontrols { position: absolute; bottom: 12px; right: 4px; z-index: 25; }
	#is-toggle { background: none; border: none; color: rgba(255,255,255,0.54); padding: 0; font-size: 40px; text-align: center; width: 60px; transition: var(--transition-med); cursor: pointer; }
	#is-toggle:hover { color: rgba(255,255,255,0.64); }
	#is-toggle:active { color: rgba(255,255,255,1); }

		@media (min-width: 992px) {
			.is-slidercontrols { bottom: 28px; right: calc(50% - 30px); }
		}

	/* Prevent slide stacking issues on pageload */
	#slider-slides { overflow: hidden; }
	.slick-initialized,
	.single-slide:first-child { display: block;	}

	/* Other */
	.single-slide { outline: none; position: relative; }
	.single-slide img { z-index: 0; width: 100%; object-fit: cover; height: 100%; }

	.single-slide .color-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 2; background: rgba(0,0,0,0.6); } /* rgba(62,128,194,0.5) for primary blue */

	.single-slide .color-overlay.bgcolor-no { background: none !important; }

	.single-slide .eu-logo { display: none; position: absolute; bottom: 56px; right: 16px; width: 40px; height: 41px; min-height: 0 !important; }
	.single-slide .eu-leverage { display: none; position: absolute; bottom: 16px; right: 16px; width: 40px; height: 28px; min-height: 0 !important; }

	.single-slide .showlogo .eu-logo,
	.single-slide .showlogo .eu-leverage { display: block; }

	.single-slide .captiontext { display: none; }
	.single-slide .showcaption .captiontext { display: block; position: absolute; bottom: 32px; right: 0px; color: #FFF; font-size: calc(var(--text-tiny) - 1px); text-shadow: 1px 1px 0px rgba(0,0,0,0.3); width: 100%; text-align: center; }

		@media (min-width: 992px) {
			.single-slide .showcaption .captiontext { bottom: 0px; right: 0px; width: auto; text-align: right; background: var(--black-secondary); border-radius: 4px 0 0 0; padding: 5px 8px 6px; }

			.single-slide .showcaption.leftxx .captiontext { left: 16px; text-align: left; }
			.single-slide .showcaption.rightxx .captiontext { right: 16px; text-align: right; }
		}

	.single-slide .container { z-index: 10; height: 100%; position: relative; display: flex; align-items: center; }
	.single-slide .container.left { justify-content: flex-start; text-align: left; }
	.single-slide .container.center { justify-content: center; text-align: center; }
	.single-slide .container.right { justify-content: flex-end; text-align: right; }

	.slideinfo { width: 100%; text-align: center; display: grid; grid-gap: 16px; padding: 0 16px; }
	.slideinfo h2 { color: var(--white-primary); margin: 0; text-shadow: 1px 1px 3px rgba(0,0,0,0.5); }
	.slideinfo p { display: none; margin: 0; color: var(--white-primary); text-shadow: 1px 1px 3px rgba(0,0,0,0.5); }

	#iggo-slider.full .slideinfo p { display: block; }

	.slideinfo a.readmore { margin: 0 auto 4px; background: #F0F0F0; color: var(--black-primary); border: 3px solid #F0F0F0; }
	.slideinfo a.readmore:hover,
	.slideinfo a.readmore:focus { background: #FFF; border: 3px solid #FFF; }


		/* Larger than mobile */
			@media (min-width: 768px) {
				.slideinfo { text-align: inherit; padding: 0; }
				.slideinfo p { display: block; }

				#iggo-slider.low,
				#iggo-slider.low .single-slide img { min-height: auto; }

				#iggo-slider.medium,
				#iggo-slider.medium .single-slide img { min-height: auto; }

				.container.left .slideinfo a.readmore { margin: 0 auto 4px 0; }
				.container.center .slideinfo a.readmore { margin: 0 auto 4px auto; }
				.container.right .slideinfo a.readmore { margin: 0 0 4px auto; }

				.container.left .slideinfo p ~ a.readmore,
				.container.center .slideinfo p ~ a.readmore,
				.container.right .slideinfo p ~ a.readmore { margin-top: 8px; }

				.single-slide .color-overlay.left { background: linear-gradient(to right, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.6) 50%, rgba(0,0,0,0.3) 66%,rgba(0,0,0,0) 90%); }
				.single-slide .color-overlay.center { background: linear-gradient(to right, rgba(0,0,0,0) 0%, rgba(0,0,0,0.6) 25%, rgba(0,0,0,0.6) 75%,rgba(0,0,0,0) 100%); }
				.single-slide .color-overlay.right { background: linear-gradient(to right, rgba(0,0,0,0) 10%,rgba(0,0,0,0.6) 50%,rgba(0,0,0,0.6) 100%); }
			}

			@media (min-width: 992px) {
				#iggo-slider.medium,
				#iggo-slider.low { margin-top: calc(var(--header-height) + var(--navbar-height)); }

				#iggo-slider.full { height: 100%; }

				.single-slide .eu-logo { bottom: 92px; right: 32px; width: 60px; height: 61px; }
				.single-slide .eu-leverage { bottom: 32px; right: 32px; width: 60px; height: 41px; }
			}

			@media (min-width: 1100px) {
				.slideinfo { max-width: 50%; }
				.slideinfo h2 { font-size: var(--h1); }
				.slideinfo p { font-size: var(--text-large); }
			}

			@media (min-height: 800px) {
				#iggo-slider.medium,
				#iggo-slider.medium .single-slide img { max-height: 625px; }
				#iggo-slider.low,
				#iggo-slider.low .single-slide img { max-height: 312px; }
			}

			@media (min-height: 900px) {
				#iggo-slider.medium,
				#iggo-slider.medium .single-slide img { max-height: 750px; }
				#iggo-slider.low,
				#iggo-slider.low .single-slide img { max-height: 375px; }
			}

			@media (min-width: 1920px) {
				#iggo-slider.medium,
				#iggo-slider.medium .single-slide img { max-height: 750px; }
				#iggo-slider.low,
				#iggo-slider.low .single-slide img { max-height: 375px; }

				.slideinfo { max-width: 50%; }
			}




/* SLICK Sliders
---------------------------------------------------------------------------------------------------------------------- */
	.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }
	.slick-list { position: relative; display: block; overflow: hidden; }
	.slick-list:focus { outline: none; }
	.slick-list.dragging { cursor: pointer; cursor: hand; }

	.slick-slider .slick-track,
	.slick-slider .slick-list { transform: translate3d(0, 0, 0); }

	.slick-track { position: relative; top: 0; left: 0; display: block; margin-left: auto; margin-right: auto; }
	.slick-track:before,
	.slick-track:after { display: table; content: ''; }
	.slick-track:after { clear: both; }
	.slick-loading .slick-track { visibility: hidden; }

	.slick-slide { display: none; float: left; height: 100%; min-height: 1px; }
	[dir='rtl'] .slick-slide { float: right; }
	.slick-slide img { display: block; }
	.slick-slide.slick-loading img { display: none; }
	.slick-slide.dragging img { pointer-events: none; }
	.slick-initialized .slick-slide { display: block; }
	.slick-loading .slick-slide { visibility: hidden; }
	.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }
	.slick-arrow.slick-hidden { display: none; }

	/* Prev & Next */
	.slick-prev-wrap,
	.slick-next-wrap { display: none !important; }

	/* Dots */
	.slick-dots { position: absolute; bottom: 12px; left: 0; margin: 0; width: 100%; text-align: center; z-index: 20; height: 20px; }
	.slick-dots li { display: inline-block; overflow: hidden; margin: 0 5px; }
	.slick-dots li:first-child:last-child { display: none; }
	.slick-dots li button { width: 40px; height: 24px; background: none; border: none; text-indent: -150px; cursor: pointer; position: relative; }
	.slick-dots li button::before { position: absolute; top: 9px; left: 0; content: ""; width: 100%; height: 8px; background: rgba(255,255,255,0.54); transition: var(--transition-med); }
	.slick-dots li button:hover::before { background: rgba(255,255,255,0.7); }
	.slick-dots li.slick-active > button::before { background: rgba(255,255,255,0.9); }


		@media (min-width: 768px) {
			.slick-dots li button { width: 50px; }
		}

		@media (min-width: 1300px) {
			.slick-dots li button { width: 80px; }

			/* Prev & Next */
			.slick-prev-wrap,
			.slick-next-wrap { display: block !important; position: absolute; width: 52px; height: 60px; top: calc(50% - 30px); opacity: 0.5; z-index: 3; cursor: pointer; transition: var(--transition-fast); }

			.slick-prev-wrap { left: 16px; }
			.slick-next-wrap { right: 16px; }

			.slick-icon-prev,
			.slick-icon-next { position: absolute; top: 0; width: 40px; height: 60px; fill: var(--white-primary); transition: var(--transition-fast); }

			.slick-icon-prev { left: 0; }
			.slick-icon-next { right: 0; }

			.slick-prev-wrap:hover,
			.slick-next-wrap:hover { opacity: 0.75; }

			.slick-prev-wrap:hover .slick-icon-prev { transform: translate3d(-8px, 0, 0); }
			.slick-next-wrap:hover .slick-icon-next { transform: translate3d(8px, 0, 0); }
		}





/* Breadcrumbs
---------------------------------------------------------------------------------------------------------------------- */
	#breadcrumbs { display: none; }


		@media (min-width: 768px) {
			#breadcrumbs { display: block; padding: 16px 0; margin-top: calc(var(--header-height) + var(--navbar-height)); background: #FFF; color: var(--black-primary); font-family: var(--font-nav); border-bottom: 1px solid #DDD; font-size: var(--text-small); }

			#iggo-slider + #breadcrumbs { margin-top: 0; }

			#breadcrumbs a { color: var(--black-primary); text-decoration: none; }
			.breadcrumbs > span { margin: 0 8px; }
			.breadcrumbs > span:first-child { margin: 0 8px 0 0; }
		}





/* Content
---------------------------------------------------------------------------------------------------------------------- */
	section.expand { flex: 1 0 auto; }

		@media (min-width: 768px) {
			section.expand { display: flex; }
		}

	/* Elements */
	section p,
	section li { font-size: var(--text-normal); }

	section ul,
	section ol { margin: 0 0 16px; padding: 0; }

	section ul li,
	section ol li { margin-left: 15px; margin-bottom: 8px; }

	/* AddThis */
	.addthis_inline_share_toolbox { margin: -30px 0 20px; }
	.addthis_inline_share_toolbox:empty { display: none; margin: 0; }

	/* Tables */
	table { overflow-x: auto; white-space: nowrap; max-width: 100%; display: block; border-collapse: collapse; border-spacing: 0; vertical-align: top; margin: 0 0 16px; }
	table th,
	table td { padding: 6px 12px; border: 1px solid #DDD; }

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

	.wp-caption { background: #f1f1f1; text-align: center; margin-bottom: 0; padding: 0; }
	.wp-caption img { padding: 8px 8px 4px 8px; }
	.wp-caption-text { margin: 1px 10px 8px; color: var(--black-secondary); font-size: var(--text-small); font-style: italic; }

	/* Intra related */
	#loginform { max-width: 100%; width: 320px; margin: 0 auto var(--sectiongap); padding: 16px 20px; background: #F0F0F0; border: 1px solid #DDD; }
	#loginform p { margin: 0 0 8px; }

	#loginform .login-username label,
	#loginform .login-password label { display: block; margin: 0 auto; width: 100%; font-size: var(--text-small); font-weight: bold; }
	#loginform .login-username input,
	#loginform .login-password input { display: block; border: 1px solid #DDD; padding: 8px; margin: 0 auto; width: 100%; font: var(--font-para); }

	#loginform .login-remember label { font-size: var(--text-small); }

	#loginform #wp-submit { width: 100%; padding: 8px; }

	/* Single article meta */
	.single .meta { margin: 0 0 20px; color: var(--black-secondary); }
	.single .meta > span { display: inline-block; margin: 2px 16px 2px 0; }
	.single .author { }
	.single .date { text-transform: capitalize; }
	.single .categories { }

	.single ul.post-categories { display: inline-block; list-style: none; margin: 0; }
	.single ul.post-categories li { display: inline-block; margin: 0 6px 0 0; }
	.single ul.post-categories li:last-child { margin: 0; }
	.single ul.post-categories li a { color: var(--black-secondary); }

	/* Single article related posts */
	.single .single-relatedposts { padding-top: 8px; }
	.single .single-relatedposts > h4 { text-align: center; }

	.side-article-list { }
	.side-article-list article { border-top: 1px solid #DDD; padding: 8px 0; }
	.side-article-list article:first-child { }
	.side-article-list article .article-content { }
	.side-article-list article .meta { font-size: var(--text-small); margin: 0; }
	.side-article-list article h4 { font-size: var(--text-normal); margin: 0; }



		@media (min-width: 992px) {
			.single .single-relatedposts > h4 { text-align: left; }
		}




/* Sidemenu
---------------------------------------------------------------------------------------------------------------------- */
	ul.sidemenu { margin: 0; list-style: none; font-family: var(--font-nav); }
	.sidemenu li {  }

	.sidemenu a { color: var(--black-primary); }
	.sidemenu li.current_page_item > a { font-weight: bold; }

	/* Lvl 1 */
	.sidemenu > li { margin: 0; border-bottom: var(--border-blacktrans); }
	.sidemenu > li:last-child { border-bottom: none; }
	.sidemenu > li > a { display: block; padding: var(--sidebargap); line-height: 1.1; text-decoration: none; }
	.sidemenu > li > a:hover,
	.sidemenu > li > a:focus { text-decoration: none; }

	/* Lvl2 */
	.sidemenu > li > ul.children { display: none; margin: 0 0 8px; overflow: hidden; }
	.sidemenu > li.current_page_ancestor > ul.children,
	.sidemenu > li.current_page_item > ul.children,
	.sidemenu > li.current-cat > ul.children,
	.sidemenu > li.current-cat-ancestor > ul.children { display: block; }

	.sidemenu > li > ul.children > li { margin: 0; }
	.sidemenu > li > ul.children > li:first-child { border-top: none; }

	.sidemenu > li > ul.children > li > a { display: block; padding: 3px 10px 3px 16px; position: relative; line-height: 1.3; font-size: var(--text-small); text-decoration: none; }
	.sidemenu > li > ul.children > li > a:before { content: "»"; position: absolute; top: 3px; left: 2px; }
	.sidemenu > li > ul.children > li > a:hover,
	.sidemenu > li > ul.children > li > a:focus { text-decoration: underline; }

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

	/* Lvl3 */
	.sidemenu > li > ul.children > li > ul.children { display: none; margin: 0 0 8px; overflow: hidden; }
	.sidemenu > li > ul.children > li.current_page_ancestor > ul.children,
	.sidemenu > li > ul.children > li.current_page_item > ul.children { display: block; }

	.sidemenu > li > ul.children > li > ul.children > li { margin: 0; }
	.sidemenu > li > ul.children > li > ul.children > li:first-child { border-top: none; }
	.sidemenu > li > ul.children > li > ul.children > li > a { display: block; padding: 3px 10px 3px 28px; position: relative; line-height: 1.3; font-size: var(--text-small); text-decoration: none; }
	.sidemenu > li > ul.children > li > ul.children > li > a:before { content: "»"; position: absolute; top: 3px; left: 16px; }

	.sidemenu > li > ul.children > li > ul.children > li > a:hover,
	.sidemenu > li > ul.children > li > ul.children > li > a:focus { text-decoration: underline; }

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

	/* Lvl4 */
	.sidemenu > li > ul.children > li > ul.children > li > ul.children { display: none; margin: 0 0 8px; overflow: hidden; }

	.sidemenu > li > ul.children > li > ul.children > li.current_page_ancestor > ul.children,
	.sidemenu > li > ul.children > li > ul.children > li.current_page_item > ul.children { display: block; }

	.sidemenu > li > ul.children > li > ul.children > li > ul.children > li { margin: 0; }
	.sidemenu > li > ul.children > li > ul.children > li > ul.children > li:first-child { border-top: none; }
	.sidemenu > li > ul.children > li > ul.children > li > ul.children > li > a { display: block; padding: 3px 10px 3px 38px; position: relative; line-height: 1.3; font-size: var(--text-small); text-decoration: none; }
	.sidemenu > li > ul.children > li > ul.children > li > ul.children > li > a:before { content: "»"; position: absolute; top: 3px; left: 26px; }

	.sidemenu > li > ul.children > li > ul.children > li > ul.children > li > a:hover,
	.sidemenu > li > ul.children > li > ul.children > li > ul.children > li > a:focus { text-decoration: underline; }

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





/* IGGO File Type Links
---------------------------------------------------------------------------------------------------------------------- */
	a[href$=".zip"] i,
	a[href$=".rar"] i,
	a[href$=".rtf"] i,
	a[href$=".txt"] i,
	a[href$=".doc"] i,
	a[href$=".docx"] i,
	a[href$=".xls"] i,
	a[href$=".xlsx"] i,
	a[href$=".ppt"] i,
	a[href$=".pptx"] i,
	a[href$=".jpg"] i,
	a[href$=".jpeg"] i,
	a[href$=".png"] i,
	a[href$=".gif"] i,
	a[href$=".tiff"] i,
	a[href$=".ico"] i,
	a[href$=".svg"] i,
	a[href$=".eps"] i,
	a[href$=".ai"] i,
	a[href$=".psd"] i,
	a[href$=".mov"] i,
	a[href$=".mp4"] i,
	a[href$=".webm"] i,
	a[href$=".avi"] i,
	a[href$=".mkv"] i,
	a[href$=".wmv"] i,
	a[href$=".pdf"] i,
	a[href$=".csv"] i,
	a[href$=".odp"] i,
	a[href$=".ods"] i,
	a[href$=".odt"] i,
	a[href$=".apk"] i,
	a[href$=".ics"] i,
	a[href$=".mp3"] i,
	a[href$=".wav"] i,
	a[href$=".ogg"] i,
	a[href$=".flac"] i { margin-right: 8px; }





/* Colorbox
---------------------------------------------------------------------------------------------------------------------- */
	#colorbox, #cboxOverlay, #cboxWrapper { position: absolute; top: 0; left: 0; z-index: 9999; }
	#cboxMiddleLeft, #cboxBottomLeft { clear: left; }
	#cboxLoadingOverlay, #cboxLoadingGraphic { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
	.cboxPhoto { float: left; margin: auto; border: 0; display: block; max-width: none; }
	#colorbox, #cboxContent, #cboxLoadedContent { box-sizing: content-box; }

    .cboxIframe { width: 100%; height: 100%; display: block; border: 0; padding: 0; margin: 0; background: #FFF; }
    #cboxError { padding: 50px; border: 1px solid #ccc; }

	#colorbox { outline: 0; overflow: visible; }
	#cboxWrapper { max-width: none; overflow: visible; }
	#cboxLoadedContent { overflow: auto; -webkit-overflow-scrolling: touch; border: none; background: none; }
	#cboxOverlay { position: fixed; width: 100%; height: 100%; background: var(--black-primary); overflow: hidden; }
	#cboxContent { position: relative; background: none; margin-top: 0; margin-bottom: 40px; }

	#cboxLoadingGraphic { background: url("images/ajax-loader.png") no-repeat center center; }

	#cboxCurrent { color: #777; bottom: calc(100% + 17px); position: absolute; top: auto; font-size: 14px; line-height: 1.3; width: 60px; right: 54px; text-align: right; }
	#cboxTitle { color: var(--white-primary); position: absolute; top: calc(100% + 9px); bottom: auto; left: 0; font-size: 14px; line-height: 1.3; font-style: italic; width: calc(100% - 16px); text-align: center; padding: 0 8px; }

	#cboxPrevious,
	#cboxNext,
	#cboxClose,
	#cboxSlideshow { position: absolute; width: 52px; height: 52px; background: none; opacity: 0.5; transition: var(--transition-fast); -webkit-tap-highlight-color: rgba(255, 255, 255, 0); border: 0; padding: 0; cursor: pointer; }

	#cboxPrevious { top: calc(50% - 26px); left: -48px; }
	#cboxNext { top: calc(50% - 26px); right: -48px; }
	#cboxClose { top: -52px; right: 0px; }
	#cboxSlideshow { top: -52px; left: 0px; }

	.cbox-icon-close,
	.cbox-icon-prev,
	.cbox-icon-next,
	.cbox-icon-play,
	.cbox-icon-stop { position: absolute; top: 6px; left: 6px; width: 40px; height: 40px; fill: var(--white-primary); transition: var(--transition-fast); }

    /* Avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
    #cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active { outline: 0; }


			@media (min-width: 768px) {
				#cboxClose:hover,
				#cboxPrevious:hover,
				#cboxNext:hover,
				#cboxSlideshow:hover { opacity: 0.75; }

				#cboxPrevious:hover .cbox-icon-prev { transform: translate3d(-8px, 0, 0); }
				#cboxNext:hover .cbox-icon-next { transform: translate3d(8px, 0, 0); }
			}





/* Category view
---------------------------------------------------------------------------------------------------------------------- */

	/* Pagination */
	.pagination-nav { padding: 48px 16px 16px; }
	.pagination-nav ul { text-align: center; margin: 0; }
	.pagination-nav li { list-style: none; display: inline-block; margin: 1px; }
	.pagination-nav li.active a { background: var(--primary); color: #FFF; }
	.pagination-nav a { display: block; width: 42px; padding: 8px; border: 1px solid var(--primary); }
	.pagination-nav a:hover { background: rgba(0,0,0,0.1); }
	.pagination-nav .prevpage a,
	.pagination-nav .nextpage a { width: auto; padding: 8px 16px; }





/* Formidable
---------------------------------------------------------------------------------------------------------------------- */
	.frm_forms { line-height: 1.15; margin: 0 0 32px; }
	.frm_hidden,
	.frm_pos_none { display: none !important; }

	/* Form Grid */
	.frm_forms .frm_fields_container { display: grid; grid-template-columns: 1fr 1fr; grid-gap: 16px; padding: 0; margin: 0; border: none; }
	.form-field { grid-column: 1/3; }

	.frm_screen_reader {
		border: 0;
		clip: rect(1px, 1px, 1px, 1px);
		-webkit-clip-path: inset(50%);
		clip-path: inset(50%);
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute;
		width: 1px;
		word-wrap: normal !important; /* many screen reader and browser combinations announce broken words as they would appear visually */
	}


			@media (min-width: 768px) {
				.frm_first.frm_half { grid-column: 1/2; }
				.frm_half { grid-column: 2/3; }
			}

	/* Containers */
	.form-field { position: relative; }

	textarea { padding: 19px 12px 6px 12px; }

	/* Error Notification */
	.frm_error_style { border-radius: var(--border-radius); background: var(--errorcolor); padding: var(--button-normal-padding); line-height: var(--button-normal-lineheight); margin: 0 0 32px; color: #FFF; }
	.frm_error_style p { color: var(--white-primary); }
	.field-filled .frm_error { display: none; }

	/* Label */
	.form-field-text > label,
	.form-field-textarea > label,
	.form-field-url > label,
	.form-field-email > label,
	.form-field-phone > label { position: absolute; left: 8px; top: 18px; transform-origin: bottom left; transition: var(--transition-fast); font-size: var(--text-normal); padding: 0 8px; background: #FFF; }

	.form-field.field-empty > label { color: var(--black-secondary); }
	.form-field.field-filled > label { color: var(--black-secondary); }

	.field-focus > label { color: var(--primary); }
	.field-focus > label,
	.field-filled > label { transform: scale(.8) translateY(-35px); }

	/* Inputs */
	.frm_forms input[type="text"],
	.frm_forms input[type="url"],
	.frm_forms input[type="email"],
	.frm_forms input[type="tel"],
	.frm_forms textarea,
	.frm_forms select { font-size: var(--text-normal); width: 100%; background: none; border-radius: var(--border-radius); border: 1px solid var(--black-secondary); transition: var(--transition-fast); }

	.frm_forms input[type="text"],
	.frm_forms input[type="url"],
	.frm_forms input[type="email"],
	.frm_forms input[type="tel"] { padding: 17px 15px 17px 15px; }

	.frm_radio input[type="radio"] { margin-right: 4px; }
	.frm_forms .frm_checkbox input[type="checkbox"] { margin-right: 4px; }

	.frm_checkbox,
	.frm_radio { margin: 0 0 4px; display: block; }

	/* Form Specific */
	#frm_form_6_container .frm_radio { float: left; margin-right: 16px; }
	#frm_form_6_container .frm_radio:last-child { margin-right: 0; }
	#frm_form_6_container #frm_field_72_container > label { display: none; }

	/* Invalid */
	.frm_forms :invalid { box-shadow: none; }

	.frm_forms .field-filled input[type="text"]:invalid,
	.frm_forms .field-filled input[type="url"]:invalid,
	.frm_forms .field-filled input[type="email"]:invalid,
	.frm_forms .field-filled input[type="tel"]:invalid,
	.frm_forms .field-filled textarea:invalid,
	.frm_forms .field-filled select:invalid { border: 1px solid var(--errorcolor); box-shadow: none; }

	.frm_error { color: var(--errorcolor); font-size: var(--text-small); }

	/* On Focus */
	.frm_forms input[type="text"]:focus,
	.frm_forms input[type="url"]:focus,
	.frm_forms input[type="email"]:focus,
	.frm_forms input[type="tel"]:focus,
	.frm_forms textarea:focus,
	.frm_forms select:focus { border: 1px solid var(--primary); }

	/* File Upload */
	.form-field-file .frm_compact_text { display: none; }
	.form-field-file .frm_small_text { font-size: var(--text-small); color: var(--black-secondary); }
	.form-field-file label { display: block; margin-bottom: 4px; }

	/* Descriptions */
	.frm_description { font-size: var(--text-small); margin-top: 6px; background: #F0F0F0; padding: 12px 14px; font-style: italic; }

	.frm_forms .frm_verify { display: none !important; }

	/* Captcha */
	.dz-success-mark,
	.dz-error-mark { display: none; }
	.dz-preview { float: left; width: 100%; padding: 16px; background: #F5F5F5; margin: 4px 0 0; }
	.dz-image { width: 68px; height: 68px; float: left; background: #CCC; }
	.dz-details { width: calc(100% - 80px); float: right; margin-bottom: 4px; }
	.dz-progress { clear: right; float: right; width: calc(100% - 80px); }
	.dz-progress .dz-upload { background: #f57c00; height: 8px; display: inline-block; transition: var(--transition-slow); }
	.dz-complete .dz-upload { background: #689f38; }
	.dz-remove { font-size: var(--text-small); padding-left: 12px; }
	.dz-max-files-reached > .needsclick { display: none; }

	.frm_upload_text { display: inline-block; cursor: pointer; margin-bottom: 6px; border-radius: var(--border-radius); padding: var(--button-normal-padding); line-height: var(--button-normal-lineheight); transition: var(--transition-fast); }

	.content-centered .frm_upload_text { background: var(--primary); color: var(--primary-text-color); }
	.content-centered .frm_upload_text:hover { background: var(--primary-dark); }

	/* Radio & Check */
	.form-field-checkbox > label,
	.form-field-radio > label { color: var(--black-secondary); margin-bottom: 3px; display: block; }

	.form-field-checkbox > .frm_primary_label,
	.form-field-radio > .frm_primary_label { margin-bottom: 6px; display: block; }

	/* Select */
	.form-field-select > label { color: var(--black-secondary); margin-bottom: 3px; display: block; }

	/* Submit */
	.frm_submit button { border-radius: var(--border-radius); border: none; cursor: pointer; background: #1F1F1F; color: #FFF; padding: var(--button-normal-padding); line-height: var(--button-normal-lineheight); transition: var(--transition-fast); font-size: var(--text-small); }
	.frm_submit button:hover { background: #333; color: #FFF; }

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

	.frm_style_formidable-style.with_frm_style .frm_error { margin-top: 4px; }

	.frm_none_container > label.frm_primary_label { display: none; } /* Hide label for Invisible reCAPTCHA */





/* Footer
---------------------------------------------------------------------------------------------------------------------- */
	footer { color: var(--white-primary); padding: 48px 0 calc(var(--botbar-height) + 48px); background: #000; text-align: center; font-family: var(--font-nav); font-size: var(--text-small); }

	footer a { color: #FFF; }
	footer a:hover,
	footer a:focus { color: #FFF; }

	footer .social { margin: 0 -1px; }
	footer .social a { margin: 1px; line-height: 40px; display: inline-block; color: #FFF; font-size: 28px; transition: var(--transition-slow); border: none; }
	footer .social a:hover { color: var(--secondary); border: none; }
	footer .social img { width: auto !important; height: 28px; }

	footer p:last-child { margin: 0; }

	footer ul { margin: 0 0 16px; }
	footer li { list-style: none; display: block; margin: 0 0 4px; }

	footer h2,
	footer h3,
	footer h4 { color: #FFF; }

	/* Footer grid */
	.footgrid { display: grid; grid-template-columns: minmax(0, 1fr); margin: 0 0 32px; grid-gap: 16px; }
	.footlogo { display: inline-block; margin: 0 auto 8px; width: 179px; height: 55px; }

	/* Footer bottom */
	.footbot { display: block; width: 100%; padding-top: 32px; border-top: 1px solid #999; }
	.footicons { display: block; margin: 0 auto 8px; }
	.footicons img { display: inline-block; width: 40px; height: auto; margin: 0 4px; }
	.slogantext { display: block; margin: 0 auto; font-size: var(--h3); font-weight: bold; }

	/* Copyright (disabled) */
	footer .copyright { display: none; color: var(--white-disabled); font-size: var(--text-normal); }
	footer .copyright a { color: var(--white-disabled); }


		@media (min-width: 768px) {
			.footicons { float: left; }
			.slogantext { float: right; }
		}


		@media (min-width: 992px) {
			footer { padding: 64px 0; }
			.footgrid { grid-template-columns: repeat(4, minmax(0, 1fr)); text-align: left; }

			footer .social { margin: 0 -1px; }

			.footicons { margin: 0; }
			.footicons img { width: 50px; height: auto; margin: 0 4px 0 0; }
			.slogantext { margin-top: 5px; }
		}





/* IGGO Flexible Blocks
---------------------------------------------------------------------------------------------------------------------- */
	.grid { display: grid; grid-template-columns: 100%; grid-gap: var(--gridgap); height: 100%; }

	#content { background: #FFF; }

	#sb_instagram { margin: 0 -32px !important; width: calc(100% + 64px) !important; }

	aside#iggoside { display: none; }
	.content-centered { max-width: 800px; width: 100%; margin: 48px auto 52px auto; color: var(--black-primary); }
	.content-fullwidth { max-width: none; width: 100%; }

	#ifb-wrapper { display: grid; grid-template-columns: 100%; grid-gap: var(--gridgap); }
	.page-template-page-fullwidth #ifb-wrapper,
	.single-iggo_referenssi #ifb-wrapper { grid-gap: 0; }
	.single #ifb-wrapper { grid-gap: 32px; }

	.archive #content { padding: var(--gridgap) 0; }
	.archive .tagmenu { margin: 0 0 48px; border-bottom: 1px solid #DDD; padding-bottom: 16px; }
	.archive .tagmenu li { display: inline-block; margin: 0; }
	.archive .tagmenu a { display: inline-block; margin: 2px 0px; color: var(--black-primary); background: #DDD; padding: 4px 12px; border-radius: 16px; font-size: var(--text-small); text-transform: uppercase; font-weight: bold; }

	.archive .tagmenu a.jotain { }

		@media (min-width: 992px) {
			.archive .tagmenu { margin: 0 0 64px; }
			.archive .tagmenu a { padding: 8px 16px; text-decoration: none; }
		}

	.ifb-block :last-child { margin-bottom: 0; }

	.content-fullwidth .ifb-block { padding: 0 20px; margin: 0 auto; max-width: 840px; }
	.content-fullwidth > h1 { margin-top: var(--sectiongap); padding: 0 20px; text-align: center; }

	.content-fullwidth .ifb-section { padding: var(--sectiongap) 0; }
	.content-fullwidth .block-style-white + .block-style-white,
	.content-fullwidth .block-style-light + .block-style-light,
	.content-fullwidth .block-style-dark + .block-style-dark,
	.content-fullwidth .block-style-black + .block-style-black,
	.content-fullwidth .block-style-primary + .block-style-primary,
	.content-fullwidth .block-style-secondary + .block-style-secondary { padding-top: 0; }

	.content-fullwidth h1 + #ifb-wrapper > .block-style-white:first-child { padding-top: 0; }

	.content-fullwidth .ifb-section-slider-lite + .ifb-section-colcount,
	.content-fullwidth .ifb-section-slider-lite + .ifb-section-accordion,
	.content-fullwidth .ifb-section-slider-lite + .ifb-section-gallery,
	.content-fullwidth .ifb-section-slider-lite + .ifb-section-personnel,
	.content-fullwidth .ifb-section-slider-lite + .ifb-section-features,
	.content-fullwidth .ifb-section-slider-lite + .ifb-section-logo-grid,
	.content-fullwidth .ifb-section-slider-lite + .ifb-section-logo-carousel { padding-top: var(--sectiongap); }

	.content-fullwidth .ifb-section-gmap + .ifb-section-colcount,
	.content-fullwidth .ifb-section-gmap + .ifb-section-accordion,
	.content-fullwidth .ifb-section-gmap + .ifb-section-gallery,
	.content-fullwidth .ifb-section-gmap + .ifb-section-personnel,
	.content-fullwidth .ifb-section-gmap + .ifb-section-features,
	.content-fullwidth .ifb-section-gmap + .ifb-section-logo-grid,
	.content-fullwidth .ifb-section-gmap + .ifb-section-logo-carousel { padding-top: var(--sectiongap); }


		@media (min-width: 992px) {
			header + #content .content-centered,
			header + #content .content-fullwidth { padding-top: calc(var(--header-height) + var(--navbar-height)); } /* Adding padding for non-slider pages */

			#content { padding-top: calc(var(--header-height) + var(--navbar-height)); }
			#iggo-slider + #content,
			#breadcrumbs + #content { padding-top: 0; }

			.archive #content { padding: calc(var(--header-height) + var(--navbar-height) + var(--gridgap)) 0 var(--gridgap); }
			.archive #iggo-slider + #content { padding: var(--gridgap) 0; }

			.grid { grid-template-columns: minmax(0, 1fr) 260px; }
			aside#iggoside { display: block; position: relative; margin: 64px 0 68px; }
			#sidebar { position: sticky; top: 200px; padding: 0; }
			.content-centered { margin: 64px auto 68px 0; }
			.content-fullwidth .ifb-block { padding: 0 calc(var(--sectiongap) / 2); max-width: 1200px; }
		}


	/* IFB: Artikkelin ote ja tekstibanner
	------------------------------------------------------------------------------------------------------------------ */
		.ifb-section-articletext .twocols { display: grid; grid-template-columns: 100%; grid-gap: var(--cardgap); }

		.chosencategory-banner { }

		/* Excerpt side */
		.twocols .col-category-excerpt { background: #F7941E; padding: 48px; display: grid; align-content: center; grid-gap: 24px; justify-items: center; }
		.twocols .col-category-excerpt { }

		.twocols .col-category-excerpt .ghostbutton { border: 3px solid #000; color: #000; }
		.twocols .col-category-excerpt .ghostbutton:hover,
		.twocols .col-category-excerpt .ghostbutton:focus { background: #000; color: #F7941E; }

		.twocols .cce-toprow { display: grid; grid-template-columns: 100%; align-content: center; grid-gap: 24px; width: 100%; }
		.twocols .cce-avatar { text-align: left; }
		.twocols .cce-avatar img { width: 160px; border-radius: 100%; margin: 0 auto; }
		.twocols .cce-meta { text-align: center; letter-spacing: 0.5px; color: #000; text-transform: uppercase; display: grid; align-content: center; grid-gap: 24px; }
		.twocols .cce-meta .kirjoittaja { }
		.twocols .cce-meta .julkaistu { }
		.twocols .cce-meta span { display: block; line-height: 1.3; }
		.twocols .cce-meta .boldtext { font-weight: bold; margin-top: 2px; }

		.twocols .cce-excerpt { position: relative; color: #000; font-size: var(--h4); text-align: center; }
		.twocols .cce-excerpt .fa-quote-right { font-size: 48px; display: block; margin: 0 auto 16px; }

			@media (min-width: 992px) {
				.twocols .cce-toprow { grid-template-columns: 160px minmax(0, 1fr); }
				.twocols .cce-avatar img { margin: 0; }
				.twocols .cce-meta { text-align: right; }
				.twocols .cce-excerpt { text-align: left; }
				.twocols .cce-excerpt .fa-quote-right { margin: 0 0 16px; }
			}

		/* Banner side */
		.twocols .col-textbanner { background: #F287B7; text-align: center; padding: 48px; display: grid; align-content: center; grid-gap: 24px; justify-items: center; }
		.twocols .col-textbanner img { width: 200px; max-width: 100%; margin: 0 auto; }
		.twocols .col-textbanner .title { font-size: var(--h2); color: #000; font-weight: bold; line-height: 1.3; margin: 0 0 24px; }
		.twocols .col-textbanner .desc { font-size: var(--h4); color: #000; }

		.twocols .col-textbanner .ghostbutton { border: 3px solid #000; color: #000; }
		.twocols .col-textbanner .ghostbutton:hover,
		.twocols .col-textbanner .ghostbutton:focus { background: #000; color: #F287B7; }

			@media (min-width: 768px) {
				.ifb-section-articletext .twocols { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
				.twocols .col-textbanner img { width: 250px; }
			}



	/* IFB: Columns
	------------------------------------------------------------------------------------------------------------------ */
		.colcount-1 {  }
		.colcount-2 { display: grid; grid-template-columns: 100%; grid-gap: var(--gridgap); }

		.colcount-2 > .top { align-self: flex-start; }
		.colcount-2 > .middle { align-self: center; }
		.colcount-2 > .bottom { align-self: flex-end; }

		.content-fullwidth .block-style-white			{ color: var(--black-primary); }
		.content-fullwidth .block-style-dark			{ color: var(--white-primary); }
		.content-fullwidth .block-style-black			{ color: var(--white-secondary); }
		.content-fullwidth .block-style-primary 		{ color: var(--primary-text-color); }
		.content-fullwidth .block-style-secondary 		{ color: var(--secondary-text-color); }

		.content-fullwidth .block-style-primary h2,
		.content-fullwidth .block-style-primary h3		{ color: var(--primary-title-color); }

		.content-fullwidth .block-style-secondary h2,
		.content-fullwidth .block-style-secondary h3	{ color: var(--secondary-title-color); }

			@media (max-width: 767px) {
				.colcount-2.text-image .col-text { grid-row: 2; }
			}

			@media (min-width: 768px) {
				.colcount-1 { grid-template-columns: minmax(0, 1fr); }
				.colcount-2 { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
			}

			@media (min-width: 992px) {
				.content-fullwidth .colcount-1.text-only { width: 750px; }
				.content-fullwidth .colcount-1.image-only { width: 750px; }
			}


	/* IFB: Text
	------------------------------------------------------------------------------------------------------------------ */
		.col-text img { margin-bottom: 16px; height: auto; }

		/* Factbox variant */
		.col-text.factbox { padding: 24px 24px 24px 60px; background: #F5F5F5; position: relative; }
		.col-text.factbox:before { position: absolute; content :""; top: 24px; left: 16px; width: 30px; height: 40px; background: url("images/faktaboksi.png") no-repeat; background-size: contain; }

			@media (min-width: 992px) {
				.col-text.factbox { padding: 32px 32px 32px 96px; }
				.col-text.factbox:before { top: 24px; left: 24px; width: 48px; height: 66px; }
			}


	/* IFB: Video
	------------------------------------------------------------------------------------------------------------------ */
		.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; height: auto; }

	    .embed-container iframe,
	    .embed-container object,
	    .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


	/* IFB: Image
	------------------------------------------------------------------------------------------------------------------ */
		.col-image img { width: 100%; margin: 0 auto; }


	/* IFB: Banner
	------------------------------------------------------------------------------------------------------------------ */
		.col-banner > a { display: block; position: relative; overflow: hidden; }
		.col-banner img { width: 100%; object-fit: cover; transition: var(--transition-slow); }
		.col-banner > a:hover img { transform: scale(1.1); }

		.col-banner .banner-textwrap ~ img { filter: grayscale(0.65); }
		.col-banner .banner-textwrap { background: rgba(25, 85, 147, 0.75); text-align: center; position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: grid; align-items: center; justify-items: center; z-index: 1; }

		.col-banner .banner-inner { padding: 16px 32px; }
		.col-banner .banner-inner > .title { color: #FFF; font-size: var(--h3); font-weight: bold; margin: 0 0 8px; line-height: 1.3; }
		.col-banner .banner-inner > .desc { color: #FFF; font-size: var(--text-normal); line-height: 1.4; }


			@media (min-width: 992px) {
				.col-banner .banner-inner { padding: 24px 48px; }
			}


	/* IFB: Staff
	------------------------------------------------------------------------------------------------------------------ */
		.staff-grid { display: grid; grid-gap: var(--gridgap); }

		.staff-group .group-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-gap: var(--gridgap); }
		.single-person { text-align: center; }
		.single-person p { font-size: var(--text-small); }
		.single-person > img { width: 75%; margin: 0 auto 12px; border-radius: 100%; }

		.single-person .job-title { display: block; line-height: 1.2; font-size: var(--text-small); color: var(--black-secondary); font-style: italic; }
		.single-person .person-name { font-weight: bold; }

		.content-fullwidth .block-style-dark .single-person .job-title { color: var(--white-disabled); }
		.content-fullwidth .block-style-dark .single-person .person-name {  }
		.content-fullwidth .block-style-dark .single-person p { color: var(--white-disabled); }
		.content-fullwidth .block-style-dark .single-person > img { box-shadow: 0px 6px 4px -3px rgba(0,0,0,0.5); }

			@media (min-width: 768px) {
				.staff-group .group-list { grid-gap: calc(var(--gridgap) / 2); }
				.content-centered .staff-group .group-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
				.content-fullwidth .staff-group .group-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
			}

			@media (min-width: 992px) {
				.content-fullwidth .staff-group .group-list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
			}


	/* IFB: Logo Block
	------------------------------------------------------------------------------------------------------------------ */
		/* Carousel */
		.ifb-section-logo-carousel { padding: 24px 0; }
		.logo-carousel { min-height: 0; min-width: 0; position: relative; }
		.logo-carousel .logo-wrap { visibility: hidden; opacity: 0; max-height: 0; transition: var(--transition-slow); }
		.logo-carousel .logo-wrap.slick-initialized { visibility: visible; opacity: 1; max-height: none; }

		.logo-carousel .sidefade { position: absolute; height: 100%; top: 0; width: 24px; z-index: 10; }
		.logo-carousel .fadeleft { left: 0; background: linear-gradient(to right, rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%); }
		.logo-carousel .faderight { right: 0; background: linear-gradient(to right, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%); }

		.content-fullwidth .block-style-light .logo-carousel .fadeleft { background: linear-gradient(to right, rgba(245,245,245,1) 0%,rgba(245,245,245,0) 100%); }
		.content-fullwidth .block-style-light .logo-carousel .faderight { background: linear-gradient(to right, rgba(245,245,245,0) 0%,rgba(245,245,245,1) 100%); }

		.content-fullwidth .block-style-dark .logo-carousel .fadeleft { background: linear-gradient(to right, rgba(33,33,33,1) 0%,rgba(33,33,33,0) 100%); }
		.content-fullwidth .block-style-dark .logo-carousel .faderight { background: linear-gradient(to right, rgba(33,33,33,0) 0%,rgba(33,33,33,1) 100%); }

		.content-fullwidth .block-style-black .logo-carousel .fadeleft { background: linear-gradient(to right, rgba(0,0,0,1) 0%,rgba(0,0,0,0) 100%); }
		.content-fullwidth .block-style-black .logo-carousel .faderight { background: linear-gradient(to right, rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%); }

		.logo-carousel .slick-track { display: flex; align-items: center; }
		.logo-carousel a.slick-slide { height: auto; display: flex; align-items: center; justify-items: center; justify-content: center; padding: 0 16px; float: none; }
		.logo-carousel img { transition: var(--transition-slow); width: 100%; height: auto; filter: grayscale(1); max-height: 45px; object-fit: contain; }
		.logo-carousel img:hover { opacity: 1; filter: grayscale(0); }
		.logo-carousel > h2 { position: relative; z-index: 11; }

		/* Grid */
		.logo-grid .logo-wrap { display: flex; flex-flow: row wrap; margin: -8px -12px; }
		.content-fullwidth .logo-grid .logo-wrap { justify-content: center; }

		.logo-grid a { flex: 0 0 calc(100% / 4); display: flex; border: 1px solid rgba(255,255,255,0); transition: var(--transition-fast); padding: 8px 12px; min-height: 80px; position: relative; overflow: hidden; }
		.logo-grid img { opacity: 1; transition: var(--transition-fast); height: auto !important;max-height: 45px; margin: 0 auto; justify-self: center; align-self: center; }

		.logo-gridxxx a:hover { background: var(--white-primary); border: 1px solid var(--primary); }
		.logo-grid a:hover img { filter: grayscale(0); }

		.logo-grid .corner-arrow { transition: var(--transition-fast); position: absolute; bottom: -16px; right: -16px; width: 16px; height: 16px; z-index: 3; transform: translate3d(0,0,0); }
		.logo-grid .corner-arrow::before { border-color: transparent transparent var(--primary); border-style: solid; border-width: 0 0 16px 16px; height: 0; width: 0; content:""; display: block; }
		.logo-grid a:hover .corner-arrow { transform: translate3d(-16px,-16px,0); }

			@media (min-width: 768px) {
				.ifb-section-logo-carousel { padding: 48px 0; }
				.logo-carousel a.slick-slide { padding: 0 20px; }
				.logo-carousel img { max-height: 60px; }

				.logo-grid .logo-wrap { margin: -16px -20px; }
				.logo-grid a { flex: 0 0 calc(100% / 4); padding: 16px 20px; min-height: 105px; }
				.logo-grid img { max-height: 60px; }

				/* Fullwidth version */
				.content-fullwidth .logo-grid { margin: 0 auto; }
			}

			@media (min-width: 992px) {
				.logo-carousel img { max-height: 65px; }

				.content-fullwidth .logo-grid .logo-wrap { margin: -16px -28px; }
				.content-fullwidth .logo-grid a { flex: 0 0 calc(100% / 4); padding: 16px 28px; min-height: 105px; }
				.content-fullwidth .logo-grid img { max-height: 65px; }

				.content-fullwidth .logo-carousel a.slick-slide { padding: 0 28px; }
				.content-fullwidth .logo-carousel img { max-height: 65px; }
			}

			@media (min-width: 1200px) {
				.content-fullwidth .logo-grid .logo-wrap { margin: -16px -32px; }
				.content-fullwidth .logo-grid a { flex: 0 0 calc(100% / 4); padding: 16px 36px; min-height: 105px; }

				.content-fullwidth .logo-carousel a.slick-slide { padding: 0 36px; }
			}

			@media (min-width: 1208px) {
				.content-fullwidth .logo-grid .logo-wrap { margin: -16px -36px; } /* Fixes a render error in Firefox */
			}


	/* IFB: Gallery
	------------------------------------------------------------------------------------------------------------------ */
		.gallery-grid { display: flex; flex-flow: row wrap; margin: -4px; }
		.gallery-grid a { flex: 0 0 calc(100% / 3); display: grid; padding: var(--gallerygap); position: relative; }
		.gallery-grid img { align-self: stretch; object-fit: cover; width: 100%; border-radius: var(--border-radius); }
		.gallery-grid .caption { position: absolute; bottom: var(--gallerygap); left: var(--gallerygap); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; width: calc(100% - 2 * var(--gallerygap)); padding: 4px 8px; background: rgba(0,0,0,0.5); font-size: var(--text-tiny); color: var(--white-primary); font-style: italic; }

		.content-fullwidth .block-gallery { text-align: center; }
		.content-fullwidth .gallery-grid { justify-content: center; }

			@media (min-width: 500px) {
				.gallery-grid a { flex: 0 0 calc(100% / 4); }
			}

			@media (min-width: 768px) {
				.gallery-grid .caption { font-size: var(--text-small); }
			}

			@media (min-width: 1100px) {
				.content-fullwidth .gallery-grid a { flex: 0 0 calc(100% / 6); }
			}

			@media (min-width: 1300px) {
				.content-fullwidth .gallery-grid a { flex: 0 0 calc(100% / 7); }
			}

			@media (min-width: 1400px) {
				.content-fullwidth .gallery-grid a { flex: 0 0 calc(100% / 8); }
			}


	/* IFB: Google Map
	------------------------------------------------------------------------------------------------------------------ */
		.content-fullwidth .ifb-section-gmap { padding: 0; }
		.block-gmap { height: 252px; overflow: hidden; }
		.block-gmap .acf-map { background: #E5E3DF; height: 100%; box-shadow: 0px 7px 2px -4px rgba(0,0,0,0.1); }

		.content-fullwidth .block-gmap { padding: 0; }

			@media (min-width: 768px) {
				.block-gmap { height: 300px; }
			}

			@media (min-width: 1000px) {
				.block-gmap { height: 352px; }
			}

	/* IFB: Slider Lite
	------------------------------------------------------------------------------------------------------------------ */
		.content-fullwidth .ifb-section-slider-lite { padding: 0; }
		.content-fullwidth .block-slider-lite { padding: 0; max-width: 100%; }

		.ifb-section-slider-lite .slick-slide img { min-height: 180px; }

			@media (min-width: 768px) {
				.ifb-section-slider-lite .slick-slide img { min-height: 240px; }
			}

			@media (min-width: 992px) {
				.ifb-section-slider-lite .slick-slide img { min-height: 320px; }
			}


	/* IFB: Pricelist
	------------------------------------------------------------------------------------------------------------------ */
		.block-pricelist { display: grid; grid-gap: var(--gridgap); }

		.price-group > .group-desc { margin: 0 0 8px; }

		.single-price { display: grid; grid-template-columns: minmax(0, 1fr) 100px; padding: 0.375rem 0; border-bottom: 1px solid #DDD; }
		.single-price:first-child { border-top: 1px solid #DDD; }
		.price-info > .desc { font-size: var(--text-small); color: var(--black-secondary); line-height: 1.3; font-style: italic; }
		.price { text-align: right; font-weight: bold; color: var(--primary-dark); font-size: var(--text-large); }


	/* IFB: Filelist
	------------------------------------------------------------------------------------------------------------------ */
		.filelist { display: grid; grid-template-columns: minmax(0, 1fr); grid-gap: 4px; }
		.filelist .single-file { text-align: left; background: #F5F5F5; }
		.filelist .single-file a { display: grid; grid-template-columns: 40px minmax(0, 1fr) 60px; align-items: stretch; height: 100%; grid-gap: 8px; text-decoration: none; }

		.filelist .single-file .far { grid-column: 1/2; font-size: 24px; display: grid; align-items: center; color: var(--secondary); padding-left: 16px; margin-right: 0; }
		.filelist .single-file .fileinfo { grid-column: 2/3; padding: 10px 0; align-self: center; }
		.filelist .single-file .title { display: block; color: var(--black-primary); margin: 1px 0 3px; line-height: 1.2; }
		.filelist .single-file .filename { display: block; font-size: var(--text-tiny); color: var(--black-secondary); line-height: 1.3; margin: 0; }
		.filelist .single-file .fa-download { grid-column: 3/4; text-align: center; background: var(--secondary); color: #FFF; transition: var(--transition-fast); padding: 0; }

		.filelist .single-file a:hover .fa-download { background: var(--secondary-light); }

			@media (min-width: 640px) {
				.filelist { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-gap: 12px; }
			}



	/* IFB: Accordion
	------------------------------------------------------------------------------------------------------------------ */
		.accordion { border-bottom: var(--border-blacktrans); }
		.accordion:first-child { border-top: var(--border-blacktrans); }

		.acc-content-wrapper { display: grid; grid-template-columns: minmax(0, 1fr); }

		.acc-title { cursor: pointer; display: grid; grid-template-columns: minmax(0, 1fr) 24px; }
		.acc-title-text { padding: 10px 4px 10px 0; transition: var(--transition-fast); font-weight: bold; color: var(--black-primary); }
		.acc-title-icon { position: relative; transition: var(--transition-fast); display: flex; align-items: center; }
		.acc-title-icon i { position: absolute; right: 0; transition: var(--transition-fast); }

		.open .acc-title-text { color: var(--black-primary); }

		.acc-title .fa-chevron-up { opacity: 0; transform: translate3d(0, 8px, 0); }
		.acc-title .fa-chevron-down { opacity: 1; transform: translate3d(0, 0, 0); }

		.open .acc-title .fa-chevron-up { opacity: 1; transform: translate3d(0, 0, 0); }
		.open .acc-title .fa-chevron-down { opacity: 0; transform: translate3d(0, 8px, 0); }

		.acc-content { grid-row: 2; }
		.acc-content:last-child { grid-row: 1; }

		.acc-image { grid-row: 1; }
		.acc-image img { width: 100%; border-radius: var(--border-radius); }

		.acc-content > :last-child { margin-bottom: 16px; }
		.acc-image :last-child { margin: 6px 0 16px; }

		/* Color Variants */
		.content-fullwidth .block-style-dark .accordion,
		.content-fullwidth .block-style-black .accordion { border-bottom: var(--border-whitetrans); }
		.content-fullwidth .block-style-dark .accordion:first-child,
		.content-fullwidth .block-style-black .accordion:first-child { border-top: var(--border-whitetrans); }

		.content-fullwidth .block-style-primary .accordion { border-bottom: var(--border-whitetrans); }
		.content-fullwidth .block-style-primary .accordion:first-child { border-top: var(--border-whitetrans); }
		.content-fullwidth .block-style-secondary .accordion { border-bottom: var(--border-whitetrans); }
		.content-fullwidth .block-style-secondary .accordion:first-child { border-top: var(--border-whitetrans); }

		.content-fullwidth .block-style-dark .acc-title-text,
		.content-fullwidth .block-style-dark .acc-content p,
		.content-fullwidth .block-style-dark .acc-content li { color: var(--white-primary); }
		.content-fullwidth .block-style-black .acc-title-text,
		.content-fullwidth .block-style-black .acc-content p,
		.content-fullwidth .block-style-black .acc-content li { color: var(--white-secondary); }
		.content-fullwidth .block-style-primary .acc-title-text,
		.content-fullwidth .block-style-primary .acc-content p,
		.content-fullwidth .block-style-primary .acc-content li { color: var(--primary-text-color); }
		.content-fullwidth .block-style-secondary .acc-title-text,
		.content-fullwidth .block-style-secondary .acc-content p,
		.content-fullwidth .block-style-secondary .acc-content li { color: var(--secondary-text-color); }


			@media (min-width: 576px) {
				.acc-content-wrapper { display: grid; grid-template-columns: minmax(0, 1fr) 110px; grid-gap: 24px; }
				.acc-content { grid-column: 1/2; grid-row: 1; }
				.acc-content:last-child { grid-column: 1/3; grid-row: 1; }
				.acc-image { grid-column: 2/3; grid-row: 1; }
			}

			@media (min-width: 768px) {
				.acc-content-wrapper { grid-template-columns: minmax(0, 1fr) 150px; }
			}

			@media (min-width: 992px) {
				.content-fullwidth .block-accordion { max-width: 750px; margin: 0 auto; }
			}

			@media (min-width: 1156px) {
				.acc-content-wrapper { grid-template-columns: minmax(0, 1fr) 200px; }
			}


	/* IFB: Article List
	------------------------------------------------------------------------------------------------------------------ */
		.article-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-gap: var(--cardgap); }
		.article-grid > article { position: relative; overflow: hidden; border-bottom: 1px solid #DDD; padding-bottom: 32px; }
		.article-grid > article > a { background: var(--primary-light); display: block; overflow: hidden; }
		.article-grid > article > a img { width: 100%; height: auto; transition: var(--transition-med); }
		.article-grid .card-content { width: 100%; padding: 0; }
		.article-grid .card-content-nodate { height: 84px; }
		.article-grid .card-content .read { font-size: var(--text-small); font-weight: bold; text-transform: uppercase; color: var(--primary-light); padding: 2px 8px; }
		.article-grid .card-content h3 { min-height: 42px; overflow: hidden; margin: 0 0 4px; color: var(--white-primary); }
		.article-grid .card-content h3 a { color: var(--black-primary); text-decoration: none; }
		.article-grid .meta { color: var(--black-secondary); }
		.article-grid .excerpt { margin: 0; }
		.article-grid .categories { }

		.article-grid article:hover img { transform: scale(1.05); opacity: 1; }

		.article-list { display: grid; grid-template-columns: 100%; }
		.article-list article { display: grid; grid-template-columns: minmax(0, 1fr) 90px; border-bottom: var(--border-blacktrans); padding: 6px 0; }
		.article-list article:first-child { border-top: var(--border-blacktrans); }
		.article-list h3 { font-size: var(--text-large); margin: 0; line-height: 1.2; }
		.article-list .meta { text-align: right; color: var(--black-disabled); font-size: var(--text-small); line-height: 1.2; margin-top: 3px; }

		.article-grid .topline { display: inline-block; margin: 0 0 20px; width: 100%; letter-spacing: 0.5px; }
		.article-grid .topline .categories { display: block; margin: 0 0 4px; }
		.article-grid .topline .meta { display: block; font-size: var(--text-small); }

		/* Category specific colors */
		.article-grid .categories a { text-transform: uppercase; font-weight: bold; border: none; color: var(--black-primary); border-radius: 16px; padding: 4px 12px; font-size: var(--text-small); display: inline-block; text-decoration: none; }

		.article-grid .categories.Uutinen a,
		.tagmenu li.cat-item-33 a { background: var(--primary); }

		.article-grid .categories.Tiedote a,
		.tagmenu li.cat-item-16 a { background: var(--secondary); }

		.article-grid .categories.Kuulutus a,
		.tagmenu li.cat-item-17 a { background: rgb(247,148,30); }

		.article-grid .categories.Tapahtuma a,
		.tagmenu li.cat-item-23 a { background: rgb(116,206,57); }

		.article-grid .categories.Blogi a,
		.tagmenu li.cat-item-30 a { background: rgb(244,119,124); }

		.article-grid .categories.Kannanotto a,
		.tagmenu li.cat-item-103 a { background: rgb(255,255,0); }

		/* Card */
		.card { background: var(--white-primary); overflow: hidden; }
		.card-content { padding: 12px 16px; width: 100%; overflow: hidden; }
		.card img { width: 100%; border-radius: var(--border-radius) var(--border-radius) 0 0; }


			@media (min-width: 550px) {
				.article-grid .topline .categories { float: left; margin: 0; }
				.article-grid .topline .meta { float: right; margin-top: 4px; }
			}

			@media (min-width: 992px) {
				.card-content { padding: 16px 24px; }

				.article-grid .card-content h3 { min-height: 48px; }

				.article-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
				.content-centered .article-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

				.article-grid .categories a { padding: 8px 16px; }
				.article-grid .topline .meta { margin-top: 8px; }
			}


	/* IFB: Features
	------------------------------------------------------------------------------------------------------------------ */
		.features { }

		.content-fullwidth .features > h2 { text-align: center; }

		.feature-list { display: flex; flex-flow: row wrap; margin: -16px; justify-content: center; }
		.single-feature { text-align: center; flex: 0 0 calc(100% / 1); padding: 16px; max-width: calc(100% / 1); }
		.single-feature a { color: var(--black-primary); }
		.single-feature a.readmore { color: #FFF; }

		.single-feature img { margin: 0 auto 16px !important; width: 100%; }
		.single-feature.notrounded img { border-radius: 0; }
		.single-feature.rounded img { border-radius: 100%; }

		.page-template-page-fullwidth .single-feature { flex: 0 0 calc(100% / 2); max-width: calc(100% / 2); }
		.page-template-page-fullwidth .single-feature img { border-radius: 100%; width: 75%; }

		.single-feature svg { width: auto !important; height: 40px; margin: 0 auto 16px !important; } /* FA js+svg variant */
		.single-feature i { font-size: 32px; margin: 0 auto 16px !important; } /* FA font variant */

			@media (min-width: 360px) {
				.single-feature img { width: 75%; }
			}

			@media (min-width: 500px) {
				.single-feature img { width: 50%; }
			}

			@media (min-width: 768px) {
				.single-feature { flex: 0 0 calc(100% / 3); max-width: calc(100% / 3); }

				.page-template-page-fullwidth .single-feature { flex: 0 0 calc(100% / 4); max-width: calc(100% / 4); }
			}

			@media (min-width: 992px) {
				.single-feature img { width: 75%; }
				.page-template-page-fullwidth .single-feature img { width: 75%; }
			}


	/* IFB: Twitter Feed
	------------------------------------------------------------------------------------------------------------------ */
		.twitter-feed .ctf-author-name,
		.twitter-feed .ctf-author-screenname,
		.twitter-feed .ctf-tweet-date { text-decoration: none; }

		/* 2024 Improvements */
		.ifb-section-twitterfeed.block-style-white .twitter-feed { background: #F0F0F0; padding: 32px; }

		#ctf .ctf_smash_error { opacity: 0.7; }
		#ctf .ctf_smash_error :is(strong, p) { font-size: 13px; }
		#ctf .ctf-twitter-card .ctf-tc-url { opacity: .7; color: var(--black-primary); }

		#ctf .ctf-tweet-meta { margin-top: 0 !important; }
		#ctf .ctf-author-box-link > :is(a, span) { margin-top: 0 !important; line-height: 24px !important; }
		#ctf .ctf-author-box-link .ctf-tweet-meta > a { margin-top: 0 !important; line-height: 24px !important; }

		#content #ctf .ctf-with-logo .ctf-author-box { margin-bottom: 0; }

		#ctf .ctf-item { border: none !important; border-top: 1px solid #BBB !important; padding: 16px 0 !important; }
		#ctf .ctf-tweet-items > .ctf-item:last-child { padding-bottom: 0 !important; }

		#ctf .ctf-item > .ctf-context { padding-left: 0 !important; }

		.twitter-feed > h2 { line-height: 50px; }
		.twitter-feed > h2 img { width: 50px; float: left; margin: 0 8px 0 0; }

		/* Hide Image within a Link Card, as the image is blank anyway due to GDPR compliance */
		#ctf .ctf-item .ctf-twitter-card .ctf-tc-image { display: none !important; }		


	/* IFB: Fullwidth Block Colors
	------------------------------------------------------------------------------------------------------------------ */

		/* Section Colors */
		.content-fullwidth .block-style-white		{ background: var(--white-primary); }
		.content-fullwidth .block-style-light		{ background: var(--light-primary); }
		.content-fullwidth .block-style-dark		{ background: var(--black-primary); }
		.content-fullwidth .block-style-black		{ background: #000; }
		.content-fullwidth .block-style-primary		{ background: var(--primary); }
		.content-fullwidth .block-style-secondary 	{ background: var(--secondary); }

		/* Generic Colors: Links */
		.content-fullwidth .block-style-dark a,
		.content-fullwidth .block-style-black a		{ color: var(--linkcolordark); }

		.content-fullwidth .block-style-primary a 	{ color: var(--primary-link-color); }
		.content-fullwidth .block-style-secondary a { color: var(--secondary-link-color); }

		/* Form Colors */
		.content-fullwidth .block-style-white .frm_upload_text,
		.content-fullwidth .block-style-light .frm_upload_text { background: var(--primary); color: var(--primary-text-color); }
		.content-fullwidth .block-style-white .frm_upload_text:hover,
		.content-fullwidth .block-style-light .frm_upload_text:hover { background: var(--primary-dark); }

		.content-fullwidth .block-style-primary .frm_upload_text { background: var(--secondary); color: var(--secondary-text-color); }
		.content-fullwidth .block-style-primary .frm_upload_text:hover { background: var(--secondary-dark); }

		/* Good */
		.content-fullwidth .block-style-dark .form-field > label,
		.content-fullwidth .block-style-black .form-field > label { color: var(--white-secondary); }

		/* New questionable css */
		.content-fullwidth .block-style-dark .frm_forms input[type="text"],
		.content-fullwidth .block-style-dark .frm_forms input[type="url"],
		.content-fullwidth .block-style-dark .frm_forms input[type="email"],
		.content-fullwidth .block-style-dark .frm_forms textarea,
		.content-fullwidth .block-style-dark .frm_forms select,
		.content-fullwidth .block-style-black .frm_forms input[type="text"],
		.content-fullwidth .block-style-black .frm_forms input[type="url"],
		.content-fullwidth .block-style-black .frm_forms input[type="email"],
		.content-fullwidth .block-style-black .frm_forms textarea,
		.content-fullwidth .block-style-black .frm_forms select { border-bottom: 1px solid var(--white-disabled); }

		.content-fullwidth .block-style-dark .form-field-file .frm_small_text,
		.content-fullwidth .block-style-black .form-field-file .frm_small_text { color: var(--white-disabled); }

		/* Single article changes due to different bg color */
		.single #ifb-wrapper > .ifb-section.block-style-light:first-child { padding-top: 0; }





/* 2023: Cookie Consent Bar
------------------------------------------------------------------------------------------------ */
	#moove_gdpr_cookie_info_bar { margin: 0; padding: 32px 0; }
	#moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice p { margin: 0 0 16px !important; font-size: 16px !important; }
	#moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice p:last-child { margin: 0 !important; }
