/* @override 
	https://johannes-wille.de/css/creative.css */


body,
html {
  width: 100%;
  height: 100%;
}

body {
	font: 16px 'Open Sans', sans-serif;
}

hr {
  max-width: 50px;
  border-width: 3px;
  border-color: #F05F40;
}

hr.light {
  border-color: #fff;
}

a {
  color: #6db52c;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}

a:hover {
  color: #9c9c9c;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Bebas Neue', cursive, sans-serif;
  text-align: left;
}

.bg-primary {
  background-color: #eeeeee !important;

}

.bg-dark {
  background-color: #212529 !important;
}

.text-faded {
  color: rgba(255, 255, 255, 0.7);
}

section {
  height: 100vh;
  background: url("../img/jw-background-t.png") left top no-repeat;
  background-size: cover;
}

section .container {
  height: 100vh;
}

#st {
  background: url("../img/jw-background-t.png") left top repeat-y;
}

div#st.bg-primary div.container div.row {
	padding-top: 200px;
}

.section-heading {
  margin-top: 0;
}

::-moz-selection {
  color: #fff;
  background: #212529;
  text-shadow: none;
}

::selection {
  color: #fff;
  background: #212529;
  text-shadow: none;
}

img::-moz-selection {
  color: #fff;
  background: transparent;
}

img::selection {
  color: #fff;
  background: transparent;
}

img::-moz-selection {
  color: #fff;
  background: transparent;
}

#mainNav img {
	width: 200px;
	margin-top: 5px;
}

#mainNav {
  border-bottom: 1px solid rgba(33, 37, 41, 0.1);
  background-color: #fff;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}

#mainNav .navbar-brand {
  text-transform: uppercase;
  color: #6cb52c;
}

#mainNav .navbar-brand:focus, #mainNav .navbar-brand:hover {
  color: #6cb52c;
}

#mainNav .navbar-nav > li.nav-item > a.nav-link,
#mainNav .navbar-nav > li.nav-item > a.nav-link:focus {
  font: 21px/21px 'Bebas Neue', cursive, sans-serif !important;
  font-weight: 700;
  text-transform: uppercase;
  color: #212529;
  letter-spacing: 1px;
}

#mainNav .navbar-nav > li.nav-item > a.nav-link:hover,
#mainNav .navbar-nav > li.nav-item > a.nav-link:focus:hover {
  color: #6cb52c;
}

#mainNav .navbar-nav > li.nav-item > a.nav-link.active,
#mainNav .navbar-nav > li.nav-item > a.nav-link:focus.active {
  color: #6cb52c !important;
  background-color: transparent;
}

#mainNav .navbar-nav > li.nav-item > a.nav-link.active:hover,
#mainNav .navbar-nav > li.nav-item > a.nav-link:focus.active:hover {
  background-color: transparent;
}

@media (min-width: 992px) {
  #mainNav {
    border-color: transparent;
    background-color: transparent;
  }
  #mainNav .navbar-brand {
    color: rgba(255, 255, 255, 0.7);
  }
  #mainNav .navbar-brand:focus, #mainNav .navbar-brand:hover {
    color: #fff;
  }
  #mainNav .navbar-nav > li.nav-item > a.nav-link {
  	padding-top: 10px;
  	padding-right: 10px;
  	padding-left: 10px;
  }
  #mainNav .navbar-nav > li.nav-item > a.nav-link,
  #mainNav .navbar-nav > li.nav-item > a.nav-link:focus {
    color: rgba(255, 255, 255, 0.7);
  }
  #mainNav .navbar-nav > li.nav-item > a.nav-link:hover,
  #mainNav .navbar-nav > li.nav-item > a.nav-link:focus:hover {
    color: #fff;
  }
  #mainNav.navbar-shrink {
    border-bottom: 1px solid rgba(33, 37, 41, 0.1);
    background-color: #fff;
  }
  #mainNav.navbar-shrink .navbar-brand {
    color: #6db52c;
  }
  #mainNav.navbar-shrink .navbar-brand:focus, #mainNav.navbar-shrink .navbar-brand:hover {
    color: #6db52c;
  }
  #mainNav.navbar-shrink .navbar-nav > li.nav-item > a.nav-link,
  #mainNav.navbar-shrink .navbar-nav > li.nav-item > a.nav-link:focus {
    color: #212529;
  }
  #mainNav.navbar-shrink .navbar-nav > li.nav-item > a.nav-link:hover,
  #mainNav.navbar-shrink .navbar-nav > li.nav-item > a.nav-link:focus:hover {
    color: #6db52c;
  }
}

header.masthead {
	background: url("../img/jw-background-t20.png") left top no-repeat;
	background-size: cover;
	height: 100vh;
    min-height: 650px;
    padding-top: 0;
    padding-bottom: 0;
}

header.masthead hr {
  margin-top: 30px;
  margin-bottom: 30px;
}

header.masthead h1 {
	font-size: 6vw !important;
}

header.masthead h2 {
	font-size: 2vw !important;
}

header.masthead p {
  font-weight: 300;
}


.video-container {
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../img/jw-g-f-l.png) left bottom no-repeat;
	background-size: 40% ;
}

.video-container .text {
	position: absolute;
	bottom: 240px;
	left: 100px;
}

.vimeo-wrapper {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   z-index: -1;
   pointer-events: none;
   overflow: hidden;
}

.vimeo-wrapper iframe {
   width: 100vw;
   height: 56.25vw; /* Given a 16:9 aspect ratio, 9/16*100 = 56.25 */
   min-height: 100vh;
   min-width: 177.77vh; /* Given a 16:9 aspect ratio, 16/9*100 = 177.77 */
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
}



ul {
	padding-left: 60px;
	list-style: none;
}

section ul li::before {
  content: "\2022";
  color: #6db52c;
  font-weight: bold;
  display: inline-block; 
  width: 1em;
  margin-left: -1em;
}

#s1 .row {
	position: relative;
	top: calc(50% - 330px);;
}

.bild2 {
	background: url(../img/Johannes-Wille-Portraet.png) right top no-repeat;
	background-size: contain;
	height: 50vh;
	width: 45vh;
	top: calc(50% - 330px);;
}

.text2 {
	margin-top: auto;
	margin-bottom: auto;
}

#s2 .row {
	position: relative;
	top: calc(50% - 330px);;
}

#s2 h1 {
	margin-bottom: 30px;
}

#s2 h3 {
	background: url(../img/schild.png) left 4px no-repeat;
	background-size: 32px 22px;
	padding-left: 40px;
}

#s2 p {
	padding-left: 40px;
}

.text3-1 {
	margin-bottom: 20px;
	padding-left: 0;
}

.text3-2 {
	margin-bottom: 20px;
	padding-left: 0;
}

.text3-3 {
	margin-bottom: 20px;
	padding-left: 0;
}

#s3 .row {
	position: relative;
	top: calc(50% - 330px);;
}

#s3 h1 {
	margin-bottom: 30px;
}

#s3 h3 {
	background: url(../img/schild.png) left 4px no-repeat;
	background-size: 32px 22px;
	padding-left: 40px;
}

#s3 p {
	padding-left: 40px;
}


#s4 .row {
	position: relative;
	top: calc(50% - 330px);;
}
#s4 h1 {
	margin-bottom: 30px;
}

#s4 h3 {
	background: url(../img/schild.png) left 4px no-repeat;
	background-size: 32px 22px;
	padding-left: 40px;
}

#s4 p {
	padding-left: 40px;
}

#s5 .row {
	position: relative;
	top: calc(50% - 250px);
	background: url(../img/jw-background-r.png) right bottom no-repeat;
	background-size: 70%;
	height: 500px;
	color: #fff;
}

#s5 h1.headline5 {
	margin-top: 100px;
}

#s5 h3 {
	margin-bottom: 0;
}

#s5 a {
	color: #fff;
}

div#st.bg-primary div.container div.row h1.headline3 {
display: block;
width: 100%;
margin-bottom: 30px;
}

footer {
	background-color: #dadcda;
}

.footer {
	position: relative;
	display: block;
	padding: 8px 8px 5px 10px;
	font-family: 'Bebas Neue', cursive, sans-serif;
}

.footer a{
	float: right;
	color: #000 !important;
}

.footer a:hover{
	float: right;
	color: #6db52c !important;
}


@media (max-width: 380px) {
	
	header.masthead {
	    height: 100vh;
	    min-height: 568px;
	    padding-top: 0;
	    padding-bottom: 0;
	}

	.masthead.text-center.text-white.d-flex div.video-container {
		background-size: 90%;		
	}
	
	
	.video-container .text {
		position: absolute;
		bottom: 16%;
		left: 50px;
	}
	body#page-top header.masthead.text-center.text-white.d-flex div.video-container div.text h1 {
		font-size: 46px !important;
		padding-left: 0;
	}
	
	body#page-top header.masthead.text-center.text-white.d-flex div.video-container div.text h2 {
		font-size: 28px !important;
	}
	
	.navbar-toggler {
		margin-bottom: 10px;
	}
	
	.navbar-nav {
		margin-bottom: 10px;
	}
	
	.nav-item {
		border-bottom: 1px solid #cfcfcf;
	}
	
	section {
		height: 880px;
	}
	
	
	#s1 .row {
		position: relative;
		top: calc(50% - 330px);;
		padding-top: 40px;
	}
	
	.bild2 {
		background: url(../img/Johannes-Wille-Portraet.png) 15px top no-repeat;
		background-size: contain;
		height: 40vh;
		top: calc(50% - 330px);;
	}
	
	h1 {
		font-size: 32px;
		padding-left: 35px;
	}
	
	h3 {
		font-size: 26px;
		line-height: 28px;
	}
	
	#s1 h3 {
		margin-top: 20px;
	}
	
	
	#s2 .row {
		position: relative;
		padding-top: 40px;
	}
	
	#s2 h3 {
		background: url(../img/schild.png) left 2px no-repeat;
		background-size: 28px 18px;
		padding-left: 35px;
	}
	
	#s2 p {
		padding-left: 35px;
		padding-bottom: 2px;
	}
	
	ul {
		padding-left: 35px;
		list-style: none;
	}
	
	#s3 .row {
		position: relative;
		padding-top: 40px;
	}
	
	
	#s3 h3 {
		background: url(../img/schild.png) left 2px no-repeat;
		background-size: 28px 18px;
		padding-left: 35px;
		margin-bottom: 0;
	}
	
	#s3 p {
		padding-left: 35px;
	}
	
	#s4 .row {
		position: relative;
		padding-top: 40px;
	}
	
	#s4 h3 {
		background: url(../img/schild.png) left 2px no-repeat;
		background-size: 28px 18px;
		padding-left: 35px;
		margin-bottom: 0;
	}
	
	#s4 p {
		padding-left: 35px;
	}
	
	section#s5.bg-primary div.container div.row div.col-md-6 {
		
	}
	
	#s5 .row {
		position: relative;
		top: 0px;
		background: url(../img/jw-background-r.png) left bottom no-repeat;
		background-size: cover;
		height: 400px;
		color: #fff;
	}
	
	#s5 h1.headline5 {
		margin-top: 0px;
		padding-left: 0;
	}
	
	.text5 {
		padding-left: 50px;
	}
	
	.footer {
		background-color: #dadcda;
		position: relative;
		display: block;
		padding: 8px 8px 5px 10px;
		font-family: 'Bebas Neue', cursive, sans-serif;
		z-index: 5;
		top: calc(50% - 220px);
	}


}

@media (min-width: 381px)
   and (max-width: 812px) 
   and (orientation: landscape) {
	


	.masthead.text-center.text-white.d-flex div.video-container {
		background-size: 43%;
		height: 370px;
	    min-height: 370px;
		background-position: 0 120px;
	}
	
	body#page-top header.masthead {
		height: 380px;
	    min-height: 380px;
	}

	body#page-top header.masthead.text-center.text-white.d-flex div.video-container div.text {
		position: absolute;
		bottom: 19%;
		left: 40px;
	}
	
	body#page-top header.masthead.text-center.text-white.d-flex div.video-container div.text h1 {
		font-size: 42px !important;
		padding-left: 0;
	}
	
	body#page-top header.masthead.text-center.text-white.d-flex div.video-container div.text h2 {
		font-size: 26px !important;
	}
	
	.navbar-toggler {
		margin-bottom: 10px;
	}
	
	.navbar-nav {
		margin-bottom: 10px;
	}
	
	.nav-item {
		border-bottom: 1px solid #cfcfcf;
	}
	
	section#s1.bg-primary {
		height: 350px;
	}
	
	section#s2 {
		height: 640px;
	}
	
	section {
	  height: 700px;
	  background: url("../img/jw-background-t.png") left top no-repeat;
	  background-size: cover;
	}
	
	section .container {
	  height: 700px;
	}


	
	#s1 .row {
		position: relative;
		top: 10px;
		padding-top: 40px;
	}
	
	section#s1.bg-primary div.container div.row div.text2 {
		width: 370px;
	}
	
	#s2 .row {
		position: relative;
		padding-top: 40px;
		top: 0;
	}

	#s3 .row {
		position: relative;
		padding-top: 40px;
		top: 0;
	}
	
	#s4 .row {
		position: relative;
		padding-top: 40px;
		top: 0;
	}
	
	#s5 .row {
		position: relative;
		padding-top: 40px;
		top: 0;
	}
	
	.text5 {
		padding-left: 100px;
	}

}

@media (max-width: 414px)
   and (orientation: portrait) {
	
	header.masthead {
	    height: 100vh;
	    min-height: 568px;
	    padding-top: 0;
	    padding-bottom: 0;
	}

	.masthead.text-center.text-white.d-flex div.video-container {
		background-size: 90%;		
	}
	
	
	.video-container .text {
		position: absolute;
		bottom: 16%;
		left: 50px;
	}
	body#page-top header.masthead.text-center.text-white.d-flex div.video-container div.text h1 {
		font-size: 46px !important;
		padding-left: 0;
	}
	
	body#page-top header.masthead.text-center.text-white.d-flex div.video-container div.text h2 {
		font-size: 28px !important;
	}
	
	.navbar-toggler {
		margin-bottom: 10px;
	}
	
	.navbar-nav {
		margin-bottom: 10px;
	}
	
	.nav-item {
		border-bottom: 1px solid #cfcfcf;
	}
	
	section {
		height: 880px;
	}
	
	
	#s1 .row {
		position: relative;
		top: calc(50% - 330px);;
		padding-top: 40px;
	}
	
	.bild2 {
		background: url(../img/Johannes-Wille-Portraet.png) 15px top no-repeat;
		background-size: contain;
		height: 40vh;
		top: calc(50% - 330px);;
	}
	
	h1 {
		font-size: 32px;
		padding-left: 35px;
	}
	
	h3 {
		font-size: 26px;
		line-height: 28px;
	}
	
	#s1 h3 {
		margin-top: 20px;
	}
	
	
	#s2 .row {
		position: relative;
		padding-top: 40px;
	}
	
	#s2 h3 {
		background: url(../img/schild.png) left 2px no-repeat;
		background-size: 28px 18px;
		padding-left: 35px;
	}
	
	#s2 p {
		padding-left: 35px;
		padding-bottom: 2px;
	}
	
	ul {
		padding-left: 35px;
		list-style: none;
	}
	
	#s3 .row {
		position: relative;
		padding-top: 40px;
	}
	
	
	#s3 h3 {
		background: url(../img/schild.png) left 2px no-repeat;
		background-size: 28px 18px;
		padding-left: 35px;
		margin-bottom: 0;
	}
	
	#s3 p {
		padding-left: 35px;
	}
	
	#s4 .row {
		position: relative;
		padding-top: 40px;
	}
	
	#s4 h3 {
		background: url(../img/schild.png) left 2px no-repeat;
		background-size: 28px 18px;
		padding-left: 35px;
		margin-bottom: 0;
	}
	
	#s4 p {
		padding-left: 35px;
	}
	
	
	#s5 .row {
		position: relative;
		top: 0px;
		background: url(../img/jw-background-r.png) left bottom no-repeat;
		background-size: cover;
		height: 400px;
		color: #fff;
	}
	
	#s5 h1.headline5 {
		margin-top: 0px;
		padding-left: 0;
	}
	
	.text5 {
		padding-left: 50px;
	}
	
	.footer {
		background-color: #dadcda;
		position: relative;
		display: block;
		padding: 8px 8px 5px 10px;
		font-family: 'Bebas Neue', cursive, sans-serif;
		z-index: 5;
		top: calc(50% - 220px);
	}

}


@media (max-width: 736px)
   and (orientation: landscape) {


	.masthead.text-center.text-white.d-flex div.video-container {
		background-size: 43%;
		height: 420px;
	    min-height: 420px;
		background-position: 0 120px;
	}
	
	body#page-top header.masthead {
		height: 420px;
	    min-height: 380px;
	}

	body#page-top header.masthead.text-center.text-white.d-flex div.video-container div.text {
		position: absolute;
		bottom: 19%;
		left: 40px;
	}
	
	body#page-top header.masthead.text-center.text-white.d-flex div.video-container div.text h1 {
		font-size: 42px !important;
		padding-left: 0;
	}
	
	body#page-top header.masthead.text-center.text-white.d-flex div.video-container div.text h2 {
		font-size: 26px !important;
	}
	
	.navbar-toggler {
		margin-bottom: 10px;
	}
	
	.navbar-nav {
		margin-bottom: 10px;
	}
	
	.nav-item {
		border-bottom: 1px solid #cfcfcf;
	}
	
	section#s1.bg-primary {
		height: 350px;
	}
	
	section#s2 {
		height: 640px;
	}
	
	section {
	  height: 750px;
	  background: url("../img/jw-background-t.png") left top no-repeat;
	  background-size: cover;
	}
	
	section .container {
	  height: 700px;
	}


	
	#s1 .row {
		position: relative;
		top: 10px;
		padding-top: 40px;
	}
	
	section#s1.bg-primary div.container div.row div.text2 {
		width: 350px;
	}
	
	#s2 .row {
		position: relative;
		padding-top: 40px;
		top: 0;
	}

	#s3 .row {
		position: relative;
		padding-top: 40px;
		top: 0;
	}
	
	#s4 .row {
		position: relative;
		padding-top: 40px;
		top: 0;
	}
	
	#s5 .row {
		position: relative;
		padding-top: 0;
		top: 100px;
	}
	
	section#s5.bg-primary div.container {
		position: relative;
	}
	
	.text5 {
		padding-left: 100px;
	}
	
	section#s5.bg-primary {

	}
	

}

@media (max-width: 844px)
   and (orientation: landscape) {


	.masthead.text-center.text-white.d-flex div.video-container {
		background-size: 36%;
		height: 420px;
	    min-height: 420px;
		background-position: 0 120px;
	}
	
	body#page-top header.masthead {
		height: 390px;
	    min-height: 390px;
	}

	body#page-top header.masthead.text-center.text-white.d-flex div.video-container div.text {
		position: absolute;
		bottom: 19%;
		left: 40px;
	}
	
	body#page-top header.masthead.text-center.text-white.d-flex div.video-container div.text h1 {
		font-size: 42px !important;
		padding-left: 0;
	}
	
	body#page-top header.masthead.text-center.text-white.d-flex div.video-container div.text h2 {
		font-size: 26px !important;
	}
	
	.navbar-toggler {
		margin-bottom: 10px;
	}
	
	.navbar-nav {
		margin-bottom: 10px;
	}
	
	.nav-item {
		border-bottom: 1px solid #cfcfcf;
	}
	
	section#s1.bg-primary {
		height: 350px;
	}
	
	section#s2 {
		height: 640px;
	}
	
	section {
	  height: 750px;
	  background: url("../img/jw-background-t.png") left top no-repeat;
	  background-size: cover;
	}
	
	section .container {
	  height: 700px;
	}


	
	#s1 .row {
		position: relative;
		top: 10px;
		padding-top: 40px;
	}
	
	section#s1.bg-primary div.container div.row div.text2 {
		width: 350px;
	}
	
	#s2 .row {
		position: relative;
		padding-top: 40px;
		top: 0;
	}

	#s3 .row {
		position: relative;
		padding-top: 40px;
		top: 0;
	}
	
	#s4 .row {
		position: relative;
		padding-top: 40px;
		top: 0;
	}
	
	#s5 .row {
		position: relative;
		padding-top: 0;
		top: 100px;
	}
	
	section#s5.bg-primary div.container {
		position: relative;
	}
	
	.text5 {
		padding-left: 100px;
	}
	
	section#s5.bg-primary {

	}
	

}

@media (max-width: 926px)
   and (orientation: landscape) {


	.masthead.text-center.text-white.d-flex div.video-container {
		background-size: 36%;
		background-position: 0 120px;
		height: 430px;
	    min-height: 430px;
	}
	
	body#page-top header.masthead {
		height: 430px;
	    min-height: 430px;
	}

	body#page-top header.masthead.text-center.text-white.d-flex div.video-container div.text {
		position: absolute;
		bottom: 19%;
		left: 40px;
	}
	
	body#page-top header.masthead.text-center.text-white.d-flex div.video-container div.text h1 {
		font-size: 42px !important;
		padding-left: 0;
	}
	
	body#page-top header.masthead.text-center.text-white.d-flex div.video-container div.text h2 {
		font-size: 26px !important;
	}
	
	.navbar-toggler {
		margin-bottom: 10px;
	}
	
	.navbar-nav {
		margin-bottom: 10px;
	}
	
	.nav-item {
		border-bottom: 1px solid #cfcfcf;
	}
	
	section#s1.bg-primary {
		height: 350px;
	}
	
	section#s2 {
		height: 640px;
	}
	
	section {
	  height: 750px;
	  background: url("../img/jw-background-t.png") left top no-repeat;
	  background-size: cover;
	}
	
	section .container {
	  height: 700px;
	}


	
	#s1 .row {
		position: relative;
		top: 10px;
		padding-top: 40px;
	}
	
	
	#s2 .row {
		position: relative;
		padding-top: 40px;
		top: 0;
	}

	#s3 .row {
		position: relative;
		padding-top: 40px;
		top: 0;
	}
	
	#s4 .row {
		position: relative;
		padding-top: 40px;
		top: 0;
	}
	
	#s5 .row {
		position: relative;
		padding-top: 0;
		top: 100px;
	}
	
	section#s5.bg-primary div.container {
		position: relative;
	}
	
	.text5 {
		padding-left: 100px;
	}
	
	section#s5.bg-primary {

	}
	

}



@media (max-width: 1024px) {
	
	header.masthead {
	    height: 100vh;
	    padding-top: 0;
	    padding-bottom: 0;
	}

	
	.video-container {
		left: 0;
		width: 100%;
		background: url(../img/jw-g-f-l.png) left bottom no-repeat;
		background-size: 60%;
		height: 100vh;
	}
	
	.video-container .text {
		position: absolute;
		bottom: 16%;
		left: 50px;
	}
	header.masthead h1 {
		font-size: 60px !important;
		padding-left: 0;
	}
	
	header.masthead h2 {
		font-size: 40px !important;
	}
	
	#s5 .row {
		position: relative;
		top: 100px;
		background: url(../img/jw-background-r.png) left bottom no-repeat;
		background-size: cover;
		height: 400px;
		color: #fff;
	}
	
	#s5 h1.headline5 {
		margin-top: 50px;
	}

}


.cookieconsent-com---palette-dark .cc-nb-okagree {
    color: #000;
    background-color: #6db52c !important;
}

.cookieconsent-com---palette-dark .cc-nb-reject {
    color: #000;
    background-color: #6db52c !important;
}
