/* roboto-100 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100;
  src: url('../fonts/roboto-v29-latin-100.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-100.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-100.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-100.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-100.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-100.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-100italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100;
  src: url('../fonts/roboto-v29-latin-100italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-100italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-100italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-100italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-100italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-100italic.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-300 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/roboto-v29-latin-300.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-300.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-300italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 300;
  src: url('../fonts/roboto-v29-latin-300italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-300italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-300italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-300italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-300italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-300italic.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-regular - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/roboto-v29-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-regular.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/roboto-v29-latin-italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-italic.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-500 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/roboto-v29-latin-500.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-500.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-500.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-500italic - latin */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 500;
  src: url('../fonts/roboto-v29-latin-500italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-500italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-500italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-500italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-500italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-500italic.svg#Roboto') format('svg'); /* Legacy iOS */
}

html,
body,
input,
textarea {
    color: #000000;
    font: 14px/24px 'Roboto', sans-serif;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.wrapper {
    width: 80%;
    margin: 0 auto;
}

html,
section,
body {
    overflow-y: inherit!important;
}

 * {
      box-sizing: border-box;
}

a {
    color: #000000;
    text-decoration: none;
    transition: all 1s ease;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

b {
    font-weight: 500;
}

a:hover,
a:focus,
a,
footer,
section,
article,
div {
    outline: none!important
}

h1, h2 {
    font-size: 48px;
    font-weight: 100;
    margin-bottom: 35px;
    line-height: 1.2;
}

h3 {
    font-size: 20px;
    font-weight: 300;
    margin-bottom: 15px;
}

h4,
h5,
h6 {}

.font-size {
    font-size: 25px;
    line-height: 1.2;
}

.list {
    margin-left: 16px;
    margin-bottom: 10px;
}

.list li {
    list-style: disc
}

.smaller {
    display: block;
    font-size: 30px;
}

#frontpage {
    background: url(../images/frontpage-bg.jpg)no-repeat center center / cover;
    height: 100vH;
    width: 100%;
}

.green-bg {
    width: 600px;
    height: 100vH;
    background-color: #6d7a59;
    padding-top: calc(50vH - 240px);
    margin-left: calc(50% - 300px);
}

#frontpage .animation {
    width: 100px;
    height: 100px;
    display: block;
    margin-left: calc(50% - 50px);
    border-radius: 100px;
    background-color: #000;
    animation: pulse 2s infinite;
    transition: all 1s ease;
}

@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0px rgba(0, 0, 0, 0.2);
    }

    100% {
        box-shadow: 0 0 0 30px rgba(0, 0, 0, 0);
    }
}

#frontpage .animation img {
    width: 100px;
}

#frontpage .welcome {
    margin-left: calc(50% - 252px);
    margin-top: 50px;
}

/* ==========================================================================
   header
   ========================================================================== */

#home {
    position: relative;
    height: 100vH;
}

aside {
    position: absolute;
    top: 40px;
    left: 9%;
    z-index: 10000;
    width: 100px;
    height: 100px;
    display: block;
}

aside img {
    width: 100px;
}

aside span {
    top: 0;
    left: 0;
    position: absolute;
    width: 100px;
    height: 100px;
    display: block;
    border-radius: 100px;
    background-color: #000;
    animation: pulse 2s infinite;
    transition: all 1s ease;
    z-index: -1;
}

aside.logo-fixed {
    position: fixed;
    top: 9px;
    z-index: 1000;
    width: 60px;
    height: 60px;
}

aside.logo-fixed span {
    left: 9%;
    position: fixed;
    top: 9px;
    width: 60px;
    height: 60px;
}

aside.logo-fixed img {
    width: 60px;
}

.slider img {
    width: 95%;
}

.flex-container {
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
}

.header-content .flex-container {
    height: 1000px
}

.header-content {
    height: 1000px;
    position: relative;
}

.header-content .flex-item:nth-child(1) {
    width: 60%;
    position: relative;
    margin-left: 12%;
}

.header-content .flex-item:nth-child(1) img {
    width: 100%;
    max-width: 850px;
}

.headline-side {
    font-size: 85px;
    font-weight: 100;
    text-transform: uppercase;
    position: absolute;
    bottom: 400px;
    color: #fff;
    left: -180px;
    transform: rotate(-90deg);
}

.headline-side::before {
    content: '';
    display: block;
    background: #fff;
    width: 10vH;
    height: 1px;
    position: absolute;
    left: -12vH;
    bottom: 17px;
}

.header-content .flex-item:nth-child(1) .slider-box {
    position: relative;
    left: 20%;
}

.header-content .flex-item:nth-child(2) {
    width: 50%;
    padding: 0 10% 0 5%;
}

.border-left {
    padding-left: 15px;
    border-left: 5px solid #6d7a59;
    font-size: 20px;
    font-weight: 300;
    font-style: italic;
    margin-bottom: 30px;
    line-height: 1.5;
}

.header-content p,
#objekte .flex-item:nth-child(1) p,
#referenzen-infos p {
    margin-bottom: 30px;
}

.italic-bold {
    font-weight: 500;
    font-style: italic;
}

.bold-color {
    font-weight: 500;
    color: #899872
}

.green,
.green-three,
.green-four,
.green-five,
.green-six,
.green-seven,
.green-eight,
.green-nine,
.green-ten,
.green-eleven {
    width: 45%;
    z-index: -1;
    background-color: #6d7a59;
    position: absolute;
    height: 1000px;
    top: 0;
}

.green::before {
    content: url(../images/willkommen.svg);
    display: block;
    position: absolute;
    width: 80px;
    height: 710px;
    left: 5%;
    bottom: 0;
}


/* ==========================================================================
   navi
   ========================================================================== */

nav {
    background-color: transparent;
    position: absolute;
    display: flex;
    width: 100%;
    height: 80px;
    z-index: 100;
    top: 60px;
}

nav.menu-fixed {
    position: fixed;
    top: 0;
    background-color: #fff
}

nav ul {
    padding-top: 26px;
    position: absolute;
    right: 10%;
}

nav ul li {
    display: inline-block;
    padding: 0 20px
}

nav ul li a {
    font-weight: 400;
    color: #000000;
    text-transform: uppercase;
}

nav ul li a:hover {
    font-weight: 500;
}

.sidenav,
.open-menu {
    display: none;
}


/*******************************
section1
*******************************/

.slogan {
    padding: 200px 0;
    background: url(../images/linie-schwung.svg)no-repeat center;
    text-align: center;
}

.slogan p {
    font-size: 40px;
    font-weight: 300;
    text-transform: uppercase;
    line-height: 2.3;
}

.slogan img {
    width: 380px;
    position: relative;
    top: 15px;
}

.slogan .duft {
    width: 900px;
}

/*******************************
section2
*******************************/

#objekte,
#leistungen {
    background: url(../images/bg-objekte.jpg)no-repeat center left / cover;
    padding: 150px 0;
    position: relative;
}

#objekte .flex-container,
#referenzen-infos .flex-container,
#kontakt .flex-container {
    justify-content: space-between;
}

#objekte .flex-item:nth-child(1) {
    padding: 0 0 0 10%;
    width: 40%;
}

#objekte .flex-item:nth-child(2) {
    position: relative;
    z-index: 1;
    width: 758px;
}

#objekte .flex-item:nth-child(1) a {
    text-decoration: underline;
}

#objekte .flex-item:nth-child(1) a:hover {
    text-decoration: none;
}

.flexbox:nth-child(1) img,
.flexbox:nth-child(2) img,
.flexbox:nth-child(3) img {
    height: 200px;
    object-fit: cover;
    width: 293px;
    margin-left: 57px;
}

.flexbox {
    position: relative;
    display: block;
}

.flexbox:nth-child(1),
.flexbox:nth-child(2) {
    margin-bottom: 25px;
}

.flexbox:nth-child(1) span,
.flexbox:nth-child(2) span,
.flexbox:nth-child(3) span {
    position: absolute;
    left: -71px;
    bottom: 71px;
    color: #fff;
    font-size: 22px;
    font-weight: 300;
    transform: rotate(-90deg);
    z-index: 100;
    line-height: 28px;
}

.flexbox:nth-child(1) span {
    padding: 15px 56px 15px 15px;
    background-color: #2a341a /* rgba(42, 52, 26, 0.8) */;
    transition: all 1s ease;
}

.flexbox:nth-child(1) span:hover {
    background-color: #899872;
}

.flexbox:nth-child(2) span {
    padding: 17px 30px 15px 17px;
    background-color: #495733 /* rgba(73, 87, 51, 0.8) */;
    transition: all 1s ease;
}

.flexbox:nth-child(2) span:hover {
    background-color: #2a341a
}

.flexbox:nth-child(3) span {
    padding: 16px 76px 15px 17px;
    background-color: #899872 /* rgba(137, 152, 114, 0.8) */;
    transition: all 1s ease;
}

.flexbox:nth-child(3) span:hover {
    background-color: #495733
}

.green-two {
    width: 700px;
    z-index: 0;
    background-color: #6d7a59;
    position: absolute;
    height: 120%;
    top: -10%;
    right: 0
}

.green-two::before {
    content: url(../images/objekte.svg);
    display: block;
    position: absolute;
    width: 80px;
    height: 710px;
    right: 5%;
    bottom: -6vH;
}

.autor-small {
    font-size: 12px;
}

/*******************************
section3
*******************************/

#referenzen-infos {
    padding: 300px 0 200px 0;
    background: url(../images/linie-schwung.svg)no-repeat center;
}

#referenzen-infos .flex-item {
    width: 33%;
    position: relative;
}

#referenzen-infos .flex-item:nth-child(1) {
    padding-right: 8%;
}

.border-left-two {
    padding-left: 15px;
    border-left: 5px solid #6d7a59;
    font-style: italic;
}

#referenzen-infos .flex-item:nth-child(2) {
    text-align: center;
    padding: 0 2%;
}

#referenzen-infos .flex-item:nth-child(2) a,
#immobilien a {
    width: 100%;
    border: 3px solid #6d7a59;
    display: block;
    padding: 13px 0;
    font-weight: 400;
    color: #6d7a59;
}

#referenzen-infos .flex-item:nth-child(2) a:hover,
#immobilien a:hover {
    background-color: #6d7a59;
    color: #fff;
}

#referenzen-infos .flex-item:nth-child(3) {
    height: 250px;
}

#referenzen-infos .flex-item:nth-child(3) img {
    width: 256px;
    mix-blend-mode: multiply;
    position: absolute;
    right: 0;
    top: -95px;
}

/*******************************
section4
*******************************/

#kontakt {
    background-color: #6d7a59;
    padding-left: 10%;
    position: relative;
    overflow-y: clip;
}

#kontakt::before {
    content: url(../images/kontakt.svg);
    display: block;
    position: absolute;
    width: 80px;
    height: 620px;
    left: 3%;
    bottom: 0;
}

#kontakt .flex-item:nth-child(2) {
    width: 25%;
}

#kontakt .flex-item:nth-child(1),
#kontakt .flex-item:nth-child(1) img {
    width: 280px;
}

#kontakt .flex-item:nth-child(2) p,
#gedanken p {
    margin-bottom: 15px;
    color: #fff;
}

#kontakt .flex-item:nth-child(2) p:last-child {
    margin-bottom: 0;
}

#kontakt .flex-item:nth-child(2) a {
    text-decoration: underline;
    color: #fff;
}

#kontakt .flex-item:nth-child(2) a:hover,
.daten a:hover,
#cityservice ul li a:hover {
    text-decoration: none;
}

.italic {
    font-style: italic;
    font-weight: 300;
}

#kontakt .flex-item:nth-child(3) {
    width: 50%;
}

#kontakt .flex-item:nth-child(3) img {
    width: 100%;
    height: 860px;
    mix-blend-mode: multiply;
    object-fit: cover;
    object-position: left;
}

/*******************************
section5
*******************************/


#gedanken {
    padding: 140px 0 100px 0;
    background-color: #6d7a59;
    color: #fff;
}

#gedanken .flex-container,
#leistungen .flex-container,
#cityservice .flex-container,
#cityservice-details .flex-container,
#immobilien .flex-container,
#impressum .flex-container {
    align-items: flex-start;
}

#gedanken .flex-item:nth-child(1),
#leistungen .flex-item:nth-child(1),
#cityservice-details .flex-item:nth-child(1),
#impressum .flex-item:nth-child(1) {
    padding-right: 50px;
}

#gedanken .flex-item:nth-child(2),
#leistungen .flex-item:nth-child(2),
#cityservice-details .flex-item:nth-child(2),
#impressum .flex-item:nth-child(2),
#immobilien .flex-item:nth-child(2) {
    padding-left: 50px;
}

.route-planen {
    width: 500px;
    height: 100%;
    background-color: rgba(255,255,255,.8);
    padding: 72px 0 72px 73px;
}

/*******************************
section6
*******************************/

#gedanken .flex-item,
#leistungen .flex-item,
#logo-explained .flex-item,
#cityservice-details .flex-item,
#immobilien .flex-item,
#impressum .flex-item {
    width: 50%;
}

#leistungen p,
#logo-explained .flex-item:nth-child(1) p,
#cityservice-details p,
#impressum p {
    margin-bottom: 15px;
}

#leistungen ol,
#leistungen ul {
    padding-left: 17px;
}

#leistungen ul li {
    list-style: disc;
}

#leistungen .bottom-none {
    margin-bottom: 0
}

.relativ-wrapper {
    position: relative;
}

/*******************************
section7
*******************************/

#logo-explained,
#cityservice-details {
    padding: 200px 0;
    background: url(../images/linie-schwung.svg)no-repeat center;
}

#logo-explained .flex-item:nth-child(1) .small-img {
    width: 16px;
    margin: 0 2px 5px 2px;
}

#logo-explained .flex-item:nth-child(1) .dreieck {
    width: 18px;
}

#logo-explained .flex-item:nth-child(2),
#immobilien .flex-item {
    text-align: center;
}

#logo-explained .flex-item:nth-child(2) img {
    width: 200px;
}

.parallax {
    background: url(../images/parallax.jpg)no-repeat center center / cover;
    width: 100%;
    height: 100%;
    background-attachment: fixed;
}

/*******************************
section8
*******************************/

#anbieten,
#cityservice,
#immobilien {
    padding: 150px 0;
}

#impressum {
    padding: 250px 0 150px 0;
}

#anbieten .wrapper {
    width: 40%;
}

#anbieten iframe {
    border: none;
    width: 100%;
    height: 1350px;
}

.btn,
#impressum a {
    color: #2a341a;
    text-decoration: underline;
}

.btn:hover,
#impressum a:hover {
    text-decoration: none;
}

#cityservice .flex-item {
    width: 20%;
}

#cityservice ul {
    margin-left: 14px;
}

#cityservice ul li {
    list-style: disc;
}

#cityservice ul li a {
    text-decoration: underline;
}

.btn-back {
    background-color: #899872;
    color: #fff;
    padding: 7px 30px;
}

.btn-back:hover {
    background-color: #2a341a;
}

#cityservice-details .relativ-wrapper .btn-back {
    margin-left: 10%;
    position: absolute;
    top: 5px;
    right: 0;
}

#logo-explained .flex-item:nth-child(2) .document {
    width: 50px;
    padding-right: 10px;
}

#logo-explained .flex-item:nth-child(2) .expose {
    display: flex;
    align-items: center;
}

/*******************************
Headline header left
*******************************/

.green-three::before,
.green-four::before,
.green-five::before,
.green-six::before,
.green-seven::before,
.green-eight::before,
.green-nine::before,
.green-ten::before,
.green-eleven::before {
    display: block;
    position: absolute;
    width: 80px;
    left: 5%;
    bottom: 0;
}

.green-three::before {
    content: url(../images/profil.svg);
    height: 550px;
}

.green-four::before {
    content: url(../images/suchen.svg);
    width: 80px;
    height: 550px;
}

.green-five::before {
    content: url(../images/anbieten.svg);
    width: 80px;
    height: 550px;
}

.green-six::before {
    content: url(../images/cityservice.svg);
    width: 80px;
    height: 648px;
}

.green-seven::before {
    content: url(../images/immobilien.svg);
    width: 80px;
    height: 645px;
}

.green-eight::before {
    content: url(../images/objekte.svg);
    width: 80px;
    height: 645px;
}

.green-nine::before {
    content: url(../images/referenzen.svg);
    width: 80px;
    height: 645px;
}

.green-ten::before {
    content: url(../images/highlight.svg);
    width: 80px;
    height: 598px;
}

.green-eleven::before {
    content: url(../images/objekt-uebersicht.svg);
    width: 80px;
    height: 645px;
}

/*******************************
Formular Suche von Immobilien
*******************************/

#anbieten form ul {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    font-family: 'Roboto'
}

#anbieten form ul li {
    margin-bottom: 15px;
}

#anbieten form ul li:nth-child(1) {
    width: 100%;
}

#anbieten form ul li:nth-child(2),
#anbieten form ul li:nth-child(3),
#anbieten form ul li:nth-child(4),
#anbieten form ul li:nth-child(5),
#anbieten form ul li:nth-child(6),
#anbieten form ul li:nth-child(7){
    width: 50%;
}

#anbieten form ul li:nth-child(3),
#anbieten form ul li:nth-child(5),
#anbieten form ul li:nth-child(7) {
    padding-left: 15px;
}

#anbieten form ul li:nth-child(2),
#anbieten form ul li:nth-child(4),
#anbieten form ul li:nth-child(6) {
    padding-right: 15px;
}

#anbieten form ul li:nth-child(8),
#anbieten form ul li:nth-child(9) {
    width: 100%;
}

.form-label {
    margin-top: 15px;
    display: block;
}

.text-input, .selectcontent {
    width: 100%;
    border: 1px solid #ddd;
    border-radius: 3px;
}

.selectcontent {
    padding: 6px;
    font-size: 13px;
}

.checkboxcontent {
    margin-right: 15px;
}

.checkboxcontent input {
    border: 1px solid #ddd;
}

.submit {
    width: 100%;
    border: none;
    background-color: #6d7a59;
    color: #fff;
    padding: 5px 0;
    transition: all 1s ease;
}

.submit:hover {
    background-color: #2a341a;
}

#anbieten form ul li:nth-child(10) {
    width: 100%;
}


/* ==========================================================================
   SLIDER
   ========================================================================== */

.rslides {
    position: relative;
    list-style: none;
    overflow: hidden;
    width: 100%;
    padding: 0;
    margin: 0;
}

.rslides li {
    -webkit-backface-visibility: hidden;
    position: absolute;
    display: none;
    width: 100%;
    left: 0;
    top: 0;
}

.rslides li:first-child {
    position: relative;
    display: block;
    float: left;
}

.rslides img {
    display: block;
    height: auto;
    float: left;
    width: 100%;
    border: 0;
}

.rslides_container {
    position: relative;
    float: left;
    width: 100%;
}

.centered-btns_nav {
    z-index: 3;
    position: absolute;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    top: 50%;
    left: 0;
    opacity: 0.7;
    text-indent: -9999px;
    overflow: hidden;
    text-decoration: none;
    height: 61px;
    width: 38px;
    background: transparent url(../images/themes.gif) no-repeat left top;
    margin-top: -45px;
}

.centered-btns_nav:active {
    opacity: 1.0;
}

.centered-btns_nav.next {
    left: auto;
    background-position: right top;
    right: 0;
}
.transparent-btns_nav {
    z-index: 3;
    position: absolute;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    top: 0;
    left: 0;
    display: block;
    background: #fff;
    /* Fix for IE6-9 */
    opacity: 0;
    filter: alpha(opacity=1);
    width: 48%;
    text-indent: -9999px;
    overflow: hidden;
    height: 91%;
}

.transparent-btns_nav.next {
    left: auto;
    right: 0;
}

.centered-btns_nav:focus,
.transparent-btns_nav:focus {
    outline: none;
}

.centered-btns_tabs,
.transparent-btns_tabs {
    margin-top: 10px;
    text-align: center;
}

.centered-btns_tabs li,
.transparent-btns_tabs li {
    display: inline;
    float: none;
    _float: left;
    *float: left;
    margin-right: 5px;
}

.centered-btns_tabs a,
.transparent-btns_tabs a {
    text-indent: -9999px;
    overflow: hidden;
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 15px;
    background: rgba(73, 87, 51, .2);
    display: inline-block;
    _display: block;
    *display: block;
    width: 9px;
    height: 9px;
}

.centered-btns_here a,
.transparent-btns_here a {
    background: #495733;
}

.left-highlight {
    padding-left: 50px;
}

table {
    border-collapse: collapse;
}

table tr {
    width: 100%;
    border: thin solid #899872;
}

table tr td {
    width: auto;
    border: thin solid #899872;
    padding: 5px;
}

/* ==========================================================================
   PopUp
   ========================================================================== */

#popup1,
#popup2 {
    transform: scale(0.8)
}

.popup_visible #popup1,
.popup_visible #popup2 {
    transform: scale(1)
}

.popup-style {
    margin: 2rem 0;
    width: 80%;
    min-height: 20px;
    padding: 2rem 1rem;
    background-color: #f5f5f5;
    border: 1px solid #e3e3e3;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05)
}
.video-popup.popup-style{
    background-color: transparent;
border: none;
box-shadow: none;
}

@media (min-width: 576px) {
    .popup-style {
        width: 70%;
    }
}

@media (min-width: 768px) {
    .popup-style {
        width: 60%;
    }
}

@media (min-width: 992px) {
    .popup-style {
        width: 50%;
    }
}

@media (min-width: 1200px) {
    .popup-style {
        width: 30%;
    }
}

.popup-style a {
    color: #6d7a59;
    text-decoration: underline;
}

.popup-style a:hover {
    text-decoration: none
}

.popup-style h4 {
    font-family: 'Roboto';
    font-weight: 300;
    font-size: 20px;
    color: #000;
    margin-bottom: 15px;
}

.popup-style p {
    color: #000;
    text-align: left
}


@media only screen and (min-width: 768px) {
    .popup-style {
        padding: 4rem 2rem
    }
}

button {
    margin: 0;
    padding: 0;
    background: none;
    border: none
}

.close-popup {
    transition: all 1s ease;
    cursor: pointer;
    position: fixed;
    top: 0.5rem;
    right: 0.5rem
}

.close-popup i {
    transition: all 1s ease;
    font-size: 2rem;
    color: #2a341a
}

.close-popup:hover i {
    color: #899872
}


/* ==========================================================================
   footer
   ========================================================================== */

.daten {
    position: fixed;
    background-color: #f2f2f2;
    width: 100%;
    font-weight: 300;
    bottom: 0;
    z-index: 1000;
    font-size: 14px;
    padding: 3px 0 3px 10%;
}

.daten p a {
    text-decoration: underline;
    padding-right: 5px;
}

.top {
    position: absolute;
    right: 10%;
    bottom: 3px;
}

.daten img {
    width: 23px;
}

/*******************************
textmarkierungen
*******************************/

::selection {
    background: #000;
    color: #fff;
    text-shadow: none
}

::-moz-selection {
    background: #000;
    color: #fff;
    text-shadow: none
}

/* ==========================================================================
     Cookie Hinweis
   ========================================================================== */

*{box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.dsa-cookie-notice-close:hover{background-color:#495733}.dsa-cookie-notice-close{position:absolute;display:block;height:23px;width:23px;bottom:-10px;right:0;text-decoration:none;color:#fff!important;background-color: #000;font-size: 20px;border-radius: 20px;line-height: 1.1;}.dsa-cookie-notice{font-family:'Roboto';font-size:12px;display:block;position:fixed;right:10%;bottom:70px;z-index:99999!important;background-color: rgba(42,52,26,0.9);margin:auto;width:300px;text-align:center; color: #fff; line-height: 2;}.cookie-inner a{color:#fff; text-decoration: underline;}.cookie-inner a:hover{text-decoration: none;}.dsa-cookie-notice.hide{display:none}.cookie-inner{padding:25px}

/* ==========================================================================
   media Queries
   ========================================================================== */

@media screen and (max-width: 1700px) {

    .logo img {
        width: 100px;
    }
    .slogan p {
        font-size: 30px;
    }
    .slogan img {
        width: 300px;
    }
    nav ul {
        right: 5%;
    }
    nav ul li {
        padding: 0 10px;
    }
    .header-content.breit .flex-item:nth-child(2) {
        padding: 0 5% 0 5%;
    }
    .header-content.breit .flex-item:nth-child(1) .slider-box {
        left: 15%;
    }
}

@media screen and (max-width: 1450px) {
    #objekte .flex-item:nth-child(2) {
        width: 558px;
    }
    .green-two {
        width: 500px;
    }
    .header-content .flex-item:nth-child(2) {
        padding: 0 5% 0 5%;
    }
}

@media screen and (max-width: 1366px) {
    .parallax {
        background-attachment: scroll;
    }
    .slogan {
        padding: 150px 0;
    }
}

@media screen and (max-width: 1300px) {
    nav ul {
        display: none;
    }
    .open-menu {
        display: block;
        position: fixed;
        top: 15px;
        right: 5%;
        width: 56px;
        height: 50px;
        cursor: pointer;
        z-index: 10000;
        transition: all 1s;
        background-color: #fff;
    }
    .open-menu img {
        width: 41px;
        height: 31px;
        position: absolute;
        top: 9px;
        left: 7px;
        margin: 0;
    }
    .sidenav {
        display: block;
        height: 100%;
        width: 0;
        position: fixed;
        z-index: 999999;
        top: 0;
        right: 0;
        background: rgba(42,52,26,0.9);
        overflow-x: hidden;
        transition: 0.5s;
        padding-top: 15px;
    }
    .sidenav a {
        padding: 17px 0 8px 0;
        text-decoration: none;
        font-size: 17px;
        color: #fff;
        display: block;
        transition: 0.3s;
        font-family: 'Roboto';
        text-align: center;
    }
    .sidenav a:nth-child(2) {
        margin-top: 70px;
    }
    .sidenav a:hover,
    .offcanvas a:focus {
        font-weight: bold
    }
    .sidenav .closebtn {
        position: absolute;
        top: 0;
        right: 25px;
        font-size: 36px;
        margin-left: 50px;
    }
    .wrapper {
        width: 90%;
    }
    .green::before {
        width: 60px;
        height: 556px;
        left: 2%;
    }
    .green-two::before {
        width: 60px;
        height: 540px;
    }
    #kontakt::before {
        width: 60px;
        height: 500px;
        left: 2%;
    }
    .green-three::before,
    .green-four::before,
    .green-five::before,
    .green-ten::before {
        width: 50px;
        height: 360px;
        bottom: -10px;
        left: 2%;
    }
    .green-six::before,
    .green-seven::before,
    .green-eight::before,
    .green-nine::before,
    .green-eleven::before {
        width: 50px;
        height: 400px;
        left: 2%;
    }
    .header-content .flex-item:nth-child(1) .slider-box {
        left: 15%;
    }
    #referenzen-infos .flex-item:nth-child(1) {
        padding-right: 4%;
    }
    #kontakt .flex-item:nth-child(1),
    #kontakt .flex-item:nth-child(1) img {
        width: 220px;
    }
    #anbieten .wrapper {
        width: 60%;
    }
    .header-content.breit {
        height: auto;
        color: #fff;
    }
    .header-content.breit a {
        color: #fff;
    }
    .header-content.breit .flex-item:nth-child(1) {
        margin-left: 0;
    }
    .header-content.breit .flex-item:nth-child(1) img {
        width: 80%;
        height: 300px;
        object-fit: cover;
        margin-left: 10%;
    }
    .header-content.breit .flex-item:nth-child(1),
    .header-content.breit .flex-item:nth-child(2) {
        width: 100%
    }
    .header-content.breit .flex-container {
        flex-direction: column-reverse;
    }
    .header-content.breit .flex-item:nth-child(2) {
        padding: 100px 10% 30px 10%;
    }
    .header-content.breit .flex-item:nth-child(1) .slider-box {
        left: 0;
        padding-left: 10%;
    }
    .header-content.breit .flex-item:nth-child(1) {
        padding-top: 0;
    }
    .header-content.breit p {
        margin-bottom: 15px;
    }
    .header-content.breit .green-three,
    .header-content.breit .green-six {
        width: 100%;
        height: 110%;
    }
    .header-content.breit .flex-container {
        height: auto;
        padding-top: 100px;
        margin-bottom: 100px;
    }
}

@media screen and (max-width: 1050px) {
    .green::before {
        width: 45px;
        height: 400px;
    }
    .header-content {
        height: auto;
        color: #fff;
    }
    .header-content a {
        color: #fff;
    }
    .header-content .flex-item:nth-child(1) {
        margin-left: 0;
    }
    .header-content .flex-item:nth-child(1) img {
        width: 80%;
        height: 300px;
        object-fit: cover;
        margin-left: 10%;
    }
    .header-content .flex-item:nth-child(1),
    .header-content .flex-item:nth-child(2),
    #objekte .flex-item:nth-child(1),
    #objekte .flex-item:nth-child(2),
    #gedanken .flex-item,
    #leistungen .flex-item,
    #logo-explained .flex-item,
    #immobilien .flex-item,
    #impressum .flex-item,
    #cityservice-details .flex-item {
        width: 100%;
    }
    #objekte .flex-container,
    #referenzen-infos .flex-container,
    #kontakt .flex-container,
    #gedanken .flex-container,
    #leistungen .flex-container,
    #logo-explained .flex-container,
    #cityservice .flex-container,
    #immobilien .flex-container,
    #impressum .flex-container,
    #cityservice-details .flex-container {
        flex-wrap: wrap;
    }
    #leistungen .flex-item:nth-child(1),
    #logo-explained .flex-item:nth-child(1) {
        margin-bottom: 50px;
    }
    .header-content .flex-container {
        flex-direction: column-reverse;
    }
    .slider img {
        width: 100%;
        height: 37vH;
        object-fit: cover;
    }
    .header-content .flex-item:nth-child(2) {
        padding: 100px 10% 30px 10%;
    }
    .header-content .flex-item:nth-child(1) .slider-box {
        left: 0;
        padding-left: 10%;
    }
    .header-content .flex-item:nth-child(1) {
        padding-top: 0;
    }
    .header-content p,
    .border-left {
        margin-bottom: 15px;
    }
    .slogan {
        padding: 120px 25px;
    }
    .slogan p {
        font-size: 20px;
        line-height: 2;
    }
    .slogan img {
        width: 220px;
    }
    .border-left {
        border-left: 5px solid #2a341a;
    }
    #objekte .flex-item:nth-child(1) {
        padding: 0 10% 150px 10%;
    }
    #objekte .flex-item:nth-child(2) {
        padding: 25px 10% 0 10%;
    }
    .flexbox:nth-child(1) img,
    .flexbox:nth-child(2) img,
    .flexbox:nth-child(3) img{
        height: 250px;
        width: 90%;
    }
    .flexbox {
        top: -50px;
    }
    .green-two {
        width: 100%;
        height: 95vH;
        top: auto;
        bottom: 0;
    }
    .flexbox:nth-child(1) span,
    .flexbox:nth-child(2) span,
    .flexbox:nth-child(3) span {
        left: -96px;
        bottom: 96px;
    }
    .flexbox:nth-child(1) span {
        padding: 15px 102px 15px 20px;
    }
    .flexbox:nth-child(2) span {
        padding: 15px 75px 15px 20px;
    }
    .flexbox:nth-child(3) span {
        padding: 15px 121px 15px 20px;
    }
    #referenzen-infos {
        padding: 150px 0;
    }
    #referenzen-infos .flex-item {
        width: 50%;
    }
    #referenzen-infos .flex-item:nth-child(3) {
        width: 100%;
    }
    #referenzen-infos .flex-item:nth-child(3) img {
        right: auto;
        left: calc(50% - 150px);
        margin-top: 50px;
    }
    #kontakt .flex-container,
    #cityservice .flex-container {
        justify-content: flex-start;
    }
    #kontakt .flex-item:nth-child(3) {
        width: 100%;
    }
    #kontakt .flex-item:nth-child(1) {
        padding-top: 100px;
    }
    #kontakt .flex-item:nth-child(2) {
        width: 300px;
        padding-top: 100px;
        padding-left: 50px;
    }
    #kontakt .flex-item:nth-child(3) img {
        height: 460px;
        object-position: top;
    }
    #gedanken .flex-item:nth-child(1),
    #leistungen .flex-item:nth-child(1),
    #immobilien .flex-item:nth-child(1),
    #impressum .flex-item:nth-child(1),
    #cityservice-details .flex-item:nth-child(1) {
        padding-right: 0;
    }
    #gedanken .flex-item:nth-child(2),
    #leistungen .flex-item:nth-child(2),
    #immobilien .flex-item:nth-child(2),
    #impressum .flex-item:nth-child(2),
    #cityservice-details .flex-item:nth-child(2) {
        padding-left: 0;
    }
    #anbieten .wrapper {
      width: 80%;
    }
    #cityservice .flex-item {
        width: 50%;
        margin-bottom: 25px;
    }
    #immobilien .flex-item:nth-child(1) {
        margin-bottom: 53px;
    }
    .slogan .duft {
        width: 600px;
    }
    #highlight .flex-container {
        flex-direction: column-reverse;
    }
    .left-highlight {
        padding-left: 0;
        padding-bottom: 50px;
    }
    .green, .green-three, .green-four, .green-five, .green-six, .green-seven, .green-eight, .green-nine, .green-ten, .green-eleven {
        width: 100%;
        height: 110%;
    }
    .header-content .flex-container {
        height: auto;
        padding-top: 100px;
        margin-bottom: 100px;
    }
}

@media screen and (max-width: 800px) {
    #home {
        height: auto;
    }
    .header-content {
        margin-bottom: 100px;
    }
    #referenzen-infos .flex-item {
        width: 100%;
    }
    #referenzen-infos .flex-item:nth-child(1) {
        padding-right: 0;
    }
    #referenzen-infos .flex-item:nth-child(2) {
        padding: 0;
        margin-bottom: 25px;
    }
    #kontakt {
        padding-left: 0;
    }
    #kontakt::before {
        left: auto;
        right: 2%;
        z-index: 100;
    }
    #kontakt .flex-item:nth-child(1) {
        padding-left: 5%;
    }
}

@media screen and (max-width: 610px) {
    aside {
      top: 25px;
        width: 70px;
        height: 70px;
    }
    .logo img {
      width: 70px;
    }
    aside span {
        width: 70px;
        height: 70px;
    }
    .green::before,
    .green-three::before,
    .green-four::before,
    .green-five::before,
    .green-six::before,
    .green-seven::before,
    .green-eight::before,
    .green-nine::before,
    .green-ten::before,
    .green-eleven::before {
      display: none;
    }
    .header-content .flex-item:nth-child(2) {
      padding: 75px 5% 30px 5%;
    }
    .header-content .flex-item:nth-child(1) .slider-box {
        padding-left: 5%;
        padding-right: 5%;
    }
    .header-content .flex-item:nth-child(1) img {
        width: 90%;
        margin-left: 5%;
    }
    .border-left {
        font-size: 16px;
    }
    .header-content p {
        font-size: 14px;
        line-height: 24px;
    }
    .flexbox:nth-child(1) img,
    .flexbox:nth-child(2) img,
    .flexbox:nth-child(3) img{
        width: 100%;
    }
    .flexbox {
        top: -20px;
    }
    .green-two::before {
        width: 40px;
        height: 368px;
        right: auto;
        bottom: -110px;
        transform: rotate(90deg);
        left: 11px;
    }
    #objekte .flex-item:nth-child(1) {
        padding: 0 5%;
    }
    #objekte .flex-item:nth-child(2) {
        padding: 25px 5% 0 5%;
    }
    h2 {
        font-size: 40px;
    }
    #kontakt::before {
        width: 40px;
        height: 300px;
    }
    #kontakt .flex-item:nth-child(1) {
        position: relative;
        z-index: 1;
        padding-bottom: 100px;
    }
    #kontakt .flex-item:nth-child(1),
    #kontakt .flex-item:nth-child(1) img {
        width: 150px;
    }
    #kontakt .flex-item:nth-child(2) {
        width: 250px;
        padding-top: 0;
        position: relative;
        z-index: 1;
    }
    #kontakt .flex-item:nth-child(2) p {
        font-size: 14px;
        line-height: 1.8;
    }
    #kontakt .flex-item:nth-child(3) img {
        position: absolute;
        bottom: 0;
        z-index: 0;
        opacity: 0.5;
    }
    .daten {
        padding: 3px 80px 3px 5%;
    }
    .top, .dsa-cookie-notice {
        right: 5%;
    }
    #logo-explained, #leistungen, #gedanken, #immobilien, #impressum {
        padding: 100px 0;
    }
    #anbieten .wrapper {
      width: 90%;
    }
    .slogan .duft {
        width: 400px;
    }
    .route-planen {
        width: 100%;
        padding: 72px 0 75px 0;
        padding-left: calc( 50% - 175px );
    }
    #routen-planer .rmvWidgetWrap h4.boxtitle {
        padding: 0 79px 0 0!important;
    }
    #cityservice-details .relativ-wrapper .btn-back {
            margin-left: 0;
            position: relative;
            top: -18px;
            right: auto;
            left: 0;
    }
    .green-bg {
            width: 80%;
            margin-left: 10%;
    }
    #frontpage .welcome {
    margin-left: 2%;
    width: 90%;
}
}

@media screen and (max-width: 450px) {
    #kontakt .flex-container {
        flex-direction: column-reverse;
    }
    #kontakt .flex-item:nth-child(1) {
        width: 100%;
        padding-top: 25px;
    }
    #kontakt .flex-item:nth-child(2) {
        width: 100%;
        padding-top: 100px;
        left: 0;
        padding-left: 5%;
    }
    body {
        font: 14px/24px 'Roboto', sans-serif
    }

    #cityservice .flex-item {
        width: 100%;
    }
    #anbieten form ul li:nth-child(2), #anbieten form ul li:nth-child(3), #anbieten form ul li:nth-child(4), #anbieten form ul li:nth-child(5), #anbieten form ul li:nth-child(6), #anbieten form ul li:nth-child(7) {
        width: 100%;
    }
    #anbieten form ul li:nth-child(3), #anbieten form ul li:nth-child(5), #anbieten form ul li:nth-child(7) {
        padding-right: 0;
    }
    #anbieten form ul li:nth-child(2), #anbieten form ul li:nth-child(4), #anbieten form ul li:nth-child(6) {
        padding-left: 0;
    }
    .form-label {
        margin-top: 0;
    }
    .slogan .duft {
        width: 280px;
    }
    .header-content .flex-item:nth-child(1) img {
        height: auto;
        object-fit: contain;
    }
    table {
        font-size: 10px;
    }
}

@media screen and (max-width: 400px) {
    .border-left {
      font-size: 14px;
      line-height: 24px;
    }
    .header-content p {
      font-size: 12px;
      line-height: 19px;
    }
    h1, h2 {
      font-size: 35px;
    }
    #anbieten {
      padding: 100px 0;
    }
    .header-content .flex-item:nth-child(2) {
        padding: 75px 5% 30px 5%;
    }
}

@media screen and (max-width: 350px) {
    .slider img {
        height: 15vH;
    }
    .daten {
        line-height: 1.5;
    }
    #WidgetExample {
        width: 320px!important;
        margin-left: auto;
        margin-right: auto;
    }
    #routen-planer .btn-back {
        margin-left: calc(50% - 155px);
    }
}

.hidden
{
    display: none;
}

.video{
  width: 100%;
}
