/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Dec 08 2025 | 14:49:54 */
/*Versteckt solange das KP nicht online ist*/
.cta-kp-hidden{
	display:none;
}

/*CSS TEMPLATE cre8ors*/
/* BEM  Block Element Modifier */
/* block-name__p__rot */

/*=== Globale Regeln ===*/

html, body {
    max-width: 100%;
    overflow-x: hidden;
	/*height:auto!important;*/
	scroll-padding: 40px;
}

/** Resets **/

.entry-content {
  margin-top: 0!important;
}

:where(*) {
  box-sizing: border-box;
}

html{
	scroll-behavior:smooth;
}

/** WP & GP Resets **/

.wp-block-group>.wp-block-group__inner-container {
  padding: 0;
}

.wp-block-group__inner-container {
  max-width: inherit;
}

:where(.wp-block-columns) {
  margin-bottom: 0;
}

.wp-block-cover {
  padding: 0;
}

/* Beitragsseiten Overwrites */

.inside-article>.entry-header,
footer.entry-meta {
  display: none;
}

.type-post>.inside-article>.entry-content {
  margin-top: clamp(48px, 7.5vw, 144px);
}

/** Defaults **/

.hidden {
  display: none !important;
}

/** Variabeln **/

:root {

  /* Typo */
  --html-b: 125%;
  --bfs: 1rem;

  /* Color */
  --dark-blue: #2B4450;
  --dark-green: #3E5A69;
  --green: #728FA3;
  --blue: #8CB5CF;
  --grey: #E9ECED;

  /* Layout */
  --main-cont: 76.56vw;
  --secd-cont: 71.04vw;

  /* Border-Radius */
  --border-radius: clamp(15px, 1.04vw, 20px);
}

/*=== Typographie ===*/

/** Einbindung **/

@font-face {
  font-family: 'Lato-Bold';
  src: url('/wp-content/fonts/Lato-Bold.eot');
  src: url('/wp-content/fonts/Lato-Bold.eot?#iefix') format('embedded-opentype'),
    url('/wp-content/fonts/Lato-Bold.ttf') format('truetype'),
    url('/wp-content/fonts/Lato-Bold.svg') format('svg'),
    url('/wp-content/fonts/Lato-Bold.woff') format('woff'),
    url('/wp-content/fonts/Lato-Bold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
}

/* SCHRIFTSCHNITT B  */
@font-face {
  font-family: 'Lato-Regular';
  src: url('/wp-content/fonts/Lato-Regular.eot');
  src: url('/wp-content/fonts/Lato-Regular.eot?#iefix') format('embedded-opentype'),
    url('/wp-content/fonts/Lato-Regular.ttf') format('truetype'),
    url('/wp-content/fonts/Lato-Regular.svg') format('svg'),
    url('/wp-content/fonts/Lato-Regular.woff') format('woff'),
    url('/wp-content/fonts/Lato-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
}

/* Font Zuweisung  */
html,
body {
  font-family: 'Lato-Regular', sans-serif;
  font-weight: 400;
  font-style: normal;
}


h1,.h1,
h2,.h2,
h3,.h3,
h4,.h4,
h5,.h5,
h6 {
  font-family: 'Lato-Bold', sans-serif;
  font-weight: 700;
  font-style: normal;
  text-transform: Uppercase;
  letter-spacing: 0.5px;
  margin-bottom: clamp(24px, 2em, 36px);
}

/** Styling  **/

/* Color */

body {
  color: white;
  background-color: var(--dark-blue);
}

.has-white-background-color {
  color: var(--dark-blue);
}

/* Font-Sizes */

html {
  font-size: var(--html-b);
}

h1 {
  font-size: 1rem;
}

h2, .h2 {
  font-size: clamp(24px, 1.98vw, 38px);
}

h3, .h3 {
  font-size: clamp(22px, 1.46vw, 28px);
}

h4, .h4 {
  font-size: clamp(18px, 1.25vw, 24px);
}

body {
  font-size: clamp(16px, 1.67vw, var(--bfs));
}

/* Link */

a {
  text-decoration: none;
  font-family: inherit;
  font-weight: inherit;
}


a:hover {
  text-decoration: none;
}

a:not(.wp-block-button__link):hover {
  text-decoration: underline;
}


/* Font-Styles & Sonderklassen */

h1 {
  max-width: clamp(300px, 35vw, 661px);
}

.h1-support {
  font-size: clamp(32px, 2.71vw, 52px);
  line-height: clamp(36px, 3vw, 56px);
	position:relative;
	bottom:5px;
}

.h1-support br {
  margin-bottom: 16px;
}

h2.is-cont-width__secd {
  margin-bottom: 20px;
}

.h2-sub{
	font-size:1rem;
}

.type-post h3,
.type-post h4 {
  font-size: clamp(16px, 1.67vw, var(--bfs));
}


/*=== Layout ===*/

.entry-content .alignwide {
  width: var(--main-cont);
  max-width: 1470px;
  margin-left: unset;
}

.one-container .site-content {
  padding: 0;
}

.is-cont-width__main {
  width: var(--main-cont);
  max-width: 1470px;
  margin: 0 auto;
}

.is-cont-width__secd {
  width: var(--secd-cont);
  max-width: 1364px;
  margin: 0 auto;
}

/** Main Container **/

.container.grid-container {
  max-width: 1470px;
  width: var(--main-cont);
  margin-left: auto;
  margin-right: auto;
}

/** Header **/


/* Logo */

.logo-container {
  width: auto;
  height: 76px;
  top: 16px;
  left: 24px;
  position: fixed;
  display: inline-block;
  cursor: pointer;
  background: #fff;
  padding: 18px 32px 10px;
  border-radius: 999px;
  z-index: 999;
  overflow: hidden;
  color: #ffff;
  transition: ease 0.3s;
}

.logo-container:hover,
.logo-container:has(a:focus) {
  background-color: var(--blue);
  transition: ease 0.3s;
}


.logo-container:hover path,
.logo-container:has(a:focus) path {
  fill: white;
  transition: ease 0.3s;
}

.logo-container a {
  height: 84%;
  display: inline-block;
}


/* HauptNav */

.nav-container {
  position: fixed;
  top: 16px;
  right: 24px;
  z-index: 999;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.expanding-menu {
  display: flex;
  align-items: center;
  background-color: var(--blue);
  border-radius: 99px;
  overflow: hidden;
  margin-top: 6px;
  max-width: 64px;
  height: 64px;
  transition: max-width 0.4s ease-in-out,
    background-color 0.4s ease-in-out,
    padding-left 0.4s ease-in-out;
  backdrop-filter: blur(0);
  position:relative;
  z-index: 1;
	will-change: max-width, transform, opacity;
}

.menu-trigger {
  width: 64px;
  height: 64px;
  top:0;
  right: 0;
  border: none;
  cursor: pointer;
  transition: color 0.4s ease;
  background-color: transparent !important;
  position: absolute;
  z-index: 3;
}

.menu-trigger .menu-icon {
  width: 25px;
  height: 25px;
  display: block;
  transition: transform 0.4s ease;
}

.menu-text {
  font-size: 0.9rem;
  align-self: end;
  margin-right: 9.6px;
  color: white;
  margin-top: 5px;
  transition: color 0.4s ease-in-out,
    margin-top 0.4s ease-in-out;
}

.menu-links {
  display: flex;
  list-style: none;
  margin: 0 64px 0 0;
  padding: 0 0 0 24px;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-in-out;
  transition-delay: 0.16s;
  z-index: 2;
}

.menu-links li {
  margin: 0 clamp(6px, 3vw, 18px);
}

.menu-links a {
  text-decoration: none;
  color: var(--dark-blue);
  font-size: 0.9rem;
  position:relative;
  z-index:999;
}

/* HauptNav ist Aktiv/Hover/Focus */

.expanding-menu.is-active {
  max-width: 100%;
  background-color: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(4px);
  z-index: 2;
}

.expanding-menu:not(.is-active):hover,
.expanding-menu:not(.is-active):has(.menu-trigger:focus) {
  background-color: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(4px);
}

.expanding-menu.is-active .menu-links {
  opacity: 1;
  pointer-events: auto;
  transition-delay: 0.1s;
  transition: opacity 0.3s ease-in-out;
  z-index: 3;

}

.expanding-menu:not(.is-active) .menu-trigger:hover path,
.expanding-menu:not(.is-active) .menu-trigger:focus path,
.expanding-menu.is-active .menu-trigger path {
  fill: var(--dark-blue);
  transition: ease 0.4s;
}

.expanding-menu:not(.is-active) .menu-trigger:hover .menu-icon,
.expanding-menu:not(.is-active) .menu-trigger:focus .menu-icon {
  transform: rotate(90deg);
  transform-origin: center;
}

.expanding-menu.is-active .menu-trigger .menu-icon {
  transform: rotate(180deg);
  transform-origin: center;
}

.expanding-menu:not(.is-active):hover+.menu-text,
.expanding-menu.is-active+.menu-text,
.expanding-menu:not(.is-active):has(button:focus)+.menu-text,
.expanding-menu.is-active+.menu-text {
  margin-top: 10px;
}

/** Quicknav **/

.quicknav-container {
  z-index: 999;
  position: fixed;
  top: 40%;
  left: 0px;
  display: flex;
  flex-direction: column;
  pointer-events: none;
}

.mail-icon,
.portal-icon,
.lqc-icon,
.n5-icon{
  background-color: var(--blue);
  display: flex;
  flex-direction: row-reverse;
}

.quicknav-container a {
  z-index: 99;
  display: flex;
  width: 280px;
  height: 60px;
  position: relative;
  left: -215px;
  margin-bottom: 10px;
  padding: 10px 10px 8px 8px;
  color: var(--dark-blue);
  align-items: center;
  border-radius: 0px 999px 999px 0px;
  box-shadow: inset 0 0 0.5em 0 var(--blue), 0 0 0.5em 0 var(--blue);
  transition: 0.4s ease;
  pointer-events: auto;
}

.quicknav-container p{
	margin-left:5px;
}
@media screen and (min-width: 901px) {
.mail-icon:hover,
.portal-icon:hover,
.mail-icon:focus,
.portal-icon:focus,
.n5-icon:hover,
.n5-icon:focus,
.lqc-icon:hover,
.lqc-icon:focus{
  transform: translatex(180px);
  transition: 0.2s ease;
}
}
/*Quicknavi RESPONSIV*/
@media(max-width:900px){
	.quicknav-container{
		display:none!important;
	}
	.mail-icon > img,
.portal-icon > img,
.lqc-icon > img,
.n5-icon > img{
  max-width: 85%;
}
}

@media(min-width:901px){
	.float-container2{
		display:none!important;
	}
}

.float-container2 {
    z-index: 99999;
    position: fixed;
    bottom: 20px;
    display: flex;
    flex-direction: row;
    align-items: center;
	  gap:20px;
	  right:20px;
	  margin-right:10px;
}

.icon-three2,
.icon-two2,
.icon-one2{
  background-color: var(--blue);
  display: flex;
  flex-direction: row-reverse;
}

.float-container2 a {
    text-transform:none;
    z-index: 99;
    display: flex;
    height: 50px;
	  width:50px;
    position: relative;
    padding: 5px 5px 5px 5px;
    text-decoration: none;
    color: white;
    align-items: center;
    justify-content: center;
    border-radius:25px;
    box-shadow: inset 0 0 0.5em 0 var(--blue), 0 0 0.5em 0 var(--blue);
}

/** Footer **/

.site-footer.grid-container {
  max-width: 100vw;
  background-color: white;
}

.site-footer footer {
  max-width: 1364px;
  width: var(--secd-cont);
  padding: clamp(60px, 4.17vw, 80px) 0 40px 0;
  margin: 0 auto;
}

.footer-content-wrapper {
  gap: 24px 64px;
}

.footer-link-wrapper__h {
  gap: 32px;
}

.footer-link-wrapper__v:last-of-type {
  margin-right: auto;
}

.footer-link-wrapper__h>.footer-link-wrapper__v {
  max-width: 160px;
  min-width: 110px;
}

nav.footer-navigation {
  margin-top: 1%;
}

.footer-legal {
  margin-top: 40px;
}

.is-layout-flex>.footer-logo-wrapper {
  margin-bottom: 16px;
}

.footer-logo-wrapper svg {
  max-width: 250px;
}

.is-layout-flex>.footer-social-icons-wrapper {
  margin-top: 24px;
}

.footer-social-icons-wrapper {
  width: 85%;
  display: flex;
  justify-content: space-between;
}

.footer-social-icons-wrapper img {
  height: 30px;
}

.site-footer .h4 {
  margin-bottom: 4px;
  font-size: 1rem;
}

.site-footer ul {
  margin: 0;
}

.site-footer p,
.site-footer li {
  line-height: 1.1rem;
  margin-bottom: 0;
  font-size: 0.8rem;
}

.site-footer li {
  list-style: none;
  margin-bottom: 8px;
}

.footer-kontakt-wrapper li {
  margin-bottom: 4px;
}

.footer-link-wrapper__v {
  gap: 8px;
}

/** Beiträge Layout **/

.type-post>.inside-article .wp-block-columns {
  gap: clamp(24px, 4.17vw, 80px)
}

/** Utilitie Klassen **/
.is__displaced__top {
  position: relative;
  top: -60px;
  margin-bottom: -60px;
}

.is__displached-img__left {
  position: relative;
  top: -60px
}

.has__reduced-width {
  width: 45vw;
}

.has__border-radius {
  border-radius: var(--border-radius);
}

.has__border-radius__right {
  border-radius: 0 var(--border-radius) var(--border-radius) 0;
}

.has__border-radius__left {
  border-radius: var(--border-radius) 0 0 var(--border-radius);
}

.single-corner-right {
  border-radius: 0 var(--border-radius) 0 0;
}

.single-corner-left {
  border-radius: 0 0 0 var(--border-radius);
}

.margin-left__adept-to-secd {
  margin-left: calc((5.52vw)/2);
}

/*Cover Team*/
#cover-team{
	background-image:url(/wp-content/uploads/2025/08/Sommerfest-2024-bearbeitet-scaled.jpg);
	background-size: cover;
}
#cover-team > img{
	display:none
}

@media(max-width:780px) {

  .has__border-radius__left,
  .has__border-radius__right {
    border-radius: var(--border-radius) var(--border-radius) 0 0;
  }
}

.gradient-box {
  background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0)85%, rgba(255, 255, 255, 1)85.1%,
      rgba(255, 255, 255, 1) 100%);
}

.gradient-box__reverse {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0)85%, rgba(255, 255, 255, 1)85.1%, rgba(255, 255, 255, 1) 100%)
}

.has__subheading {
  margin-bottom: 0;
}

.unset-margin {
  margin: unset;
}

.wp-block-column.vertical__hr {
  margin: 32px 0;
}

.has__padding-top {
  padding-top: clamp(24px, calc(5.52vw / 2), 48px);
}

.is__height__100 {
  height: 100%;
}


/** Module **/

/* Cover/Einstieg Startseite */

.wp-block-cover.alignfull h1 {
  margin-top: 30vh;
  margin-bottom: 20px;
}


/* Text Bild Module */

.text-bild__left,
.text-bild__right {
  gap: 0;
}

/*
.text-bild__right {
}
.text-bild__left {
}
*/
.text-bild__left__text,
.text-bild__right__text {
  padding: calc(5.52vw / 2);
}

.text-bild__left__bild .wp-block-cover,
.text-bild__right__bild .wp-block-cover {
  height: 100%;
}

@media(max-width:780px) {
  .text-bild__left {
    flex-flow: column-reverse;
  }

  .text-bild__left__bild,
  .text-bild__right__bild {
    min-height: 100%;
  }

  .text-bild__left__bild .wp-block-cover,
  .text-bild__right__bild .wp-block-cover {
    min-height: 35vh;
  }

  .text-bild__left__text,
  .text-bild__right__text {
    padding: calc(15.52vw / 2);
  }

  .wp-block-group.alignfull .text-bild__right__text,
  .wp-block-group.alignfull .text-bild__right__text {
    padding: calc(15.52vw / 2) calc(28.96vw / 2);
  }

}

.text-bild__left,
.text-bild__right {
  gap: 0;
}

/* Varianten mit Border */

.has__neon-border {
  box-sizing: border-box;
  border: solid 3px var(--blue);
  box-shadow: inset 0 0 0.3em 0 var(--blue), 0 0 0.3em 0 var(--blue);
}

.has__neon-border .text-bild__left__bild,
.has__neon-border .text-bild__right__bild {
  padding: calc(5.52vw / 4);
}

.has__neon-border .text-bild__left__bild .wp-block-cover,
.has__neon-border .text-bild__right__bild .wp-block-cover {
  border-radius: var(--border-radius);
}

.text-bild__left.border-text,
.text-bild__right.border-text {
  gap: calc((5.52vw)/4);
}

/* Borderless Variante mit Padding */

.padded-borderless .text-bild__left__bild,
.padded-borderless .text-bild__left__bild {
  padding: calc(5.52vw / 4) calc(5.52vw / 2);
}

.text-bild__left.padded-borderless,
.text-bild__right.padded-borderless {
  gap: 0;
}

/* Varinate für Hero Unterseiten */

.hero-unterseiten .wp-block-column h1 {
  margin-bottom: 20px;
}

.hero-unterseiten .text-bild__left__text {
  margin-left: calc((100vw - var(--main-cont))/2)
}

.hero-unterseiten .text-bild__left__text h2 {
  margin-right: 15vw;
}

/* Cover/Einstieg Beiträge: Produkte Referenzen */

.hero-beitraege .wp-block-cover {
  border-radius: var(--border-radius);
}

/*
.text-bild__bild-hero-uts {
  padding-right: calc(5.52vw / 2);
} */

.hero-beitraege .text-bild__left__text h1 {
  font-size: clamp(28px, 1.98vw, 38px);
}

.hero-beitraege .text-bild__left__text p {
  margin-bottom: 20px;
  font-size: 1rem;
  text-transform: uppercase;
}


/*Unternehmen Leistungen Übersicht Grafik*/
.leistungen-ubersicht-infos{
	width:100%;
	margin-left:calc((100vw - var(--main-cont)) / 2);
	display:flex;
	flex-direction:column;
	background-color:white;
	color:var(--dark-blue);
	padding:calc(5.52vw / 2);
	border-radius:var(--border-radius);
	margin-top:-150px;
}
.leistungen-ubersicht-infos p{
	max-width:calc(var(--main-cont) - 2.76vw);
	margin-bottom:0;
}
.leistungen-ubersicht-infos h3{
	padding-top:150px; 
	max-width:calc(var(--main-cont) - 2.76vw);
}

.leistungen-ubersicht-cont {
  width: calc(var(--main-cont) + 50px);
  margin-left: calc(((100vw - var(--main-cont)) / 2) - 50px);
  display: flex;
  align-items:flex-start;
  gap:50px;
}

.leistungen-ubersicht-sp1{
  flex-basis:60%;
}

.leistungen-ubersicht-sp1 svg{
  width:100%; 
  height:auto;
}

.leistungen-ubersicht-sp2{
  flex-basis:40%;
  border-radius: var(--border-radius);
  padding:50px;
    color:white;
}

.leistungen-ubersicht-sp2 p:last-child,
.leistungen-ubersicht-sp2 p:nth-last-child(2){
    margin-bottom: 0;
}

#Kleeblatt path{
  fill:#8CB5CF;
}

#Entwickeln path,
#Bauen path,
#Finanzieren path,
#Versorgen path,
#Betreiben path{
  fill:white;
}

.clickable-trigger {
  cursor: pointer;
}

#Ubersicht-Leistungen .active {
  fill: #728FA3; 
  transition: fill 0.3s ease;
}

#Ubersicht-Leistungen [tabindex]:focus {
  outline: none;
}

body.keyboard-focus #Ubersicht-Leistungen [tabindex]:focus {
  outline: 3px solid white; 
  outline-offset: 4px;
}

#Kleeblatt path:hover {
  fill: var(--green);
}

#Kleeblatt path.active,
#Kleeblatt path.active:hover {
  fill: var(--green);
}

#Ubersicht-Leistungen .hovered {
    fill: var(--green);
    transition: fill 0.3s ease;
}

#Finanzieren {
    transition: stroke 0.3s ease, stroke-width 0.3s ease;
}

#Finanzieren.finanzieren-hovered {
    stroke: var(--green);
    stroke-width: 2px;
}


/* Produkt Raster */

#produkt-raster {
  grid-template-columns: repeat(3, 1fr);
  gap: 12px clamp(30px, 2.08vw, 40px);
  margin: clamp(30px, 2.08vw, 40px) auto;
  max-width: 1200px;
}

.produkt-kachel-wrapper {
  width: 100%;
}

.produkt-kachel {
  display: flex;
  flex-flow: column;
  gap: 0;
  max-width: 420px;
  margin: 0 auto;
  height: auto;
  padding: 20px;
}

.produkt-kachel-wrapper:hover,
.produkt-kachel-wrapper:has(a:focus) {
  background-color: var(--dark-green);
  border-radius: 4px;
}

.produkt-kachel-wrapper a {
  text-decoration: none;
}

.produkt-kachel-wrapper a:hover {
  text-decoration: none;
}

.produkt-icon {
  margin-bottom: 0;
}

.produkt-titel {
  font-size: 1rem;
  text-transform: none;
  margin-bottom: 18px;
}

.produkt-beschriftung {
  margin-bottom: 0;

}

/* Produkt Banner */
#produkt-banner-raster .produkt-kachel-wrapper {
  width: unset;
}

#produkt-banner-raster {
  padding: 20px 0 30px;
  gap: 20px 0;
  grid-template-columns: repeat(auto-fill, minmax(min(clamp(200px, 12.5vw, 240px), 100%), 1fr))
}


#produkt-banner-raster p {
  font-size: 0.9rem;
}

.produkt-kachel-anker {
  display: flex;
  flex-flow: column;
  gap: 0;
  margin: 0 auto;
  width: clamp(200px, 12.5vw, 240px);
  height: clamp(180px, 10.42vw, 200px);
  padding:
    clamp(12px, 1.25vw, 24px) clamp(10px, 1.04vw, 20px) clamp(14px, 1.46vw, 28px);
  border-radius: 4px;
}

.produkt-kachel-wrapper:hover .produkt-kachel-anker {
  background-color: var(--dark-blue);
}

.produkt-kachel-anker .produkt-icon {
  margin-bottom: 12px;
}

/* Produkte im Einsatz - Beiträge */

.prod-einsatz__raster {
  gap: 24px 0;
  margin-top: 28px;
}

.prod-einsatz__raster a:hover,
.prod-einsatz__raster a:focus {
  text-decoration: none;
}

.prod-einsatz__wrapper {
  width: 260px;
  margin: 0 auto;
  align-self: center;
  justify-self: center;
  opacity: 0.3;
  transition: 0.3s ease;
  padding: 4px;
  gap: 0px;
  border-radius: 4px;
}

.prod-einsatz__wrapper.produkt-im-einsatz,
.prod-einsatz__wrapper.produkt-im-einsatz:hover,
.prod-einsatz__wrapper.produkt-im-einsatz:focus {
  opacity: 1;
  transition: 0.3s ease;
}

.prod-einsatz__wrapper:hover,
.prod-einsatz__wrapper:focus {
  opacity: 1;
  transition: 0.3s ease;
  background-color: var(--dark-green);

}

.prod-einsatz__wrapper p {
  line-height: 1.1rem;
	padding-left:10px;
	width:200px;
}

.prod-einsatz__wrapper img{
	width:52px!important;
}

/* Produkt KoopPartner Filter */
#kooppartner .vp-portfolio__layout-elements.vp-portfolio__layout-elements-top {
  border: solid var(--blue) 4px;
  border-radius: 99px;
  box-shadow: inset 0 0 0.3em 0 var(--blue), 0 0 0.3em 0 var(--blue);
}

#kooppartner .vp-portfolio__filter-wrap,
#kooppartner-select .vp-portfolio__filter-wrap {
  width: 100%;
}

#kooppartner .vp-filter.vp-filter__style-minimal {
  width: 100%;
  justify-content: space-between;
}

#kooppartner .vp-filter__item {
  border-radius: 99px;
  padding: calc((clamp(12px, 1.25vw, 24px)/2)) clamp(4px, 1.25vw, 24px);
  font-family: 'Lato-Bold';
  text-transform: Uppercase;
  transition: 0.3s ease;
  white-space: nowrap;
}


#kooppartner .vp-filter__item-active {
  background-color: var(--dark-green);
  transition: 0.3s ease;
}

#kooppartner a {
  padding: 0;
  color: white;
}

#kooppartner a:hover {
  text-decoration: none;
}

#kooppartner .vp-portfolio__item,
#kooppartner-select .vp-portfolio__item {
  border-radius: var(--border-radius);
}

#kooppartner-select {
  display: none;
}

#kooppartner-select .vp-filter__style-dropdown select {
  width: 100%;
  border: solid var(--blue) 3px;
  border-radius: 99px;
  align-content: center;
  margin-bottom: clamp(12px, 1.25vw, 24px);
  font-family: 'Lato-Bold', sans-serif;
  font-weight: 700;
  text-transform: Uppercase;
  appearance: base-select;
  background-color: var(--dark-blue);
  color: white;
}

.vp-filter__item:focus-within{
	outline:2px solid white;
}

/* Projekte/Referenzen Query + Filter */

.loop-filter {
  border: solid var(--blue) 4px;
  border-radius: 99px;
  display: flex;
  align-content: center;
  justify-content: space-between;
  margin-bottom: clamp(12px, 1.25vw, 24px);
  box-shadow: inset 0 0 0.3em 0 var(--blue), 0 0 0.3em 0 var(--blue);
}

.loop-select {
  width: 100%;
  border: solid var(--blue) 3px;
  border-radius: 99px;
  align-content: center;
  margin-bottom: clamp(12px, 1.25vw, 24px);
  font-family: 'Lato-Bold', sans-serif;
  font-weight: 700;
  text-transform: Uppercase;
  appearance: base-select;
  display: none;
}

.loop-select:focus {
  border-color: var(--dark-green);
  background-color: var(--dark-green);
}

.loop-select option {
  color: white;
  background: var(--dark-blue);
}


.loop-filter button {
  border-radius: 99px;
  padding: calc((clamp(12px, 1.25vw, 24px)/2)) clamp(4px, 1.25vw, 24px);
  font-family: 'Lato-Bold';
  text-transform: Uppercase;
  transition: 0.3s ease;
  white-space: nowrap;
}

.loop-filter button.active {
  background-color: var(--dark-green);
  transition: 0.3s ease;
}


.filter-abfrage-cont {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: auto;
  gap: clamp(12px, 1.25vw, 24px)
}

.filter-abfrage-item {
  transition: 0.3s ease;
}

.filter-abfrage-item .wp-block-cover {
  padding: 20px;
  border-radius: 20px;
}

.filter-abfrage-item h3 {
  transform: translateY(200%);
  transition: 0.3s ease;
}

.filter-abfrage-item p {
  opacity: 0;
  transition: 0.3s ease;
}

.filter-abfrage-item:hover h3 {
  transform: translateY(0);
}

.filter-abfrage-item:hover p {
  opacity: 1;
}


.filter-abfrage-item:hover .wp-block-cover .wp-block-cover__background {
  transition: 0.3s ease;
  background-color: var(--dark-green);
  opacity: 0.95;
}

.filter-abfrage-item:has(a:focus) h3 {
  transform: translateY(0);
}

.filter-abfrage-item:has(a:focus) p {
  opacity: 1;
}

.filter-abfrage-item:has(a:focus) .wp-block-cover__background {
  background-color: var(--dark-green);
  opacity: 0.95 !important;
}


/*Bilderkachel ohne Link Button*/
.post-3874 .wp-block-cover a/*steinheim*/,
.post-3876 .wp-block-cover a/*tuttlingen*/,
.post-3872 .wp-block-cover a/*freiburg*/{
	display:none;
}



/*PRODUKT UNTERSEITEN*/
.produkte-info-is-column{
	display:flex;
	flex-direction:row;
}

.produkte-ubersicht-quick-navi {
  display: flex;
  justify-content: space-around !important;
}

.produkt-inhalt-has-accordion {
  display: flex;
  flex-direction: column;
}

.produkt-inhalt-has-accordion .simple-link-button {
  margin-top: auto;
}
	.produkt-inhalt-has-accordion .accordion-header{
	border-bottom:1px solid white;
}

.produkte-icon {
  position: absolute;
  right: 43%;
  top: 9%;
  z-index: 1;
}

/** el Gruppe **/

.gruppe-parent {
  margin-top: 12px;
  gap: 12px;
}

.gruppe-row {
  height: 100%;
  display: grid;
  gap: 12px;
}

.gruppe-row .acoordion-item {
  height: 1fr;
  align-content: center;
  background-color: var(--dark-blue);
}


.accordion-header__gruppe {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: end;
  color: white;
  padding: 12px 24px;
  cursor: pointer;
  height: 100px;
  font-size: 1rem;
  text-align: left;
  background: transparent;
  transition: 0.3s ease;
}

.accordion-header__gruppe.active+.accordion-content {
  display: block;
}

#acco_el_green-assets{
  background-image:url(/wp-content/uploads/2025/08/el_logo_green-assets_white-1.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 58%;
}
#acco_el_projects {
  background-image:url(/wp-content/uploads/2025/08/el_logo_projects_white.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 60%;
}
#acco_el_solutions {
  background-image:url(/wp-content/uploads/2025/08/el_logo_solutions_white.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 60%;
}



/*

.gruppe-row-item img,
.gruppe-row-item:hover p,
.gruppe-row-item:focus p {
  opacity: 1;
  transition: ease 0.3s;
  display: block;
}

.gruppe-row-item p,
.gruppe-row-item:hover img,
.gruppe-row-item:focus img {
  opacity: 0;
  transition: ease 0.3s;
  display: none;
}

.gruppe-row-item img,
.gruppe-row-item:hover p,
.gruppe-row-item:focus p {
  height: auto;
  padding: 12px 24px;
}

.gruppe-row-item p,
.gruppe-row-item:focus img {
  height: 0;
  padding: unset;
}

.gruppe-row-item p {
  color: var(--dark-blue);
  transition: 0.3s ease;
}

.gruppe-row-item:hover p,
.gruppe-row-item:focus p {
  color: white;
}

.gruppe-row-item img {
  pointer-events: none;
}
*/

/*  Auskunft Grid */
.wp-container-core-group-is-layout-baef362d.auskunft-parent-grid {
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: 1fr;
  gap: 12px;
}


.auskunft-child-grid {
  grid-template-columns: 1fr;
  grid-template-rows: repeat(2, 1fr);
  gap: 24px;
}

.auskunft-grid-cont {
  padding: clamp(16px, calc(5.52vw / 4), 24px) clamp(24px, calc(5.52vw / 2), 48px);
}


/** Accordions **/

/* Standard Accordion */

.accordion {
  width: 100%;
  max-width: 600px;
  overflow: hidden;
}

.accordion-header {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: white;
  padding: 12px 24px;
  cursor: pointer;
  font-size: 1rem;
  text-align: left;
  background: transparent;
  /* border-bottom: 1px solid white; */
  transition: 0.3s ease;
}

.accordion-header.active {
  border-bottom: 1px solid rgba(255, 255, 255, 0);
  transition: 0.1s ease;
}

.accordion-arrow {
  width: 1em;
  height: 1em;
  transition: transform 0.3s ease;
}

.accordion-content {
  display: none;
  padding: 6px 24px 12px;
  background: transparent;
  color: white;
  font-size: 20px;
}

.accordion-header.active .accordion-arrow {
    transform: rotate(180deg);
    transition: ease 0.3s;
}

.accordion-header__gruppe.active .accordion-arrow{
	transform: rotate(180deg);
    transition: ease 0.3s;
}

.accordion-header.active+.accordion-content {
  display: block;
}

/* Produkt Accordion */

#produkt-acco.accordion {
  width: 100%;
  overflow: hidden;
  max-width: unset;
}

#produkt-acco.accordion .accordion-item {
  margin-bottom: clamp(24px, calc(5.52vw / 3), 48px);
}

.accordion-header.with__bg-img {
  position: relative;
  width: 100%;
  height: clamp(120px, 10.81vw, 160px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: white;
  padding: 0 calc((5.52vw)/2);
  cursor: pointer;
  text-align: left;
  transition: 0.3s ease;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  border-radius: var(--border-radius);
  border-bottom: unset;
}

.accordion-header.with__bg-img h3 {
  margin-bottom: 0;
  position: relative;
  z-index: 2;
}

#produkt-acco h4 {
  font-size: 1rem;
}

.accordion-header.with__bg-img .accordion-arrow {
  position: relative;
  z-index: 2;
}

.produkt-acc__overlay {
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  position: absolute;
  z-index: 1;
  top: -2px;
  left: -1px;
  background-color: rgba(43, 68, 80, 0.8);
  border-radius: inherit;
  transition: 0.6s ease;
}

.accordion-header.with__bg-img:hover,
.accordion-header.with__bg-img:focus,
.accordion-header.with__bg-img.active {
  background-size: 100.5%;
  transition: 0.6s ease;
}

.accordion-header.with__bg-img:hover .produkt-acc__overlay,
.accordion-header.with__bg-img:focus .produkt-acc__overlay {
  background-color: rgba(62, 90, 105, 0.8);
  transition: 0.3s ease;
}

#produkt-acco .accordion-content {
  padding: 24px 0;
}

#produkt-acc__mietstrom {
  background-image: url(/wp-content/uploads/2025/08/energielenker_mieterstrom.jpg);
	    background-size: cover;
    background-position: 10% 35
}

#produkt-acc__gem-gebv {
  background-image: url(/wp-content/uploads/2025/08/energielenker_mehrfamilienhaus.jpg);
	background-size: cover;
    background-position: 9% 62%;
}

#produkt-acc__wl-nahw {
  background-image: url(/wp-content/uploads/2025/08/energielenker_waermelieferung_nahwaerme-scaled.jpg);
}

#produkt-acc__pv {
  background-image: url(/wp-content/uploads/2025/08/energielenker_solarteur_service.jpg);
	    background-size: cover;
    background-position: 9% 47%;
}

#produkt-acc__ladeinf {
  background-image: url(/wp-content/uploads/2025/08/energielenker_ladeinfrastruktur_bauen_betreiben.jpg);
}

#produkt-acc__w-cont {
  background-image: url(/wp-content/uploads/2025/08/energielenker_waermecontracting_fuer_ihre_immobilie-scaled.jpg);
}

/*Unternehmen accordion*/
.accordion.unternehmen-gesellschaften{
	max-width:unset;
}

/** Slider **/


.n2-ss-button-container a:hover {
	color:var(--dark-blue)!important;
}

.n2-ss-button-container a:hover div {
	background-color:var(--blue);
}

/* Projekt / Referenz Slider */

#n2-ss-4 img {
  border-radius: calc(var(--border-radius) - 6px);
}

/* Logo Slider */

#n2-ss-2 .n2-ss-slide.n2-ow {
  box-sizing: border-box;
  border: solid 3px var(--blue);
  box-shadow: inset 0 0 0.3em 0 var(--blue), 0 0 0.3em 0 var(--blue);
  border-radius: var(--border-radius);
}

div#n2-ss-2 .n2-ss-slider-2 {
  padding: 56px 0;
}

/* Stimmen Slider */

.kundenstimmen-slider-cont {
  padding: clamp(14px, 1.46vw, 28px) 0;
}

div#n2-ss-3 .n2-ss-slider-3 {
  padding: 40px 0;
}

#n2-ss-3 .n2-ss-slider-controls.n2-ss-slider-controls-advanced.n2-ss-slider-controls-advanced--ready {
  width: var(--main-cont);
  max-width: 1470px;
  margin: 0 calc((100vw - var(--main-cont))/2);
}

#n2-ss-3-arrow-previous {
  top: 48% !important;
  left: 0 !important;
}

#n2-ss-3-arrow-next {
  top: 48% !important;
  right: 0 !important;
  left: unset !important;
}

/* Smart Slider Paltzierung Steuer Elemente */

.n2-ss-section-main-content{
	display:flex;
	justify-content:space-between!important;
}

#n2-ss-4-arrow-previous,
#n2-ss-5-arrow-previous,
#n2-ss-6-arrow-previous {
  top: 48% !important;
  left: -28px !important;
}

#n2-ss-4-arrow-next,
#n2-ss-5-arrow-next,
#n2-ss-6-arrow-next {
  top: 48% !important;
  right: -28px !important;
  left: unset !important;
}


/* Smart Slider Universal */

.n2-ss-slider h3 {
  font-size: clamp(24px, 1.46vw, 28px) !important;
}

.n2-ss-slider p,
.n2-ss-slider a {
  font-size: clamp(16px, 1.67vw, var(--bfs)) !important;
}


#n2-ss-3 .n2-ss-slide-active .Partner-Bild,
#n2-ss-4 .n2-ss-slide-active .sm-sl-content
/*projekte+referenz*/
,
#n2-ss-5 .n2-ss-slide-active .sm-sl-content
/*projekte*/
,
#n2-ss-6 .n2-ss-slide-active .sm-sl-content

/*referenz*/
  {
  filter: blur(0);
  transition: filter 0.3s ease-in-out;
}

#n2-ss-3 .n2-ss-slide:not(.n2-ss-slide-active) .Partner-Bild,
#n2-ss-4 .n2-ss-slide:not(.n2-ss-slide-active) .sm-sl-content
/*projekte+referenz*/
,
#n2-ss-5 .n2-ss-slide:not(.n2-ss-slide-active) .sm-sl-content
/*projekte*/
,
#n2-ss-6 .n2-ss-slide:not(.n2-ss-slide-active) .sm-sl-content

/*referenz*/
  {
  filter: blur(4px);
  transition: filter 0.3s ease-in-out;
}

#n2-ss-4 .n2-ss-item-image-content img,
#n2-ss-6 .n2-ss-item-image-content img,
#n2-ss-5 .n2-ss-item-image-content img,
#n2-ss-3 .n2-ss-item-image-content img{
	height:300px!important;
	object-fit:cover!important;
	width:100%;
}

div#n2-ss-1 .n2-ss-slider-3,
div#n2-ss-2 .n2-ss-slider-3,
div#n2-ss-3 .n2-ss-slider-3,
div#n2-ss-4 .n2-ss-slider-3,
div#n2-ss-5 .n2-ss-slider-3,
div#n2-ss-6 .n2-ss-slider-3 {
  padding: 6px 0 !important;
}

#n2-ss-3 .n2-ss-showcase-slides.n2-ow.n2-ss-showcase-slides--ready::before
/*partner*/
,
#n2-ss-4 .n2-ss-showcase-slides.n2-ow.n2-ss-showcase-slides--ready::before
/*projekte+referenz*/
,
#n2-ss-5 .n2-ss-showcase-slides.n2-ow.n2-ss-showcase-slides--ready::before

/*projekte*/
,
#n2-ss-6 .n2-ss-showcase-slides.n2-ow.n2-ss-showcase-slides--ready::before {
  content: "";
  position: absolute;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  border: 3px solid var(--blue);
  border-radius: var(--border-radius);
  box-shadow: inset 0 0 0.5em 0 var(--blue), 0 0 0.5em 0 var(--blue);
  z-index: 998;
  pointer-events: none;
}

/** Swiper JS Slider - Timeline Slider **/


/*PRODUKT SLIDER - unterseite und übersicht*/
/* produkte mit after element
.kachel-contracting{
	position:relative;
}
.kachel-contracting::after{
  position: absolute;
  top: 50%;
  left: 24px;
  bottom: 50%;
  content: "";
	background-image:url('/wp-content/uploads/2025/09/Waerme.svg');
  display: block;
  width: calc(100% - 48px);
  height: 3px;
  box-shadow: inset 0 0 0.5em 0 var(--blue), 0 0 0.5em 0 var(--blue);
}*/

/* Produkte mit strich und titel pro slide

.produkt-slider_has-line{
	border-bottom:1px solid;
    margin-bottom:0;
	position:relative;
}

.produkt-zeile-2{
	padding-top:31px;
}
.produkt-zeile-3{
	padding-top:0px;
}
*/

.slider-produkte__has-padding{
	padding:30px 0;
}

.slider-produkte-single,
.slider-produkte{
	position:relative;
	padding:0 20px;
}

.slider-produkte-single .swiper-wrapper,
.slider-produkte .swiper-wrapper{
	position:relative;
}

.slider-produkte-single .swiper-slide,
.slider-produkte .swiper-slide{
	margin-bottom:auto;
	height:180px;
}
.slider-produkte-single .swiper-slide:focus,
.slider-produkte .swiper-slide:focus{
  outline:1px solid white;
	background-color:var(--dark-blue);
	text-decoration:none;
}
.slider-produkte-single .swiper-slide:hover,
.slider-produkte .swiper-slide:hover{
	background-color:var(--dark-blue);
	text-decoration:none;
}

.slider-produkte-navi-prev,
.slider-produkte-single-navi-prev{
	width:40px;
	rotate: 90deg;
	fill:white;
	position:absolute;
	top:45%;
	left:-10px;
	z-index:2;
}
.slider-produkte-navi-next,
.slider-produkte-single-navi-next{
	width:40px;
	rotate: -90deg;
	fill:white;
	position:absolute;
	top:45%;
	right:-10px;
	z-index:2;
}

/* Horizontal Slider */

.h-timeline__main-wrapper {
  padding: clamp(24px, calc(5.52vw / 2), 48px) 0;
}

.h-timeline {
  height: 500px;
  position: relative;
}

.h-timeline::after {
  position: absolute;
  top: 50%;
  left: 24px;
  bottom: 50%;
  content: "";
  display: block;
  width: calc(100% - 48px);
  height: 3px;
  background-color: var(--green);
  box-shadow: inset 0 0 0.5em 0 var(--blue), 0 0 0.5em 0 var(--blue);
}

.ht__slide {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(2, 1fr);
  grid-column-gap: 0;
  grid-row-gap: 3px;
}

.ht__slide p:not(strong) {
  font-size: 0.9rem;
  max-width: 225px;
}

.ht__slide>.on__top {
  grid-area: 1 / 1 / 2 / 2;
  align-self: end;
}

.ht__slide>.on__top p {
  margin: 0 auto 1.5em;
}

.ht__slide>.on__top img {
  margin-bottom: -37px;
  position: relative;
  z-index: 2;
}

.ht__slide>.on__bot {
  grid-area: 2 / 1 / 3 / 2;
  align-self: start;
}

.ht__slide>.on__bot p {
  margin: 1.5em auto 0;
}

.ht__slide>.on__bot img {
  transform: rotate(180deg);
  margin-top: -36px;
  position: relative;
  z-index: 2;
}

/* Button */

.th-slider-next {
  top: calc(48% - 24px);
  right: -24px;
}

.th-slider-prev {
  top: calc(48% - 24px);
  left: -24px;
}

.th-slider-next,
.th-slider-prev {
  padding: 24px;
  pointer-events: auto;
  position: absolute;
  z-index: 2;
}

.th-slider-next.swiper-button-disabled,
.th-slider-prev.swiper-button-disabled {
  opacity: 0;
  pointer-events: none;
}

/* Pagination */

.h-timeline .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  background-color: var(--blue);
  opacity: 0.5;
}

.h-timeline .swiper-pagination-bullet.swiper-pagination-bullet-active,
.h-timeline .swiper-pagination-bullet:hover {
  opacity: 1;
}


/* Vertiakler Slider */
.slider-referenz {
  height: 700px;
  position: relative;
}

.slider-referenz::after {
  position: absolute;
  top: 13px;
  left: 25px;
  bottom: 100%;
  content: "";
  display: block;
  width: 3px;
  height: 100%;
  background-color: var(--green);
  box-shadow: inset 0 0 0.5em 0 var(--blue), 0 0 0.5em 0 var(--blue);
}

.slider-referenz .swiper-wrapper {
  padding: 10px 0;
}

.slider-referenz .swiper-slide {
  padding-left: 60px;
  position: relative;
  height: auto;
  padding-right: 20px;
  margin-bottom: 15px;
}

.slider-referenz .swiper-slide::after {
  content: "";
  position: absolute;
  top: -17px;
  left: -4px;
  height: 60px;
  width: 60px;
  background-image: url("/wp-content/uploads/2025/08/Slider-marker.svg");
  background-size: contain;
  background-repeat: no-repeat;
}

/*Text mit Icon innerhalb vertikal Slider + ÜBerschrift*/
.referenz-text-has-text-ub {
  margin-bottom: 0.6rem;
}

.referenz-text-has-icon {
  padding-left: 30px;
  position: relative;
  margin-bottom: 0.6rem;
}

.referenz-text-has-icon:last-of-type {
  margin-bottom: 1.5rem;
}

.referenz-text-has-icon::after {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  height: 20px;
  width: 20px;
  background-image: url("/wp-content/uploads/2025/07/el-service_checked.svg");
  background-size: contain;
  background-repeat: no-repeat;
}

.slider-referenz .swiper-slide h3 {
  margin-bottom: .5rem;
}

/*PAGINATION*/
.swiper-pagination-bullet {
  background: white;
  opacity: 1;
}

.swiper-pagination-bullet-active {
  background: var(--blue);
}



/** Tabs **/
/*Kontaktseite - Downloads und Verweise*/

.tabs-container {
  margin: 0 auto;
  overflow: hidden;
  background-color: transparent;
  padding: 40px;
}

.tab-content {
  padding: 20px;
  display: none;
}

.tab-content.active {
  display: block;
}

.tabs-verweise-downloads {
  display: flex;
  flex-direction: row;
  width: 100%;
  gap: 5vw;
}

.tabs-verweise-downloads .accordion-header{
	border-bottom:1px solid white;
}

.tabs-50 {
  width: 50%;
}

.tabs-50 .accordion {
  max-width: unset;
}

/* Übersicht & Fazit */

.uf__tablist {
  margin-left: -24px;
  margin-bottom: 24px;
}

.uf__tab {
  font-size: 1rem;
  border-radius: 99px;
  padding: 4px 24px 6px;
}

.uf__tab[aria-selected="true"] {
  background-color: var(--dark-green);
}

/** Tabellen **/

/* Projektsteckbrief */

/*
.pstb__table-wrapper {
  padding: 28px;
}

.pstb__table-wrapper h3 {
  margin-bottom: 28px;
}

table.pstb__table {
  font-size: 0.9rem;
  border: none;
  margin-bottom: 0;
}

table.pstb__table th,
table.pstb__table td {
  text-align: left;
  vertical-align: top;
  min-height: 2rem;
  padding: 12px 4px;
  border-bottom: solid 1px white;
  flex-grow: 1;
}

table.pstb__table th {
  width: 45%;
  border-right: none;
  padding: 12px 24px 12px 4px;
}

table.pstb__table td {
  width: 55%;
}

table.pstb__table tr:first-of-type th,
table.pstb__table tr:first-of-type td {
  border-top: solid 1px white;
}


table.pstb__table tr:last-of-type th,
table.pstb__table tr:last-of-type td {
  border-bottom: none;
} */

/* List Varainte */

/* Projektsteckbrief */

.pstb__table-wrapper {
  padding: 28px;
}

.pstb__table-wrapper h3 {
  margin-bottom: 28px;
  text-transform: uppercase;
}

.pstb__list {
  display: flex;
  flex-direction: column;
  font-size: clamp(16px, 0.9vw, var(--bfs));
  margin: 0;
  padding: 0;
}

.pstb__row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  border-bottom: solid 1px white;
  padding: 12px 0;
}

.pstb__row:first-of-type {
  border-top: solid 1px white;
}

.pstb__row:last-of-type {
  border-bottom: none;
}

.pstb__list dt,
.pstb__list dd {
  padding: 0 4px;
  min-height: 2rem;
  flex-grow: 1;
}

.pstb__list dt {
  width: 40%;
  font-weight: bold;
  padding-right: 20px;
  min-width: 160px;
}

.pstb__list dd {
  width: 60%;
  margin: 0;
}

.ptsb_dt_padding{
	padding-left:15px!important;
}

/** Formulare **/
.wpcf7-select {
    background: rgba(0,0,0,0) url(/wp-content/uploads/2025/08/Arrow_blank.svg) no-repeat scroll 98% 53%/ 20px auto;
    appearance: none;
}


/* Form Layout Klassen */

.form-main-wrapper {
  width: var(--main-cont);
  margin: 0 auto;
  padding: clamp(24px, calc(5.52vw / 3), 48px) 0;
}

.form-100-wrapper {
  width: 100%;
  margin-bottom: 12px;
}

.form-100-wrapper.has__50-wrapper {
  display: flex;
  gap: 12px 24px;
}

.form-100-wrapper.has__50-wrapper.button{
  display:flex;
  flex-direction:row-reverse;
  justify-content:flex-end;
  gap: 12px 24px;
}

.form-100-wrapper.padded {
  width: var(--secd-cont);
  margin: 0 auto;
}

div:nth-child(4).form-100-wrapper {
  margin-bottom: 24px;
}

.form-50-wrapper {
  width: inherit;
  flex: 50%;
}

.form-extra-margin {
  margin-top: 24px;
}

/* Form Styling */

#firma{
 margin-top:12px;
}

.form-main-wrapper p {
  margin: 0;
}

.wpcf7-not-valid-tip {
  padding: 0 15px;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
.wpcf7-form-control-wrap select {
  width: 100%;
  border-radius: 99px;
  border: 2px solid;
}

.wpcf7-form-control-wrap select {
  padding: 10px 15px;
  font-size: 100%; 
}

input[type="file"] {
  width: 100%;
  border-radius: 99px;
  border: 2px dashed;
  padding: 10px 15px; 
}

input[type="radio"] {
  opacity: 1;
}

fieldset .wpcf7-list-item {
  /*min-width: 154px;*/
  text-align: left;
  margin: -10px 0;
  padding: 10px 20px;
  flex-grow: 0;
}

fieldset .wpcf7-list-item:has(input[type="radio"]:checked) {
  opacity: 1;
  color: white;
  background-color: var(--dark-blue);
  text-align: center;
  padding: 10px 20px;
  margin: -10px 0;
  border-radius: 99px;
  flex-grow: 1;
}

fieldset .form-choice-wrapper,
.form-inserted-value-wrapper{
  padding: 10px 0 10px 15px;
  background-color: #E9ECED;
  border-radius: 99px;
}
.form-inserted-value-wrapper-2{
	background-color: white;
	margin-top:-12px;
}
.form-inserted-value-wrapper-2.kontakt-formular-margin{
	margin-bottom:12px;
}

fieldset .wpcf7-not-valid-tip,
.form-inserted-value-wrapper .wpcf7-not-valid-tip{
  text-align: center;
	margin-top:12px;
}

.form-inserted-value-wrapper-2 .wpcf7-not-valid-tip{
	text-align:left;
}

fieldset .form-choice-wrapper:has(.wpcf7-not-valid-tip),
.form-inserted-value-wrapper:has(.wpcf7-not-valid-tip),
fieldset .form-choice-wrapper-2:has(.wpcf7-not-valid-tip),
.form-inserted-value-wrapper-2:has(.wpcf7-not-valid-tip){
  border-radius: var(--border-radius);
}

fieldset .form-choice-wrapper > p,
.form-inserted-value-wrapper > p{
  display: flex;
}

.form-inserted-value-wrapper.double-value,
.form-inserted-value-wrapper-2.double-value{
  display: flex;
}


.form-inserted-value-wrapper.double-value p:has(>span.wpcf7-form-control-wrap),
.form-inserted-value-wrapper-2.double-value p:has(>span.wpcf7-form-control-wrap){
  flex-grow:1;
}


fieldset .form-choice-wrapper .wpcf7-form-control-wrap,
.form-inserted-value-wrapper .wpcf7-form-control-wrap{
  flex-grow: 1;
  margin-left:12px;
}
.form-inserted-value-wrapper-2 .wpcf7-form-control-wrap{
	flex-grow:1;
	margin-left:0;
}


.form-inserted-value-wrapper input{
  margin:-10px 0;
  background-color: #fff;
  max-width: inherit;
  margin-left: auto;
}
.form-inserted-value-wrapper-2 input{
  margin-bottom:0;
  background-color: #fff;
  max-width: inherit;
  margin-left: auto;
}
}

fieldset .form-choice-wrapper .wpcf7-form-control.wpcf7-radio {
  display: flex;
  justify-content: left;
}

p.form-fieldset-p,
p.form-upload-notice {
  margin-top: 12px;
}

p.form-upload-notice {
  margin-left: 15px;
}

.form-upload-notice {
  font-size: 0.8rem;
}

textarea {
  border-radius: var(--border-radius);
  border: 2px solid;
}

.wpcf7-acceptance input[type="checkbox"] {
  margin-right: 12px;
}

.wpcf7-acceptance .wpcf7-list-item label {
  display: flex;
}

.wpcf7-acceptance .wpcf7-list-item {
  margin: 0;
}

input[type="submit"] {
  color: var(--dark-blue);
  box-sizing: border-box;
  border: solid 3px var(--blue);
  border-radius: 99px;
  padding: 7px 30px 7px;
  margin: 0;
  font-family:'Lato-Regular'!important;
}

input[type="submit"]:hover,
input[type="submit"]:focus {
  background-color: var(--blue);
  color: var(--dark-blue);
}

.form-30-wrapper > p {
  position: relative;
}

.wpcf7-spinner {
  position: absolute;
  left: 0;
  top: calc((40px - 24px)/2);
  margin: 0;
}

.form-dsvgo {
  font-size: 0.8rem;
}

.wpcf7 form .wpcf7-response-output {
  margin: 0 0 24px;
}


/* SR Zugängliches AUsblenden von Label */

.form-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* === Standard Elemente === */
.halfmargin{
	margin-bottom:0.5em;
}
.nomargin{
	margin-bottom:0;
}


/*unterseiten h rezising*/

.unterseite-h-size h1{
	font-size: clamp(24px, 1.98vw, 38px);
	margin-right: 15vw;
}
.unterseite-h-size h2{
	margin-bottom: 20px;
	font-size: 1rem;
}

.link-accordion-button{
text-decoration:underline;
	text-underline-offset:3px;
}


/** Buttons **/
.wp-block-buttons.simple-link-button a.wp-block-button__link,
.simple-link-button__gp,
.slider-button>div {
  box-sizing: border-box;
  border: solid 3px var(--blue);
  border-radius: 99px;
  padding: 3px 30px 6px;
  color: white;
}

.wp-block-buttons.simple-link-button.on-white a.wp-block-button__link {
  color: var(--dark-blue);
}

.wp-block-buttons.simple-link-button:hover a.wp-block-button__link,
.simple-link-button__gp:hover {
  background-color: var(--blue);
  color: var(--dark-blue) !important;
}

.simple-link-button__gp {
  display: block;
  align-self: center;
  margin: 0 auto;
  max-width: 50%;
  min-width: 180px;
}

/** Spacer **/

section:not(.has__no-bot-margin, .has__bot-margin-on-m-stack) {
  margin-bottom: clamp(60px, 6.25vw, 120px) !important;
}

div.wp-block-spacer.spacer__l {
  height: clamp(60px, 6.25vw, 120px) !important;
}

div.wp-block-spacer.spacer__m {
  height: clamp(60px, 6.25vw, 120px) !important;
}

div.wp-block-spacer.spacer__s {
  height: clamp(30px, 2.08vw, 40px) !important;
}

/* Neon HR */
.neon-hr.with-offset {
  max-width: 200px;
  left: calc((-5.52vw) / 2);
  position: relative;
  border-top: none;
  margin: 10px 0 8px;
  height: 8px;
  overflow: visible;
}

.neon-hr.with-offset::before {
  content: '';
  position: absolute;
  left: 0;
  bottom: 4px;
  width: 100%;
  height: 8px;
  background: var(--blue);
  ;
  filter: blur(4px);
  opacity: 0.6;
  pointer-events: none;
}

.neon-hr.with-offset::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 6px;
  width: 100%;
  height: 4px;
  background: var(--blue);
  pointer-events: none;
}

/** Custom Listen **/

.custom-list-checked {
  margin: 0 0 0 28px;
}

.custom-list-checked li::marker {
  content: url(/wp-content/uploads/2025/07/el-service_checked.svg);
}

.custom-list-checked li {
  margin-bottom: 8px;
  padding-left: 8px
}

.custom-list-checked li:last-of-type {
  margin-bottom: 0;
}

.custom-list-checked:has(+ p) li:last-of-type {
  margin-bottom: 20px;
}

/* === Animationen === */

/* Slide In von unten rechts */

.slide-in-br {
  -webkit-animation: slide-in-br 0.3s cubic-bezier(0.250, 0.460, 0.450, 0.940);
  animation: slide-in-br 0.3s cubic-bezier(0.250, 0.460, 0.450, 0.940);
}

@-webkit-keyframes slide-in-br {
  0% {
    -webkit-transform: translateY(10px) translateX(100px);
    transform: translateY(100px) translateX(100px);
    opacity: 0;
  }

  40% {
    opacity: 0;
  }

  100% {
    -webkit-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
    opacity: 1;
  }
}

@keyframes slide-in-br {
  0% {
    -webkit-transform: translateY(10px) translateX(100px);
    transform: translateY(100px) translateX(100px);
    opacity: 0;
  }

  40% {
    opacity: 0;
  }

  100% {
    -webkit-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);

  }
}

/*=== MQ / Breakpoints ===*/


/* MQ1080 > */
@media(max-width:1080px) {

  /* Produkt Raster 1080 */
  #produkt-raster {
    grid-template-columns: repeat(2, 1fr);
  }


  /* Footer 1080 */
  .footer-content-wrapper.wp-container-core-group-is-layout-64989fb1 {
    flex-wrap: wrap;
  }

  .footer-link-wrapper__h {
    gap: 24px 10%;
  }

  .footer-link-wrapper__h>.footer-link-wrapper__v {
    width: 45%;
    max-width: unset;
    min-width: unset;
  }


  /* P/F Query + Filter 1080 */

  .loop-filter {
    display: none;
  }

  .loop-select {
    display: block;
  }

  .filter-abfrage-cont {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  /*Downloads Filter*/

  .tabs-verweise-downloads {
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .tabs-50 {
    width: 100%;
  }

  .tabs-container {
    padding: 0 10px 40px;
  }


  #kooppartner-select {
    display: block;
  }

  #kooppartner {
    display: none;
  }


  /* Switch Mobile Nav */

  .expanding-menu {
    align-items: start;
  }

  .menu-links {
    display: block;
    padding: 24px;
  }

  .menu-links li:not(:last-of-type) {
    margin-bottom: 16px;
  }

  .menu-links li:last-of-type {
    margin-bottom: 4px;
  }

  .expanding-menu.is-active {
    overflow: visible;
    align-items: start;
  }

	
	
  .expanding-menu .menu-links {
    transition: ease-in-out 0.3s;
  }

  .expanding-menu.is-active .menu-links {
    width: auto;
    min-width: 320px;
    height: auto;
    background-color: rgba(255, 255, 255, 1);
    backdrop-filter: blur(4px);
    border-radius: 32px;
    transition: opactity ease-in-out 0.3s;
    margin-top: 0px;
  }
}


/* < 1080 */


/* MQ880 > */
@media(max-width:880px) {
  /* Formulare 880 */
  .form-100-wrapper.has__50-wrapper {
    flex-flow: column;
}

/* MQ780 > */
@media(max-width:780px) {

  /* Variabeln 780 */

  :root {

    --main-cont: 86.56vw;
    --secd-cont: 71.04vw;

  }

  /* Layout 780 */

  .has__bot-margin-on-m-stack {
    margin-bottom: 30px;
  }

  /* Utilitie Klassen 780 */

  .is__displaced__top {
    position: relative;
    top: -40px;
  }

  .is__displached-img__left {
    position: relative;
    top: -40px
  }

  .has__reduced-width,
  .single-corner-right {
    min-height: 35vh;
    width: var(--main-cont);
    margin: 0 auto;
    border-radius: var(--border-radius);
  }

  .is__displached-img__left.has__reduced-width {
    margin: 0 auto -40px;
  }

  .margin-left__adept-to-secd {
    margin-left: calc((15.52vw)/2);
  }

  .wp-block-column.vertical__hr {
    max-width: 90%;
    margin: 0 auto;
    height: 1px;
  }


  /* Varinate mit Border 780 */

  .has__neon-border .text-bild__left__bild,
  .has__neon-border .text-bild__right__bild {
    padding: calc((15.52vw) / 4) calc((15.52vw) / 4) 0;
  }


  .text-bild__left.border-text,
  .text-bild__right.border-text {
    gap: calc((15.52vw)/4);
  }

  /* Borderless Variante mit Padding */

  .padded-borderless .text-bild__left__bild,
  .padded-borderless .text-bild__left__bild {
    padding: 0;
  }

  /* Neon HR  780*/

  .neon-hr.with-offset {
    left: calc((-15.52vw) / 2);
  }


  /* P/F Query + Filter 780 */

  .filter-abfrage-cont {
    grid-template-columns: repeat(1, minmax(0, 1fr));

  }

  /*  Auskunft Grid  780 */
  .wp-container-core-group-is-layout-baef362d.auskunft-parent-grid {
    grid-template-columns: 1fr;
  }

  .child-grid__left {
    grid-template-rows: auto;
    gap: 0;
  }

  .child-grid__left>div:first-of-type {
    padding-bottom: 0;
  }

  .child-grid__left>div:last-of-type {
    padding-top: 0;
  }

  .child-grid__right {
    grid-template-rows: auto;
  }
  }

 /* Accordion Gruppe */
  .accordion-header__gruppe .accordion-item {
  min-height: 120px;
}
	
	/*Produkt unterseiten*/
	.hero-unterseiten .text-bild__left__text {
    margin-left:0!important;
	}
	
	.produkt-inhalt-has-accordion .accordion-header{
	padding:10px 0;
}
	
	/*spacer 780*/
  .spacer-80{
	display:none;
  }
	
	.slider-produkte__has-padding {
    padding: 20px 0;
}
	
	/*Startseite Hero*/	
	.startseite-hero-p{
		margin-bottom:80px;
	}
	
	.filter-abfrage-cont .wp-block-cover{
		min-height:350px;
	}

    /* Kooppartner 780 */

  .vp-uid-9b9b1630 .vp-portfolio__item-wrap {
    width: 50% !important;
  }
	
	.filter-abfrage-cont .wp-block-cover{
		min-height:300px;
	}
}

/* < 780 */


/* MQ680 > */
@media(max-width:680px) {

  /* Produkt Raster 680 */
  #produkt-raster {
    grid-template-columns: repeat(1, 1fr);
  }

  /* Footer 680 */
  .footer-link-wrapper__h {
    gap: 24px;
  }

  .footer-link-wrapper__h>.footer-link-wrapper__v {
    width: 100%;
  }

  .footer-legal {
    flex-flow: column-reverse;
    justify-content: center;
  }

}

/* < 680 */

/* MQ 580 */

@media (max-width: 580px) {
  .expanding-menu.is-active .menu-links {
    width: calc(100vw - 112px);
    min-width: 120px;
    height: auto;
  }
		.prod-einsatz__raster{
		    grid-template-columns: repeat(1, minmax(0, 1fr))!important;
	}
}

/* < 580 */


/* === Sonder Querries === */

/*Leistungen Übersicht Grafik*/
@media(max-width:1800px){
	.leistungen-ubersicht-sp1,
	.leistungen-ubersicht-sp2{
flex-basis:50%;
	}
		.leistungen-ubersicht-infos{
		padding: 0 calc(5.52vw / 2) calc(5.52vw / 2);
			margin-top:-100px;
	}
	.leistungen-ubersicht-sp2{
		padding: calc(5.52vw / 2);
	}
}
@media(max-width:1700px){
	.leistungen-ubersicht-cont{
		gap:40px;
	}
	.leistungen-ubersicht-sp1{
		flex-basis:40%
	}
	.leistungen-ubersicht-sp2{
flex-basis:60%;
	}
		.leistungen-ubersicht-infos{
			margin-top:40px;
	}
	.leistungen-ubersicht-infos h3{
		padding-top:calc(5.52vw / 2);
	}
	.leistungen-ubersicht-sp2 h2{
		margin-bottom:15px;
	}
}

@media(max-width:1550px){
	.leistungen-ubersicht-cont{
		display:flex;
		flex-direction:column;
		margin-left:unset;
		margin:auto;
		align-items:center;
	}
	.leistungen-ubersicht-cont svg{
		width:calc(var(--main-cont) - 5.52vw);
		max-width:700px;
	}
	#service{
		display:flex;
		flex-direction:column-reverse;
	}
	.leistungen-ubersicht-infos{
		margin-bottom:50px;
	    padding: calc(5.52vw / 2) 4vw 2.76vw 2.76vw;
		width:97%;
	}
	.leistungen-ubersicht-sp2{
		width: var(--main-cont);
	}
}

@media(max-width:780px){
	.leistungen-ubersicht-infos,
	.leistungen-ubersicht-sp2{
		padding: calc(15.52vw / 2) 15vw 7.76vw 7.76vw;
	}
	.leistungen-ubersicht-cont svg{
		width:calc(var(--main-cont));
		padding:unset;
}
}




@media(max-width:1220px){
	#referenz-filter-tabs.loop-filter,
	#referenz-filter-tabs-bereich.loop-filter{
		display:none;
	}
	#referenz-filter-select.loop-select,
	#referenz-filter-select-bereich.loop-select{
		display:block;
	}
}

@media(max-width:1450px){
	
	/*produktunterseiten layout*/
	.produkte-info-is-column{
		flex-direction:column;
	}
	.produkt-inhalt-has-accordion .simple-link-button {
    margin-top: 20px!important;
}
	.produkt-inhalt-has-accordion .accordion{
		max-width:100%;
	}

/*relevante produkte layout umbruch*/
	.relevante-produkte-spalte{
		flex-basis:100%!important;
	}
	.relevante-produkte-layout{
		gap:0!important;
	}
	.relevante-produkte-spalte-placeholder{
		flex-basis:0%!important;
	}
	
	/*Produkt unterseiten*/
	.produkte-icon{

	}
	.produkte-icon img{
        width:20vw!important;
        height:20vw!important;
	    min-height:171px!important;
		min-width:171px!important;
}
	
}

@media(max-width:855px){
	.produkte-icon{
		right:50%;
		top:32.9%;
	}
}
@media(max-width:780px){
	.produkte-icon{
		right:0%;
		top:26%;
	}
}

@media (max-width:1480px) {

/* Choice Input */

  fieldset .form-choice-wrapper {
    border-radius: 20px;
  }

  .form-choice-wrapper p {
    flex-flow: column;
  }

  .form-choice-wrapper p > span:first-of-type {
    margin-bottom: 14px;
  }

  .form-choice-wrapper p span.wpcf7-form-control-wrap {
    margin-left: -15px;
  }
  
}

@media(max-width:380px) {

  fieldset .wpcf7-list-item {
    text-align: start;
  }

  fieldset .form-choice-wrapper .wpcf7-form-control-wrap > .wpcf7-radio {
    flex-flow: column;
  }
  .wpcf7-list-item.first,
  .wpcf7-list-item.first:has(input[type="radio"]:checked) {
    margin-bottom: 12px;
  }
}


/* === Allgemeine BF Optimierungen === */

/* focus */
:is(a, button, input, textarea, summary, .gruppe-row-item) {
  --outline-size: max(2px, 0.08em);
  --outline-style: solid;
  --outline-color: currentColor;
  --outline-offset: 1px;
}

:is(a, button, input, textarea, summary, .gruppe-row-item):focus {
  outline: var(--outline-size) var(--outline-style) var(--outline-color);
  outline-offset: var(--outline-offset, var(--outline-size));

}

:is(a, button, input, textarea, summary, .gruppe-row-item):focus-visible {
  outline: var(--outline-size) var(--outline-style) var(--outline-color);
  outline-offset: var(--outline-offset, var(--outline-size));

}

:is(a, button, input, textarea, summary, .gruppe-row-item):focus:not(:focus-visible) {
  outline: none;
}

/* Focus Spezial */
button#menuTrigger:focus {
  border-radius: 999px;
  outline-offset: -2px;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}