/*
 Theme Name:     Divi Child Theme
 Theme URI:      http://www.elegantthemes.com
 Description:    Child Theme for Divi Theme by Elegant Themes
 Author:         Divi.world
 Author URI:     http://divi.world
 Template:       Divi
 Version:        1.0.0
*/
 
/* =Ab hier kannst du deine CSS-Anpassungen eintragen
------------------------------------------------------- */

/* Parent column with buttons side-by-side */
.two-buttons {
  display: flex;
  gap: 16px;          /* Abstand zwischen Buttons */
  flex-wrap: wrap;    /* Zeilenumbruch falls wenig Platz */
}

/* Divi setzt Modul-Margins – entfernen, damit gap gilt */
.two-buttons .et_pb_button_module_wrapper {
  margin: 0 !important;
}

/* Mobile: untereinander & volle Breite */
@media (max-width: 767px) {
  .two-buttons { flex-direction: column; }
  .two-buttons .et_pb_button { width: 100%; text-align: center; }
}

strong {
	font-family: 'Playfair - Bold',Helvetica,Arial,Lucida,sans-serif;
}

.feature-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 20px;
  margin: 0 auto;
}

.feature-item {
  text-align: left;
	margin-bottom: 1rem;
	display: flex;
	flex-wrap: wrap;
}

.feature-item .icon {
  width: 48px;
  height: 48px;
  background-color: #000; /* Schwarzer Hintergrund wie im Screenshot */
  border-radius: 12px;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
	display: flex;
	flex: 0 0 15%;
}

#menu-primary .icon {
	width: 35px;
	height: 35px;
	border-radius: 12px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0;
}
.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: contents;
}

#menu-primary .icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.feature-item .icon img  {
  width: 24px;
  height: 24px;
  object-fit: contain;
  filter: invert(1); /* Weißes Icon auf schwarzem Hintergrund */
}

.feature-item h3 {
  font-family: 'Montserrat - Semibold',Helvetica,Arial,Lucida,sans-serif;
	margin-left: 1rem;
  letter-spacing: 3px;
	line-height: 19px;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 1rem;
  margin-bottom: 10px;
	display: flex;
	flex: 0 0 75%;
	align-items: anchor-center;
}

.feature-item p {
  padding-right: 1rem;
  color: #777;
  font-size: 0.95rem;
  line-height: 1.6;
	display: flex;
	flex: 0 0 100%;
}

#menu-primary li {
	flex: unset;
	padding: 0;
}

#menu-primary li a {
	margin-right: 1rem !important;
}

#menu-primary li:nth-last-child(-n+4) {
	flex: unset;
}

#menu-primary li:nth-child(1) {
  margin-left: auto;
}

#menu-primary li:nth-child(7) {
  margin-left: auto;
}

#menu-primary .tippy-content .et_pb_blurb_container .et_pb_module_header {
	margin-left: 1rem;
	padding-top: 8px; 
	padding-bottom: 4px;
	text-decoration: none;
	border-bottom: 1px solid black;
}

#menu-primary #tippy-1, #menu-primary #tippy-3, #menu-primary #tippy-5, #menu-primary #tippy-7, #menu-primary #tippy-9 {
	top: -18px !important;
}

.tippy-arrow {
	display: none;
}

/*change hamburger icon to x when mobile menu is open*/

#et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before,
.et_pb_module.et_pb_menu .et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before {
	content: '\4d';
}


/*adjust the new toggle element which is added via jQuery*/

ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
ul.et_mobile_menu li.page_item_has_children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.page_item_has_children .mobile-toggle {
	width: 44px;
	height: 100%;
	padding: 0px !important;
	max-height: 44px;
	border: none;
	position: absolute;
	right: 0px;
	top: 0px;
	z-index: 999;
	background-color: transparent;
}


/*some code to keep everyting positioned properly*/

ul.et_mobile_menu>li.menu-item-has-children,
ul.et_mobile_menu>li.page_item_has_children,
ul.et_mobile_menu>li.menu-item-has-children .sub-menu li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.page_item_has_children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.menu-item-has-children .sub-menu li.menu-item-has-children {
	position: relative;
}


/*remove default background color from menu items that have children*/

.et_mobile_menu .menu-item-has-children>a,
.et-db #et-boc .et-l .et_mobile_menu .menu-item-has-children>a {
	background-color: transparent;
}


/*hide the submenu by default*/

ul.et_mobile_menu .menu-item-has-children .sub-menu,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu {
	display: none !important;
	visibility: hidden !important;
}


/*show the submenu when toggled open*/

ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible {
	display: block !important;
	visibility: visible !important;
}


/*adjust the toggle icon position and transparency*/

ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle {
	text-align: center;
	opacity: 1;
}


/*submenu toggle icon when closed*/

ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after {
	top: 10px;
	position: relative;
	font-family: "ETModules";
	content: '\33';
	color: black;
	padding: 0;
	font-size: 18px;
}


/*submenu toggle icon when open*/

ul.et_mobile_menu li.menu-item-has-children.dt-open>.mobile-toggle::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children.dt-open>.mobile-toggle::after {
	content: '\32';
}


/*add point on top of the menu submenu dropdown*/

.et_pb_menu_0.et_pb_menu .et_mobile_menu:after {
	position: absolute;
	right: 5%;
	margin-left: -20px;
	top: -14px;
	width: 0;
	height: 0;
	content: '';
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
	border-bottom: 20px solid #ffffff;
}


/*adjust the position of the hamburger menu*/

.mobile_menu_bar {
	position: relative;
	display: block;
	bottom: 10px;
	line-height: 0;
}


/*force the background color and add a rounded border*/

.et_pb_menu_0.et_pb_menu .et_mobile_menu,
.et_pb_menu_0.et_pb_menu .et_mobile_menu ul {
	background-color: #ffffff!important;
	border-radius: 10px;
}

.et_pb_menu .et_pb_menu__menu>nav {
	width: 100%;
}

.et_mobile_menu .icon {
	padding-top: 11px;
    width: 50px;
    background-color: black;
    height: 100%;
    display: block;
    text-align: center;
    border-radius: 10px;
}

.et_mobile_menu .icon img {
	filter: invert(1); 
	width: 30px;
}

#menu-primary .sub-menu {
	display: none;
}


#worth-knowing .et_pb_tabs_controls,
#worth-knowing.et_pb_tabs,
#worth-knowing .et_pb_tabs_controls:after, 
#worth-knowing .et_pb_tabs_controls li {
	background-color: transparent;
	border: 0;
}

#worth-knowing .et_pb_tabs_controls li {
	text-align: left;
}

#worth-knowing .et_pb_tabs_controls li.et_pb_tab_active a {
	border-bottom: 1px solid #B9936E;
	padding: 3px 30px;
}

#worth-knowing .et_pb_tabs .et_pb_tabs_controls li a {
	padding: .75rem;
}



/* Megamenu*/
.sub-menu>.menu-item>a{
	text-transform:none !important;
	    font-family: 'Poppins Bold', Helvetica, Arial, Lucida, sans-serif !important;
	font-size: 16px;
	display:flex;
	align-items:center;
	gap: 10px;
}



.dipi-balloon-open-et_header_layout-0 .tippy-arrow, .dipi-balloon-open-et_header_layout-0 .tippy-arrow, .tippy-arrow{
	color: #f8f7f3 !important;
}

#tippy-1, #tippy-3, #tippy-5{
	margin-left: -0.45%;
	max-width:100vw;
	top:-51px !important;
	z-index:999 !important;
}

.menu-item-13>.sub-menu {
	display:none !important;
}

.et_pb_sticky.et_pb_section_0_tb_header.et_pb_section{
	box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

.et_pb_menu .et-menu>li {
	padding-left: 20px;
	padding-right:20px;
}

/*Collapsed Menu*/
/* Proper Collapsable Mobile Menu */
/* Style the icon's placeholder */
ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
ul.et_mobile_menu li.page_item_has_children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.page_item_has_children .mobile-toggle {
  width: 44px;
  height: 100%;
  padding: 0px !important;
  max-height: 44px;
  position: absolute;
  right: 0px;
  top: 0px;
  z-index: 999;
  background-color: transparent;
  border-bottom: 0;
  text-align: center;
}

ul.et_mobile_menu > li.menu-item-has-children,
ul.et_mobile_menu > li.page_item_has_children,
ul.et_mobile_menu > li.menu-item-has-children .sub-menu li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu > li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu > li.page_item_has_children,
.et-db #et-boc .et-l ul.et_mobile_menu > li.menu-item-has-children .sub-menu li.menu-item-has-children {
  position: relative;
}

.et_mobile_menu .menu-item-has-children > a,
.et-db #et-boc .et-l .et_mobile_menu .menu-item-has-children > a {
  background-color: transparent;
}

/* Hide the Sub-menu */
ul.et_mobile_menu .menu-item-has-children .sub-menu,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu {
  display: none !important;
  visibility: hidden !important;
}

/* Show the sub-menu when the + icon is clicked */
ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible {
  display: block !important;
  visibility: visible !important;
}

/* Create the opening/closing icon using the SVG Icons */
ul.et_mobile_menu li.menu-item-has-children .mobile-toggle .dt-icons,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle .dt-icons {
  top: 10px;
  position: relative;
}

/* Hide the closing icon if the sub-menu is not open */
ul.et_mobile_menu li.menu-item-has-children:not(.dt-open) .mobile-toggle .dt-close-icon,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children:not(.dt-open) .mobile-toggle .dt-close-icon {
  display: none;
}

/* Hide the opening icon if the sub-menu is open */
ul.et_mobile_menu li.menu-item-has-children.dt-open > .mobile-toggle .dt-open-icon,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children.dt-open > .mobile-toggle .dt-open-icon {
  display: none;
}

/*change Divi hamburger menu to X*/
.mobile_nav.opened .mobile_menu_bar:before {
    content: '\4d';
}

@media (max-width: 980px) { 

	.et_pb_menu .et_pb_menu__menu {
		display: none;
	}
	
}

/* Bewertungen */

.ti-widget.ti-goog .ti-controls .ti-prev {
	left: -50px !important;
}

.ti-widget.ti-goog .ti-controls .ti-next {
	right: -50px !important;
}

.ti-widget.ti-goog .ti-controls .ti-next, .ti-widget.ti-goog .ti-controls .ti-prev  {
	background-color: transparent !important;
}


/*--------------------------Kontaktformular--------------------------*/
.one-second.column{
	width: 48%;
}
 .one-third.column {
    width: 31.333%;
}

.wpcf7-form .column {
    margin-bottom: 10px;
}

.column {
    float: left;
    margin: 0 1% 40px;
}

.one.column {
    width: 98%;
}

span.wpcf7-form-control-wrap {
    width: 100%;
    position: relative!important;
    display: inline-block;
    margin-bottom: 3px;
}

span.wpcf7-form-control-wrap .wpcf7-date, span.wpcf7-form-control-wrap .wpcf7-quiz, span.wpcf7-form-control-wrap .wpcf7-number, span.wpcf7-form-control-wrap .wpcf7-select, span.wpcf7-form-control-wrap .wpcf7-text, span.wpcf7-form-control-wrap .wpcf7-textarea{
	width: 100%;
    box-sizing: border-box;
    margin-bottom: 0;
}

input.text, input.title, input[type=email], input[type=password], input[type=tel], input[type=text], select, textarea, .wpcf7-date, .wpcf7-select{
padding: 0.75rem;
    border: 1px solid #bbb;
    color: #4e4e4e;
    background-color: #fff;
}

span.wpcf7-form-control-wrap .wpcf7-date, span.wpcf7-form-control-wrap .wpcf7-quiz, span.wpcf7-form-control-wrap .wpcf7-number, span.wpcf7-form-control-wrap .wpcf7-select, span.wpcf7-form-control-wrap .wpcf7-text, span.wpcf7-form-control-wrap .wpcf7-textarea {
    font-size: 17px;
}
	
label {
	font-family: 'Montserrat - Regular',Helvetica,Arial,Lucida,sans-serif !important;
    font-size: 16px;
    display: block;
    margin-bottom: 5px;
    font-weight: 700;
}

input[type="submit"] {
color: #FFFFFF !important;
    border-width: 0px !important;
    border-radius: 5px;
    letter-spacing: 3px;
    font-size: 13px;
    font-family: 'Montserrat - Medium', Helvetica, Arial, Lucida, sans-serif !important;
    text-transform: uppercase !important;
    background-color: #B9936E;
	padding: 1rem 3rem;
}
input[type="submit"].button_full_width {
    width: 100%;
    text-align: center;
}

@media (max-width: 980px){
	.column.one-second, .column.one-third {
		width: 100%;
	}
}

.wpcf7-form-control.wpcf7-radio .wpcf7-list-item-label{
	font-size: 17px;
}

.contact-heading{
	font-family: 'Montserrat - Regular',Helvetica,Arial,Lucida,sans-serif;
    font-size: 30px;
}


.single-angebot .et_pb_section:first-child, .single-angebot .et_pb_row:first-child {
	padding-top: 0 !important;
}

.dp-dfg-header.entry-header {
	padding-top: 4rem;
}


footer .wpcf7-form-control{
	border: none;
	color: black;
}

footer .wpcf7-form-control::placeholder {
		color: #C9BCAA;
	letter-spacing: 3px;
		text-transform: uppercase;
	font-size: 14px;
}


/* Container */
.cf7-gutschein { background:#E4E0D4; color: black; padding:24px; border-radius: 1rem; }

/* Überschriften im Stil */
.cf7-gutschein .cf7g-head {
  color: #B9936E;
  margin:28px 0 12px;
  letter-spacing:.3px;
	text-transform: uppercase;
}

/* kleine Beschreibungen */
.cf7-gutschein .cf7g-note { margin:0 0 12px; color: black; }

/* Grid für 2 Spalten, bricht mobil um */
.cf7-gutschein .cf7g-grid {
  display:grid; gap:14px; grid-template-columns: 1fr 1fr;
}

.cf7-gutschein a {
	color: #B9936E;
}
@media (max-width: 640px) { .cf7-gutschein .cf7g-grid { grid-template-columns: 1fr; } }

/* Labels & Felder */
.cf7-gutschein label { display:block; font-weight:600; margin-bottom:8px; }
.cf7-gutschein input[type="text"],
.cf7-gutschein input[type="email"],
.cf7-gutschein input[type="tel"],
.cf7-gutschein input[type="number"],
.cf7-gutschein textarea {
  width:100%; background: #F5F4EF; color: black;
 	padding:12px 14px; border-radius:2px;
	border: 0;
	margin-top: .5rem;
}
.cf7-gutschein textarea { min-height:140px; }

/* Checkboxen */
.cf7-gutschein input[type="checkbox"] { transform: scale(1.1); margin-right:8px; }

.cf7-gutschein .cf7g-actions input[type="submit"]:hover {
  filter: brightness(0.95);
}

.cf7-gutschein .cf7g-actions {
	margin-top: 1.5rem;
}

.cf7-row { display:flex; gap:1rem; }
.cf7-half { flex:1; }
.wpcf7-form label { display:block; margin:.5rem 0 .25rem; font-weight:600; }
.wpcf7-form .wpcf7-form-control { width:100%; }
.cf7-privacy { margin-top:.75rem; }


.et-db #et-boc .et-l .et_pb_slider:hover .et-pb-arrow-next,
.et-db #et-boc .et-l .et_pb_slider:hover .et-pb-arrow-prev {
	color: white !important;
}

.et-db #et-boc .et-l .et_pb_bg_layout_light .et-pb-controllers .et-pb-active-control {
	background-color: white;
}

.et-db #et-boc .et-l .et_pb_bg_layout_light .et-pb-controllers a {
	background-color: rgb(255 255 255 / 30%);
}

header.et-l--header:not(.et-fb-root-ancestor-sibling) {
	position: absolute;
	top: 10px;
}

header .et_builder_inner_content {
	position: absolute;
	top: -15px;
}


/* Basis-Positionierung */
.kbe-dropdown { position: relative; }

.kbe-dropdown .kbe-dropdown-menu {
  position: absolute;
  left: 0;
  top: auto !important;      /* nach oben, nicht nach unten */
  bottom: 150% !important;   /* direkt über dem Trigger */
  margin-bottom: .5rem;
  z-index: 9999;
}

.DayPicker {
  top: auto !important;
  bottom: 100% !important; 
}

.bf-search-bar-item-label, .bf-date-range-picker-input {
	font-family: 'Montserrat - Regular',Helvetica,Arial,Lucida,sans-serif;
}

@media screen and (max-width: 980px) {
	
header.et-l--header:not(.et-fb-root-ancestor-sibling) {
	position: unset;
	top: unset;
}

header .et_builder_inner_content {
	position: unset;
	top: -unset;
}
}

