/*
 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
------------------------------------------------------- */

/*---- FONTS ----*/
body, body p, body h1, body h2, body h3, body h4, body h5, body h6 {
	font-family: "basic-sans", sans-serif;
}

/*--- GOLDVERLAUF SCHRIFT ----*/

.highlight-verlauf, .highlight-verlauf span, .highlight-verlauf p, .highlight-verlauf h1, .highlight-verlauf h2, .highlight-verlauf h3, .highlight-verlauf h4, .highlight-verlauf h5, .highlight-verlauf h6, .speaker-carousel .dmpro-carousel-item-desc {
  background: linear-gradient(110deg,#bf9b30,#d7c178);
    background-clip: border-box;
  background-clip: border-box;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: #d7c178;
} 

/*---- SPALTENINHALT VERTIKAL ZENTRIEREN ----*/
 
.vertikal-zentrieren {
display: flex;
flex-direction: column;
justify-content: center;
}


/*---- SPALTENINHALT UNTEN AUSRICHTEN ----*/
 
.unten-ausrichten {
display: flex;
flex-direction: column;
justify-content: flex-end;
}

 /*---- SPALTENREIHENFOLGE MOBIL ÄNDERN ----*/
@media only screen and (max-width: 980px) {
	.change-col-order {
		display: flex; flex-wrap: wrap; 
	}
	.change-col-order .et_pb_column:first-child {
		order: 2;
		margin-bottom: 0;
	}
	.change-col-order .et_pb_column:last-child {
		order: 1;
		margin-bottom: 30px;
	}
}

/*---- MENÜ JUMP VERMEIDEN ----*/

@media only screen and (min-width: 981px) {
  .et_pb_section.hero_section_sub  {
    padding-top: 150px !important;
  }
}
@media only screen and (max-width: 980px) {
  .et_pb_section.hero_section_sub  {
    padding-top: 130px !important;
  }
}

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

#main-header .container {
  width: 90%;
  max-width: 1400px;
}

#top-menu li li {
	width: 100%;
}

#top-menu li li a {
	font-size: 90%;
	padding: 6px 0px;
	width: 100%;
}

#top-menu ul.sub-menu {
	width: 300px;
	border: 2px solid rgba(255,255,255,0.1);
	border-radius: 5px;
	box-shadow: 0px 2px 50px 0px rgba(245,233,190,0.15);
	margin-top: -12px;
	padding: 15px;
}


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

@media (max-width: 980px) {
	header img#logo {
	  opacity: 1;
	  visibility: visible;
	}
	header#main-header {
		background-color: transparent;
	}
	ul#mobile_menu {
		border: 2px solid rgba(255,255,255,0.1);
		border-radius: 5px;
		box-shadow: 0px 2px 50px 0px rgba(245,233,190,0.15);
		text-transform: uppercase;
		font-size: 13px;
	}
}


/*---- BUTTONS ----*/
.et_button_no_icon.et_button_icon_visible.et_button_left .et_pb_button, .et_button_no_icon.et_button_left .et_pb_button:hover, .et_button_no_icon .et_pb_button, .et_button_no_icon .et_pb_button:hover, #page-container .et_pb_module.et_pb_button_module_wrapper .et_pb_button, #page-container .et_pb_module.et_pb_button_module_wrapper .et_pb_button:hover {
	padding: .7em 1.8em !important;
	text-shadow: 1px 1px 4px rgba(0,0,0,0.15);
	transition: background-position 0.3s;
	background-size: 200%;
}
.et_pb_button:hover {
	background-position: right;
}



/*---- GALLERY SLIDER -----*/

.scroller__inner {
  padding-block: 0.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  will-change: transform;
  transform: translate3d(0, 0, 0);
}

@media only screen and (min-width: 2500px) {
	.scroller[data-animated="true"] {
	  overflow: hidden;
	  -webkit-mask: linear-gradient(
		90deg,
		transparent,
		white 20%,
		white 80%,
		transparent
	  );
	  mask: linear-gradient(90deg, transparent, white 15%, white 85%, transparent);
	}
}

.scroller[data-animated="true"] .scroller__inner {
  width: max-content !important;
  flex-wrap: nowrap;
  animation: scroll var(--_animation-duration, 150s)
    var(--_animation-direction, forwards) linear infinite;
}

.scroller[data-direction="right"], .scroller.data-direction-right .scroller__inner {
  --_animation-direction: reverse;
}

.scroller[data-direction="left"] {
  --_animation-direction: forwards;
}

.scroller[data-speed="fast"], .logoslide-zeile.scroller {
  --_animation-duration: 50s;
}

.scroller[data-speed="slow"] {
  --_animation-duration: 300s;
}

@keyframes scroll {
  to {
    transform: translate(calc(-50% - 0.5rem));
  }
}

/*--- GENERAL STYLES ---*/

.gallery-slider {
  margin: 0;
  padding-inline: 0;
  list-style: none;
}

.gallery-slider .et_pb_image {
	width: 16vw;
	max-width: 300px;
} 

@media only screen and (max-width: 782px) {
	.gallery-slider .et_pb_image {
		width: 50vw;
		max-width: 120px;
	}
	.scroller__inner {
		padding-block: 0.5rem;
	}
}

/*--- LOGO SLIDE STYLES ---*/

@media only screen and (min-width: 1200px) {
  .logoslide-zeile.scroller[data-animated="true"] {
    overflow: hidden;
    -webkit-mask: linear-gradient( 90deg, transparent, white 20%, white 80%, transparent );
    mask: linear-gradient(90deg, transparent, white 15%, white 85%, transparent);
  }
}

.logoslide-zeile .gallery-slider .et_pb_image {
  width: 18vw;
  max-width: 200px;
  padding: 15px 30px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  opacity: 0.7;
  transition: all 350ms ease-out;
}
.logoslide-zeile .gallery-slider .et_pb_image:hover {
	opacity: 1;
}

@media only screen and (max-width: 782px) {
	.logoslide-zeile .gallery-slider .et_pb_image  {
		width: 25vw;
		max-width: 150px;
		  padding: 5px 10px;
	}
}


/*---- GRAVITY FORMS ----*/
.gform_wrapper.gravity-theme .gfield_label {
	font-size: 14px;
	line-height: 1.4em;
}

.gform_wrapper.gravity-theme input[type="text"], .gform_wrapper.gravity-theme input[type="tel"], .gform_wrapper.gravity-theme input[type="email"], .gform_wrapper.gravity-theme textarea, .gform_wrapper.gravity-theme select {
  background: #fff !important;
  border-radius: 5px;
  border: 1px solid #fff !important;
  padding: 9px 18px;
  color: #000000 !important;
  box-shadow: 6px 6px 30px 0px rgba(0,0,0,0.05);
}

.gform_heading {
	position: absolute;
  bottom: -20px;
  right: -20px;
  text-align: right;
  font-size: 85%;
  font-weight: 500;
}

body .gform_wrapper select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url('/wp-content/uploads/2025/04/angle-down-solidwhite.webp') !important;
  background-repeat: no-repeat !important;
  background-position:
right 10px center !important;
  background-size: 28px !important;
}

div .gform_wrapper.gravity-theme .gfield_description:not(.validation_message) {
  font-size: 11px;
	padding-top: 6px;
	padding-left: 20px;
  line-height: 1.3em;
}

body .gform_wrapper input::placeholder,
body .gform_wrapper input::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.45);
  opacity: 1 !important;
}

.gform_wrapper.gravity-theme .gfield-choice-input {
  margin-top: 5px;
  vertical-align: top;
}
.gform_wrapper.gravity-theme .gfield-choice-input + label {
	line-height: 1.2em;
}

/*--- BUTTON ---*/

.gform_wrapper .gform_button, .gform_wrapper .gform_next_button, .gform_wrapper .gform_previous_button {
  font-size: 16px;
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 10px 20px;
  font-weight: 600;
  transition: all 350ms ease-out;
  cursor: pointer;
  width: 100%;
  background:#000;
  color: #fff;
  cursor: pointer;
}
.gform_button:hover, .gform_next_button:hover, .gform_previous_button:hover {
  opacity: 0.75;
}


/*--- ERROR MESSAGE ---*/
.gform_wrapper.gravity-theme .gfield_error legend, .gform_wrapper.gravity-theme .gfield_error label {
  color: #000000;
}
.gform_wrapper.gravity-theme .gform_validation_errors:focus {
  outline: none;
}
.gform_submission_error.hide_summary {
  color: #c02b0a !important;
}

div.gform_wrapper.gravity-theme .gfield_validation_message, div.gform_wrapper.gravity-theme .validation_message {
  padding: 0px;
  border: none;
  background-color: transparent;
  font-size: 80%;
  line-height: 1.2em;
}

/*--- RESPONSIVE ---*/
@media (max-width: 1197px) {
  .gform_wrapper.gravity-theme .gfield_label {
    font-size: 13px;
  }
  .gform_wrapper.gravity-theme input[type="text"], .gform_wrapper.gravity-theme input[type="tel"], .gform_wrapper.gravity-theme input[type="email"], .gform_wrapper.gravity-theme textarea, .gform_wrapper.gravity-theme select {
    font-size: 95%;
  }
}
@media (max-width: 980px) {
   .gform_wrapper.gravity-theme input:not([type="radio"]):not([type="checkbox"]):not([type="image"]):not([type="file"]) {
    line-height: 1.4em;
  }
}
