/* 
Theme Name: Schwarz+Matt Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Schwarz+Matt Child is a child theme of Hello Elementor, created by the Elementor team and modified by Schwart+Matt.
Author: Brian Ossowski
Author URI: https://www.schwarz-matt.com/
Template: hello-elementor
Version: 3.0.0
Text Domain: schwarz+matt-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* resets
----------------------------------------*/

body{
	padding: 0;
    margin: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Epilogue', sans-serif !important;
}

.elementor-kit-10 p,
p,
ul{
	margin: 0;
}

ul,
ol{
	margin: 0;
}

ul{
	padding-left: 1rem;	
}

ol{
	padding-left: 1.75rem;
}

ul li,
ol li{
	line-height: 150%;
}

strong{
	font-weight: 600;
}

h1,
.elementor-kit-10 h1,
h2,
.elementor-kit-10 h2,
h3,
.elementor-kit-10 h3,
p,
p.elementor-heading-title{
	font-weight: 300;
	font-family: "Epilogue", Sans-serif;
}

/* variables
----------------------------------------*/
:root{
	--border-radius-xs: .5rem;
	--border-radius-s: 1rem;
	--border-radius-m: 1.5rem;
	--border-radius-l: 2rem;
	--border-radius-xl: 2rem;
	--border-radius-xxl: 3rem;
	--section-padding-y: 3.5rem;
	--section-padding-x: 1rem;
	--header-height: 80px;
	--text-transition: .125s;
	--e-global-typography-text-font-weight: 300;
}

.font_is-regular .elementor-heading-title,
.e-n-accordion-item-title .e-n-accordion-item-title-text{
	font-weight: 400;
}

.elementor .font_is-light.elementor-element .elementor-heading-title,
.elementor .font_is-light a{
	font-weight: 300;
}


@media (min-width: 768px){
	:root {
		--header-height: 96px;
		--section-padding-y: 6rem;
	}
}

@media (min-width: 1440px){
	:root {
		--section-padding-y: 10rem;
		--header-height: 116px;
		--border-radius-xl: 3rem;
		--border-radius-xxl: 5rem;
	}
}

/* globals
----------------------------------------*/
/*
html,
body{
    overflow-x: hidden;
}*/

.elementor-heading-title[class*=elementor-size-]>a{
	transition: var(--text-transition);
}

.elementor-19 .elementor-element .elementor-heading-title{
	font-weight: 300;
}



/* section
----------------------------------------*/

.section.e-con {
	position: relative;
	padding: var(--section-padding-y) var(--section-padding-x);
	--padding-left: var(--section-padding-x);
	--padding-right: var(--section-padding-x);
	/* background-color: var(--section-bg-color); */
	color: #000;
	/* Textfarbe für Kontrast */
}

.section.reset-bottom.e-con {
	padding-bottom: 0;
}

.section.reset-top.e-con {
	padding-top: 0;
}

.section.e-con-full.e-flex,
.section.e-con.e-flex>.e-con-inner {
	padding: 0;
}


/* buttons
----------------------------------------*/

/*-- global styles --*/

:root{
	--btn-padding: 1.125rem 1.75rem ;
}

@media (min-width: 1300px){
	:root{
		--btn-padding: 1.25rem 2rem;
	}
}

.btn .elementor-button,
.elementor-widget-n-tabs .e-n-tab-title,
.elementor-form .elementor-button{
	border: 1px solid;
	border-radius: 2rem;
	padding: var(--btn-padding);
}

.btn .elementor-button-content-wrapper{
	gap: .5rem;
}

.btn .elementor-button-text,
.elementor-widget-n-tabs .e-n-tab-title-text,
.elementor-button-text{
	line-height: 1.2;
    height: 14px;
}

/* primary */

.btn.btn_primary .elementor-button {
	background-color: var(--e-global-color-primary);
	border-color: var(--e-global-color-primary);
	color: var(--e-global-color-a1633c0);
}

.btn.btn_primary .elementor-button:hover {
	background-color: var(--e-global-color-secondary);
}

/* secondary */

.btn.btn_secondary .elementor-button,
.elementor-widget-n-tabs .e-n-tab-title[aria-selected=false], .elementor-widget-n-tabs .e-n-tab-title[aria-selected=false] a,
.elementor-form .elementor-button{
	background-color: transparent;
	border-color: var(--e-global-color-c8b7d0a);
	color: var(--e-global-color-c8b7d0a);
}

.btn.btn_secondary .elementor-button:hover,
.elementor .elementor-element.elementor-widget-n-tabs:not(:has(>.elementor-widget-container))>.e-n-tabs[data-touch-mode=false]>.e-n-tabs-heading .e-n-tab-title[aria-selected=false]:hover, 
.elementor .elementor-element.elementor-widget-n-tabs>.elementor-widget-container>.e-n-tabs[data-touch-mode=false]>.e-n-tabs-heading .e-n-tab-title[aria-selected=false]:hover,
.elementor .elementor-element.elementor-widget-n-tabs:not(:has(>.elementor-widget-container))>.e-n-tabs>.e-n-tabs-heading .e-n-tab-title[aria-selected=true],
.elementor-form .elementor-button:hover{
	background-color: var(--e-global-color-c8b7d0a);
	color: var(--e-global-color-f04c4e5);
}

/* tertiary */

.btn.btn_tertiary .elementor-button {
	background-color: var(--e-global-color-f04c4e5);
	color: var(--e-global-color-a1633c0);
	border-color: var(--e-global-color-f04c4e5);
}

.btn.btn_tertiary .elementor-button:hover {
	background-color: var(--e-global-color-a1633c0);
	color:  var(--e-global-color-f04c4e5);
	border-color: var(--e-global-color-a1633c0);
}

/* link */

.btn.btn_link .elementor-button {
	background-color: transparent;
	color: var(--e-global-color-c8b7d0a);
	border-color: transparent;
}

.btn.btn_link .elementor-button:hover {
	background-color: transparent;
	opacity: .6;
}
.btn.btn_link .elementor-button svg{
	transition: .125s;
}

.btn.btn_link .elementor-button:hover svg{
	transform: translateX(5px);
}

.btn.btn_link .elementor-button svg path{
	stroke: currentColor;
}


/* widget - elementor form button
----------------------------------------*/

.elementor-form .elementor-button{
	background-color: transparent;
}

/* hero styles
----------------------------------------*/


:root{
	--hero-v1-height: 90vh;
	--hero-v2-height: 70vh;
}

@media (min-width: 1300px){
	:root{
		--hero-v1-height: 90vh;
		--hero-v2-height: 55vh;
	}
}

@media (min-width: 1920px){
	:root{
		--hero-v1-height: 90vh;
		--hero-v2-height: 52.5vh;
	}
}

.hero_v1{
	height: var(--hero-v1-height);
}

.hero_v1 img,
.background-img_has-gradient-v1:after{
	border-bottom-left-radius: var(--border-radius-xxl);
	border-bottom-right-radius: var(--border-radius-xxl);
}



.hero_v2.e-con>.e-con-inner{
	padding-block-start: calc((var(--header-height)) * 1.25);
	padding-block-end: calc((var(--header-height)) * .75);
	padding-left: 1rem;
    padding-right: 1rem;
}

@media (min-width: 1248px){
	.hero_v2.e-con>.e-con-inner{
		padding-block-start: calc((var(--header-height)) * 1.75);
		padding-block-end: calc((var(--header-height)) * 1.35);
	}
}

/* image-widget becomes background-img 
----------------------------------------*/
.background-img{
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
}


.background-img img{
	width: 100%;
    height: 100%;
    object-fit: cover;
}

.background-img_has-gradient-v1:after{
	content: "";
	position: absolute;
	width: 100%;
	height: 70%;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: #00000;
	background: -webkit-linear-gradient(0deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
	background: -moz-linear-gradient(0deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
	background: linear-gradient(0deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000", endColorstr="#000000", GradientType=0);
}

/* support color elementor-icon-widget
----------------------------------------*/

.elementor-widget-icon svg path{
    fill: currentColor;
}

/* borlabs cookie
----------------------------------------*/

:root {
	--color-primary: #000000;
	--color-primary-hover: #272727;
}

/* buttons */

body #BorlabsCookieBox .brlbs-btn-save[data-v-9bed6691],
body #BorlabsCookieBox .brlbs-btn-accept-all[data-v-14ae4032],
body #BorlabsCookieBox .brlbs-btn-accept-only-essential[data-v-8dcc252c]{
	background-color: var(--color-primary);
}

body #BorlabsCookieBox .brlbs-btn-save[data-v-9bed6691]:hover,
body #BorlabsCookieBox .brlbs-btn-accept-all[data-v-14ae4032]:hover,
body #BorlabsCookieBox .brlbs-btn-accept-only-essential[data-v-8dcc252c]:hover{
	background-color: var(--color-primary-hover);
}

/* tabs */


body #BorlabsCookieBox .brlbs-cmpnt-tab.brlbs-cmpnt-tab-active, 
body .brlbs-cmpnt-container .brlbs-cmpnt-tab.brlbs-cmpnt-tab-active{
	background-color: var(--color-primary);
	border-color: var(--color-primary);
}

body #BorlabsCookieBox .brlbs-cmpnt-tab.brlbs-cmpnt-tab-inactive:focus, 
body #BorlabsCookieBox .brlbs-cmpnt-tab.brlbs-cmpnt-tab-inactive:hover, 
body .brlbs-cmpnt-container .brlbs-cmpnt-tab.brlbs-cmpnt-tab-inactive:focus, 
body .brlbs-cmpnt-container .brlbs-cmpnt-tab.brlbs-cmpnt-tab-inactive:hover{
	background-color: var(--color-primary-hover);
	border-color: var(--color-primary-hover);
}

.icon_v1 {
	display: flex;
    align-items: center;
	justify-content: center;
	width: 3.5rem;
    height: 3.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: inherit;
	border-radius: var(--border-radius-s);
}

.icon_v1 .elementor-icon svg{
	width: 2rem;
	height: auto;
}

@media (min-width: 768px){
	.icon_v1{
		width: 5rem;
    	height: 5rem;
	}
	
	.icon_v1 .elementor-icon svg{
		width: 3rem;
	}
	
}


@media (min-width: 1248px){
	.icon_v1{
		width: 5rem;
    	height: 5rem;
	}	
}

.icon_v1 .elementor-icon-wrapper{
	display: flex;
}

/* header
----------------------------------------*/

#stickyheaders{
	transition: transform 0.34s ease, background-color 0.125s ease;
}

@media (min-width: 1025px){
	#stickyheaders:hover{
		background-color: #ffffff;
	}
}

.elementor-sticky--effects{
	background-color: #ffffff;
}

.headerup{
	transform: translateY(calc((var(--header-height)) * -1)); /*adjust this value to the height of your header*/
}

.jet-mega-menu-mega-container__inner{
	padding: 0!important;
	margin: 0 -2.5rem;
}

.jet-mega-menu.jet-mega-menu--layout-horizontal .jet-mega-menu-mega-container{
	margin-top: 44px;
}

.current-page .elementor-widget-heading .elementor-heading-title[class*=elementor-size-]>a{
	color: var( --e-global-color-primary );
	pointer-events: none;
}

.jet-mega-menu-item__dropdown svg{
	width: 14px;
}

.jet-mega-menu-item--top-level:hover .jet-mega-menu-item__dropdown svg path,
.jet-mega-menu-item--top-level.jet-mega-menu-item--hover svg path{
	stroke: var(--e-global-color-primary);
}

.jet-mega-menu-item--top-level .jet-mega-menu-item__dropdown{
	transition: .25s;
}

.jet-mega-menu-item--top-level:hover .jet-mega-menu-item__dropdown,
.jet-mega-menu-item--top-level.jet-mega-menu-item--hover .jet-mega-menu-item__dropdown{
	transform: rotate(180deg);
}

/* slider
----------------------------------------*/
.slider-btn a{
	padding: 0;
	background-color: transparent;
	cursor: pointer;
}

.slider-btn.slick-disabled{
	opacity: .25;
}

.elementor-button-icon svg{
	height: 1.125rem;
	width: auto;
}

.slider-btn a svg path{
	stroke: var( --e-global-color-c8b7d0a );
	stroke-opacity: 1;
}

.slider-btn a:hover {
	opacity: .5;
}

.slick-scrollbar {
  text-align: center;
	display: flex;
	margin-top: -4px;
}

.slick-scrollbar input[type="range"] {
	appearance: none;
	width: 100%;
	cursor: pointer;
	margin: 0;
	background-color: #D3D7E9;
	height: 2px;
}

input[type='range']::-webkit-slider-thumb {
	appearance: none;
	background-color:  #243893;;
	border: none;
	height: 2px;
	border-radius: 0;
	cursor: pointer;
	width: 20%;
}

.slider-has-custom-controller .jet-listing-grid__slider-icon{
	display: none!important;
}

.slider-visible .slick-list{
	overflow: visible;
}


.slider-visible .slick-list .slick-slide{
	opacity: .5;
}


.slider-visible .slick-list .slick-slide:not(.slick-active){
	pointer-events: none;
}

.slider-visible .slick-list .slick-slide.slick-active{
	opacity: 1;
}


/* accordion widget
----------------------------------------*/

.elementor-widget-n-accordion .e-n-accordion-item{
	border-radius: var(--border-radius-m);
	overflow: hidden;
}

.elementor-widget-n-accordion .e-n-accordion-item-title{
	gap: 2rem;
}

@media (min-width: 768px){
	.elementor-widget-n-accordion .e-n-accordion-item-title{
		gap: 4rem;
	}
}

@media (min-width: 1440px){
	.elementor-widget-n-accordion .e-n-accordion-item-title{
		gap: 5rem;
	}
}


/* styles - loesung post detail
----------------------------------------*/

.loesung_usp-list ul{
    display: flex;
    flex-direction: column;
    gap: .5rem;
    padding: 0;
}

.loesung_usp-list li{
    list-style-type: none;
    display: flex;
    gap: .875rem;
}

/* elementor widget form
----------------------------------------*/

.elementor-field-group .elementor-field-textual{
	padding: 1.125rem 1.5rem;
}

.elementor-field-type-acceptance label{
	display: none;
}


.elementor-field-type-acceptance .elementor-field-option{
	display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 1rem;
    align-items: flex-start;
}

@media (max-width: 500px){
	.elementor-field-type-acceptance .elementor-field-option{
		flex-direction: column;
	}
}

.elementor-element.elementor-widget-form .elementor-form .elementor-field-type-acceptance .elementor-field-option label{
	font-weight: 300;
	font-size: 1rem;
	line-height: 150%;
}

/* hover states für lisitngs
----------------------------------------*/

.loesung-listing_v1:hover {
	transform: translateY(-.5rem);
}

.job-listing_v1:hover{
	transform: translateY(-.5rem);
}

.elementor-heading-title{
    transition: all .3s;
}
.blog-listing_v1:hover .elementor-heading-title,
.blog-listing_v1:hover .btn.btn_link .elementor-button,
.loesung-listing_v2:hover .elementor-heading-title,
.loesung-listing_v2:hover .btn.btn_link .elementor-button{
	opacity: 0.6;
}

.blog-listing_v1:hover .btn_link:hover,
.loesung-listing_v2:hover .btn_link:hover {
	opacity: 1;
}

.blog-listing_v1 .elementor-widget-image img,
.loesung-listing_v2 .elementor-widget-image img{
	transition: all .3s;
}
.blog-listing_v1 .elementor-widget-image,
.loesung-listing_v2 .elementor-widget-image{
	overflow: hidden;
	display: inline-table;
	border-radius: var(--border-radius-m);
}
.blog-listing_v1:hover .elementor-widget-image img,
.loesung-listing_v2:hover .elementor-widget-image img{
	transform: scale(1.1);
}


.jet-mega-menu.jet-mega-menu--layout-horizontal .jet-mega-menu-item.jet-mega-current-menu-item>.jet-mega-menu-item__inner a + div svg path{
	stroke: var(--jmm-top-active-item-title-color, inherit);
}

/* mobile menue
----------------------------------------*/
.jet-mobile-menu .jet-dropdown-arrow svg{
	width: 32px;
}

.jet-mobile-menu__toggle-icon svg{
	width: 32px;
}

.jet-mobile-menu__back[aria-label='Back to Prev Items'] svg{
	width: 8px!important;
	transform: scaleX(-1) translateY(-1px);
}

.jet-mobile-menu__instance.fill-svg-icon .jet-dropdown-arrow svg{
	width: 8px!important;
}

.jet-mobile-menu__back[aria-label='Close Menu'] svg{
	width: 26px!important;
}

.jet-mobile-menu__back[aria-label='Back to Prev Items'] svg path,
.jet-mobile-menu__instance.fill-svg-icon .jet-dropdown-arrow svg path,
.jet-mobile-menu__back[aria-label='Close Menu'] svg path{
	    fill: transparent!important;
    stroke: currentColor;
	stroke-width: 1.5px;
}


.jet-mobile-menu__after-template{
	    margin-top: auto;
}

.breadcrumb-label{
	font-weight: 600!important;
}



.elementor-nav-menu--main .elementor-nav-menu a, 
.elementor-nav-menu--main .elementor-nav-menu a.highlighted, 
.elementor-nav-menu--main .elementor-nav-menu a:focus, 
.elementor-nav-menu--main .elementor-nav-menu a:hover{
	padding: 0;
	line-height: 150%;
}

.footer-menue ul li,
.footer-menue ul li a{
	margin: 0!important;
}

.footer-menue ul:after{
	display: none!important;
}

.footer-menue ul{
	display: flex;
	flex-direction: column;
	gap: .875rem;
}

@media (min-width: 1440px){
	.footer-menue ul{
		gap: 1rem;
	}
}

/* mobile menue
----------------------------------------*/

.legal h1{
    margin-top: 0;
    margin-bottom: 1rem;
    font-size: 3rem;
    font-weight: 300;
}

.legal h2{
    font-size: 2.25rem;
    margin-bottom: 1rem;
    margin-top: 2.5rem;
}

.legal p + p{
    margin-top: .5rem;
}

.legal ul{
    margin-top: .5rem;
}