/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-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
*/

/* general - style */
:target::before {
  content: "";
  display: block;
  height: var(--sticky-header-height);
  margin-top: calc(-1 * var(--sticky-header-height));
  visibility: hidden;
}

html {scroll-behavior: smooth;}

body {
	font-variant-numeric: lining-nums;
    font-feature-settings: "lnum";
	overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
	margin: 0;
	padding: 0;
    hyphens: auto;
	overflow-wrap: break-word;
}

.cnt-space {
	padding-left: 16px !important;
	padding-right: 16px !important;
}

button:focus-visible,
a:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
div[role="button"]:focus-visible,
.sbi_item:focus-within,
.brlbs-cmpnt-checkbox:focus-visible {
	outline: 2px solid #2a8af5 !important;
    outline-offset: 2px !important;
	border-radius: 2px !important;
}

button:not(.e-n-menu-dropdown-icon):focus-visible,
.elementor-button:focus-visible {
	background-color: var( --e-global-color-72cfe36 ) !important;
	color: #fff !important;
}

.link-underline a,
.link-underline a:hover,
.link-underline a:focus-visible {
	text-decoration: underline;
}

.popup-trigger {
    cursor: pointer;
}

.anchor-jump-cc {
	max-width: 0 !important;	
}

.anchor-jump-cc .elementor-menu-anchor {
	margin-top: 0;
}

.anchor-jump-fw .elementor-menu-anchor {
	margin-top: 0;
}

.bh-hero-cnt {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(calc(-50% - 0px));
}

.hero-cnt {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

/* Pause Icon */
.videoToggle_btn {
    background: #00000099;
    border: none;
    backdrop-filter: blur(8px);
    border-radius: 50% !important;
    cursor: pointer;
    color: #fff;
    padding: 0 !important;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.videoToggle_btn:focus-within {
    outline-offset: 4px;
}

.videoToggle_btn svg {
    width: 24px;
    height: 24px;
}

.videoToggle_icon {
    display: flex;
}

/* Video - Styles */
.vimeoVideo {
	position: relative; 
	padding-bottom: 43.17%; 
	height: 0; 
	overflow: hidden; 
	max-width: 100%; 
	margin: 0 auto;
}

.vimeoIframe {
	position: absolute; 
	top: 0; 
	left: 0; 
	width: 100%; 
	height: 100%; 
	border: 0;
}

.videoToggle_btn {
	position: absolute; 
	bottom: 32px; 
	right: 32px; 
	padding: 10px 20px; 
	font-size: 16px; 
	background-color: rgba(0, 0, 0, 0.5); 
	color: white; 
	border: none; 
	cursor: pointer;
}

.vimeoThumbnail {
	width: 100%; 
	height: auto; 
	display: block;
}

.vimeoVideoOverlay:after {
    content: "";
    background: var( --e-global-color-text );
    background: radial-gradient(50% 50% at 50% 50%, rgba(29, 29, 29, 1) 50.4%, rgba(29, 29, 29, 0.60) 100%), url(<path-to-image>) lightgray 50% / cover no-repeat;
    width: 100%;
    height: 100%;
    display: block;
    top: 0;
    left: 0;
    position: absolute;
    opacity: .6;
}

/* hamburger icon -desktop */
.nav-menu-bar {
	 all: unset  !important; 
	 display: flex !important;
	 flex-direction: column !important;
	 justify-content: space-between !important;
	 width: 25px !important;
	 height: 21px !important;
	 position: relative !important;
	 cursor: pointer !important;
}

.nav-menu-bar span {
	 display: inline-block;
	 width: 100%;
	 height: 3px;
	 border-radius: 4px;
	 background-color: var( --e-global-color-accent );
	 transition: all .5s cubic-bezier(.645, .045, .355, 1);
}
 
.nav-menu-bar span {
	 transform-origin: left;
}

.show-nav-menu .nav-menu-bar span:nth-child(1) {
	 transform: rotate(45deg);
}

.show-nav-menu .nav-menu-bar span:nth-child(2) {
	 width: 0;
}
.show-nav-menu .nav-menu-bar span:nth-child(3) {
	 transform: rotate(-45deg);
}


/* image - ratio */
.image-ratio-container .elementor-widget-container {
    width: 100%;
    overflow: hidden;
}

.image-ratio-container-21-9 .elementor-widget-container {
    aspect-ratio: 21 / 9;
}

.image-ratio-container-18-9 .elementor-widget-container {
    aspect-ratio: 18 / 9;
}

.image-ratio-container-16-9 .elementor-widget-container {
    aspect-ratio: 16 / 9;
}

.image-ratio-container-12-9 .elementor-widget-container {
    aspect-ratio: 12 / 9;
}

.image-ratio-container-1-1 .elementor-widget-container {
    aspect-ratio: 1 / 1;
}

.image-ratio-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* general - style */
.bh-logo-img img {
    width: auto !important;
}

.bh-pretitle {
	color: var(--e-global-color-1dd5f16);
    font-family: var(--e-global-typography-db7f373-font-family), Sans-serif;
    font-size: var(--e-global-typography-db7f373-font-size);
    font-weight: var(--e-global-typography-db7f373-font-weight);
    text-transform: var(--e-global-typography-db7f373-text-transform);
    line-height: var(--e-global-typography-db7f373-line-height);
    letter-spacing: var(--e-global-typography-db7f373-letter-spacing);
}

.bh-title-h4 {
	color: var(--e-global-color-text);
    font-family: "Barlow", Sans-serif;
    font-size: 18px;
    font-weight: 700;
    text-transform: none;
    font-style: normal;
    line-height: 1.2em;
	margin-top: 4px;
}

.bh-title-text {
    font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
    font-size: var(--e-global-typography-secondary-font-size);
    font-weight: var(--e-global-typography-secondary-font-weight);
    line-height: var(--e-global-typography-secondary-line-height);
	margin-top: 12px;
	margin-bottom: 32px;
}

a:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
	outline: 2px solid var( --e-global-color-67feb70 ) !important;
    outline-offset: 0;
	border-radius: 2px;
}

a:focus-visible {
	outline: 2px solid black !important;
	outline-offset: 4px;
}

footer {
  a:focus-visible {
	outline: 2px solid white !important;
	outline-offset: 4px;
  }	
}

/* grid-col - style */
.grid-col .elementor-widget-image img {
    will-change: transform;
    object-fit: cover;
    transition: all .35s cubic-bezier(.4,0,.2,1);
}

.grid-col:hover .elementor-widget-image img {
    transform: scale(1.01);
    opacity: .9;
}

.grid-col:hover .grid-col-icon .elementor-icon {
    background: #fff;
}

.grid-col-icon .elementor-icon svg {
    transition: all .15s ease-out;
}

.grid-col:hover .grid-col-icon .elementor-icon svg {
    fill: var( --e-global-color-text ) !important;
}

.grid-col .elementor-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 32px;
    height: 32px;
}

.grid-col-img:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 6px;
    background: linear-gradient(180deg, rgba(21, 22, 22, 0.00) 0%, rgba(21, 22, 22, 0.30) 61.64%, rgba(21, 22, 22, 0.80) 100%);
}



.brlbs-btn-accept-only-essential {
	border: 1px solid #666 !important;
}

.breadcrumb-back {
    display: flex;
}

.breadcrumb-back:before {
    content: url('/wp-content/uploads/2024/05/arrow-chevron-bh.svg');
	width: 6px;
	display: inline-block;
	margin-right: 8px;
	transform: scaleX(-1) translateY(-3px);
}

/* Pause Icon */
#videoToggle_btn {
    background: #00000099;
    border: none;
    backdrop-filter: blur(8px);
    border-radius: 50%;
    cursor: pointer;
    color: #fff;
    padding: 0;
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#videoToggle_btn svg {
  width: 30px;
  height: 30px;
}

#videoToggle_icon {
	display: flex;
}

/* Rank Math - Style */
.rank-math-breadcrumb span,
.rank-math-breadcrumb a {
    font-size: 14px;
    color: var( --e-global-color-1dd5f16 );
	transition: all .15s ease-out;
}

.rank-math-breadcrumb .last {
	font-weight: 600;
}

.rank-math-breadcrumb a:hover {
	text-decoration: underline;
	color: var( --e-global-color-text );
}

.rank-math-breadcrumb .separator {
	font-size: 0 !important;
	padding: 0 !important
}

.rank-math-breadcrumb .separator:after {
	content: url('/wp-content/uploads/2024/05/arrow-chevron-bh.svg');
	width: 6px;
	display: inline-block;
	margin: 0 16px;
}

/* product - slider */
.bh-product-slider .elementor-testimonial__cite {
    margin-top: 0 !important;
}

.bh-product-slider .elementor-testimonial__title {
    margin-top: 8px !important;
}

.bh-product-slider .elementor-swiper-button-prev {
    left: -48px !important;
}

.bh-product-slider .elementor-swiper-button-next {
    right: -48px !important;
}

.bh-product-slider .elementor-swiper-button-prev,
.bh-product-slider .elementor-swiper-button-next {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var( --e-global-color-accent );
}

.bh-product-slider .elementor-swiper-button-prev svg {
    transform: translateX(-1px);
}

.bh-product-slider .elementor-swiper-button-next svg {
    transform: translateX(1px);
}

.bh-product-slider .elementor-testimonial__image img {
    object-fit: contain;
}


/* Banner with Overlay - style */
.bwo-col .elementor-widget-image img {
    will-change: transform;
    object-fit: cover;
    transition: all .35s cubic-bezier(.4,0,.2,1);
}

.bwo-col:hover .elementor-widget-image img {
    transform: scale(1.01);
    opacity: .9;
}

.bwo-col:hover .grid-col-icon .elementor-icon {
    background: #fff;
}

.bwo-col-icon .elementor-icon svg {
    transition: all .15s ease-out;
}

.bwo-col:hover .grid-col-icon .elementor-icon svg {
    fill: var( --e-global-color-text ) !important;
}

.bwo-col .elementor-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 32px;
    height: 32px;
}

.bwo-col-img:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 6px;
    background: linear-gradient(180deg, rgba(21, 22, 22, 0.00) 0%, rgba(21, 22, 22, 0.30) 61.64%, rgba(21, 22, 22, 0.80) 100%);
}

/* Check Icons - Style */
.bh-check-list li {
    display: inline-flex !important;
    align-items: flex-start !important;
}

.bh-check-list .elementor-icon-list-icon {
    transform: translateY(3px);
}

/* Counter List - Style */
.bh-counter-list .elementor-icon-list-items {
	counter-reset: count; 
	flex-direction: column;
	display: flex;
}

.bh-counter-list .elementor-icon-list-item {
    display: inline-flex !important;
    align-items: flex-start !important;
}

.bh-counter-list .elementor-icon-list-item:before {
    content: counters(count, ".");
  	counter-increment: count;
  	font-weight: 700;
  	font-size: 1rem;
  	line-height: 1;
  	min-height: 40px;
  	min-width: 40px;
  	width: 40px;
  	background: var(--e-global-color-0d5c389);
  	color: var(--e-global-color-text);;
  	border: 1px solid var(--e-global-color-0d5c389);
  	display: inline-flex;
  	justify-content: center;
  	align-items: center;
  	border-radius: 50%;
  	margin-right: 16px;
  	transform: translateY(1px);
}

/* nachhaltigkeit - style */
.bh-nachhaltig-img {
    display: flex;
    align-items: center;
}

.bh-nachhaltig-img:before,
.bh-nachhaltig-img:after {
    position: absolute;
    color: #fff;
    font-size: 4vw;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 0.2em;
}

.bh-nachhaltig-img:before {
    content: "Brauns";
    transform: translateX(calc(-32px / 2));
    right: 100%;
}

.bh-nachhaltig-img:after {
    content: "Heitmann";
    left: 100%;
    transform: translateX(32px);
}

.bh-nachhaltig-img-modified:before,
.bh-nachhaltig-img-modified:after {
    position: static;
	font-size: 20px;
}

.bh-nachhaltig-img.bh-nachhaltig-img-modified:before {
    content: "Brauns";
    transform: translateX(0);
    right: auto;
	margin-right: 8px;
}

.bh-nachhaltig-img.bh-nachhaltig-img-modified:after {
    content: "Heitmann";
    left: auto;
    transform: translateX(0);
	margin-left: 8px;
}

/* Product Box - Style */
.product-box .product-box-img,
.product-box .product-box-title,
.product-box .product-box-icon .elementor-icon,
.product-box .product-box-icon .elementor-icon svg {
    transition: all .15s ease-out;
}

.product-box:hover .product-box-title div {
    color: var( --e-global-color-1dd5f16 )important; 
}

.product-box:hover .product-box-icon .elementor-icon {
    background: var( --e-global-color-1dd5f16 ) !important;
    transform: translateX(2px);  
}


.product-box:hover .product-box-icon .elementor-icon svg {
    fill: #fff !important;
}

.product-box .elementor-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 32px;
    height: 32px;
}

/* SinglePost - Style */
.post-loop-content h2 {
    margin-top: 60px;
    font-weight: 700;
    font-size: 1.625rem;
    padding: 10px 0 10px 20px;
    border-left: 3px solid var(--e-global-color-accent);
}

.post-loop-content h3 {
    font-weight: 700;
    font-size: 1.25rem;
}

.post-loop-content p {
    font-size: 1rem;
    color: #212529;
    line-height: 1.8em;
    margin: 20px 0;
}

.post-loop-content img,
.post-loop-content video {
    margin-top: 16px;
    border-radius: 4px;
    max-width: 100%;
    border: 1px solid #E7E7E9;
}

.post-loop-content blockquote {
    margin: 20px 0;
}

.post-loop-content blockquote p {
    font-size: 1.125rem;
    line-height: 1.6em;
    text-align: center;
    font-weight: 400;
    background: #f5f7fa;
    color: #f56f46;
    padding: 32px;
    border-radius: 4px;
}

.post-loop-content a:not(.elementor-button) {
    text-decoration: underline;
    color: var(--e-global-color-accent);
}

.post-loop-content a:hover {
    text-decoration: none;
}

.post-loop-content ul {
    margin: 40px 0;
}

.post-loop-content ul li {
    display: block;
    margin: 16px 0;
    position: relative;
    padding-left: 32px;
    font-family: "Poppins", Sans-serif;
    font-size: 1rem;
    color: #212529;
    line-height: 1.7em;
}

.post-loop-content ul li:before {
    display: block;
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 4px;
    background: #f56f46;
    margin-top: calc(1em - 8px);
    left: 0;
    position: absolute;
}

.elementor-editor-active .post-loop-content ul li:before {
    content: none;
}

/* counterlist - style */
.post-loop-content ol {
    margin: 40px 0 40px calc(28px + 16px + 20px);
    padding: 0;
}

.post-loop-content ol li {
    list-style: none;
    font-size: 1rem;
    margin-top: 20px;
}

.post-loop-content ol li:first-child {
    counter-reset: index;
    margin-top: 0;
}

.post-loop-content ol li:before {
    background-color: #E7E7E9;
    margin-right: 16px;
    margin-left: calc(-28px - 16px);
    content: counter(index, decimal);
    counter-increment: index;
    color: #6e7681;
    font-size: 0.938rem;
    border-radius: 50%;
    border: 1px solid #E7E7E9;
    height: 28px;
    width: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.post-loop-content figure {
    margin: 12px 0 24px;
}

.post-loop-content figcaption {
    font-size: 0.875rem;
    color: #999;
    line-height: 1.4;
    font-style: normal;
    font-weight: 400;
    margin-top: 8px;
}

/* cursive font - style */
.post-loop-content em {
    font-size: 0.938rem;
}

@media only screen and (min-width: 1200px) {
	.bh-hero-layer:before {
		content: "";
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		background: radial-gradient(50% 50% at 50% 50%, rgba(29, 29, 29, 0.3) 0%, rgba(29, 29, 29, 0.00) 100%);
	}
	
}

@media only screen and (max-width: 1200px) {
	.anchor-jump-fw .elementor-menu-anchor {
		margin-top: -140px;
	}
	
	.bh-hero-cnt,
	.hero-cnt {
        position: static;
        transform: translateY(0);
    }
	
	.bh-hero-cnt .elementor-heading-title {
		text-shadow: none !important;	
	}
	
	.hero-scroll {
		display: none;
	}
	
    .bh-product-slider .elementor-swiper-button-prev {
    	left: 0 !important;
	}

    .bh-product-slider .elementor-swiper-button-next {
        right: 0 !important;
    }
	
  	.bh-media-cc span,
  	.bh-media-cc h1 {
		text-align: left !important;
      	color: var( --e-global-color-text ) !important;
  	}
	
	.bh-media h1 {
		margin: 32px 0 16px;
	}
}

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

@media only screen and (max-width: 880px) {
	.anchor-jump-fw .elementor-menu-anchor {
		margin-top: -132px;
	}
	
	.hero-cnt {
        position: static;
        transform: translateY(0);
    }
	
	.scroll-link {
		display: none;
	}
}

@media only screen and (max-width: 767px) {
	.anchor-jump-fw .elementor-menu-anchor {
		margin-top: -124px;
	}
	
	.grid-col-img:after {
        background: linear-gradient(180deg, rgba(21, 22, 22, 0.00) 0%, rgba(21, 22, 22, 0.30) 40%, rgba(21, 22, 22, 1) 100%);
    }
	
    .bwo-col-img:after {
        background: linear-gradient(180deg, rgba(21, 22, 22, 0.00) 0%, rgba(21, 22, 22, 0.30) 40%, rgba(21, 22, 22, 1) 100%);
    }
	
	.post-loop-content p {
        font-size: 0.938rem;
    }

    .post-loop-content ul li {
        margin: 16px 0;
        padding-left: 12px;
        font-size: 0.938rem;
    }

    .post-loop-content ul li:before {
        left: -12px;
    }
}

@media only screen and (max-width: 480px) {
	.hero-cnt {
        position: static;
        transform: translateY(0);
    }
}

@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0 !important;
    transition: none !important;
  }
}