/**
 * Theme Name:      Divi Child Theme
 * Theme URI:       https://www.elegantthemes.com/gallery/divi/
 * Description:     A Divi child theme for adesso business consulting
 * Author:          Oktober Kommunikationsdesign
 * Author URI:      https://www.oktober.de
 * Template:        Divi
 * Version:         1.0.0
 * Text Domain:     divi-child-theme
 * License:         GPL2
 * License URI:     https://www.gnu.org/licenses/gpl-2.0.html
 */
  
 
/* ---------------------- Theme customization starts here ---------------------- */



/* --- font styles --- */

/* Klavika regular */
@font-face {
	font-family: 'KlavikaWebBasicRegular';
	font-style: normal;
	font-weight: 400;
	src: url('fonts/KlavikaWebBasicRegular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
	font-display: swap;
}

/* Klavika bold */
@font-face {
	font-family: 'KlavikaWebBasicBold';
	font-style: normal;
	font-weight: 700;
	src: url('fonts/KlavikaWebBasicBold.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
	font-display: swap;
}

/* Klavika condensed bold */
@font-face {
	font-family: 'KlavikaWebBoldCond';
	font-style: normal;
	font-weight: 700;
	src: url('fonts/KlavikaWebBoldCond.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
	font-display: swap;
}

p, li, ul,
.captiontext p {
	font-family: 'KlavikaWebBasicRegular', Helvetica, Arial, sans-serif;
	font-weight: 400;
}
p b, p strong, li b, li strong, ul b, ul strong {
	font-family: 'KlavikaWebBasicBold', Helvetica, Arial, sans-serif;
	font-weight: 700;
}
ul, li {
	line-height: 130%;
	margin-bottom: 0.25rem;
}
ul li::marker {
	color: #006ec7;
}
.et_pb_bg_layout_dark ul li::marker {
	color: rgba(255,255,255, 0.65);
}
.testimonial-module .et_pb_testimonial_author,
.topline-text p,
.slidetopline p,
.subtext p {
	font-family: 'KlavikaWebBasicBold', Helvetica, Arial, sans-serif;
	font-weight: 700;
}
h1, h2, h3, h4, h5, h6 {
	font-family: 'KlavikaWebBoldCond', Helvetica, Arial, sans-serif !important;
	font-weight: 700;
	text-transform: uppercase;
	text-wrap: balance;
}
.slideheadline h1,
.slideheadline h2 {
	color: #fff;
}
.captiontext p {
	font-family: 'KlavikaWebBasicRegular', Helvetica, Arial, sans-serif;
	font-weight: 400;
	line-height: 130%;
}

/* blockquote styles */
blockquote::before {
    content: '';
	display: inline-block;
	background-image: url('https://www.adesso-bc.com/wp-content/uploads/2025/03/quote.svg');
	filter: invert(22%) sepia(55%) saturate(7411%) hue-rotate(195deg) brightness(100%) contrast(101%);
}
.et_pb_bg_layout_dark blockquote::before {
	filter: invert(100%) sepia(23%) saturate(0%) hue-rotate(51deg) brightness(107%) contrast(101%) opacity(50%);
}
@media only screen and (min-width: 1281px) {
	blockquote p {
		font-size: 2.5rem;
		padding-bottom: 32px !important;
		padding-left: 2rem;
		margin-top: -0.5rem;
	}
	blockquote::before {
    	background-size: 32px 32px;
		width: 32px;
		height: 32px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	blockquote p {
		font-size: 2.0rem;
		padding-bottom: 24px !important;
		padding-left: 1.5rem;
		margin-top: -0.5rem;
	}
	blockquote::before {
    	background-size: 24px 24px;
		width: 24px;
		height: 24px;
	}
}
@media only screen and (max-width: 639px) {
	blockquote p {
		font-size: 1.5rem;
		padding-bottom: 20px !important;
		padding-left: 1.25rem;
		margin-top: -0.5rem;
	}
	blockquote::before {
    	background-size: 20px 20px;
		width: 20px;
		height: 20px;
	}
}
blockquote p {
	line-height: 120%;
}
blockquote p {
	color: #006ec7;
}
blockquote {
	border: none;
	padding-left: 0;
	
}
.et_pb_bg_layout_dark blockquote p {
	color: rgba(255,255,255, 0.65);
}

/* custom text sizes */
@media only screen and (min-width: 1281px) {
	.slideheadline h2,
	.sectionheading h2.et_pb_module_heading {
		font-size: 5rem !important; /* h2›h1-size */
	}
	.subtext p,
	.captiontext p {
		font-size: 1.25rem !important;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.slideheadline h2,
	.sectionheading h2.et_pb_module_heading {
		font-size: 4rem !important; /* h2›h1-size */
	}
	.subtext p,
	.captiontext p {
		font-size: 1.125rem !important;
	}
}
@media only screen and (max-width: 639px) {
	.slideheadline h2,
	.sectionheading h2.et_pb_module_heading {
		font-size: 2.5rem !important; /* h2›h1-size */
	}
	.subtext p,
	.captiontext p {
		font-size: 1rem !important;
	}
}
@media only screen and (min-width: 1281px) {
	.smalltext p,
	.et-fb-root-ancestor .smalltext p,
	.smalltext ul,
	.et-fb-root-ancestor .smalltext ul,
	.smalltext li,
	.et-fb-root-ancestor .smalltext li,
	.teasercolumns-textcol p {
  		font-size: 1.5rem !important; /* small text size for teaser column text */
		line-height: 130%;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.smalltext p,
	.et-fb-root-ancestor .smalltext p,
	.smalltext ul,
	.et-fb-root-ancestor .smalltext ul,
	.smalltext li,
	.et-fb-root-ancestor .smalltext li {
  		font-size: 1.125rem !important; /* small text size for column text */
		line-height: 130%;
	}
	.smalltext h3 {
		font-size: 2.5rem !important;
	}
}

/* text sizes for imprint and privacy pages */
@media only screen and (min-width: 1281px) {
	.legaltext p {
		font-size: 1.5rem !important;
		line-height: 130%;
    	padding-bottom: 0.75rem !important;
    }
    .legaltext li {
    	font-size: 1.5rem !important;
    	line-height: 130%;
    	margin-bottom: 0 !important;
    	padding-bottom: 0 !important;
    }
    .legaltext h1,
    .legaltext h2 {
    	font-size: 3rem !important;
    	margin-top: 3rem;
    	margin-bottom: 1rem;
    }
    .legaltext h3 {
    	font-size: 2.0rem !important;
    	margin-top: 2.0rem;
    }
    .legaltext h4,
    .legaltext h5,
    .legaltext h5 {
    	font-size: 1.5rem !important;
    }
}
@media only screen and (max-width: 1280px) {
	.legaltext p {
		font-size: 1.125rem !important;
		line-height: 130%;
    	padding-bottom: 0.625rem !important;
    }
	
    .legaltext li {
    	font-size: 1.125rem !important;
    	line-height: 130%;
    	margin-bottom: 0 !important;
    	padding-bottom: 0 !important;
    }
    .legaltext h1,
    .legaltext h2 {
    	font-size: 2.25rem !important;
    	margin-top: 2.25rem;
    	margin-bottom: 0.75rem;
    }
    .legaltext h3 {
    	font-size: 1.5rem !important;
    	margin-top: 1.5rem;
    }
    .legaltext h4,
    .legaltext h5,
    .legaltext h5 {
    	font-size: 1.125rem !important;
    }
}

/* counter module text styles */
.counter-module h3 {
	font-family: 'KlavikaWebBasicBold', Helvetica, Arial, sans-serif !important;
	font-weight: 700;
	text-transform: none;
}
@media only screen and (min-width: 1281px) {
	.counter-module p {
		font-size: 1.125rem;
	}
	.counter-module h3 {
		font-size: 1.125rem !important;
	}
	.percent p {
		font-size: 5rem !important;
	}
	.counter-module .percent {
		margin-bottom: 8px !important;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.counter-module p {
		font-size: 1rem;
	}
	.counter-module h3 {
		font-size: 1rem !important;
	}
	.percent p {
		font-size: 4rem !important;
	}
	.counter-module .percent {
		margin-bottom: 0 !important;
	}
}
@media only screen and (max-width: 639px) {
	.counter-module p {
		font-size: 1rem;
	}
	.counter-module h3 {
		font-size: 1rem !important;
	}
	.percent p {
		font-size: 4rem !important;
	}
	.counter-module .percent {
		margin-bottom: 0 !important;
	}
}

/* news module */
.news-module h3 {
	font-family: 'KlavikaWebBasicBold', Helvetica, Arial, sans-serif !important;
	text-transform: none !important;
	line-height: 120%;
	padding-bottom: 0;
	margin-bottom: 0;
}
.news-module a.et_pb_button {
	font-family: 'KlavikaWebBasicBold', Helvetica, Arial, sans-serif !important;
	font-weight: 700;
}
.news-module p em {
	font-style: normal;
}

@media only screen and (min-width: 1281px) {
	.news-module h3 {
		font-size: 2.5rem;
	}
	.news-module p em {
		font-size: 1.125rem;
	}
	.news-module .et_pb_promo_button.et_pb_button::before {
		margin-left: -32px!important;
	}
	.news-module .et_pb_button_wrapper {
		margin-left: -4px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.news-module h3 {
		font-size: 2.0rem;
	}
	.news-module p em {
		font-size: 1.0rem;
	}
	.news-module .et_pb_promo_button.et_pb_button::before {
		margin-left: -30px!important;
	}
	.news-module .et_pb_button_wrapper {
		margin-left: -2px;
	}
}
@media only screen and (max-width: 639px) {
	.news-module h3 {
		font-size: 1.5rem;
	}
	.news-module p em {
		font-size: 1rem;
	}
	.news-module .et_pb_promo_button.et_pb_button::before {
		margin-left: -28px!important;
	}
	.news-module .et_pb_button_wrapper {
		margin-left: 0px;
	}
}

.news-module p {
	padding-bottom: 0.5rem;
}
.news-module .et_pb_promo_description {
	padding-bottom: 8px;
}

/* testimonial module: text sizes */
@media only screen and (min-width: 1281px) {
	.testimonial-module .et_pb_testimonial_content {
		font-size: 2.5rem;
	}
	.testimonial-module .et_pb_testimonial_author,
	.testimonial-module .et_pb_testimonial_position {
		font-size: 1.25rem !important;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.testimonial-module .et_pb_testimonial_content {
		font-size: 2.0rem;
	}
	.testimonial-module .et_pb_testimonial_author,
	.testimonial-module .et_pb_testimonial_position {
		font-size: 1.125rem !important;
	}
}
@media only screen and (max-width: 639px) {
	.testimonial-module .et_pb_testimonial_content {
		font-size: 1.5rem;
	}
	.testimonial-module .et_pb_testimonial_author,
	.testimonial-module .et_pb_testimonial_position {
		font-size: 1rem !important;
	}
}
.testimonial-module .et_pb_testimonial_content {
	line-height: 120%!important;
}

/* map type */
.map-popup-header h2 {
	font-family: 'KlavikaWebBoldCond', Helvetica, Arial, sans-serif !important;
	font-weight: 700;
	text-transform: uppercase!important;
	color: #006EC7!important;
}
.map-popup-body p {
	font-family: 'KlavikaWebBasicRegular', Helvetica, Arial, sans-serif !important;
	font-weight: 400;
}
button.map-popup-footer-button {
	font-family: 'KlavikaWebBasicBold', Helvetica, Arial, sans-serif !important;
	font-weight: 700;
}

/* links */
a {
	text-decoration: underline;
	text-decoration-style: dotted;
	text-decoration-thickness: 5%;
}
a:hover {
	text-decoration: underline;
	text-decoration-style: solid;
	text-decoration-thickness: 3%;
	color: #00559a;
}
.et_pb_bg_layout_dark a {
	color: #fff;
}

/* links & white buttons */
.et_pb_bg_layout_dark a:hover {
	filter: opacity(85%) brightness(90%);
}

/* external links */
.external-link > a:after {
	content: '';
	display: inline-block;
	background-image: url('https://www.adesso-bc.com/wp-content/uploads/2025/02/arrow-up-right-from-square-solid.svg');
	background-size: 20px 20px;
	width: 20px;
	height: 20px;
    margin-left: 10px;
	filter: invert(100%) sepia(23%) saturate(0%) hue-rotate(51deg) brightness(107%) contrast(101%);
    transition: all .3s ease;
}
.external-link > a:hover:after {
	filter: invert(100%) sepia(23%) saturate(0%) hue-rotate(51deg) brightness(107%) contrast(101%) opacity(50%);
}

/* buttons */
a.et_pb_button {
	text-decoration: none;
}
.et_pb_button_module_wrapper a:hover {
	filter: opacity(85%) brightness(90%);
}
.et_pb_button:hover,
.et_pb_button.et_pb_bg_layout_dark:hover {
	filter: brightness(0.85);
}

/* DM ACF item Buttons */
.slidebutton .dmach-acf-item-content,
.slidebutton-ext .dmach-acf-item-content {
	width: auto;
}
.slidebutton a:hover,
.slidebutton-ext a:hover {
	filter: opacity(85%) brightness(90%);
}

/* slider: dot sizes */
.slick-dots li.slick-active button,
.slick-dots li button {
	width: 8px !important;
	height: 8px !important;
	border-radius: 8px !important;
}
.slick-dots li button {
	padding: 0 !important;
}


/* --- gradients & background colors --- */

/* define colors & gradients */

.testimonial-module,
.colorbutton,
.colorblurb,
.et_pb_button {
	--mint: #28DCAA;
	--peach: #FF9868;
	--vio: #461EBE;
	--pink: #F566BA;
	--green: #76C800;
	--lemon: #F0C400;
}

.iconimage,
.blurbicon {
	--mint: invert(69%) sepia(74%) saturate(434%) hue-rotate(107deg) brightness(91%) contrast(94%);
	--peach: invert(62%) sepia(65%) saturate(515%) hue-rotate(325deg) brightness(104%) contrast(101%);
	--vio: invert(18%) sepia(78%) saturate(5897%) hue-rotate(255deg) brightness(74%) contrast(104%);
	--pink: invert(60%) sepia(56%) saturate(2403%) hue-rotate(291deg) brightness(100%) contrast(93%);
	--green: invert(69%) sepia(37%) saturate(5523%) hue-rotate(46deg) brightness(105%) contrast(102%);
	--lemon: invert(72%) sepia(92%) saturate(1751%) hue-rotate(7deg) brightness(102%) contrast(102%);
}
.iconimage-wht,
.blurbicon-wht {
	--white: invert(100%) sepia(23%) saturate(0%) hue-rotate(51deg) brightness(107%) contrast(101%);
}
.gradient1 {
	--mint: radial-gradient(133.06% 100% at 100% 0%, #28DCAA 0%, rgba(40, 220, 170, 0.00) 100%), #006EC7;
	--peach: radial-gradient(133.06% 100% at 100% 0%, #FF9868 0%, rgba(255, 104, 137, 0.00) 100%), #006EC7;
	--vio: radial-gradient(133.06% 100% at 100% 0%, #461EBE 0%, rgba(70, 30, 190, 0.00) 100%), #006EC7;
	--pink: radial-gradient(133.06% 100% at 100% 0%, #F566BA 0%, rgba(245, 102, 186, 0.00) 100%), #006EC7;
	--green: radial-gradient(133.06% 100% at 100% 0%, #76C800 0%, rgba(118, 200, 0, 0.00) 100%), #006EC7;
	--lemon: radial-gradient(133.06% 100% at 100% 0%, #F0C400 0%, rgba(240, 196, 0, 0.00) 100%), #006EC7;
}
.gradient2 {
	--mint: radial-gradient(150% 100% at bottom center, #28DCAA 0%, rgba(40, 220, 170, 0.00) 100%), #006EC7;
	--peach: radial-gradient(150% 100% at bottom center, #FF9868 0%, rgba(255, 104, 137, 0.00) 100%), #006EC7;
	--vio: radial-gradient(150% 100% at bottom center, #461EBE 0%, rgba(70, 30, 190, 0.00) 100%), #006EC7;
	--pink: radial-gradient(150% 100% at bottom center, #F566BA 0%, rgba(245, 102, 186, 0.00) 100%), #006EC7;
	--green: radial-gradient(150% 100% at bottom center, #76C800 0%, rgba(118, 200, 0, 0.00) 100%), #006EC7;
	--lemon: radial-gradient(150% 100% at bottom center, #F0C400 0%, rgba(240, 196, 0, 0.00) 100%), #006EC7;
}
.gradient3 {
	--mint: radial-gradient(150% 100% at top center, #28DCAA 0%, rgba(40, 220, 170, 0.00) 100%), #006EC7;
	--peach: radial-gradient(150% 100% at top center, #FF9868 0%, rgba(255, 104, 137, 0.00) 100%), #006EC7;
	--vio: radial-gradient(150% 100% at top center, #461EBE 0%, rgba(70, 30, 190, 0.00) 80%), #006EC7;
	--pink: radial-gradient(150% 100% at top center, #F566BA 0%, rgba(245, 102, 186, 0.00) 100%), #006EC7;
	--green: radial-gradient(150% 100% at top center, #76C800 0%, rgba(118, 200, 0, 0.00) 100%), #006EC7;
	--lemon: radial-gradient(150% 100% at top center, #F0C400 0%, rgba(240, 196, 0, 0.00) 100%), #006EC7;
}
.gradient4 {
	--mint: radial-gradient(165% 100% at bottom left, #28DCAA 0%, rgba(40, 220, 170, 0.00) 100%), #006EC7;
	--peach: radial-gradient(165% 100% at bottom left, #FF9868 0%, rgba(255, 104, 137, 0.00) 100%), #006EC7;
	--vio: radial-gradient(165% 100% at bottom left, #461EBE 0%, rgba(70, 30, 190, 0.00) 100%), #006EC7;
	--pink: radial-gradient(165% 100% at bottom left, #F566BA 0%, rgba(245, 102, 186, 0.00) 100%), #006EC7;
	--green: radial-gradient(165% 100% at bottom left, #76C800 0%, rgba(118, 200, 0, 0.00) 100%), #006EC7;
	--lemon: radial-gradient(165% 100% at bottom left, #F0C400 0%, rgba(240, 196, 0, 0.00) 100%), #006EC7;
}
.gradientoverlay {
	--mint: linear-gradient(218deg, rgba(40, 220, 170, 0.00) 50.43%, rgba(40, 220, 170, 0.80) 100%);
	--peach: linear-gradient(218deg, rgba(255, 152, 104, 0.00) 50.43%, rgba(255, 152, 104, 0.80) 100%);
	--vio: linear-gradient(218deg, rgba(70, 30, 190, 0.00) 50.43%, rgba(70, 30, 190, 0.80) 100%);
	--pink: linear-gradient(218deg, rgba(245, 102, 186, 0.00) 50.43%, rgba(245, 102, 186, 0.80) 100%);
	--green: linear-gradient(218deg, rgba(118, 200, 0, 0.00) 50.43%, rgba(118, 200, 0, 0.80) 100%);
	--lemon: linear-gradient(218deg, rgba(240, 196, 0, 0.00) 50.43%, rgba(240, 196, 0, 0.80) 100%);
}


/* --- apply colors & gradients --- */

/* icons: filter overlay */
.iconimage.mint,
.blurbicon.mint .et_pb_main_blurb_image {
	filter: var(--mint);
}
.iconimage.peach,
.blurbicon.peach .et_pb_main_blurb_image {
	filter: var(--peach);
}
.iconimage.vio,
.blurbicon.vio .et_pb_main_blurb_image {
	filter: var(--vio);
}
.iconimage.pink,
.blurbicon.pink .et_pb_main_blurb_image {
	filter: var(--pink);
}
.iconimage.green,
.blurbicon.green .et_pb_main_blurb_image {
	filter: var(--green);
}
.iconimage.lemon,
.blurbicon.lemon .et_pb_main_blurb_image {
	filter: var(--lemon);
}
.iconimage-wht {
	filter: var(--white);
}

/* blurb icons */
.blurbicon-wht .et_pb_main_blurb_image {
	filter: var(--white);
}

/* background gradient overlays (page modules) */
.mint.gradient1,
.mint.gradient2,
.mint.gradient3,
.mint.gradient4,
.mint.gradientoverlay:before {
	background: var(--mint);
}
.peach.gradient1,
.peach.gradient2,
.peach.gradient3,
.peach.gradient4,
.peach.gradientoverlay:before {
	background: var(--peach);
}
.vio.gradient1,
.vio.gradient2,
.vio.gradient3,
.vio.gradient4,
.vio.gradientoverlay:before {
	background: var(--vio);
}
.pink.gradient1,
.pink.gradient2,
.pink.gradient3,
.pink.gradient4,
.pink.gradientoverlay:before {
	background: var(--pink);
}
.green.gradient1,
.green.gradient2,
.green.gradient3,
.green.gradient4,
.green.gradientoverlay:before {
	background: var(--green);
}
.lemon.gradient1,
.lemon.gradient2,
.lemon.gradient3,
.lemon.gradient4,
.lemon.gradientoverlay:before {
	background: var(--lemon);
}

/* gradient overlay colors (slides) */
.slideoverlay-peach .dmach-acf-item-content,
.slideoverlay-mint .dmach-acf-item-content,
.slideoverlay-vio .dmach-acf-item-content,
.slideoverlay-pink .dmach-acf-item-content,
.slideoverlay-green .dmach-acf-item-content,
.slideoverlay-lemon .dmach-acf-item-content {
	mix-blend-mode: multiply;
}
.slideoverlay-peach .dmach-acf-item-content {
	background-image: linear-gradient(218deg, rgba(255, 152, 104, 0.00) 50.43%, rgba(255, 152, 104, 0.80) 100%), linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,0.7) 100%);
}
.slideoverlay-mint .dmach-acf-item-content {
	background-image: linear-gradient(218deg, rgba(40, 220, 170, 0.00) 50.43%, rgba(40, 220, 170, 0.80) 100%), linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,0.7) 100%);
}
.slideoverlay-vio .dmach-acf-item-content {
	background-image: linear-gradient(218deg, rgba(70, 30, 190, 0.00) 50.43%, rgba(70, 30, 190, 0.80) 100%), linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,0.7) 100%);;
}
.slideoverlay-pink .dmach-acf-item-content {
	background-image: linear-gradient(218deg, rgba(245, 102, 186, 0.00) 50.43%, rgba(245, 102, 186, 0.80) 100%), linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,0.7) 100%);;
}
.slideoverlay-green .dmach-acf-item-content {
	background-image: linear-gradient(218deg, rgba(118, 200, 0, 0.00) 50.43%, rgba(118, 200, 0, 0.80) 100%), linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,0.7) 100%);;
}
.slideoverlay-lemon .dmach-acf-item-content {
	background-image: linear-gradient(218deg, rgba(240, 196, 0, 0.00) 50.43%, rgba(240, 196, 0, 0.80) 100%), linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,0.7) 100%);;
}


/* button colors */
.colorbutton.mint,
.colorblurb.mint .et_pb_main_blurb_image img,
.testimonial-module.mint .et_pb_testimonial_company {
	background-color: var(--mint) !important;
}
.colorbutton.peach,
.colorblurb.peach .et_pb_main_blurb_image img,
.testimonial-module.peach .et_pb_testimonial_company {
	background-color: var(--peach) !important;
}
.colorbutton.vio,
.colorblurb.vio .et_pb_main_blurb_image img,
.testimonial-module.vio .et_pb_testimonial_company {
	background-color: var(--vio) !important;
}
.colorbutton.pink,
.colorblurb.pink .et_pb_main_blurb_image img,
.testimonial-module.pink .et_pb_testimonial_company {
	background-color: var(--pink) !important;
}
.colorbutton.green,
.colorblurb.green .et_pb_main_blurb_image img,
.testimonial-module.green .et_pb_testimonial_company {
	background-color: var(--green) !important;
}
.colorbutton.lemon,
.colorblurb.lemon .et_pb_main_blurb_image img,
.testimonial-module.lemon .et_pb_testimonial_company {
	background-color: var(--lemon) !important;
}

/* tiles: icon color white */
.tile .et_pb_main_blurb_image {
	filter: invert(100%) sepia(23%) saturate(0%) hue-rotate(51deg) brightness(107%) contrast(101%);
}

/* tile colors */
.tile.peach {
	background-image: radial-gradient(circle at top right, #ff9868 0%, rgba(255,104,137,0) 100%);
}
.tile.mint {
	background-image: radial-gradient(circle at top right, #28DCAA 0%, rgba(40, 220, 170, 0) 100%);
}
.tile.vio {
	background-image: radial-gradient(circle at top right, #461EBE 0%, rgba(70, 30, 190, 0) 100%);
}
.tile.pink {
	background-image: radial-gradient(circle at top right, #F566BA 0%, rgba(245, 102, 186, 0.00) 100%);
}
.tile.green {
	background-image: radial-gradient(circle at top right, #76C800 0%, rgba(118, 200, 0, 0.00) 100%);
}
.tile.lemon {
	background-image: radial-gradient(circle at top right, #F0C400 0%, rgba(240, 196, 0, 0.00) 100%);
}


/* --- image aspect ratios --- */

.teaserimage .et_pb_image_wrap {
	padding-top: 75%; /* aspect-ratio 4/3 */
	display: block;
}
.square-image .et_pb_image_wrap,
.portrait-image .et_pb_image_wrap {
	padding-top: 100%; /* aspect-ratio 1/1 */
	display: block;
}
.square-image .et_pb_image_wrap img,
.teaserimage .et_pb_image_wrap img,
.portrait-image .et_pb_image_wrap img {
	position: absolute;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	object-fit: cover;
}


/* --- header menu & styles --- */

/* hide the logo on scroll */
.ok-fixed-header .et_pb_menu__logo img,
.ok-fixed-header .et_pb_menu__logo-wrap {
	-webkit-transition: all .5s ease;
	-moz-transition: all .5s ease;
	-o-transition: all .5s ease;
	transition: all .5s ease;
	display: none !important;
}

/* disable menu on landingpages */
/*
.ok-landingpage .et_mobile_nav_menu {
	display: none !important;
}
*/

/* position of header section and menu icon on scroll */
.ok-fixed-header.et_pb_section_0_tb_header.et_pb_section {
	padding-top: 16px!important;
}

/* adjust position of close icon on 404 page */
.error404.et-db #et-boc .et-l .et_pb_menu_0_tb_header .et_mobile_nav_menu .mobile_nav.closed .mobile_menu_bar::before,
.error404.et-db #et-boc .et-l .et_pb_menu_0_tb_header .et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before {
	top: 5px !important;
	left: -4px!important;
}

/* hamburger menu: move the menu to the top above other elements and add background */
.ok-fullscreen-menu .et_pb_menu__wrap span.mobile_menu_bar {
	z-index: 999999 !important;
    background: #fff;
	box-shadow: 0px 2px 8px -2px rgba(0, 43, 78, 0.50);
    display: flex;
    justify-content: center;
	align-items: center;
}
.ok-fullscreen-menu .et_pb_menu__wrap span.mobile_menu_bar:hover {
    box-shadow: 0px 2px 8px -2px rgba(0, 43, 78, 0.80);
}
@media only screen and (min-width: 1281px) {
	.ok-fullscreen-menu .et_pb_menu__wrap span.mobile_menu_bar {
		height: 48px;
		width: 48px;
		border-radius: 12px;
	}
}
@media only screen and (min-width: 640px) and (max-width: 1280px) {
	.ok-fullscreen-menu .et_pb_menu__wrap span.mobile_menu_bar {
		height: 40px;
		width: 40px;
		border-radius: 10px;
	}
}
@media only screen and (max-width: 639px) {
	.ok-fullscreen-menu .et_pb_menu__wrap span.mobile_menu_bar {
		height: 40px;
		width: 40px;
		border-radius: 8px;
	}
}

/* align the hamburger menu to the right right */
.ok-fullscreen-menu .et_pb_menu__wrap {
	justify-content: flex-end !important;
}
.ok-fullscreen-menu .et_mobile_nav_menu {
	margin: 0 !important;
}

/* close icon: adjust position */
.ok-fullscreen-menu .et_pb_menu__wrap .opened .mobile_menu_bar:before {
	top: 0;
}

/* remove the default blue border top on the mobile menu */
.ok-fullscreen-menu .et_mobile_menu {
	border-top: none;
}


/* mobile menu fullscreen and body not scrollable (with .js) */
.dh-menu-click {
    overflow: hidden!important;
}

/* disable shadow of opened menu */
.et_mobile_menu {
	box-shadow: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
}

/* background and size of opened menu */
.ok-fullscreen-menu #mobile_menu1 {
	  position: fixed !important;
	  top: 0em !important;
	  background: radial-gradient(133.06% 100% at 100% 0%, #FF9868 0%, #006EC7 100%) !important;
	  height: 100vh;
}

/* width & padding opened menu */
.ok-fullscreen-menu ul.et_mobile_menu {
	width: 100vw;
	padding-top: 120px;
	padding-bottom: 80px;
	padding-left: calc(50vw - 270px);
}

/* adjust spacings opened menu */

@media only screen and (max-width: 639px) {
	.ok-fullscreen-menu ul.et_mobile_menu {
		padding-left: 16px;
	}
	.ok-fullscreen-menu .et_mobile_menu {
    	padding: 16px;
	}
}

/* padding menu items */
.ok-fullscreen-menu .et_pb_menu .et_mobile_menu li li,
.ok-fullscreen-menu .et_pb_menu .et_mobile_menu li ul {
	padding: 0;
}

/* width menu items list */
@media only screen and (min-width: 640px) {
	.ok-fullscreen-menu #mobile_menu1 li {
		max-width: 540px;
	}
}

/* remove the bullet points from the list items */
.ok-fullscreen-menu #mobile_menu1 li,
.et-db #et-boc .et-l .ok-fullscreen-menu #mobile_menu1 li {
	list-style: none !important;
}

/* menu item level 1 text styles */
.ok-fullscreen-menu .et_mobile_menu li a,
.et-db #et-boc .et-l .ok-fullscreen-menu .et_mobile_menu li a {
	color: #fff;
	font-family: 'KlavikaWebBoldCond', Helvetica, Arial, Lucida, sans-serif;
	font-style: normal;
	font-weight: 700;
	line-height: 90%;
	text-transform: uppercase;
	text-decoration: none;
	text-align: left;
	border-bottom: 1px solid #fff;
	border-right: 1px solid #fff;
	padding: 0 0 12px 0;
}
@media only screen and (min-width: 1281px) {
	.ok-fullscreen-menu .et_mobile_menu li a,
	.et-db #et-boc .et-l .ok-fullscreen-menu .et_mobile_menu li a {
		font-size: 3rem;
		border-bottom-right-radius: 12px;
		margin: 0 0 20px 0;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.ok-fullscreen-menu .et_mobile_menu li a,
	.et-db #et-boc .et-l .ok-fullscreen-menu .et_mobile_menu li a {
		font-size: 2.5rem;
		border-bottom-right-radius: 10px;
		margin: 0 0 18px 0;
	}
}
@media only screen and (max-width: 639px) {
	.ok-fullscreen-menu .et_mobile_menu li a,
	.et-db #et-boc .et-l .ok-fullscreen-menu .et_mobile_menu li a {
		font-size: 2rem;
		border-bottom-right-radius: 8px;
		margin: 0 0 16px 0;
	}
}

/* active menu item level 1 styles */
.et_pb_menu_0_tb_header.et_pb_menu ul li.current-menu-item a {
	color: rgba(255,255,255,0.5) !important;
}
.et_pb_menu_0_tb_header.et_pb_menu ul li.current-menu-item a:hover {
	color: rgba(255,255,255,0.75) !important;
}

/* menu item level 2 text styles */
.ok-fullscreen-menu .et_pb_menu ul li li a {
	font-family: 'KlavikaWebBasicRegular' !important;
	font-style: normal !important;
	font-weight: 400 !important;
	line-height: 110% !important;
	text-transform: none !important;
	border: none !important;
}
@media only screen and (min-width: 1281px) {
	.ok-fullscreen-menu .et_pb_menu ul li li a {
		font-size: 2rem !important;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.ok-fullscreen-menu .et_pb_menu ul li li a {
		font-size: 1.5rem !important;
	}
}
@media only screen and (max-width: 639px) {
	.ok-fullscreen-menu .et_pb_menu ul li li a {
		font-size: 1.25rem !important;
	}
}

/* active menu item level 2 styles */
.et_pb_menu_0_tb_header.et_pb_menu ul li li.current_page_item a  {
	-webkit-text-stroke-width: 0;
	color: #fff !important;
	text-decoration: underline #fff 1px!important;
	text-underline-offset: 6px;
}
.et_pb_menu_0_tb_header.et_pb_menu ul li li.current_page_item a:hover  {
	-webkit-text-stroke-width: 0;
	color: rgba(255,255,255,0.5) !important;
	text-decoration: underline rgba(255,255,255,0.5) 1px!important;
}

/* remove bottom-border from level 1 menu items when submenus are open */
.ok-fullscreen-menu .dt-open .pac-da-submenu {
	border-right: 1px solid #fff !important;
	border-bottom: none !important;
	border-bottom-right-radius: 0px!important;
	margin-bottom: 0px !important;
}

/* add right border on opened submenu level 2 items */
.ok-fullscreen-menu ul.sub-menu.visible {
	border-right: 1px solid #fff !important;
}

/* add bottom-border on last submenu level 2 items */
.ok-fullscreen-menu ul.sub-menu.visible:last-of-type {
	border-bottom: 1px solid #fff !important;
}
@media only screen and (min-width: 1281px) {
	.ok-fullscreen-menu ul.sub-menu.visible:last-of-type {
		border-bottom-right-radius: 12px; 
		margin-bottom: 24px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.ok-fullscreen-menu ul.sub-menu.visible:last-of-type {
		border-bottom-right-radius: 10px; 
		margin-bottom: 20px;
	}
}
@media only screen and (max-width: 639px) {
	.ok-fullscreen-menu ul.sub-menu.visible:last-of-type {
		border-bottom-right-radius: 8px; 
		margin-bottom: 16px;
	}
}

/* add spacings to submenu level 2 items */
.ok-fullscreen-menu .et_pb_menu ul li li a {
	margin-bottom: 4px !important;
}
@media only screen and (min-width: 1281px) {
	.ok-fullscreen-menu .et_pb_menu ul li li:first-child {
		padding-top: 20px !important;
	}
	.ok-fullscreen-menu .et_pb_menu ul li li:last-child {
		margin-bottom: 24px !important;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.ok-fullscreen-menu .et_pb_menu ul li li:first-child {
		padding-top: 16px !important;
	}
	.ok-fullscreen-menu .et_pb_menu ul li li:last-child {
		margin-bottom: 20px !important;
	}
}
@media only screen and (max-width: 639px) {
	.ok-fullscreen-menu .et_pb_menu ul li li:first-child {
		padding-top: 12px !important;
	}
	.ok-fullscreen-menu .et_pb_menu ul li li:last-child {
		margin-bottom: 16px !important;
	}
}

/* toggle: remove border and adjust position */
.ok-fullscreen-menu a.mobile-toggle {
	top: -10px !important;
	border: none !important;
}
@media only screen and (min-width: 1281px) {
	.ok-fullscreen-menu a.mobile-toggle {
		margin-right: 24px !important;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.ok-fullscreen-menu a.mobile-toggle {
		margin-right: 16px !important;
	}
}
@media only screen and (max-width: 639px) {
	.ok-fullscreen-menu a.mobile-toggle {
		margin-right: 8px !important;
	}
}

/* toggle: color on hover */
.ok-fullscreen-menu a.mobile-toggle:hover::after {
	color: rgba(255,255,255,0.5)!important;
}

/* remove the default background color on menu items */
.ok-fullscreen-menu .et_mobile_menu .menu-item-has-children>a {
	background-color: transparent;
}

/* remove the default hover background color and adjust opacity */
.ok-fullscreen-menu .et_mobile_menu li a:hover {
	background-color: transparent;
	opacity: 1;
}

/* --- end of header menu & styles --- */


/* --- wpml menu items --- */

/* wpml menu font size + vertical flag position */
@media only screen and (min-width: 1281px) {
	.wpml-ls-item a {
		font-size: 1.5rem !important;
	}
	img.wpml-ls-flag {
		top: 2px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.wpml-ls-item a {
		font-size: 1.25rem !important;
	}
	img.wpml-ls-flag {
		top: 3px;
	}
}
@media only screen and (max-width: 639px) {
	.wpml-ls-item a {
		font-size: 1rem !important;
	}
	img.wpml-ls-flag {
		top: 4px;
	}
}

/* add space above wpml items */
.wpml-ls-first-item {
	margin-top: 40px;
}

/* wpml menu flag */
img.wpml-ls-flag {
	width: 1.25rem;
	height: 1.25rem;
	object-fit: cover;
	border-radius: 100px;
	position: relative;
}

/* disable border and reduce spacing for wmpl menu items */
.ok-fullscreen-menu .et_mobile_menu li.wpml-ls-item a,
.et-db #et-boc .et-l .ok-fullscreen-menu .et_mobile_menu li.wpml-ls-item a {
	border: none;
	margin: 0;
	padding: 0;
}

/* vertical spacing */
.ok-fullscreen-menu .et_mobile_menu li.wpml-ls-item,
.et-db #et-boc .et-l .ok-fullscreen-menu .et_mobile_menu li.wpml-ls-item {
	margin-bottom: 10px;
}

/* WPML menu on landingpages AT + HU */
@media only screen and (max-width: 1280px) {
	/* open the mobile menu up and use on all devices */
	.et-db #et-boc .et-l .language-only-menu .et_pb_menu__menu {
		display: flex;
	}
	/* hide the hamburger icon */
	.et-db #et-boc .et-l .language-only-menu .et_mobile_nav_menu {
		display: none;
	}
}

/* hover styles */
.language-only-menu .wpml-ls-flag:hover {
	filter: brightness(70%);
}

/* add suffix */
@media only screen and (min-width: 420px) {
	.menu-item-wpml-ls-44-en:after,
	.menu-item-wpml-ls-45-en:after {
		content: "EN";
	}
	.menu-item-wpml-ls-44-de:after,
	.menu-item-wpml-ls-45-de:after {
		content: "DE";
	}
	.menu-item-wpml-ls-44-hu:after,
	.menu-item-wpml-ls-45-hu:after {
		content: "HU";
	}
	.menu-item-wpml-ls-44-en:after,
	.menu-item-wpml-ls-44-de:after,
	.menu-item-wpml-ls-44-hu:after,
	.menu-item-wpml-ls-45-en:after,
	.menu-item-wpml-ls-45-de:after,
	.menu-item-wpml-ls-45-hu:after {
		font-family: 'KlavikaWebBoldCond';
		font-style: normal;
		font-weight: 700;
		font-size: 16px;
		color: #fff;
  		padding-left: 8px;
	}
	.language-menu-blk .menu-item-wpml-ls-44-en:after,
	.language-menu-blk .menu-item-wpml-ls-44-de:after,
	.language-menu-blk .menu-item-wpml-ls-44-hu:after,
	.language-menu-blk .menu-item-wpml-ls-45-en:after,
	.language-menu-blk .menu-item-wpml-ls-45-de:after,
	.language-menu-blk .menu-item-wpml-ls-45-hu:after {
		color: #000;
	}
}

/* adjust spacings */
@media only screen and (min-width: 1281px) {
	.menu-item-wpml-ls-44-en:after,
	.menu-item-wpml-ls-44-de:after,
	.menu-item-wpml-ls-44-hu:after,
	.menu-item-wpml-ls-45-en:after,
	.menu-item-wpml-ls-45-de:after,
	.menu-item-wpml-ls-45-hu:after {
		padding-top: 23px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.menu-item-wpml-ls-44-en:after,
	.menu-item-wpml-ls-44-de:after,
	.menu-item-wpml-ls-44-hu:after,
	.menu-item-wpml-ls-45-en:after,
	.menu-item-wpml-ls-45-de:after,
	.menu-item-wpml-ls-45-hu:after {
		padding-top: 28px;
	}
}
@media only screen and (max-width: 639px) {
	.menu-item-wpml-ls-44-en:after,
	.menu-item-wpml-ls-44-de:after,
	.menu-item-wpml-ls-44-hu:after,
	.menu-item-wpml-ls-45-en:after,
	.menu-item-wpml-ls-45-de:after,
	.menu-item-wpml-ls-45-hu:after {
		padding-top: 33px;
	}
}

/* --- footer menu --- */

.footerlogo-row,
.footermenu-row {
	display: flex;
	flex-wrap: wrap;
}

@media only screen and (max-width: 1280px) {
	/* open the mobile menu up and use on all devices */
	.et-db #et-boc .et-l .footermenu-row .et_pb_menu__menu {
		display: flex;
	}
	/* hide the hamburger icon */
	.et-db #et-boc .et-l .footermenu-row .et_mobile_nav_menu {
		display: none;
	}
	/* change column stacking order */
	.copyright-column {
		order: 2;
	}
	.footermenu-column {
		order: 1;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.footermenu-column {
		padding-bottom: 24px;
	}
}
@media only screen and (max-width: 639px) {
	.footermenu-column {
		padding-bottom: 16px;
	}
}

/* footer-menu: horizontal position */
@media only screen and (min-width: 1281px) {
	.footermenu.et_pb_menu .et_pb_menu__wrap {
		justify-content: flex-end !important;
	}
}
@media only screen and (max-width: 1280px) {
	.footermenu.et_pb_menu .et_pb_menu__wrap {
		justify-content: center !important;
	}
}


/* footer-menu: add borders to the menu items (1 row) */
@media only screen and (min-width: 640px) {
	.footermenu.et_pb_menu nav > ul > li:not(:last-child) {
		border-right: 1px solid rgba(255,255,255,0.5);
	}
}
/* footer-menu: add borders to the menu items (2 rows) */
@media only screen and (max-width: 639px) {
	.footermenu.et_pb_menu nav > ul > li:not(:last-child):not(:nth-child(3)) {
		border-right: 1px solid rgba(255,255,255,0.5);
	}
}

/* footer-menu: adjust spacing around menu items */
@media only screen and (min-width: 1281px) {
	.footermenu.et_pb_menu li a {
		padding: 0px 8px;
	}
}
@media only screen and (max-width: 1280px) {
	.footermenu.et_pb_menu li a {
		padding: 0px 0px
	}
}
.footermenu.et_pb_menu li {
	line-height: 1.5rem;
}
.et_pb_menu--without-logo .et_pb_menu__menu > nav > ul > li > a {
	padding-bottom: 0 !important;
}

/* footer-menu: set 2 rows for small devices  */
@media only screen and (max-width: 639px) {
	.footermenu-column {
		padding-left: calc(50% - 160px);
		padding-right: calc(50% - 160px);
	}
	.footermenu .et_pb_menu__menu > nav > ul {
		justify-content: center;
	}
}

/* footer logos: position inline */
.awardlogo-column,
.sociallogo-column {
	display: flex;
}

/* footer logos: column settings */
@media only screen and (min-width: 1281px) {
	.companylogo-column {
		width: 226px!important;
	}
	.awardlogo-column {
		width: calc(100% - 226px - 408px)!important;
		justify-content: center !important;
		gap: 24px;
	}
	.awardlogo-column.hu,
	.awardlogo-column.at {
		width: calc(100% - 226px - 192px)!important;
	}
	.sociallogo-column {
		width: 408px !important;  /* 6 icons */
		justify-content: flex-end !important;
		gap: 24px;
		margin-top: -8px
	}
	.sociallogo-column.hu,
	.sociallogo-column.at {
		width: 192px !important; /* 3 icons */
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.companylogo-column {
		width: 50%!important;
		order: 1;
	}
	.awardlogo-column {
		width: 100%!important;
		justify-content: center !important;
		gap: 24px;
		order: 3;
		margin-top: 40px;
	}
	.sociallogo-column {
		width: 50%!important;
		justify-content: flex-end !important;
		gap: 24px;
		order: 2;
	}
}
@media only screen and (max-width: 639px) {
	.companylogo-column,
	.sociallogo-column,
	.awardlogo-column {
		width: 100%!important;
	}
	.companylogo-column {
		order: 1;
		padding-bottom: 24px;
	}
	.sociallogo-column {
		order: 2;
		justify-content: center !important;
		gap: 24px;
		padding-bottom: 40px;
	}
	.awardlogo-column {
		order: 3;
		justify-content: center !important;
		gap: 2.5%;
	}
}

/* footer social-logos: colorize white */
.white .sociallogo-column .et_pb_image {
	filter: invert(100%) sepia(23%) saturate(0%) hue-rotate(51deg) brightness(107%) contrast(101%);
}
.white .sociallogo-column .et_pb_image:hover {
	  opacity: 50%;
}

/* footer social-logos: colorize blue */
.blue .sociallogo-column .et_pb_image {
	filter: invert(22%) sepia(55%) saturate(7411%) hue-rotate(195deg) brightness(100%) contrast(101%);
}
.blue .sociallogo-column .et_pb_image:hover {
	filter: invert(14%) sepia(55%) saturate(1059%) hue-rotate(168deg) brightness(91%) contrast(107%);
}

/* footer award-logos: invert */
.blue .logo-invert {
	filter: invert(100%) !important;
}

/* --- end of footer menu styles --- */



/* --- image slider (divimachine module) --- */

/* image slider (divimachine module) - image settings */

/* set image full width */
.slideimage img.featured-image.wp-post-image {
	width: 100% !important;
}

/* image slider heights */
@media only screen and (min-width: 1281px) {
	.heroslider,
	.slideimage,
	.slideoverlay-peach .dmach-acf-item-content,
	.slideoverlay-mint .dmach-acf-item-content,
	.slideoverlay-vio .dmach-acf-item-content,
	.slideoverlay-pink .dmach-acf-item-content,
	.slideoverlay-green .dmach-acf-item-content,
	.slideoverlay-lemon .dmach-acf-item-content {
		height: calc(100svh - 120px - 24px);
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.heroslider,
	.slideimage,
	.slideoverlay-peach .dmach-acf-item-content,
	.slideoverlay-mint .dmach-acf-item-content,
	.slideoverlay-vio .dmach-acf-item-content,
	.slideoverlay-pink .dmach-acf-item-content,
	.slideoverlay-green .dmach-acf-item-content,
	.slideoverlay-lemon .dmach-acf-item-content {
		height: calc(100svh - 104px - 16px);
	}
}
@media only screen and (max-width: 639px) {
	.heroslider,
	.slideimage,
	.slideoverlay-peach .dmach-acf-item-content,
	.slideoverlay-mint .dmach-acf-item-content,
	.slideoverlay-vio .dmach-acf-item-content,
	.slideoverlay-pink .dmach-acf-item-content,
	.slideoverlay-green .dmach-acf-item-content,
	.slideoverlay-lemon .dmach-acf-item-content {
		height: calc(100svh - 88px - 8px);
	}
}

/* image slider (divimachine module) - image slider cropping */
.slideimage .et_pb_module_inner,
.slideimage .et_shop_image {
	display: block;
	position: absolute !important;
	left: 0;
	height: 100%;
	width: 100%;
}
.slideimage img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: translate(-50%, -50%);
}

/* image slider (divimachine module) - min-max-height: landscape views */
@media only screen and (min-width: 1281px) and (orientation: landscape) {
	.heroslider,
	.slideimage,
	.slideoverlay-peach .dmach-acf-item-content,
	.slideoverlay-mint .dmach-acf-item-content,
	.slideoverlay-vio .dmach-acf-item-content,
	.slideoverlay-pink .dmach-acf-item-content,
	.slideoverlay-green .dmach-acf-item-content,
	.slideoverlay-lemon .dmach-acf-item-content {
		min-height: 800px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) and (orientation: landscape) {
	.heroslider,
	.slideimage,
	.slideoverlay-peach .dmach-acf-item-content,
	.slideoverlay-mint .dmach-acf-item-content,
	.slideoverlay-vio .dmach-acf-item-content,
	.slideoverlay-pink .dmach-acf-item-content,
	.slideoverlay-green .dmach-acf-item-content,
	.slideoverlay-lemon .dmach-acf-item-content {
		max-height: 800px;
		min-height: 600px;
	}
}
@media only screen and (max-width: 639px) and (orientation: landscape) {
	.heroslider,
	.slideimage,
	.slideoverlay-peach .dmach-acf-item-content,
	.slideoverlay-mint .dmach-acf-item-content,
	.slideoverlay-vio .dmach-acf-item-content,
	.slideoverlay-pink .dmach-acf-item-content,
	.slideoverlay-green .dmach-acf-item-content,
	.slideoverlay-lemon .dmach-acf-item-content {
		max-height: 500px;
		min-height: 400px;
	}
}

/* image slider (divimachine module) - min-max-height: portrait views */
@media only screen and (min-width: 1281px)  and (orientation: portrait) {
	.heroslider,
	.slideimage,
	.slideoverlay-peach .dmach-acf-item-content,
	.slideoverlay-mint .dmach-acf-item-content,
	.slideoverlay-vio .dmach-acf-item-content,
	.slideoverlay-pink .dmach-acf-item-content,
	.slideoverlay-green .dmach-acf-item-content,
	.slideoverlay-lemon .dmach-acf-item-content {
		max-height: 1024px;
		min-height: 560px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) and (orientation: portrait) {
	.heroslider,
	.slideimage,
	.slideoverlay-peach .dmach-acf-item-content,
	.slideoverlay-mint .dmach-acf-item-content,
	.slideoverlay-vio .dmach-acf-item-content,
	.slideoverlay-pink .dmach-acf-item-content,
	.slideoverlay-green .dmach-acf-item-content,
	.slideoverlay-lemon .dmach-acf-item-content {
		max-height: 1024px;
		min-height: 560px;
	}
}
@media only screen and (max-width: 639px) and (orientation: portrait) {
	.heroslider,
	.slideimage,
	.slideoverlay-peach .dmach-acf-item-content,
	.slideoverlay-mint .dmach-acf-item-content,
	.slideoverlay-vio .dmach-acf-item-content,
	.slideoverlay-pink .dmach-acf-item-content,
	.slideoverlay-green .dmach-acf-item-content,
	.slideoverlay-lemon .dmach-acf-item-content {
		max-height: 580px;
		min-height: 500px;
	}
}

/* image slider (divimachine module): hide acf-overlay text  */
.slideoverlay-peach p,
.slideoverlay-mint p,
.slideoverlay-vio p,
.slideoverlay-pink p,
.slideoverlay-green p,
.slideoverlay-lemon p {
	display: none;
}

/* image slider (divimachine module): default cursor on slide */
.slick-slide {
	cursor: default !important;
}

/* image slider (divimachine module): position arrows */
@media only screen and (min-width: 1281px) {
	#header-slider .slick-next, 
	#header-slider .slick-prev {
		top: calc(100% - 48px);
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	#header-slider .slick-next, 
	#header-slider .slick-prev {
		top: calc(100% - 32px);
	}
}
@media only screen and (max-width: 639px) {
	#header-slider .slick-next, 
	#header-slider .slick-prev {
		display: none !important;
	}
}

/* image slider (divimachine module): position dots */
body .slick-dots {
	bottom: 0;
}

/* image slider (divimachine module): position dots (mobile) */
@media only screen and (max-width: 639px) {
	.slick-dots {
		text-align: right;
		padding-right: 20px !important;
	}
}

/* image slider (divimachine module): border-element */
.slideheadline:after {
	content: "";
	display: block;
	border-bottom: 1px solid #fff;
	border-left: 1px solid #fff;
}
@media only screen and (min-width: 1281px) {
	.slideheadline:after {
		height: 64px;
		width: 156px;
		border-bottom-left-radius: 12px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.slideheadline:after {
		height: 46px;
		width: 96px;
		border-bottom-left-radius: 10px;
	}
}
@media only screen and (max-width: 639px) {
	.slideheadline:after {
		height: 32px;
		width: 32px;
		border-bottom-left-radius: 8px;
	}
}

/* image slider (divimachine module): content spacings */
.slideheadline .dmach-acf-value {
	  padding-bottom: 0;
}
@media only screen and (min-width: 1281px) {
	.slideheadline:after {
		margin-left: -48px;
	}
	.slidesubline .dmach-acf-value {
		margin: -30px 48px 0 156px;
		max-width: 1200px;
	}
	.slidebutton,
	.slidebutton-ext {
		margin: 0 156px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.slideheadline:after {
		margin: -8px 0 -22px -24px; /*top,right,buttom,left*/
	}
	.slidesubline .dmach-acf-value {
		margin-left: 96px;
	}
	.slidebutton,
	.slidebutton-ext {
		margin-left: 96px;
	}
}
@media only screen and (max-width: 639px) {
	.slideheadline:after {
		margin: -4px 0 -16px -16px; /*top,right,buttom,left*/
	}
	.slidesubline .dmach-acf-value {
		margin-left: 24px;
	}
	.slidebutton,
	.slidebutton-ext {
		margin-left: 24px;
	}
}


/* --- hero sections + fullscreen modules: adapting viewheights --- */

.herosection {
	height: 100svh;
}

/* min-max-height: landscape views */
@media only screen and (min-width: 1281px) and (orientation: landscape) {
	.herosection {
		min-height: calc(800px + 120px + 24px);
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) and (orientation: landscape) {
	.herosection {
		max-height: calc(800px + 104px + 24px);
		min-height: calc(600px + 104px + 24px);
	}
}
@media only screen and (max-width: 639px) and (orientation: landscape) {
	.herosection {
		max-height: calc(500px + 88px + 16px);
		min-height: calc(400px + 88px + 16px);
	}
}

/* min-max-height: portrait views */
@media only screen and (min-width: 1281px)  and (orientation: portrait) {
	.herosection {
		max-height: calc(1024px + 120px + 24px);
		min-height: calc(560px + 120px + 24px);
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) and (orientation: portrait) {
	.herosection {
		max-height: calc(1024px + 104px + 24px);
		min-height: calc(560px + 104px + 24px);
	}
}
@media only screen and (max-width: 639px) and (orientation: portrait) {
	.herosection {
		max-height: calc(580px + 88px + 16px);
		min-height: calc(500px + 88px + 16px);
	}
}


/* --- content sections layout & text styles --- */

@media only screen and (min-width: 1281px) {
	.leftspacecol {
		width: 204px !important;
	}
	.leftspacecol-icon {
		width: 204px !important;
		margin-top: -8px;
	}
	.headingcol,
	.headingcol-icon { 
		width: 100% !important;
		max-width: 1356px !important;
		margin-left: 0 !important;
	}
	.maincol,
	.maincol-icon { 
		width: calc(100% - 204px) !important;
		max-width: 1200px !important;
		margin-top: -12px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.leftspacecol  {
		width: 120px!important;
	}
	.leftspacecol-icon {
		width: 120px !important;
		margin-top: -4px;
	}
	.headingcol,
	.headingcol-icon { 
		width: 100% !important;
		margin-left: 0 !important;
	}
	.maincol,
	.maincol-icon { 
		width: calc(100% - 120px) !important;
		margin-top: -24px;
	}
}
@media only screen and (max-width: 639px) {
	.leftspacecol  {
		width: 40px!important;
	}
	.leftspacecol-icon {
		width: 40px;
		margin-top: -8px;
	}
	.leftspacecol-icon .et_pb_image {
		width: 92px !important;
	}
	.maincol { 
		width: calc(100% - 40px) !important;
		margin-top: -30px;
	}
	.maincol-icon { 
		width: 100% !important;
		margin-top: -48px;
		padding-left: 40px;
	}
}
@media only screen and (max-width: 499px) {
	.maincol {
		top: -28px;
	}
	.maincol-icon .et_pb_text {
		margin-top: -24px !important;
	}
}

/* --- accordion section styles --- */

body:not(.et-fb) .rv_element { 
	display: none; 
}

/* accordion icon */
.accordion h3.et_pb_module_heading:not(.rv_button_opened)::after,  
.accordion h3.et_pb_module_heading.rv_button_closed::after {
	font-family: ETmodules !important;
	font-weight: 400 !important;
	content: "\4c" !important;
	position: absolute;
	left: auto;
}
@media only screen and (min-width: 1281px) {
	.accordion h3.et_pb_module_heading:not(.rv_button_opened)::after,  
	.accordion h3.et_pb_module_heading.rv_button_closed::after {
		font-size: 2.5rem;
		right: 16px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.accordion h3.et_pb_module_heading:not(.rv_button_opened)::after,  
	.accordion h3.et_pb_module_heading.rv_button_closed::after {
		font-size: 2.125rem;
		right: 12px;
	}
}
@media only screen and (max-width: 639px) {
	.accordion h3.et_pb_module_heading:not(.rv_button_opened)::after,  
	.accordion h3.et_pb_module_heading.rv_button_closed::after {
		font-size: 1.75rem;
		right: 8px;
	}
}

/* accordion icon colors */
.accordion h3.et_pb_module_heading:not(.rv_button_opened)::after,  
.accordion h3.et_pb_module_heading.rv_button_closed::after {
	color: #006ec7;
}
.accordion h3.et_pb_module_heading:hover::after,  
.accordion h3.et_pb_module_heading.rv_button_closed:hover::after { 
	color: #00559A;
}
.accordion.wht-heading h3.et_pb_module_heading:not(.rv_button_opened)::after,  
.accordion.wht-heading h3.et_pb_module_heading.rv_button_closed::after {
	color: #fff;
}
.accordion.wht-heading h3.et_pb_module_heading:hover::after,  
.accordion.wht-heading h3.et_pb_module_heading.rv_button_closed:hover::after { 
	color: rgba(255, 255, 255, 0.50);
}

/* accordion heading border */
.accordion h3.et_pb_module_heading:not(.rv_button_opened),
.accordion h3.et_pb_module_heading.rv_button_closed {
	border-bottom: 1px solid #006ec7;
	border-right: 1px solid #006ec7;
}
.accordion .et_pb_module_heading:hover:not(.rv_button_opened) {
	border-bottom: 1px solid rgba(0, 85, 154, 0.50);
	border-right: 1px solid rgba(0, 85, 154, 0.50);
}
.accordion.wht-heading h3.et_pb_module_heading:not(.rv_button_opened),
.accordion.wht-heading h3.et_pb_module_heading.rv_button_closed {
	border-bottom: 1px solid #fff;
	border-right: 1px solid #fff;
}
.accordion.wht-heading .et_pb_module_heading:hover:not(.rv_button_opened) {
	border-bottom: 1px solid rgba(255, 255, 255, 0.50);
	border-right: 1px solid rgba(255, 255, 255, 0.50);
}
@media only screen and (min-width: 1281px) {
	.accordion h3.et_pb_module_heading:not(.rv_button_opened),
	.accordion h3.et_pb_module_heading.rv_button_closed {
		border-bottom-right-radius: 12px;
		padding-bottom: 16px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.accordion h3.et_pb_module_heading:not(.rv_button_opened),
	.accordion h3.et_pb_module_heading.rv_button_closed {
		border-bottom-right-radius: 10px;
		padding-bottom: 16px;
	}
}
@media only screen and (max-width: 639px) {
	.accordion h3.et_pb_module_heading:not(.rv_button_opened),
	.accordion h3.et_pb_module_heading.rv_button_closed {
		border-bottom-right-radius: 8px;
		padding-bottom: 16px;
	}
}

/* accordion heading */
.accordion h3.et_pb_module_heading:not(.rv_button_opened),
.accordion.wht-heading h3.et_pb_module_heading:not(.rv_button_opened) {
	padding-right: 40px !important;
}

.accordion h3.et_pb_module_heading.rv_button_closed,
.accordion h3.et_pb_module_heading.rv_button_opened,
.accordion.wht-heading h3.et_pb_module_heading.rv_button_closed,
.accordion.wht-heading h3.et_pb_module_heading.rv_button_opened {
	webkit-transition: all 0.5s ease !important;
	-moz-transition: all 0.5s ease!important;
	-o-transition: all 0.5s ease!important;
	transition: all 0.5s ease!important;
}

@media only screen and (min-width: 1281px) {
	.accordion h3.et_pb_module_heading.rv_button_opened,
	.accordion.wht-heading h3.et_pb_module_heading.rv_button_opened {
		font-size: 3rem !important;
		transform: translateX(156px) translateY(96px);
		max-width: calc(100% - 300px);
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.accordion h3.et_pb_module_heading.rv_button_opened,
	.accordion.wht-heading h3.et_pb_module_heading.rv_button_opened  {
		font-size: 2.5rem !important;
		transform: translateX(96px) translateY(90px);
		max-width: calc(100% - 168px);
	}
}
@media only screen and (max-width: 639px) {
	.accordion h3.et_pb_module_heading.rv_button_opened,
	.accordion.wht-heading h3.et_pb_module_heading.rv_button_opened  {
		font-size: 1.625rem !important;
		transform: translateX(72px) translateY(60px);
		max-width: calc(100% - 72px);
	}
}

/* accordion icon animation */
.iconimage {
	-webkit-animation: fadein 1s ease-in forwards;
    animation: fadein 1s ease-in forwards;
    opacity: 0;
}
@-webkit-keyframes fadein {
	0% { opacity: 0; }
	100% { opacity: 1; }
}
@keyframes fadein {
	0% { opacity: 0; }
	100% { opacity: 1; }
}


/* --- typewriter module --- */

/* typewriter responsive settings: 2 rows on small devices */
@media only screen and (max-width: 1080px) {
	.typingheadline .dsm-typing-wrapper:before { 
		content: '\A';
		white-space: pre;
	}
}

/* logo badge: positions and sizes */
@media only screen and (min-width: 1704px) {
	.headingcol.logo {
		width: 240px!important;
		padding-left: 48px;
	}
	.headingcol.typing {
		width: calc(100% - 240px) !important;
	}
.headingcol.logo .et_pb_image {
	top: -24px;
	}
}
@media only screen and (max-width: 1703px) and (min-width: 1281px) {
	.headingcol.logo {
		width: 200px!important;
		padding-left: 48px;
	}
	.headingcol.typing {
		width: calc(100% - 200px) !important;
	}
	.headingcol.logo .et_pb_image {
		top: -14px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 800px) {
	.headingcol.logo {
		width: 180px!important;
		left: 24px;
		padding-left: 32px;
	}
	.headingcol.typing {
		width: calc(100% - 180px) !important;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 1081px) {
	.headingcol.logo .et_pb_image {
		top: -12px;
	}  
}
@media only screen and (max-width: 1080px ) and (min-width: 800px) {
	.headingcol.logo .et_pb_image {
		top: 12px;
	}
}
@media only screen and (max-width: 801px) and (min-width: 640px) {
	.headingcol.logo {
		width: 140px!important;
		left: 44px;
		padding-left: 24px;
	}
	.headingcol.typing {
		width: calc(100% - 160px) !important;
	}
	.headingcol.logo .et_pb_image {
		top: 20px;
	}
}
@media only screen and (max-width: 639px) {
	.typewriter-row {
		display: flex;
		flex-wrap: wrap;
	}
	.headingcol.typing {
		order: 2;
	}
	.headingcol.logo {
		order: 1;
	}
	.headingcol.logo .et_pb_image {
		width: 96px;
		margin-left: auto;
		margin-right: -28px;
	}
}
@media only screen and (max-width: 639px) and (min-width: 481px) {
	.headingcol.logo .et_pb_image {
		top: 64px;
	}
}
@media only screen and (max-width: 480px) {
	.headingcol.logo .et_pb_image {
		padding-bottom: 8px;
	}
}


/* --- tile carousel slider --- */

/* tile margins + additional sizes */
@media only screen and (min-width: 1777px) {
	#tile-carousel .slick-slide {
		width: 544px;
		margin: 24px;
	}
	.tile {
		border-radius: 40px;
	}
	.tile .et_pb_blurb_content {
		height: 448px;
		width: 448px;
		margin: 48px;
	}
	.tile .et_pb_main_blurb_image img {
		width: 220px;
		height: 220px;
	}
	.tile .et_pb_main_blurb_image {
		max-width: 220px;
	}
}
@media only screen and (max-width: 1776px) and (min-width: 1281px) {
	#tile-carousel .slick-slide {
		width: 400px;
		margin: 16px;
	}
	.tile {
		border-radius: 32px;
	}
	.tile .et_pb_blurb_content {
		height: 336px;
		width: 336px;
		margin: 32px;
	}
	.tile .et_pb_main_blurb_image img {
		width: 132px;
		height: 132px;
	}
	.tile .et_pb_main_blurb_image {
		max-width: 132px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 960px) {
	#tile-carousel .slick-slide {
		width: 360px;
		margin: 12px;
	}
	.tile {
		border-radius: 24px;
	}
	.tile .et_pb_blurb_content {
		height: 312px;
		width: 312px;
		margin: 24px;
	}
	.tile .et_pb_main_blurb_image img {
		width: 120px;
		height: 120px;
	}
	.tile .et_pb_main_blurb_image {
		max-width: 120px;
	}
}
@media only screen and (max-width: 961px) and (min-width: 640px) {
	#tile-carousel .slick-slide {
		width: 296px;
		margin: 8px;
	}
	.tile {
		border-radius: 16px;
	}
	.tile .et_pb_blurb_content {
		height: 264px;
		width: 264px;
		margin: 16px;
	}
	.tile .et_pb_main_blurb_image img {
		width: 96px;
		height: 96px;
	}
	.tile .et_pb_main_blurb_image {
		max-width: 96px;
	}
}
@media only screen and (max-width: 639px) {
	#tile-carousel .slick-slide {
		width: 240px;
		margin: 8px;
	}
	.tile {
		border-radius: 12px;
	}
	.tile .et_pb_blurb_content {
		height: 208px;
		width: 208px;
		margin: 16px;
	}
	.tile .et_pb_main_blurb_image img {
		width: 80px;
		height: 80px;
	}
	.tile .et_pb_main_blurb_image {
		max-width: 80px;
	}
}

/* tile dots on small devices */
@media only screen and (max-width: 480px) {
	#tile-carousel .slick-dots {
		justify-content: right;
		right: 16px;
	}
}

/* tile layouts */
.tile .et_pb_blurb_content {
	display: flex;
	flex-direction: column;
}
/* Position the text content at the bottom */
.tile .et_pb_blurb_container {
	margin-top: auto !important;
	margin-bottom: 0 !important;
}

/* Position the image at the top-right */
.tile .et_pb_main_blurb_image {
  display: inline-block;
  margin-bottom: 0;
  margin-left: auto;
  margin-right: 0; /*max-width: see above*/
}

/* tiles: line height description text */
.tile .et_pb_blurb_description p {
	line-height: 110%;
	text-wrap: balance!important;
}

/* tile hovers */
.tile:hover {
	filter: brightness(80%);
	box-shadow: none;
}


/* --- new logo carousel --- */

/* arrange all section rows side-by-side */
body:not(.et-fb) .logocarousel-section.et_pb_section {
    display: flex;
}

/* animate rows */
body:not(.et-fb) .logocarousel-section .et_pb_row {
    animation: ticker 60s linear infinite;
}
@keyframes ticker {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-100%);
    }
}

/* pause animation on hover */
.logocarousel-section.et_pb_section:hover .et_pb_row {
    animation-play-state: paused;
}

/* allowing row to expand beyond screen width */
body:not(.et-fb) .logocarousel-row.et_pb_row {
    max-width: max-content;
    width:max-content;
}

/* arranging all logo modules side-by-side */
.logocarousel-row .et_pb_column {
    display: flex;
}

/* logo aspect ratios */
.logocarousel-image .et_pb_image_wrap,
.testlogo .et_pb_image_wrap {
	aspect-ratio: 1 / 1;
}
.logocarousel-image .et_pb_image_wrap img,
.testlogo .et_pb_image_wrap img {
	object-fit: contain;
}

/* logo sizes and spacing */
@media only screen and (min-width: 1281px) {
	.logocarousel-image {
		width: 12vw!important;
		max-width: 180px!important;
		margin-right: 4vw!important;
	}
}	
@media only screen and (max-width: 1280px) and (min-width: 641px) {
	.logocarousel-image {
		width: calc(16vw - 48px)!important;
		margin-right: 48px!important;
	}
}
@media only screen and (max-width: 640px) {
	.logocarousel-image {
		width: calc(25vw - 24px)!important;
    max-width: 100px!important;
		margin-right: 24px!important;
	}
}


/* --- logo grid + certification grid--- */

/* logo grid: image aspect ratios */
.logogrid-image .et_pb_image_wrap {
	padding-top: 100%;
	display: block;
}

.logogrid-image .et_pb_image_wrap img {
	position: absolute;
	height: 100%;
	width: 100%!important;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	object-fit: contain;
}

/* logogrid layout */
.logogrid-column {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

/* certificationgrid layout */
.cert-grid-column {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

/* logogrid + certificationgrid columns */
@media only screen and (min-width: 1440px)  {
	.logogrid-column .et_pb_image,
	.cert-grid-column .et_pb_image {
		width: 10.66%; /* 6 logo columns */
		margin: 1.5% 3% !important;
	}
}
@media only screen and (max-width: 1439px) and (min-width: 960px) {
	.logogrid-column .et_pb_image,
	.cert-grid-column .et_pb_image {
		width: 14%; /* 5 logo columns */
		margin: 1.5% 3% !important;
	}
}
@media only screen and (max-width: 959px) and (min-width: 640px)  {
	.logogrid-column .et_pb_image,
	.cert-grid-column .et_pb_image {
		width: 17%; /* 4 logo columns */
		margin: 2% 4% !important;
	}
}
@media only screen and (max-width: 639px) and (min-width: 441px) {
	.logogrid-column .et_pb_image,
	.cert-grid-column .et_pb_image {
		width: 22%; /* 3 logo columns */
		margin: 3% 5.66% !important;
	}
}
@media only screen and (max-width: 440px)  {
	.logogrid-column .et_pb_image,
	.cert-grid-column .et_pb_image {
		width: 36%; /* 2 logo columns */
		margin: 4% 7% !important;
	}
}


/* --- sites grid --- */
.sitesgrid-column,
.et-fb-root-ancestor .sitesgrid-column {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
@media only screen and (max-width: 440px)  {
	.sitesgrid-column .et_pb_module {
		width: 100% !important;
		margin: 3% 0 !important;
	}
}

/* layout variantion for hu */
@media only screen and (max-width: 1280px) and (min-width: 1024px)  {
	.sitesgrid-column.hu .et_pb_module {
		width: 20% !important;
		margin: 3% 5% 3% 0 !important;
	}
}


/* --- columntext layout --- */
.columntext,
.et-fb-root-ancestor .columntext {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}


/* --- image + testimonial carousels --- */
@media only screen and (min-width: 1281px) {
	#image-carousel .slick-slide {
		margin: 4px;
	}
	#testimonial-carousel .slick-slide {
		margin: 0 48px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	#image-carousel .slick-slide {
		margin: 16px;
	}
	#testimonial-carousel .slick-slide {
		margin: 0 24px;
	}
}
@media only screen and (max-width: 639px) {
	#image-carousel .slick-slide {
		margin: 8px;
	}
	#testimonial-carousel .slick-slide {
		margin: 0 16px;
	}
	#testimonial-carousel .slick-dots {
		top: 8px; /* position dots */
	}
}


/* --- testimonial module --- */
/* text sizes: see above */

/* testimonial image */
.testimonial-module .et_pb_testimonial_portrait {
	width: 300px!important;
	height: auto !important;
	aspect-ratio: 1/1 !important;
	margin-right: 48px;
}
@media only screen and (min-width: 1281px) {
	.testimonial-module .et_pb_testimonial_portrait {
		box-shadow: 0px 20px 64px -24px rgba(0,43,78,0.5);
	}
}
@media only screen and (max-width: 1280px) {
	.testimonial-module .et_pb_testimonial_portrait {
		box-shadow: 0px 16px 40px -16px rgba(0,43,78,0.5);
	}
}
.testimonial-module .et_pb_testimonial_portrait::before {
	box-shadow: none;
}
@media only screen and (min-width: 1281px) {
	.testimonial-module .et_pb_testimonial_portrait {
		border-radius: 12px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 768px) {
	.testimonial-module .et_pb_testimonial_portrait {
		width: 240px !important;
		border-radius: 10px;
	}
}
@media only screen and (max-width: 767px) {
	.testimonial-module .et_pb_testimonial_portrait {
		width: 100% !important;
		max-width: 240px;
		border-radius: 16px;
		float: none !important;
		margin: 0 auto 32px 0 !important;
	}
}

/* testimonial: add quote icon */
.testimonial-module .et_pb_testimonial_description::before {
	content: '';
	display: inline-block;
	background-image: url('https://www.adesso-bc.com/wp-content/uploads/2025/03/quote.svg');
	filter: invert(22%) sepia(55%) saturate(7411%) hue-rotate(195deg) brightness(100%) contrast(101%);
}
.et_pb_bg_layout_dark.testimonial-module .et_pb_testimonial_description::before {
	filter: invert(100%) sepia(23%) saturate(0%) hue-rotate(51deg) brightness(107%) contrast(101%) opacity(50%);
}

@media only screen and (min-width: 1281px) {
	.testimonial-module .et_pb_testimonial_description::before {
    	background-size: 32px 32px;
		width: 32px;
		height: 32px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.testimonial-module .et_pb_testimonial_description::before {
    	background-size: 24px 24px;
		width: 24px;
		height: 24px;
	}
}
@media only screen and (max-width: 639px) {
	.testimonial-module .et_pb_testimonial_description::before {
    	background-size: 20px 20px;
		width: 20px;
		height: 20px;
	}
}

/* testimonial spacings */

.testimonial-module.et_pb_testimonial.et_pb_testimonial {
  padding: 0 !important;
}

.testimonial-module .et_pb_testimonial_content p {
	padding-bottom: 0;
}
@media only screen and (min-width: 1281px) {
	.testimonial-module .et_pb_testimonial_meta {
		margin-top: -16px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.testimonial-module .et_pb_testimonial_meta {
		margin-top: -12px;
	}
}
@media only screen and (max-width: 639px) {
	.testimonial-module .et_pb_testimonial_meta {
		margin-top: -6px;
	}
	.et_pb_testimonial_author {
		margin-top: 16px;
	}
}

/* testimonial author */
.testimonial-module .et_pb_testimonial_author {
	color: #006EC7;
}
.et_pb_bg_layout_dark.testimonial-module .et_pb_testimonial_author {
	color: #fff;
}


/* testimonial meta */
.testimonial-module .et_pb_testimonial_position:after{
	content: '\A\A';
	white-space: pre;
}
.testimonial-module .et_pb_testimonial_separator {
	display: none;
}

/* testimonial button */
.testimonial-module .et_pb_testimonial_company a {
	text-decoration: none;
}

/* testimonial button for external links */
.et_pb_bg_layout_dark.testimonial-module .et_pb_testimonial_company:before,
.testimonial-module .et_pb_testimonial_company:before {
	content: '\f360';
	font-family: FontAwesome !important;
	font-weight: 900 !important;
	margin-left: -1.3em;
	margin-right: 8px;
	display: inline-block;
}
@media only screen and (min-width: 1281px) {
	.testimonial-module .et_pb_testimonial_company {
		border-radius: 12px;
		padding-top: 12px !important;
		padding-right: 20px !important;
		padding-bottom: 10px !important;
		padding-left: 42px !important;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.testimonial-module .et_pb_testimonial_company {
		border-radius: 10px;
		padding-top: 10px !important;
		padding-right: 18px !important;
		padding-bottom: 10px !important;
		padding-left: 38px !important;
	}
}
@media only screen and (max-width: 639px) {
	.testimonial-module .et_pb_testimonial_company {
		border-radius: 8px;
		padding-top: 10px !important;
		padding-right: 16px !important;
		padding-bottom: 9px !important;
		padding-left: 36px !important;
	}
}

/* testimonial button for internal links */
.et_pb_bg_layout_dark.testimonial-module.internal-link .et_pb_testimonial_company:before,
.testimonial-module.internal-link .et_pb_testimonial_company:before {
	display: none;
}
@media only screen and (min-width: 1281px) {
	.testimonial-module.internal-link .et_pb_testimonial_company {
		padding-left: 20px !important;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.testimonial-module.internal-link .et_pb_testimonial_company {
		padding-left: 18px !important;
	}
}
@media only screen and (max-width: 639px) {
	.testimonial-module.internal-link .et_pb_testimonial_company {
		padding-left: 16px !important;
	}
}

/* testimonial button – blue on white backgrounds */
.testimonial-module .et_pb_testimonial_company a,
.testimonial-module .et_pb_testimonial_company:before {
	color: #fff !important;
}
.testimonial-module .et_pb_testimonial_company:hover {
	filter: opacity(85%) brightness(50%);
}

/* testimonial button – white on dark backgrounds */
.et_pb_bg_layout_dark.testimonial-module .et_pb_testimonial_company {
	background-color: #ffffff !important;
}
.et_pb_bg_layout_dark.testimonial-module .et_pb_testimonial_company a,
.et_pb_bg_layout_dark.testimonial-module .et_pb_testimonial_company:before {
	color: #006ec7 !important;
}
.et_pb_bg_layout_dark.testimonial-module .et_pb_testimonial_company:hover a,
.et_pb_bg_layout_dark.testimonial-module .et_pb_testimonial_company:hover:before {
	color: #00559A !important;
}
.et_pb_bg_layout_dark.testimonial-module .et_pb_testimonial_company:hover {
	filter: opacity(85%) brightness(90%);
}


/* --- contact sections --- */

/* contact person column layout */
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.leftportrait-col {
		width: 22% !important;
		margin-right: 4% !important;
	}
	.contact-col-portrait {
		width: 74% !important;
	}
}
@media only screen and (max-width: 639px) {
	.leftportrait-col {
		width: 40% !important;
		margin-right: 60% !important;
	}
}

/* contact person: adjust spacing below headline */
.contactperson-contentrow {
	top: -18px;
}

/* contact information (blurb modules) side-by-side */
@media only screen and (min-width: 1280px) {
	.contact-col-portrait .et_pb_blurb,
	.contact-col .et_pb_blurb {
		display: inline-block;
		margin-right: 96px;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.contact-col-portrait .et_pb_blurb,
	.contact-col .et_pb_blurb {
		display: inline-block;
		margin-right: 48px;
	}
}

/* contact blurb icon position and text distance */
@media only screen and (min-width: 640px) {
	.contactblurb .et_pb_main_blurb_image {
		  padding-top: 4px;
	}
	.contactblurb .et_pb_blurb_container {
		padding-left: 8px;
	}
}
@media only screen and (max-width: 639px) {
	.contactblurb .et_pb_main_blurb_image {
		  padding-top: 2px;
	}
	.contactblurb .et_pb_blurb_container {
		padding-left: 2px;
	}
}

/* 2 column contact layout */
@media only screen and (min-width: 1281px) {
	.contact-col-1,
	.contact-col-2 { 
		width: calc(0.5 * (100% - 204px)) !important;
		max-width: 600px !important;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.contact-col-1,
	.contact-col-2 { 
		width: calc(0.5 * (100% - 120px)) !important;
	}
	.contact-col-1 {
		padding-right: 20px;
	}
	.contact-col-2 {
		padding-left: 20px;
  }
}
@media only screen and (max-width: 639px) and (min-width: 460px) {
	.contact-col-1,
	.contact-col-2 {
    width: calc(0.5 * (100% - 40px)) !important;
  }
  .contact-col-1 {
		padding-right: 20px;
	}
	.contact-col-2 {
		padding-left: 20px;
  }
}
@media only screen and (max-width: 459px) {
	.contact-col-1,
	.contact-col-2 {
		width: calc(100% - 40px) !important;
	}
	.contact-col-2 {
		padding-left: 40px;
		padding-top: 20px;
	}
}


/* --- teaser columns --- */

/* change stacking order */
.teasercol-image-l,
.teasercol-image-r,
.teasercol-image-r-single {
	display: flex;
	flex-wrap: wrap;
}
@media only screen and (max-width: 1280px) {
	.teasercolumns-imagecol {
		order: 1;
	}
	.teasercolumns-textcol {
		order: 2;
		margin-bottom: 0 !important;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.teasercolumns-imagecol {
		margin-bottom: 48px !important;
	}
}
@media only screen and (max-width: 639px) {
	.teasercolumns-imagecol {
		margin-bottom: 32px !important;
	}
}

/* teaser row widths */
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.teasercol-image-l .et_pb_column {
		padding-right: 25%;
	}
	.teasercol-image-r .et_pb_column {
		padding-left: 25%;
	}
	.teasercol-image-r-single .et_pb_column {
		padding-left: 0;
	}
}


/* --- logoteaser columns --- */
.logoteaser {
	display: flex;
	flex-wrap: wrap;
}
@media only screen and (min-width: 1280px) {
	.logoteaser-textcol {
		width: 46%!important;
		margin-right: 4%!important;
	}
	.logoteaser-logocol {
		width: 46% !important;
		margin: 24px 2%;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 640px) {
	.logoteaser-textcol {
		width: 42%!important;
		margin: 24px 8% 24px 0!important;
	}
	.logoteaser-logocol {
		width: 42%!important;
		margin: 48px 4%;
	}
}
@media only screen and (max-width: 639px) {
	.logoteaser-textcol {
		width: 100%!important;
		margin: 24px 0!important;
		order: 2;
	}
	.logoteaser-logocol {
		width: 100%!important;
		margin: 24px 0;
		padding-bottom: 24px;
		order: 1;
	}
}


/* --- counter kpi module --- */
@media only screen and (min-width: 600px) {
	.kpi-column-3-3 {
		width: 33.33%;
		padding-left: 8px;
		padding-right: 8px;
	}
}
@media only screen and (max-width: 599px) {
	.kpi-column-3-3 {
		padding-bottom: 48px;
	}
}


/* --- 404-page --- */

/* 404 background gradients */
.vio-gradient1-404 {
	background: radial-gradient(133.06% 100% at 100% 0%, #461EBE 0%, rgba(70, 30, 190, 0.00) 100%), #006EC7;	
}	
.vio-gradient4-404 {
	background: radial-gradient(165% 100% at bottom left, #461EBE 0%, rgba(70, 30, 190, 0.00) 100%), #006EC7;
}

/* 404-image position */
@media only screen and (min-width: 1281px) {
	.image-404 {
		margin-left: auto !important;
		margin-right: 15% !important;
	}
}
@media only screen and (max-width: 1280px) and (min-width: 800px) {
	.image-404 {
		margin-left: auto !important;
		margin-right: 20% !important;
	}
}
@media only screen and (max-width: 799px) and (min-width: 500px) {
	.image-404 {
		margin-left: auto !important;
		margin-right: 5% !important;
	}
}
@media only screen and (max-width: 499px) {
	.image-404 {
		margin-left: auto !important;
		margin-right: -24px !important;
	}
}


