/*
Theme Name:		 Berga Fassaden
Theme URI:		 http://www.Leusing.de
Description:	 Childtheme of Hamilton for Berga Fassaden
Author:			 Frank Leusing
Author URI:		 https://Leusing.de
Template:		 hamilton
Version:		 1.0.0
Text Domain:	 berga-fassaden
-------------------------------------------------------------- */

/*
dunkel-grau: #221F1F
mittel-grau: #b3abab
*/

body {
  color: #221f1f;
  font-size: 16px;
  line-height: 1.7;
  overflow-x: hidden;
  height: initial;
  min-height: initial;
}

body a {
  color: #221f1f;
}

a {
  color: #221f1f;
}

.section-inner.thin {
  max-width: 640px;
}

/*  Spaltenbreite fأ¼r Content   */

footer.site-footer p {
  color: #b3abab;
}

footer.site-footer a {
  color: #b3abab;
}

.site-footer p:first-child a:hover,
.site-footer p:first-child a:focus {
  border-bottom-color: #b3abab;
}

.title {
  font-size: 30px;
}

.entry-content h1,
.entry-content h2 {
  font-weight: 300;
  line-height: 1.4;
}

.entry-content h4 {
  margin-top: 3em;
  margin-bottom: 0.5em;
}



#logo {
  margin: 0 auto;
}

.page-header {
  margin: 0 auto;
}


@media (max-width: 768px) {
  .entry-content h1 {
    font-size: calc(20px + 2.5vw);
  }
}

.entry-content p {
  line-height: 1.7;
}

/* selected text ============= */

::selection {
  background: #ccc;
  color: #221f1f;
}

::-moz-selection {
  background: #ccc;
  color: #221f1f;
}

.site-header {
  padding: 0 0 1em 0;
}

@media (max-width: 620px) {
  .site-header {
    padding: 0;
  }
}

#logo img {
  width: 400px;
  margin: 2em auto 1.5em;
}

.wp-custom-logo .site-header {
  padding: 0;
}

button,
body a.button,
input[type="button"],
input[type="submit"] {
  padding: 16px 24px;
  border: 2px solid #221f1f;
  position: relative;
  display: block;
  color: #fff;
  overflow: hidden;
  background-color: #221f1f;
  overflow: hidden;
  opacity: 0.999;
  border-radius: 2px;
  transition: all 0.6s ease;
}

button:before,
button:after,
body a.button:before,
body a.button:after,
input[type="button"]:before,
input[type="button"]:after,
input[type="submit"]:before,
input[type="submit"]:after {
  content: "";
  width: 0;
  height: 100%;
  opacity: 0;
  position: absolute;
  top: 0;
  z-index: -1;
  background-color: #fff;
  transition: all 0.7s ease;
}

button:before,
body a.button:before,
input[type="button"]:before,
input[type="submit"]:before {
  left: 50%;
}

button:after,
body a.button:after,
input[type="button"]:after,
input[type="submit"]:after {
  right: 50%;
}

button:hover,
body a.button:hover,
input[type="button"]:hover,
input[type="submit"]:hover {
  text-decoration: none;
  color: #221f1f !important;
  background-color: transparent;
}

button:hover:before,
button:hover:after,
body a.button:hover:before,
body a.button:hover:after,
input[type="button"]:hover:before,
input[type="button"]:hover:after,
input[type="submit"]:hover:before,
input[type="submit"]:hover:after {
  width: 50%;
  opacity: 1;
}

.home-header-foto,
.featured-image {
  margin-bottom: 5em;
  opacity: 0;
  -webkit-transition: opacity 1s ease-in;
  -moz-transition: opacity 1s ease-in;
  -ms-transition: opacity 1s ease-in;
  -o-transition: opacity 1s ease-in;
  transition: opacity 1s ease-in;
}

.home-header-foto {
  /*width: 100vw;*/
  position: relative;
  /*left: 50%;*/
  /*right: 50%;*/
  /*margin-top: 2em;*/
  /*margin-left: -50vw;*/
  /*margin-right: -50vw;*/
  text-align: center;
  color: #ffffff;
  margin-left: -6%;
  margin-right: -6%;
  opacity: 0;
  overflow: hidden;
}

.home-header-foto.load,
.featured-image.load {
  opacity: 1;
}

.home-text {
  margin-bottom: 5em;
}

.home-header-foto.load .header-foto-text {
  position: absolute;
  bottom: 50px;
  left: 40px;
  text-align: left;
  /* right: 0;
  margin: 0 auto; */
  font-size: 55px;
  font-weight: 300;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.7);
  color: #ffffff;
  /* background-color: rgba(85, 85, 85, 0.65); */
  line-height: 1.2;
}

@media (max-width: 768px) {
  .home-header-foto.load .header-foto-text {
    font-size: calc(12px + 2.5vw);
  }
}

@media (max-width: 450px) {
  .home-header-foto.load .header-foto-text {
    position: relative;
    background-color: #bababa;
    padding: 10px 0;
    animation-delay: 0s;
    line-height: 1.4;
    text-shadow: none;
    left: 0;
    top: 0;
    text-align: center;
  }

  .header-foto-text.fade-block {
    transform: translateY(0px) !important;
  }

  .home-header-foto.load .header-foto-text.fade-block {
    opacity: 1 !important;
  }
}

.home-text h1 {
  margin-bottom: 2em;
}

#nav-container-top {
	height: 1px;
	visibility: hidden;
}

.nav-container {
  width: 100%;
  background: #fff;
  overflow: auto;
  transition: background 0.3s ease;
}

@media (min-width: 1200px){
	.nav-container{
	  position: -webkit-sticky; /* Required for Safari */
	  position: sticky;
	  top: 0px;
	  z-index: 1000;
	}
	.nav-container-sticky{
	  background: #f7f7f7;
	}
}

.nav-container.nav-fixed {
  position: fixed;
  top: 0;
  z-index: 100;
  background: #f7f7f7;
}

.admin-bar .nav-container.nav-fixed {
  top: 32px;
}


.nav-container a[href^="tel:"]::before {
  content: url('./images/fl-telefon.svg');
  display:inline-block;
  padding:0.2em 0.5em 0 0;
  vertical-align: middle;
}


.show-alt-nav .alt-nav,
.no-js .alt-nav {
  display: flex;
  justify-content: center;
  margin-bottom: 1em;
  width: 95%;
  flex-wrap: wrap;
  max-width: 1240px;
  margin: 0 auto;
  float: none;
}

.alt-nav>li+li {
  x-margin-left: 20px;
}

.alt-nav li {
  margin: 20px 20px 10px 20px;
  text-align: center;
}

.nav-fixed .alt-nav li {
  /*margin: 0;*/
}

.nav-fixed .alt-nav a {
  /*padding: 20px;*/
}

.alt-nav a {
  color: #221f1f;
  position: relative;
  padding-bottom: 10px;
  transition: none;
  transition: text-shadow 0.3s ease;
  text-decoration: none;
}

.alt-nav a:first-letter {
  text-transform: uppercase;
}

.alt-nav a:hover,
.alt-nav .current-menu-item a {
  /* color:#221F1F; */
  text-decoration: none;
  /* background-color:#3EBEA9; */
  /* text-shadow: 0px 0px 0px #221F1F, 0px 0px 0px #221F1F; */
}

.nav-fixed .alt-nav a:hover {
  /*background: #757575;*/
  /*color: #fff;*/
}

.alt-nav a:after {
  background: #221f1f;
  position: absolute;
  top: 100%;
  left: 50%;
  right: 50%;
  content: "";
  height: 2px;
  opacity: 0;
  -webkit-transition-property: left, right;
  transition-property: left, right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  /*transition: opacity 0.3s, transform 0.3s;
  -moz-transition: opacity 0.3s, -moz-transform 0.3s;
  -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
  transform: translateY(-10px);
  -moz-transform: translateY(-10px);
  -webkit-transform: translateY(-10px);*/
}

.nav-fixed .alt-nav a:after {
  /*content: none;*/
}

.alt-nav a:hover:after,
.alt-nav .current-menu-item a:after {
  opacity: 1;
  left: 20%;
  right: 20%;
  /*transform: translateY(0px);
  -moz-transform: translateY(0px);
  -webkit-transform: translateY(0px);*/
}

.show-alt-nav .nav-toggle {
  display: none;
  position: fixed;
  z-index: 100;
  left: 20px;
  bottom: 20px;
  top: initial;
  right: initial;
  background-color: #221f1f;
  color: #fff;
  width: initial;
  height: initial;
  padding: 5px 45px 5px 12px;
  border-radius: 2px;
}

.show-alt-nav .nav-toggle::after {
  content: "Menü";
}

.site-nav .menus {
  height: 100%;
}

.site-nav .menus>ul {
  width: 100%;
}

.nav-toggle .bar {
  right: 12px;
  background-color: #fff;
}

.close .bar {
  background-color: rgba(33, 42, 52, 1);
  display: block;
  height: 2px;
  margin-top: 0;
  opacity: 1;
  top: calc(50% - 1px);
  transform: rotate(45deg);
  width: 22px;
  z-index: 1;
  position: absolute;
}

.close .bar:nth-child(2) {
  transform: rotate(-45deg);
}

.close_outer {
  overflow: hidden;
}

.close {
  cursor: pointer;
  height: 30px;
  width: 50px;
  float: right;
  position: relative;
}

body.lock-screen #wpadminbar {
  display: none;
}

html.menu-screen {
  margin-top: 0 !important;
}

.site-nav ul:first-child li {
  text-align: center;
}

@media (max-width: 620px) {
  .site-nav {
    padding-bottom: 0;
    padding-top: 180px;
  }

  .site-nav ul:first-child li {
    font-size: 24px;
    text-align: center;
  }
}

.content {
  padding-top: 2em;
}

@media (max-width: 768px) {
  .nav-container {
    display: none;
  }

  .show-alt-nav .nav-toggle {
    display: block;
  }

  .show-alt-nav .nav-toggle.active {
    display: none;
  }
}

.cta-wrap {
  padding: 7em 0 3em 0;
  text-align: center;
  color: #221f1f;
  font-weight: 400;
}

.cta {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.cta p {
  padding: 1em 0 0 0;
}

.cta.inline {
  margin: 30px 0 60px;
  opacity: 0;
  transform: translateY(40px);
  transition: opacity .5s ease-in-out, transform .5s ease-in-out;
}

.cta.inline a {
  text-decoration: underline;
}

.cta.inline a:hover {
  color: #727272;
}

.entry-content blockquote {
  border-left: solid 3px;
  background-color: #fff;
  padding: 20px 20px 20px 42px;
  margin: 2em 0 4em 0;
  position: relative;
}

.entry-content blockquote:before {
  /* content: '\201C';  */
  font-size: 75px;
  position: absolute;
  left: 8px;
  top: 8px;
}

.entry-content blockquote p {
  font-weight: inherit;
}

.related-posts-title {
  text-align: center;
  padding-bottom: 3em;
}

.related-posts-wrapper:before {
  content: '';
  padding-bottom: 100px;
  border-top: 2px solid black;
  display: block;
  width: 33.3%;
  margin: 200px auto 0;
}

.related-posts-wrapper.related-projects:before {
  padding-bottom: 3em;
}

ul.wp-block-gallery {
  margin-left: 0;
  width: 1258px;
  position: relative;
  left: calc(50% - 628px);
  margin-bottom: 10px;
}


@media (max-width: 1400px) {
  ul.wp-block-gallery {
    left: calc(50% - 45vw);
    width: calc(90vw);
  }
}

@media (max-width: 620px) {
  ul.wp-block-gallery {
    left: calc(50% - 50vw);
    padding: 0 5px;
    width: 100vw;
  }

  .related-posts-wrapper:before {
    content: '';
    padding-bottom: 50px;
    border-top: 2px solid black;
    display: block;
    width: 33.3%;
    margin: 100px auto 0;
  }
}

.entry-content .wpcf7-form p:last-of-type {
  margin-bottom: 0;
}

div.wpcf7-response-output {
  margin-top: 0;
  margin-bottom: 3em;
}

@media (max-width: 1000px) {

  .post-preview .preview-image~header {
    padding: 20px;
  }

  .post-without-image h2 {
    overflow: hidden;
  }
}

.post-preview {
  opacity: 0;
  overflow: hidden;
}

.post-preview.post-without-image .preview-image {
  min-height: 240px;
}

.section-header {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity .5s ease-in-out, transform .5s ease-in-out;
  margin-bottom: 2em;
}

.section-header h2 {
  text-align: center;
}

.section-header.spotted,
.cta.inline.spotted {
  opacity: 1;
  transform: translateY(0px);
}

/* if there is no featured image for a post, show the title as preview */
/*.fallback-image header { opacity:1; } 
.fallback-image h2 { color:#221F1F; }
a.fallback-image:hover h2 { color:#ffffff;}
a.fallback-image div.preview-image:hover { background-color:rgba( 0, 0, 0, 0.5 );  } */
.post-without-image header {
  opacity: 1;
}

.post-without-image h2 {
  color: #221f1f;
}

a.post-without-image:hover h2 {
  color: #ffffff;
}

a.post-without-image div.preview-image:hover {
  background-color: rgba(0, 0, 0, 0.5);
}

.post-preview header {
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  padding: 40px;
}

#wpfront-scroll-top-container {
  opacity: 1 !important;
}

#wpfront-scroll-top-container img {
  max-width: 60%;
  opacity: 0.9 !important;
}

.site-footer {
  padding: 8em 0 3em 0;
  text-align: center;
}

.site-footer p {
  font-size: 0.75em;
  color: #221f1f;
  font-weight: 400;
}