/*
  Theme Name: landmark
  Theme URI: https://www.landmark-fine-travel.de/
  Author: DIGINOVUM
  Author URI: https://www.diginovum.de/experten
  Description: Individuelles Theme basierendes auf Bootstrap und SEO optimiert
  Tags: boilerplate, clean, simple, bootstrap, seo
  Text Domain: landmark
  */
  /**********************************************************************
       _ _       _                                       _
      | (_)     (_)                                     | |
    __| |_  __ _ _ _ __   _____   ___   _ _ __ ___    __| | ___
   / _` | |/ _` | | '_ \ / _ \ \ / / | | | '_ ` _ \  / _` |/ _ \
  | (_| | | (_| | | | | | (_) \ V /| |_| | | | | | || (_| |  __/
   \__,_|_|\__, |_|_| |_|\___/ \_/  \__,_|_| |_| |_(_)__,_|\___|
            __/ |
           |___/
  ***********************************************************************
  URL: https://www.diginovum.de
  Creator: DIGINOVUM GmbH
  Author: Frank Schmitz
  Contact: schmitz@diginovum.de
  〈 〉 | « » | ← → | ⟵ ⟶ | ‹ › | “ ” | – ⌄ ∨ 📷
  ❤ ☀ ★ ☂ ☎ ☏ ⌚ ❄ ♫ ☯ 🗸 ✓ ✔✔ 🗹 ✅ ☑
  ⨯ ✗ ✘ ❌ ☒ ❎ ◄ ► ◅ ▻ • ™ © ® ☘ ✿ ❀ ■
**********************************************************************/



/**********************************************************************
***  TWEAKS
*********************************************************************/
  svg {max-height:100%; /* chrome needs it  */}
  body.logged-in .navbar-fixed-top {top:30px;}
  .embed-responsive > iframe {border: 0 none; bottom: 0; height: 100%; left: 0; position: absolute; top: 0; width: 100%;}
  img[class^="wp-image-"], img[class*=" wp-image-"] {display: block; max-width: 100%; height: auto;}
  :focus {outline:0; -webkit-outline: 0; -moz-outline: 0; -ms-outline: 0; -o-outline: 0;}
  .aligncenter {margin-left: auto; margin-right: auto;}
  .screen-reader-text {display: none!important;}
  .img-photo-gallery, .tile-image, .img-hero-slider {background-color: #f4f6f5;}
  .panel-group {margin-bottom: 0;}
  .dashicons {vertical-align: text-bottom;}
  .embed-responsive-item {background-color: #ececec;}
  div#ui-datepicker-div { z-index:1000!important; }
  .img-responsive {pointer-events: none;}

  #cpt-hero-slider {overflow: hidden;}
  .cpt-hero-slider-item {visibility: hidden;}
  .cpt-hero-slider-item.is-selected,
  .cpt-hero-slider-item:first-child {visibility: visible;}
  .slider-loaded .cpt-hero-slider-item {visibility: visible;}



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

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


  .montserrat {font-family: 'Montserrat'; font-weight: normal;}
  /*.social-icon {font-family: 'smartphone'; font-size: 27px; color: black;}*/



/**********************************************************************
*** HELPER
*********************************************************************/
  .img-center {display: block; margin: 0 auto;}
  .hyphens {-webkit-hyphens: auto;-moz-hyphens: auto;hyphens: auto;}
  .box {padding: 15px;}
  .rounded {border-radius: 5px;}
  .pos-relative {position: relative;}
  .pos-unset {position: unset;}

  /*.full-height {height: 95vh; position: relative; display:table; width: 100%;}
  .vertical-table {display: table; width: 100%;}
  .vertical-centered {display: table-cell; vertical-align: middle; width: 100%;}*/


  /*****************************
  *** TEXT
  ******************************/
    .light, .light > p {font-weight: lighter;}
    .normal, .normal > p {font-weight: normal;}
    .600, .600 > p {font-weight: 600;}
    .underline {text-decoration: underline;}
    .underline-nonen,
    .underline-none:hover,
    .underline-none:focus {text-decoration: none!important;}
    .italic {font-style: italic!important;}
    .uppercase {text-transform: uppercase;}

    .right {text-align: right;}
    .right > img {float: right;}

    .left {text-align: left;}
    .left > img {float: left;}

    .center {text-align: center!important;}
    .center > img, img.center {margin:0 auto;}


  /*****************************
  *** PADDING
  ******************************/
    .padding {padding:15px;}

    .padding-xs {padding-top: 5px!important; padding-bottom: 5px!important;}
    .padding-xs-top {padding-top: 5px!important;}
    .padding-xs-bottom {padding-bottom: 5px!important;}

    .padding-s {padding-top: 15px!important; padding-bottom: 15px!important;}
    .padding-s-top {padding-top: 15px!important;}
    .padding-s-bottom {padding-bottom: 15px!important;}

    .padding-m {padding-top: 30px; padding-bottom: 30px;}
    .padding-m-top {padding-top: 30px!important;}
    .padding-m-bottom {padding-bottom: 30px!important;}

    .padding-l {padding-top: 60px!important; padding-bottom: 60px!important;}
    .padding-l-top {padding-top: 60px!important;}
    .padding-l-bottom {padding-bottom: 60px!important;}

    .padding-xl {padding-top: 90px!important; padding-bottom: 90px!important;}
    .padding-xl-top {padding-top: 90px!important;}
    .padding-xl-bottom {padding-bottom: 90px!important;}

    .padding-xxl {padding-top: 150px!important; padding-bottom: 150px!important;}
    .padding-xxl-top {padding-top: 150px!important;}
    .padding-xxl-bottom {padding-bottom: 150px!important;}

    .padding-0 {padding-top:0!important; padding-bottom:0!important;}
    .padding-0-bottom {padding-bottom:0!important;}
    .padding-0-top {padding-top:0!important;}

    .no-padding {padding-top:0!important; padding-bottom:0!important;}


  /*****************************
  *** MARGIN
  ******************************/
    .margin {margin: 15px;}

    .margin-s {margin-top: 15px!important; margin-bottom: 15px!important;}
    .margin-s-top {margin-top: 15px!important;}
    .margin-s-bottom {margin-bottom: 15px!important;}

    .margin-m {margin-top: 30px!important; margin-bottom: 30px!important;}
    .margin-m-top {margin-top: 30px!important;}
    .margin-m-bottom {margin-bottom: 30px!important;}

    .margin-l {margin-top: 60px!important; margin-bottom: 60px!important;}
    .margin-l-top {margin-top: 60px!important;}
    .margin-l-bottom {margin-bottom: 60px!important;}

    .margin-xl {margin-top: 90px!important; margin-bottom: 90px!important;}
    .margin-xl-top {margin-top: 90px!important;}
    .margin-xl-bottom {margin-bottom: 90px!important;}

    .margin-xxl {margin-top: 150px!important; margin-bottom: 150px!important;}
    .margin-xxl-top {margin-top: 150px!important;}
    .margin-xxl-bottom {margin-bottom: 150px!important;}

    .margin-0 {margin-top: 0!important; margin-bottom: 0!important;}
    .margin-0-bottom {margin-bottom: 0!important;}
    .margin-0-top {margin-top: 0!important;}


  /*****************************
  *** BORDER
  ******************************/
    .no-border,
    .no-border .border {border: 0 solid transparent!important;}
    .border {border: 1px solid #000;}
    .border-top-bottom {border-top: 1px solid black; border-bottom: 1px solid black;}
    .border-right-left {border-right: 1px solid black; border-left: 1px solid black;}
    .border-bottom {border-bottom: 1px solid black;}
    .border-top {border-top: 1px solid black;}
    .border-right {border-right: 1px solid black;}
    .border-left {border-left: 1px solid black;}


  /*****************************
  *** FLEX
  ******************************/
    .display-flex {display: flex; flex-wrap: wrap; justify-content: center;}
    .display-flex-item {display: flex; align-content: stretch; margin: 0 -.3px 30px;}

    .equal-height {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
    }

    .equal-height > div[class*='col-'] {
      display: flex;
      flex-direction: column;
      /*margin-left: -1px;
      margin-right: -1px;*/
      justify-content: center;
    }



/**********************************************************************
*** STYLES FÜR landmark
*********************************************************************/
  html.loaded {background-color: #fff;}
  html {font-size: 100%; -webkit-text-size-adjust: 100%; color: #000;}

  body {
    background-color: #fff;
    color: #000;
    font-family: 'Montserrat';
    text-rendering: optimizeLegibility;
    /*font-size: 16px;
    line-height: 1.6;*/
    font-size: 14px;
    line-height: 2;

    padding-top: 105px;
    /*font-weight: 700;*/
    /*letter-spacing: 0.3px;*/
  }


  /*****************************
  *** TEXT
  ******************************/
    h1, h2, h3, h4, h5, h6,
    .h1, .h2, .h3, .h4, .h5, .h6 {
      font-family: 'Montserrat';
      margin-top: 0px;
      margin-bottom: 15px;
      color: #000 ;
      font-weight: 600;
      line-height: 1.2em;
      text-transform: uppercase;
    }

    h1, .h1 {font-size: 38px; font-weight: 600;}
    h2, .h2 {font-size: 28px;}
    h3, .h3 {font-size: 18px;}
    h4, .h4 {font-size: 16px;}
    h5, .h5 {font-size: 16px;}
    h6, .h6 {font-size: 16px;}

    p {
      margin: 0 0 15px;
      /*line-height: 1.5rem;*/
    }

    small {}

    b, strong {font-weight: 600;}

    ul {}
    ul li {padding: 5px 0;}

    small {font-size: .8rem;}
    figcaption {padding-top: 10px;}

    .xl {font-size: 42px!important;}
    .l {font-size: 2rem!important;}
    .m {font-size: 1.25rem!important;}
    .s {font-size: .8rem!important;}
    .xs {font-size: .4rem!important;}

    .content-intro,
    .item-intro,
    .cpt-details-intro,
    .blog-listing-intro {
      text-align: justify;
    }

    .cpt-details-intro p:last-child {
      margin-bottom: 0;
    }


  /*****************************
  *** LINKS
  ******************************/
    a {
      color: black;
      transition: 0.3s all ease;
    }

    p > a {
      text-decoration: underline;
      font-weight: 600;
      margin: 12px 0 0;
      color: black;
      transition: 0.3s all ease;
    }
    a:hover {color: black;}
    a:focus {color: black; outline: none; outline-offset: -2px;}

    p > a.btn-landmark {
      font-weight: normal;
    }


  /*****************************
  *** COLORS
  ******************************/
    .white {color:white!important;}
    .black {color: #161616!important;}
    .lightgrey {color: #f4f6f5!important;}
    .grey {color: #f2f2f2!important;}
    .darkgrey {color: #7e7e7e!important;}

    .bg-white {background-color:white!important;}
    .bg-white-transparent {background-color: rgb(255,255,255,.8)!important;}
    .bg-black {background-color: #161616!important;}
    .bg-lightgrey {background-color: #f4f6f5!important;}
    .bg-grey {background-color: #f2f2f2!important;}
    .bg-darkgrey {background-color: #7e7e7e!important;}

    .bg-black h1,
    .bg-black h2,
    .bg-black h3,
    .bg-black h4,
    .bg-black h5,
    .bg-black h6,
    .bg-black .content-intro,
    .bg-black .content-area,
    .bg-black .conent-outro { color: white; }


  /*****************************
  *** BUTTONS
  ******************************/
    .btn-landmark {
      color: white;
      background-color: black;
      border: 2px solid black;
      border-radius: 0;
      padding: 10px 15px;
      font-size: 12px;
      line-height: 18px;
      /*line-height: 21px;*/
      outline: 0 !important;
      text-align: center;
      vertical-align: middle;
      display: inline-block;
      transition: all .8s ease;
      min-width: 100px;
      max-width: 200px;
    }

    .btn-landmark:hover,
    .btn-landmark:focus,
    .btn-landmark:active {
      background-color: white;
      color: black;
      border-color: black;
      /*box-shadow: 0 2px 10px rgba(0,0,0,0.16);*/
      text-decoration: none;
    }

    .btn-landmark.inverted {
      color: black;
      background-color: white;
      border: 2px solid black;
    }

    .btn-landmark.inverted:hover,
    .btn-landmark.inverted:focus,
    .btn-landmark.inverted:active {
      background-color: black;
      color: white;
      border-color: black;
      /*box-shadow: 0 2px 10px rgba(0,0,0,0.16);*/
    }

    .btn-fine {
      border-width: 1px!important;
    }

    .btn-2 {
      margin-left: 15px;
    }

    #cpt-contact-form .btn-landmark {
      width: 100%;
      max-width: unset;
      display: block;
    }

    .landmark-text-link {
      font-weight: 600;
      position: relative;
      transition: color .5s ease;
    }

    .landmark-text-link:hover {
      text-decoration: none;
      color: tomato;
    }


  /*****************************
  *** MISC
  ******************************/
    .shadow {box-shadow: 0 0px 10px -2px #333;}
    .shadow-s {box-shadow: 0 4px 5px 0 rgba(0,0,0,0.14), 0 1px 10px 0 rgba(0,0,0,0.12), 0 2px 4px -1px rgba(0,0,0,0.20);}
    .shadow-m {box-shadow: 0 8px 10px 1px rgba(0,0,0,0.14), 0 3px 14px 2px rgba(0,0,0,0.12), 0 5px 5px -3px rgba(0,0,0,0.20);}
    .shadow-l, .img-circle {box-shadow: 0 12px 17px 2px rgba(0,0,0,0.14), 0 5px 22px 4px rgba(0,0,0,0.12), 0 7px 8px -4px rgba(0,0,0,0.20);}

    blockquote {
      font-family: 'Montserrat';
      /*font-style: italic;*/
      border-left-width: 0px;
      color: #000;
      padding: 30px 0px;
      margin: 0;
      font-size: 2.8rem;
      border-left: 0px solid white;
    }

    hr {
      margin-top: 5px;
      margin-bottom: 5px;
      border-color: #eae8e4;
      border-width: 1px;
    }

    .label-primary {
      background-color: #fff;
      font-size: 85%;
      font-weight: 400;
      color: black;
      border: 1px solid black;
      border-radius: 0px;
      /* line-height: 9px; */
    }

    .box {
      border: 2px solid black;
      padding: 15px;
    }



/**********************************************************************
*** PAGE-NAVIGATION
*********************************************************************/

  /*****************************
  *** NAVBAR-META
  ******************************/
    #page-navigation-meta {
      height: 50px;
      padding: 5px 0;
      background-color: white;
    }

    #page-navigation-meta-left {
      margin-left: 53px;
    }

    #page-navigation-meta-left a {
      text-decoration: none;
    }

    #page-navigation-meta-left .dashicons {
      font-size: 23px;
      margin-right: 5px;
      line-height: 24px;
    }

    #page-navigation-meta-left .dashicons-phone {
      font-size: 19px;
    }

    #page-navigation-meta-left .dashicons-email {
      margin-left: 15px;
    }

    #page-navigation-meta-left .dashicons-whatsapp {
      margin-left: 15px;
      font-size: 20px;
      color: #43c453;
    }

    #page-navigation-meta-right {
      margin-right: 20px;
    }

    #map-search,
    #header-search {
      display: inline-block;
    }

    #map-search {
      margin-right: 10px;
      vertical-align: text-bottom;
    }

    #map-search a {
      text-decoration: none!important;
    }


    /*****************************
    *** NAVBAR-META
    ******************************/
      .header-search {
          margin-top: 5px;
          margin-right: 33px;
          /*border-bottom: 1px solid #7e7e7e;*/
          max-width: 215px;
          float: right;
          background-color: #f4f6f5;
        }

      .header-search-box {
          border: 0px solid white;
          max-width: 200px;
          background-color: #f4f6f5;
          padding: 3px;
          font-size: 12px;
        }

      .header-search .dashicon {
        vertical-align: midlle;
      }


  /*****************************
  *** NAVBAR
  ******************************/
    .navbar-landmark .caret {display: none;}

    .navbar-landmark {
      top: 0px;
      background-color: white;
      margin-bottom: 0;
      margin-top: 50px;
      /*box-shadow: 0 4px 4px -5px #333;*/
      box-shadow: 0 4px 6px 0 rgba(0,0,0,.04),0 12px 16px 0 rgba(0,0,0,.08);
      min-height: 47px;
      border-width: 0 0 0px;
    }

    .navbar-landmark .navbar-nav li {
      padding: 10px 15px 0;
      border-bottom: 1px solid white;
    }

    .navbar-landmark .navbar-nav li a {
      padding: 0;
      border: 1px solid white;
      text-transform: uppercase;
      font-size: 13px;
      /*font-weight: 500;*/
      /*transition: .5s border ease;*/
      color: black;
      border-bottom: 1px solid white;
    }

    .navbar-landmark .navbar-nav > li.dropdown > a {
      cursor: default;
    }

    .navbar-landmark .navbar-nav li.dropdown:hover > .dropdown-menu {
      display: block;
      /*border-top: 1px solid black;*/
      margin-top: -1px;
    }

    .navbar-landmark .navbar-nav li.dropdown:hover > .dropdown-menu .dropdown-menu {
      float: right;
      right: -150px;
      left: auto;
      top: 0;
    }

    .navbar-landmark .navbar-nav > li > a {
      padding-bottom: 15px;
      /*font-weight: 600;*/
    }

    .navbar-landmark .nav li > a:focus {}

    .navbar-landmark .nav li > a:hover,
    .navbar-landmark .nav li > a:focus,
    .navbar-landmark .nav li.current-menu-parent > a,
    .navbar-landmark .nav li.active > a {
      background-color: white;
      color: black;
      /*color: #7e7e7e;*/
      border-bottom: 1px solid black;
    }

    #hauptmenu {}

    #menu-hauptmenu {}

    .navbar-logo-link {
      display: block;
      margin-top: -37px;
    }

    #nav-logo {
      margin: 0 auto;
      max-height: 75px;
    }

    .navbar-landmark .navbar-nav li.maplink,
    .navbar-landmark .navbar-nav li.maplink a {
      background-color: #f2f2f2;
      border:  0px solid #f2f2f2;
    }

    .navbar-landmark .navbar-nav li.maplink a {
      padding-bottom: 10px;
      padding-left: 5px;
    }



/**********************************************************************
*** PAGE-HEADER
*********************************************************************/

  /*****************************
  *** PAGE HEADER IMAGE
  ******************************/
    #page-header {
      overflow: hidden;
    }

    #page-header-image {}

    #page-header-image {
      position: relative;
      padding-top: 50%;
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover;
    }

    #page-header-text {
      position: absolute;
      bottom: 150px;
      left: 65px;
      max-width: 1000px;
      width: 100%;
      margin: 0 auto;
      padding: 15px;
    }

    #page-header-text h1 {
      text-shadow: 0 0 3px black;
    }

    #page-header-image .content-title {
      padding-bottom: 15px;
      text-align: left;
    }

    #page-header-image .content-title-heading {
      color: white;
    }

    #page-header-image .content-intro {
      color: white;
      padding-bottom: 15px;
    }

    #page-header-background {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      background: -moz-linear-gradient(top,  rgba(255,255,255,0) 50%, rgba(224,224,224,0) 56%, rgba(0,0,0,0.65) 100%);
      background: -webkit-linear-gradient(top,  rgba(255,255,255,0) 50%,rgba(224,224,224,0) 56%,rgba(0,0,0,0.65) 100%);
      background: linear-gradient(to bottom,  rgba(255,255,255,0) 50%,rgba(224,224,224,0) 56%,rgba(0,0,0,0.65) 100%);
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#a6000000',GradientType=0 );
      border: 3rem solid white;
      /*transition: border-width 0.4s linear;*/
    }



  /*****************************
  *** PAGE HEADER BG
  ******************************/
    #page-header-bg {}



/**********************************************************************
*** PAGE-CONTENT
*********************************************************************/
  #main-content {}

  .container-fluid {max-width: 1920px;}

  .content-section {
    position: relative;
    padding-top: 30px;
    padding-bottom: 30px;
    margin-left: auto;
    margin-right: auto;
    /*border-bottom: 1px solid #eae8e4;*/
  }

  .content-intro > div > p:last-child,
  .content-intro > p:last-child,
  .content-area > div > p:last-child,
  .content-outro > div > p:last-child {margin-bottom: 0;}

  .content-title {
    padding-bottom: 30px;
    text-align: center;
    text-transform: uppercase;
  }

  .content-title-heading {
    margin-bottom: 0;
  }

  .content-title-subline {}

  .content-intro h1,
  .content-intro h2,
  .content-intro h3,
  .content-intro h4,
  .content-intro h5 {
    margin-top: 30px!important;
    margin-bottom: 15px!important;
  }

  .content-intro {
    padding-bottom: 30px;
  }

  .content-intro p a {
    text-decoration: none;
  }

  .content-area {}

  .content-item {
    padding-bottom: 30px;
  }

  .content-item-image-wrapper {
    width: 100%;
    padding-top: 70%;
    position: relative;
    overflow: hidden;
    display: block;
  }

  .content-item-image-wrapper > .img-content {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
  }

  .content-item-link {
    padding-top: 15px;
  }

  .content-title-subheading {
    margin-bottom: 15px;
    text-align: center;
    text-transform: uppercase;
  }

  .content-outro {
    padding-bottom: 30px;
  }

  .content-link {text-align: center;}

  .img-content {}

  .item-wrapper {
    padding: 15px;
  }



  /*****************************
  *** TEXT
  ******************************/
    .content-section-text-r {}


  /*****************************
  *** IMAGE
  ******************************/
    .content-section-image-r {}

    .content-section.content-section-image-r {
      padding-bottom: 0;
    }

    .content-section-image-r .content-item {
      position: relative;
    }

    .content-section-image-r .content-title-subheading {
      text-align: left;
      padding-top: 15px;
    }

    .content-section-image-r .content-item-caption-title {

    }


  /*****************************
  *** IMAGE HERO
  ******************************/
    .content-section-hero {}


    .content-section-hero-image .content-intro a {
      color: white;
      font-weight: normal;
    }

    .content-section-hero-image .content-item-hero-image {
      position: relative;
      padding-top: 50%;
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover;
    }

    .content-section-hero-image .content-item-hero-image-text {
      position: absolute;
      bottom: 30px;
      left: 30px;
      max-width: 1920px;
      width: 95%;
      margin: 0 auto;
      right: 0;
      padding: 30px;
    }

    .content-section-hero-image .content-title {
      padding-bottom: 15px;
      text-align: left;
    }

    .content-section-hero-image .content-title-heading {
      font-size: 38px;
      color: white;
      text-shadow: 0 0 3px black;
    }

    .content-section-hero-image .content-intro {
      color: white;
      padding-bottom: 15px;
    }

    .content-item-hero-image-background {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      background: -moz-linear-gradient(top,  rgba(255,255,255,0) 50%, rgba(224,224,224,0) 56%, rgba(0,0,0,0.65) 100%);
      background: -webkit-linear-gradient(top,  rgba(255,255,255,0) 50%,rgba(224,224,224,0) 56%,rgba(0,0,0,0.65) 100%);
      background: linear-gradient(to bottom,  rgba(255,255,255,0) 50%,rgba(224,224,224,0) 56%,rgba(0,0,0,0.65) 100%);
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#a6000000',GradientType=0 );
    }


  /*****************************
  *** SLIDER
  ******************************/
    .content-section-slider .content-item-slider {
      position: relative;
      padding-top: 50%;
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover;
      width: 100%;
    }

    .content-section-slider .content-item-slider-text {
      position: absolute;
      bottom: 15px;
      left: 0;
      max-width: 1170px;
      width: 100%;
      margin: 0 auto;
      right: 0;
      padding: 15px;
    }

    .content-section-slider .content-title {
      padding-bottom: 15px;
      text-align: left;
    }

    .content-section-slider .content-title-heading {
      font-size: 27px;
      color: white;
    }

    .content-section-slider .content-intro {
      color: white;
      padding-bottom: 15px;
    }

    .content-item-slider-background {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      background: -moz-linear-gradient(top,  rgba(255,255,255,0) 50%, rgba(224,224,224,0) 56%, rgba(0,0,0,0.65) 100%);
      background: -webkit-linear-gradient(top,  rgba(255,255,255,0) 50%,rgba(224,224,224,0) 56%,rgba(0,0,0,0.65) 100%);
      background: linear-gradient(to bottom,  rgba(255,255,255,0) 50%,rgba(224,224,224,0) 56%,rgba(0,0,0,0.65) 100%);
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#a6000000',GradientType=0 );
    }

    .content-section-slider .flickity-page-dots {
      margin-bottom: 50px;
    }


  /*****************************
  *** TILES
  ******************************/
    .content-section-tiles {}

    .content-section-tiles .equal-height > div[class*="col-"] {
      justify-content: unset;
    }

    .content-section-tiles .tile-image {
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover;
    }

    .content-section-tiles .tile-image.ratio-1 {padding-top: 50%;}
    .content-section-tiles .tile-image.ratio-2 {padding-top: 57%;}
    .content-section-tiles .tile-image.ratio-3 {padding-top: 75%;}
    .content-section-tiles .tile-image.ratio-4 {padding-top: 100%;}


    .content-section-tiles .content-title-subheading {
      text-align: left;
      padding-top: 15px;
      font-weight: 600;
    }

    .content-section-tiles .content-item-link {
      text-decoration: underline;
      font-weight: 600;
      font-size: .8rem;
    }


  /*****************************
  *** FACETS
  ******************************/
    .content-section-facet .equal-height > div[class*="col-"] {
        justify-content: start;
      }


 /*****************************
  *** SHORTCODE
  ******************************/
    .content-section-shortcode {}

    .content-section-shortcode form > label {
      width: 100%;
    }

    .content-section-shortcode form > label input.search-field {
      width: 100%;
      border: 0px solid white;
      background-color: #f4f6f5;
      padding: 10px;
      font-size: 14px;
    }

    .content-section-shortcode form > input.search-submit {
      display: none;
    }


  /*****************************
  *** VIDEO
  ******************************/
    .content-section-video {}


  /*****************************
  *** ACCORDEON
  ******************************/
    .content-section-accordeon {}

    .content-section-accordeon .panel {
      box-shadow: none;
    }

    .content-section-accordeon .panel-body {
      background-color: #f2f2f2;
      margin: 0 15px 15px;
      border-top: 0px solid #ddd!important;
    }

    .content-section-accordeon .content-title-subheading {
      text-align: left;
    }

    .content-section-accordeon .content-title-subheading a {
      text-decoration: none!important;
    }

    .content-section-accordeon .panel-heading a {
      text-indent: -13px;
      padding-left: 30px;
      display: block;
    }

    .accordeon-heading .glyphicon {
      font-size: 16px;
      top: -3px;
      vertical-align: middle;
    }

    .accordeon-heading a.collapsed .glyphicon::before {
      content: "\002b";
    }


  /*****************************
  *** IMAGE-TEXT
  ******************************/
    .content-section-image-text {}

    .content-section-image-text {
      padding-bottom:  0;
    }

    .content-section-image-text.image-left .content-item-image {
      text-align: right!important;
    }

    .content-section-image-text.image-left .content-item-image > img {
      float: right;
    }


  /*****************************
  *** LEGAL
  ******************************/
    .content-section-legal {}

    #legal-links {
      list-style-type: none;
      padding-left: 0;
      text-align: right;
    }

    #legal-links li {
      display: inline-block;
    }

    .content-section-legal .content-item {
      padding-top: 15px;
    }

    .content-section-legal .content-item .tabs-heading {
      font-size: 21px!important;
    }

    #toc-legal {
      list-style-type: inherit;
      padding: 15px 15px;
    }

    #toc-legal li {
      padding: 5px 0;
    }


  /*****************************
  *** GALLERY
  ******************************/
    .content-section-image-gallery {}

    .content-section-image-gallery .equal-height > div[class*="col-"] {
      justify-content: normal;
    }

    .image-gallery-item-text {
      padding-top: 5px;
      line-height: 1.4;
    }

    .item-lightgallery:hover {
      cursor: zoom-in;
    }


  /*****************************
  *** PRESS
  ******************************/
    .content-section-press {}

    .content-section-press .content-item-image-wrapper {
      padding-top: 140%;
      background-color: #f4f6f5;
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
    }

    .content-section-press .link-wrapper {
      position: absolute;
      bottom: 0;
      left: 0;
    }

    .content-section-press .content-item-image-wrapper a {
      margin: 15px;
    }

    .content-section-press .content-title-subheading {
      text-align: left;
      padding-top: 15px;
    }


  /*****************************
  *** FAQs
  ******************************/
    .content-section-faqs .panel {
      margin-bottom: 45px;
      background-color: #f4f6f5;
      padding-top: 5px;
      position: relative;
      margin-top: 0;
    }

    .content-section-faqs .content-title-subheading {
      /*font-size: 28px;*/
      text-align: left;
      margin-bottom: 5px;
    }

    .content-section-faqs .panel-body {
      border-top: 0px solid transparent!important;
      padding-top: 0;
    }

    .content-section-faqs .panel-body li {
      padding: 5px 0;
    }

    .content-section-faqs .panel-heading,
    .content-section-faqs .panel-body {
      text-align: left!important;
    }

    .content-section-faqs .panel-heading a {
      text-indent: -13px;
      padding-left: 30px;
      display: block;
    }

    .content-section-faqs .panel-heading a:hover,
    .content-section-faqs .panel-heading a:focus {
      text-decoration: none;
    }

    .faq-heading .glyphicon {
      font-size: 16px;
      top: 0px;
    }

    .faq-heading a.collapsed .glyphicon::before {
      content: "\002b";
    }

    .faq-item {
      margin-bottom: 30px;
    }

    .faq-answer a {
      text-decoration: none!important;
    }

    /*.content-section-faqs .panel::before {
      content: "";
      position: absolute;
      bottom: -20px;
      left: 40px;
      border: 0;
      border-left-width: 30px;
      border-bottom-width: 20px;
      border-style: solid;
      border-color: transparent #f4f6f5;
      display: block;
      width: 0;
    }*/



/**********************************************************************
*** PAGE-SECTIONS
*********************************************************************/
  .content-body,
  .page-section {padding: 30px 15px;}



  /*****************************
  *** CONTACT
  ******************************/
    #page-section-contact {}

    #page-section-contact .wpcf7-submit {
      width: 100%;
    }

    .img-contact {
      /*border-radius: 50%;*/
      background-color: #f4f6f5;
      margin-top: 10px;
      margin-bottom: 15px;
      max-height: 200px;
      width: auto;
    }



  /*****************************
  *** REFERENCES
  ******************************/
    .img-references {
      max-width: 570px;
    }


  /*****************************
  *** RELATED
  ******************************/
    #page-section-related .equal-height > div[class*="col-"] {
      justify-content: unset;
    }

    #page-section-related .tile-image {
      padding-top: 50%;
      background-position: center center;
      background-repeat: no-repeat;
      background-size: cover;
      background-color: #f4f6f5;
    }

    #page-section-related .content-title-subheading {
      text-align: left;
      padding-top: 15px;
      font-weight: 600;
    }

    #page-section-related .content-item-link {
      /*text-decoration: underline;
      font-weight: 600;*/
      font-size: .8rem;
    }



/**********************************************************************
*** PAGE-FOOTER
*********************************************************************/
  #page-footer {}

  /*#page-footer a,
  #page-footer p {
    color: white;
  }*/

  #page-footer strong {}


  /*****************************
  *** PAGE-FOOTER META
  ******************************/
    #page-footer-meta {
      padding: 15px 0;
      /*border-bottom: 1px solid #f4f6f5;*/
    }

    #page-footer-meta-socials {
      padding-top: 15px;
      padding-bottom: 15px;
    }

    #page-footer-meta .h3 {
      text-transform: none;
    }

    #page-footer-meta-socials ul {
      list-style-type: none;
      padding-left: 0;
      margin-bottom: 0;
    }

    #page-footer-meta-socials ul li {
      display: inline-block;
      padding: 0 15px;
    }

    #page-footer-meta-socials ul li a {
      text-decoration: none;
      color: white;
    }

    #mobile-footer-menu {display: none;}


  /*****************************
  *** PAGE-FOOTER MENU
  ******************************/
    #menu-footer_menue {
      list-style-type: none;
      padding-left: 0;
      margin-bottom: 0;
    }

    #menu-footer_menue li {
      display: inline-block;
      padding: 15px 10px;
    }

    #menu-footer_menue li a {
      color: white;
    }


  /*****************************
  *** PAGE-FOOTER ADDRESS
  ******************************/
    #page-footer-address {padding: 5px 0;}
    #page-footer-address a {color: white;}


  /*****************************
  *** PAGE-FOOTER MOBILE LINKS
  ******************************/
    #page-footer-mobile-links {
      z-index: 999;
      border-top: 1px solid white;
    }

    #page-footer-mobile-links .dashicons {
      font-size: 24px;
      width: 35px;
      height: 35px;
      margin-top: 8px;
      padding: 5px;
      color: white;
    }


  /*****************************
  *** PAGE-FOOTER ToTOP
  ******************************/
    #totop {
      position: fixed;
      right: 30px;
      bottom: 30px;
      display:none;
    }

    a#totop {
      transition: none;
      z-index: 1001;
    }

    #totop .dashicons {
      vertical-align: top;
      margin-right: 5px;
    }



/**********************************************************************
*** CPT
*********************************************************************/

  #cpt-left {
    padding-left: 30px;
    padding-top: 30px;
  }

  #cpt-left > section {
    margin-bottom: 30px;
  }

  #cpt-right {
    padding-top: 30px;
  }

  #cpt-right section {
    padding: 30px 0;
  }

  #cpt-right #cpt-title {
    padding-top: 0;
    padding-bottom: 0;
  }

  #cpt-title h1 {
    font-size: 1.75rem;
  }


  /*****************************
  *** CPT HERO SLIDER
  ******************************/
    #cpt-hero > a {
      position: absolute;
      top: 30px;
      left: 30px;
      /*color: black;
      background-color: white;
      border: 1px solid white;
      border-radius: 0;*/
      padding: 10px 30px;
      font-size: 14px;
      z-index: 999;
    }

    #cpt-hero-slider .cpt-hero-slider-item {
      width: 101%;
      padding-top: 50%;
      position: relative;
      overflow: hidden;
    }

    .cpt-hero-slider-item-picture {
      position: absolute;
      top: 0;
      bottom: 0;
      width: 100%;
      height: 100%;
      top: 50%;
      left: 0;
      right: 0;
      transform: translateY(-50%);
      background-color: #f4f6f5;
    }

    .img-hero-slider {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    #cpt-hero-slider .flickity-page-dots {
      bottom: 30px;
    }


  /*****************************
  *** CPT HERO SLIDER MOBILE
  ******************************/
    #hero-mobile-back {
      position: absolute;
      top: 30px;
      left: 15px;
      /*color: black;
      background-color: white;
      border: 1px solid white;
      border-radius: 0;*/
      padding: 10px 30px;
      font-size: 14px;
      z-index: 999;
    }

    #hero-mobile-more {
      position: absolute;
      top: 30px;
      right: 15px;
      /*color: black;
      background-color: white;
      border: 1px solid white;
      border-radius: 0;*/
      padding: 4px 5px;
      font-size: 10px;
      line-height: 12px;
      z-index: 999;
    }

    #cpt-hero-slider-mobile .cpt-hero-slider-item {
      width: 101%;
      padding-top: 70%;
      position: relative;
      overflow: hidden;
    }

    .cpt-hero-slider-item-picture {
      position: absolute;
      top: 0;
      bottom: 0;
      width: 100%;
      height: 100%;
      top: 50%;
      left: 0;
      right: 0;
      transform: translateY(-50%);
    }

    .img-hero-slider {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    #cpt-hero-slider-mobile .flickity-page-dots {
      bottom: 15px;
    }


  /*****************************
  *** CPT GALLERY
  ******************************/
    #cpt-photo-gallery .cpt-photo-items > div:first-child {
      display: none;
    }

    .cpt-photo-gallery-item {
      margin-bottom: 30px;
      padding-top: 60%;
      position: relative;
      overflow: hidden;
    }

    .cpt-photo-gallery-item:hover {
      cursor: zoom-in;
    }

    .cpt-photo-gallery-item-picture {
      position: absolute;
      top: 0;
      bottom: 0;
      width: 100%;
      height: 100%;
      top: 50%;
      left: 0;
      right: 0;
      transform: translateY(-50%);
    }

    .img-photo-gallery {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    .cpt-photo-items .hidden.visible {
      display: block!important;
    }

    #open-gallery {
      width: 100%;
      cursor: pointer;
    }


  /*****************************
  *** SINGLE DETAILS SLIDER
  ******************************/
    .cpt-details-slider,
    .cpt-details-slider- {
      padding-bottom: 30px;
      position: relative;
    }

    .cpt-details-slider-item {
      width: 100%;
      padding-top: 50%;
      position: relative;
      overflow: hidden;
    }

    .cpt-details-slider-item-picture {
      position: absolute;
      top: 0;
      bottom: 0;
      width: 100%;
      height: 100%;
      top: 50%;
      left: 0;
      right: 0;
      transform: translateY(-50%);
      background-color: #f4f6f5;
    }

    .img-details-slider {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }


  /*****************************
  *** SINGLE CONTACT
  ******************************/
    .cpt-call {
      padding-top: 15px;
    }


  /*****************************
  *** SINGLE OTHER MEDIA
  ******************************/
    .cpt-other-media-item {
      display: inline-block;
      margin-bottom: 15px;
    }


/**********************************************************************
*** BLOG
*********************************************************************/

  /*****************************
  *** INDEX
  ******************************/
    .blog-start-page .content-section-intro {
      border-bottom: 0px;
    }

    .blog-start-page .content-section-intro h1 {
      font-size: 51px;
    }

    .blog-listing-item {
      margin-bottom: 30px;
    }

    .blog-listing-item,
    .blog-listing-title {
      position: relative;
    }

    .blog-listing-image {
      padding-top: 100%;
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center;
      background-color: #f4f6f5;
    }

    .blog-listing-header {
      font-size: 1rem;
      padding-top: 15px;
    }


  /*****************************
  *** PAGER
  ******************************/
    #blog-pagination {
      padding: 30px 0;
    }

    .pager li {
      padding: 0 15px;
    }

    .pager li > a {
      display: inline-block;
      color: black;
      background-color: white;
      border: 2px solid black;
      border-radius: 0;
      padding: 10px 15px;
      font-size: 14px;
      /* line-height: 21px; */
      outline: 0 !important;
      text-align: center;
      vertical-align: middle;
      transition: all .8s ease;
    }

    .pager li > a:hover,
    .pager li > span:hover,
    .pager li > span {
      background-color: black;
      color: white;
      padding: 10px 15px;
      border: 2px solid black;
      border-radius: 0;
      box-shadow: 0 2px 10px rgba(0,0,0,0.16);
      text-decoration: none;
    }


  /*****************************
  *** SINGLE
  ******************************/
    #single-text p {
      margin: 10px 0;
      line-height: 2rem;
    }

    #single-text h1,
    #single-text h2,
    #single-text h3,
    #single-text h4,
    #single-text h5,
    #single-text h6 {
      margin: 15px 0;
    }

    #single-text h5 {
      background-color: #f4f6f5;
      margin: 0!important;
      padding: 15px 0;
    }

    #single-text hr {
      margin: 0;
    }

    #single-text div .wp-caption {
      max-width: 100%;
      font-size: 11px;
      font-style: italic;
      border-width: 1px;
      border-style: solid;
      margin: 5px 15px 10px;
      position: relative;
    }

    #single-text div .wp-caption.alignnone {
      width: 100%!important;
    }

    #single-text .alignleft {
      float: left;
      display: block;
    }

    #single-text .alignright {
      float: right;
      display: block;
      margin-right: 15px;
    }

    #single-text .wp-caption-text {
      padding: 5px;
    }

    .gallery .gallery-item img {
      width: 100%;
      height: auto;
    }



/**********************************************************************
*** TAXONOMY
*********************************************************************/
  body.archive .content-section-text .equal-height > div {
    justify-content: start;
  }

  /*body.archive .content-section-slider .content-item-slider {
    padding-top: 35%;
  }*/

  #page-content-taxonomy .content-title {
    text-align: left;
  }

  #page-content-taxonomy .content-title h1 {
    font-size: 26px;
    font-weight: 600;
  }

  #blog-text-long p {
    margin-bottom:  15px!important;
  }

  .img-tax-blog-teaser {
    margin: 15px 0;
  }

  #blog-text-teaser .h3 {
    margin-top: 30px;
  }



  /*****************************
  *** LIST
  ******************************/
    #blog-list .equal-height > div[class*="col-"] {
      justify-content: start;
    }

    .blog-listing-slider,
    .blog-listing-slider-,
    .blog-listing-thumbnail {
      margin-bottom: 15px;
    }

    .blog-listing-slider-item,
    .blog-listing-thumbnail-item {
      width: 100%;
      padding-top: 66%; /*70%*/
      position: relative;
      overflow: hidden;
    }

    .blog-listing-slider-item-picture,
    .blog-listing-thumbnail-picture {
      position: absolute;
      top: 0;
      bottom: 0;
      width: 100%;
      height: 100%;
      top: 50%;
      left: 0;
      right: 0;
      transform: translateY(-50%);
      background-color: #f4f6f5;
    }

    .img-blog-listing-slider,
    .img-blog-listing-thumbnail {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    .blog-listing-item {
      margin-bottom: 45px;
    }

    .blog-listing-item a {
      text-decoration: none!important;
      display: block;
    }

    .blog-listing-title h2 {
      margin-bottom: 10px;
      font-size: 1.125rem;
    }



  /*****************************
  *** SIDEBAR
  ******************************/
    #cpt-contact-form {
      margin-top: 5px!important;
    }

    #cpt-contact-person .img-contact-person {
      max-height: 120px;
      width: auto;
      border-radius: 50%;
      margin: 0 auto 15px;
    }

    #cpt-contact-person a {
      text-decoration: none;
      width: 100%;
      max-width: unset;
      font-weight: normal;
    }

    #cpt-contact-person .dashicons {
      margin-right: 1px;
      font-size: 16px;
      vertical-align: middle;
    }

    #tax-term-navigation {
      padding-top: 0;
      padding-bottom: 0;
      margin-bottom: 15px;
    }

    #tax-term-link-back {}

    #tax-term-links {
      list-style: none;
      padding-left: 0;
      margin-bottom: 0;
    }

    #tax-term-links li {
      display: inline-block;
      width: 31%;
      margin: 0 1%;
      padding-top: 0;
    }

    #tax-term-links li a {
      width: 100%;
      min-width: unset;
      padding: 5px 5px;
      font-size: 12px;
      border-width: 1px;
      /*hyphens: auto;*/
      text-overflow: ellipsis;
      overflow: hidden;
    }

    #blog-text-bottom {
      padding-top: 0;
    }



/**********************************************************************
*** FACET WP
*********************************************************************/
  .facetwp-facet {
    margin-bottom: 15px!important;
  }

  .facetwp-type-fselect .fs-wrap,
  .facetwp-type-fselect .fs-dropdown {
    width: 100%!important;
  }

  .fs-label-wrap {
    background-color: #fff!important;
    border: 1px solid #4b4b4b!important;
    padding: 5px!important;
  }

  .facetwp-pager {
    position: relative;
    text-align: center;
    padding-bottom: 45px;
  }

  .facetwp-pager-label {
    /* display: inline-block; */
    /* margin-right: 12px; */
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    text-align: center;
    display: none!important;
  }

  .facetwp-pager > a {
    color: black;
    background-color: white;
    border: 2px solid black;
    border-radius: 0;
    padding: 6px 18px;
    font-size: 14px;
    /*line-height: 21px;*/
    outline: 0 !important;
    text-align: center;
    vertical-align: middle;
    display: inline-block;
    transition: all .8s ease;
    margin: 0 10px;
  }

  .facetwp-pager > a:hover,
  .facetwp-pager > a:focus,
  .facetwp-pager > a.active {
    background-color: black;
    color: white;
    text-decoration: none;
  }

  .fs-dropdown {
    border: 1px solid #000!important;
  }



/**********************************************************************
*** FORMS
*********************************************************************/
  .wpcf7 {
    display: block;
  }

  .wpcf7-form p {
    margin-bottom: 0;
  }

  .wpcf7 .form-group {
    margin-bottom: 30px;
  }

  .wpcf7 .wpcf7-form-control-wrap {
    margin-top: 10px;
    display: block;
  }

  .wpcf7 .form-control:focus {
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 5px rgba(125,156,114,.6);
    border: 1px solid #4b4b4b;
  }

  .wpcf7 input[type="text"],
  .wpcf7 input[type="email"],
  .wpcf7 input[type="date"],
  .wpcf7-date {
    width: 100%;
    /*-webkit-appearance: none;*/
    background-color: #fff;
    border-radius: 0;
    padding: 10px;
    font-size: 1rem;
    line-height: 16px;
    border: 1px solid #e2e2e2;
    margin-bottom: 15px;
    color: #000;
    font-style: italic;
    min-height: 44px;
  }

  .wpcf7 textarea {
    resize: vertical;
    width: 100%;
    max-height: 200px;
    padding: 20px;
    -webkit-appearance: none;
    border: 1px solid #e2e2e2;
    margin-bottom: 15px;
    font-style: italic;
    color: #000;
  }

  .wpcf7 .wpcf7-not-valid-tip,
  .wpcf7 .screen-reader-response {display: none!important;}
  .wpcf7 .wpcf7-response-output {font-size: 80%;}

  .wpcf7 .wpcf7-not-valid {border: 2px solid red!important;}

  .wpcf7 .wpcf7-response-output.wpcf7-mail-sent-ok {
    display: block!important;
    text-align: center;
    padding: 20px;
  }

  .wpcf7 .legaltext,
  .wpcf7-form-control-wrap.legal {
    font-size: 1rem;
    line-height: 1rem;
    font-weight: normal;
  }

  .wpcf7-list-item-label {
    font-weight: normal;
  }

 .wpcf7 input[disabled] {
    cursor: not-allowed;
  }

  #cpt-contact-form .wpcf7-text,
  #cpt-contact-form .wpcf7-date,
  #cpt-contact-form .wpcf7-textarea {
    font-size: 14px;
    border: 1px solid black;
  }

  #cpt-contact-form .wpcf7 .wpcf7-form-control-wrap {
    margin-top: 0;
  }

  #cpt-contact-form .wpcf7-textarea {
    max-height: 80px;
    padding: 10px;
    margin-bottom: 10px;
  }

  #cpt-contact-form .form-field-left {
    padding-right: 7px;
    position: relative;
  }

  #cpt-contact-form .form-field-right {
    padding-left: 7px;
    position: relative;
  }

  #cpt-contact-form small {
    padding: 0px 4px;
    background-color: white;
    position: absolute;
    top: -11px;
    left: 20px;
    font-size: .7rem;
  }



/**********************************************************************
*** MAILCHIMP
*********************************************************************/
  .mc4wp-form-fields input {
    border: 1px solid black!important;
  }


/**********************************************************************
*** PROVEN EXPERTS
*********************************************************************/
  #pe_rating,
  #pe_stars > span::before {
    color: #fff!important;
  }


/**********************************************************************
*** LANDMARK MAP
*******************************************************************/
  #facetwp-map {max-height: 780px;}

  #landmark-map .equal-height > div[class*="col-"] {
    display: flex;
    flex-direction: column;
    /* margin-left: -1px; */
    /* margin-right: -1px; */
    justify-content: initial;
  }

  #landmark-map .fwpl-item img {
    max-width: 100%;
  }

  .map-marker-box {max-width: 360px; padding: 0 10px 10px 0px;}

  .map-marker-box > a {
    text-decoration: none!important;
  }

  .map-marker-box .map-marker-title {margin: 3px 0;}
  .map-marker-box .map-marker-price {margin: 3px 0;}
  .map-marker-box .map-marker-info {margin: 10px 0;}
  .map-marker-box .map-marker-info .label {line-height: 2.3;}
  .map-marker-box .map-marker-link {text-align: right;}
  .map-marker-box .map-marker-link .btn-landmark {padding: 5px 10px;}

  #landmark-map .facetwp-map-filtering {display: none;}

  #map-sidebar-listing {
    overflow-y: scroll;
    overflow-x: hidden;
    max-height: 640px;
  }

  .map-listing-box {padding-left: 0!important;}
  .map-listing-type {
    font-size: .8rem;
    line-height: 1.6;
    position: absolute;
    top: 5px;
    left: 5px;
    background-color: black;
    color: white;
    padding: 0 3px;
  }

  .map-listing-title {margin-bottom: 5px;}
  .map-marker-price {line-height: 1.2; padding: 3px 0;}
  .map-listing-img {
    padding-top: 40%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
  }

  .facetwp-facet-map_suche .facetwp-location {
    width: 100%;
  }

  .facetwp-facet-map_suche .facetwp-input-wrap {
    width: 100%;
    margin-bottom: 15px;
  }

  #landmark-map .facetwp-dropdown {
    background-color: #fff !important;
    border: 1px solid #4b4b4b !important;
    padding: 5px !important;
    width: 100%;
  }

  #landmark-map .fs-label-wrap .fs-label {
    padding: 6px 22px 6px 8px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }

  .map-legende {
    max-height: 15px;
    vertical-align: baseline;
    padding-right: 2px;
  }

  #landmark-map .facetwp-pager {
    padding-top: 15px;
  }

  #landmark-map .facetwp-pager .facetwp-pager > a {
    margin-bottom: 15px;
  }

  #landmark-map .facetwp-pager {
    padding-bottom: 0;
  }

  #landmark-map .content-item.content-item-map {
    padding-bottom: 0;
  }


/**********************************************************************
*** COOKIEBOT
*********************************************************************/
  #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyButtonAccept,
  #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonAccept,
  #CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll {
    background-color: #000!important;
    border-color: #000!important;
    color: #ffffff;
  }

  #CybotCookiebotDialogFooter .CybotCookiebotDialogBodyButton {
    border: 2px solid #000!important;
    border-radius: 0!important;
  }

  #CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink.active {
    border-bottom: 1px solid #000!important;
    color: #000!important;
  }

  .cookieconsent-optout-marketing {
    display: block;
    /* height: 100%; */
    /* padding-top: 38%; */
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    padding-top: 27%;
    text-align: center;
  }

  /*.cookieconsent-optout-marketing {
    display: block;
    background-color: #ececec;
    text-align: center;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    padding-top: 15%;
  }*/



/**********************************************************************
*** FLICKITY
*********************************************************************/
  .flickity-page-dots .dot {
    border-radius: 0;
    width: 15px;
    height: 15px;
    background-color: white;
    border: 1px solid black;
  }


  .flickity-button {
    opacity: 0;
    background-color: white!important;
  }

  .blog-listing-slider:hover .flickity-button,
  #cpt-hero-slider:hover .flickity-button,
  .cpt-details-slider:hover .flickity-button {
    opacity: 1;
  }

  .flickity-prev-next-button {
    border-radius: 0;
    /*opacity: 1;*/
  }

  .flickity-prev-next-button.previous {
    left: 0px;
  }

  .flickity-prev-next-button.next {
    right: 0px;
  }

  .flickity-prev-next-button .flickity-button-icon {
    position: absolute;
    left: 34%;
    top: 34%;
    width: 30%;
    height: 30%;
  }



/**********************************************************************
*** MMENU LIGHT
*********************************************************************/
  .wpmm-menu {z-index: 9999;}
  .mm-slideout {z-index: 9999;}
  .mm-wrapper__blocker {background: rgba(3,2,1,.8); z-index: 9999;}
  .mm-btn_next::after, .mm-btn_prev::before {width: 5px; height: 5px;}
  .mm-navbar__title {color: black!important;}
  .mm-listitem a {text-transform: uppercase; font-weight: 600;}

  .mm-navbars_bottom #menu-footer_menue li {padding: 0;}
  .mm-navbars_bottom #menu-footer_menue a {color: black; padding: 5px 10px;}

  #menu-mobile-footer {}
  #menu-mobile-footer {list-style-type: none; padding-left: 0; margin-bottom: 0;}
  #menu-mobile-footer li {display: inline-block; padding: 0px 10px;}
  #menu-mobile-footer li a {color: black;}

  .mm-listitem_opened > .mm-listitem__btn,
  .mm-listitem_opened > .mm-panel {background: #fff!important;}
  .mm-listitem_vertical > .mm-panel {padding: 0px 0 10px 10px!important;}



/**********************************************************************
*** LIGHTGALLERY
*********************************************************************/
  .lg-sub-html h3 {color: white;}



/**********************************************************************
*** BREAKPOINT MAX 1200px
*********************************************************************/
  @media (max-width: 1200px) {

    /** BASICS **/
      body {}
      /*h1, .h1 {font-size: 3rem;}
      h2, .h2 {font-size: 2rem;}
      h3, .h3 {font-size: 1.7rem;}
      h4, .h4 {font-size: 1.4rem;}
      h5, .h5 {font-size: 1.2rem;}
      h6, .h6 {font-size: 1.2rem;}*/


    /** META-NAV **/
      #page-navigation-meta-left {margin-left: 0;}
      #page-navigation-meta-right {margin-right: 0;}


    /** MENU **/
      .navbar-landmark .navbar-nav > li {padding: 10px 10px;}
      .navbar-landmark .navbar-nav > li a {font-size: 12px;}


    /** HEADER **/
      #page-header-text {max-width: 990px;}

    /** CONTENT **/

    /** PAGE **/
      .img-references {max-width: 100%;}


    /** FOOTER **/


  }



/**********************************************************************
*** BREAKPOINT MAX 992px
*********************************************************************/
  @media (max-width: 992px) {

    /** BASICS **/
      body {font-size: 14px;}
      h1, .h1 {font-size: 32px;}
      h2, .h2 {font-size: 27px;}
      h3, .h3 {font-size: 21px;}
      h4, .h4 {font-size: 16px;}
      h5, .h5 {font-size: 14px;}
      h6, .h6 {font-size: 14px;}


    /** MENU **/
      #page-navigation-meta {font-size: 14px;}
      #logo {}
      #menu-hauptmenu-links .navbar-right {margin-right: 0;}
      #hauptmenu {}
      .navbar-landmark {min-height: 40px;}
      .navbar-logo-link {margin-top: -32px;}
      .navbar-landmark .navbar-nav > li {padding: 5px 10px;}
      .navbar-landmark .navbar-nav > li a {font-size: 12px; padding-bottom: 5px;}


    /** HEADER **/
      #page-header-text h1.content-title-heading {font-size: 28px;}
      #page-header-text {max-width: 760px; bottom: 80px;}


    /** CONTENT **/
      .content-section {}
      .content-section {padding-top: 15px; padding-bottom: 15px;}
      .content-section-hero-image .content-title-heading {font-size: 28px;}
      .content-section-hero-image .content-item-hero-image-text {padding: 0px;}


    /** PAGE **/
      #cpt-right section {padding: 15px 0;}
      #cpt-contact-form .form-field-left {padding-right: 15px;}
      #cpt-contact-form .form-field-right {padding-left: 15px;}


    /** BLOG **/
      .blog-listing-image {padding-top: 60%;}


    /** TAXONOMY **/
      #cpt-contact-form .wpcf7-text,
      #cpt-contact-form .wpcf7-date,
      #cpt-contact-form .wpcf7-textarea {font-size: 12px;}
      .fs-label-wrap .fs-label {font-size: 12px!important;}
      #cpt-contact-person .img-contact-person {max-height: 120px;}
      .pager li {padding: 0 10px; margin-bottom: 30px;}
      .pager li > a,
      .pager li > span {padding: 5px 10px; font-size: 12px;}
      .facetwp-pager > a {margin: 0 5px 15px; font-size: 12px; padding: 5px 15px;}

      .blog-listing-slider-item,
      .blog-listing-thumbnail-item {padding-top: 65%;}


    /** KARTE **/
      #map-sidebar-filter h3 {font-size: 16px;}
      .map-listing-box {padding-left: 15px !important; padding-top: 5px; padding-bottom: 10px;}
      .facetwp-facet input.facetwp-location {min-width: 210px;}
      .gm-style img {max-width: 100%!important;}
      .map-marker-box {padding: 0 10px 10px 0px;}


    /** FOOTER **/



  }



/**********************************************************************
*** BREAKPOINT MAX 767px
*********************************************************************/
  @media (max-width: 767px) {

    /** BASICS **/
      body {font-size: 12px; line-height: 2; padding-top: 68px; padding-bottom: 50px;}
      h1, .h1 {font-size: 1.5rem;}
      h2, .h2 {font-size: 1.4rem;}
      h3, .h3 {font-size: 1.3rem;}
      h4, .h4 {font-size: 1.2rem;}
      h5, .h5 {font-size: 1rem;}
      h6, .h6 {font-size: 1rem;}

      .equal-height {display: block;}
      .equal-height > div[class*="col-"] {display: block;}

      .btn-landmark {padding: 5px 10px; font-size: 12px; width: 100%; max-width: unset;}
      .btn-2 {margin-left: 0px;}


    /** MENU **/
      #logo {}
      #hauptmenu {}
      .navbar-landmark .navbar-nav > li > a {}
      .navbar-landmark {margin-top: 0; padding-top: 25px;}
      #nav-logo {max-height: 60px; margin-bottom: 5px; margin-top: 8px;}


    /** HEADER **/
      #page-header-image {padding-top: 65%;}
      #page-header-background {border: 0rem solid white!important;}
      #page-header-text-mobile {padding: 30px 15px 0;}
      #page-header-text-mobile .content-title {text-align: left; padding-bottom: 5px;}
      #page-header-text-mobile a {margin-bottom: 15px;}


    /** CONTENT **/
      .content-section {}
      .content-section-hero-image .content-intro {color: black;}

      .content-area > .content-item:last-child {padding-bottom: 0;}

      .content-section-slider .content-item-slider {padding-top: 65%;}
      .content-section-slider .content-title-heading {font-size: 21px;}

      .content-section-hero-image .content-item-hero-image-text-mobile {padding: 15px 15px 0;}
      .content-section-hero-image .content-title-heading {color: black; text-shadow: unset; font-size: 1.4rem; font-weight: 600;}

      .content-section-legal .content-item .tabs-heading {font-size: 18px!important;}

      .content-section-press .content-item-image-wrapper a {bottom: 0; left: 0;}


    /** PAGE **/


    /** CPT **/
      #cpt-right section {padding: 0 0 30px 0;}
      #hero-mobile-back {padding: 7px 20px; min-width: unset; max-width: 60px;}
      #hero-mobile-more {padding: 4px 5px; min-width: unset; max-width: 60px;}
      #cpt-hero-slider-mobile .flickity-page-dots {bottom: 5px;}
      #cpt-title {margin-bottom: 30px;}
      #cpt-left {padding-left: 15px;}



    /** TAXONOMY **/
      #sidebar-filter {margin-top: 30px;}
      #tax-term-links li {width: 31%;}
      #tax-term-links li a {font-size: 80%;}
      .label-primary {margin: 2px 0; display: inline-block;}
      .facetwp-pager > a {padding: 5px 15px; font-size: 14px; margin: 10px 10px;}

      #blog-text-long h1,
      #blog-text-long h2,
      #blog-text-long h3,
      #blog-text-long h4 {
        text-align: left!important;
      }

      #sidebar-filter-mobile {position: fixed; top: 20%; right: 0; z-index: 999;}
      #sidebar-filter-mobile ul {padding-left: 0;}
      #sidebar-filter-mobile li {list-style-type: none; width: 35px; height: 35px; background-color: black; color white; margin-bottom: 10px; padding: 4px;}
      #sidebar-filter-mobile li a {text-decoration: none;}
      #sidebar-filter-mobile li .dashicons {font-size: 27px;}

      #cpt-contact-form small {top: -17px; left: 20px; font-size: .7rem; padding: 0; }
      #cpt-contact-form .wpcf7 input[type="date"] {width: 150px;}

      #tax-mobile-read-more {
        position: relative;
        height: 244px;
        overflow: hidden;
        transition: height .8s ease;
        margin-bottom: 0;
      }

      #tax-mobile-read-more::after {
        content: '';
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+95&0+88,1+95 */
        background: -moz-linear-gradient(top,  rgba(255,255,255,0) 0%, rgba(255,255,255,0) 88%, rgba(255,255,255,1) 95%); /* FF3.6-15 */
        background: -webkit-linear-gradient(top,  rgba(255,255,255,0) 0%,rgba(255,255,255,0) 88%,rgba(255,255,255,1) 95%); /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,0) 88%,rgba(255,255,255,1) 95%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
      }
      #tax-mobile-read-more.open {height: auto!important;}
      #tax-mobile-read-more.open::after {background: none;}

      .blog-listing-slider .flickity-button {opacity: 1;}

    /** KARTE **/
      .map-marker-box .map-marker-info .label {line-height: 1.3;}
      #facetwp-map {height: 400px!important;}
      #map-sidebar-listing {overflow-y: hidden; max-height: none;}



    /** FOOTER **/
      #totop {right: 30px;bottom: 75px;width: 45px;min-width: unset;}

      .col-xs-3.page-footer-mobile-link {
        width: 20%!important;
      }


  }



/**********************************************************************
*** BREAKPOINT MAX 640px
*********************************************************************/
  @media (max-width: 640px) {

    /** BASICS **/
      /*body {}
      h1, .h1 {font-size: 3rem;}
      h2, .h2 {font-size: 2rem;}
      h3, .h3 {font-size: 1.7rem;}
      h4, .h4 {font-size: 1.4rem;}
      h5, .h5 {font-size: 1.2rem;}
      h6, .h6 {font-size: 1.2rem;}*/


    /** MENU **/
      #logo {}
      #hauptmenu {}
      .navbar-landmark .navbar-nav > li > a {}


    /** HEADER **/


    /** CONTENT **/
      .content-section {}


    /** FOOTER **/



  }



/**********************************************************************
*** IE 10+
*********************************************************************/
  @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {



  }