/*
Theme Name: krohne25
Theme URI: 
Author: PP
Author URI: 
Description: Wordpress PixelPlantage
Requires at least: 6.6
Tested up to: 6.6
Requires PHP: 5.7
Version: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: krohne25
Tags: 
*/


/*! Flickity v2.3.0
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled{position:relative}.flickity-enabled:focus{outline:0}.flickity-viewport{overflow:hidden;position:relative;height:100%}.flickity-slider{position:absolute;width:100%;height:100%}.flickity-enabled.is-draggable{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.flickity-enabled.is-draggable .flickity-viewport{cursor:move;cursor:-webkit-grab;cursor:grab}.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down{cursor:-webkit-grabbing;cursor:grabbing}.flickity-button{position:absolute;background:hsla(0,0%,100%,.75);border:none;color:#333}.flickity-button:hover{background:#fff;cursor:pointer}.flickity-button:focus{outline:0;box-shadow:0 0 0 5px #19f}.flickity-button:active{opacity:.6}.flickity-button:disabled{opacity:.3;cursor:auto;pointer-events:none}.flickity-button-icon{fill:currentColor}.flickity-prev-next-button{top:50%;width:44px;height:44px;border-radius:50%;transform:translateY(-50%)}.flickity-prev-next-button.previous{left:10px}.flickity-prev-next-button.next{right:10px}.flickity-rtl .flickity-prev-next-button.previous{left:auto;right:10px}.flickity-rtl .flickity-prev-next-button.next{right:auto;left:10px}.flickity-prev-next-button .flickity-button-icon{position:absolute;left:20%;top:20%;width:60%;height:60%}.flickity-page-dots{position:absolute;width:100%;bottom:-25px;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.flickity-rtl .flickity-page-dots{direction:rtl}.flickity-page-dots .dot{display:inline-block;width:10px;height:10px;margin:0 8px;background:#333;border-radius:50%;opacity:.25;cursor:pointer}.flickity-page-dots .dot.is-selected{opacity:1}


/* Theme Styles
---------------------------------------------- */

*, *:before, *:after{
	box-sizing:border-box;
}

@media ( width < 600px ){
	
	:root{
		--wp--preset--font-size--h-1:30px;
		--wp--preset--font-size--h-2:26px;
		--wp--preset--font-size--h-3:24px;	
	}
	
}



html{
	min-width:375px;
	scroll-behavior: smooth;
}
body{
	--max-content-breite:2560px; /* maximale Breite im CONTENT. Bbezieht sich auch auf full width! */
	--wp--style--root--padding-top: 0;
	--wp--style--root--padding-right: var(--wp--preset--spacing--60);
	--wp--style--root--padding-bottom: 0;
	--wp--style--root--padding-left: var(--wp--preset--spacing--60);
	
	--svg-schraege-primary-highlight: url("data:image/svg+xml;utf8,<svg width='844' height='700' xmlns='http://www.w3.org/2000/svg'><path d='M0 0L843.5 0L745 700H0V0Z' fill='%232885d0'/></svg>");	
	
	--icon-pfeil-white: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23fff'><path d='m6.2 17.2-1.4-1.4L11.6 9 4.8 2.2 6.2.8 14.4 9z'></path></svg>");
	--icon-pfeil-primary: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23005DA8'><path d='m6.2 17.2-1.4-1.4L11.6 9 4.8 2.2 6.2.8 14.4 9z'></path></svg>");
	--icon-x-white: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23fff'><path d='m16.778 2.636-1.414-1.414L9 7.586 2.636 1.222 1.222 2.636 7.586 9l-6.364 6.364 1.414 1.414L9 10.414l6.364 6.364 1.414-1.414L10.414 9z'></path></svg>");
	--icon-x-primary: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23005DA8'><path d='m16.778 2.636-1.414-1.414L9 7.586 2.636 1.222 1.222 2.636 7.586 9l-6.364 6.364 1.414 1.414L9 10.414l6.364 6.364 1.414-1.414L10.414 9z'></path></svg>");
	--icon-phone-white: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='19' height='19' fill='%23fff'><path d='M17.999 2.06c0 8.812-7.139 15.916-15.907 15.916-.253 0-.896.024-.896.024s-.106-.62-.164-.87l-.806-3.503c-.06-.256-.226-.88-.226-.88s.613-.258.855-.363l3.77-1.617c.19-.083.73-.31.73-.31s.364.41.538.62l1.533 1.875a12.17 12.17 0 0 0 5.55-5.551l-1.877-1.535c-.185-.153-.65-.584-.65-.584s.246-.465.34-.685L12.41.82c.104-.242.33-.821.33-.821s.66.132.915.19L17.16 1c.245.057.78.197.78.197s.061.607.061.862L18 2.061zm-1.116.025-3.463-.8-1.6 3.736 2.531 2.07c-1.683 3.59-3.633 5.548-7.234 7.24l-2.07-2.534-3.734 1.6.8 3.466c8.153-.011 14.763-6.62 14.77-14.78z'></path></svg>");
	--icon-envelope-white: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='19' height='19' fill='%23fff'><path d='M17.099 3H0v12h18V3zm-1.5 1L9 8.399 2.401 4zM17 14H1V4.268l7.723 5.148a.5.5 0 0 0 .554 0L17 4.268z'></path></svg>");
	--icon-phone-envelope-white: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='27' height='27' fill='%23fff'><path d='M16.559 17.38q.224-.116.441-.24-.219.123-.441.24m-2.204-2.423-.206.087zs.364.409.538.62l1.533 1.875-1.533-1.876c-.173-.21-.538-.62-.538-.62zM9 17.246l.478-.201-.478.2z'></path><path d='M1 18.5V8.768l7.723 5.148a.5.5 0 0 0 .554 0L17 8.768v8.372a13 13 0 0 0 1-.622V7.5H0v12h9.542l-.23-1zm14.599-10L9 12.899 2.401 8.5z'></path><path d='M26.938 5.696s-.534-.14-.779-.195l-3.505-.81c-.256-.061-.916-.191-.916-.191s-.225.579-.33.82l-1.617 3.776c-.095.22-.34.685-.34.685s.464.431.65.585l1.875 1.534A12.2 12.2 0 0 1 18 16.518q-.483.335-1 .622-.218.125-.441.24c-.045.023-.087.05-.133.072l-1.533-1.875c-.174-.211-.538-.62-.538-.62l-.206.087c-.175.074-.41.173-.525.223l-3.77 1.617q-.425.185-.854.362l.007.027c.033.123.167.63.22.854l.085.373.23 1 .49 2.13c.057.25.164.87.164.87s.643-.024.897-.024C19.86 22.476 27 15.372 27 6.56c0-.255-.062-.863-.062-.863zM11.113 21.363l-.8-3.465 3.735-1.6 2.069 2.531c.312-.146.595-.298.883-.449q.524-.277 1-.568c2.44-1.49 3.992-3.32 5.352-6.222l-2.53-2.07 1.6-3.736 3.462.8c-.008 8.158-6.617 14.768-14.77 14.779z'></path></svg>");
	--icon-paperplane-white:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23fff'><path d='m0 10 7 3.5V17l3-2 6 3 2-18zm14.33 4.93-3.15-1.57L13 7l-5.45 4.54-3.26-1.63 11.29-6.28z'></path></svg>");
		
}

h1 {
    font-size: var(--wp--preset--font-size--h-1);
	font-weight:300;
}
h2 {
    font-size: var(--wp--preset--font-size--h-2);
	font-weight:300;
}
h3 {
    font-size: var(--wp--preset--font-size--h-3);
	font-weight:300;
}
h4 {
    font-size: var(--wp--preset--font-size--h-4);
	font-weight:500;
}
h5 {
    font-size: var(--wp--preset--font-size--h-5);
	font-weight:500;
}
h6 {
    font-size: var(--wp--preset--font-size--h-6);
	font-weight:500;
}

button,
input,
select{
	font-family: var(--wp--preset--font-family--din-web-pro), sans-serif;
}




header.wp-block-template-part{
	max-height:100vh;
	max-height:100dvh;
	margin-block-start:0;
	position:sticky;
	width:100%;
	top:0;
	background-color:var(--wp--preset--color--white);
	z-index:3;
	transition:transform .2s ease-in-out;
}
header.wp-block-template-part:has(.menu-metamenu){
	top:-2.5rem;
}
header.wp-block-template-part.menu-is-mobile{
	top:0!important;
}
body.scrolled-plus header.wp-block-template-part:not(.menu-is-mobile){
	transform:translatey(-100%);
}




.menu-check{ /* .menu-check wird mit JS erzeugt und dient nur dazu die Größe des Menüs zu prüfen und bei Bedarf auf Mobile-Menü umzuschalten */
	position:absolute;
	width:100%;
	bottom:200vh;
}




/* menu-toggler (icon zum öffnen/schliessen der hauptnavi; hier wird mit der class js-toggle-on per javascript die class on geändert) */
.menu-toggler{
	display:none;
	justify-self: end;
}
header.wp-block-template-part.menu-is-mobile .menu-toggler{
	display:block;
}
.menu-toggler,
.menu-toggler button{
	width:36px;
	height:36px;
	border-radius:9em;
	border:0;
	padding:0;
}
.menu-toggler button{
	background-color:var(--wp--preset--color--white);
	transition:background .2s;
	cursor:pointer;
}
.menu-toggler button:hover{
	background-color:var(--wp--preset--color--skyblue);
}
.menu-toggler button svg{
	transform:scale(.55);
}
.menu-toggler button svg path{
	fill:var(--wp--preset--color--darkblue);
	transition:fill .2s;
}
.menu-toggler button:hover svg path{
	fill:var(--wp--preset--color--primary);
}
.menu-toggler button.close-mm,
.menu-toggler.on button.open-mm{
	display:none;
}
.menu-toggler.on button.close-mm{
	display:block;
}







/* .menu-hauptmenu auf Desktop (offen) */
.menu-hauptmenu{
	font-size: var(--wp--preset--font-size--h-4);
}
.menu-hauptmenu:hover{
	overflow:visible;
}
.menu-hauptmenu a{
	display:inline-block;
	padding-top:.5em;
	padding-bottom:.5em;
	color:var(--wp--preset--color--darkblue);
	position:relative;
}
.menu-hauptmenu a:hover,
.menu-hauptmenu .menu-item.current-menu-item a,
.menu-hauptmenu > .menu-item:has(.sub-menu .menu-item.current-menu-item) > a{
	color:var(--wp--preset--color--primary);
}
.menu-hauptmenu .sub-menu a:hover{
	text-decoration:underline;
}
.menu-hauptmenu > .menu-item > a:before{
	content:"";
	background:var(--wp--preset--color--primary);
	position:absolute;
	inset:100% 0 auto 0;
	height:2px;
	opacity:0;
}
.menu-hauptmenu > .menu-item.current-menu-item > a:not([href*="#"]):before,
.menu-hauptmenu > .menu-item:has(.sub-menu .menu-item.current-menu-item) > a:before{
	opacity:1;
}
.menu-hauptmenu,
.menu-hauptmenu ul{
	list-style-type:none;
	padding:.5em 0;
	text-align:right;
}
.menu-hauptmenu li{
	display:inline-block;
	margin-left:1em;
}
.menu-hauptmenu .menu-item{
	position:relative;
}

.menu-hauptmenu .sub-menu{
	display:none;
	font-size:var(--wp--preset--font-size--medium);
	text-align:left;
	position:absolute;
	top:100%;
	padding-top:1em;
	left:-2em;
	padding-left:2em;
	min-width: calc( 100% + 4em );
	padding-right:2em;
	padding-bottom:2em;
	background-color:var(--wp--preset--color--white);
	box-shadow:0 5px 40px rgba(0,0,0,.2);
	z-index:1;
}
.menu-hauptmenu .menu-item:last-child .sub-menu{
	left:auto;
	right:-2em;
}
.menu-hauptmenu .sub-menu .menu-item{
	margin-left:0;
	display:block;
	border-bottom:var(--wp--preset--color--skyblue) solid 1px;
}

.menu-hauptmenu .menu-item:hover .sub-menu{
	display:block;
}




/* .menu-hauptmenu auf Mobile (als Dopdown) */
header.wp-block-template-part.menu-is-mobile .wrapper-logo-menu-hauptmenu{
	display:grid;
	grid-template-columns:1fr 1fr;
	grid-template-rows:auto 1fr;
	gap:0;
}
header.wp-block-template-part.menu-is-mobile.on .wrapper-logo-menu-hauptmenu{
	height:100vh;
	height:100dvh;
}
header.wp-block-template-part.menu-is-mobile .menu-hauptmenu{
	display:none;
	background-color:var(--wp--preset--color--white);
	font-size:var(--wp--preset--font-size--medium);
	text-align:left;
	padding-top:0;
	max-height:100%;
	margin-right:-1rem;
	padding-right:1rem;
	overflow:auto;
	overscroll-behavior: none;
	grid-column-start: 1;
    grid-column-end: -1;
	align-self: start;
}
header.wp-block-template-part.menu-is-mobile.on #menu-hauptmenu,
header.wp-block-template-part.menu-is-mobile .menu-toggler.on ~ .menu-hauptmenu{
	display:block;
}
header.wp-block-template-part.menu-is-mobile .menu-hauptmenu a{
	display:block;
}
header.wp-block-template-part.menu-is-mobile .menu-hauptmenu a[href="#"]{
	pointer-events:none;
}
header.wp-block-template-part.menu-is-mobile .menu-hauptmenu a:hover{
	text-decoration:underline;
}
header.wp-block-template-part.menu-is-mobile .menu-hauptmenu a:before{
	content:none;
}
header.wp-block-template-part.menu-is-mobile .menu-hauptmenu > .menu-item{
	display:block;
	margin-left:0;
	border-bottom:var(--wp--preset--color--skyblue) solid 1px;
}
header.wp-block-template-part.menu-is-mobile .menu-hauptmenu .sub-menu{
	display:block;
	box-shadow:none;
	position:relative;
	inset:auto;
	min-width:0;
	padding:0 0 0 2em;
}
header.wp-block-template-part.menu-is-mobile .menu-hauptmenu .sub-menu .menu-item:first-child{
	border-top:var(--wp--preset--color--skyblue) solid 1px;
}
header.wp-block-template-part.menu-is-mobile .menu-hauptmenu .menu-item:last-child{
	border-bottom:0;
}



#menu-meta-menu {
	padding: 0
}
.meta-bar-group {
	padding:0;
}
.meta-bar {
	max-width:100% !important
}
#menu-meta-menu li{
	padding-right: 8px;
	background: #2a7bc1;
    padding-left: 20px;
    clip-path: polygon(5px 0, 100% 0, 100% 100%, 0 100%);
}
	
#menu-meta-menu li a {
	font-size: 14px;
 	font-weight: 400;
  	line-height: 28px;
	padding-top: 4px;
  	padding-bottom: 4px;
  	padding-right: 8px;
}

.menu-metamenu,
.menu-footermenu{
	list-style-type:none;
	padding:.5em 0;
	text-align:right;
}
.menu-metamenu {
	padding: 8px 0;
}

.menu-metamenu li,
.menu-footermenu li{
	display:inline-block;
}
.menu-metamenu li{
	margin-left:1em;
}
.menu-footermenu li:not(:last-child){
	margin-right:1em;
}
header.wp-block-template-part.menu-is-mobile .menu-metamenu{
	display:none;
}

#menu-meta-menu li a {
  position: relative;
  display: flex;
  align-items: center;
  gap: 6px; /* Abstand zwischen Icon und Text */
}

#menu-meta-menu li a:before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  background-image: url("http://cmp.krohne.com/data-center/wp-content/uploads/sites/90/2025/09/house.svg");
  background-size: contain;
  background-repeat: no-repeat;
}


@media only screen and (max-width: 767px){
	.wp-block-site-logo{
		grid-column: 1;
  		grid-row: 1;
	}
	.menu-toggler{
		grid-column: 2;
  		grid-row: 1;
	}
}


footer.wp-block-template-part .custom-logo{
	filter: brightness(0) invert(1);
}

@media ( width < 1200px ){
	.wp-block-site-logo .custom-logo,
	footer.wp-block-template-part .custom-logo{
		width:115px;
	}
}









.entry-content{
	max-width:var(--max-content-breite);
	margin-left:auto;
	margin-right:auto;
}

/* Wenn an erstel Stelle .wp-block-media-text.is-style-intro, dann kein Abstand oben */
:where(.wp-site-blocks) > main:has(.entry-content > .wp-block-media-text.is-style-intro:first-child) {
	margin-block-start: 0;
}








/* ==================================== BLÖCKE ========================================== */





/* Button Block */

.wp-block-button{
	font-size:var(--wp--preset--font-size--small);
	position:relative;
}

.wp-block-button__link{
	background: var(--wp--preset--color--primary);
	border:0;
	border-radius:0;
	padding-top:0.4em;
	padding-bottom:0.6em;
	padding-left:3em;
	box-shadow:inset 0 0 0 1px var(--wp--preset--color--primary);
	position:relative;
	overflow:hidden;
	transition:color .2s ease-in-out;
	z-index:1;
}
.wp-block-button__link:before{ /* hintergrund */
	content:"";
	opacity:0;
	position:absolute;
	inset:0;
	background:var(--wp--preset--gradient--primary-gradient) no-repeat right center;
	background-size: calc( 100% - 2em ) 100%;
	transition:opacity .2s ease-in-out;
	z-index:-1;
	
}
.wp-block-button__link:after{ /* quadrat mit schräge */
	content:"";
	position:absolute;
	left:0;
	top:0;
	height: 100%;
	aspect-ratio:1;
	background:var(--wp--preset--color--primary-highlight);
	transform-origin:100% 0;
	transform:skewx(-7deg);
	transition:opacity .2s ease-in-out;
	z-index:1;
}

.wp-block-button:before{ /* pfeil */
	content:"";
	position:absolute;
	top:.6em;
	left:.666em;
	width:1.286em;
	height:1.286em;
	background: var(--icon-pfeil-white);
	background-size:cover;
	z-index:2;
	pointer-events:none;
	transition:transform .2s ease-in-out;
}
.wp-block-button:has(.wp-block-button__link:hover):before{
	transform:translatex(25%);
}
.wp-block-button__link:hover:before{
	opacity:1;
}
.wp-block-button__link:hover:after{
	
}


.wp-block-button.is-style-outline > .wp-block-button__link{
	background-color:transparent;
    color:var(--wp--preset--color--primary);
	padding-top:0.4em;
	padding-bottom:0.6em;
	padding-left:3em;
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover{
	color:var(--wp--preset--color--white);
}


.wp-block-button.is-style-secondary > .wp-block-button__link{
	background: var(--wp--preset--color--secondary);
	box-shadow:inset 0 0 0 1px var(--wp--preset--color--secondary);
}
.wp-block-button.is-style-secondary > .wp-block-button__link:before{
	background-image:var(--wp--preset--gradient--secondary-gradient);
}
.wp-block-button.is-style-secondary > .wp-block-button__link:after{ /* quadrat mit schräge */
	background: var(--wp--preset--color--secondary-highlight);
}

.wp-block-button.is-style-secondary-outline > .wp-block-button__link{
	background-color:transparent;
    color:var(--wp--preset--color--secondary);
	box-shadow:inset 0 0 0 1px var(--wp--preset--color--secondary);
}
.wp-block-button.is-style-secondary-outline > .wp-block-button__link:before{
	background-image:var(--wp--preset--gradient--secondary-gradient);
}
.wp-block-button.is-style-secondary-outline > .wp-block-button__link:after{ /* quadrat mit schräge */
	background: var(--wp--preset--color--secondary-highlight);
}
.wp-block-button.is-style-secondary-outline > .wp-block-button__link:hover{
	color:var(--wp--preset--color--white);
}


.wp-block-button.is-style-tertiary > .wp-block-button__link{
	background: var(--wp--preset--color--darkblue);
	box-shadow:inset 0 0 0 1px var(--wp--preset--color--darkblue);
}
.wp-block-button.is-style-tertiary > .wp-block-button__link:before{
	background-image:var(--wp--preset--gradient--darkblue-gradient);
}
.wp-block-button.is-style-tertiary > .wp-block-button__link:after{ /* quadrat mit schräge */
	background: var(--wp--preset--color--darkblue-highlight);
}

.wp-block-button.is-style-tertiary-outline > .wp-block-button__link{
	background-color:transparent;
    color:var(--wp--preset--color--darkblue);
	box-shadow:inset 0 0 0 1px var(--wp--preset--color--darkblue);
}
.wp-block-button.is-style-tertiary-outline > .wp-block-button__link:before{
	background-image:var(--wp--preset--gradient--darkblue-gradient);
}
.wp-block-button.is-style-tertiary-outline > .wp-block-button__link:after{ /* quadrat mit schräge */
	background: var(--wp--preset--color--darkblue-highlight);
}
.wp-block-button.is-style-tertiary-outline > .wp-block-button__link:hover{
	color:var(--wp--preset--color--white);
}



.wp-block-button.is-style-white > .wp-block-button__link{
	color: var(--wp--preset--color--primary);
	background: var(--wp--preset--color--skyblue);
	box-shadow:inset 0 0 0 1px var(--wp--preset--color--skyblue);
}
.wp-block-button.is-style-white > .wp-block-button__link:before{
	background-image:var(--wp--preset--gradient--skyblue-gradient);
}
.wp-block-button.is-style-white > .wp-block-button__link:after{ /* quadrat mit schräge */
	background: var(--wp--preset--color--white);
}
.wp-block-button.is-style-white:before{ /* pfeil */
	background: var(--icon-pfeil-primary);
}

.wp-block-button.is-style-white-outline > .wp-block-button__link{
	background-color:transparent;
    color:var(--wp--preset--color--white);
	box-shadow:inset 0 0 0 1px var(--wp--preset--color--white);
}
.wp-block-button.is-style-white-outline > .wp-block-button__link:before{
	background-image:var(--wp--preset--gradient--skyblue-gradient);
}
.wp-block-button.is-style-white-outline > .wp-block-button__link:after{ /* quadrat mit schräge */
	background: var(--wp--preset--color--white);
}
.wp-block-button.is-style-white-outline:before{ /* pfeil */
	background: var(--icon-pfeil-primary);
}
.wp-block-button.is-style-white-outline > .wp-block-button__link:hover{
	color:var(--wp--preset--color--primary);
}



input[type=submit]{
	padding-right: calc(1.333em + 2px);
	padding-left:3.5em;
    font-size:var(--wp--preset--font-size--small);
	border:0;
	background-color:var(--wp--preset--color--primary);
	background-image: var(--icon-paperplane-white), linear-gradient(90deg, rgba(40,133,208,0) 0%, rgba(0,93,168,0) 100%), var(--svg-schraege-primary-highlight);
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-size: 1.333em 1.333em, cover, auto 100%;
	background-position: left .666em center, center center, left center;
	color:var(--wp--preset--color--white);
	white-space:nowrap;
	line-height:2.357;
	cursor:pointer;
	transition:background .2s ease-in-out;
}
input[type=submit]:hover{
	background-image: var(--icon-paperplane-white), linear-gradient(90deg, rgba(40,133,208,1) 0%, rgba(0,93,168,1) 100%), var(--svg-schraege-primary-highlight);
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-size: 1.333em 1.333em, cover, auto 100%;
	background-position: left 1.125em center, center center, left center;
}




/* Trennelement .wp-block-separator */
.wp-block-separator{
    border-bottom-color: var(--wp--preset--color--gray-40);
	border-bottom-width:1px;
}


/* Medien und Text Block */

.wp-block-media-text.is-style-intro{
	overflow:hidden;
}
.wp-block-media-text.is-style-intro.has-media-on-the-right {
  grid-template-columns: 41% 1fr;
}
.wp-block-media-text.is-style-intro .wp-block-media-text__content{
    padding-bottom:3rem;
	padding-top:3rem;
}
.wp-block-media-text.is-style-intro .wp-block-media-text__content > :first-child{
	margin-top:0;
}

@media ( width >= 1024px) {
  .wp-block-media-text.is-style-intro{
	min-height:600px;
	  position:relative;
	  container-type: inline-size;
	  --angle: 7deg;
	  --angle-rad: 0.122173; /* tan(7°) ≈ 0.122173 */
	  --skew-offset: calc(100cqh * var(--angle-rad)); /* tan(7deg) * Höhe */
  }
  .wp-block-media-text.is-style-intro .wp-block-media-text__content{
	  position:relative;
	  z-index:2;
  }
	.wp-block-media-text.is-style-intro:before{
		content:"";
		position:absolute;
		top:0;
		left: calc( var(--skew-offset, 0) * -1 );
		bottom:0;
		width:calc( 41% + var(--skew-offset, 0));
		background:inherit;
		z-index:1;
		transform-origin: 100% 100%;
		transform:skew(-7deg);
	}
}

@media ( width < 1024px) {
  .wp-block-media-text.is-style-intro {
    grid-template-columns: 100% !important;
  }

  .wp-block-media-text.is-style-intro .wp-block-media-text__media,
  .wp-block-media-text.is-style-intro .wp-block-media-text__content {
    grid-column: 1 / -1 !important;
  }

  .wp-block-media-text.is-style-intro.has-media-on-the-right {
    direction: ltr; /* sicherstellen, dass Reihenfolge stimmt */
  }
	
  .wp-block-media-text.is-style-intro > .wp-block-media-text__content {
    grid-column: 1;
    grid-row: 2;
  }
  .wp-block-media-text.is-style-intro > .wp-block-media-text__media img {
    height: auto;
    position: relative;
    width: 100%;
  }
		
}




/* Easy Tabs Block (Plug-In) */
.wp-block-easy-tabs-block-tab-buttons{
	border-bottom:1px solid var(--wp--preset--color--gray-20);
	flex-wrap:nowrap;
	gap: 0;
	text-align:center;
}
.wp-block-easy-tabs-block-tab-button {
    flex-basis:100%;
	border: 0;
	border-bottom:2px solid transparent;
}
.wp-block-easy-tabs-block-tab-button,
.wp-block-easy-tabs-block-tabs.has-active-etb-bg-color .wp-block-easy-tabs-block-tab-button.etb-active-tab{
	background-color: transparent!important;
}
.wp-block-easy-tabs-block-tabs.has-active-etb-text-color .wp-block-easy-tabs-block-tab-button.etb-active-tab{
	border-bottom-color:var(--wp--preset--color--primary)!important;
}
.wp-block-easy-tabs-block-tabs.has-active-etb-text-color .wp-block-easy-tabs-block-tab-button.etb-active-tab p {
	color:var(--wp--preset--color--primary)!important;
}

.wp-block-easy-tabs-block-tab-contents{
	padding-left: 0;
    padding-right:0;
    border: 0;
}





/* .sticky-contact */
.sticky-contact{
	position: fixed;
	z-index: 48;
	right:0;
	bottom: 100px;
	display: flex;
	flex-flow: column;
	align-items: flex-end;
	overflow:hidden;
	pointer-events:none;
}
.sticky-contact button{
	border:0;
	color:var(--wp--preset--color--white);
	background-image: linear-gradient(135deg, var(--wp--preset--color--secondary) 0%, var(--wp--preset--color--secondary-highlight) 100%);
	font-size:var(--wp--preset--font-size--normal);
	font-weight:600;
	height:3.5em;
	cursor:pointer;
	position:relative;
	pointer-events:all;
}
.sticky-contact button span{
	opacity:1;
	transition:opacity .4s ease;
}
.sticky-contact button:hover span{
	opacity:1;
}
.sticky-contact button:before{
	content:"";
	position:absolute;
	left:0;
	top:0;
	height:100%;
	background:transparent no-repeat center center;
	background-size:contain;
	transform:scale(.5);
}
.sticky-contact__envelope,
.sticky-contact__phone{
	padding-left:3.5em;
	padding-right:1.25em;
	transform:translatex( calc( 100% - 3.5em ) );
	transition:transform .4s ease;
	transform:none;
}
.sticky-contact__envelope:hover,
.sticky-contact__phone:hover{
	transform:none;
}
.sticky-contact .sticky-contact__envelope:before{
	aspect-ratio:1;
	background-image:var(--icon-envelope-white);
}
.sticky-contact .sticky-contact__phone:before{
	aspect-ratio:1;
	background-image:var(--icon-phone-white);
}
.sticky-contact__phone-envelope{
	display:none;
	width:3.5em;
	text-indent:-33em;
	overflow:hidden;
	border-radius:9em;
	transition:width .4s ease;
}
.sticky-contact__phone-envelope:hover{
	width:8em;
}
.sticky-contact .sticky-contact__phone-envelope:before{
	background-image:var(--icon-phone-envelope-white);
	width:100%;
	transform:scale(.5);
}
.sticky-contact button a {color:#fff}

@media ( width < 800px ){
	.sticky-contact{
	    bottom: 0;
    	width: 100%;
    }
	.sticky-contact__phone-envelope{
	    display:block;
	}
	.sticky-contact__envelope,
	.sticky-contact__phone{
		padding-left:1.25em !important;
		padding-right:1.25em;
	}
	/*.sticky-contact__envelope, .sticky-contact__phone{
		display:none;
	}*/
	.sticky-contact button::before {
		display:none;
	}
	.sticky-contact button {
		width: 100%;
	}
}



/* .lightbox */

.lightbox{
	padding-top:2rem;
	padding-bottom:2rem;
	background-color:rgba(0,0,0,.5);
	z-index:111;
}
html:not(.block-editor-iframe__html) .lightbox{ /* nur im frontend */
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100vh;
	height:100dvh;
}
.lightbox.on{
	display:block!important;
}


.lightbox__inside{
	height:calc( 100vh - 4rem );
	height:calc( 100dvh - 4rem );
	display:grid;
	grid-template-rows:auto 1fr;
}
.lightbox__inside > *{
	width:100%;
}
.lightbox__content{
	overflow:auto;
	overscroll-behavior: none;
}

.lightbox__close{
	width:18px;
	height:18px;
	background:transparent var(--icon-x-white) no-repeat center center;
	background-size:contain;
	border:0;
	cursor:pointer;
	text-indent:-333px;
	overflow:hidden;
}

@media ( width < 800px ){
	.lightbox{
		padding:0;
	}
	.lightbox__inside{
		height:100vh;
		height:100dvh;
	}
}




/* Abstand-Block */
/* Wenn eine Abstand eine id hat (also ein Ziel für ein Ankerlink) dann auf mobile nach oben verschieben */
body:has(header.wp-block-template-part.menu-is-mobile) .wp-block-spacer[id]{
	position:relative;
	top:-99px;
	pointer-events:none;
}





/* Formular */
.form_crm .full_row,
.form_crm .half_row,
.form_crm .quarter_row,
.form_crm .salutation_wrapper{
	margin-top:19px;
}
.form_crm .half_row + .salutation_wrapper{
    width: 49% !important;
    margin-right: 0 !important;
	float:left;
}
.form_crm .half_row:has(+ .crm_form_separator){
	margin-right:0!important;
}
.form_crm input[type=text],
.form_crm input[type=email],
.form_crm input[type=tel],
.form_crm select,
.form_crm textarea{
	display:block;
	margin-top:.25em;
}
.form_crm input[type=text],
.form_crm input[type=email],
.form_crm input[type=tel],
.form_crm textarea{
	width:100%;
}
.form_crm input[type=text],
.form_crm input[type=email],
.form_crm input[type=tel],
.form_crm select,
.form_crm textarea{
	border-radius: 0;
    border: 1px solid var(--wp--preset--color--gray-40);
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    color: var(--wp--preset--color--darkblue);
    padding: 8px 10px;
}
.form_crm input[type=text],
.form_crm input[type=email],
.form_crm input[type=tel],
.form_crm select{
	height:2.571em;
}
.form_crm select{
	background-color:#fff;
}
@media only screen and (max-width: 767px){
	.form_crm .half_row + .half_row{
		margin-top:24px;
	}
}




/* Product Selector */
.selector__level,
.selector__result{
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.5s ease-in-out;
}

.selector__level.on,
.selector__result.on{
  grid-template-rows: 1fr;
}

.selector__level > *,
.selector__result > *{
  overflow: hidden;
}
.selector__level figure{
	text-align:center;
	cursor:pointer;
}
.selector__level figure img{
	border:5px solid var(--wp--preset--color--primary);
	border-radius:2em;
}
.selector__level figure.on img{
	border-color:var(--wp--preset--color--secondary);
}
.selector__result li:not(.on),
.selector__noresult:not(.on){
	display:none;
}



/* .slider (flickity) */
.slider .flickity-viewport {
  transition: height 0.2s;
}

.flickity-slider > *{
	width:100%;
}
.slider .flickity-button{
	background:transparent;
	color:var(--wp--preset--color--darkblue);
}
.flickity-prev-next-button .flickity-button-icon {
  left: 25%;
  top: 25%;
  width: 50%;
  height: 50%;
}
.slider .flickity-prev-next-button.previous {
  left: -35px;
}
.slider .flickity-prev-next-button.next {
  right: -35px;
}

@media (min-width:1500px){
	.slider .flickity-prev-next-button.previous {
	  left: -45px;
	}
	.slider .flickity-prev-next-button.next {
	  right: -45px;
	}
}







/* ======================== HELPERS ============================ */

.background-grey-triangle{
	background:var(--wp--preset--color--gray-10) url(img/grey-triangle-16-9.png) center center no-repeat;
	background-size:cover;
}

html:not(.block-editor-iframe__html) .hide.hide{ /* html:not(.block-editor-iframe__html) = nur frontend */
	display:none!important;
	visibility:hidden!important;
	width:0!important;
	height:0!important;
	position:absolute!important;
	left:-1000px!important;
	top:-1000px!important;
	pointer-events:none!important;
}