/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

/*
body, html, * {
    outline: 1px solid red;
}*/

img.subpage-image {
    border-radius: 8px !important;
}

@media (min-width: 600px) and (max-width: 1180px) {
  .subpage-header + * {
    padding-left: 32px;
    padding-right: 32px;
  }
}


/* Quickmenu */

.leistungen h4 a {
    text-decoration: none;
    color: var(--Brand-black);
	display: inline-flex;
	border: 1px solid var(--gray-200);
    border-radius: 30px;
    padding: 4px 16px;
	margin-bottom: 16px;
	box-shadow: var(--shadow-xs);
		moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;

}


.leistungen h4 a:hover{
	color: var(--accent) !important;
	box-shadow: var(--shadow-sm);
	background: var(--gray-50);
}

.service_arrow {
			moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.service:hover .service_arrow{
    transform: translate(6px, -4px);
}



/*
* === MEGA MENU ===
*/
@media (min-width: 769px) {
    nav .main-nav .mega-menu {
        position: static;
    }

    nav .main-nav .mega-menu > ul {
        position: absolute;
        width: 100%;
        left: 0 !important;
        display: flex;
        flex-wrap: wrap;
    }

    nav .main-nav .mega-menu > ul > li > a {
        font-weight: bold;
    }

    nav .main-nav .mega-menu>ul>li {
        display: inline-block;
        width: 25%;
        vertical-align: top;
    }

    nav .main-nav .mega-menu.mega-menu-col-2>ul>li {
        width: 50%;
    }

    nav .main-nav .mega-menu.mega-menu-col-3>ul>li {
        width: 33.3333%;
    }

    nav .main-nav .mega-menu.mega-menu-col-5>ul>li {
        width: 20%;
    }

    nav .main-nav .mega-menu > ul > li:hover > a,
    nav .main-nav .mega-menu > ul > li:focus > a,
    nav .main-nav .mega-menu > ul > li[class*="current-"] > a,
    nav .main-nav .mega-menu ul ul {
        background-color: transparent !important;
        color: inherit;
    }

    nav .main-nav .mega-menu ul .sub-menu {
        position: static;
        display: block;
        opacity: 1;
        visibility: visible;
        width: 100%;
        box-shadow: 0 0 0;
        left: 0;
        height: auto;
        pointer-events: auto;
        transform: scale(1);
    }

    nav .main-nav .mega-menu ul.toggled-on .sub-menu {
        pointer-events: auto;
    }

    nav .main-nav .mega-menu .sub-menu .menu-item-has-children .dropdown-menu-toggle {
        display: none;
    }
}

/* Splide & Arrows Styling */

.wp-block-splide-carousel .splide__track--draggable {
	overflow: visible;
}



.splide__slide {
    width: 360px !important;
}

@media only screen and (max-width: 480px) {

	.splide__slide {
    width: 288px !important;
}

}


button.splide__arrow.splide__arrow--next svg, button.splide__arrow.splide__arrow--prev svg {
    display: none; /* Versteckt die ursprünglichen SVGs */
}

button.splide__arrow.splide__arrow--prev,
button.splide__arrow.splide__arrow--next {
    width: 56px !important;
    height: 56px !important;
    background: no-repeat center center;
    background-size: 18px 18px;
    border: none; /* Optional: Entferne den Rahmen */
    cursor: pointer; /* Optional: Zeige den Mauszeiger als Hand */
	border-radius: 1.75rem;
	border: 1px solid var(--Gray-200, #EAECF0);
}

button.splide__arrow.splide__arrow--prev {
    background-image: url('data:image/svg+xml,<svg width="14" height="14" viewBox="0 0 16 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15 8.09473H1M1 8.09473L8 15.0947M1 8.09473L8 1.09473" stroke="%23D51130" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

button.splide__arrow.splide__arrow--next {
    background-image: url('data:image/svg+xml,<svg width="14" height="14" viewBox="0 0 16 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 8.09473H15M15 8.09473L8 1.09473M15 8.09473L8 15.0947" stroke="%23D51130" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

button.splide__arrow.splide__arrow--prev:hover,
button.splide__arrow.splide__arrow--next:hover {
    background-color: #D51130;
}

button.splide__arrow.splide__arrow--prev:hover {
    background-image: url('data:image/svg+xml,<svg width="14" height="14" viewBox="0 0 16 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15 8.09473H1M1 8.09473L8 15.0947M1 8.09473L8 1.09473" stroke="%23FFFFFF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

button.splide__arrow.splide__arrow--next:hover {
    background-image: url('data:image/svg+xml,<svg width="14" height="14" viewBox="0 0 16 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 8.09473H15M15 8.09473L8 1.09473M15 8.09473L8 15.0947" stroke="%23FFFFFF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

/*
* === HOME PAGE ===
*/
.splide__arrows {
	position: absolute;
  bottom: -96px;
  left: 64px;
}
.box-shadow-xs {
  box-shadow: var(--shadow-xs);
	moz-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}

.box-shadow-xs:hover {
  box-shadow: var(--shadow-xl);
} 

.box-shadow-sm {
  box-shadow: var(--shadow-sm);
}
.color-back {
	color: var(--contrast);
}
.blur-backdrop {
	backdrop-filter: blur(10px);
}
@media(max-width: 768px) {
	.splide__arrows {
		display: none;
	}
}





/* Split Text */
.split-type-text .char {
            opacity: 0.25;
        }

/* Menu item descriptions */

@media (max-width: 768px) {
ul.sub-menu {
    display: flex;
    width: 100% !important;
    padding: 0px;
	border-radius: 0px;
    border: none;
    background: var(--Base-White, #FFF) !important;
    box-shadow: 0px 12px 16px -4px rgba(16, 24, 40, 0.08), 0px 4px 6px -2px rgba(16, 24, 40, 0.03) !important;
	}
.sub-menu li{
    display: flex !important;
    width: 301px !important;
    min-width: 240px;
    padding: 12px;
    align-items: center !important;
    gap: 16px;
    flex-shrink: 0;
    flex-direction: column;
	border-radius: 8px;
  moz-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}}
	
	ul.sub-menu {
    display: flex;
    width: 640px;
    padding: var(--spacing-lg, 12px);
    align-items: flex-start;
    align-content: flex-start;
    gap: var(--spacing-xs, 4px) var(--spacing-lg, 12px);
    flex-wrap: wrap !important;
	border-radius: 12px;
    border: 1px solid var(--Gray-200, #EAECF0);
    background: var(--Base-White, #FFF) !important;
    box-shadow: 0px 12px 16px -4px rgba(16, 24, 40, 0.08), 0px 4px 6px -2px rgba(16, 24, 40, 0.03) !important;
	}


.sub-menu li{
    display: flex !important;
    width: 301px !important;
    min-width: 240px;
    padding: 12px;
    align-items: flex-start;
    gap: 16px;
    flex-shrink: 0;
    flex-direction: column;
	border-radius: 8px;
  moz-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}

.sub-menu li:hover { 
	background: var(--Gray-50, #F9FAFB) !important;
}

.sub-menu li a {
	padding: 0px !important;
}

.menu-item .description {
	  margin-top: 4px;
	padding: 12px)
gap: var(--spacing-xs, 4px) var(--spacing-lg, 12px);
 display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
align-self: stretch;
overflow: hidden;
color: var(--Gray-600, #475467);
text-overflow: ellipsis;
font-family: Inter;
font-size: 14px;
font-style: normal;
font-weight: 400;
line-height: 20px; /* 142.857% */
}

/* Borlabs CSS*/

#BorlabsCookieBox .brlbs-cmpnt-w-4,
.brlbs-cmpnt-container .brlbs-cmpnt-w-4 {
  width: 28px;
  height: 28px;
}

.brlbs-cmpnt-dialog-footer.brlbs-cmpnt-dialog-bar-links.brlbs-flex-wrap {
  display: none !important;
}

#BorlabsCookieBox .brlbs-btn-accept-all {
  border-radius: 8px;
  border: 1px solid var(--Brand-500, #f08030) !important;
  background: var(--Brand-500) !important;
}

#BorlabsCookieBox .brlbs-btn-accept-only-essential,
#BorlabsCookieBox .brlbs-cmpnt-btn-preferences {
  background-color: white !important;
  color: var(--Brand-500) !important;
  border: 1px solid var(--Brand-500) !important;
}

.av-main-nav > li a {
  font-weight: 400;
  font-size: 15px;
}

#BorlabsCookieBox .brlbs-cmpnt-btn-preferences {
  background: transparent !important ;
  color: var(--Brand-500) !important;
  font-size: 0.75em !important;
  padding: 0px !important;
  border: none !important;
}

#BorlabsCookieBox .brlbs-cmpnt-consent-list.brlbs-cmpnt-justify-between,
.brlbs-cmpnt-container .brlbs-cmpnt-consent-list.brlbs-cmpnt-justify-between {
  justify-content: flex-start !important;
}

.play_button {
  display: none;
  position: absolute;
  top: 51%;
  left: 55%;
  margin-left: -40px;
  transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  cursor: pointer;
  animation: pulse 1.5s infinite;
  -webkit-animation: pulse 1.5s infinite;
  box-shadow: 0 0 0 0 rgba(249, 204, 172, 0.5);
  border-radius: 50%;
}

@-webkit-keyframes pulse {
  0% {
    -moz-transform: scale(0.9);
    -ms-transform: scale(0.9);
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
  70% {
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -webkit-transform: scale(1);
    transform: scale(1);
    box-shadow: 0 0 0 50px rgba(249, 204, 172, 0);
  }
  100% {
    -moz-transform: scale(0.9);
    -ms-transform: scale(0.9);
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
    box-shadow: 0 0 0 0 rgba(249, 204, 172, 0);
  }
}

.main-navigation .main-nav ul li:not([class*="current-menu-"]):hover > a,
.main-navigation .main-nav ul li:not([class*="current-menu-"]):focus > a,
.main-navigation .main-nav ul li.sfHover:not([class*="current-menu-"]) > a,
.main-navigation .menu-bar-item:hover > a,
.main-navigation .menu-bar-item.sfHover > a {
  color: var(--Brand-500) !important;
}

/* Gradient Heading */

li#menu-item-714 {
  height: 44px;
  display: flex;
  justify-content: center;
  align-items: center;
}

li#menu-item-714 a {
  padding: 10px 16px;
}

li#menu-item-174 a:hover,
#menu-item-174 a:hover {
  color: white !important;
}





@keyframes animated_text {
  0% {
    background-position: 0px 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0px 50%;
  }
}

/* custom css */
.ms-box-shadow {
  box-shadow: 0px 0px 0px 4px #f9f9f9;
  border: 0.5px solid #d0d5ddad;
}
.shadow-lg {
  box-shadow: 0px 12px 16px -4px rgba(16, 24, 40, 0.08),
    0px 4px 6px -2px rgba(16, 24, 40, 0.03);
}
.text-lg-semibold svg {
  fill: #fff !important;
}

@media screen and (max-width: 1024px) {
  h1,
  h2 {
    font-size: 45px !important;
    line-height: 55px !important;
  }
  h3 {
    font-size: 40px !important;
    line-height: 50px !important;
  }
}

/* Socket */

.copyright-bar {
  display: inline-flex;
  justify-content: space-between;
  width: 100%;
}

.socket-menu a {
  margin-left: 24px;
  color: var(--gray-400) !important;
}

/* Contact Form */
.ginput_container ::placeholder {
	color: var(--gray-500);}

.gform-theme--foundation .gform_fields {
	grid-row-gap: 1.5rem;
	grid-column-gap: 2rem;
}

.gfield_required_text {
	display: none !important;
}

.gform-theme--foundation .gfield textarea.small, .gform-theme--foundation .gfield textarea.medium, .gfield textarea.large, .gform-theme--foundation .gfield .ginput_password.large, .gform-theme--foundation .gfield input.large, .gform-theme--foundation .gfield select.large, .gform_fields .gfield .name_last input, .gform_fields .gfield .name_first input, .gform-theme--framework .gfield--input-type-datepicker .ginput_container_date input, input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="tel"], input[type="number"], textarea, select  {
    border-radius: 8px !important;
	border: 1px solid var(--gray-300, #D0D5DD)!important;
	box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05) !important;
	color: var(--gray-900) !important;
}

.gfield_required {
	display: none;
}

#field_6_8 .gfield_label {
	margin-bottom: 16px;
}

.contact-sub {
	color: var(--gray-400);
}


.gform-theme--framework .gform-field-label:where(:not([class*=gform-field-label--type-])) {
    margin-bottom: 6px;
    font-size: 14px;
    font-family: "Inter";
    font-weight: 500;
    font-style: normal;
    line-height: 20px;
    color: var(--gray-700);
} 

.name_first .gform-field-label, .name_last .gform-field-label {
margin-bottom: 6px;
    font-size: 14px;
    font-family: "Inter";
    font-weight: 500;
    font-style: normal;
    line-height: 20px;
	color: var(--gray-700);}

.gfield_checkbox {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    grid-template-rows: repeat(3, 1fr) !important;
}

.gform-theme--framework input[type=checkbox] {
    border-radius: 4px !important;
    border: 1px solid var(--primary-600, #1D487E) !important;
    background: var(--primary-100, #EBF4FF) !important;
} 

.gform-theme--framework input[type=checkbox]:checked {
	background: var(--primary-100, #EBF4FF);

	
}

.gform-theme--framework input[type=checkbox]:before {
	color: var(--primary-600, #1D487E);
}

.gform-theme--framework .gform-field-label--type-inline {
	font-size: 14px;
	font-family: "Inter";
	font-weight: 500;
	font-style: normal;
	line-height: 20px;
	color: var(--gray-600);
}

input#gform_submit_button_6{
    width: 100%;
    font-family: Inter;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 24px;
    border-radius: 8px;
    border: 1px solid var(--primary-400, #7F56D9);
    background: var(--primary-500, #7F56D9);
	height: 48px;
}

.gform-theme--foundation .gform_footer, .gform-theme--foundation .gform_page_footer {
	margin-top: 32px;
}


.contact-section {
	min-height: calc(100vh - 80px);
}

.contact-image
{
    border-radius: 48px;
    filter: saturate(1.6);
}

/* Form Focus*/

.gform-theme--framework .gfield--type-multiselect .chosen-container-multi .gform-theme-field-control--focus, .gform-theme--framework .gfield--type-multiselect .chosen-container-multi:focus, .gform-theme--framework .gfield--type-select .chosen-search input[type=text] .gform-theme-field-control--focus, .gform-theme--framework .gfield--type-select .chosen-search input[type=text]:focus, .gform-theme--framework .gfield--type-select .chosen-single .gform-theme-field-control--focus, .gform-theme--framework .gfield--type-select .chosen-single:focus, .gform-theme--framework .gform-theme-field-control .gform-theme-field-control--focus, .gform-theme--framework .gform-theme-field-control:focus, .gform-theme--framework input[type]:where(:not(.gform-text-input-reset)) .gform-theme-field-control--focus, .gform-theme--framework input[type]:where(:not(.gform-text-input-reset)):focus, .gform-theme--framework select .gform-theme-field-control--focus, .gform-theme--framework select:focus, .gform-theme--framework select[multiple] .gform-theme-field-control--focus, .gform-theme--framework select[multiple]:focus, .gform-theme--framework textarea .gform-theme-field-control--focus, .gform-theme--framework textarea:focus, .gform-theme--framework.gform-theme.gform_wrapper .button:where(:not(.gform-theme-no-framework)) .gform-theme-field-control--focus, .gform-theme--framework.gform-theme.gform_wrapper .button:where(:not(.gform-theme-no-framework)):focus, .gform-theme--framework.gform-theme.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework)) .gform-theme-field-control--focus, .gform-theme--framework.gform-theme.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework)):focus, .gform-theme--framework.gform-theme.gform_wrapper :where(:not(.mce-splitbtn))>button:not([id*=mceu_]):not(.mce-open):where(:not(.gform-theme-no-framework)) .gform-theme-field-control--focus, .gform-theme--framework.gform-theme.gform_wrapper :where(:not(.mce-splitbtn))>button:not([id*=mceu_]):not(.mce-open):where(:not(.gform-theme-no-framework)):focus, .gform-theme--framework.gform-theme.gform_wrapper button.button:where(:not(.gform-theme-no-framework)) .gform-theme-field-control--focus, .gform-theme--framework.gform-theme.gform_wrapper button.button:where(:not(.gform-theme-no-framework)):focus, .gform-theme--framework.gform-theme.gform_wrapper input:is([type=submit],[type=button],[type=reset]).button:where(:not(.gform-theme-no-framework)) .gform-theme-field-control--focus, .gform-theme--framework.gform-theme.gform_wrapper input:is([type=submit],[type=button],[type=reset]).button:where(:not(.gform-theme-no-framework)):focus, .gform-theme--framework.gform-theme.gform_wrapper input:is([type=submit],[type=button],[type=reset]):where(:not(.gform-theme-no-framework)) .gform-theme-field-control--focus, .gform-theme--framework.gform-theme.gform_wrapper input:is([type=submit],[type=button],[type=reset]):where(:not(.gform-theme-no-framework)):focus, .gform-theme--framework.gform-theme.gform_wrapper input[type=submit].button.gform_button:where(:not(.gform-theme-no-framework)) .gform-theme-field-control--focus, .gform-theme--framework.gform-theme.gform_wrapper input[type=submit].button.gform_button:where(:not(.gform-theme-no-framework)):focus {
	border-color: var(--Brand-500) !important;
}

input#gform_submit_button_3 {
    border-radius: 8px;
    border: 1px solid var(--Brand-400, #DD4159);
    background: var(--Brand-500, #D51130);
    box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);
    width: 100%;
}


/* Gravity Forms 2024 */

.sachs-form .gfield_label {
    font-size: 24px !important;
    font-family: "Inter";
    font-weight: 500 !important;
    font-style: normal;
	line-height: 32px !important;}


span.image-choices-choice-image-wrap {
    width: 160px !important;
    height: 160px !important;
}


.gfield.image-choices-field .gfield_checkbox, .gfield.image-choices-field .gfield_radio, .gform_legacy_markup_wrapper .gfield.image-choices-field .gfield_checkbox, .gform_legacy_markup_wrapper .gfield.image-choices-field .gfield_radio, .gform_wrapper.gform-theme--framework .gfield--type-choice.image-choices-field .gfield_checkbox, .gform_wrapper.gform-theme--framework .gfield--type-choice.image-choices-field .gfield_radio, .gform_wrapper.gravity-theme .gfield--type-choice.image-choices-field .gfield_checkbox, .gform_wrapper.gravity-theme .gfield--type-choice.image-choices-field .gfield_radio {
	display: flex !important;
}

.gform_next_button{
border-radius: 8px;
border: 1px solid #F0425E !important;
background: linear-gradient(180deg, #D51130 0%, #CB102E 100%) !important;
	color: var(--white-white, #FFF);
font-family: Inter;
font-size: 18px;
font-style: normal;
font-weight: 600;
line-height: 28px;
}

.gform_previous_button{

background: transparent !important;
	color: #475467 !important;
font-family: Inter;
font-size: 18px;
font-style: normal;
font-weight: 600;
line-height: 28px;
}

.gform_page_footer.top_label {
    display: flex;
    justify-content: space-between;
}

.gf_progressbar, .gform-loader, .gform_required_legend {
	display: none !important;
}

h3.gf_progressbar_title {
    font-weight: 500;
}

.gform_button_select_files {
    color: var(--Gray-700, #344054) !important;
    font-family: Inter;
    font-size: 14px !important;
    font-style: normal;
    font-weight: 600;
    line-height: 20px;
    border-radius: 8px;
    border: 1px solid var(--Gray-300, #D0D5DD) !important;
    background: var(--Base-White, #FFF) !important;
    box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05) !important;
}

.image-choices-choice .gform-field-label {
	border: 1px solid #efefef;}

.image-choices-choice-image-wrap {
	background-color: #ffff;}

.gfield.image-choices-field .gfield_checkbox, .gfield.image-choices-field .radio {
	margin-top: 52px;
}

/* Footer */
.site-footer a {
    text-decoration: none;
    color: #475467;
}
	