/*
 Theme Name: Divi-Mastermind-Child-Theme
 Theme URI: https://www.divimastermind.com/
 Description: Dies ist ein <b>ready-to-start</b> Child-Theme f&uuml;r Divi. Entwickelt und bereitgestellt von den Divi Masterminds. Dieses Theme beinhaltet alle notwendigen Dateien, um den schnellen und einfach Start zu erm&ouml;glichen.
 Author: Divi Mastermind - Benny Hozjan und Frank Oschatz
 Author URI: https://divimastermind.com/
 Template: Divi
 Version: 1.0.0
 Tag: divi, child-theme, rawbone, easy-to-use, mastermind, german-group, 
 License: GNU General Public License v2 or later
 License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/


/*  ==================================================================
	STANDARD CSS =====================================================
	==================================================================  */
	
	#wpadminbar {
    z-index: 9999999;
	}
	
	* {
	margin:0;
	padding:0;
	box-sizing: border-box;
	}
	html {
	font-size: 62.5%;
	}

	/* toolbar sticky by scroll */
	.mce-top-part {
	position: sticky!important;
	top: -60px;
	}

	/*increase the height of the Divi inner field settings modal*/
	.et-fb-field-settings-modal {
	  max-height: 500px!important;
	}

/*increase the height of the Divi inner field settings modal*/
	.et-fb-field-settings-modal {
	  max-height: 600px!important;
	}


/* Align Buttons in bottom of a row */
	.lem_fixed_buttons .et_pb_column {
	padding-bottom:20px;}
	.lem_fixed_buttons .et_pb_button_module_wrapper {
	    	position: absolute;
			bottom: 0;
			left: 0;
			right: 0;
			margin: auto;
	}

/* Dropdown Fix */
	.dropdown_fix ul {
	right: 0px !important;
	}

/* Menü */
nav#top-menu-nav ul#top-menu li.menu-item a.mPS2id-highlight {
  color: #777777!important; /* Passe hier Deine gewünschte Farbe an */
}


/* Fliestext */
	.et_pb_module.et_pb_text p,
	.et_pb_module.et_pb_text ul li,
	.et_pb_toggle.et_pb_module.et_pb_accordion_item .et_pb_toggle_content,
	.et_pb_toggle.et_pb_module.et_pb_accordion_item .et_pb_toggle_content ul li,
	.janolaw-paragraph {
  	font-size: clamp(1.8rem, 2vw, 2rem);
  	line-height: clamp(1.8rem, 2vw, 2.9rem);
  	font-weight: 300;
	}
	
	
	/* Hyperlinks */
	.et_pb_module.et_pb_text a,
	.et_pb_module.et_pb_post_content a {
  	font-size: clamp(1.8rem, 2vw, 2rem);
  	line-height: clamp(1.8rem, 2vw, 2.9rem);
  	font-weight: 300;
  	color: #64020E;
  	text-decoration: none;
	}

/* Öffnungszeiten */
	.et_pb_module.dsm_business_hours_child {
  	font-size: 18px;
  	line-height: 2.9rem;
	}

	
	
	/* Business Days Überschriften */ 
	.et_pb_module.et_pb_text p.openingdays,
	.et_pb_module.et_pb_blurb p.openingdays {
    font-size: clamp(1.8rem, 2vw, 1.8rem);
  	line-height: clamp(1.8rem, 2vw, 2.3rem);
  	font-weight: 500;
	}

/* Footer */

	.et_pb_column .et_pb_module h3.footer,
	.et_pb_column .et_pb_module p.footer,
	.et_pb_column .et_pb_module a.footer {
		font-size: 1.6rem!important;
		line-height: 2.1rem!important;
	}
	
/* Footer Credits */

	.et_pb_column .et_pb_module h3.lem-credits,
	.et_pb_column .et_pb_module p.lem-credits,
	.et_pb_column .et_pb_module a.lem-credits {
		font-size: 1.4rem;
		line-height: 2.1rem;
	}
	
	.et_pb_column .et_pb_module a.lem-credits {
		text-decoration: underline;
	}


/* H1-H6 Überschriften */
	.et-db .et-boc #et-main-area .et-l .et_pb_section .et_pb_column .et_pb_module h1,
	.et-db .et-boc #et-main-area .et-l .et_pb_section .et_pb_column .et_pb_module h1.main_h1 {
		font-size: clamp(3rem, 6vw, 7rem);
		line-height: clamp(3rem, 6vw, 7rem);
		font-weight: 500!important;
	}
	
	.et-db .et-boc #et-main-area .et-l .et_pb_section .et_pb_column .et_pb_module.et_pb_text p.sub_p {
		font-size: clamp(2rem, 6vw, 4rem);
		line-height: clamp(2rem, 6vw, 4rem);
		font-weight: 800;
	}

	.et-db .et-boc #et-main-area .et-l .et_pb_section .et_pb_column .et_pb_module.et_pb_text h1.sub_h1 {
	font-size: clamp(2rem, 6vw, 8rem);
	line-height: clamp(2rem, 6vw, 6rem);
	font-weight: 300!important;
	}
	
	/*.et_pb_column .et_pb_module.et_pb_text p.sub_p {
	font-size: clamp(2rem, 6vw, 6rem);
	line-height: clamp(2rem, 6vw, 6rem);
	}*/

	.et-db .et-boc #et-main-area .et-l .et_pb_section .et_pb_column .et_pb_module h2,
	.et_pb_section .et_pb_column .et_pb_module .wpfd-content.wpfd-content-ggd .wpfd-container.show_category_title .wpfd-col.wpfd-container-ggd .wpfd-categories h2 {
	  	font-size: clamp(2.7rem, 2vw, 4rem);
		line-height: clamp(2.7rem, 3vw, 4rem);
		font-weight: 300!important;
	}
	
	.et_pb_column .et_pb_module h2.brand {
	  text-transform: uppercase;
	}
	
	.et_pb_section .et_pb_column .et_pb_module .wpfd-content.wpfd-content-ggd .wpfd-container.show_category_title .wpfd-col.wpfd-container-ggd .wpfd-categories h2 {
		color: #009fe3!important;
	}
	
	.et-db .et-boc #et-main-area .et-l .et_pb_section .h2_v2 .dipi-text h2.dipi-hover-box-heading,
	.et-db .et-boc #et-main-area .et-l .et_pb_section .et_pb_module .et_pb_text_inner h2.h2_v2 {
		font-size: clamp(2.2rem, 2vw, 2.5rem)!important;
		line-height: clamp(2.2rem, 2vw, 2.5rem)!important;
		font-weight: 500!important;
	}
	
	
	
	.et-db .et-boc #et-main-area .et-l .et_pb_section .et_pb_column .et_pb_module h3 {
	  	font-size: clamp(2.3rem, 2vw, 2.8rem);
		line-height: clamp(2.3rem, 2vw, 2.8rem);
	}
	.et-db .et-boc #et-main-area .et-l .et_pb_section .et_pb_column .et_pb_module h4 {
	  	font-size: clamp(2.3rem, 2vw, 2.8rem);
		line-height: clamp(2.3rem, 2vw, 2.8rem);
	}
	.et-db .et-boc #et-main-area .et-l .et_pb_section .et_pb_column .et_pb_module h5 {
	  	font-size: clamp(2.3rem, 2vw, 2.8rem);
		line-height: clamp(2.3rem, 2vw, 2.8rem);
	  	font-weight:900;
	}
	.et-db .et-boc #et-main-area .et-l .et_pb_section .et_pb_column .et_pb_module h6 {
	  	font-size: clamp(2.3rem, 2vw, 2.8rem);
		line-height: clamp(2.3rem, 2vw, 2.8rem);
	}






:root {
    --primary-color: #2C2C2C; /* Dunkelgrau – statt #333333 */
    --accent-color: #777777; /* Mittelgrau */
    --accent-color-light: #CCCCCC; /* Hellgrau für Hover-Effekte */
    --error-color: #000000; /* Schwarz für Fehlermeldungen */
    --background-gray: #FFFFFF; /* Reines Weiß als Grundfläche */
    --text-color: #000000; /* Reines Schwarz */
    --placeholder-color: rgba(0, 0, 0, 0.5); /* Halbtransparentes Schwarz */
    --success-background: rgba(119, 119, 119, 0.15); /* dezentes Mittelgrau */
    --error-background: rgba(0, 0, 0, 0.05); /* sehr helles Grau für Fehlermeldung */
}

/*  ==================================================================
	GRAVITY FORMS ====================================================
	================================================================== */

/* Allgemeine Stile für Formularfuß */
html body article .et-l .et_pb_section .et_pb_module .gform_wrapper form .gform_footer.top_label,
footer .et_pb_section .et_pb_module .gform_wrapper form .gform_footer.top_label {
	margin-top: 1.5em;
	padding: 1em 0;
	border-top: 1px solid var(--accent-color-light);
	float: left;
	width: 98%;
	margin-right: 2%;
}

/* Stile für Textfelder, Auswahlfelder und Eingaben */
html body article .et-l .et_pb_section .et_pb_module .gform_wrapper .gform_body .gform_fields .gfield input[type=email],
html body article .et-l .et_pb_section .et_pb_module .gform_wrapper .gform_body .gform_fields .gfield select,
html body article .et-l .et_pb_section .et_pb_module .gform_wrapper .gform_body .gform_fields .gfield input[type=text],
html body article .et-l .et_pb_section .et_pb_module .gform_wrapper .gform_body .gform_fields .gfield input[type=number],
footer .et_pb_section .et_pb_module .gform_wrapper .gform_body .gform_fields .gfield input[type=email],
footer .et_pb_section .et_pb_module .gform_wrapper .gform_body .gform_fields .gfield select,
footer .et_pb_section .et_pb_module .gform_wrapper .gform_body .gform_fields .gfield input[type=text],
footer .et_pb_section .et_pb_module .gform_wrapper .gform_body .gform_fields .gfield input[type=number] {
	border: 1px solid var(--accent-color);
	border-radius: 3px;
	padding: 0 1.5rem;
	background: var(--background-gray);
	color: var(--text-color);
	height: 45px;
	box-sizing: border-box;
}

/* Fokus-Stile für Eingaben */
html body article .et-l .et_pb_section .et_pb_module .gform_wrapper .gform_body .gform_fields .gfield input:focus,
footer .et_pb_section .et_pb_module .gform_wrapper .gform_body .gform_fields .gfield input:focus {
	border-color: var(--accent-color-light);
	background: rgba(255, 255, 255, 1.0);
	outline: none;
}

/* Textarea */
html body article .et-l .et_pb_section .et_pb_module .gform_wrapper textarea,
footer .et_pb_section .et_pb_module .gform_wrapper textarea {
	border: 1px solid var(--accent-color);
	border-radius: 3px;
	padding: 1rem;
	background: var(--background-gray);
	color: var(--text-color);
	font-size: 1.6rem;
	min-height: 120px;
	width: 100%;
	box-sizing: border-box;
	resize: vertical;
}

html body article .et-l .et_pb_section .et_pb_module .gform_wrapper textarea:focus,
footer .et_pb_section .et_pb_module .gform_wrapper textarea:focus {
	border-color: var(--accent-color-light);
	background: rgba(255, 255, 255, 1.0);
	outline: none;
}

/* Absende-Button */
html body article .et-l .et_pb_section .et_pb_module .gform_wrapper .gform_footer input.button,
footer .et_pb_section .et_pb_module .gform_wrapper .gform_footer input.button {
	background-color: var(--background-gray) !important; /* Weiß */
	border: 1px solid var(--text-color) !important; /* Schwarzer Rahmen */
	color: var(--text-color) !important; /* Schwarze Schrift */
	text-transform: uppercase;
	padding: 1.3rem 2.5rem !important;
	cursor: pointer;
	transition: 0.3s;
	font-size: 1.4rem;
}

html body article .et-l .et_pb_section .et_pb_module .gform_wrapper .gform_footer input.button:hover,
footer .et_pb_section .et_pb_module .gform_wrapper .gform_footer input.button:hover {
	background-color: var(--text-color) !important; /* Schwarz */
	color: var(--background-gray) !important; /* Weiß */
	border-color: var(--text-color) !important;
}

/* Labels */
html body article .et-l .et_pb_section .et_pb_module .gform_wrapper .gform_body .gform_fields .gfield .gfield_label,
footer .et_pb_section .et_pb_module .gform_wrapper .gform_body .gform_fields .gfield .gfield_label {
	color: var(--text-color);
	font-weight: 400;
	font-size: 1.6rem;
}

/* Fehlermeldungen */
html body article .et-l .et_pb_section .et_pb_module .gform_wrapper .gform_validation_errors h2.gform_submission_error,
footer .et_pb_section .et_pb_module .gform_wrapper .gform_validation_errors h2.gform_submission_error {
	font-size: 1.6rem;
	font-weight: 400;
	color: var(--error-color);
}

html body article .et-l .et_pb_section .et_pb_module .gform_wrapper .gform-body > div.gform_fields > div > div.validation_message.gfield_validation_message,
footer .et_pb_section .et_pb_module .gform_wrapper .gform-body > div.gform_fields > div > div.validation_message.gfield_validation_message {
	border: solid 1px var(--error-color);
	border-radius: 5px;
	color: var(--error-color);
	padding: 1.2rem;
}

/* Platzhalter-Stile */
html body article .et-l .et_pb_section .et_pb_module .gform_wrapper .gform_body .gform_fields .gfield input::placeholder,
footer .et_pb_section .et_pb_module .gform_wrapper .gform_body .gform_fields .gfield input::placeholder {
	color: var(--placeholder-color);
}