/*
 Theme Name: GeneratePress Child
 Theme URI: https://generatepress.com
 Description: Child theme for GeneratePress
 Author: Florian Aufschneider
 Template: generatepress
 Version: 1.0.0
 Text Domain: generatepress-child
*/

@font-face {
  font-family: "Figtree";
  src: url("assets/fonts/figtree/figtree-v9-latin-regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;}
@font-face {
  font-family: "Figtree";
  src: url("assets/fonts/figtree/figtree-v9-latin-700.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;}
@font-face {
  font-display: swap;
  font-family: 'Roboto Condensed';
  font-style: italic;
  font-weight: 700;
  src: url('assets/fonts/roboto/roboto-condensed-v31-latin-700italic.woff2') format('woff2');}
/* roboto-regular - latin */
@font-face {
  font-display: swap;
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('assets/fonts/roboto/roboto-v49-latin-regular.woff2') format('woff2');}

/* kdam-thmor-pro-regular - latin */
@font-face {
  font-display: swap;
  font-family: 'Kdam Thmor Pro';
  font-style: normal;
  font-weight: 400;
  src: url('assets/fonts/extra-fonts/kdam-thmor-pro-v7-latin-regular.woff2') format('woff2');}

/* Apply sitewide */
html, body, * {
  font-family: 'Roboto', "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  font-weight: 400;
  scroll-behavior: smooth;}
h1, h2, h3, h4, h5, h6 {
  /*
  font-family: 'Roboto Condensed', "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  font-weight: 700;
  font-style: italic;
  */
  font-family: 'Kdam Thmor Pro', "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  font-weight: 400;
  text-transform: uppercase;}

/* Visually hide but keep accessible */
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;}

/* custom styles */
/* custom styles */
/* custom styles */

body {
  position: relative;
  background: #333;}

.site-logo img {
  height: 200px;
  width: 200px;
  display: block;}

header.site-header {
  background-color: transparent;
  position: absolute;
  inset: 0px 0px auto 0px;
  z-index: 5;}
header.site-header .inside-header nav {
  display: none !important;}

section.hero {
  max-width: none;
  width: 100%;
  position: relative;
  height: 96vh;}
section.hero:before {
  display: block;
  content: '';
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);}
section.hero:after {
  display: block;
  content: '';
  position: absolute;
  inset: 69% 0 0 0;  
  background: -webkit-gradient(linear,left bottom, left top,from(rgba(0, 0, 0, 1)), to(rgba(0, 0, 0, 0)));
  background: -o-linear-gradient(bottom,rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
  background: linear-gradient(0deg,rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
  z-index: 1;}
section.hero video.hero__bg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;}
section.hero .hero__inner {
  position: absolute;
  inset: auto auto 69px auto;
  max-width: 1200px;
  left: 50%;
  transform: translateX(-50%);
  width: min(100%, 1200px);
  padding: 0 30px;
  z-index: 2;}
section.hero .hero__inner h1 {
  color: #fff;}
section.hero .hero__inner p {
  color: rgba(255, 255, 255, 0.4);}
section.hero .hero__inner a.hero__btn {
  display: inline-block;
  background: #c7a65a;
  color: #fff;
  text-decoration: none;
  border-radius: 0px;
  padding: 20px 40px;
  transition: all ease-in-out 0.2s;}
section.hero .hero__inner a.hero__btn:hover {
  background: #000;
  transform: scale(1.05);}
section.hero .hero__inner a.hero__btn i {
  display: inline-block;
  margin-left: 20px;}

section.hero .header__contact-wrapper {
  position: absolute;
  inset: 0 0 auto auto;
  width: 35%;
  z-index: 5;}
section.hero .header__contact-wrapper .header__contact {
  padding: 55px 10px 5px 10px;}
section.hero .header__contact-wrapper .header__contact span {
  display: block;
  color: rgba(255, 255, 255, 0.4);
  font-size: 12px;
  line-height: 16px;
  margin-bottom: 10px;
  text-align: right;}
section.hero .header__contact-wrapper .header__contact span a {
  color: #c7a65a;
  text-decoration: none;}

.site-content {
  flex-direction: column;}

.wrapper-txt-img {
  padding: 100px 40px;
  max-width: 1200px;
  margin: 0 auto;}
.wrapper-txt-img h2 {
  /*font-weight: 700;*/
  font-weight: 400;
  margin-bottom: 50px;
  color: #c7a65a;}
.wrapper-txt-img h2 span {
  font-weight: 400;}
.wrapper-txt-img p {
  color: rgba(255, 255, 255, 0.69);}
.wrapper-txt-img p strong {
  font-weight: 700;}

.wrapper-blog-teaser {
  color: #fff;
  background: #000;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 0px;}
.wrapper-blog-teaser > div {
  max-width: 1200px;
  padding: 100px 40px;
  margin: 0 auto;}
.wrapper-blog-teaser > div > ul.wp-block-latest-posts {
  margin: 0px;}
.wrapper-blog-teaser > div > ul.wp-block-latest-posts li {
  margin: 0px 0px 50px 0px;}
.wrapper-blog-teaser > div > ul.wp-block-latest-posts li:last-child {
  margin-bottom: 0px;}
.wrapper-blog-teaser > div > ul.wp-block-latest-posts li a {
  font-size: 24px;
  text-decoration: none;
  color: #c7a65a;
  display: block;
  margin-bottom: 20px;

  pointer-events: none;

  /*font-family: 'Roboto Condensed', "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  font-weight: 700;
  font-style: italic;*/
  font-family: 'Kdam Thmor Pro', "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  font-weight: 400;
  text-transform: uppercase;}
.wrapper-blog-teaser > div > ul.wp-block-latest-posts li time {
  color: rgba(255, 255, 255, 0.4);}

.custom-teaser {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1200px;
  padding: 100px 40px 0px 40px;
  background: #000;
  color: #fff;}
.custom-teaser .teaser-wrapper {
  margin-bottom: 30px;}
.custom-teaser .teaser-wrapper img {
  margin-bottom: 15px;
  display: block;}
.custom-teaser .teaser-wrapper h3 {
  /*font-weight: 700;*/
  font-weight: 400;
  hyphens: auto;
  color: #fff;}
.custom-teaser .teaser-wrapper p {
  color: rgba(255, 255, 255, 0.7);}
.custom-teaser .teaser-wrapper a {
  display: inline-block;
  background: #c7a65a;
  color: #fff;
  text-decoration: none;
  border-radius: 0px;
  padding: 20px 40px;
  transition: all ease-in-out 0.2s;

  /*display: none;*/}
.custom-teaser .teaser-wrapper a span.gb-shape svg {
  height: 25px;
  width: 25px;
  bottom: -7px;
  position: relative;}
.custom-teaser .teaser-wrapper a:hover {
  background: #000;
  transform: scale(1.05);}

.custom-banner {
  background: #c7a65a;
  color: #fff;
  padding: 100px 40px;}
.custom-banner h2 {
  text-transform: uppercase;
  margin-bottom: 0px;
  font-weight: 700;}

section.contact-section {
  background: #000;
  color: #fff;
  padding: 100px 0px;}
section.contact-section form.forminator-ui.forminator-custom-form[data-design=flat] {
  margin: 0 auto;
  width: auto;
  max-width: 1200px;
  padding: 0 40px !important;}
section.contact-section form.forminator-ui.forminator-custom-form[data-design=flat] label,
section.contact-section form.forminator-ui.forminator-custom-form[data-design=flat] .forminator-field-checkbox .forminator-label {
  display: none;}
section.contact-section form.forminator-ui.forminator-custom-form[data-design=flat] .forminator-field-checkbox label {
  display: block;}
section.contact-section form.forminator-ui.forminator-custom-form[data-design=flat] .forminator-field-textarea .forminator-field {
  position: relative;}
section.contact-section form.forminator-ui.forminator-custom-form[data-design=flat] .forminator-field-textarea .forminator-field .forminator-description {
  position: absolute;
  top: 3px;
  right: 8px;
  display: block;
  color: #222222;}
section.contact-section form.forminator-ui.forminator-custom-form[data-design=flat] .forminator-field-checkbox label {
  position: relative;}
section.contact-section form.forminator-ui.forminator-custom-form[data-design=flat] .forminator-field-checkbox label:after {
  display: block;
  content: '';
  width: 100%;
  clear: both;}
section.contact-section form.forminator-ui.forminator-custom-form[data-design=flat] .forminator-field-checkbox label input,
section.contact-section form.forminator-ui.forminator-custom-form[data-design=flat] .forminator-field-checkbox label span.forminator-checkbox-box {
  float: left;}
section.contact-section form.forminator-ui.forminator-custom-form[data-design=flat] .forminator-field-checkbox label span.forminator-checkbox-label {
  float: right;
  width: calc(100% - 30px);
  margin-left: 0px;}
section.contact-section form.forminator-ui.forminator-custom-form[data-design=flat] button.forminator-button {
  background: #c7a65a;
  border-radius: 0px;
  padding: 20px 40px;
  transition: all ease-in-out 0.2s;}
section.contact-section form.forminator-ui.forminator-custom-form[data-design=flat] button.forminator-button:hover {
  transform: scale(1.05);
  background: #222222;}

section.contact-section.contact-v-white {
  background: rgba(0, 0, 0, 0.1);
  color: #000;}

/* new teasers hover blur */
.custom-teaser.hover-teaser .teaser-wrapper {
  position: relative;
  border-radius: 15px;
  overflow: hidden;
  margin-bottom: 50px;}
.custom-teaser.hover-teaser .teaser-wrapper .teaser__media {
  position: relative;}
.custom-teaser.hover-teaser .teaser-wrapper .teaser__media img {
  aspect-ratio: 1/1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin-bottom: 0px;}
.custom-teaser.hover-teaser .teaser-wrapper .teaser__media h3 {
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 30px;
  text-align: center;
  font-size: 22px;
  z-index: 2;}
.custom-teaser.hover-teaser .teaser-wrapper .teaser__media:after {
  content: '';
  display: block;
  position: absolute;
  inset: 0;
  background: RGBA(0, 0, 0, .69);
  background: linear-gradient(0deg,rgba(0, 0, 0, 0.69) 0%, rgba(0, 0, 0, 0) 100%);
  z-index: 1;}
.custom-teaser.hover-teaser .teaser-wrapper .teaser__overlay {
  display: none;
  position: absolute;
  inset: 0;}
/*
.custom-teaser.hover-teaser .teaser-wrapper:hover .teaser__overlay {
  display: block;
  z-index: 3;
  padding: 33% 15px 30px 15px;}
.custom-teaser.hover-teaser .teaser-wrapper:hover .teaser__media h3 {
  bottom: auto;
  top: 30px;}
.custom-teaser.hover-teaser .teaser-wrapper:hover .teaser__overlay p {
  text-align: center;}
.custom-teaser.hover-teaser .teaser-wrapper:hover .teaser__overlay a {
  position: absolute;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);}
*/

.custom-teaser.hover-teaser.middle-teaser-row {
  padding-top: 0px;}
.custom-teaser.hover-teaser.last-teaser-row {
  padding-top: 0px;
  padding-bottom: 100px;}

.custom-banner.border-edition {
  background: #222222;
  border-top: 2px #c7a65a solid;
  border-bottom: 2px #c7a65a solid;}

.wrapper-blog-teaser.slim-version .wp-block-latest-posts li .wp-block-latest-posts__featured-image {

}

.wrapper-txt-img.txt-headline {
  padding-bottom: 50px;}

.wrapper-txt-img.txt-headline h2 {
  text-align: center;
  color: #fff;
  position: relative;}
.wrapper-txt-img.txt-headline h2:before {
  content: '';
  display: block;
  position: absolute;
  width: 20%;
  top: -15px;
  left: 33%;
  border-top: 1px solid #c7a65a;}
.wrapper-txt-img.txt-headline h2:after {
  content: '';
  display: block;
  position: absolute;
  width: 20%;
  bottom: -15px;
  right: 33%;
  border-bottom: 1px solid #c7a65a;}
.wrapper-txt-img.txt-headline p {
  text-align: center;
  padding: 0px 20%;}

.wrapper-txt-img.txt-headline.invert-colors {
  background: #000;
  max-width: 100%;}
.wrapper-txt-img.txt-headline.invert-colors h2:before,
.wrapper-txt-img.txt-headline.invert-colors h2:after {
  border-color: #c7a65a;}
.custom-teaser.custom-info.invert-colors {
  background: #000;}
.custom-teaser.custom-info.invert-colors .teaser-wrapper {
  background: #333;}

.custom-teaser.custom-info .teaser-wrapper.single-image a {
  display: block;
  border: unset;
  padding: 0px;}
.custom-teaser.custom-info .teaser-wrapper.single-image a:hover {
  background: transparent;
  transform: none;}
.custom-teaser.custom-info .teaser-wrapper.single-image img {
  margin-bottom: 0px;
  border-radius: 15px;
  overflow: hidden;}

section.contact-section.contact-v-white {
  color: rgba(255, 255, 255, 0.4);}

.custom-teaser.custom-info {
  background: #333;
  padding-top: 0px;
  padding-bottom: 100px;}
.custom-teaser.custom-info .teaser-wrapper {
  border-radius: 15px;
  padding: 15px 15px 20px 15px;
  overflow: hidden;
  background: #000;}

.parallax-banner.has-parallax {
  background-attachment: fixed !important;}
.parallax-banner.wp-block-cover {
  min-height: 60vh;
  padding: 260px 0;
  position: relative;}
.parallax-banner .banner-inner {
  max-width: 1200px;
  margin: 0 auto;
  text-align: left;}
.parallax-banner::before {
  content: "";
  position: absolute;
  inset: 0px 0px 50% 0px;
  pointer-events: none;
  background: linear-gradient(to top, rgba(0,0,0,.31), #000);
  z-index: 1;}
.parallax-banner::after {
  content: "";
  position: absolute;
  inset: 50% 0px 0px 0px;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(0,0,0,.31), #000);
  z-index: 1;}
.parallax-banner .wp-block-cover__image-background {
  background-attachment: fixed !important;}
.parallax-banner .wp-block-cover__inner-container {
  z-index: 2;
  text-align: center;}
.parallax-banner .wp-block-cover__inner-container img {
  max-width: 360px;
  width: 360px;}

.site-footer {
  background: #000;
  color: #fff;
  padding: 20px 0px 100px 0px;}
.site-footer footer.custom-footer {
  margin: 0 auto;
  max-width: 1200px;
  padding: 20px 40px;}
.site-footer footer.custom-footer .footer__top {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-bottom: 50px;}
.site-footer footer.custom-footer .footer__top a.footer__logo {
  display: block;
  width: 33%;}
.site-footer footer.custom-footer .footer__top nav.footer__nav {
  display: block;
  width: 66%;
  padding-left: 30px;
  color: rgba(255, 255, 255, 0.4);}
.site-footer footer.custom-footer .footer__top nav.footer__nav p {
  margin-bottom: 35px;}
.site-footer footer.custom-footer .footer__top nav.footer__nav p strong {
  color: #fff;
  /*font-family: 'Roboto Condensed', "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  font-weight: 700;
  font-style: italic;*/
  font-family: 'Kdam Thmor Pro', "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  font-weight: 400;
  text-transform: uppercase;}
.site-footer footer.custom-footer .footer__top nav.footer__nav ul {
  list-style-type: none;
  margin: 0px;}
.site-footer footer.custom-footer .footer__top nav.footer__nav ul li a {
  color: rgba(255, 255, 255, 0.4);
  text-decoration: none;}
.site-footer footer.custom-footer .footer__top nav.footer__nav ul li a:hover {
  color: rgba(255, 255, 255, 0.7);}
.site-footer footer.custom-footer .footer__bottom {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;}
.site-footer footer.custom-footer .footer__bottom .footer__bottom-left {
  width: 33%;
  display: flex;
  flex-direction: column;
  justify-content: end;}
.site-footer footer.custom-footer .footer__bottom .footer__bottom-right {
  width: 66%;
  padding-left: 30px;}
.site-footer footer.custom-footer .footer__bottom .footer__bottom-left .footer__social {
  display: none;}
.site-footer footer.custom-footer .footer__bottom .footer__bottom-left .footer__copyright {
  color: rgba(255, 255, 255, 0.4);}
.site-footer footer.custom-footer .footer__bottom .footer__bottom-right .footer__contact {
  color: rgba(255, 255, 255, 0.4);}
.site-footer footer.custom-footer .footer__bottom .footer__bottom-right .footer__contact p {
  margin-bottom: 0px;}
.site-footer footer.custom-footer .footer__bottom .footer__bottom-right .footer__contact strong {
  color: #fff;
  display: block;
  margin-bottom: 10px;
  /*font-family: 'Roboto Condensed', "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  font-weight: 700;
  font-style: italic;*/
  font-family: 'Kdam Thmor Pro', "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  font-weight: 400;
  text-transform: uppercase;}
.site-footer footer.custom-footer .footer__bottom .footer__bottom-right .footer__contact a {
  color: rgba(255, 255, 255, 0.4);
  text-decoration: none;}
.site-footer footer.custom-footer .footer__bottom .footer__bottom-right .footer__contact a:hover {
  color: rgba(255, 255, 255, 0.7);}
.site-footer footer.custom-footer .footer__copyright.cprght-desktop {
  display: none;}

body.page-template-default {
  background: rgba(0, 0, 0, 0.1);
  padding: 230px 0px 0px 0px;}
body.page-template-default .inside-article {
  background: transparent;}

body.error404 .site-main {
  margin-top: 230px;}

@media (min-width: 576px) {
  .site-footer footer.custom-footer .footer__top nav.footer__nav {
    padding-left: 20%;}
  .site-footer footer.custom-footer .footer__bottom .footer__bottom-right {
    padding-left: 20%;}
}

@media (min-width: 600px) {
  .wrapper-blog-teaser > div > ul.wp-block-latest-posts li {
    width: calc(50% - 15px);
    margin-right: 30px;}
  .wrapper-blog-teaser > div > ul.wp-block-latest-posts li:last-child {
    margin-right: 0px;}
  .wrapper-blog-teaser.slim-version > div > ul.wp-block-latest-posts li {
    width: calc(50% - 30px);}
}

@media (min-width: 769px) {
  section.hero .hero__inner {
    padding: 0 40px;}
  section.hero .hero__inner p {
    max-width: 600px;}
  section.hero .header__contact-wrapper {
    width: 100%;}
  section.hero .header__contact-wrapper .header__contact {
    padding-top: 20px;
    text-align: right;}
  section.hero .header__contact-wrapper .header__contact span {
    text-align: left;
    display: inline-block;
    margin-left: 30px;
    font-size: 14px;
    line-height: 20px;}
}

@media (min-width: 782px) {
  .wrapper-txt-img .wp-block-columns {
    flex-wrap: wrap !important;}
  .wrapper-txt-img .wp-block-columns .wp-block-column {
    width: 100%;
    flex-basis: unset;}
}

@media (min-width: 783px) {
  .forminator-row.forminator-row-last {
    text-align: center;}
}

@media (min-width: 992px) {
  section.hero .header__contact-wrapper .header__contact {
    padding-top: 55px;
    padding-right: 30px;}
  .wrapper-txt-img .wp-block-columns .wp-block-column {
    width: calc(50% - 30px);
    flex-basis: 0;}
  .wrapper-txt-img .wp-block-columns .wp-block-column p:last-child {
    margin-bottom: 0px;}
  .wrapper-txt-img .wp-block-columns .wp-block-column figure {
    height: 100%;}
  .wrapper-txt-img .wp-block-columns .wp-block-column figure img {
    height: 100%;
    object-fit: cover;}
  .site-footer footer.custom-footer {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;}
  .site-footer footer.custom-footer .footer__top {
    width: 50%;}
  .site-footer footer.custom-footer .footer__bottom {
    width: 50%;}
  .site-footer footer.custom-footer .footer__top nav.footer__nav p strong {
    }
  .site-footer footer.custom-footer .footer__bottom .footer__bottom-left .footer__copyright.cprght-mobile {
    display: none;}
  .site-footer footer.custom-footer .footer__copyright.cprght-desktop {
    display: block;
    color: rgba(255, 255, 255, 0.4);
    text-align: center;
    width: 100%;}
}

@media (min-width: 1025px) {

}

/* only black BG overwrites */
body,
.custom-banner.border-edition {
  background: #000;}
.site-footer {
  border-top: 1px solid #c7a65a;}

/* rounding corners where seems fitting */
section.hero .hero__inner a.hero__btn {
  border-radius: 15px;
  background: transparent;
  border: 1px solid #c7a65a;}
.wrapper-txt-img .wp-block-columns .wp-block-column figure img {
  border-radius: 30px;}
.custom-teaser .teaser-wrapper a {
  border-radius: 15px;
  background: transparent;
  border: 1px solid #c7a65a;}
section.contact-section form.forminator-ui.forminator-custom-form[data-design=flat] button.forminator-button {
  border-radius: 15px;
  background: transparent;
  border: 1px solid #c7a65a;}