/*
 Theme Name:     Divi Child Theme
 Theme URI:      http://www.elegantthemes.com
 Description:    Child Theme for Divi Theme by Elegant Themes
 Author:         3 Plus Solutions
 Author URI:     https://www.3plus.solutions
 Template:       Divi
 Version:        1.0.2
*/
 
/* =Ab hier kannst du deine CSS-Anpassungen eintragen
------------------------------------------------------- */
/* urbanist-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 300;
  src: url('/wp-content/uploads/fonts/urbanist-v18-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* urbanist-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 400;
  src: url('/wp-content/uploads/fonts/urbanist-v18-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* urbanist-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Urbanist';
  font-style: italic;
  font-weight: 400;
  src: url('/wp-content/uploads/fonts/urbanist-v18-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* urbanist-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 500;
  src: url('/wp-content/uploads/fonts/urbanist-v18-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* urbanist-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Urbanist';
  font-style: italic;
  font-weight: 500;
  src: url('/wp-content/uploads/fonts/urbanist-v18-latin-500italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* urbanist-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 600;
  src: url('/wp-content/uploads/fonts/urbanist-v18-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* urbanist-600italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Urbanist';
  font-style: italic;
  font-weight: 600;
  src: url('/wp-content/uploads/fonts/urbanist-v18-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* urbanist-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 700;
  src: url('/wp-content/uploads/fonts/urbanist-v18-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* urbanist-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Urbanist';
  font-style: italic;
  font-weight: 700;
  src: url('/wp-content/uploads/fonts/urbanist-v18-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* urbanist-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 800;
  src: url('/wp-content/uploads/fonts/urbanist-v18-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* urbanist-800italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Urbanist';
  font-style: italic;
  font-weight: 800;
  src: url('/wp-content/uploads/fonts/urbanist-v18-latin-800italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* urbanist-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Urbanist';
  font-style: normal;
  font-weight: 900;
  src: url('/wp-content/uploads/fonts/urbanist-v18-latin-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* urbanist-900italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Urbanist';
  font-style: italic;
  font-weight: 900;
  src: url('/wp-content/uploads/fonts/urbanist-v18-latin-900italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/*---- BACK TO TOP BUTTON ----*/
.et_pb_scroll_top:before {
    content: '!';
}
.et_pb_scroll_top.et-pb-icon {
    background: #fff;
    color: #000;
    padding: 12px;
    font-size: 22px;
    right: 20px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
    border-radius: 50%;
	bottom: 15px;
	left: 15px;
	right: auto;
}
.et_pb_scroll_top.et-pb-icon:hover {
    background: #000;
    color: #fff;
}
.et_pb_scroll_top.et-pb-icon.et-visible {
    transition: all .3s ease-in-out;
}

.et_pb_scroll_top.et-visible {
  animation: fadeInLeft 0.5s ease forwards;
}

.et_pb_scroll_top.et-hidden {
  animation: fadeOutLeft 0.5s ease forwards;
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translateX(-50px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fadeOutLeft {
  from {
    opacity: 1;
    transform: translateX(0);
  }
  to {
    opacity: 0;
    transform: translateX(-50px);
  }
}


/*---- TEXT MODULE OPTIMIZATION ----*/
:where(.et_pb_text) :is(p,ul,ol,blockquote) ~ :is(h1,h2,h3,h4,h5,h6) {
  padding-top:.75em;
}

:where(.et_pb_text) p:last-of-type {
  padding-bottom:1em;
}
:where(.et_pb_text) :is(p,ul,ol,blockquote):last-child, :where(.et_pb_text) :is(h1,h2,h3,h4,h5,h6):last-child {
  padding-bottom:0;
}

:where(.et_pb_text) ::marker {
  color:var(--gcid-primary-color);
  font-family:var(--et_global_heading_font);
}
:where(.et_pb_text) :is(ol,ul) li:not(:last-child) {
  padding-bottom:.5em;
}

:where(.et_pb_text) blockquote {
  border:none;
  position:relative;
  padding:.5em 1em;
  margin:.5em 0 1.5em;
}
:where(.et_pb_text) blockquote::after {
  content:'〞';
  color:var(--gcid-primary-color);
  position:absolute;
  font-size:4em;
  left:-.15em;
  top:.2em;
}
:where(.et_pb_text) blockquote::before {
  content:'';
  background:var(--gcid-primary-color);
  opacity:0.1;
  width:100%;
  height:100%;
  position:absolute;
  z-index:-1;
  left:0; 
  top:0;
  border-radius:5px;
}

:where(.et_pb_text) a {
  position: relative;
  text-decoration: none;
  color: inherit;
}

:where(.et_pb_text) a::after, :where(.et_pb_blurb_description) p a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: var(--gcid-primary-color);
  transform-origin: left;
  transform: scaleX(0);
  transition: transform .4s cubic-bezier(.25, .8, .25, 1);
}

:where(.et_pb_blurb_description) p a::after {
	bottom: -4px;
}

:where(.et_pb_text) a:hover::after, :where(.et_pb_blurb_description) p a:hover::after {
  transform: scaleX(1);
}


/*---- OUTLINE TEXT ----*/
.outline-text {
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke: 1.25px;
  text-transform: uppercase;
  font-weight: 900;
/* text-shadow: 2px 2px 0px rgba(126,194,66,0.25); */
}

/*---- MENÜ ----*/


@media (max-width: 1280px) {
	#main-header .container {
		width: calc(100% - 35px);
	}
}
.mobile_menu_bar::before, .mobile_menu_bar::after, #top-menu li.current-menu-ancestor > a, #top-menu li.current-menu-item > a {
  color: var(--gcid-primary-color);
}

#top-menu-nav > ul > li > a:hover {
  opacity: 1;
}

@media (max-width: 1050px) {
  #top-menu-nav {
    display: none !important;
  }
  #et_mobile_nav_menu {
    display: block !important;
  }
}
/*--- HOVER MENÜPUNKT ---*/
.menu-item::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 2px;
    background-color: var(--gcid-primary-color);
    transition: width 0.3s ease-in-out;
}

.menu-item:hover::after {
    width: 100%;
}

.sub-menu .menu-item::after,
.menu-cta::after {
    content: none;
}

@media only screen and (min-width: 981px) {
	ul#top-menu > li > a {
		transition: all 0.4s ease-out;	
	}
	#main-header ul#top-menu > li > a {
		padding-bottom: 8px;
	}
	#top-menu li {
		padding: 0;
		margin: 0 15px 30px;
		transition: all .3s ease;
	}
	.et-fixed-header ul#top-menu li.menu-item {
		margin-bottom: 12px;
	}
	.et-fixed-header ul#top-menu li {
	  margin-bottom: 24px;
	}
	.menu-item {
    position: relative;
    text-decoration: none;
    display: inline-block;
	}
	/*--- AKTIVER MENÜPUNKT ---*/
	.current-menu-item, 
	.current-menu-parent  {
		position: relative;
		text-decoration: none;
		display: inline-block;
	}

	.current-menu-item:not(.menu-cta)::after,
	.current-menu-parent:not(.menu-cta)::after {
		content: '';
		position: absolute;
		left: 0;
		bottom: 0;
		width: 100%;
		height: 2px;
		background-color: var(--gcid-primary-color);
	}
}
.menu-cta.current-menu-item {
  background-color: transparent !important;
}

/*--- MENÜ BUTTON ---*/
ul#top-menu.nav li.menu-cta a, .et_header_style_left .et-fixed-header #et-top-navigation nav > ul > li.menu-cta > a {
	background-color: var(--gcid-primary-color);
	color: #fff !important;
	padding: 9px 16px !important;
	margin-top: -12px;
	margin-bottom: -12px;
	border-radius: 60px;
	border: 2px solid var(--gcid-primary-color);
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

ul#top-menu.nav li.menu-cta a:hover, .et_header_style_left .et-fixed-header #et-top-navigation nav > ul > li.menu-cta > a:hover, #mobile_menu.et_mobile_menu li.menu-cta a:hover {
	opacity: 1 !important;
	background-color: #fff;
	color: var(--gcid-primary-color) !important;
}


/*---- SPECIAL ICON BUTTONS ----*/
body #page-container .et_pb_section .et_pb_module .et_pb_button.special-icon-button,
body.et-db #page-container #et-boc footer.et-l .et_pb_section .et_pb_button.special-icon-button
{
	padding-right: 1em !important;
	padding-left: 3.5em !important;
}
body #page-container .et_pb_section .et_pb_button.special-icon-button::before,
body.et-db #page-container #et-boc footer.et-l .et_pb_section .et_pb_button.special-icon-button::before,
body #page-container .et_pb_section .et_pb_button.fullwidth-special-icon-button::after {
	font-size: 1.25em !important;
	background-color: var(--gcid-primary-color);
	margin-left: -2.65em !important;
	height: calc(100% - 5px);
	aspect-ratio: 1/1;
	border-radius: 100px;
	display: flex !important;
	justify-content: center;
	align-items: center;
}
body #page-container .et_pb_section .et_pb_button.special-icon-button:hover:before,
body.et-db #page-container #et-boc footer.et-l .et_pb_section .et_pb_button.special-icon-button:hover:before,
body #page-container .et_pb_section .et_pb_button.fullwidth-special-icon-button:hover:after {
	background-color: #fff;	
	color: var(--gcid-primary-color);
	margin-left: -2.65em !important;
	justify-content: center !important;
	align-items: center !important;
	font-size: 1.25em !important;
	display: flex !important;

}

/*---- FULLWIDTH SPECIAL ICON BUTTONS ----*/
body #page-container .et_pb_section .et_pb_module .et_pb_button.fullwidth-special-icon-button {
	padding-right: 3.5em !important;
	padding-left: 3.5em !important;	
}
body #page-container .et_pb_section .et_pb_button.fullwidth-special-icon-button::after {
	position: absolute;
	right: 0.15em;
	margin-left: 0 !important;
}


/*---- TRUSTINDEX WIDGET ----*/
body .ti-widget[data-layout-id="104"][data-set-id="soft"] .ti-header {
  box-shadow: 1px 4px 10px 0px rgba(0, 0, 0, 0.1), 0px 5px 15px 0px rgba(0, 0, 0, 0.1);
}

body .ti-widget[data-layout-id="104"][data-set-id="soft"] .ti-disclaimer {
  font-size: 90%;
}

/*---- GRAVITY FORMS ----*/

.gform_wrapper.gravity-theme .gfield_label { 
	color: #333; 
}

.gform_wrapper.gravity-theme .gform-field-label.gfield_consent_label{
  color: #333;
  font-size: 17px;
}

.gform_wrapper.gravity-theme .field_description_below .gfield_description.gfield_consent_description {
	border: none;
	font-size: 14px;
	margin-top: 12.8px;
	max-height: auto;
	overflow-y: hidden;
	padding: none;
	width: 100%;
}

.gform_wrapper.gravity-theme .gform_button {
	padding: 9px 16px !important;
	border-radius: 60px;
	border: 2px solid var(--gcid-primary-color);
	background-color: var(--gcid-primary-color);
	color: #fff; 
	font-size: 17px;
	font-weight: 600;
}

.gform_wrapper.gravity-theme .gform_button:hover {
background-color: #fff;
  color: var(--gcid-primary-color) !important;
}

/*---- Sichbarkeit Icons im Toggle ----*/
.et_animated {
  opacity: 1;
}