/*
Theme Name:     Divi Child
Theme URI:      http://www.elegantthemes.com
Description:    Divi Child
Template:       Divi
Version:        1.0.0
*/

/* =NAV & FOOTER
------------------------------------------------------- */
:root {
  --blue: #4954a0;
  --white: #ffffff;
  --lightblue: #7d7fbc;  
}
body {
    -ms-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
	font-family:'Roboto', sans-serif;
}
.header-flex-col{
	display:flex;
	flex-direction:row;
}
#slide-in-open{
	cursor: pointer;
	width: 35px;
	height: 35px;
	margin: auto 0 auto auto;
}
.line{
	display: block;
	position: absolute;
	height: 5px;
	width: 100%;
	background: var(--blue);
	opacity: 1;
	-webkit-transition: .1s ease-in-out;
	-moz-transition: .1s ease-in-out;
	-o-transition: .1s ease-in-out;
	transition: .1s ease-in-out;
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	transform: rotate(90deg);
	width: 35px;
	top:1rem;
}
.line-2 {
	-webkit-transform: rotate(0);
	-moz-transform: rotate(0);
	-o-transform: rotate(0);
	transform: rotate(0);
}
#slide-in-open.open .line-1 {
	top: 10px;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-o-transform: rotate(135deg);
	transform: rotate(135deg);
}
#slide-in-open.open .line-2 {
	top: 10px;
	-webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	-o-transform: rotate(-135deg);
	transform: rotate(-135deg);
}
.slide-in-menu {
	right: 0 !important;
	opacity: 1 !important;
}
.slide-in-menu-container {
	-webkit-transition: all 0.5s ease !important;
	-moz-transition: all 0.5s ease !important;
	-o-transition: all 0.5s ease !important;
	-ms-transition: all 0.5s ease !important;
	transition: all 0.5s ease !important;
}
.nav li ul {
	position: relative;
	padding: 0;
	margin:0;
	z-index: 9999;
	width: auto;
	background: transparent;
	visibility: visible;
	opacity: 1;
	border: 0;
	box-shadow: none;
	text-align: left;
	top: auto;
	left: auto;
	right: auto;
	display: block;
	font-family:'Roboto', sans-serif;
}
.et_pb_menu .et-menu-nav > ul ul  {
	padding: 0;
	margin:0 0 1rem 0;
}
.et_pb_menu .et_pb_menu__menu > nav > ul > li:last-child ul {
	margin:0;
}
.nav li ul li, .nav li ul li a {
	padding: 0;
	margin: 0;
	font-weight: 400;
	width: 100%;
}
.nav > ul > li > a {
	display: block;
	text-align: left;
	padding: 0;
	margin: 0;
	position: relative;
}
nav > ul > li > a {
	text-transform: uppercase;
	font-weight: 700;
	font-size: 1.1rem !important;
	font-family: 'Montserrat', sans-serif !important;
}
.nav li li {
	width: 100%;
	line-height: 18px;
}
.et_mobile_menu li a:hover, .nav ul li a:hover{
	background:none;
	color:var(--blue)!important;
}
.et_pb_menu_0_tb_header.et_pb_menu ul li a:hover, 
.et_pb_menu_0_tb_header.et_pb_menu ul li.current-menu-item a:hover, 
.et_pb_menu_0_tb_header.et_pb_menu .nav li ul.sub-menu a:hover, 
.et_pb_menu_0_tb_header.et_pb_menu .nav li ul.sub-menu li.current-menu-item a:hover, 
.et_pb_menu_0_tb_header.et_pb_menu .et_mobile_menu a:hover {
	color:var(--blue)!important;
}
.et_pb_menu .et_pb_menu__menu, .et_pb_menu .et_pb_menu__menu > nav, .et_pb_menu .et_pb_menu__menu > nav > ul{
	display:block;
}
.et_pb_menu .et_pb_menu__menu > nav > ul > li{
	display:block;
}
.et-menu .menu-item-has-children > a:first-child::after {
	display: none;
}
.full-height .et_pb_column {
	margin: auto !important;
}
.footer-logos .et_pb_gallery_item{
	width: 20% !important; 
	padding: 0;
	margin:0 15px 15px 0!important;
	clear: none !important;
	cursor:default;
}
.footer-logos .et_pb_gallery_item a{
	cursor:default;
}

@media screen and (max-width: 980px) {
	.et_pb_menu__menu {
		display: block;
	}
	.mobile_menu_bar {
		display: none;
	}
}

/* =FORM
------------------------------------------------------- */
.form-wrapper {
	font-family: 'Roboto', sans-serif;
	font-weight:300;
	font-size:16px;
}
.form-row{
	display:block;
	margin-bottom:1rem;
}
.form-wrapper .form-row label{
	display:block;
	font-weight:300;
}
.wpcf7-select,
.wpcf7-text,
.wpcf7-textarea{
	background:#f0f0f0!important;
	padding:1rem!important;
	border:none!important;
	width:100%!important;
	font-family: 'Roboto', sans-serif;
	font-weight:300;
	font-size:16px;
}
.wpcf7-checkbox .wpcf7-list-item {
	margin: 0;
}
.wpcf7-submit{
	color: var(--white) !important;
	border-width: 0 !important;
	border-radius: 0px;
	font-family: 'Montserrat',Helvetica,Arial,Lucida,sans-serif !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	padding: .7rem 3rem;
	background-color: var(--blue);
	font-size:20px;
	cursor:pointer;
}
.wpcf7 form .wpcf7-response-output{
	font-family: 'Roboto', sans-serif;
	font-weight:300;
	font-size:16px;
	padding:1rem;
}

/* =SLIDER
------------------------------------------------------- */
.dc-carousel .flickity-viewport .flickity-slider > .et_pb_row{
	margin:0 1.5rem!important;
	height: 350px!important;
	width:350px!important;
}
.dc-carousel .flickity-viewport .flickity-slider{
	display: flex;
}
.dc-carousel{
	padding:0 5rem 3rem 5rem!important;
	overflow:hidden;
}
.dc-carousel .flickity-viewport {
  overflow: visible;
}
.flickity-prev-next-button {
  top: calc(50% - 22px);
  width: 44px;
  height: 44px;
  border-radius: 0;
  transform: translateY(-50%);
}
.flickity-button {
  position: absolute;
  background: transparent;
  border: none;
  color: var(--lightblue);
}
.flickity-button:hover {
  background: transparent;
}

/* =POPUP
------------------------------------------------------- */
.popup-wrapper {
	margin:2rem;
}
.popup-wrapper h3{
	font-family: 'Montserrat',Helvetica,Arial,Lucida,sans-serif;
	font-weight: 300;
	font-size: 2.8rem;
	color: var(--blue)!important;
	line-height: 1.2em;
}
.popup-wrapper h5{
	font-weight: 500;
	font-size: 20px;
	color: #666666 !important;
}
.popup-wrapper p{
	color: #666666 !important;
	font-weight: 300;
}
.popup-wrapper p.intro{
	margin-bottom:2rem;
}
.popup-wrapper a{
	text-decoration:underline;
	font-weight:500;
	color:var(--blue);
}
.popup-wrapper .popup-logo{
	margin-bottom:2rem;
}
.popup-row{
	display:flex;
	flex-direction:row;
}
.popup-col-1{
	width:56%;
	margin-right:10%;
}
.popup-col-2{
	width:33%;
}

@media screen and (max-width: 980px) {
	.popup-col-1{
		width:100%;
		margin-right:0;
	}
	.popup-col-2{
		width:100%;
	}
	.popup-row{
		flex-direction:column;
	}
}

/* =BLOG
------------------------------------------------------- */
.background-transition{
	background-size:100%;
	transition:all ease-in-out .5s;
}
.background-transition:hover{
	background-size:105%;
	transition:all ease-in-out .5s;
}
.blog-post-teaser.blog-post-teaser-full-width .et_pb_post {
	margin-bottom:0;
	position: relative;
	min-height:40vh;
	overflow: hidden;
	margin-bottom: 2rem!important;
}
.blog-post-teaser.blog-post-teaser-full-width .et_pb_post a{
	display: block;
	width:100%;
	transition:all ease-in-out .5s;
	height: 100%;
}
.blog-post-teaser.blog-post-teaser-full-width .et_pb_post img{
	margin-bottom:0;
	width:100%;
	min-height:40vh;
	object-fit: cover;
	object-position: center center;
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
}
.blog-post-teaser.blog-post-teaser-full-width .et_pb_post .post-content{
	display:none;
}
.blog-post-teaser.blog-post-teaser-full-width .et_pb_post h2{
	position: absolute;
	top:calc(50% - 1.5rem);
	left:3rem;
	font-weight: 500;
	color:#fff;
	text-transform:uppercase;
	font-size:3rem;
}
.blog-post-teaser.blog-post-teaser-full-width .et_pb_post:hover a{
	width:105%;
	transition:all ease-in-out .5s;
}
.blog-post-teaser.blog-post-teaser-col-3 .et_pb_salvattore_content,
.blog-post-teaser.blog-post-teaser-col-2 .et_pb_salvattore_content{
	display: flex;
	gap: 2rem;
}
.blog-post-teaser.blog-post-teaser-col-3 .et_pb_post,
.blog-post-teaser.blog-post-teaser-col-2 .et_pb_post{
	margin-bottom:0;
	position: relative;
	overflow: hidden;
	border:0;
	min-height: 350px;
	padding: 0;
	margin-bottom: 2rem!important;
}
.blog-post-teaser.blog-post-teaser-col-3 .et_pb_image_container,
.blog-post-teaser.blog-post-teaser-col-2 .et_pb_image_container{
	height:100%;
	width:100%;
	margin:0;
	padding:0;
}
.blog-post-teaser.blog-post-teaser-col-3 .et_pb_post a,
.blog-post-teaser.blog-post-teaser-col-2 .et_pb_post a{
	display: block;
	height:100%;
	width:auto;
	transition:all ease-in-out .5s;
	min-height: 350px;
	padding: 0;
	margin: 0;
}
.blog-post-teaser.blog-post-teaser-col-3 .et_pb_post img,
.blog-post-teaser.blog-post-teaser-col-2 .et_pb_post img{
	margin-bottom:0;
	height:100%;
	width:auto;
	object-fit: cover;
	object-position: center center;
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	transition:all ease-in-out .5s;
}
.blog-post-teaser.blog-post-teaser-col-3 .et_pb_post h2,
.blog-post-teaser.blog-post-teaser-col-2 .et_pb_post h2{
	position: absolute;
	top:calc(50% - 1rem);
	left:0;
	font-weight: 500;
	color:#fff;
	text-transform:uppercase;
	font-size:1.8rem;
	padding:0 2rem;
}
.blog-post-teaser.blog-post-teaser-col-3 .et_pb_post:hover a img,
.blog-post-teaser.blog-post-teaser-col-2 .et_pb_post:hover a img{
	height:110%;
	transition:all ease-in-out .5s;
}
.blog-post-teaser.blog-post-teaser-col-2 .column:first-child  {
	width: calc(66.66% + 2rem)!important;
}
.blog-post-teaser.blog-post-teaser-col-2 .column:nth-child(3)  {
	display: none;
}
.blog-post-teaser .et_pb_post:after{
	content:'';
	position:absolute;
	bottom:1rem;
	right:1rem;
	width: 0; 
	height: 0; 
	border-top: 15px solid transparent;
	border-bottom: 15px solid transparent;   
	border-left:15px solid #fff; 
	visibility:visible;
	cursor:pointer;
}
.blog-post-teaser.blog-post-news .et_pb_salvattore_content{
	display: flex;
	gap: 2rem;
}
.blog-post-teaser.blog-post-news .et_pb_post{
	margin-bottom:0;
	position: relative;
	border:0;
	padding: 0;
	margin-bottom: 2rem!important;
	min-height:auto!important;
}
.blog-post-teaser.blog-post-news .et_pb_image_container{
	height:100%;
	width:100%;
	margin:0;
	padding:0;
	overflow:hidden;
}
.blog-post-teaser.blog-post-news .et_pb_post .et_pb_image_container a{
	display: block;
	height:100%;
	width:auto;
	transition:all ease-in-out .5s;
	min-height: 350px;
	padding: 0;
	margin: 0;
}
.blog-post-teaser.blog-post-news .et_pb_post img{
	margin-bottom:0;
	height:100%;
	width:auto;
	object-fit: cover;
	object-position: center center;
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	transition:all ease-in-out .5s;
}
.blog-post-teaser.blog-post-news .et_pb_post h2{
	position: absolute;
	top:0;
	left:0;
	text-transform: uppercase;
	color: #FFFFFF !important;
	font-size: 18px;
	line-height: 1em;
	font-weight: 500;
	font-size:2rem;
	padding:2rem;
}
.blog-post-teaser.blog-post-news .et_pb_post:hover a img{
	height:110%;
	transition:all ease-in-out .5s;
}
.blog-post-teaser.blog-post-news .column:nth-child(2)  {
	width: calc(66.66% + 2rem)!important;
}
.blog-post-teaser.blog-post-news .column:nth-child(3)  {
	display: none;
}
.blog-post-teaser.blog-post-news-3col .column:nth-child(2)  {
	width: 33.33%!important;
}
.blog-post-teaser.blog-post-news-3col .column:nth-child(3)  {
	display: inline;
}
.blog-post-teaser.blog-post-news .post-content{
	display:block;
	  font-family: 'Roboto',Helvetica,Arial,Lucida,sans-serif;
	  font-weight: 300;
	  font-size: 18px;
	margin-top:1rem;
}
.blog-post-teaser.blog-post-news .post-content-inner{
	height:47px;
	overflow: hidden;
}
.blog-post-teaser.blog-post-news .more-link{
	color: var(--white) !important;
	border-width: 0 !important;
	border-radius: 0px;
	font-family: 'Montserrat',Helvetica,Arial,Lucida,sans-serif !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	padding: .7rem 3rem;
	background-color: var(--blue);
	font-size:20px;
	cursor:pointer;
	text-align: center;
	margin:1rem 0 0 0;
	display:block;
}
.blog-post-teaser.blog-post-news .et_pb_post:after{
	display: none;
}

@media screen and (max-width: 1250px) {
	.blog-post-teaser .et_pb_post:after{
		bottom:2rem;
	}
}
@media screen and (max-width: 980px) {
	.blog-post-teaser .et_pb_post:after{
		bottom:2rem;
	}
	.blog-post-teaser.blog-post-teaser-col-3 .et_pb_salvattore_content,
	.blog-post-teaser.blog-post-teaser-col-2 .et_pb_salvattore_content{
		display: flex;
		flex-direction:column;
		gap: 0;
	}
	.blog-post-teaser.blog-post-teaser-col-3 .column,
	.blog-post-teaser.blog-post-teaser-col-2 .column,
	.blog-post-teaser.blog-post-teaser-col-2 .column:first-child  {
		width: 100%!important;
		display: block;
	}
}


/* =HOVER BOX
------------------------------------------------------- */
.hover-box{
	background: #fff!important;
	border:1px solid var(--blue);
	height:310px;
	transition:all ease-in-out .5s;
}
.hover-box:hover{
	background: var(--blue)!important;
	border:1px solid var(--blue);
	transition:all ease-in-out .5s;
}
.hover-box .et_pb_image{
	display: block;
}
.hover-box:hover .et_pb_image{
	display: none;
}
.hover-box .et_pb_text{
	display: none;
}
.hover-box:hover .et_pb_text{
	display: block;
}
.hover-box{
	display: flex;
	flex-direction: column;
}
.hover-box .et_pb_image{
	display: block;
	margin:auto!important;
}
.hover-box .et_pb_text{
	font-size: 16px;
	line-height: 18px;
    hyphens: none;
}

.wpcf7-list-item {
  margin: 0;
}
.checkbox-row .wpcf7-list-item{
  margin: .3rem 0;
}
.pum-theme-233 .pum-content, .pum-theme-hello-box .pum-content{
	color:#666666;
}
.checkbox-row .wpcf7-form-control-wrap{
	display:block!important;
	font-weight: 500;
	width:100%;
}
.checkbox-row .wpcf7-form-control-wrap label{
	font-weight: 500;
	margin-top:.5rem;
}
.checkbox-row .checkbox-text{
	display:block!important;
	width:100%;
	margin-bottom:.5rem!important;
}
.checkbox-row{
	margin-bottom: 2rem;
}

/* =FRAGEBOGEN
------------------------------------------------------- */
.scale{
	display: flex;
	flex-direction: row;
	padding:.5rem 0 1rem 0;
}
.scale-text-left,.scale-text-right{
	align-content: center;
	justify-content: center;
	font-weight: 600;
	background:#f0f0f0;
	padding:.5rem 1rem;
	margin:.2rem;
	font-size:14px;
}
.scale .wpcf7-form-control-wrap .wpcf7-radio{
	display: flex;
	flex-direction: row;
		align-content: center;
	justify-content: center;
}
.scale .wpcf7-radio .wpcf7-list-item{
	display: flex;
	flex-direction: column-reverse;
	padding:0 1rem;
	text-align: center;
	background:#f0f0f0;
	padding:.5rem;
	margin:.2rem;
	font-size:14px;
}

.scale .wpcf7-radio .wpcf7-list-item input[type='radio'] {
    accent-color: var(--blue);
	width:18px;
	height:18px;
}

.questionnaire-form h3{
  font-family: 'Montserrat',Helvetica,Arial,Lucida,sans-serif;
  font-weight: 300;
  font-size: 22px;
  color: var(--blue);
	margin-bottom: 1rem;
}
.questionnaire-form h4{
	margin-top:1rem;
	font-family: 'Roboto',Helvetica,Arial,Lucida,sans-serif;
  font-weight: 500;
  font-size: 16px;
  color: #666666 !important;
}
.questionnaire-form .form-row{
	border:1px solid var(--blue) !important;
	padding:2rem;
}
.questionnaire-form .form-row-last{
	background:transparent;
	padding:0;
}
.questionnaire-form .kc_captcha{
	margin-bottom:1rem;
}
.questionnaire-form textarea{
	height:80px;
}

@media screen and (max-width: 980px) {
	.scale{
		display: block;
		text-align: center;
		padding:.5rem 0 1rem 0;
	}
	.scale .wpcf7-form-control-wrap .wpcf7-radio{
	flex-direction: column;
}
	.scale .wpcf7-radio .wpcf7-list-item{
	display: block;
	padding:.5rem 1rem;
	text-align: center;
}
}

/* PAGINATION */
.paginated-section .et_pb_row{
	margin-bottom:2rem!important;
	display:flex;
}
.paginated-section .et_pb_row .et_pb_column{
	height:unset!important;
}
.pagination-controls {
    text-align: center;
    margin-top: 20px;
}
.pagination-controls button {
    padding: 8px 12px;
    margin: 5px;
    cursor: pointer;
    border: none;
    background: transparent;
    color: #666666;
    border-radius: 5px;
    font-size: 14px;
}
.pagination-controls button.active {
    background: transparent;
	position: relative;
	color:#6068a0;
}
.pagination-controls button:disabled {
    background: transparent;
    cursor: not-allowed;
	color:#b6b6b6;
}
.pagination-controls .dots {
    margin: 0 8px;
    font-size: 16px;
    font-weight: bold;
}
.download-column{
	display: flex;
	align-content: center;
	justify-content: center;
	align-items: center;
	width:15%!important;
	transition: all .5s ease-in-out;
}
.download-column:hover{
	background:#6068a0;
	transition: all .5s ease-in-out;
}
.download-column img{
	max-width: 60px;
}
.img-column{
	width:25%!important;
}
.text-column{
	width:60%!important;
}

@media (max-width:980px){
.download-column{
	width:100%!important;
	display: block!important;
	min-height: 80px;
}
.img-column{
	width:100%!important;
	display: block!important;
	min-height: 160px;
}
.text-column{
	width:100%!important;
	display: block!important;
}	
.paginated-section .et_pb_row{
flex-direction: column;
}
}