/* barlow-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/barlow-v12-latin-regular.eot'); /* IE9 Compat Modes */
  src: url('fonts/barlow-v12-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/barlow-v12-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/barlow-v12-latin-regular.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('fonts/barlow-v12-latin-regular.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('fonts/barlow-v12-latin-regular.svg#Barlow') format('svg'); /* Legacy iOS */
}

/* barlow-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/barlow-v12-latin-700.eot'); /* IE9 Compat Modes */
  src: url('fonts/barlow-v12-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/barlow-v12-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/barlow-v12-latin-700.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('fonts/barlow-v12-latin-700.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('fonts/barlow-v12-latin-700.svg#Barlow') format('svg'); /* Legacy iOS */
}

@font-face {
  font-family: 'icomoon';
  src:  url('fonts/icomoon.eot?xakfno');
  src:  url('fonts/icomoon.eot?xakfno#iefix') format('embedded-opentype'),
    url('fonts/icomoon.ttf?xakfno') format('truetype'),
    url('fonts/icomoon.woff?xakfno') format('woff'),
    url('fonts/icomoon.svg?xakfno#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-keyboard_arrow_right:before {
  content: "\e900";
}
.icon-keyboard_arrow_left:before {
  content: "\e901";
}
.icon-linkedin-square:before {
  content: "\e902";
  font-size:30px;
}

body { 
    background:#fff;
    font-family:Barlow, sans-serif;
    font-size:16px;
    font-weight:400;
    line-height:25px;
    color:#000; 
    padding:0px 15%;
    }    
@media (min-width:2550px) { body { padding:0px 25%; }}
@media (max-width:1024px) { body { padding:0px 5%; }} 

/* ### Header-Styles ##################################################################*/  

.site-header {
    width:100%;
    height:200px;
    background:#fff;
    z-index:99999999;
    }
@media (max-width:1530px) { .site-header { height:80px; } } 
    
.scrolled .site-header {
    position:fixed;
    top:0px;
    left:0px;
    width:100%;
    height:100px;
    padding:0px 15%;
    } 
@media (min-width:2550px) { .scrolled .site-header { padding:0px 25%; }}
@media (max-width:1024px) { .scrolled .site-header { padding:0px 5%; }} 
       
.logonav-wrapper {
    width:100%;
    height:165px;
    background:#fff;
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    -o-transition: all 0.3s linear;
    -moz-transition: all 0.3s linear;
    -khtml-transition: all 0.3s linear;
    -webkit-transition: all 0.3s linear;
    -ms-transition: all 0.3s linear;
    transition: all 0.3s linear; 
    }
.scrolled .logonav-wrapper { height:100px; padding-bottom:20px; }
@media (max-width:1530px) { 
.logonav-wrapper { 
    height:100px; 
    align-items:center; 
    -o-transition: unset;
    -moz-transition: unset;
    -khtml-transition: unset;
    -webkit-transition: unset;
    -ms-transition: unset;
    transition: unset;
    }
.scrolled .logonav-wrapper { height:100px; padding-bottom:0px; } 
    } 
    
#logo { 
    width:250px;
    height:55px;
    }
@media (max-width:390px) { 
    #logo { 
    width:80%;
    height:auto;
    } 
} 
    

/* ### Navigation-Styles ##################################################################*/  
    
.main-navigation { display:inline-block; margin-bottom:10px; }   
.main-navigation ul li { margin:0px 30px 0px 0px; }
.main-navigation ul li:last-child { margin:0px 0px 0px 0px; }
.main-navigation .current_page_item a,
.main-navigation .current-menu-item a,
.category .main-navigation .current_page_parent a,
.single-post .main-navigation .current_page_parent a,
.main-navigation .current-page-ancestor a,
.main-navigation div ul li.current-menu-parent > a,
.category-aktuelles #menu-item-203,
.category-projekte #menu-item-204 {
    border-bottom:1px solid #000;
    }    
       
@media (max-width:1530px) { .main-navigation { display:none; } } 

/* ### Mobile-NAV-Styles ##################################################################*/     


.mobilenavbox {
    display:none;
    width:32px;
    height:28px;
    text-align:center;
    z-index:99999999999;
    } 

#mobilenavbtn, #closebtn { 
    display:none; 
    cursor:pointer;    
    }
    
.overlay {
  display:none;
  height: 100%;
  width: 100%;
  position: fixed;
  z-index:9999999999;
  top: 0;
  right: 0;
  background-color:#fff;
  overflow-x: hidden;
}

.overlay-content {
  position: relative;
  width: 100%;
  text-align:center;
  margin-top:50px;
  display: flex;
  flex-direction: column;
  flex-wrap:wrap;
  align-content: center;
}

.mobilenav, .mobilenavadresse { width:320px; text-align:left; }
.mobilenav { border-bottom:2px solid #000; padding-bottom:20px; }
.mobilenavadresse { padding-top:30px; }

.overlay a {
    padding: 0px 0px 20px 0px;
    text-decoration: none;
    display: block;
    transition: 0.3s;
    color:#000;
    text-transform:uppercase;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 1px;
}
    
.overlay .sub-menu a {
  font-size: 16px;
  font-weight:normal; 
}
.overlay a:link, .overlay a:visited {
  color:#000!important;
}
.overlay a:hover, .overlay a:focus {
  color:#000;
}
.overlay .current-menu-item a { text-decoration:underline; }

.overlay-content ul {
    list-style-type: none;
    margin:0px auto;
    padding: 0px;
    width:320px;
    }

@media (max-width:1530px) { .mobilenavbox, #mobilenavbtn { display:block; } } 

/* ### Content-Styles ##################################################################*/  


.site-main { padding:35px 0px 175px 0px; }
.home .site-main article { margin-top:-0.7666666%; }
.scrolled .site-main { padding:235px 0px 175px 0px; }
@media (max-width:1530px) { .scrolled .site-main { padding:115px 0px 175px 0px; } } 

.post, .page, .entry-content { margin:0px; } 
 
.single figure { margin:0px; }

.page-id-8 :where(.wp-block-columns.is-layout-flex) {
  gap:1.4%;
}

.wp-block-image :where(figcaption) {
    margin-bottom: 1.1em;
    margin-top:0px;
}

.page-id-8 .wp-block-image :where(figcaption) {
    margin-bottom: 0;
    margin-top: -5px;
    padding:10px;
}

.page-id-8 :where(figure) {
  margin: 0;
}

.page-id-8 :where(.wp-block-columns) {
  margin-bottom: 1.7%;
}

@media (max-width:782px) {
    .page-id-8 .wp-block-columns {
    flex-wrap: nowrap !important;
    }
} 

@media (max-width:600px) {
    .page-id-8 .wp-block-columns {
    flex-wrap: wrap !important;
    }
} 


/* ### Footer-Styles ##################################################################*/  

.site-footer {
    background:#fff;
    min-height:100px;
    padding-bottom:50px;
    }
    
.footerbox {
    display:flex;
    justify-content:space-between;
    }
@media (max-width:1530px) {
    .footerbox {
        flex-wrap:wrap;
        flex-direction:column;
        }
    } 
     
.adresszeile p {
    height:14px;
    line-height:14px;
    padding:0px 15px;
    border-right:2px solid #000;
    letter-spacing:1px;
    justify-content:start;
    }
.adresszeile p:first-child { padding:0px 15px 0px 0px; }
.adresszeile p:last-child { border-right:none; }
.adresszeile.is-layout-flex { gap: 0em; }
@media (max-width:1180px) { 
    .adresszeile.is-layout-flex { display: unset!important;} 
    .adresszeile p {
        height:14px;
        line-height:14px;
        padding:0px;
        margin-bottom:15px;
        border-right:none;
        }    
    } 

#menu-fussnav {
    display:inline-block;
    list-style-type:none;
    margin:0px;
    padding:0px;
    margin:auto;
    }     
#menu-fussnav li {
    float:left;
    padding: 0px 15px 0px 15px;
    border-right: 2px solid #000;
    height: 14px;
    line-height:14px;
    }
#menu-fussnav li:first-child {
    padding: 0px 15px 0px 0px;
    }
#menu-fussnav li:last-child { 
    padding-right:0px; 
    border-right:0px;
    } 
    
.socialmediabox { height:10px; position:relative; } 
 

/* ### Blog-Styles ##################################################################*/  

.home .entry-content {
    margin: 0 -0.7666666%;
    }

.blog-main { margin-top:168px; }
@media (max-width:960px) {
    .blog-main { margin-top:70px; }
    } 
    
.single .site-content, .blog .site-content { background-color:#dfdfdf; }
.single .content-area, .blog .content-area { padding:30px 0px; }

.page-template-projekte .post {
    margin:0px;
    }

.page-template-projekte .post-wrap, .archive .post-wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: auto;
    column-gap: 1.4%;
    row-gap: 1.7%;
    }  


        
@media (max-width: 600px) {
    .page-template-projekte .post-wrap, .archive .post-wrap {
        grid-template-columns: repeat(1, 1fr);
        row-gap:10px;
        }
    } 

.page-template-projekte .post-thumbnail img, .single .wp-block-image img {
    width:100%;
    height:auto;
    }
    
.wp-singular h1 { padding-top:100px; }

.grid-seitenleiste { align-self: start; row-gap: 25px; }
.grid-grundbox { column-gap: 2.5%; }
.grid-kleine-fotos-abstand { column-gap: 3.5%; }

@media (max-width:990px) { 
.grid-grundbox { grid-template-columns: repeat(1, minmax(0, 1fr))!important; }
.grid-seitenleiste { row-gap: 20px; margin-bottom:15px!important; }
.grid-grundbox { column-gap: 0px; }
.grid-kleine-fotos-abstand { column-gap: 0px; grid-template-columns: repeat(1, minmax(0, 1fr))!important; }

}

    
/* =Blog-Navigation - Pagination
----------------------------------------------- */

.paginationbar { 
    padding:100px 0px 0px 0px; 
    }
    
.paginationbar .nav-links { 
    padding:0px; 
    display: flex;
    justify-content: center;
    }

nav.pagination {
    position: relative;
    display: block;
    }

.nav-links {
    position: relative;
    }

.nav-links ul {
    margin: 0;
    padding: 0,
    }

.nav-links ul li {
    list-style: none;
    margin:0 10px 0 0;
    padding:0;
    float: left;
    }

.nav-links ul li span.current {
    padding: 10px 6px;
    display: block;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #000;
    }
    
.nav-links ul li span.dots {
    font-size:22px;
    font-weight:bold;
    color: #000;
    line-height:40px;
    }

.nav-links ul li a {
    padding: 10px 6px;
    display: block;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    }

.nav-links ul li a:hover {
    color: #000;
    }

.paginationbar ul { margin:0px 0px 0px -37px; }

.nav-links { padding-top:60px; }

.nav-previous:before {
    font-family: "icomoon";
    position: relative;
    top:8px;
    font-size:30px;
    content: "\e901";  
    left:-5px;
    color:#000;
    text-decoration:none;
    }
.nav-next:after {
    font-family: "icomoon";
    position: relative;
    top:8px;
    font-size:30px;
    content: "\e900";  
    right:-5px;
    color:#000;
    text-decoration:none;
    }
    
/* ### Font-Styles ##################################################################*/  
    
p, h1, h2, h3, h4, h5, h6, li {
    -moz-hyphens: auto;
    -o-hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
    word-wrap: break-word;
    } 

.main-navigation ul li a {
    font-size:18px;
    font-weight:700;
    text-transform:uppercase;
    color:#000;
    letter-spacing:1px;
    }  
    
.adresszeile p, .mobilenavadresse p {
    font-size:18px;
    font-weight:700;
    letter-spacing:1px;
    }  
    
h1 { font-size: 20px; margin:0px 0px 35px 0px; letter-spacing:1px; }
h2, h3, h4, h5, h6 { font-size: 16px; margin:0px 0px 15px 0px; letter-spacing:1px; }
.page-id-8 h2 { font-size: 20px; margin:0px 0px 35px 0px; letter-spacing:1px; }

.wp-element-caption {
    font-size:15x;
    font-weight:700;
    }
    
.grid-seitenleiste p {
    font-size:16px;
    font-weight:700;
    margin:0px 0px 8px 0px;
    }


    
/* ### Link-Styles ##################################################################*/  

/* Removing The Dotted Link Outline when active */
a {outline:0;}
input::-moz-focus-inner { border: 0; }
a, a:link, a:active, a:focus, a:visited, a:hover  {
    outline: none;
    color:#000;
    }
    
a[href^="tel"]:link,
a[href^="tel"]:visited,  
a[href^="tel"]:hover {
    text-decoration: none;
    color: #000;
    cursor: default; 
    }
.adresszeile a { text-decoration: none; }    
    
.blogprojektlink {
    font-size:15px;
    text-decoration:none;
    font-weight:700;
    }
.blogprojektlinkabstand { padding: 10px; }

#menu-fussnav li a {
    color: #000;
    text-decoration:none;
    font-size:18px;
    font-weight:700;
    }
#menu-fussnav li a:hover {
    color: #000;
    }
    
.socialmediabox a, 
.socialmediabox a:link, 
.socialmediabox a:active, 
.socialmediabox a:focus, 
.socialmediabox a:visited, 
.socialmediabox a:hover { text-decoration:none; position:absolute; bottom:-7px; right:0px; }
@media (max-width:1530px) {
.socialmediabox a, 
.socialmediabox a:link, 
.socialmediabox a:active, 
.socialmediabox a:focus, 
.socialmediabox a:visited, 
.socialmediabox a:hover { bottom:-47px; }
    }
    
.nav-next a, 
.nav-next a:link, 
.nav-next a:active, 
.nav-next a:focus, 
.nav-next a:visited, 
.nav-next a:hover,
.nav-next a, 
.nav-previous a:link, 
.nav-previous a:active, 
.nav-previous a:focus, 
.nav-previous a:visited, 
.nav-previous a:hover { font-weight:700; text-transform:uppercase; letter-spacing:1px; }
    
/* ### Returning-Styles ##################################################################*/

.flexboxcenter {
    display:flex;
    justify-content:space-between;
    align-items:center;
    } 

/* remove gap under the image - use one of the two options */    
img {
    display:block;
    vertical-align:bottom;
    }

  
/* ### Plug-In-Styles ##################################################################*/  

.wmis_main_container .wmis_articles { border: none!important; }

.wmis_main_container .wmis_articles.wmis_col_3 {
    width: 31.8%;
    margin: 0.7666666%;
    }
@media screen and (max-width: 600px) {
.wmis_main_container .wmis_articles.wmis_col_mobile_1 {
  width: 100%;
}
}
    
.wmis_title_link { 
    font-size:15px!important; 
    font-weight:700!important;
    }
.infinite-scroll-last {display:none!important;}

@media screen and (max-width: 1080px) {
.wmis_main_container .wmis_title_link {
  font-size: 16px !important;
}
}

#fancybox-wrap { z-index: 999999999999!important; }
#fancybox-title-wrap { position:relative; z-index: 9999999999999!important; }

/* ### Noscript-Styles ##################################################################*/ 
    
#noscript-bg {
position:fixed;
width:100%;
height:auto;
z-index:9999;
}

#noscript-warnung {
width:100%;
height:auto;
margin:auto;
padding:25px 0px 25px 0px;
text-align:center;
font-size:13px;
line-height:1.5em;
color:#fff;
background:#deb8cd;
border-bottom:2px solid #fff;
}

#noscript-warnung a {color:#fff;}
#noscript-warnung a:hover {color:#fff;}
#noscript-warnung b{font-size:18px;}


/* ### Mobile-Styles ##################################################################*/ 

@media (max-width:834px) { 

    
}

