/*
Theme Name: Vaisto v3
Theme Author: Webilist Oy / Miro
Version: 3.0
*/

/**
 * Table of Contents:
 *
 * 1.0 - Resets & global
 * 	1.1 - Variables
 * 2.0 - Typography
 * 3.0 - Elements
 * 	3.1 - Hero
 *  3.2 - Tables
 *  3.3 - Footer
 *  3.4 - Latest posts
 *  3.5 - References
 *  3.6 - Turnkey section
 *  3.7 - Blog article
 *  3.8 - Share links
 *  3.9 - Text and image section
 *  3.10 - Two cols section
 *  3.11 - Banner
 *  3.12 - Cookies
 *  3.13 - Search
 *  3.14 - Fadeout
 *  3.15 - Amelia
 *. 3.16 Contact boxes, service boxes
 *  3.17 - Quote block
 *  3.18 - Key figures block
 * 4.0 - Links
 * 5.0 - Menus
 * 6.0 - Images
 */

/**
 * 1.0 Resets & global
 */

 @import url('https://fonts.googleapis.com/css2?family=Albert+Sans:ital,wght@0,100..900;1,100..900&family=Darker+Grotesque:wght@300..900&display=swap');
 @import url('https://fonts.googleapis.com/css2?family=Darker+Grotesque:wght@300..900&display=swap');
 
 /* 1.1 Variables */
 :root {
	 /* Font Family */
	 --font-primary: 'Albert Sans', sans-serif;
	 --font-titles: 'Darker Grotesque', sans-serif;
	 
	 font-size: clamp(16px, 2.5vw, 18px);
	 /* Colors */
	 --color-accent: #f5e12d;
	 --color-custom-1: #CACACA;
 }
 * {
	box-sizing: border-box;
 }
 abbr,address,audio,b,blockquote,body,caption,cite,code,dd,del,dfn,div,dl,dt,em,fieldset,figure,form,h1,h2,h3,h4,h5,h6,html,i,iframe,img,ins,kbd,label,legend,li,mark,object,ol,p,pre,q,samp,small,strong,sub,sup,table,tbody,td,tfoot,th,thead,time,tr,ul,var,video{margin:0;padding:0;border:0;outline:0;font-size:1rem;vertical-align:baseline;background:0 0}html{text-rendering:optimizeLegibility;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}strong{font-weight:700}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible;padding:0}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}legend{white-space:normal}textarea{overflow:auto;vertical-align:top}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}input[type=text],input[type=email],input[type=submit],textarea{border-radius:0;-webkit-appearance:none;box-sizing:border-box;}
 
 html, body { height: 100%; }

 /*
 html {
	 font-size: 62.5%;
 }*/
 
 body { 
	 background-color: #000;
	 color: #fff;
	 font-weight: normal;
	 font-family: var(--font-primary);
 }
 
 .clear:after {
	 content: "";
	 clear: both;
	 display: table;
 }
 
 .visually-hidden {
	 clip: rect(1px,1px,1px,1px);
	 clip-path: polygon(0px 0px, 0px 0px, 0px 0px);
	 -webkit-clip-path: polygon(0px 0px, 0px 0px, 0px 0px);
	 height: 1px;
	 overflow: hidden !important;
	 position: absolute;
	 width: 1px; 
 }
 
 /**
  * 2.0 Typography
  */
 
 h1,
 h2,
 h3,
 h4,
 h5,
 h6 {
	 color: inherit;
	 font-weight: 800;
	 font-family: var(--font-primary);
	 line-height: 1.1;
	 margin-bottom: 2.4rem;
	 text-transform: uppercase;
 }
 
 h1,
 .h1 {	
	 font-size: clamp(2.5rem, 5vw, 3rem);
	 font-weight: 600;
	 text-transform: unset;
	 margin-bottom: 4rem;
	 font-family: var(--font-titles);
 }

 
 h2 {
	 font-size: clamp(1.75rem, 4vw, 2rem);
 }
 
 h3 {
	 font-size: clamp(1.5rem, 3vw, 1.8rem);
 }
 
 h4, h5, h6 {
	font-size: clamp(1.5rem, 3vw, 1.8rem);
 }

 .has-separator-line {
	text-align: center;
 }
 @media screen and (min-width: 900px) {
	.has-separator-line {
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: center;
		column-gap: 5rem;
		text-align: unset;
	}
	.has-separator-line::after {
		content: "";
		flex: 1;
		background: #CACACA;
		height: 1px;
		margin: auto;
	}
 }

 .highlight {
	 color: var(--color-accent);
 }
 .service-tag,
 .technology-tag {
	 display: inline-block;
	 border-radius: 6px;
	 padding: .4rem .8rem;
	 font-size: 0.825rem;
	 font-weight: 500;
	 font-family: var(--font-primary);
	 text-transform: uppercase;
 }
 .service-tag.yellow {
	 background: #2C2A18;
	 color: #F5E12D;
 }
 .service-tag.grey,
 .technology-tag {
	background: #242424;
	color: #CACACA;
	border-radius: 100px;
 }
 .use-primary-font {
	font-family: var(--font-primary);
 }
 .use-title-font {
	font-family: var(--font-primary);
	text-transform: unset;
 }
 .entry-content h2,
 .entry-content h3 {
	 padding-top: 2.2rem;
 }
 
 .entry-content div > h1:first-child,
 .entry-content div > h2:first-child,
 .entry-content div > h3:first-child {
	 margin-top: 0;
	 padding-top: 0;
 }
 .margin-bottom-reset {
	margin-bottom: 0;
 }
 .margin-top-large {
	margin-top: 2rem;
 }
 .margin-bottom-large{
	margin-bottom: 2rem;
 }
 p {
	 font-size: 1.2rem;
	 line-height: 1.3;
	 margin-bottom: 2.4rem;
	 min-height: 0vw;
 }
 
 p.lead {
	 font-size: clamp(2rem, calc(2rem + ((1vw - 0.32rem) * 0.4167)), 2.4rem);
	 font-weight: bold;
	 min-height: 0vw;
 }
 
 p.description {
	 color: var(--color-custom-1);
 }
 .narrow-text {
	width: 100%;
	max-width: 760px;
 }
 .narrow-text.center {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
 }
 /*
 p.has-large-font-size {
	 font-size: 1.4rem;
	 min-height: 0vw;
 }*/
 
 b,
 strong {
	 font-weight: bold;
 }
 
 hr {
	 clear: both;
	 background-color: transparent;
	 border: 0;
	 border-top: 1px solid #ccc;
	 height: 1px;
	 margin: 60px auto 50px;
	 width: 100%;
 }
 
 blockquote {
	 border-left: 4px solid var(--color-accent);
	 margin-bottom: 3rem;
	 padding: 20px;
 }
 
 blockquote p {
	 font-size: clamp(2rem, calc(2rem + ((1vw - 0.32rem) * 0.4167)), 2.4rem);
	 font-weight: bold;
	 min-height: 0vw;
 }
 
 .entry-content ul,
 .entry-content ol {
	 font-size: clamp(1.6rem, calc(1.6rem + ((1vw - 0.32rem) * 0.4167)), 2rem);
	 line-height: 1.3;
	 margin: 0 0 2.4rem 3rem;
	 min-height: 0vw;
 }
 
 .entry-content li > ul,
 .entry-content li > ol {
	 font-size: inherit;
	 margin: 0 0 0 2.5rem;
 }
 
 .entry-content ul {
	 list-style-type: disc;
 }
 
 .entry-content .arrow-list ul {
	 list-style-type: none;
 }
 
 .entry-content .arrow-list ul li {
	 background: 0 10px url(/wp-content/uploads/2024/08/li_arrow.png) no-repeat;
	 background-size: 8px 17px;
	 padding: 5px 0 5px 23px;
	 font-weight: 700;
	 font-size: 22px;
 }
 
 .entry-content ol {
	 list-style-type: decimal;
 }
 
 p:last-child,
 ul:last-child,
 ol:last-child {
	 margin-bottom: 0;
 }
 
 .all-center,
 .mobile-center { 
	 text-align: center;
 }
	 @media screen and (min-width:900px) {
		 .mobile-center { 
			 text-align: left;
		 }
	 }	
 
 .no-margin {
	 margin-bottom: 0;
 }
 .bg-grey {
	background: #161616;
 }
 
 
 /**
  * 3.0 Elements
  */
  
 #maincontent {
	 min-height: 0vw;
	 overflow: hidden;
	 /*padding: 150px 0 70px;*/
	 width: 100%;
 }
	 /*@media screen and (min-width:768px) {
		 #maincontent { padding: 180px 0 100px; }
		 .page-id-451 #maincontent { padding: 180px 0 80px; }
		 .page-id-1097 #maincontent { padding: 180px 0 80px; }
		 }
	 @media screen and (min-width:1024px) {
		 #maincontent { padding: 220px 0 140px; }
		 .page-id-451 #maincontent { padding: 220px 0 80px; } 
		 .page-id-1097 #maincontent { padding: 220px 0 80px; } 
		 }
	 @media screen and (min-width:1280px) { 
		 #maincontent { padding: 250px 0 170px; }
		 .page-id-451 #maincontent { padding: 250px 0 80px; }
		 .page-id-1097 #maincontent { padding: 250px 0 80px; }
		 }*/
  
 .centered,
 #maincontent > .entry-content > *:not(.alignfull) {
	 margin-left: auto;
	 margin-right: auto;
	 width: calc(100% - 40px);
	 max-width: 1520px;
 }
 
 #maincontent .entry-content .no-wide {
	 max-width: 1120px;
 }
 
 #maincontent .entry-content .no-quite-full-wide {
	 max-width: 1250px;
 }
 
	 @media screen and (min-width:550px) {
		 .centered,
		 #maincontent > .entry-content > *:not(.alignfull) {
			 width: 92%;
		 }
		 
	 }
 
 .single-col,
 .narrow {
	 max-width: 900px !important;
	 max-width: 1536px !important;
	 margin: 0 auto;
 }
 
 section,
 .pad {
	 min-height: 0vw;
	 padding: 2rem 0;
 }
 
 .bg-white {
	 background: #fff;
	 color: #000;
 }
 /*
 .bg-black + .bg-black,
 .bg-white + .bg-white,
 .pad + .pad,
 .bg-black + .pad,
 .pad + .bg-black {
	 padding-top: 0;
 }*/
 
 #top-bar-container {
	 position: absolute;
	 top: 0;
	 left: 0;
	 right: 0;
	 z-index: 100;
 }
 
 #top-bar {
	 background-color: transparent;
	 box-sizing: border-box;
	 display: flex;
	 align-items: center;
	 height: 80px;	
 }
	 @media screen and (min-width: 900px) {
		 #top-bar {
			 height: 112px;
			 left: 4%;
			 right: 4%;
		 }
	 }
 
 #logo {
	 display: flex;
	 flex-grow: 2;
	 padding-right: 30px;
 }
	 @media screen and (min-width: 900px) {
		 #logo {
			 width: 225px;			
		 }
	 }
 
 .half,
 .third {
	 margin-bottom: 60px;
 }
 
 .last-col {
	 margin-bottom: 0;
 }
	 @media screen and (min-width:850px) {
		 .half {
			 float: left;
			 margin-bottom: 0;
			 width: 48.33%;
		 }
		 .half.last-col {
			 float: right;
		 }
		 .third {
			 float: left;
			 margin-bottom: 0;
			 margin-right: 3.5%;
			 width: 31%;
		 }
		 .last-col {
			 margin-right: 0;
		 }
	 }
 
 .wp-block-columns,
 .wp-block-column {
	 margin-bottom: 60px;
 }
	 @media (min-width: 782px) {
		 .wp-block-column {
			 margin-bottom: 0;
		 }
	 }
 
 .wp-block-column:last-child {
	 margin-bottom: 0;
 }
	 
 /* 3.1 Hero */
 
 #hero {
	 display: flex;
	 align-items: center;
	 height: auto;
	 padding: 5rem 0;
	 padding-bottom: 0;
	 /*min-height: clamp(30rem, calc(30rem + ((1vw - 0.32rem) * 41.6667)), 80rem);*/
	 overflow: hidden;
	 position: relative;
 }
	 /*@media screen and (min-width:768px) { #hero { margin-top: -180px; } }
	 @media screen and (min-width:1024px) { #hero { margin-top: -220px; } }
	 @media screen and (min-width:1280px) { #hero { margin-top: -250px; } }*/
 
 .hero-overlay {
	 background: linear-gradient(180deg, #000000 0%, rgba(0, 0, 0, 0.55) 24.86%, rgba(0, 0, 0, 0.2) 51.28%, rgba(0, 0, 0, 0.55) 77.23%, #000000 100%);
	 position: absolute;
	 top: 0;
	 right: 0;
	 bottom: 0;
	 left: 0;
 }
 
 #hero-content {
	 box-sizing: border-box;
	 margin: 3rem auto;
	 padding: 0 1rem;
	 text-align: center;
	 width: 100%;
	 max-width: 1200px;
	 z-index: 2;
 }
 #hero:not(.home-hero) > #hero-content {
	margin: 1rem auto;
 }
 
 @media screen and (min-width:900px) {
	#hero {
		padding: 6rem 0;
	}
	#hero:not(.home-hero) {
		padding: 5rem 0;
		padding-top: 7.5rem;
	}
 }
 span.highlight {
	 color: var(--color-accent);
 }
 .hero-underline {
	 display: inline-block;
	 position: relative;
 }
	 
 #hero h1 {
	margin-bottom: 2rem;
 }
 .hero-underline::after {
	 content: '';
	 position: absolute;
	 margin-top: 0;
	 top: 8px;
	 left: 0;
	 bottom: 0;
	 width: 100%;
	 height: 1em;  /* adjust as needed */
	 background: url('./images/hero-underline.svg') no-repeat center bottom;
	 background-size: contain;
	 pointer-events: none
 }
	   
 
 .hero-buttons {
	 display: flex;
	 flex-direction: row;
	 justify-content: center;
	 gap: 16px
 }
 
 /* 3.2 Tables */
 
 table {
	 border: 1px solid #cfcfcf;
	 border-spacing: 0;
	 font-size: 1.6rem;
	 margin-bottom: 2.4rem;
	 text-align: left;
	 width: 100%;
 }
 
 th, td {
	 border: 1px solid #cfcfcf;
	 font-size: 1.6rem;
	 padding: 8px 10px;
 }
 
 th {
	 font-weight: 700;
 }
 
 /* 3.3 Footer */
 
 #footer-container {	
	 background-color: #161616;
	 color: #8e929a;
 }
 
 #footer-content {
	 display: block;
 }
 
 #footer-logo {
	 margin-bottom: 52px;
	 width: 100px;
 }
 
 #footer-col1 {
	 margin-bottom: 50px;
 }
 
 #footer-col1 p {
	 font-size: 2.1rem;
 }
 
 #footer-social {
	 padding-top: 33px;
 }
 .footer-copyright-data {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	text-align: center;
	max-width: 1520px;
	padding: 0 1rem;
 }
 @media screen and (max-width: 600px) {
	.footer-copyright-data,
	.footer-copyright-data .centered-group {
		flex-direction: column;
	}
 }

 .centered-group {
	display: flex;
	flex-direction: row;
	justify-self: center;
	justify-content: center;
	flex-grow: 1;
 }
 .linkedin-icon {
	margin-left: auto;
 }
 #footer-social a {
	 background-color: #8e929a;
	 color: #222;
	 display: inline-block;
	 font-size: 26px;
	 margin: 0 8px 16px;
	 height: 48px;
	 line-height: 48px;
	 width: 48px;
 }
 
 #footer-social a:hover {
	 background-color: #fff;
 }
 
 #footer-content .link-button {
	 border: 3px solid #8e929a;
	 display: inline-block;
	 font-size: 2.4rem;
	 font-weight: bold;
	 margin-bottom: 16px;
	 padding: 16px 10px;
	 width: 205px;
 }
 
 #footer-content .link-button:hover {
	 background-color: #fff;
	 border-color: #fff;
	 color: #000;
 }
 
 #footer-content p.footer-address-block span {
	 font-weight: 900 !important;
	 font-size: 1.5rem;
	 text-transform: uppercase;
	 line-height: 50px;
	 color: #fff;
 }
 
	 @media screen and (min-width:900px) {
		 #footer-col1 {
			 margin-bottom: 0;
			 padding: 0;
			 width: 100%;
		 }
		 #footer-col2 {
			 margin-top: 60px;
			 order: 1;
		 }
		 #footer-col3 {
			 margin-top: 60px;
			 order: 3;
		 }
		 #footer-logo {
			 width: 158px;
			 display: block;
			 margin: 0 auto 30px auto;
		 }
		 #footer-col1 p {
			 font-size: 2.4rem;
			 letter-spacing: 0.02em;
		 }
		 #footer-content p.footer-address-block span {
			 font-size: 1.7rem;
			 letter-spacing: 0.01em;
		 }
		 #footer-content p.footer-address-block {
			 display: inline-block;
			 padding: 17px;
			 margin: 0 20px 25px 20px;
		 }
	 }
 
 /* 3.4 Latest posts */
 
 #latest-heading {
	 display: flex;
	 flex-direction: column;
	 margin-bottom: 2rem;
 }
 
 #latest-heading h2 {
	 margin: 0 10px 0 0;
 }
 
 #latest-heading p.latest-description {
	padding: 1rem 0;
	 color: var(--color-custom-1);
	 width: 100%;
	 max-width: 750px;
 }
 
 #latest-heading a {
	 color: var(--color-accent);
 }
 
 #latest-heading a:hover {
	 color: #fff;
 }
 
 #latest-content {
	 display: grid;
	 grid-template-columns: repeat(1, 1fr);
	 grid-gap: 1rem;
 }
	 @media screen and (min-width:482px) {
		 #latest-content {
			 grid-template-columns: repeat(2, 1fr);
		 }
	 }
	 @media screen and (min-width:782px) {
		#latest-content {
			grid-template-columns: repeat(3, 1fr);
		}
	 }
	 @media screen and (min-width:1280px) {
		 #latest-content {
			 grid-template-columns: repeat(4, 1fr);
		 }
	 }
 
a.post-card-link {
	display: content; }

a.post-card-link:hover .post-card {
	background: #1F1F1F;
 }

 .post-card {
	display: flex;
	flex-direction: column;
	border-radius: 16px;
	background: #161616;
	padding: 0;
	height: 100%;
 }

 .post-tag-category {
	min-height: 28.8px;
 }
 .post-card-picture {
	position: relative;
	overflow: hidden;
	border-radius: 16px 16px 0 0;
}
 .post-card-picture > .post-card-overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(180deg, rgba(22, 22, 22, 0) 0%, rgba(22, 22, 22, 0.3) 30%, #161616 100%);
	z-index: 1;
	border-radius: 16px 16px 0 0;
 }
 a.post-card-link:hover .post-card-picture > .post-card-overlay {
	border-radius: 16px 16px 0 0;
	background: linear-gradient(180deg, rgba(33, 33, 33, 0) 0%, rgba(33, 33, 33, 0.5) 30%, #1F1F1F 100%);
 }
 a.post-card-link:hover .post-card-picture img {
	transform: scale(1.05);
 }
 .post-card-picture img {
	 width: 100%;
	 height: 180px;
	 object-fit: cover;
	 border-radius: 16px 16px 0 0;
	 transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
 }
 h3.post-card-title {
	padding: 1.25rem 0;
	margin-bottom: 0;
	text-transform: unset;
	font-size: 1.25rem;
	font-weight: 600 !important;
	text-decoration: none !important;
 }
 .post-card-content {
	display: flex;
	flex-direction: column;
	padding: .725rem;
	border-radius: 0 0 16px 16px;
 }
 a.post-card-link:hover .post-card-content { background: #1F1F1F; }
 a.post-card-link:hover .post-card-tags > .service-tag.grey {
	background: #2D2D2D;
 }
 .post-card-tags {
	margin-bottom: 1.25rem;
	/*min-height: 28.8px;*/
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: .5rem;
 }
 .post-card-button,
 .service-box-button {
	margin-top: auto;
	color: #949494;

 }
 .post-card-button a,
 .service-box-button a {
	 display: block;
	 box-sizing: border-box;
	 /*width: 100%;*/
	 /*background: var(--color-accent);*/
	 font-size: 1rem;
	 font-weight: 700;
	 padding: 0;
	 /*border-radius: 8px;*/
	 /*text-align: center;*/
	 text-decoration: none !important;
 }
 .post-card-button a:hover,
 .service-box-button a:hover {
	 color: #F5E12D !important;
 }
 .entry-content a.post-card-link h3.post-card-title {
	text-decoration: none !important;
 }

 .technology-groups {
	display: flex;
	flex-direction: column;
	gap: 1rem;
 }
 @media screen and (min-width:450px) {
}
@media screen and (min-width:600px) {
}
@media screen and (min-width:768px) {
	.technology-groups {
		flex-direction: row;
		gap: 2rem;
		flex-wrap: wrap;
	}
}
@media screen and (min-width:900px) {

}
.technology-group {
	background: #161616;
	align-items: flex-start;
	border-radius: 16px;
	padding: 1rem;
	display: flex;
	flex-direction: column;
	row-gap: 1rem;
}
.technologies {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: .5rem;
}
.technology-tag {
	text-transform: unset;
}
h3.technology-group-title {
	margin: unset;
	padding: unset;
	color: #FFFFFF;
	text-transform: unset;
	font-size: 1.25rem;
}


 /* 3.5 References */

 .reference-section {
	width: 100%;
	display: flex;
	justify-content: center;
	padding: 4rem 0;
 }
 .reference-content {
	width: 100%;
	max-width: 1200px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
 }
 .reference-gallery  {
	display: flex;
	flex-direction: row;
	gap: 4rem;
 }
 @media screen and (max-width: 902px) {
	.reference-logos { display: none; }
 }
 .reference-gallery li {
	list-style: none;
 }
 .reference-gallery li img {
	height: 70px;
	width: auto;
	object-fit: contain;
 }

 /* 3.6 Single turnkey section */
@media screen and (max-width: 1000px) {
	.turnkey-box {
		position: relative;
		top: unset !important;
		right: unset !important;
		bottom: unset !important;
		left: unset !important;
	}
	.turnkey-background {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 2rem;
	 }
	 .turnkey-cover {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 2rem;
		left: 0;
		z-index: 1;
		border-radius: 16px;
	 }
	.turnkey-content {
		width: calc(100% - 2rem);
		background: linear-gradient(180deg, rgba(22, 22, 22, 0.8) 0%, #161616 100%);
		backdrop-filter: blur(5px);
		color: #242424;
		border-radius: 16px 16px 0 0;
		margin-top: 6rem;
		margin-left: auto;
		margin-right: auto;
		padding: 2rem 1rem;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		position: relative;
		z-index: 3;
	}
	.turnkey-content h3 {
		padding-top: 0;
		margin-bottom: 2rem;
		font-size: 1.2rem;
		font-weight: 800;
		text-transform: uppercase;
		color: #FFFFFF;
	}
	.turnkey-content p {
		color: #CACACA;
		font-size: 1rem;
	}
	.turnkey-box-tag {
		width: calc(100% - 2rem);
		margin: 0 auto;
		background-color: #242424;
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: center;
		column-gap: .5rem;
		border-radius: 0 0 16px 16px;
		position: relative;
		z-index: 3;
	}
	.turnkey-box-tag span {
		color: #CACACA;
		font-size: 0.725rem;
		font-weight: 500;
		text-transform: uppercase;
		padding: .825rem 0;
	}
}
@media screen and (min-width: 1000px) {
	.turnkey-section {
		margin: 4rem 0;
		width: 100%;
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.turnkey-background {
		background-image: var(--turnkey-background);
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
		background-color: #000;
		width: 80%;
		border-radius: 16px;
		aspect-ratio: 16 / 9;
		  object-fit: cover; 
	}
	.turnkey-box {
		position: absolute;
	}
	.turnkey-content {
		width: 220px;
		background: linear-gradient(180deg, rgba(22, 22, 22, 0.8) 0%, #161616 100%);
		backdrop-filter: blur(5px);
		color: #242424;
		border-radius: 16px 16px 0 0;
		padding: 1.25rem .725rem;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		position: relative;
	}
	.turnkey-content h3 {
		padding-top: 0;
		margin-bottom: 2rem;
		font-size: 1rem;
		font-weight: 800;
		text-transform: uppercase;
		color: #FFFFFF;
	}
	.turnkey-content p {
		color: #CACACA;
		font-size: 0.825rem;
	}
	.turnkey-box-tag {
		width: 220px;
		background-color: #242424;
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: center;
		column-gap: .5rem;
		border-radius: 0 0 16px 16px;
	}
	.turnkey-box-tag span {
		color: #CACACA;
		font-size: 0.725rem;
		font-weight: 500;
		text-transform: uppercase;
		padding: .825rem 0;
	}
	.turnkey-content.pointer-top::before,
	.turnkey-content.pointer-bottom::before {
		width: 2px;
		height: 32px;
	}
	.turnkey-content.pointer-left::before,
	.turnkey-content.pointer-right::before {
		width: 32px;
		height: 2px;
	}
	.turnkey-content.pointer-left::before {
		left: -32px;
	}
	.turnkey-content.pointer-left::before,
	.turnkey-content.pointer-left::after {
		left: -32px;
	}
	.turnkey-content.pointer-top::before,
	.turnkey-content.pointer-top::after {
		top: -32px;
	}
	.turnkey-content.pointer-right::before,
	.turnkey-content.pointer-right::after {
		right: -32px;
	}
	.turnkey-content.pointer-bottom::before,
	.turnkey-content.pointer-bottom::after {
		bottom: -86px;
	}
	.turnkey-content::after {
		position: absolute;
		content: "";
		width: 22px;
		height: 22px;
		border-radius: 50px;
		background: #F5E12D;
	}
	.turnkey-content::before {
		position: absolute;
		content: "";
		background: #F5E12D;
	}
}

@media screen and (min-width: 1282px) {
	.turnkey-content {
		width: 280px;
		padding: 2rem 1rem;
	}
	.turnkey-content h3 {
		font-size: 1.2rem;
	}
	.turnkey-content p {
		font-size: 1rem;
	}
	.turnkey-box-tag { width: 280px; }
	.turnkey-box-tag span {
		font-size: 0.8rem;
		padding: 1rem 0;
	}

}

 /* 3.7 Blog article */
 
 .single #hero {
	 min-height: 350px;
 }
	 @media screen and (min-width: 900px) {
		 .single #hero {
			 min-height: 450px;
		 }
	 }
 
 .single #hero h1 {
	 margin-bottom: 0;
 }
 
 #single-article {
	 padding-top: clamp(70px, calc(4.375rem + ((1vw - 3.2px) * 4.1667)), 110px);
	 min-height: 0vw;
 }
 
 #single-article p,
 #blog-sidebar p {
	 font-size: 1.2rem;
	 min-height: 0vw;
 }
 
 #blog-sidebar {
	 margin-top: 60px;
 }
 #primary-content {
	margin-bottom: 2rem;
 }
	 @media screen and (min-width: 900px) {
		 #primary-content {
			 float: left;
			 width: 71%;
		 }
		 #blog-sidebar {
			 float: right;
			 margin-top: 90px;
			 width: 24%;
		 }
	 }
 
 #sidebar-image {
	 height: auto;
	 margin-bottom: 10px;
	 width: 260px;
 }
 
 #post-metas {
	 color: var(--color-accent);
	 display: flex;
	 flex-wrap: wrap;
	 justify-content: space-between;
	 align-items: center;
	 font-style: italic;
	 margin-bottom: 4rem;
 }
 
 .date {
	 margin-bottom: 10px;
	 margin-right: 15px;
 }
 
 /* 3.8 Share links */
 
 #share-links-container {
	 display: flex;
	 align-items: center;
	 margin-bottom: 10px;
 }
 
 #share-links-container p {
	 margin-bottom: 0;
 }
 
 #share-links {
	 display: inline-block;
	 margin: 0 0 0 10px;	
	 padding: 0;
 }
 
 #share-links li {
	 display: inline-block;
	 list-style-type: none;
	 margin-right: 5px;
 }
 
 #share-links li a {
	 background: var(--color-accent);
	 box-sizing: border-box;
	 color: #000 !important;
	 font-size: 24px;
	 display: block;
	 height: 40px;
	 line-height: 40px;
	 text-align: center;
	 width: 40px;
 }
	 
 /* 3.9 Text and image section */
 
 .text-image-cols {
	 border-radius: 16px;
	 display: block;
	 position: relative;
 }
 .text-image-cols .img-col {
	display: none;
 }
 .text-image-cols .text-col {
	flex: 1;
	position: inherit;
	top: 0;
	background-image: var(--bg-cover);
	background-color: transparent;
	background-position: center;
	background-size: cover;
	border-radius: 16px;
	position: relative;
	z-index: 1;
 }
 .text-image-cols.separate {
	background: #000;
 }
 .text-col {
	 padding: 20px;
	 display: flex;
	 flex-direction: column;
	 row-gap: 1.25rem;
 }
 .text-col p,
 .text-col h2 {
	 padding-top: 0;
	 padding-bottom: 0;
	 margin-top: 0;
	 margin-bottom: 0;
 }
 .img-col {
	 margin-top: 60px;
	 height: 250px;
	 border-radius: 0 0 16px 16px;
 }
     @media screen and (max-width:900px) {
		.text-image-cols .text-col::before {
			content: '';
			background: rgba(0, 0, 0, 0.7);
			position: absolute;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
			border-radius: 16px;
			z-index: 2;
		 }
		 .text-image-cols .text-col > * {
			position: relative;
			z-index: 3;
		 }
	 }
	 @media screen and (min-width:450px) {
		 .img-col { height: 350px; }
	 }
	 @media screen and (min-width:600px) {
		 .img-col { height: 400px; }
	 }
	 @media screen and (min-width:768px) {
		 .img-col { height: 450px; }
	 }
	 @media screen and (min-width:900px) {
		 .text-image-cols {
			background: #161616;
			display: flex;
			align-items: stretch;
			justify-content: space-between;
			position: unset;
		 }
		 .text-image-cols .text-col {
			background-image: unset;
		 }
		 .text-image-cols .img-col {
			display: block;
		 }
		 .text-image-cols.separate {
			gap: 2rem;
		 }
		 .text-col {
			position: unset;
		 }
		 .img-col {
			 margin-top: 0;
			 height: inherit;
			 width: 50%;
			 position: relative;
			 top: unset;
		 }
		 .text-col.text-col-left + .img-col::before {
			content: '';
			position: absolute;
			top: 0;
			left: -50px; /* Adjust overlap */
			width: 100px; /* Width of the slanted area */
			height: 100%;
			background: #161616; /* Match left-col background */
			transform: skewX(-10deg); /* Creates the slant */
			z-index: 1;
		 }
		 .text-col.text-col-right + .img-col::before {
			content: '';
			position: absolute;
			top: 0;
			right: -50px; /* Adjust overlap */
			width: 100px; /* Width of the slanted area */
			height: 100%;
			background: #161616; /* Match left-col background */
			transform: skewX(-10deg); /* Creates the slant */
			z-index: 1;
		 }
		 .text-col {
			 display: flex;
			 flex-direction: column;
			 justify-content: center;
			 padding: 0;
			 margin: 50px; 
			 gap: 30px;
			 width: 50%;
			 position: relative;
			 z-index: 2;
		 }
		 .text-image-cols.separate > .text-col {
			margin: 0;
			padding: 50px;
			background-color: #161616;
			border-radius: 16px;
		 }
		 .text-image-cols.separate > .text-col.text-col-right + .img-col::before,
		 .text-image-cols.separate > .text-col.text-col-left + .img-col::before {
			display: none;
		 }
		 .text-col.text-col-right + .img-col {
			 border-radius: 16px 0 0 16px;
		 }
		 .text-col.text-col-left + .img-col {
			 border-radius: 0 16px 16px 0;
		 }
		 .text-image-cols.separate > .img-col {
			border-radius: 16px;
		 }
		 .reverse-width .img-col {
			 width: 38.4%;
		 }
		 .reverse-width .text-col {
			 width: 55%;
		 }
		 .text-col.text-col-right {
			 order: 2;
		 }
	 }
	 
 /* 3.10 Two cols section */
 
 .col1 {
	 margin-bottom: 60px;
 }
 .two-cols.bg-grey {
	padding: 2rem;
 }
 .bg-grey {
	border-radius: 16px;
 }
 .two-cols ul {
	margin-left: 1rem !important;
 }
 .two-cols ul li {
	margin-bottom: .5rem;
 }
		 
	 @media screen and (min-width:900px) {
		 .two-cols-container {
			 display: flex;
			 justify-content: space-between;
		 }
		 .narrow-cols .two-cols-container,
		 .narrow-cols .two-cols-container.single-col {
			max-width: 780px !important;
			margin: 0 auto;
		 }
		 .col1,
		 .col2 {
			 width: 43.4%;
		 }
		 .col1 {
			 margin-bottom: 0;
		 }
		 .second-column-wider .two-cols-container .col1 {
			 width: 36.4%;
		 }
		 .second-column-wider .two-cols-container .col2 {
			 width: 59.4%;
		 }
		 .warum-vaisto .correct-icon-germany {
			 margin-top: 34px !important;
		 }
	 }
	 
	 @media screen and (max-width:899px) {
		 .warum-vaisto .correct-icon-germany {
			 float: none !important;
			 padding: none !important;
			 margin: 0 auto 0 auto !important;
		 }
		 .second-column-wider .two-cols-container .col1 {
			 text-align: center;
		 }
	 }
	 
 /* 3.11 Banner */
 
 .banner-bg {
	position: relative;
	width: 100%;
	max-width: 1520px;
	margin: 0 auto;
	border-radius: 16px;
 }
 
 .banner-content {
	 padding-top: 110px;
	 padding-bottom: 110px;
	 position: relative;
 }
	 
 /* 3.12 Cookies */
 
 #moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme {
	 background-color: #000 !important;
	 border-top: 1px solid #333 !important;
 }
 
 #moove_gdpr_cookie_info_bar {
	 padding-top: 0 !important;
	 padding-bottom: 0 !important;
 }
 
 #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container {
	 padding-top: 70px !important;
	 padding-bottom: 70px !important;
 }
 
 #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p, 
 #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p a {
	 font-size: 1rem !important;
	 line-height: 1.3 !important;
 }
 
 #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton, 
 #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton,
 #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton, 
 #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton,
 #moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn {
	 background-color: #000 !important;
	 border: 3px solid var(--color-accent) !important;
	 box-shadow: none !important;
	 color: #fff !important;
	 font-size: 1rem !important;
	 font-weight: 700 !important;
	 line-height: 1.3 !important;
	 opacity: 1 !important;
	 padding: 12px 30px !important;
 }
 
 #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton:hover, 
 #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton:hover,
 #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton:hover, 
 #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton:hover,
 #moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn:hover {
	 background-color: var(--color-accent) !important;
	 color: #000 !important;
 }
 
 #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton, 
 #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton {
	 border: 3px solid #000 !important;
 }
 
 #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton:hover, 
 #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton:hover {
	 border-color: var(--color-accent) !important;
 }
 
 #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content {
	 height: auto !important;
	 padding: 20px 0 !important;
 }
 
 @media (max-width: 767px) {
	 #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-cookie-notice {
		 margin-bottom: 20px;
	 }
	 #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content:before {
		 display: none !important;
	 }
 }
 
 .moove-gdpr-modal-right-content .tab-title {
	 font-family: var(--font-primary) !important;
	 font-weight: bold !important;
	 text-transform: uppercase;
 }
 
 /* 3.13 Search */
 
 #icon-search {
	 display: none !important;
 }
 
 #mobile-search {
	 margin-right: 18px;
 }
	 @media screen and (min-width: 900px) {
		 #mobile-search {
			 display: none !important;
		 }
		 #icon-search {
			 display: inline-block !important;
		 }
		 #icon-search a {
			 margin: 0 18px;
			 padding: 0 !important;
		 }
	 }
	 @media screen and (min-width: 1280px) {
		 #icon-search a {
			 margin: 0 40px;
		 }
	 }
 
 #search-container {
	 display: none;
	 position: absolute;
	 top: 79px;
	 left: 0;
	 right: 0;
	 z-index: 500;
 }
	 @media screen and (min-width: 900px) {
		 #search-container {
			 top: 110px;
		 }
	 }
	 
 #search-form {
	 color: #000;
	 background: #161616;
	 border-radius: 12px;
	 position: relative;
	 width: 100%;
	 max-width: 700px;
	 padding: 6px;
 }
 
 #search-field {
	 background: transparent;
	 color: #8F8F8F;
	 border: 0;
	 font-size: 1.2rem;
	 height: 45px;
	 padding: 10px;
	 width: 100%;
 }
 
 #search-field:focus {
	 outline-style: none;
 }
 
 #search-field::-webkit-input-placeholder { color: #8F8F8F; }
 #search-field:-moz-placeholder { color: #8F8F8F; }
 #search-field::-moz-placeholder{ color: #8F8F8F; }
 #search-field:-ms-input-placeholder { color: #8F8F8F; }
 
 #search-submit {
	 background: #242424 url(images/icon-search.svg) no-repeat center;
	 background-size: 20px 20px;
	 border: 0;
	 border-radius: 8px;
	 height: 45px;
	 margin: 0;
	 padding: 0;
	 position: absolute;
	 top: 6px;
	 right: 6px;
	 width: 45px;
	 z-index: 600;
 }
 
 .search-result a {
	 text-decoration: none !important;
 }
 
 /* 3.14 Fadeout */
 
 .fadeout {
	 -webkit-mask-image: linear-gradient(to bottom, black 0%, transparent 100%);
	 mask-image: linear-gradient(to bottom, black 0%, transparent 100%);
 }
 
 /* 3.15 Amelia */
 
 #page-content .amelia-app-booking #amelia-booking-wrap .am-step-booking-catalog .am-select-date .am-select-date-title {
	 font-family: 'Roboto Condensed';
	 font-size: 22px !important;
	 font-weight: bold;
	 text-transform: uppercase;
 }
 
 #page-content .amelia-app-booking #amelia-booking-wrap .am-calendar-picker .c-header .c-title-layout .c-title-popover .c-title-anchor .c-title, 
 #page-content #am-modal.am-modal.am-in-body .am-calendar-picker .c-header .c-title-layout .c-title-popover .c-title-anchor .c-title,
 #page-content .amelia-app-booking #amelia-booking-wrap #am-step-booking .am-select-date .am-calendar-stepByStepForm-calendarDateTimeForm div, 
 #page-content .amelia-app-booking #amelia-booking-wrap .am-step-booking-catalog .am-select-date .am-calendar-stepByStepForm-calendarDateTimeForm div {
	 font-weight: bold !important;
 }
 
 #page-content .amelia-app-booking #amelia-booking-wrap .am-calendar-picker .c-day-content, 
 #page-content #am-modal.am-modal.am-in-body .am-calendar-picker .c-day-content,
 #page-content .amelia-app-booking #amelia-booking-wrap #am-step-booking .am-select-date .am-appointment-times .el-radio-button .el-radio-button__inner, 
 #page-content .amelia-app-booking #amelia-booking-wrap .am-step-booking-catalog .am-select-date .am-appointment-times .el-radio-button .el-radio-button__inner {
	 font-size: 16px !important;
	 font-weight: bold !important;
 }

 /* 3.16 Contact boxes, service boxes */
	.contact-boxes {
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: center;
		gap: 2rem;
		flex-wrap: wrap;
	}
	.contact-boxes > .contact-box {
		width: 320px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		row-gap: 1rem;
		background: #161616;
		color: #161616;
		border-radius: 16px;
		padding: 1.25rem;
		overflow: hidden;
		color: #FFFFFF;
	}
	.location-cols {
		width: 100%;
		max-width: 1024px !important;
		margin-bottom: 4rem;
		padding: 1.25rem;
		border-radius: 16px;
		background: #161616;
	}
	.contact-box-image,
	.contact-box-image img {
		width: auto;
		height: 200px;
		object-fit: contain;
	}
	h3.contact-box-title,
	h3.service-box-title {
		margin: unset;
		padding: 0 1.25rem;
		color: #FFFFFF;
		text-transform: unset;
		font-size: clamp(1.05rem, 1.4vw, 1.35rem);
	}

	@media(max-width: 481px) {
		
		h3.contact-box-title,
		h3.service-box-title {
			font-size: 1.4rem;
		}
	}
	p.contact-box-detail {
		padding: unset;
		margin: unset;
		color: #CACACA;
	}
	.service-boxes {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 2rem;
	}
	.e-invoice-section {
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}
	.e-invoice-section > .e-invoice-box {
		display: flex;
		flex-direction: row;
		align-items: center;
		border-radius: 16px;
		gap: 1.25rem;
		background: #FFFFFF;
		padding: 1rem;
	}
	.e-invoice-section > .e-invoice-box.dark-grey {
		background: #161616;
	}
	.e-invoice-section > .e-invoice-box.dark-grey p {
		color: #FFF;
		margin-bottom: unset !important;
	}
	.e-invoice-section > .e-invoice-box p {
		margin-bottom: unset !important;
	}
	.e-invoice-section > .e-invoice-box.dark-grey p span {
		color: #CACACA;
	}
	.e-invoice-section > .e-invoice-box > .invoice-box-icon,
	.e-invoice-section > .e-invoice-box > .invoice-box-icon > img {
		width: 32px !important;
		height: 32px !important;
		display: block;
	}
	.service-box-tag {
		padding: 0 1.25rem;
	}
	.e-invoice-box .box-content {
		width: 95%;
	}

	@media screen and (min-width:482px) {
		.service-boxes {
			grid-template-columns: repeat(2, 1fr);
		}
	}
	@media screen and (min-width:782px) {
	   .service-boxes {
		   grid-template-columns: repeat(3, 1fr);
	   }
	   .e-invoice-section {
			flex-direction: row;
			flex-wrap: wrap;
			width: 100%;
			max-width: 1520px;
	   }
	   .e-invoice-section > .e-invoice-box {
			flex: 1 1 calc(50% - 0.5rem);
	   }	
	}
	@media screen and (min-width:1280px) {
		.service-boxes {
			grid-template-columns: repeat(4, 1fr);
		}
	}
	.service-boxes > .service-box {
		box-sizing: border-box;
		background: #161616;
		display: flex;
		gap: 1.25rem;
		align-items: flex-start;
		flex-direction: column;
		padding-bottom: 1.125rem;
		border-radius: 16px;
	}
	.service-box-image,
	.service-box-image > img {
		width: 100%;
		height: 220px;
		object-fit: cover;
		border-radius: 16px 16px 0 0;
		position: relative;
	}
	.service-box-button { width: 100%; padding: 0 1.25rem; }
	.service-box-image-overlay {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: linear-gradient(180deg, rgba(22, 22, 22, 0.5) 0%, #161616 100%);
		border-radius: 16px 16px 0px 0px;
	}
	/* 3.17 Quote block */

	.quote-section { border-radius: 16px; padding: 2rem; }
	.quote-icon { width: 48px; height: auto; display: block; margin-bottom: 1rem;}
	.quote-text { font-style: italic; }
	.quote-author { display: flex; flex-direction: row; align-items: center; justify-content: flex-start; column-gap: 2rem; }
	.quote-author-name { font-weight: bold; font-family: var(--font-primary); font-size: 1.2rem; text-transform: unset; margin-bottom: .5rem; padding-bottom: 0; }
	.quote-author-image { width: 48px; }

	/* 3.18 Key figures block */

	.figures-content {
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		flex-wrap: no-wrap;
		padding: 2rem;
		border-radius: 16px;
	}
	.figure-box {
		display: flex;
		flex-direction: column;
		border-right: 1px solid #242424;
		padding: 1.5rem;
	}
	.figure-box:last-child {
		border-right: 0;
	}
	.figure-heading {
		height: 128px;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: flex-end;
		gap: 1.5rem;
	}
	h3.figure-heading-text {
		font-family: var(--font-titles);
		font-weight: 600;
		color: #F5E12D;
		margin-bottom: 0 !important;
		line-height: 1;
	}
	.figure-description {
		height: 114px;
		display: flex;
		margin-top: 1rem;
		justify-content: center;
		align-items: flex-start;
		text-align: center;
	}
	@media (max-width: 1431px) {
		.figures-content {
			flex-wrap: wrap;
		}
		.figure-box {
			width: 33.33%;
			flex: 1 0 33.33%;
			border-right: 0;
		}
	}
	@media(max-width: 1081px) {
		.figure-box {
			width: 50%;
			flex: 1 0 50%;
		}
	}
	@media(max-width: 681px) {
		.figure-box {
			width: 100%;
			flex: 1 0 100%;
		}
	}
 /**
  * 4.0 Links
  */
 
 a {
	 background-color: transparent;
	 color: inherit;
	 font-weight: inherit;
	 text-decoration: none;
	 transition: all 0.2s ease;
 }
 
 .entry-content a {
	 color: inherit;
	 text-decoration: underline;
 }
 
 .entry-content a:hover {
	 color: var(--color-accent);
 }
 .entry-content a.post-card-link {
	text-decoration: none;
 }
 .entry-content a.post-card-link:hover {
	color: inherit;
 }
 
 .entry-content .button-link {
	 isolation: isolate;
	 padding-left: 8px;
 }
 .entry-content .button-link a {
	 border: 0;
	 cursor: pointer;
	 color: #161616;
	 background: transparent;
	 display: inline-block;
	 font-size: 1rem;
	 font-weight: bold;
	 line-height: 1;
	 margin-top: 1rem;
	 padding: 16px 30px;
	 text-align: center;
	 text-decoration: none;
	 position: relative;
	 z-index: 1;
 }
 .entry-content .button-link a::after {
	 color: #161616;
	 content:'';
	 display: block;
	 position: absolute;
	 top: 0;
	 right: 0;
	 bottom: 0;
	 left: 0;
	 transform: skewX(-10deg);
	 box-shadow: 0 0 5px 0 rgba(0,0,0,0.25);
	 background: #F5E12D;
	 color: #161616;
	 z-index: -1;
 }
 
 .entry-content .bg-white .button-link a {
	 color: #000;
 }
 
 .entry-content .button-link a:hover {
	 background-color: transparent;
	 color: #000;
 }
 .entry-content .button-link a:hover::after {
	 background: white;
	 /*background: #decc29;*/
 }
 
 .text-col .button-link a {
	 margin-top: 30px;
 }
 
 #skiptomaincontent a {
	 padding: 6px;
	 position: absolute;
	 top: -40px;
	 left: 0;
	 color: #000;
	 background: var(--color-accent);
	 -webkit-transition: top 1s ease-out;
	 transition: top 1s ease-out;
	 z-index: 100;
 }
 
 #skiptomaincontent a:focus {
	 position: absolute;
	 left: 0;
	 top: 0;
	 -webkit-transition: top .1s ease-in;
	 transition: top .1s ease-in;
 }
 
 
 /**
  * 5.0 Menus
  */
 
  #mobile-menu-toggle {
	z-index: 1500;
	}

	@media screen and (min-width: 900px) {
		#mobile-menu-toggle {
			display: none !important;
		}
	}
 
 .tcon {
	 -webkit-appearance: none;
	 -moz-appearance: none;
	 appearance: none;
	 background: transparent;
	 border: none;
	 cursor: pointer;
	 display: flex;
	 justify-content: center;
	 align-items: center;
	 height: 32px;
	 transition: 0.2s;
	 -webkit-user-select: none;
	 -moz-user-select: none;
	 -ms-user-select: none;
	 user-select: none;
	 width: auto;
	 -webkit-tap-highlight-color: transparent;
	 -webkit-tap-highlight-color: transparent;
 }
 
 .tcon > * { display: block; }
 .tcon:hover { outline: none; }
 .tcon::-moz-focus-inner { border: 0; }
 
 .tcon-menu__lines {
	 background: #fff;
	 display: inline-block;
	 height: 3.5px;
	 width: 28px;
	 transition: 0.2s;
	 position: relative;
 }
 
 .tcon-menu__lines::before,
 .tcon-menu__lines::after {
	 background: #fff;
	 content: '';
	 display: inline-block;
	 height: 3.5px;
	 position: absolute;
	 transition: 0.2s;
	 -webkit-transform-origin: 2px center;
	 transform-origin: 2px center;
	 width: 28px;
	 width: 100%;
 }
 
 .tcon-menu__lines::before {
	 top: 10px;
	 left: 0;
 }
 
 .tcon-menu__lines::after {
	 top: -10px;
	 left: 0;
 }
 
 .tcon-transform .tcon-menu__lines::before,
 .tcon-transform .tcon-menu__lines::after {
	 left: 0;	
 }
 
 .tcon-transform .tcon-menu__lines {
	 -webkit-transform: scale3d(0.8, 0.8, 0.8);
	 transform: scale3d(0.8, 0.8, 0.8);
 }
 
 .tcon-menu--xcross {
	 width: auto;
 }
 
 .tcon-menu--xcross.tcon-transform .tcon-menu__lines {
	 background: transparent !important;
 }
 
 .tcon-menu--xcross.tcon-transform .tcon-menu__lines::before,
 .tcon-menu--xcross.tcon-transform .tcon-menu__lines::after {
	 -webkit-transform-origin: 50% 50%;
	 transform-origin: 50% 50%;
	 top: 0;
	 width: 32px;
 }
 
 .tcon-menu--xcross.tcon-transform .tcon-menu__lines::before {
	 -webkit-transform: rotate3d(0, 0, 1, 45deg);
	 transform: rotate3d(0, 0, 1, 45deg);
 }
 
 .tcon-menu--xcross.tcon-transform .tcon-menu__lines::after {
	 -webkit-transform: rotate3d(0, 0, 1, -45deg);
	 transform: rotate3d(0, 0, 1, -45deg);
 }
 
 .tcon-visuallyhidden {
	 border: 0;
	 clip: rect(0 0 0 0);
	 height: 1px;
	 margin: -1px;
	 overflow: hidden;
	 padding: 0;
	 position: absolute;
	 width: 1px;
 }
 
 .tcon-visuallyhidden:active,
 .tcon-visuallyhidden:focus {
	 clip: auto;
	 height: auto;
	 margin: 0;
	 overflow: visible;
	 position: static;
	 width: auto;
 }
 
 /* Menu */
 
 #main-menu,
 #mobile-menu {
	 background-color: #000;
	 box-shadow: 8px 8px 20px rgb(0 0 0 / 60%);
	 display: none;
	 padding: 80px 0;
	 position: absolute;
	 top: 0;
	 left: 0;
	 right: 0;
	 width: 100%;
	 z-index: 999;
 } 
 #main-menu > ul,
 #mobile-menu > ul {
	 margin: 0 auto;
	 max-width: 320px;
	 padding: 0 40px;
 }
	 
 #main-menu li,
 #mobile-menu li {
	 display: block;
 }
 
 #main-menu a,
 #mobile-menu a {
	 color: #fff;
	 display: inline-block;
	 font-size: 1.15rem;
	 font-weight: 500;
	 line-height: 1.2;
	 padding: 18px 12px 0;
 }
 
 #main-menu li.nav-yellow a,
 #mobile-menu li.nav-yellow a {
	 color: #f5e12d;
 }
 
 #main-menu a:hover,
 #main-menu .current-menu-item > a,
 #main-menu .current-menu-ancestor > a,
 #main-menu .current-menu-ancestor.menu-item-has-children > a,
 #main-menu .current_page_parent > a,
 #mobile-menu a:hover,
 #mobile-menu .current-menu-item > a,
 #mobile-menu .current-menu-ancestor > a,
 #mobile-menu .current-menu-ancestor.menu-item-has-children > a,
 #mobile-menu .current_page_parent > a {
	 color: var(--color-accent);
 }
 
 #main-menu i.fa-solid,
 #mobile-menu i.fa-solid {
	 color: #fff;
	 font-size: 90%;
	 padding-left: 2px;
 }
 
 .sub-menu {
	 display: none;
	 padding: 6px 0 10px 10px;
 }
	 
 #main-menu .sub-menu a,
 #mobile-menu .sub-menu a {
	 display: inline-block;
	 line-height: 1.2;
 }
 
 #menu-languages {
	 padding-left: 12px;
 }
		 
 #main-menu #menu-languages a,
 #mobile-menu #menu-languages a {
	 padding-left: 0 !important;
	 padding-right: 0 !important;
	 text-transform: uppercase;
	 font-size: 1rem;
 }
 
 #main-menu .current-language,
 #mobile-menu .current-language {
	 font-weight: bold;
 }
 
	 @media screen and (min-width: 900px) {
		#mobile-menu { display: none; }
		#main-menu {
			 background-color: transparent;
			 box-shadow: none;
			 display: flex;
			 align-items: center;
			 justify-content: space-between;
			 height: auto;
			 overflow-y: visible;
			 padding: 0;
			 position: static;
		 }
		 #main-menu > ul {
			 display: inline-block;
			 margin: 0;
			 max-width: 100%;
			 padding: 0;
		 }
		 #top-menu {
			 margin: 0 auto !important;
		 }
		 #main-menu li {
			 display: inline-block;
		 }
		 #main-menu li.menu-item-has-children {
			 position: relative;
		 }
		 #main-menu a {
			 line-height: 1;
		 }
		 #main-menu #top-menu a {
			 margin: 0 9px;
			 padding: 24px 0;
		 }
		 #main-menu #secondary-menu a {
			 padding: 24px 0;
		 }
		 #main-menu > #top-menu > li.menu-item-has-children:hover > .sub-menu {
		     display: block;
		 }
		 #main-menu .sub-menu {
			 background-color: #242424;
			 border-radius: 4px;
			 box-sizing: border-box;
			 display: none;
			 margin: 0;
			 padding: 0;
			 position: absolute;
			 text-align: left;
			 width: auto;
			 z-index: 2000;
		 }
		 #main-menu .sub-menu li {
			 display: block;
			 min-width: 150px;
			 white-space: nowrap;
		 }
		 #main-menu #top-menu .sub-menu a {
			display: block;
			width: 100%;
			 color: #CACACA;
			 margin: 0;
			 padding: .825rem 1rem;
			 text-shadow: none;
		 }
		 #main-menu .sub-menu a:hover {
			background: #161616;
		 }
		 #main-menu .sub-menu li:first-child a:hover {
			border-radius: 4px 4px 0 0;
		}
		
		#main-menu .sub-menu li:last-child a:hover {
			border-radius: 0 0 4px 4px;
		}
		 #menu-languages {
			 padding-left: 0;
		 }
	 }
	 /*@media screen and (min-width: 1024px) {
		 #main-menu a {
			 font-size: 1rem;
		 }
	 }*/
	 @media screen and (min-width: 1280px) {
		 #main-menu #top-menu a {
			 margin: 0 20px;
		 }
	 }
 
 /**
  * 6.0 Images
  */
 
 img {
	 -ms-interpolation-mode: bicubic;
	 border: 0;
	 height: auto;
	 max-width: 100%;
	 vertical-align: middle;
 }
 
 embed,
 iframe,
 object,
 video,
 .entry-content img,
 .wp-caption {
	 max-width: 100%;
 }
 
 .aligncenter,
 .alignleft,
 .alignright {
	 display: block;
	 padding-top: 6px;
 }
 
 .alignnone {
	 margin-bottom: 10px;
	 padding-top: 6px;
 }
 
 .aligncenter {
	 margin: 0 auto 20px;
 }
 
 .alignleft,
 .alignright  {
	 margin: 10px 0 20px 0;
 }
	 @media screen and (min-width: 600px) {
		 .alignleft { 
			 float: left;
			 margin: 10px 40px 20px 0;
		 }
		 .alignright {
			 float: right;
			 margin: 10px 0 20px 40px;
		 }
	 }
 
 .wp-caption-text {
	 font-size: 1em !important;
	 font-style: italic;
	 margin-top: 10px;
 }
 
 /* Videos */
 
 .embed-responsive {
   position: relative;
   display: block;
   height: 0;
   padding: 0;
   overflow: hidden;
 }
 
 .embed-responsive .embed-responsive-item,
 .embed-responsive iframe {
   position: absolute;
   top: 0;
   bottom: 0;
   left: 0;
   width: 100%;
   height: 100%;
   border: 0;
 }
 
 .embed-responsive-16by9 { padding-bottom: 56.25%; }
 
 /* Full align */
 
 .alignfull {
	 width: 100%;
 }
 
 /* Active Language color */
 
 #menu-languages .current-language {
	 color: rgb(245, 225, 45);
 }