/*
 Theme Name:   Marcus Farwig Theme
 Description:  Based on WP Bootstrap Starter Theme
 Author:       Oliver Barabas
 Author URI:   https://oliverbarabas.com
 Template:     wp-bootstrap-starter
 Version:      1.0
 Text Domain:  marcus-farwig-theme
*/
@import url("../wp-bootstrap-starter/style.css");


/*** IMPORT FONTS ***/
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/lato-v15-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Lato Regular'), local('Lato-Regular'),
       url('fonts/lato-v15-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/lato-v15-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/lato-v15-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('fonts/lato-v15-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/lato-v15-latin-regular.svg#Lato') format('svg'); /* Legacy iOS */
}

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/lato-v15-latin-700.eot'); /* IE9 Compat Modes */
  src: local('Lato Bold'), local('Lato-Bold'),
       url('fonts/lato-v15-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/lato-v15-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/lato-v15-latin-700.woff') format('woff'), /* Modern Browsers */
       url('fonts/lato-v15-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/lato-v15-latin-700.svg#Lato') format('svg'); /* Legacy iOS */
}

@font-face {
  font-family: 'EB Garamond';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/eb-garamond-v10-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('EB Garamond Regular'), local('EBGaramond-Regular'),
       url('fonts/eb-garamond-v10-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/eb-garamond-v10-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/eb-garamond-v10-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('fonts/eb-garamond-v10-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/eb-garamond-v10-latin-regular.svg#EBGaramond') format('svg'); /* Legacy iOS */
}

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


/*** FONT STYLES ***/
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body, p {
  font-family: 'Lato', sans-serif;
  font-size: 14px;
  line-height: 22px;
  letter-spacing: 0;
}
h1 {
  font-family: 'EB Garamond', serif;
  font-size: 50px;
  line-height: 60px;
  letter-spacing: 0;
  font-weight: 400;
}
h2 {
  font-family: 'EB Garamond', serif;
  font-size: 34px;
  line-height: 40px;
  letter-spacing: 0;
  font-weight: 400;
  padding: 0;
}
h3 {
  font-family: 'EB Garamond', serif;
  font-size: 24px;
  line-height: 30px;
  letter-spacing: 0;
  font-weight: 400;
}
h4 {
  font-family: 'EB Garamond', serif;
  font-size: 18px;
  line-height: 24px;
  font-weight: 400;
  letter-spacing: .160em;
  margin-top: .5em;
  margin-bottom: 3em;
}
p {
  margin-bottom: 2rem;
}
p.preheader {
  word-spacing: 15px;
}
hr.vertical {
  width: 0;
  height: 100px;
  border: 0;
  border-left: 1px solid #a1a1a1;
}
.projectyear {
  font-family: 'EB Garamond', serif;
  font-size: 20px;
  text-align: center;
}
[class^="mf-"]:before, [class*=" mf-"]:before {
  font-family: "marcus_farwig";
  font-style: normal;
  font-weight: bold;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  line-height: 1em;
  font-size: 130%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: text-top;
  transition: 0.3s;
}
 
.mf-pfeil-top:before { content: '\e813'; } 
.mf-herz:before { content: '\e814'; } 
.mf-pfeil:before { 
  content: '\e817';
  font-size: 30px; 
  color: #999998;
  width: 0;
} 
.mf-pfeil.left:before { 
  content: '\e817'; 
  -webkit-transform: rotate(-180deg);
   -moz-transform: rotate(-180deg);
   -ms-transform: rotate(-180deg);
   -o-transform: rotate(-180deg);
   transform: rotate(-180deg);
   vertical-align: top;
}
.mf-link-ext:before { content: '\f14c'; } 

.back_to_overview {
  font-family: "EB Garamond", serif;
  font-size: 14px;
  line-height: 2;
  text-transform: uppercase;
  vertical-align: text-top;
  margin: 0 2em;
}

.infocard a:after,
.anfahrt a:after {
  font-family: "marcus_farwig";
  font-style: normal;
  font-weight: bold;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  line-height: 1em;
  font-size: 130%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: text-top;
  transition: 0.3s;
  content: '\f14c';
  color: #76b729;
  margin-left: 5px;
}


.wp-block-image figcaption {
  font-size: 14px;
  line-height: 22px;
  color: black;
  padding: 20px 35px 0 35px
}


/*** COLORS ***/
body { background-color: #ffffff; }
body, p { color: #000000; }
.font-white { color: #ffffff; }
.font-black { color: black; }
.font-black:hover { color: #323232; }
a { color: #000000; transition: 0.3s; }
a:hover, a:hover i:before { color: #76b729; text-decoration: none; }
h1 a {color: #000000;}

#page-sub-header { background: inherit !important; }
.container.nobg { background: none; }
.bg-light { background-color: white !important }


/*** CUSTOM SHAPES ***/
.shape-square {
  display: inline-block;
  width: 9px; 
  height: 9px; 
  background: #76b729; 
  vertical-align: middle;
}
.projectyear:before {
  content: "";
  margin-right: .2em;
  display: inline-block;
  width: 11px;
  height: 11px;
  background: #76b729; 
  vertical-align: middle;
  /* Rotate */
   -webkit-transform: rotate(-45deg);
   -moz-transform: rotate(-45deg);
   -ms-transform: rotate(-45deg);
   -o-transform: rotate(-45deg);
   transform: rotate(-45deg);
   /* Rotate Origin */
   -webkit-transform-origin: 0 100%;
   -moz-transform-origin: 0 100%;
   -ms-transform-origin: 0 100%;
   -o-transform-origin: 0 100%;
   transform-origin: 0 100%;
}
p.preheader:before {
    content: " ";
    display: inline-block;
    left: -10px;
    top: 10px;
    position: absolute;
    width: 11px;
    height: 11px;
    background: #76b729;
    vertical-align: middle;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: 0 100%;
    -moz-transform-origin: 0 100%;
    -ms-transform-origin: 0 100%;
    -o-transform-origin: 0 100%;
    transform-origin: 0 100%;
}


/*** BUTTONS ***/
.wp-block-button a {
  border-radius: 0;
  background-color: #323232;
  border: 1px solid #323232;
  color: white;
  font-family: 'EB Garamond', serif;
  font-size: 18px;
  font-weight: bold;
  text-transform: uppercase;
  line-height: 24px;
  padding: 15px 60px;
  text-decoration: none;
  transition: 0.3s;
  letter-spacing: .160em;
}
.wp-block-button a:hover {
  background-color: #76b729;
}
form .btn-primary {
  border-radius: 0;
  background-color: #76b729 !important;
  border-color: #000 !important;
  color: white;
  font-family: 'EB Garamond', serif;
  font-size: 18px;
  font-weight: bold;
  text-transform: uppercase;
  line-height: 24px;
  padding: 15px 60px;
  text-decoration: none;
  transition: 0.3s;
  letter-spacing: .160em;
}
section.darkbg .wp-block-button a {
  background-color: #ffffff;
  border: 1px solid #76b729;
}
section.darkbg .wp-block-button span {
  color: black;
}
section.darkbg .wp-block-button a:hover {
  background-color: #76b729 !important;
}
section.darkbg .wp-block-button a:hover span {
  color: white;
}


/** NAVIGATION **/
.navbar-brand { margin-top: -15px !important; }
.navbar-brand img { width: 195px; }
.navbar-nav { text-align: center; }

header#masthead {
  background-color: white !important;
  box-shadow: none;
  padding: 3.5rem 1rem 1rem 1rem;
  border-bottom: 1px solid #c1c1c1;
}
header#masthead .container { background-color: transparent; padding: 0; }
#masthead .navbar-nav > li > a {
  color: black !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  text-transform: lowercase;
  letter-spacing: .160em;
  padding: 5px 25px !important;
}
#masthead .navbar-nav > li.current_page_item > a,
#masthead .navbar-nav > li > a:hover {
  color: #b2b2b2 !important;
  font-weight: 400 !important;
}
#menu-item-23 a {
  border: 1px solid #76b729;
}


/** SECTIONS + COLUMNS **/
.row-eq-height {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
}
.mb-100 {
  margin-bottom: 100px;
}
#content.site-content { padding: 0; }
section {
  padding: 100px 30px;
}
section#primary { padding: 0; }
section.darkbg {
  background-color: #323232;
  margin: 0 auto;
}
section.darkbg * {color: white;}
section.greybg {
  background-color: #e6e6e6;
  margin: 0 auto;
}
section.header.home { 
  height: 894px; 
  background: #323232 url(/wp-content/uploads/2019/03/header_start.jpg) center center no-repeat;
  background-size: contain;
  padding: 330px 50px;
}
section.header.home p {
  font-family: 'EB Garamond', serif;
  font-size: 24px;
  color: #b2b2b2;
}
section.bordered {
  border-top: 1px solid #c1c1c1;
  border-bottom: 1px solid #c1c1c1;
}
section.bordered:last-child {
  border-bottom: none;
}
.ghostkit-grid.nowrap {flex-wrap: nowrap;}
.ghostkit-grid .content-right { right: 8.333%; }
.ghostkit-grid .content-left { left: 8.333%; }

figure {
  margin: 0;
}
.page-content, .entry-content, .entry-summary {
  margin: 0;
}
.nopaddingtop { padding-top: 0; }
.nopaddingbottom { padding-bottom: 0; }
.infocard .ghostkit-col-content {
  background-color: white;
  padding: 25px;
  height: 435px;
}
.post.hentry { margin-bottom: 0;  }
.vita {
  border-left: 1px solid #c1c1c1;
  padding-left: 30px !important;
  padding-right: 100px !important;
}
.vita:before {
  content: " ";
  display: inline-block;
  left: 0;
  top: 5px;
  position: absolute;
  width: 11px;
  height: 11px;
  background: #76b729; 
  vertical-align: middle;
  /* Rotate */
   -webkit-transform: rotate(-45deg);
   -moz-transform: rotate(-45deg);
   -ms-transform: rotate(-45deg);
   -o-transform: rotate(-45deg);
   transform: rotate(-45deg);
   /* Rotate Origin */
   -webkit-transform-origin: 0 100%;
   -moz-transform-origin: 0 100%;
   -ms-transform-origin: 0 100%;
   -o-transform-origin: 0 100%;
   transform-origin: 0 100%;
}
.vita p:last-child {
  margin-bottom: 0;
}
.ghostkit-accordion .ghostkit-accordion-item-collapse {
  display: inline-block;
  top: inherit;
  right: inherit;
  position: relative;
  margin-left: 1rem;
  width: 5px;
}


/** TABLES **/
.wp-block-table td {
  vertical-align: top;
  padding: 5px 0;
}
.wp-block-table td:first-child {
  width: 150px;
}
.wp-block-table tr {
  border-top: 1px solid #e5e5e5;
}
.wp-block-table tr:first-child {
  border: none;
}


/** FORMS **/
form label {
  font-size: 12px;
  display: inherit;
}
form .form-control {
  border-radius: 0;
}
span.wpcf7-list-item {
  margin-left: 0;
}


/** GALLERY **/
.gallery {
  min-height: 455px;
}
.blocks-gallery-item,
.blocks-gallery-item img {
  max-width: 101px !important;
}


/** TIMELINE **/
.my_timeline_content h2 {
  font-family: 'Lato', sans-serif;
  font-size: 22px;
}
.my_timeline_content a {
  font-family: 'Lato', sans-serif;
  font-size: 14px;
  font-weight: bold;
  text-transform: uppercase;
}


/** PREFOOTER + FOOTER **/
.prefooter {
  border-top: 1px solid #c1c1c1;
}
#footer-widget section {
  padding-top: 80px;
  padding-left: 0;
  padding-bottom: 0;
  margin-bottom: 0;
}
#footer-widget .container {
  padding-bottom: 0;
}
#footer-widget h3 {
  font-size: 18px;
  color: black;
  text-transform: uppercase;
}
#footer-widget .textwidget {
  font-size: 18px;
}
footer .abbinder {
  border-top: 1px solid #c1c1c1;
  border-bottom: 1px solid #c1c1c1;
  padding: 20px 0;
  font-family: 'Lato', sans-serif;
  font-size: 14px;
}


/********************************************************
  Overlay navigation
********************************************************/
.overlayNav {
  height: 100%;
  width: 100%;
  opacity: 0;
  position: fixed;
  z-index: -1;
  top: 0;
  left: 0;
  background-color: white;
  overflow-x: hidden;
  transition: 1s;
}

.overlay-content {
  position: relative;
  width: 100%;
  text-align: center;
  margin-top: .8125rem;
}

.overlayNav .logo {
  position: absolute;
  top: 30px;
  left: 5%;
}

.overlayNav a {
  text-decoration: none;
  font-size: 20px;
  line-height: 2;
  color: #000000;
  display: block;
}

.overlayNav a:hover, .overlayNav a:focus {
  color: #76b729;
}

.overlayNav .closebtn {
  position: absolute;
  top: 0;
  right: 5%;
  font-size: 50px;
  z-index: 999;
}

.overlayNav .bottomnav a {
  font-size: 13px;
  display: inline;
}
.mw-213px img {max-width: 213px;}


/** MEDIA QUERIES **/
@media screen and (max-width: 1199px) {
  #masthead .navbar-nav > li > a { letter-spacing: .030em }
}
@media screen and (max-width: 991px) {
  .container { padding: 0; } 
  section { padding: 50px 30px; }
  section.header.home { height: auto; padding: 130px 60px; }
  .vita { margin-left: 20px; padding-left: 20px !important; padding-right: 50px !important; }
  .wp-block-image figcaption { padding: 10px 20px 0 20px; }
  #footer-widget section { padding-top: 45px; padding-right: 0; }
  .gallery { margin-bottom: 0; }
  .infocard .ghostkit-col-content { height: auto; }
  .buttonrow { text-align: center }
  .buttonrow .wp-block-button.alignright { float: none; margin-left: 0; display: inherit; text-align: inherit; }
  .container.morepadding { padding: 30px; }
  .wp-block-spacer { height: 40px !important; }
  #termin .wp-block-column {margin-left: 0; flex: 1; flex-basis: 100%}
}
@media screen and (max-width: 767px) {
  .wp-block-image img { width: 100%; }
  .wp-block-button.alignright { float: none; text-align: left; margin-left: 0; }
  .wp-block-button a { font-size: 14px;  }
  .navbar-brand img { width: 200px; }
  #footer-widget section#text-4, section#text-5 { padding-top: 0; }
  section { padding: 40px 20px; }
  section.bordered { padding: 20px; }
  section.homevita { padding: 20px 0; }
  footer { padding: 0 20px; }
  h1 { font-size: 35px; line-height: 40px; }
  .blocks-gallery-item, .blocks-gallery-item img { max-width: inherit !important }
  section.header.home { padding: 70px 45px; }
  .abbinder .text-right { text-align: inherit !important; }
}
@media screen and (max-width: 576px) {
  .ghostkit-grid-align-items-end>.ghostkit-col>.ghostkit-col-content {align-self: normal; }
  .ghostkit-grid.nowrap {flex-wrap: wrap;}
  .ghostkit-grid .content-right { right: 0; }
  .ghostkit-grid .content-left { left: 0; }
}
