@charset "UTF-8";
/*
Theme Name: dompierre 
Theme URI: 
Author: networkerz GmbH, Muenchen
Version: 1.0
*/

@import url("https://fast.fonts.net/lt/1.css?apiType=css&c=9f1d11a1-0d25-488f-a408-1047d7a729a1&fontids=904709,904712,904715,904718");
    @font-face{
        font-family:"Georgia Bold";
        src:url("fonts/904709/886cc2e0-6d9f-4b2e-a486-0148b53b006e.woff2") format("woff2"),url("Fonts/904709/d2f9060f-3485-482f-b5a0-b91faa67bab3.woff") format("woff");
        font-display: swap;
    }
    @font-face{
        font-family:"Georgia Bold Italic";
        src:url("fonts/904712/1d25176f-8332-42f4-bdab-52218ee930f7.woff2") format("woff2"),url("Fonts/904712/3ef28fe1-5d06-4661-b98f-e231840184f7.woff") format("woff");
        font-display: swap;
    }
    @font-face{
        font-family:"Georgia Italic";
        src:url("fonts/904715/2af7771f-8ddd-4afe-9a23-1307629889dc.woff2") format("woff2"),url("Fonts/904715/c93679cc-a6a0-44eb-8596-adb4d5cb22de.woff") format("woff");
        font-display: swap;
    }
    @font-face{
        font-family:"Georgia";
        src:url("fonts/904718/3056c93b-ddd6-4a07-b6ac-0b3947b2ee38.woff2") format("woff2"),url("Fonts/904718/39a18a82-9fba-4a18-9b26-872bc05243b8.woff") format("woff");
        font-display: swap;
    }



:root {
  --copytext: #9D9D9C;
  --highlight: #9D9D9C;
  --bright: #FAFAFA;
  }


* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

body {
  min-height: 100vh;
  /* mobile viewport bug fix */
  min-height: -webkit-fill-available;
}



html {
  height: -webkit-fill-available;
  scroll-behavior:smooth; 
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}

body {
    font: normal normal normal 22px/34px Georgia; 
	color:var(--copytext);
	background-color: #fff;
	margin: 0px;
	padding: 0px;
    text-align: left;    
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position:relative; overflow-x:hidden;
}

body.home {font: normal normal normal 26px/35px Georgia; }

body.page-startseite {margin: 0; }

body.page-startseite.active {margin:auto; height: auto; overflow: auto;} 

body.page-startseite.active .overlay,
body.page-startseite.active .home-layer-wrapper {display: none;}


.overlay {
  background-color: rgba(0,0,0,0.16); 
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0px;
  z-index: 10002;
	display: none;
}

    .home-layer-wrapper {
		text-align: center;
  		position: relative;
    }

    .home-layer-wrapper:before {
      content: '';
      display: inline-block;
      height: 100%;
      vertical-align: middle;
      margin-right: -0.25em; /* Adjusts for spacing */
    }

    .home-layer {
      display: none;
      vertical-align: middle;
      width: 100%;
      max-width: 500px;
      background-color: #fff;
      padding: 45px 15px 20px 15px;
      border-radius: 3px;
      text-align: left;
    -webkit-box-shadow: 0px 0px 7px -1px rgba(0,0,0,0.3);
    -moz-box-shadow: 0px 0px 7px -1px rgba(0,0,0,0.3);
    box-shadow: 0px 0px 7px -1px rgba(0,0,0,0.3);
    position: relative;
    }
    
    .home .home-layer p { font-size: 14px; line-height: 20px;  margin-bottom: 20px; }
    .parent-pageid-16 .home-layer p {font-size: 22px; line-height: 31px;}
    
    .home-layer .headline {font-size: 30px; line-height: 34px; margin-bottom: 15px;}
    .home-layer img { margin-top: 0px; max-width: 50px; margin-right: 25px; margin-left: 10px;}
    
        .home-layer-text {float: right; width: calc(100% - 85px);}
        
        .home-layer-close {
          position: absolute;
          right: 12px;
  		  top: 12px;
          width: 32px;
          height: 32px;
          opacity: 0.7;
          cursor: pointer;
        }
        .home-layer-close:hover {
          opacity: 1;
        }
            
            .home-layer-close:before, 
            .home-layer-close:after {
              position: absolute;
              left: 15px;
              content: ' ';
              height: 33px;
              width: 1px;
              background-color: var(--highlight);
            }
            .home-layer-close:before {
              transform: rotate(45deg);
            }
            .home-layer-close:after {
              transform: rotate(-45deg);
            }



.clear {clear:both;}
.clearfix:after {
    content: ".";
    clear: both;
    display: block;
    visibility: hidden;
    height: 0px;
}

a,
a:focus {text-decoration: none; position: relative; color:var(--copytext);}

a:where(:not(.wp-element-button)) {
  text-decoration: none !important;
}
.home-layer-text a:where(:not(.wp-element-button)) {
  text-decoration: underline !important;
}
a.underlined { text-decoration: underline!important; }
a.btn,
a span.btn,
.block-produkt-liste ul li a,
.produkt-info ul li a,
.weitere-produkte ul li a {padding: 4px 0px 4px 90px; 
    -webkit-transition: all 0.4s; 
    -moz-transition: all 0.4s; 
    -ms-transition: all 0.4s;
    -o-transition: all 0.4s;
    transition: all 0.4s;
    font: normal normal normal 26px/35px "Georgia Italic"; 
    position: relative;
    overflow: hidden;
    margin-bottom: 0px;
    display: inline-block;
    }
    
        a.btn:before,
        a span.btn:before,
        .block-produkt-liste ul li a:before,
        .produkt-info ul li a:before,
        .weitere-produkte ul li a:before {content:''; display: block; width: 67px; height: 23px; background-image: url("img/btn-arrow.svg"); background-size: 81px auto; background-repeat: no-repeat; background-position: right center; position: absolute; left: 0px; top: 12px; -webkit-transition: all 0.4s; -moz-transition: all 0.4s; 
        -ms-transition: all 0.4s; -o-transition: all 0.4s; transition: all 0.4s;}
        
        a.btn:hover:before,
        a:hover span.btn:before,
        .block-produkt-liste ul li a:hover:before,
        .produkt-info ul li a:hover:before,
        .weitere-produkte ul li a:hover:before {width: 81px;}
    
    
    a.btn:hover,
     a:hover span.btn,
     .block-produkt-liste ul li a:hover,
     .produkt-info ul li a:hover,
     .weitere-produkte ul li a:hover {padding: 4px 0px 4px 105px; -webkit-transition: all 0.4s; -moz-transition: all 0.4s; -ms-transition: all 0.4s; -o-transition: all 0.4s; transition: all 0.4s;  }
    
    div.align-right {text-align: right;}
    div.align-right a.btn {padding: 4px 15px 4px 90px;}
        div.align-right a.btn:hover {padding: 4px 0px 4px 105px;}
        

        
p {margin: 0 0 40px 0; max-width: 784px; font-size: 22px; line-height: 34px; }
p.has-text-align-center {
  text-align: center;
  margin: 0 auto 40px;
}
.home p, .parent-pageid-16 p {font-size: 26px; line-height: 35px;}
    .home p.narrow {max-width: 784px; font-size: 26px; line-height: 35px; margin-bottom: 45px;}
          p.narrow {max-width: 784px; font-size: 22px; line-height: 34px; margin-bottom: 45px;}
    p.midsize {font-size: 26px; line-height: 35px;}
    
    .block-content p {max-width: none;}
    .block-content p img.alignleft {}
    
    .soziales-engagement p, .soziales-engagement h4 {max-width: none;}
    .soziales-engagement h4 {margin-bottom: 30px;}
    .soziales-engagement h2 {font: normal normal normal 70px/79px Georgia; margin: 0px 0px 20px 0px;}
    
    .block-content.border-bottom p:last-child {margin-bottom: 0px;}
    
    img.alignleft + p {max-width: none;}


iframe {width:100%;}


h1 {font: normal normal normal 88px/100px Georgia; text-transform: none; margin: 122px 0px 60px 0px;} 
    .teaser .headline, .page-id-22 h2 {font: normal normal normal 88px/100px Georgia; text-transform: none; margin: 0px 0px 60px 0px;}  
    

    .parent-pageid-16 h1 {font: normal normal normal 123px/140px Georgia; text-transform: none; margin: 127px 0px 65px 0px;} 
    .home h1 {font: normal normal normal 123px/140px Georgia; text-transform: none; margin: 127px 0px 65px 0px;}  
    .produkt-info h1 {font: normal normal normal 45px/51px Georgia; text-transform: none; margin: 50px 0px 50px 0px;}
	.hero-headline { font: normal normal normal 88px/100px Georgia; }
    
h2 {font: normal normal normal 70px/79px Georgia; margin: 0px 0px 40px 0px;}
    h2.center,
    h2.has-text-align-center {text-align: center;}
    
    h2.wp-block-heading.has-text-align-center {margin-bottom: 50px;}
    
    .home h2.has-text-align-center {font: normal normal normal 88px/100px Georgia;}
    
    .block-textslider h2,
    .parent-pageid-16 h2 {font: normal normal normal 88px/100px Georgia;}

h3 {font: normal normal normal 33px/37px Georgia; margin: 0px 0px 80px 0px;}

h4 {font: normal normal normal 26px/35px Georgia; margin: 0px 0px 90px 0px; max-width: 685px;}

.clear + p {margin-top: 45px;} 



.container-fluid {max-width: 1470px; position:relative; padding-right: 50px; padding-left: 50px; margin-right: auto; margin-left: auto; background-color:#fff;}
main .container-fluid.fixed { position: sticky; top: 100px; margin-bottom: 1px; }
.block-fullwidth .container-fluid { background-color: unset; }
    .row {margin-right: 0px; margin-left: 0px; position: relative;}
    
    .clearfix::after, .clearfix::before, 
    .container-fluid::after, .container-fluid::before {
        display: table; content: " ";
    }

    .container-fluid::after {clear: both;}

    ::after, ::before {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }


header {position: fixed; width:100%; min-height: 175px; max-height: 175px; z-index: 10001; background-color: #fff; top: 0px; 
transition-property: top;
  transition-timing-function: linear;
  transition-duration: 0.4s;
    border-bottom:1px solid #fff;   
    }
    
a.logo {
    width: 200px;
    height: 28px;
    background-image: url("img/DOM_Logo_sw_scrolled.svg");   
    background-repeat: no-repeat;
    background-size: 144px auto;
    background-position: center bottom;
    position: relative;
    left: 0px;
    top: 110px;
    display: block;    
    margin: 0px 0px 0 0px;
   -webkit-transition: all 0.4s; 
    -moz-transition: all 0.4s; 
    -ms-transition: all 0.4s;
    -o-transition: all 0.4s; 
    transition: all 0.4s;
    align-self: flex-start;
}
a.logo:hover {opacity: 0.75;}
.change-logo a.logo,
.page-unsere-filialen a.logo {width:200px; top: 44px; background-size: 200px auto;}

a.logo:before {content:''; width: 200px; height: 85px; display: block; background-image: url("img/DOM_Logo_sw.svg"); background-repeat: no-repeat;
    background-size:142px auto; background-position: center top; position: absolute; top: -77px;}

    .change-logo a.logo:before,
    .page-unsere-filialen a.logo:before {visibility: hidden;}


    
header.change-logo, .page-unsere-filialen header {min-height: 100px; max-height: 100px;  -webkit-transition: all 0.4s; 
    -moz-transition: all 0.4s; 
    -ms-transition: all 0.4s;
    -o-transition: all 0.4s; 
    transition: all 0.4s;
    border-bottom:1px solid #9D9D9C;
    }

    header.change-logo ul.main-nav, .page-unsere-filialen header ul.main-nav {height: 80px;  -webkit-transition: all 0.4s; 
    -moz-transition: all 0.4s; 
    -ms-transition: all 0.4s;
    -o-transition: all 0.4s; 
    transition: all 0.4s;}    

.nav {display: flex; justify-content: space-between;}
   

/* navigation */

.mobile {display: none;}

a.toggle-menu {display: none; position: absolute; width:35px; right: -0px; top: 38px; padding-top: 10px; height:35px; cursor: pointer; }

    a.toggle-menu span {display: block; width: calc(100% - 10px); height:1px; background: var(--copytext); transition: all .3s; position: relative;}
    a.toggle-menu span + span {margin-top: 14px; }
    a.toggle-menu span.line2 {margin-left: 8px;}

    a.toggle-menu span.line2 {
      margin-left:0px;
    }
    a.toggle-menu.active span.line1 {
      transform: rotate(45deg);

    }
    a.toggle-menu.active span.line2 {
      transform: rotate(-45deg);
      margin-top:-1px;
    }
    a.toggle-menu span.line3 {
      display:none;
    }
    a.toggle-menu span + span {
      margin-top:9px;
    }

    ul.main-nav {position: relative; margin: 0px; font-size: 19px; line-height: 35px; display: flex; flex-wrap: wrap; padding: 0px; 
        width: auto;         /* not centering logo =  width: 50%; */
        max-width: 50%;      /* not centering logo =  max-width: 500px;  */                 
        align-items: flex-end; height: 148px;
        -webkit-transition: all 0.6s; 
        -moz-transition: all 0.6s; 
        -ms-transition: all 0.6s;
        -o-transition: all 0.6s; 
        transition: all 0.6s;
    }   
    
ul.main-nav li.menu-item-has-children span {display: none;}    
    
    ul.main-nav.main-nav-right {display: flex; justify-content: flex-end;}
    
    ul.main-nav li {display: inline-block; position: relative; padding: 0px 0px 0px 0px;} 
    
    ul.main-nav.main-nav-left li {margin-right: 38px;}
    ul.main-nav.main-nav-right li {margin-left: 38px;}
        
        ul.main-nav li:first-child {margin-left: 0px;}
        ul.main-nav li:last-child {margin-right: 0px;}
    

    ul.main-nav li a {position: relative; padding: 0px 0px;}  
        ul.main-nav li.current-page-item a,
        ul.main-nav li.current-menu-item a,
        ul.main-nav li.current-page-ancestor a,
        ul.main-nav li:hover a {/* text-decoration: underline; */}
            ul.main-nav li a:after {
              content: '';
              display: block;
              width: 0;
              height: 1px;
              background: var(--highlight);
              transition: width .3s;
              margin-top: 0px;
              position: absolute;
              bottom:0px;
            }
             ul.main-nav li:hover a:after,
             ul.main-nav li.current-page-item a:after,
             ul.main-nav li.current-menu-item a:after,
             ul.main-nav li.current-page-parent a:after,
             ul.main-nav li.current-menu-parent a:after {
              width: 100%;
              transition: width .3s;
            }
    
    ul.main-nav li ul {display: none; position: absolute; left: -20px; width: 250px; background-color: #fff; padding: 5px 10px 10px 20px;}
    
    ul.main-nav li:hover ul {display: block;}
    
        ul.main-nav li ul li {display: block;}
        ul.main-nav li ul li a,
        ul.main-nav li:hover ul li a,
        ul.main-nav li.current-page-item ul li a,
        ul.main-nav li.current-page-ancestor ul li a,
        ul.main-nav li.current-menu-item ul li a {text-decoration: none;}
            ul.main-nav li ul li a:hover {opacity: 0.75;}
            
            ul.main-nav li.current-page-item ul li a:after,
            ul.main-nav li.menu-page-item ul li a:after,
            ul.main-nav li ul li a:hover::after,
            ul.main-nav li:hover ul li a:after {width: 0;}
        


/* content */
            
main {position: relative; margin-top: 148px; padding-bottom: 40px;}                
main img {width: 100%; display: block; height: auto;}



main a.btn::after,
.block-produkt-liste ul li a:after,
.weitere-produkte ul li a:after {
  content: '';
  display: block;
  width: 0;
  height: 1px;
  background: var(--highlight);
  transition: width .3s;
  margin-top: 0px;
}
    main a.btn:hover::after,
    .block-produkt-liste ul li a:hover:after,
    .weitere-produkte ul li a:hover:after{
      width: 100%;
      transition: width .3s;
    }
    
    
section {position: relative;}

    .block-trenner {width: 100%; height: 1px; background-color: var(--highlight);}

    .block-images {margin: 90px 0px;}
	.block-images.hero {margin: 0 -50px 0;}
    .block-images .images-wrapper {display: flex; justify-content: flex-end; margin-right: 80px; }

	.block-images.fullwidth .images-wrapper.single {margin-right: 0px; }
    .block-images.zentriert .images-wrapper.single {margin-right: 0px; }
    
    .block-images.anim-right .images-wrapper {margin-left: 80px; margin-right: 0px;}
    
    .block-images.anim.anim-left .images-wrapper.single {margin-right: 0px;}
    
        .block-images.small-margin {margin: 0px 0px 46px 0px;}
        .block-images img {width: auto; margin: 0px 0px 0px 46px; max-width: calc(100% - 23px);}    
        .block-images a.btn {margin-top: 64px;}
        
        .block-images.anim.anim-left .images-wrapper.single {justify-content: flex-start;}
        .block-images.anim.anim-left .images-wrapper.single img {margin: 0px 0px 0px 0px; max-width: 100%;}
        .block-images .images-wrapper.single img {max-width: 100%;}

		.block-images.zentriert .images-wrapper.double {   justify-content: center; margin-right: 0; margin-left:0;}
        
        .block-images .images-wrapper.double img,
        .block-images.anim.anim-left .images-wrapper.double img,
        .block-images.anim.anim-right .images-wrapper.double img,
        .block-images.anim.anim-left .images-wrapper.multiple img,
        .block-images.anim.anim-right .images-wrapper.multiple img {margin: 0px 0px 0px 46px; width:auto; max-width: 433px !important;}

		.block-images.zentriert .images-wrapper.double img,		
		.block-images.anim.anim-left.zentriert .images-wrapper.double img, 
		.block-images.anim.anim-right.zentriert .images-wrapper.double img { width:calc(50% - 5px); max-width: 680px!important;}
		.block-images.zentriert .images-wrapper.double img { max-height:650px; max-width: none!important;}
		.block-images.zentriert .images-wrapper.double img:first-child { margin-left:0 ;}
		.block-images.zentriert .images-wrapper.double img:last-child { margin-left:10px;}
        
        .home .block-images .images-wrapper.double img,
        .home .block-images.anim.anim-left .images-wrapper.double img,
        .home .block-images.anim.anim-right .images-wrapper.double img,
        .home .block-images.anim.anim-left .images-wrapper.multiple img,
        .home .block-images.anim.anim-right .images-wrapper.multiple img {margin: 0px 0px 0px 26px; width:auto; max-width: 433px !important;}       
        
            .block-images.zentriert .images-wrapper.single img {
              max-width: 284px; width: auto; margin: 0px auto; height: auto;
            }
        
        .block-images.anim.anim-right .images-wrapper.double img,
        .block-images.anim.anim-right .images-wrapper.multiple img,
        .home .block-images.anim.anim-right .images-wrapper.double img,
        .home .block-images.anim.anim-right .images-wrapper.multiple img {max-height: 650px;}
    
    .block-images.anim-left .images-slider {
      max-width: 1112px;
    }
    
        .block-images.anim-left .images-slider .slick-slide,
        .block-images.anim-left .images-slider .slick-slider {max-height: 743px;}

            .block-images.anim-left .images-slider img {
              width: auto;
              margin: 0px 0px 0px 0px;
              max-width: 100%;
            }
    
    .block-images.anim-right .images-slider {
      max-width: 688px;
      margin: 0px 0px 0px auto;
    }
    
        .block-images.anim-right .images-slider .slick-slide {max-height: 1032px;}

        .block-images.anim-right .images-slider img {
          width: auto;
          margin: 0px 0px 0px 0px;
          max-width: 100%;
        }
        
    .images-slider .slick-arrow {width:50px; height: 70px; position: absolute; cursor: pointer; z-index: 100000; top: calc(50% - 35px); background-image: url('img/slider-arrow.svg'); background-color: transparent; border: 0px; background-repeat: no-repeat; background-size: 15px auto; background-position: center center; text-indent: -1000px; overflow: hidden;}
    .images-slider .slick-arrow:hover {background-image: url('img/slider-arrow-hover.svg');}
    
        .slick-arrow.slick-prev {left: 0px;}
        .slick-arrow.slick-next {right: 0px; transform: rotateY(180deg);}

.block-images.hero .hero-wrap { position: relative; }
.block-images.hero img { margin:0; width:100%; max-width: unset; }
.block-images.hero .hero-headline {
  position: absolute;
  z-index: 10;
  color: #fff;
  top: 0;
  left: 0;
  max-width: 1470px;
  padding-right: 50px;
  padding-left: 50px;
  margin-top: 12%;
}
        
    .single-produkte .slick-arrow {width:50px; height: 70px; position: absolute; cursor: pointer; z-index: 100000; top: calc(50% - 35px); background-image: url('img/slider-arrow.svg'); background-color: transparent; border: 0px; background-repeat: no-repeat; background-size: 15px auto; background-position: center center; text-indent: -1000px; overflow: hidden;}
    
    .single-produkte .arrow-next.slick-arrow {right: 0px; transform: rotateY(180deg);}
        
        
    .produkt-image {position: relative;}
    
        
    .block-related {padding-bottom: 70px;}  
        .block-related h2 {margin-bottom: 90px;}
        .related-products {display: flex; }
            .related-product {max-width: 364px; margin-right: 46px; margin-left: 0px;}
            .related-product:last-child {margin-right: 0px;}

                .related-product img {margin-bottom: 40px;}
                .related-product a,
                .partner a {display: block; }
                    
            main .related-products a:after,
            main .partner a:after {display: none;}    
            
            .related-products a span.btn::before {width: 40px; }
            .related-products a:hover span.btn::before { width: 55px;}
            .related-products a span.btn {padding: 4px 0px 4px 62px;}
            .related-products a:hover span.btn {padding: 4px 0px 4px 75px;}
            
       main .related-products a span:after,
       main .partner a span:after  {
              content: '';
              display: block;
              width: 0;
              height: 1px;
              background: var(--highlight);
              transition: width .3s;
              margin-top: 0px;
           }

           main .related-products a:hover span:after,
           main .partner a:hover span:after {
              width: 100%;
              transition: width .3s;
            }     

.border-bottom {padding-bottom: 90px; border-bottom: 1px solid var(--highlight); margin-bottom: 90px;}
    
    .block-fullwidth {background-color: var(--highlight); color: #fff; padding: 90px 0px; margin-bottom: 90px; }    
        .block-fullwidth a.btn {color: #fff; padding-left: 110px;}
        .block-fullwidth a.btn:hover {padding-left: 110px;}
        
        .block-fullwidth a.btn.audio {line-height: 90px;}
        
        .block-fullwidth a.btn.audio:before {background-image: url("img/btn-audio.svg"); background-size: 92px auto; background-position: center bottom; width: 93px; height: 92px; top: 3px; content: ''; display: block; transition: none !important;}
        
        .block-fullwidth a.btn.audio.playing:before {background-image: url("img/btn-audio.svg"); background-size: 92px auto; background-position: center top; width: 93px; height: 92px; transition: none !important;}
                main a.audio::after {background: #fff; position: absolute; bottom: 30px; }
            
            .block-fullwidth .slider-navigation {position: absolute; right: 0px; }            
            .block-fullwidth .slider-navigation .slick-arrow span { background-image: url("img/btn-arrow-white.svg"); }
    
    
    .block-textslider {display: flex; align-items: center; padding-bottom: 90px;}
    .block-textslider .slick-slider {max-width: 846px; width:75%;}
        .block-textslider .slick-track {height: 100%;}
        .block-textslider .slick-list {max-width: 846px; aspect-ratio: 1 / 1; width: 100%; background-color: var(--bright);
            -webkit-box-shadow: 0px 2px 6px 0px rgba(0,0,0,0.15);
            -moz-box-shadow: 0px 2px 6px 0px rgba(0,0,0,0.15);
            box-shadow: 0px 2px 6px 0px rgba(0,0,0,0.15);            
            }
        .block-textslider .slick-list .slick-slide {padding: 80px 60px; position: relative;}        
        .block-textslider img.logo { max-width: 215px; bottom:45px; position: absolute; left: calc(50% - 107px);}
        .block-textslider p {font: normal normal normal 28px/37px Georgia;}
        
        .slider-navigation {width:216px; height: 22px; display: flex; margin-left: 118px;}
            .slider-navigation .slick-arrow {width:108px; height: 23px; position: relative; cursor: pointer;}
            .slider-navigation .slick-arrow span {display: block; width: 40px; height: 23px; background-image: url("img/btn-arrow.svg"); background-size: 85px auto; background-repeat: no-repeat; -webkit-transition: all 0.4s; -moz-transition: all 0.4s; -ms-transition: all 0.4s; -o-transition: all 0.4s; transition: all 0.4s;}
            
                .slider-navigation .slick-arrow:hover span {width: 55px;}                
                .slider-navigation .slick-arrow.arrow-prev {margin-right: 22px;}
                .slider-navigation .slick-arrow.arrow-prev span {transform: scaleX(-1); background-position: right; margin: 0px 0px 0px auto;}
                .slider-navigation .arrow-next.slick-arrow span {background-position: right;}
            
        .text-align-center {text-align: center;}
            
            
       .block-content, .block-produkt-liste.flex {display: flex; justify-content: space-between; margin-right: 80px;} 
       
       .block-produkt-liste.flex {margin-bottom: 110px;}
       
       .home .row .block-content.alignleft.anim.anim-left {margin-top: 70px;}
       
           .page-nos-produits .block-produkt-liste.flex:first-of-type {margin-top: 125px;}
           .block-content.alignleft, .block-produkt-liste {justify-content: flex-start;}
           .block-content.alignright {flex-direction: row-reverse;}
           
           .block-content p.narrow:last-child {margin-bottom: 0px;}
           
           .home img.alignleft {max-width: 548px; float: left; margin-right: 137px; }
           
           .block-content.alignleft .block-content-text,
           .block-content.alignright .block-content-text,
           .block-produkt-liste .block-content-text {max-width: 605px; margin-top: 30px; width:100%; }
           .block-content.alignleft .block-content-bild,
           .block-content.alignright .block-content-bild,
           .block-produkt-liste .block-content-bild {max-width: 548px; width: auto; }
           .block-content.alignright .block-content-bild {min-width: 380px; }
           
           .block-content.alignleft .block-content-bild, .block-produkt-liste .block-content-bild {margin-right: 137px;}
           
           .page-notre-histoire .block-content.alignleft .block-content-bild {margin-right: 90px; width:493px;}
           .page-notre-histoire .block-content.alignleft .block-content-text, .page-notre-histoire .block-content.alignright .block-content-text {max-width: 708px; width:60%;}
           

           
           img.alignleft {max-width: 548px; float: left; margin-right: 90px; margin-bottom: 10px;}
           img.fullwidth {margin-bottom: 80px;}
           img.size-full {width: auto;}
           img.alignright {max-width: 747px; float: right; margin-left: 90px; margin-bottom: 80px; width: auto;}

    
        .block-partner {max-width: 1050px; display: flex; justify-content: space-between; flex-wrap: wrap; }
            .block-partner .partner {width: calc(50% - 23px); max-width: 500px; margin-bottom: 90px; }
                .block-partner img {margin-bottom: 40px;}
                .block-partner h2 {font-size: 45px; line-height: 51px; margin-bottom: 20px;}
                .block-partner a.btn, .block-partner a span.btn {font-size: 24px; line-height: 38px; padding-left: 75px;}
                    .block-partner a:hover span.btn {padding-left: 90px;}                    
                a span.btn:before {width: 55px;}
                a:hover span.btn:before {width: 70px;}

        .block-produkt-liste { }
        .block-produkt-liste ul,
            .produkt-info ul,
            .weitere-produkte ul {list-style: none; padding: 0px; margin: 0px;}
        
        .block-produkt-liste ul li a, .produkt-info ul li a,
        .weitere-produkte ul li a { font: normal normal normal 26px/30px "Georgia"; }
        .block-produkt-liste ul li a:before, .produkt-info ul li a:before,
        .weitere-produkte ul li a:before { top: 7px; }
        
        .block-produkt-liste ul li a,
        .weitere-produkte ul li a { font: normal normal normal 33px/45px "Georgia"; padding: 0px 0px 0px 90px; }
        .block-produkt-liste ul li a:hover,
        .weitere-produkte ul li a:hover { padding: 0px 0px 0px 105px; }
        .block-produkt-liste ul li a::before,
        .weitere-produkte ul li a::before { top: 12px;}
        
        .weitere-produkte h3 {
          font: normal normal normal 55px/61px Georgia;
          text-transform: none;
          margin: 90px 0px 45px 0px;
        }
        
        .weitere-produkte {margin-bottom: 60px;}
        
        .block-flip-content {width: 100%; display: flex; justify-content: space-between; flex-wrap: wrap; }  
        .block-flip-content .flip-content {width: calc(50% - 23px); margin-bottom: 46px; position: relative; height: 800px; background-color: transparent; cursor: pointer; perspective: 1000px;}
                .flip-front, .flip-back {position: absolute; background-size: cover; background-position: center center; background-repeat: no-repeat;left: 0px; top: 0px; width: 100%; height: 800px; -webkit-backface-visibility: hidden; /* Safari */  backface-visibility: hidden;}
                
                .flip-content-inner {
                  position: relative;
                  width: 100%;
                  height: 100%;
                  text-align: center;
                  transition: transform 0.8s;
                  transform-style: preserve-3d;
                  -webkit-backface-visibility: hidden; /* Safari */
                  backface-visibility: hidden;
                }

                /* Do an horizontal flip when you move the mouse over the flip box container */
                .flip-content.flipped .flip-content-inner {
                  transform: rotateY(180deg);
                }
                
                .flip-front {padding: 50px 68px; z-index: 100; font-size: 55px; line-height: 62px; color: #fff; opacity: 1; webkit-transition: all 0.4s; -moz-transition: all 0.4s; -ms-transition: all 0.4s; -o-transition: all 0.4s; transition: all 0.4s;}
                    .flip-front span.nummer {font-size: 40px; line-height: 46px; display: block; margin-bottom: 55px;}
                    .flip-front h2 {font: normal normal normal 55px/62px "Georgia";}
                .flip-back {background-color: var(--bright); padding: 120px 68px; font-size: 22px; line-height: 34px; border:1px solid #707070; z-index: 10; transform: rotateY(180deg);}
                
                span.flip {position: absolute; bottom: 35px; height: 74px; width: 74px; border-radius: 74px; border:1px solid #fff; left: calc(50% - 37px);  font: normal normal normal 22px/32px "Georgia Italic"; background-color: transparent; display: flex; justify-content: center; align-items: center; cursor: pointer;}
                    .flip-back span.flip {border:1px solid var(--highlight);}

    
        .filialen-wrapper {margin-top: 125px; margin-bottom: 75px; display: flex; justify-content: space-between;}
            .produkt-wrapper {margin-top: 125px; margin-bottom: 0px; display: flex; justify-content: space-between;}
        
            .filialen-wrapper {overflow: hidden; margin-top: 75px;}
            .filialen-map {max-width: 685px;}
            .produkt-wrapper.liste {margin-bottom: 0px; margin-top: 70px; }
                .produkt-wrapper.liste:first-of-type {margin-top: 125px;}
            .produkt-info {max-width: 685px; width: 50%;}
                .filialen-liste li {margin-bottom: 45px; padding-bottom: 45px; border-bottom: 1px solid var(--highlight);}
                #wpsl-wrap #wpsl-result-list.filialen-liste li:last-child {border-bottom: 0px solid var(--highlight) !important;}
                .filialen-liste h3 {margin-bottom: 30px;}
                .filialen-liste p {margin: 0 0 30px 0;}
                
                .filialen-wrapper {display: block;}
                
                #wpsl-gmap {
                  float: left !important;
                  width: 66.5%;
                  height: 350px;
                  margin-bottom: 0;
                  max-width: 650px;
                }
                
                #wpsl-gmap.fix-it {
                    position: fixed !important;
                    top: 130px;
                    max-width: 650px;
                    width: calc(50% - 80px);
                }
                
                .filialen-liste {
                  max-width: calc(100% - 720px);
                  width: 50% !important;
                  float: right;
                }
                
                #wpsl-wrap #wpsl-result-list.filialen-liste li {
                  padding: 0px 0px 45px 0px;
                  border-bottom: 1px solid var(--highlight) !important;
                  margin-left: 0;
                  margin-bottom: 45px;
                  overflow: hidden;
                  list-style: none outside none !important;
                  text-indent: 0;
                }
                
                #wpsl-wrap #wpsl-result-list.filialen-liste li span {display: block;}
                
                button.gm-fullscreen-control {display: none !important;}
                .wpsl-infobox img {width: auto;}
                
                .wpsl-info-window h3 {font: normal normal normal 28px/32px Georgia !important; margin:0px 0px 30px 0px !important;}
                .wpsl-info-window .wpsl-info-actions {display: none !important;}
                
                #wpsl-wrap .wpsl-info-window p {font: normal normal normal 16px/22px "Georgia" !important; margin: 0 0 15px 0 !important;}

                
                .wpsl-gmap-canvas .wpsl-infobox {
                  min-width: 180px;
                  max-width: 300px !important;
                  padding: 20px 30px 30px 20px !important;
                  border-radius: 0px !important;
                  font-size: 16px !important;
                  font-weight:normal !important;
                  border: 1px solid #ccc;
                  background: #fff !important;
                }
                
                #wpsl-wrap .wpsl-icon-reset {padding-right: 14px !important;}
                
                #wpsl-map-controls .wpsl-icon-direction,
                #wpsl-map-controls.wpsl-reset-exists .wpsl-icon-direction {display: none !important;}
                
                
                .filialen-liste #wpsl-stores {height: auto !important; }
            
            .single-produkte p.infotext {margin-bottom: 75px; max-width: 582px; width: 100%;}
            .produkt-left {max-width: 582px; width: calc(100% - 60px);}
                .produkt-left {margin-bottom: 80px;}
                
                .produkt-details-wrapper {margin-top: 30px; margin-bottom: 80px;}
                
                .produkt-details {
                  font-family:"Georgia Bold";
                  font-size: 21px;
                  line-height: 31px;
                  padding: 20px 0px 20px 0px;
                  position: relative;
                  border-top: 1px solid var(--highlight);
                  cursor: pointer;
                }                    
                
                    .produkt-details::after {
                      content: '';
                      position: absolute;
                      right: 20px;
                      width: 31px;
                      height: 31px;
                      display: block;
                      background-image: url(img/icon-plus.svg);
                      top: 17px;
                    }
                    
                    .produkt-details.active::after {
                      content: '';
                      position: absolute;
                      right: 20px;
                      width: 31px;
                      height: 31px;
                      display: block;
                      background-image: url(img/icon-minus.svg);
                      top: 17px;
                    }                    
                
                .produkt-details-panel {
                  padding: 0px;
                  background-color: white;
                  max-height: 0;
                  overflow: hidden;
                  transition: max-height 0.2s ease-out;                  
                }
                
                .produkt-details-panel p {
                  font-size: 18px;
                  line-height: 29px;
                  }
                    
            .weitere-produktbilder img {margin-bottom: 50px;}
                    
        
        .searchform {margin-bottom: 100px;}
        .wpcf7-form input, .searchform input {width: 100%; max-width: 640px; border: 1px solid var(--highlight); color:var(--highlight); border-radius: 0px; padding: 5px 10px; font: normal normal normal 20px/25px "Georgia";}

        .wpcf7-form input[type="checkbox"] {
          position: relative;
          left: 15px;
          top: -4px;
          z-index: 0;
          -webkit-appearance: none;
          border: 0px;
          width: auto;
        }
        .wpcf7-form input[type="checkbox"] + span {
          position: absolute;
          left: 0px;
          font-size: 18px !important;
        }
        .wpcf7-form input[type="checkbox"] + span::before {
          width: 33px;
          height: 33px;
          border-radius: 0px;
          border: 1px solid var(--highlight);
          background-color: #fff;
          display: block;
          content: "";
          float: left;
          margin-right: 15px;
          z-index: 5;
          position: relative;
        }
        .wpcf7-form input[type="checkbox"]:checked+span::before {
          box-shadow: inset 0px 0px 0px 5px #fff;
          background-color: var(--highlight);
        }       
        
        .wpcf7-form-control-wrap {display: block; margin-top: 15px;}
        
        .wpcf7-form input[type="submit"], .searchform input[type="submit"] { background-color: var(--highlight); color: #fff; max-width: 306px; cursor: pointer;}

    .wpcf7-not-valid-tip {
      color: #dc3232;
      font-size: 16px !important;
      }
      
    .wpcf7 form .wpcf7-response-output {
      margin: 2em 0.5em 1em 0px !important;
      border: 0px solid #fff !important;
      color: #dc3232;
      padding: 10px 15px !important;
      background-color: #F7F7F7;
    }        
        
    .search-item {margin-bottom: 90px; padding-top: 90px; border-top: 1px solid var(--highlight); max-width: 785px;}
    .search-item h3 {margin-bottom: 10px; font-weight: bold;}
    
    .search-term {font-weight: bold;}
    
    input:focus-visible {
        outline: 2px solid var(--highlight);
        border-radius: 0px;
    }
    
    .page-karriere main p a:hover,
    .page-jobs main p a:hover {
      text-decoration: underline !important;
    }
        
        

footer {padding: 67px 0px 25px 0px; position: relative; z-index: 10000; border-top: 1px solid var(--highlight); font-size: 16px; line-height: 30px; background-color: #fff;}   

    footer .row {display: flex; justify-content: space-between;}
    
    footer p, .home footer p, .parent-pageid-16 footer p {margin-bottom: 0px; font-size: 16px; line-height: 30px;}
        footer ul {margin: 0px; padding: 0px;}
        footer ul li {display: block; font-size: 16px; line-height: 30px; padding: 0px; border-right: 1px solid #fff;}
        
        footer ul li a:hover {text-decoration:underline !important;}
        
        .textblock.adresse {order: 1;}
        .textblock.filialen {order: 3;}
        .meta-nav {order: 3;}
        .social-nav {order: 4;}
        
        .instagram a {padding-left: 30px;}
        .instagram a:before {content: ''; display: block; width:25px; height: 22px; background-image: url(img/icon-instagram.svg); background-repeat: no-repeat; position: absolute; left: 0px; top: -1px;}
        
        .facebook a {padding-left: 30px;}
        .facebook a:before {content: ''; display: block; width:25px; height: 22px; background-image: url(img/icon-facebook.svg); background-repeat: no-repeat; position: absolute; left: 0px; top: -1px;}
        
        .right-aligned .row {text-align: right; display: inline-block; width:100%;}
    

    