/*
	Theme Name: Das Holzhaus 2023
	Theme URI: https://holzhaus-graue.de/
	Description: Das Holzhaus 2023 Theme
	Version: 1.0
	Author: Christoph Karnebogen, Mirco Hueneke
	Author URI: http://www.diewildengestalten.de
*/

/* ------------------- WEBFONT IMPORT ------------------- */

/* josefin-slab-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: 'Josefin Slab';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/josefin-slab-v26-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* josefin-slab-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: 'Josefin Slab';
  font-style: normal;
  font-weight: 500;
  src: url('fonts/josefin-slab-v26-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* josefin-slab-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: 'Josefin Slab';
  font-style: normal;
  font-weight: 600;
  src: url('fonts/josefin-slab-v26-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* josefin-slab-700 - 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: 'Josefin Slab';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/josefin-slab-v26-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}





/* ------------------- VARIABLES ------------------- */
/* fuer IE extra script css-vars.js laden */
:root {
	--lightgreen: #95c23e;
	--darkgreen: #749730;
	
	--darkgrey: #4b4a4a;
}



/* ------------------- BASIC ------------------- */

::focus {
    outline: 0 !important;
}

body{
	font-family: 'Josefin Slab';
	font-style: normal;
	font-weight: 400;	
	font-size: 20px;
}

a, .effect{
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

a{
	color: inherit;
}

a:hover{
	color: inherit;
	text-decoration: none;
}

button:focus {
    outline: none !important;
}

p:last-child{
	margin-bottom: 0;
}

.preload * {
  -webkit-transition: none !important;
  -moz-transition: none !important;
  -ms-transition: none !important;
  -o-transition: none !important;
}




/* --------------- HEADINGS AND TXT --------------- */

h1, h3{
	font-size: 91px;
	margin-bottom: 60px;
	line-height: 1;
	text-transform: uppercase;
}

h2{
	font-weight: 600;
	font-size: 20px;
	text-transform: uppercase;
	margin-bottom: 20px;
}





/* -------------------- COLORS -------------------- */

.white { color: white; }
.lightgreen { color: var(--lightgreen); }




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

header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
	z-index: 100;
}

.navbar {
    padding: 0 !important;
	padding-top: 40px !important;
}

.navbar-brand {
    padding: 0 !important;
}

.nav-item{ 
	padding: 0;
	margin: 0 20px;
}

.nav-link{
	padding: 0 !important;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 16px;
	border-bottom: 2px solid black;
}

.nav-link:hover{
	border-bottom: 2px solid transparent;	
}

.nav-logo{
	width: 165px;
}

.navbar-toggler {
    position: absolute;
    top: 65px;
    right: 0;
}

.bun-top, .bun-bottom, .patty{
    width: 30px;
    height: 3px;
    border-radius: 5px;
	background-color: var(--darkgreen);
}

.patty{
	margin: 5px 0px;
}

.home .bun-top, .home .bun-bottom, .home .patty{
	background-color: white;
}

.patty-fake{
	position: absolute; 
	top: 8px;
	z-index: 5;
    width: 30px;
    height: 3px;
    border-radius: 5px;
	background-color: var(--darkgreen);
}

.home .patty-fake{
	background-color: white;
}

.navbar-toggler {
    position: absolute;
    right: 0;
    padding: 0;
    border: 0;
}

.navbar-toggler:not(.collapsed) .bun-top, .navbar-toggler:not(.collapsed) .bun-bottom{
	background-color: transparent;
}

.navbar-toggler:not(.collapsed) .patty{
	transform: rotate(45deg);
}

.navbar-toggler:not(.collapsed) .patty-fake{
	transform: rotate(-45deg);
}









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

footer{
	background-color: var(--darkgrey);
	color: white;
	padding-top: 120px;
	padding-bottom: 30px;
	position: relative;
}

.footer-bar-top{
	width: 100%;
	height: 1px;
	background-color: white;
}

.footer-bar-bottom{
	width: 100%;
	height: 1px;
	background-color: white;	
	margin-top: 35px;
	margin-bottom: 65px;
}

.footer-box{
	text-align: center;
    margin-top: -15px;
}

.icon-wrap{
	margin-bottom: 25px;
}

.icon-wrap img{
    width: calc(25px + 30px); /* breite des icons + padding rechts und links */
    background-color: var(--darkgrey);
    padding-left: 15px;
    padding-right: 15px;
}

footer a{
	color: white;
}

footer a:hover{
	text-decoration: none;
	opacity: 0.5;
}

.footer-meta a{
	font-size: 14px;
	opacity: 0.5;
	font-weight: 600;
}

.footer-meta a:hover{
	opacity: 1;
}

.footer-meta:last-child{
	text-align: right;
}

.footer-meta-left a{
	margin-right: 20px;
	text-transform: uppercase;
}

.footer-meta-left a:last-child{
	margin-right: 0px;
}

.footer-logo-link {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, calc(-100% + 45px));
}

.footer-logo {
    width: 75px;
}

.footer-logo-link:hover {
	opacity: 1;
}

.page:not(.home) .footer-logo {
    filter: drop-shadow( 0px 0px 50px rgba(0,0,0,0.3) );
}






/* ----------------- ELEMENTS ----------------- */

#lay-intro{
	background-color: red;
	padding-top: 130px;
	padding-bottom: 100px;
	position: relative;
	overflow: hidden;
	
	background: rgb( var(--lightgreen) );
	background: -moz-linear-gradient(0deg, var(--darkgreen) 200px, var(--lightgreen) 200px);
	background: -webkit-linear-gradient(0deg, var(--darkgreen) 200px, var(--lightgreen) 200px);
	background: linear-gradient(0deg, var(--darkgreen) 200px, var(--lightgreen) 200px);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#749730",endColorstr="#95c23e",GradientType=1);
}

#lay-woodhouse{
	background-color: var(--darkgreen);
	padding-top: 100px;
	padding-bottom: 100px;
}

#lay-images{
	padding-top: 100px;
	padding-bottom: 100px;
	
	background: rgb( var(--darkgreen) );
	background: -moz-linear-gradient(180deg, var(--darkgreen) 275px, white 275px);
	background: -webkit-linear-gradient(180deg, var(--darkgreen) 275px, white 275px);
	background: linear-gradient(180deg, var(--darkgreen) 275px, white 275px);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#749730",endColorstr="#95c23e",GradientType=1);
}

#lay-inspiration{
	position: relative;
	padding-top: 100px;
	padding-bottom: 100px;
}

#lay-rental{
	padding-top: 100px;
	padding-bottom: 100px;
	
	background: rgb( var(--lightgreen) );
	background: -moz-linear-gradient(-90deg, var(--darkgreen) 50%, var(--lightgreen) 50%);
	background: -webkit-linear-gradient(-90deg, var(--darkgreen) 50%, var(--lightgreen) 50%);
	background: linear-gradient(-90deg, var(--darkgreen) 50%, var(--lightgreen) 50%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#749730",endColorstr="#95c23e",GradientType=1);
}

#lay-production{
	padding-top: 100px;
	padding-bottom: 350px;

	background: rgb( var(--lightgreen) );
	background: -moz-linear-gradient(-90deg, var(--darkgreen) 50%, var(--lightgreen) 50%);
	background: -webkit-linear-gradient(-90deg, var(--darkgreen) 50%, var(--lightgreen) 50%);
	background: linear-gradient(-90deg, var(--darkgreen) 50%, var(--lightgreen) 50%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#749730",endColorstr="#95c23e",GradientType=1);
}

#lay-imds{
    padding-top: 250px;
	padding-bottom: 250px;
}

.row .row{
    margin-right: -30px;
    margin-left: -30px;	
}

.containerless-row{
    margin-right: 0px;
    margin-left: 0px;		
}

.main-text{
	column-count: 2;
	column-gap: 50px;
}

#lay-woodhouse .footer-bar-top {
    margin-top: 80px;
}

#lay-woodhouse .footer-bar-bottom {
    margin-bottom: 0px;
}

#lay-woodhouse .icon-wrap img {
    background-color: var(--darkgreen);
}

#lay-woodhouse a:hover {
    opacity: 0.5;
}

#lay-woodhouse .row .row{
    margin-right: -15px;
    margin-left: -15px;	
}

.images-first{
	margin-top: 110px;
	position: relative;
	z-index: 1;
}

.images-second {
    width: calc( 100% + 30px + 65px );
    margin-left: calc( (30px + 65px) * -1 );
    max-width: none;
}

.insta-wrap{
	padding-left: 50px;
	padding-right: 50px;
}

.fake-bg{
    position: absolute;
    z-index: -5;
    bottom: 0;
    width: 100%;
    height: calc( 250px + 100px);
	
	background: rgb( var(--lightgreen) );
	background: -moz-linear-gradient(-90deg, var(--darkgreen) 50%, var(--lightgreen) 50%);
	background: -webkit-linear-gradient(-90deg, var(--darkgreen) 50%, var(--lightgreen) 50%);
	background: linear-gradient(-90deg, var(--darkgreen) 50%, var(--lightgreen) 50%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#749730",endColorstr="#95c23e",GradientType=1);
}

.insta-link-wrap{
	display: flex;
	margin-top: 10px;
	color: white;
    align-items: center;
}

.insta-link-wrap:hover{
	color: white;
	opacity: 0.5;
}

.il-text{
	flex: 0 0 auto; /* fixed width */
	font-weight: 500;
	margin-right: 25px;
}

.il-shaft{
	flex: 1 1 auto; /* dynamic width */
}

.il-arrow{
	flex: 0 0 auto; /* fixed width */
}

.il-shaft div{
    width: calc(100% + 18px);
	height: 1px;
	background-color: white;
}

.il-arrow div{
    width: 20px;
    height: 20px;
    border-top: 1px solid white;
    border-right: 1px solid white;
    transform: rotate(45deg) translate(-3px, 4px);
}

#lay-rental .left-box{
	margin-top: 150px;
}

.eapps-instagram-feed-posts-grid-load-more-container{
	/* display: none !important; */
}

.eapps-instagram-feed-posts-grid-load-more {
    width: 100% !important;
    height: auto !important;
    border-radius: 0 !important;
    background: white !important;
	color: var(--darkgreen) !important;
    margin: 5px auto !important;
    font-size: 20px !important;
    font-family: 'Josefin Slab' !important;
    padding: 15px !important;
    line-height: 1 !important;
    font-weight: 900;
}

.teaser-img {
    width: 275px !important;
    position: relative;
    z-index: 1;
    display: block !important;
    margin: 0 auto;
}

.teaser-head-box {
    position: absolute;
    z-index: 1;
    top: 0;
    width: 100%;
    text-align: center;
    margin-top: 100px;
	margin-left: -15px;
    color: white;
}

.teaser-head-box h3{
	font-size: 190px;
}

.teaser-shadow{
    height: 1200px;
    width: 1200px;
    position: absolute;
    z-index: 0;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	
	background: var(--darkgreen);
	background: -moz-radial-gradient(circle, var(--darkgreen) 0%, transparent 66%);
	background: -webkit-radial-gradient(circle, var(--darkgreen) 0%, transparent 66%);
	background: radial-gradient(circle, var(--darkgreen) 0%, transparent 66%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#749730",endColorstr="#ffffff",GradientType=1);
}

.teaser-content{
    position: absolute;
    z-index: 2;
    top: 0;	
	width: 650px !important;
    left: 50%;
    transform: translateX(-50%);
    margin-top: 200px;
}

.owl-carousel .owl-stage-outer {
    overflow: visible !important;
}

.sideflag {
    position: fixed;
    right: 0;
    z-index: 500;
    background-color: var(--darkgreen);
    color: white;
    transform: translateX(calc(100% - 60px));
	border-top-left-radius: 100px;
	border-bottom-left-radius: 100px;
    display: flex;
    align-items: center;
    font-size: 16px;
}

.sideflag:hover {
    transform: translateX(0);
}

.side-icon, .side-text {
    display: inline-block;
}

.side-icon img {
    width: 20px;
    margin-right: 15px;
}

#lay-intro .row{
	margin-left: 0;
	margin-right: 0;
}

.side-icon {
    width: 65px;
    height: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.side-text{
	padding-top: 3px;
	padding-right: 45px;
}

.sideflag-first{ top: 285px; }
.sideflag-second{ top: 345px; }
.sideflag-third{ top: 405px; }

.eapps-widget-toolbar{
	display: none !important;
}

.event-box {
    position: absolute;
    background-color: #dc0e15;
    color: white;
    bottom: 200px;
    left: 20%;
    transform: translate(-50%, 50%);
    border-radius: 100%;
    text-align: center;
    z-index: 200;
    width: 250px;
    height: 250px;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1.2;
}

.event-box strong{
	display: contents;
}

#lay-imds h1 {
    color: var(--darkgreen);
    font-size: 40px;
	text-align: center;
}

#lay-imds h2 {
    margin-top: 50px;
    text-align: left;
    font-size: 20px;
    margin-bottom: 10px;
    color: var(--darkgreen);
}

#lay-imds h3 {
    margin-bottom: 10px;
    margin-top: 40px;
    text-align: left;
    font-weight: bold;
    font-size: 20px;
}

#lay-imds h4 {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 10px;
    margin-top: 30px;
}

#lay-imds ul {
    padding-left: 15px;
}

#lay-imds a {
    color: var(--darkgreen);
	word-break: break-all;
}

.img-maximiser{
	max-width: 600px;
	width: 100%;
}









/* ------------------------------------------------ MOBILE ------------------------------------------------ */

@media screen and (max-width: 767.98px) { 
	
	.container {
		padding-right: 40px;
		padding-left: 40px;
	}
	
	header {
		z-index: 510;
	}
	
	#menu-main-menu {
		background-color: white;
		padding: 15px 0 18px 0;
		margin-top: 40px;
		text-align: center;
	}
	
	.nav-item {
		margin-top: 5px;
		margin-bottom: 5px;
	}
	
	.main-text {
		column-count: 1;
		column-gap: 50px;
	}
	
	h1, h3 {
		font-size: 60px;
		
		-webkit-hyphens: auto;
		-ms-hyphens: auto;
		hyphens: auto;
	}
	
	.insta-link-wrap {
		flex-wrap: wrap;
		text-align: center;
		justify-content: center;
	}
	
	.il-text {
		flex: 0 0 100%;
		margin-right: 0px;
		margin-bottom: 15px;
	}
	
	.il-shaft {
		flex: 0 0 50px;
	}
	
	.footer-box:not(.footer-box-first) {
		margin-top: 30px;
	}
	
	.footer-meta{
		text-align: center !important;
	}
	
	.footer-bar-bottom {
		margin-bottom: 35px;
	}
	
	.footer-meta-left a {
		margin-right: 10px;
		margin-left: 10px;
	}
	
	#lay-production, #lay-rental {
		padding-left: 25px;
		padding-right: 25px;
	}
	
	#lay-production img, #lay-rental img {
		margin-top: 80px;
	}
	
	#lay-rental .left-box {
		margin-top: 0;
	}
	
	.images-first {
		margin-top: 0px;
	}
	
	.images-second {
		width: 100%;
		margin-left: 0;
		margin-top: 5px;
	}
	
	#lay-intro {
		padding-bottom: 50px;
	}
	
	#lay-woodhouse {
		padding-top: 50px;
		padding-bottom: 50px;
	}
	
	#lay-images {
		padding-top: 50px;
		padding-bottom: 50px;
	}
	
	#lay-inspiration {
		padding-top: 50px;
		padding-bottom: 50px;
	}
	
	#lay-production{
		padding-bottom: 250px;
	}
	
	.insta-wrap {
		padding-left: 25px;
		padding-right: 25px;
	}
	
	.fake-bg {
		height: calc( 250px + 50px);
	}
	
	.teaser-img {
		width: 200px !important;
	}
	
	.teaser-content {
		width: 350px !important;
	}
	
	.teaser-head-box h3 {
		font-size: 60px;
	}
	
	.teaser-shadow {
		width: 100%;
		height: -webkit-fill-available;
	}
	
	.dwg {
		display: block;
		margin-top: 15px;
	}
	
	.event-box {
		position: relative;
		margin: 0 auto;
		transform: translate(0px, 0px);
		left: 0;
		bottom: 0;
		margin-top: -50px;
	}
	
	#lay-intro.event-active{
		background: -moz-linear-gradient(0deg, var(--darkgreen) 400px, var(--lightgreen) 400px);
		background: -webkit-linear-gradient(0deg, var(--darkgreen) 400px, var(--lightgreen) 400px);
		background: linear-gradient(0deg, var(--darkgreen) 400px, var(--lightgreen) 400px);
	}
	
	.sideflag {
		transform: translateX(calc(100% - 47px));
	}
	
	.navbar-collapse {
		z-index: 5;
	}
	
	#lay-production {
		background: var(--darkgreen) !important;
	}
	
	#lay-rental {
		background: var(--lightgreen) !important;
	}
	
	.fake-bg{
		background: var(--darkgreen) !important;
	}
	
}
/* ------------------------------------------------ Extra small devices ------------------------------------------------ */

@media screen and (max-width: 575.98px) { 
}







/* ------------------------------------------------ TABLET ------------------------------------------------ */

@media (min-width: 768px) and (max-width: 991.98px) { 
	
	.footer-box {
		font-size: 14px;
	}
	
	.main-text {
		column-count: 1;
	}
	
	#lay-production img, #lay-rental img {
		margin-top: 80px;
	}
	
	#menu-main-menu {
		background-color: white;
		padding: 15px 0 18px 0;
		margin-top: 40px;
		text-align: center;
	}
	
	.nav-item {
		margin-top: 5px;
		margin-bottom: 5px;
	}
	
	h1, h3 {
		font-size: 60px;
	}
	
	.navbar-collapse {
		z-index: 5;
	}
	
	#lay-production {
		background: var(--darkgreen) !important;
	}
	
	#lay-rental {
		background: var(--lightgreen) !important;
	}
	
	.fake-bg{
		background: var(--darkgreen) !important;
	}
	
	#lay-rental .left-box {
		margin-top: 0;
	}
	
}






/* ------------------------------------------------ Small Computers ------------------------------------------------ */

@media (min-width: 992px) and (max-width: 1199.98px) { 
	
	
	
}