@import url("reset.css");

/*-----------FONTS-----------*/

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

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

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

/* baskervville-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Baskervville';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/baskervville-v19-latin-regular.eot'); /* IE9 Compat Modes */
  src: url('../fonts/baskervville-v19-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/baskervville-v19-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/baskervville-v19-latin-regular.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('../fonts/baskervville-v19-latin-regular.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('../fonts/baskervville-v19-latin-regular.svg#Baskervville') format('svg'); /* Legacy iOS */
}

/* baskervville-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Baskervville';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/baskervville-v19-latin-500.eot'); /* IE9 Compat Modes */
  src: url('../fonts/baskervville-v19-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/baskervville-v19-latin-500.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/baskervville-v19-latin-500.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('../fonts/baskervville-v19-latin-500.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('../fonts/baskervville-v19-latin-500.svg#Baskervville') format('svg'); /* Legacy iOS */
}

/* baskervville-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Baskervville';
  font-style: italic;
  font-weight: 500;
  src: url('../fonts/baskervville-v19-latin-500italic.eot'); /* IE9 Compat Modes */
  src: url('../fonts/baskervville-v19-latin-500italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/baskervville-v19-latin-500italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/baskervville-v19-latin-500italic.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('../fonts/baskervville-v19-latin-500italic.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('../fonts/baskervville-v19-latin-500italic.svg#Baskervville') format('svg'); /* Legacy iOS */
}

/* baskervville-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Baskervville';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/baskervville-v19-latin-600.eot'); /* IE9 Compat Modes */
  src: url('../fonts/baskervville-v19-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/baskervville-v19-latin-600.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/baskervville-v19-latin-600.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('../fonts/baskervville-v19-latin-600.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('../fonts/baskervville-v19-latin-600.svg#Baskervville') format('svg'); /* Legacy iOS */
}




/*-----------FONTGESTALTUNG-----------*/

body {font-family: 'Roboto'; overflow-x: hidden!important;}
p {font-size: 15px; font-weight: 300; line-height: 25px; margin-bottom: 15px;}
a {color: #000; text-decoration: none; cursor: pointer;}
h1 {font-size: 40px; line-height: 40px; font-family: 'Baskervville'; font-weight: 500;  margin-bottom: 30px; color: #fff;}
h2 {font-size: 50px; line-height: 45px; font-family: 'Baskervville'; font-weight: 500; text-transform: uppercase; margin-bottom: 10px; color: #40af60;}
h3 {font-size: 30px; font-family: 'Baskervville'; font-weight: 500; margin-bottom: 30px; color: #6aae30;}
h4 {font-size: 60px; line-height: 50px; font-family: 'Baskervville'; font-weight: 500; text-transform: none; color: #fff;}
li {font-size: 15px; line-height: 25px; margin-bottom: 5px; list-style-image: url(../images/li.png);}
strong {font-weight: 500;}


/*-----------AUFBAU-----------*/

html {scroll-behavior: smooth; overflow-x: hidden;}
.flex {display: flex;}
.content {display: flex; width: 80%; margin-left: 10%; justify-content: space-between;}
.col1 {width: 60%; margin-left: 20%; text-align: center;}
.col2 {width: 45%; position: relative;}
.col3 {width: 30%; text-align: center;}

.headline {position: relative; padding-left: 40px}
.headline::before {content: url(../images/form-headline.png); position: absolute; left: 0; top: 0;}

.btn {font-family: 'Baskervville'; background-color: #7abf90; color: #fff; padding: 10px 20px; border-radius: 10px; transition: 0.5s;}
.btn:hover {background-color: #1e9641;}
::-moz-selection {background: #128c35; color: #fff;}
::selection {background: #128c35; color: #fff;}


/*-----------NAVI-----------*/

.logo {position: fixed; width: 150px; height: auto; top: 10px; left: 5%; z-index: 999;}
nav {position: fixed; background: #fff; width: 100%; z-index: 101; top: 0; text-align: right; padding: 50px 0; z-index: 100;}
nav ul {margin-right: 5%;}
nav ul li {display: inline-block; margin: 0 2%; text-transform: uppercase;}
nav ul li a {font-family: 'Baskervville'; font-weight: 600;  text-decoration: none; font-size: 16px; color: #40af60; position: relative;}
nav ul li a:hover::before {content: url(../images/form-small.png); position: absolute; left: -15px; top: -5px;}

.navi {display: none;}
.burger-nav {position: fixed; right: 0; top: -6px; color: #fff; z-index: 9999; -webkit-transform: rotate(-90deg); transform: rotate(-90deg); font-size: 40px; cursor: pointer; transition: all .4s ease-in-out; background-color: #40af60; padding: 16px 21px 21px 19px; border-radius: 20px 0 0 0;}
.burger-nav b {transition: all .4s ease-in-out; float: left; margin-left: 0; font-family: 'Roboto'; font-style: normal;}
.burger-nav-anim {top: -5px; color: #fff;}
.burger-nav-anim b:first-of-type {-webkit-transform: rotate(45deg); transform: rotate(45deg);}
.burger-nav-anim b:nth-of-type(2) {opacity: 0;}
.burger-nav-anim b:last-of-type {-webkit-transform: rotate(-45deg); transform: rotate(-45deg); margin-left: -80%;}

.full-screen-nav {position: fixed; z-index: 9998; width: 100%; height: 100vh; background: #40af60; display: table; visibility: hidden; transition: all .4s ease-in-out; opacity: 0;}
.full-screen-nav ul {text-align: center; display: table-cell; vertical-align: middle; width: 100%;}
.full-screen-nav ul li a {padding: 20px; display: block; font-size: 30px; color: #fff; transition: all .4s ease-in-out; text-decoration: none;}
.fadeIn {opacity: 1 !important; visibility: visible !important;}
.fadeUp {opacity: 1 !important; margin-top: 0 !important;}


/*-----------ASIDE-----------*/

aside img {position: fixed; background: rgba(64,175,96,0.8); width: 40px; z-index: 999; right: 10px; transition: 0.5s; border-radius: 100%;}
aside img:hover {background-color: #6d6d6d;}
.phone {top: 300px;}
.mail {top: 370px;}
.maps {top: 440px;}


/*-----------SUBNAV-----------*/

.subnav {position: fixed; bottom: 20px; color: #fff; z-index: 999; transition: 0.5s; width: 100%; text-align: right;}
.subnav a {font-family: 'Roboto'; color: #fff; padding: 8px 15px; font-size: 13px; background-color: #6aae30; margin-left: 20px; line-height: 23px; border-radius: 10px;}
.subnav a:nth-of-type(2) {margin-right: 5%;}
.subnav a:hover {background-color: #40af60;}


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

header {position: relative;}

.slick-slider2 {width: 100%!important; height: 100vh; margin: 0!important; position: relative;}
.slick2:nth-of-type(1) {background: url("../images/header-1.jpg") no-repeat; height: 100vh; width: 100%; background-size: cover; background-attachment: fixed; background-position: center; position: relative;}
.slick2:nth-of-type(2) {background: url("../images/header-1.jpg") no-repeat; height: 100vh; width: 100%; background-size: cover; background-attachment: fixed; background-position: center; position: relative;}
.slick2:nth-of-type(3) {background: url("../images/header-2.jpg") no-repeat; height: 100vh; width: 100%; background-size: cover; background-attachment: fixed; background-position: center; position: relative;}

.small {background: url("../images/header-2.jpg") no-repeat; height: 70vh; width: 100%; background-size: cover; background-attachment: fixed; background-position: center; position: relative;}

header .welle {position: absolute; width: 101%; height: auto; left: -5px; bottom: 0;}

#stoerer {position: absolute; left: 10%; bottom: 20vh; background: rgba(64,175,96,0.8); padding: 30px 50px; border-radius: 30px; z-index: 99;}


/*-----------ÜBER UNS/IMPRESSUM-----------*/

#ueberuns, #impressum {padding: 120px 0; background-color: #dcf1e2; position: relative;}
.zweithaar {width: 100%; height: auto; max-width: 500px;}

#impressum a {text-decoration: underline;}


/*-----------LEISTUNGEN-----------*/

#leistungen {padding: 120px 0 0; position: relative;}
#leistungen .welle {position: absolute; width: 101%; height: auto; left: -5px; top: 0;}
#leistungen .col1 {padding: 100px 0 50px;}

#leistungen .headline {padding-left: 0;}
#leistungen .headline::before {position: relative;}

.box {width: 50%; height: auto; position: relative; margin-bottom: -5px}
.box::after {content: url(../images/arrow.png); position: absolute; z-index: 99; right: 30px; bottom: 30px;}
.box h4:hover {transform: scale(1.2); z-index: 9; transition: 0.5s;}
.textbox {position: absolute; text-align: center; width: 90%; margin: 27% 5%;}
.box-img {object-fit: cover; width: 100%; height: auto;}

.popup-style {margin: 0; width: 80%; min-height: 20px; padding: 80px 5%; 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); transform: scale(1)}

.popup-style h2 {color: #40af60; font-size: 30px; text-transform: none;}
.popup-style h3 {color: #6aae30; font-size: 20px; margin-bottom: 10px; text-transform: none;}
.popup-style p {color: #000; text-align: left;}
button {margin: 0; padding: 0; background: none; border: none}
.close-popup {transition: all 1s ease; color: #40af60; font-weight: 700; cursor: pointer; font-size: 20px; position: fixed; top: 0.5rem; right: 0.5rem}


/*-----------SERVICE-----------*/

#service {padding: 200px 0 150px; background-color: #dcf1e2; position: relative;}
#service li {list-style-position: inside;}
.verdichtung {width: 100%; height: auto;}

.textkreis {position: absolute; bottom: -80px; right: -20px; background-color: rgba(64,175,96,0.9); border-radius: 100%; width: 300px; height: 300px; text-align: center;}
.textkreis p {font-size: 14px; font-weight: 500; color: #fff; padding: 70px 30px;}


/*-----------GALERIE-----------*/

#galerie {padding: 200px 0 100px; position: relative; text-align: center;}
#galerie .welle {position: absolute; width: 101%; height: auto; left: -5px; top: 0;}

#galerie .headline {padding-left: 0;}
#galerie .headline::before {position: relative;}
.slick-slider {width: 80%; margin-left: 10%;}


/*-----------PUFFER-----------*/

.puffer1 {background: url("../images/platzhalter.jpg") no-repeat; height: 300px; width: 100%; background-size: cover; background-attachment: fixed; background-position: center top; position: relative;}

.puffer2 {background: url("../images/platzhalter.jpg") no-repeat; height: 300px; width: 100%; background-size: cover; background-attachment: fixed; background-position: center; position: relative;}

.puffer3 {background: url("../images/platzhalter.jpg") no-repeat; height: 300px; width: 100%; background-size: cover; background-attachment: fixed; background-position: center; position: relative;}


/*-----------FOOTER-----------*/

footer {padding: 200px 0 150px; background-color: #dcf1e2; position: relative;}
footer h2 {font-size: 30px; margin-bottom: 0;}
footer h3 {font-size: 25px;}
footer p {font-size: 18px; line-height: 25px; font-weight: 400;}
footer a {text-decoration: underline;}

footer .col3 {text-align: left;}

.adresse, .telefon, .fax, .email, .zeit {position: relative;}
.adresse::before {content: url(../images/adresse.png); position: absolute; left: -30px; top: 0;}
.telefon::before {content: url(../images/telephone.png); position: absolute; left: -30px; top: 0;}
.fax::before {content: url(../images/fax.png); position: absolute; left: -30px; top: 0;}
.email::before {content: url(../images/email.png); position: absolute; left: -30px; top: 0;}
.zeit::before {content: url(../images/zeit.png); position: absolute; left: -30px; top: 0;}


/*-----------RESPONSIVE-----------*/

@media screen and (max-width: 1366px) {
    header, .puffer1, .puffer2 {background-attachment: scroll;}
}

@media screen and (max-width: 1000px) {
    .logo {position: absolute;}
    header, .slick2:nth-of-type(1), .slick2:nth-of-type(2), .slick2:nth-of-type(3) {height: 75vh;}
    .small {height: 50vh; width: 100%;}
    #stoerer {left: 5%; bottom: 10vh;}
    .slick-arrow {display: none!important;}
    
    nav {background: none; box-shadow: 0 0 0;}
    nav ul{display: none;}
    .navi {display: block;}
    
    h2 {font-size: 30px; line-height: 40px; margin-bottom: 0;}
    h3 {font-size: 22px;}
    
    .flex {flex-direction: column;}
    .box {width: 100%;}
    
    #service, #galerie {padding: 100px 0;}
    #leistungen {padding: 100px 0 0;}    
    #leistungen .col1 {padding: 0 0 50px}

@media screen and (max-width: 800px) {
    h1 {font-size: 25px; line-height: 30px;}
    
    .content {flex-direction: column;}
    .col2, .col3 {width: 100%;}
    .col2 {margin-bottom: 50px;}
    footer .content {width: 60%; margin-left: 20%;}
}

@media screen and (max-width: 500px) {
     h4 {font-size: 40px;}
    
    .textkreis {bottom: -130px;}
}