/*
Theme Name:   Greyd Child Theme
Theme URI:    https://greyd.io/
Description:  A child theme for the Greyd Theme
Author:       Christoph Steinlechner
Author URI:   https://christoph-steinlechner.de
Template:     greyd-theme
Version:      1.0.0
License:      GPLv2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Tags:         Tags: blog, portfolio, entertainment, site-editing, block-patterns, block-styles
Text Domain:  greyd-child-theme
*/

/* Maps 3.0 */
.wpmb-popup .wpmb-popup-close {box-shadow: 0 0px 0px rgba(250, 250, 250, 0), 0 0 0 0 rgba(250, 250, 250, 0)!important;
color: var(--accent)!important;}

.wpmb-marker-image img {background: transparent!important;     filter: drop-shadow(0 0 0 rgba(0, 0, 0, 0));}
.wpmb-map button.maplibregl-ctrl-zoom-in, .wpmb-map button.maplibregl-ctrl-zoom-out {border-radius: 4px!important;}

.wpmb-map {
        border-radius: 0px;
}


/* globale Typografie */
h1, h2, h3, p, li, a {
  hyphens: auto;
  -webkit-hyphens: auto; /* Safari */
  -ms-hyphens: auto;     /* Legacy IE */
}


/* Mobile Optimierung */

@media (max-width: 599px) {

  h1, h2, h3 {
    text-wrap: balance;
    overflow-wrap: anywhere;
  }

  p, li, a {
    text-wrap: pretty;
    overflow-wrap: anywhere;
  }
	
	
	/* startseiten hero static */
	
	.herocover_static img.wp-block-cover__image-background {
    content: url('https://turspizdlju58gt.onstatic.studio/wp-content/uploads/2026/04/a-male-electrician-works-in-a-switchboard-with-an-2025-hero1-768x512.jpg')!important;
}
	

}



/* mobile container padding */
@media (max-width:599px){
	.entry-content {padding-right: clamp(1rem, 4vw, 2rem); padding-left: clamp(1rem, 4vw, 2rem);}
}
/*---------*/

.media-text-noleftpadding .wp-block-media-text__content {padding: 0 8% 0 0;}

.more_links .dyn {
  padding-left: 1.6em;
  position: relative;
}

.more_links .dyn::before {
  position: absolute;
  left: 0;
  top: 0.2em;

  content: "";
  width: 1em;
  height: 1em;

  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;

  background-image: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'>\
<path fill='%23b81839' d='m14.5 6.5-1 1 3.7 3.7H4v1.6h13.2l-3.7 3.7 1 1 5.6-5.5z'/>\
</svg>");
}

@media (max-width: 991px) {
	.herocover_static {max-height: 500px;}
	.more_links .wp-block-group {align-items: flex-start;}
	.more_links .wp-block-outermost-icon-block {padding-top: 4px;}
	
}
@media (min-width: 992px) {
	.herocover_static {min-height: 600px!important;}
	
}

@media (max-width: 991px){
	._c-accordion .wp-block-accordion-panel {padding-left: 32px!important;}
	
}
.claim_shadow {text-shadow: rgba(0, 0, 0, 0.4) 4px 6px 12px, rgba(0, 0, 0, 0.4) -4px -6px 12px;}
.schatten .icon-container {box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2);}
._c-accordion .wp-block-accordion-panel {margin-top: var(--wp--preset--spacing--small);}
._c-accordion .wp-block-accordion-heading__toggle-icon {color: var(--wp--preset--color--primary);}
._c-accordion .wp-block-accordion-heading__toggle:hover .wp-block-accordion-heading__toggle-title {
    text-decoration: none;
}

.equal-height .wp-block-columns.is-layout-flex {
    align-items: stretch;
}

/* Jede einzelne Spalte als Flex-Container */
.equal-height .wp-block-columns.is-layout-flex > .wp-block-column {
    display: flex;
    align-self: stretch;
}

/* Der direkte Inhalt in der Spalte soll komplett ausfüllen */
.equal-height .wp-block-columns.is-layout-flex > .wp-block-column > .wp-block-group {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    width: 100%;
}

/* rankmath accordion */

.rank-math-answer {
  display: none;
}

.rank-math-question.active + .rank-math-answer {
  display: block;
}

/* Responsive Padding – linker Einzug bleibt konstant */
@media (max-width:599px){
  .rank-math-question {
    padding: .6rem 1.6rem .6rem 46px;
	  font-weight: 600;
  }
}

@media (min-width:600px){
  .rank-math-question {
    padding: .2rem 2.5rem .2rem 46px;
	  font-weight: 600;
  }
}

.rank-math-question {
  position: relative;
  line-height: var(--wp--custom--line-height--normal);
  margin: 0;
}


/* Plus-Icon */
.rank-math-question::before {
  content: "+";
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.25s ease;
  font-weight: 300;
	color: var(--wp--preset--color--primary);
	font-size: 1.5rem;
}

/* Rotation zu X */
.rank-math-question.active::before {
  transform: translateY(-50%) rotate(45deg);
}

/* Answer Block */
.rank-math-answer {
  
  padding-left: 46px;
}

/* Liste */
.rank-math-list {
  display: grid;
  row-gap: 0rem;
}




/* Schalter */

/* custom */

:root :where(.wp-block-post-title a:where(:not(.wp-element-button)):hover) {
    text-decoration: none;
}


#cmplz-manage-consent .cmplz-manage-consent {
     font-size: .8rem;
    font-weight: 600;
}
/* Cookie Icon vor Complianz Button */

.cmplz-manage-consent {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
}

.cmplz-manage-consent::before {
    content: "";
    display: inline-block;
    width: 18px;
    height: 18px;
    flex-shrink: 0;

    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;

    background-image: url(https://turspizdlju58gt.onstatic.studio/wp-content/uploads/2026/03/cookie-svgrepo-com.svg);
}


.requirement-required:not(.popups .requirement-required) {
    color: var(--wp--preset--color--foreground, #333)!important;
}

@media (min-width:600px) {#Leistungsbox .icon-container {min-width:120px; min-height:120px;}
}

@media (max-width:599px) {
	#Leistungsbox .icon-container {padding: 1rem!important; min-width:80px!important; min-height:80px!important; width: 80px!important;}
}

section.popups .popup {
  
    z-index: 99997!important;
   
}




/*  – Floating Switch Glassmorphism Style */

.floating-switch {
    position: fixed;
    
    right: 14px;
   /* transform: translateY(-50%); */
    z-index: 99998;

    display: flex;
    flex-direction: column;
    gap: 0;

    opacity: 1;

    /* Neuer Hintergrund */
    background: rgba(255, 255, 255, 0.80); /* leichte Transparenz */

    /* Blur Effekt (Glassmorphism) */
    backdrop-filter: blur(10px); /* Standard */
    -webkit-backdrop-filter: blur(10px); /* Autoprefixer: Safari */

    color: var(--wp--preset--color--foreground);
	font-weight: 600;

     /* padding: 0.6rem 0.4rem; */
	flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: center;

    font-family: var(--wp--preset--font-family--rajdhani);

    /* leichte Abhebung vom Hintergrund */
    border: 1px solid rgba(0,0,0,0.06);
    border-radius: 4px;

    /* sanfter Schatten */
    box-shadow: 0 6px 18px rgba(0,0,0,0.08);
}

.floating-switch p {
    margin: .4rem 0 0 0;
    line-height: 1.4rem;
}





/* -----------------------------------
   Mobile Verhalten
----------------------------------- */

@media (max-width: 600px) {

    .floating-switch {
        opacity: 0;
        visibility: hidden;
        pointer-events: none;

        transition: opacity .35s ease, visibility .35s ease;
        /* Autoprefixer: -webkit-transition für Safari < 9 */
    }

    .floating-switch.is-visible {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }

}



/*end custom */


/* switch skalierung */

:root {
  --scale: 0.7;
}

.switch {
  transform: scale(var(--scale));
  transform-origin: center center;
}



/* Schalter-Stil */
.switch-text {font-size:.8rem;}
.switch-text span {font-weight: 400;
    font-size: 1.8rem;
    line-height: 1em;}

.switch {
  display: block;
  position: relative;
  background-color: black;
  width: 75px;          /* 150px / 2 */
  height: 97.5px;       /* 195px / 2 */
  box-shadow: 0 0 5px 1px rgba(0, 0, 0, 0.2), 0 0 0.5px 1px black, inset 0 1px 1px -1px white, inset 0 0 1px 7.5px #47434c, inset 0 0 1px 11px black; /* Alle box-shadow-Werte halbiert */
  border-radius: 2.5px; /* 5px / 2 */
  padding: 10px;        /* 20px / 2 */
  perspective: 350px;   /* 700px / 2 */
  z-index: 2;
  margin: 0 auto;
}

.switch input {
  display: none;
}

/* Schalter im "aus"-Zustand */
.switch input:not(:checked) + .sbutton {
  transform: translateZ(10px) rotateX(25deg); /* translateZ(20px) / 2 */
  box-shadow: 0 -5px 10px #ff1818; /* box-shadow-Werte halbiert */
}

.switch input:not(:checked) + .sbutton .light {
  animation: flicker 0.2s infinite 0.3s;
}

.switch input:not(:checked) + .sbutton .shine {
  opacity: 1;
}

.switch input:not(:checked) + .sbutton .shadow {
  opacity: 0;
}

.switch .sbutton {
  display: block;
  transition: all 0.3s cubic-bezier(1, 0, 1, 1);
  transform-origin: center center -10px; /* -20px / 2 */
  transform: translateZ(10px) rotateX(-25deg); /* translateZ(20px) / 2 */
  transform-style: preserve-3d;
  background-color: #9b0621;
  height: 100%;
  position: relative;
  cursor: pointer;
  background: linear-gradient(#980000 0%, #6f0000 30%, #6f0000 70%, #980000 100%);
  background-repeat: no-repeat;
}

.switch .sbutton::before {
  content: "";
  background: linear-gradient(rgba(255, 255, 255, 0.8) 10%, rgba(255, 255, 255, 0.3) 30%, #650000 75%, #320000) 50% 50%/97% 97%, #b10000;
  background-repeat: no-repeat;
  width: 100%;
  height: 25px; /* 50px / 2 */
  transform-origin: top;
  transform: rotateX(-90deg);
  position: absolute;
  top: 0;
}

.switch .sbutton::after {
  content: "";
  background-image: linear-gradient(#650000, #320000);
  width: 100%;
  height: 25px; /* 50px / 2 */
  transform-origin: top;
  transform: translateY(25px) rotateX(-90deg); /* translateY(50px) / 2 */
  position: absolute;
  bottom: 0;
  box-shadow: 0 25px 4px 0px black, 0 40px 10px 0px rgba(0, 0, 0, 0.5); /* box-shadow-Werte halbiert */
}

.switch .light {
  opacity: 0;
  animation: light-off 1s;
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: radial-gradient(#ffc97e, #ff1818 40%, transparent 70%);
}

.switch .sdots {
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: radial-gradient(transparent 30%, rgba(101, 0, 0, 0.7) 70%);
  background-size: 5px 5px; /* 10px / 2 */
}

.switch .characters {
  position: absolute;
  width: 100%;
  height: 100%;
  background: linear-gradient(white, white) 50% 20%/2.5% 10%, radial-gradient(circle, transparent 50%, white 52%, white 70%, transparent 72%) 50% 80%/16.5% 12.5%; /* background-size-Werte halbiert */
  background-repeat: no-repeat;
}

.switch .shine {
  transition: all 0.3s cubic-bezier(1, 0, 1, 1);
  opacity: 0.3;
  position: absolute;
  width: 100%;
  height: 100%;
  background: linear-gradient(white, transparent 3%) 50% 50%/97% 97%, linear-gradient(rgba(255, 255, 255, 0.5), transparent 50%, transparent 80%, rgba(255, 255, 255, 0.5)) 50% 50%/97% 97%;
  background-repeat: no-repeat;
}

.switch .shadow {
  transition: all 0.3s cubic-bezier(1, 0, 1, 1);
  opacity: 1;
  position: absolute;
  width: 100%;
  height: 100%;
  background: linear-gradient(transparent 70%, rgba(0, 0, 0, 0.8));
  background-repeat: no-repeat;
}


@keyframes flicker {
  0% { opacity: 1; }
  80% { opacity: 0.8; }
  100% { opacity: 1; }
}

@keyframes light-off {
  0% { opacity: 1; }
  80% { opacity: 0; }
}





/* Form */

.customform form input, .customform form textarea {background-color: var(--wp--custom--greyd--input--prim--color--background);}


.customform .select-selected, .customform .dropdown:not(.custom-select) {background-color: var(--wp--custom--greyd--input--prim--color--background)!important;}


/* Schmucklinie*/




.s-line {
  position: relative;
  display: inline-block;    /* passt sich der Überschrift an */
  padding-bottom: 8px;      /* Platz für die Linien (anpassen nach Bedarf) */
  margin: 0;                /* falls Standardabstände stören */
}

/* graue Linie: volle Breite, ganz unten im Padding-Bereich */
.s-line::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;                /* sitzt am unteren Rand des Padding-Bereichs */
  width: 100%;
  height: 1px;
  background: var(--wp--preset--color--dark);
  z-index: 1;
}

/* rote Linie: 50% Breite, linksbündig, direkt über der grauen Linie */
.s-line::before {
  content: "";
  position: absolute;
  left: 0;                  /* linksbündig */
  bottom: 1px;              /* 1px über der grauen Linie (weil diese 1px hoch ist) */
  width: 50%;
  height: 2px;
  background: var(--wp--preset--color--primary);
  z-index: 2;               /* über der grauen Linie */
}



body, .dots {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='30' height='30'><circle cx='21' cy='21' r='1' fill='%23ccc' fill-opacity='0.6'/></svg>");
    background-repeat: repeat;
    background-size: 30px 30px, auto;
    
}
.herotext h1,
.herotext p {
  background: linear-gradient(180deg, rgb(184, 24, 57) 50%, rgb(155, 13, 13) 100%);
  /*background-color: var(--wp--preset--color--primary);*/
  color: var(--wp--preset--color--lightest)!important; /* Textfarbe */
  padding: 0.5rem 1.8rem; /* Innenabstand */
 display: inline-block;
  margin-inline: auto;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
}

.herotext img {box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);}

.herotext {text-align: center;}

@media (min-width: 1240px){

.websitelogo img {max-width: 200px;}

}
.darkdots {
    position: relative;
}

.darkdots::before {
    content: "";
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='30' height='30'><circle cx='21' cy='21' r='1' fill='%236e7271' fill-opacity='0.6'/></svg>");
    background-repeat: repeat, no-repeat;
    background-size: 30px 30px, cover;
    background-position: 0 0, center;
    z-index: 0;
}

.darkdots > * {
    position: relative;
    z-index: 1; /* Content über dem Pseudo-Element */
}


.bg_lines {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10' preserveAspectRatio='none'><path d='M0 10 L10 0' stroke='%23f2f2f2' stroke-width='1' fill='none'/></svg>");
  background-repeat: repeat;
  background-size: 10px 10px; /* Abstand zwischen Linien */
}





.wprs_unslider-arrow {color:#ffffff!important;}



.top_bar {
    max-width: fit-content!important;
    margin-left: auto !important;
    margin-right: 0!important;
    /*background-color: var(--wp--preset--color--primary);
    background: linear-gradient(180deg, rgb(184, 24, 57) 0%, rgb(92, 10, 10) 100%);*/
    background: linear-gradient(180deg, rgb(184, 24, 57) 50%, rgb(155, 13, 13) 100%);
   
}

/*Verlauf*/

.redgradient {

  background: linear-gradient(180deg, rgb(184, 24, 57) 50%, rgb(155, 13, 13) 100%);
}


.gradienthoverbox {

background: 
  linear-gradient(to top, rgb(132,11,11), rgb(184,24,57) 100%), /* vertikaler Verlauf */
  linear-gradient(to right, rgba(184,24,56,0) 0%, rgba(184,24,56,0) 100%); /* horizontaler Alpha-Teil */
background-size: 20% 100%, 100% 100%;
background-repeat: no-repeat;



}




@media (max-width:576px) {
	
	header {max-height:124px;}

.top_bar {margin-right: auto!important;}

	.secondary_nav a {
    line-height: 1.6rem!important;
    text-align: center;
    color: #ffffff;
    cursor: pointer;
    min-height: 3rem;
    justify-content: center;
    display: grid;
    align-items: center;
    justify-items: center;
		align-content:center;
		grid-auto-flow: column;
		
}

}


/*button effekt */

a.button, button.wp-block-greyd-forms-submitbutton {
  text-align: center;
  position: relative; /* wichtig für ::after */
  cursor: pointer;
  
  transition: all 0.5s;
}

button.wp-block-greyd-forms-submitbutton .icon_mail {margin-top:-5px;}

/* Pfeil direkt am Button */
.button::after, button.wp-block-greyd-forms-submitbutton:after {
  content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23ffffff" d="M6.6 6L5.4 7l4.5 5-4.5 5 1.1 1 5.5-6-5.4-6zm6 0l-1.1 1 4.5 5-4.5 5 1.1 1 5.5-6-5.5-6z"/></svg>');
  position: absolute;
  top: 50%;
  right: 25px;
  transform: translateY(-50%);
  opacity: 0;
  transition: all 0.5s;
  width: 1.2em;
  height: 1.2em;
}

a.is-style-sec::after{
  content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23b81839" d="M6.6 6L5.4 7l4.5 5-4.5 5 1.1 1 5.5-6-5.4-6zm6 0l-1.1 1 4.5 5-4.5 5 1.1 1 5.5-6-5.5-6z"/></svg>');
  position: absolute;
  top: 50%;
  right: 25px;
  transform: translateY(-50%);
  opacity: 0;
  transition: all 0.5s;
  width: 1.2em;
  height: 1.2em;
}


@media (min-width:1240px){
.wp-block-navigation-submenu li a span::after{
  content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23b81839" d="M6.6 6L5.4 7l4.5 5-4.5 5 1.1 1 5.5-6-5.4-6zm6 0l-1.1 1 4.5 5-4.5 5 1.1 1 5.5-6-5.5-6z"/></svg>');
  position: absolute;
  top: 50%;
  right: 25px;
  transform: translateY(-50%);
  opacity: 0;
  transition: all 0.5s;
  width: 1.2em;
  height: 1.2em;
}
}

/* Hover-Effekt */
.button:hover::after, .wp-block-navigation-submenu li a span:hover::after, .wp-block-greyd-forms-submitbutton:hover::after {
  opacity: 1;
  right:  var(--wp--custom--greyd--button--spacing--padding--right);
}

/* Optional: leichter Padding-Effekt beim Hover */
a:not(.custom_button).button:hover, .wp-block-greyd-forms-submitbutton:hover {
  padding-right: 4rem;
  padding-left: 2.5rem;
}

a.custom_button span {text-align:left;}

.wp-block-navigation-submenu li.is-style-button-alternate a:hover {background-color: var(--wp--preset--color--lightest)!important; color: var(--wp--preset--color--foreground)!important;}

/*Accordion*/

.wp-block-greyd-accordion__title::before {
    content: '';
    display: inline-block;
    width: 76px;
    height: 62px;
    background-image: url('data:image/svg+xml,<svg width="29" height="29" viewBox="0 0 29 29" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="29" height="29" fill="%23B81839"/><g clip-path="url(%23clip0_3605_15)"><path fill-rule="evenodd" clip-rule="evenodd" d="M20.637 8.19838C21.0627 8.5502 21.1227 9.18052 20.7708 9.60625L12.7308 19.3355L12.7284 19.3384C12.5455 19.558 12.316 19.7341 12.0566 19.8538C11.7971 19.9736 11.5142 20.034 11.2284 20.0307C10.938 20.0271 10.6512 19.9577 10.3915 19.8278C10.1325 19.6984 9.9062 19.5121 9.72931 19.283C9.72871 19.2822 9.72812 19.2815 9.72752 19.2807L7.21063 16.0447C6.87156 15.6088 6.9501 14.9805 7.38604 14.6414C7.82199 14.3024 8.45027 14.3809 8.78934 14.8168L11.2529 17.9843L19.2291 8.33222C19.5809 7.90649 20.2113 7.84657 20.637 8.19838Z" fill="white"/></g><defs><clipPath id="clip0_3605_15"><rect width="14" height="14" fill="white" transform="translate(7 7)"/></clipPath></defs></svg>');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    margin-right: 0.8rem;
}
.wp-block-greyd-accordion__title {font-weight: var(--wp--custom--font-weight--semi-bold, 600);}

/*NAV*/
/*
.mainnav a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 0%;
    height: 2px;
    background: var(--wp--preset--color--primary);
    transition: width 0.4s ease-in-out;
}

ul.mainnav .current-menu-item::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 100%;
    height: 2px;
    background: var(--wp--preset--color--primary);
    transition: width 0.4s ease-in-out;
}

.mainnav a:hover:not(.wp-block-greyd-popover a:hover)::after {
    width: 100%;
}
*/
/*NAV VARIANTE 2*/

.mainnav a {
  position: relative;
  display: inline-block;
}

.mainnav a::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 2px;
  bottom: 0;
  left: 0;
  background-color: var(--wp--preset--color--primary);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.3s ease;
}
@media (min-width: 1241px) {
.mainnav a:hover:not(.wp-block-greyd-popover a:hover)::after, ul.mainnav .current-menu-item a::after, body.leistungen ul.mainnav li:nth-child(3) a::after {
  transform: scaleX(1);
}
}

 .wp-block-navigation .wp-block-navigation__submenu-container a:hover::after {transform: scaleX(0)!important;}


:root :where(.wp-block-navigation a:where(:not(.wp-element-button))) {text-decoration: none;}

@media (min-width: 1241px){
	
	.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container {
    --nav-submenu--border-radius: 0px;
    --nav-submenu--background-color: var(--wp--preset--color--lightest);
    color: inherit;
    border: none;
    background-color: var(--nav-submenu--background-color);
    border-radius: 0;
    box-shadow: none;
}
	
	.mainnav li ul span {font-size: var(--wp--preset--font-size--normal); font-weight: var(--wp--custom--font-weight--regular);}
	.mainnav .wp-block-navigation-submenu li {min-width:260px; }
	.mainnav .wp-block-navigation-submenu {left:0!important;}
	
}


@media (max-width:1240px){
 .mainnav {row-gap: .6rem; justify-content: flex-start!important;}
 .top_bar {justify-content: center; max-width: none!important; }
 .mainnav li a span, .mainnav li button span {font-size: var(--wp--preset--font-size--medium);}
	.mainnav li ul span {font-size: var(--wp--preset--font-size--normal); font-weight: var(--wp--custom--font-weight--regular);}
 .top_bar_wrapper, .page .top_bar_wrapper, .single .top_bar_wrapper, .archive .top_bar_wrapper  {margin-left: calc(-50vw + 50%)!important; /* aus dem Wrapper rausziehen */
    margin-right: calc(-50vw + 50%)!important; width: 100vw !important;} 
	
	.mainnav li .wp-block-navigation-submenu li a span {color: var(--wp--preset--color--darkest);}
	.mainnav li .wp-block-navigation-submenu {padding-right: var(--wp--custom--greyd--button--spacing--padding--right)!important;}
	.wp-block-navigation-submenu .wp-block-navigation__submenu-icon {padding-left:5px!important;}
	
	.subside_hero {min-height: 130px!important;}

}

/*Footer NAV*/
/*
footer nav a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 0%;
    height: 2px;
    background: var(--wp--preset--color--lightest);
    transition: width 0.4s ease-in-out;
}

footer nav a:hover::after {width:100%;}
*/
/*Footer NAV V2*/

footer nav a {
  position: relative;
  display: inline-block;
}

footer nav a::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 1px;
  bottom: 0;
  left: 0;
  background-color: var(--wp--preset--color--lightest);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.3s ease;
}

footer nav a:hover::after {
  transform: scaleX(1);
}






.e_icon::after {
  content: "";
  position: absolute;
  top: 0px;
  right: 0px;
  width: 40px;
  height: 40px;
  background: url('https://turspizdlju58gt.onstatic.studio/wp-content/uploads/2025/10/E.svg') no-repeat center center;
  background-size: contain;
  z-index:20;
}



/*Slider*/
.swiper {margin-left: 0 !important; margin-right:0 !important;}



.swiper-button-next, .swiper-button-prev {
        box-sizing: content-box!important;
}
.swiper-button-next:after, .swiper-button-prev:after {
     background-color: none!important;
    padding: .3rem;
    height: -webkit-fill-available;
    font-size: large!important;
    line-height: 1.5!important;
    color: var(--wp--preset--color--lightest);
   
}
.swiper-button-next:after, .swiper-button-prev:after {
    background-color: none!important;
    padding: .3rem;
    height: -webkit-fill-available;
    font-size: large!important;
    line-height: 1.5!important;
    color: var(--wp--preset--color--lightest);
    width: 42px!important;
    height: 42px!important;
}

@media (max-width: 991px) {
	 .contentslider, .contentslider .swiper-wrapper .wp-block-cover img {max-height: 500px;}
	.contentslider .swiper-slide .wp-block-cover {min-height: 500px!important; max-height: 500px!important;}
    .contentslider::after {
   width: 45px;
  height: 45px;
    }
.error404 .wp-block-cover.404_hero, .error404 .wp-block-cover.404_hero img  {min-height: 500px!important; max-height: 500px!important;}

}

.heroslidertext p, .heroslidertext .wp-block-group {width: fit-content; 
}
.heroslidertext .wp-block-group {box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);}
.secondcover {overflow: visible!important;}


@media (max-width:576px) {

.heroslidertext {padding-left: 1rem;}

}

/*Textanimation Slider*/

.heroslidertext > * {
  opacity: 0;
  transform: translateX(40px);
  transition: all 0.9s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.swiper-slide-active .heroslidertext > *:nth-child(1) {
  transition-delay: 0.1s;
  opacity: 1;
  transform: translateX(0);
}
.swiper-slide-active .heroslidertext > *:nth-child(2) {
  transition-delay: 0.3s;
  opacity: 1;
  transform: translateX(0);
}
.swiper-slide-active .heroslidertext > *:nth-child(3) {
  transition-delay: 0.5s;
  opacity: 1;
  transform: translateX(0);
}


/*secondary nav*/

@media (max-width:599px){
.secnav_wrapper {margin-right: calc(var(--wp--style--root--padding-right) * -1)!important;
    margin-left: calc(var(--wp--style--root--padding-left) * -1)!important;}
}

/* Grundlayout */
.secondary_nav {
    margin: 0 auto;
    position: relative;
    width: 100%;
    max-width: 1600px;
    height: 50px;
    background-color: var(--wp--preset--color--dark);
    display: flex;
    justify-content: space-between;
    border-radius: 0px;
    flex-wrap: nowrap;
}

.secondary_nav a {
    line-height: 50px;
    font-size: var(--wp--preset--font-size--tiny);
    text-decoration: none;
    text-align: center;
    color: #ffffff;
    cursor: pointer;
    flex: 1;
    position: relative;
    z-index: 1;
}



/* Hoverbox */

/* Hoverbox Border*/



#Hoverbox .hoverbox_image::before, #Hoverbox .hoverbox_image::after {
  border: 0 solid transparent;
  box-sizing: border-box;
  content: "";
  pointer-events: none;
  position: absolute;
  width: 0;
  height: 0;
  bottom: 0;
  right: 0;
}
#Hoverbox .hoverbox_image::before {
  border-bottom-width: 4px;
  border-left-width: 4px;
	z-index:2;
}
#Hoverbox .hoverbox_image::after {
  border-top-width: 4px;
  border-right-width: 4px;
	z-index:2;
}

#Hoverbox:hover .hoverbox_image::before, #Hoverbox:hover .hoverbox_image::after {
  border-color: var(--wp--preset--color--primary);
  transition: border-color 0s, width 0.35s, height 0.35s;
  width: 100%;
  height: 100%;
}
#Hoverbox:hover .hoverbox_image::before {
  transition-delay: 0s, 0s, 0.35s;
}
#Hoverbox:hover .hoverbox_image::after {
  transition-delay: 0s, 0.35s, 0s;
}


/* #Hoverbox:hover .hb_content {background-color: var(--wp--preset--color--custom-hellgrau);} */





.btn {
  background: none;
  border: none;
  cursor: pointer;
  line-height: 1.5;
  font: 700 1.2rem "Roboto Slab", sans-serif;
  padding: 1em 2em;
  letter-spacing: 0.05rem;
}
.btn:focus {
  outline: 2px dotted #55d7dc;
}




/* Standard Hover-Animation */
.secondary_nav .animation {
    position: absolute;
    height: 100%;
    top: 0;
    z-index: 0;
    transition: all .3s ease;
    background: linear-gradient(180deg, rgb(184, 24, 57) 50%, rgb(155, 13, 13) 100%);
    border-radius: 0;
    width: 0;
    left: 0;
}

/* Animation Position beim Hover */
.secondary_nav a:nth-child(1):hover ~ .animation { left: 0; width: calc(100% / 6); }
.secondary_nav a:nth-child(2):hover ~ .animation { left: calc(100% / 6); width: calc(100% / 6); }
.secondary_nav a:nth-child(3):hover ~ .animation { left: calc(100% / 6 * 2); width: calc(100% / 6); }
.secondary_nav a:nth-child(4):hover ~ .animation { left: calc(100% / 6 * 3); width: calc(100% / 6); }
.secondary_nav a:nth-child(5):hover ~ .animation { left: calc(100% / 6 * 4); width: calc(100% / 6); }
.secondary_nav a:nth-child(6):hover ~ .animation { left: calc(100% / 6 * 5); width: calc(100% / 6); }

/* Fixierte aktive Seite anhand body-Klasse */
body.altbausanierung .secondary_nav a:nth-child(1),
body.neubauinstallation .secondary_nav a:nth-child(2),
body.netzwerktechnik .secondary_nav a:nth-child(3),
body.gebaeudetechnik .secondary_nav a:nth-child(4),
body.elektropruefungen .secondary_nav a:nth-child(5),
body.e-mobilitaet .secondary_nav a:nth-child(6) {
    background: linear-gradient(180deg, rgb(184, 24, 57) 50%, rgb(155, 13, 13) 100%);
}

/* Responsive unter 1400px: zwei Spalten */
@media (max-width: 1400px) {
   .secondary_nav {
        flex-wrap: wrap;
        height: auto;
        gap: 1px;
        background-color: #ffffff;
    }

    .secondary_nav a {
        flex: 0 0 calc(50% - 0.5px);
        box-sizing: border-box;
        padding: 0 10px;
        text-align: center;
        background-color: var(--wp--preset--color--dark);
		font-size:0.8rem!important;
    }

    .secondary_nav .animation {
        display: none;
    }

    .secondary_nav a:hover {
        background: linear-gradient(180deg, rgb(184, 24, 57) 50%, rgb(132, 11, 11) 100%);
    }

    /* Aktiv-Link auch mobil fixieren */
    body.altbausanierung .secondary_nav a:nth-child(1),
    body.neubauinstallation .secondary_nav a:nth-child(2),
    body.netzwerktechnik .secondary_nav a:nth-child(3),
    body.gebaudetechnik .secondary_nav a:nth-child(4),
    body.e-check .secondary_nav a:nth-child(5),
    body.e-ladestation .secondary_nav a:nth-child(6) {
        background: linear-gradient(180deg, rgb(184, 24, 57) 50%, rgb(155, 13, 13) 100%);
    }
}

.secondary_nav a svg {
  display:inline-block;
  transform-origin:center center;
  transition: transform 180ms ease;
  margin-right: 0.5rem;
}
@media (min-width: 577px){
.secondary_nav a:hover svg {
  transform: scale(1.5);
}

}
@media (max-width: 576px){
.secondary_nav a:hover svg {
  transform: scale(1.3);
}

}





/*Google reviews Slider*/


span.svgicons.svg-wprsp-verified {
    background: #1899cd;
}

.wprs_unslider-arrow {
    display: block;
    width: 25px;
    height: 25px;
    top: 50%;
    right: 10px;
    left: auto;
    margin-top: -30px;
    overflow: hidden;
    background: rgb(184, 24, 57) no-repeat 58% 51%;
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAQCAQAAABuQZ3IAAAAi0lEQVR4AU3OISBEQQBAwS0AACS9NxqQgCZpkiYBVddFvWhAAUABAPQCAGC4g/0vTnrBqCfDIZl70J+kMUBPpEwT4FNXxBxz4F1HxHyr4EVTxBLb4EFNxEon4CJSlVNw9AcV9sC16h8osgke1P1ArgXwouVvdQq86ww/GQefusNf7kBviBlxpT8k+gL/Wox4r1d4MwAAAABJRU5ErkJggg==');
    background-size: 7px 11px;
    border-radius: 0px;
    text-indent: -999em;
    opacity: 1;
    transition: opacity .2s;
    border-width: 0!important;
}