/*
Theme Name:   helloelementorchild
Description:  Child Theme für Hello Elementor von Gruppe Drei
Author:       GRUPPE DREI
Author URL:   https://www.gruppedrei.com
Template:     hello-elementor
Version:      1.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  helloelementorchild
*/

/* Schreibe hier Dein eigenes persönliches Stylesheet */
/*
1. Globals
2. Header
3. Footer
4. Weitere Elemente
*/


@import "css/reset.css";
@import "css/animations.css";
@import "css/form.css";


/*** GLOBALS ***/
body::before{
	/*--container-max-width: max(1000px, calc((1840 / 1920) * 100vw));*/
	--container-margin: calc((50vw - var(--scrollbar-width) / 2) - var(--container-max-width) / 2);
	--width-25: calc(var(--container-margin) + var(--container-max-width) * 0.25);
	--width-75: calc(var(--container-margin) + var(--container-max-width) * 0.75);
	--width-end: calc(var(--container-margin) + var(--container-max-width));
	--line-color: rgb(0 0 0 / 0.1);

	content: "";
	position: fixed;
	inset: 0;
	background: linear-gradient(to right, 
		transparent var(--container-margin), var(--line-color) var(--container-margin), var(--line-color) calc(var(--container-margin) + 1px), transparent calc(var(--container-margin) + 1px), 
		transparent var(--width-25), var(--line-color) var(--width-25), var(--line-color) calc(var(--width-25) + 1px), transparent calc(var(--width-25) + 1px), 
		transparent 50%, var(--line-color) 50%, var(--line-color) calc(50% + 1px), transparent calc(50% + 1px), 
		transparent var(--width-75), var(--line-color) var(--width-75), var(--line-color) calc(var(--width-75) + 1px), transparent calc(var(--width-75) + 1px),
		transparent var(--width-end), var(--line-color) var(--width-end), var(--line-color) calc(var(--width-end) + 1px), transparent calc(var(--width-end) + 1px)
	);
}

.e-container, .e-con{
	/*--full-width-padding: max(1%, calc((50vw - var(--scrollbar-width) / 2) - var(--container-max-width) / 2)); */
	--cut: 60px;
}

@media (max-width: 1024px){
    .e-container, .e-con{
        --full-width-padding: 2vw;
	}
}

@media (max-width: 768px){
    .e-container, .e-con{
        --full-width-padding: 4vw;
	}
}

/* Content Breite Ende */

/*P, Links + Hover Effekt*/

p a, .list-hover-line a span{
    color: inherit;
    position: relative;
    --lineColor: var(--e-global-color-f7af70b)

    background: 
      linear-gradient(var(--lineColor, #ffffff33) 0 0) 
      0 100% /var(--d, 0) 2px 
    no-repeat;
    transition:0.3s;
}
p a:hover, p a:focus, .list-hover-line a:hover span, .list-hover-line a:focus span{
    --d: 100%;
}

.lineColorXY{
    --lineColor: var(--e-global-color-f7af70b);
}
/* Ende */

/* Elementor Buttons */
.btn::after{
	content: url("/wp-content/uploads/2026/07/button-arrow.svg");
}
.btn-white a svg path{
	fill: var(--white) !important;
}
/* Ende */


/* Show overflow on both sides/right side of carousel*/
.carousel-overflow :is(.swiper-container, .owl-carousel .owl-stage-outer){
	overflow: visible;
}
.carousel-overflow-right :is(.swiper-container, .owl-carousel .owl-stage-outer){
	overflow: visible;
    clip-path: inset(-100vw -100vw -100vw 0);
}

/* Remove absolute positioning on mobile*/
@media (max-width: 768px){
    .position-mobile{
        position: relative !important;
    }
}

/* Cut Corners */
.cut-corner-top-left{
    clip-path: polygon(var(--cut) 0, 100% 0, 100% 100%, 0 100%, 0 var(--cut));
}
.cut-corner-top-right{
    clip-path: polygon(0 0, calc(100% - var(--cut)) 0, 100% var(--cut), 100% 100%, 0 100%);
}
.cut-corner-bottom-right{
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%);
}
.cut-corner-bottom-left{
    clip-path: polygon(0 0, 100% 0, 100% 100%, var(--cut) 100%, 0 calc(100% - var(--cut)));
}

.cut-corner-top-right-no-clip::before{
	content: "";
	background-color: var(--color-secondary);
    clip-path: polygon(0 0, calc(100% - var(--cut)) 0, 100% var(--cut), 100% 100%, 0 100%);
	z-index: -1;
}


/*** GLOBALS ENDE ***/


/*** NAVIGATION/HEADER/POPUP ***/
.main-menu ul{
	width: 100%;
}
.main-menu li:last-of-type{
	margin-left: auto;
}

/*** NAVIGATION/HEADER/POPUP ENDE ***/


/*** FOOTER ***/

/*** FOOTER ENDE ***/


/*** WEITERE ELEMENTE ***/
/*#breadcrumbs > span > span:not(.breadcrumb_last){
	display: inline-flex;
	align-items: center;
}
#breadcrumbs > span > span:not(.breadcrumb_last)::after{
	content: "";
	background: url('') no-repeat center/contain;
	display: inline-block;
	width: 6px;
	height: 8px;
	margin: 0 20px;
}*/

/*** COOKIEBOT YOUTUBE ***/
.custom-video iframe, .custom-video .cookieconsent-optout-marketing div{
	aspect-ratio: 16 / 9;
}
.custom-video .cookieconsent-optout-marketing div {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
    background-color: rgba(0, 0, 0, 0.5);
}
.custom-video .cookieconsent-optout-marketing div a{
	color: var(--e-global-color-4f4dadd);
}
/*** COOKIEBOT YOUTUBE UND GOOLGLE MAPS ENDE ***/

/*** WEITERE ELEMENTE ENDE ***/

.deco::before, .deco::after{
	content: "";
	height: 1px;
	width: 155px;
	background-color: var(--color-primary);
	position: absolute;
	top: 0;
	left: 0;
	translate: -20px 0;
}
.deco::after{
	transform-origin: top left;
	rotate: 90deg;
	translate: 1px -20px;
}

.deco-bottom::before, .deco-bottom::after{
	content: "";
	height: 1px;
	width: 155px;
	background-color: var(--color-primary);
	position: absolute;
	bottom: 0;
	right: 0;
	top: unset;
	left: unset;
	translate: 20px 0;
}
.deco-bottom::after{
	transform-origin: bottom right;
	rotate: 90deg;
	translate: 0 20px;
}

.striped-background::before{
	content: "";
	background-image: repeating-linear-gradient(
	  to right,
	  rgba(211, 211, 211, 0.1),
	  rgba(211, 211, 211, 0.1) 1px,
	  var(--color-secondary) 1px,
	  var(--color-secondary) 20px
	  );
	z-index: -1;
}

.striped-background-orange::before{
	content: "";
	background-image: repeating-linear-gradient(
	  to right,
	  rgba(211, 211, 211, 0.1),
	  rgba(211, 211, 211, 0.1) 1px,
	  var(--color-primary) 1px,
	  var(--color-primary) 20px
	  );
	z-index: -1;
}