/* @override 
	https://dev.baustoff-natur.ch/wp-content/themes/bb-theme-child/style.css?* */



/*
Theme Name: Beaver Builder Child Theme
Theme URI: http://www.wpbeaverbuilder.com
Version: 1.0
Description: An example child theme that can be used as a starting point for custom development.
Author: The Beaver Builder Team
Author URI: http://www.fastlinemedia.com
template: bb-theme
*/



/* @group @font-face
------------------------------------------------------------- */

/* roboto-condensed-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: 'Roboto Condensed';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/roboto-condensed-v27-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-condensed-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: 'Roboto Condensed';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/roboto-condensed-v27-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* @end */



/* @group Font Reset
------------------------------------------------------------- */

html {
	-webkit-font-smoothing: antialiased!important;
	-moz-osx-font-smoothing: grayscale!important;
	text-rendering: optimizeLegibility!important;
}
		
		@media all and (min-width: 1501px) and (max-width: 9999px) {
			html {
				font-size: 14px!important;
			}
		}	
		
		@media all and (min-width: 1001px) and (max-width: 1500px) {
			html {
				font-size: 13px!important;
			}
		}	
		
		@media all and (min-width: 751px) and (max-width: 1000px) {
			html {
				font-size: 12px!important;
			}
		}
		
		@media all and (min-width: 0px) and (max-width: 750px) {
			html {
				font-size: 10px!important;
			}
		}		

/* @end */



/* @group Custom Properties - General
------------------------------------------------------------- */

:root {
	--h1-font-size: 5.2rem;
	--h2-font-size: 3.6rem;
	--h3-font-size: 2.4rem;
	--h4-font-size: 1.6rem;
	--basic-font-size: 1.4rem;

	--h1-line-height: 1.0;
	--h2-line-height: 1.1;
	--h3-line-height: 1.2;
	--h4-line-height: 1.4;
	--basic-line-height: 1.4;

	--font-style: normal;
	--font-family: 'Roboto Condensed', Helvetica, Arial, sans-serif;
	--font-weight: 400;
	--font-weight-bold: 700;
	--letter-spacing: -0.01em;
	--word-spacing: -0.02em;	
	
	--color: #73b44b;
	--color-darker: #588e3b;
}

@media all and (max-width: 1500px) {
}

@media all and (max-width: 1000px) {
	:root {
		--h1-font-size: 4.4rem;
	}
}

@media all and (max-width: 750px) {
	:root {
		--h1-font-size: 3.6rem;
	}
}

/* @end */



/* @group Typography - General
------------------------------------------------------------- */

body {
	font-family: var(--font-family);
	font-weight: var(--font-weight);
	font-size: var(--basic-font-size);
	line-height: var(--basic-line-height);
}

.fl-page *:not(i) {
	font-style: var(--font-style);
	font-family: var(--font-family);
	font-weight: var(--font-weight);
	letter-spacing: var(--letter-spacing);
	word-spacing: var(--word-spacing);
}

.fl-page p,
.fl-page p * {
	font-size: var(--basic-font-size);
	line-height: var(--basic-line-height);
}

.fl-page h1,
.fl-page h1 * {
	font-size: var(--h1-font-size);
	line-height: var(--h1-line-height);
	font-weight: var(--font-weight-bold);
}

.fl-page h2,
.fl-page h2 * {
	font-size: var(--h2-font-size);
	line-height: var(--h2-line-height);
	font-weight: var(--font-weight-bold);
}

.fl-page h3,
.fl-page h3 * {
	font-size: var(--h3-font-size);
	line-height: var(--h3-line-height);
	font-weight: var(--font-weight-bold);
}

.fl-page h4,
.fl-page h4 * {
	font-size: var(--h4-font-size);
	line-height: var(--h4-line-height);
	font-weight: var(--font-weight-bold);
}

.fl-page p.lead,
.fl-page p.lead * {
	font-size: var(--h4-font-size);
	line-height: var(--h4-line-height);
}

.fl-page p.small,
.fl-page p.small * {
	font-size: var(--basic-font-size);
	line-height: var(--basic-line-height);
	font-weight: var(--font-weight-bold);
	color: var(--color);
}

/* @end */



/* @group Typography - Spacing
------------------------------------------------------------- */

p, h1, h2, h3, h4 {
	margin: 1.5rem 0 0 0;
}

h4 + p {
	margin-top: 0;
}

p.small + h2 {
	margin-top: 0;
}

/* @end */



/* @group Typography - Lists
------------------------------------------------------------- */

.fl-page .fl-rich-text ul {
	margin: 1.5rem 0 0 0;
	padding: 0;
	display: table;
}

.fl-page .fl-rich-text ul li {
	
	list-style: none;
    display: table-row;
}

.fl-page .fl-rich-text ul li::before {
	content: "–";
	padding: 0 1rem 0 0;
	display: table-cell;
}

/* @end */



/* @group Typography - Links
------------------------------------------------------------- */

.fl-page .fl-rich-text > * > a,
.fl-page .fl-rich-text > * > a:hover,
.fl-page .fl-html > * > a,
.fl-page .fl-html > * > a:hover {
	text-decoration: underline;
	text-decoration-thickness: 0.1rem;
	text-underline-offset: 0.1rem;
}

.fl-page .fl-rich-text > * > a:hover,
.fl-page .fl-html > * > a:hover {
	opacity: 0.6;
	text-decoration: none;
}

/* @end */



/* @group Layout - Row
------------------------------------------------------------- */

.fl-row {
	max-width: 100%;
}

.fl-row.fl-row-full-width .fl-row-content.fl-row-full-width {
	max-width: 100%;
}

.fl-row.fl-row-full-width .fl-row-content.fl-row-fixed-width {
	max-width: 100rem;
}

.fl-row.fl-row-fixed-width .fl-row-content.fl-row-fixed-width {
	max-width: 75rem;
}

	@media all and (max-width: 1500px) {
		.fl-row.fl-row-full-width .fl-row-content.fl-row-fixed-width {
			max-width: 90rem;
		}
		
		.fl-row.fl-row-fixed-width .fl-row-content.fl-row-fixed-width {
			max-width: 65rem;
		}
	}
	
	@media all and (max-width: 1000px) {
		.fl-row.fl-row-full-width .fl-row-content.fl-row-fixed-width {
			max-width: 80rem;
		}
		
		.fl-row.fl-row-fixed-width .fl-row-content.fl-row-fixed-width {
			max-width: 55rem;
		}
	}
	
	@media all and (max-width: 750px) {
		.fl-row.fl-row-full-width .fl-row-content.fl-row-fixed-width {
			max-width: 100%;
		}
		
		.fl-row.fl-row-fixed-width .fl-row-content.fl-row-fixed-width {
			max-width: 100%;
		}
	}

/* @end */



/* @group Layout - Row Content Wrap
------------------------------------------------------------- */

.fl-row-content-wrap {
	padding: 10vh 2vw;
}

/* @end */



/* @group Layout - Columns
------------------------------------------------------------- */

@media all and (max-width: 750px) {
	.kn-responsive-col {
		padding: 2.5vh 0;
	}
	
	.kn-responsive-col:first-child {
		padding-top: 0;
	}
	
	.kn-responsive-col:last-child {
		padding-bottom: 0;
	}
}

/* @end */



/* @group Layout - Module
------------------------------------------------------------- */

.fl-module-content {
	margin: 1rem 1rem;
}

.fl-page .fl-module-content .fl-rich-text > *:first-child,
.fl-page .fl-module-content .fl-html > *:first-child {
	margin-top: 0;
}

/* @end */



/* @group Layout - KN Card Row
------------------------------------------------------------- */

.kn-card-row .fl-row-content-wrap .kn-text-col .fl-col-content {
	padding: 0 2vw;
	max-width: 65rem;
}
	@media all and (max-width: 750px) {
		.kn-card-row .fl-row-content-wrap .kn-text-col .fl-col-content {
			padding-top: 10vh;
			padding-bottom: 10vh;
		}
	}

/* @end */



/* @group Header – Sticky
------------------------------------------------------------- */

.fl-page .fl-builder-content[data-overlay="1"]:not(.fl-theme-builder-header-sticky):not(.fl-builder-content-editing) {
	position: absolute;
	width: 100%;
	z-index: 100;
}

.fl-page  .fl-builder-content[data-type="header"].fl-theme-builder-header-sticky {
	position: fixed;
	width: 100%;
	z-index: 100;
}

/* @end */



/* @group Header – Style
------------------------------------------------------------- */

.fl-page  .fl-builder-content[data-type="header"] > .fl-row > .fl-row-content-wrap {
	transition: background-color .3s ease-out 0s;
}

.fl-page  .fl-builder-content[data-type="header"].fl-theme-builder-header-sticky > .fl-row > .fl-row-content-wrap {
	background-color: #ffffff;
}

/* @end */



/* @group Header - Logo
------------------------------------------------------------- */

.kn-logo {
	display: inline-block;
	height: 5rem;
	float: left;
}

.kn-logo svg {
	height: 100%;
	width: auto;
}

/* @end */



/* @group Header - Menu
------------------------------------------------------------- */

.fl-page .kn-menu ul {
	display: block;
}

.fl-page .kn-menu li {
	padding-left: 1rem;
	padding-right: 1rem;
}

.fl-page .kn-menu li:first-child {
	padding-left: 0;
}

.fl-page .kn-menu li:last-child {
	padding-right: 0;
}

.fl-page .kn-menu li a {
	color: #ffffff;
	text-decoration: none!important;
}

.fl-page .kn-menu li a:hover {
	color: var(--color-darker);
}

.fl-page .fl-theme-builder-header-sticky .kn-menu li a {
	color: var(--color);
}

.fl-page .fl-theme-builder-header-sticky .kn-menu li a:hover {
	color: var(--color-darker);
}

/* @end */



/* @group Header - Menu CTA
------------------------------------------------------------- */

.fl-page .kn-cta li a {
	color: #ffffff;
	border: 2px solid #ffffff;
	padding: 0.5rem 2.5rem;
}

.fl-page .kn-cta li a:hover {
	color: var(--color);
	border: 2px solid #ffffff;
	background-color: #ffffff;
}

.fl-page .fl-theme-builder-header-sticky .kn-cta li a {
	color: #ffffff;
	border: 2px solid var(--color);
	background-color: var(--color);
}

.fl-page .fl-theme-builder-header-sticky .kn-cta li a:hover {
	color: #ffffff;
	border: 2px solid var(--color-darker);
	background-color: var(--color-darker);
}

/* @end */



/* @group Header - Menu Mobile
------------------------------------------------------------- */

.fl-page .kn-menu-mobile li {
	padding-left: 0;
	padding-right: 0;
}

.fl-page .kn-menu-mobile li a {
	padding-top: 1rem;
	padding-bottom: 1rem;
	color: var(--color);
	font-size: var(--h4-font-size);
}

.fl-page .kn-menu-mobile li a:hover {
	color: var(--color-darker);
}

/* @end */



/* @group Header - Menu Mobile Toggle
------------------------------------------------------------- */

.fl-page .kn-menu-mobile .fl-menu-mobile-toggle {
	width: 3rem;
	height: 3rem;
	padding: 0rem;
}

.fl-page .kn-menu-mobile .fl-menu .fl-menu-mobile-toggle.hamburger .svg-container,
.fl-page .kn-menu-mobile .fl-menu .fl-menu-mobile-toggle.hamburger .svg-container::before,
.fl-page .kn-menu-mobile .fl-menu .fl-menu-mobile-toggle.hamburger .svg-container::after {
	background-color: #ffffff;
	height: 2px;
	position: absolute;
	top: 50%;
	left: 0;
}

.fl-page .kn-menu-mobile .fl-menu .fl-menu-mobile-toggle.hamburger .svg-container {
	width: 2rem;
	margin-top: -1px;
}

.fl-page .kn-menu-mobile .fl-menu .fl-menu-mobile-toggle.hamburger .svg-container::before,
.fl-page .kn-menu-mobile .fl-menu .fl-menu-mobile-toggle.hamburger .svg-container::after {
	content: "";
	width: 3rem;
	display: block;
}

.fl-page .kn-menu-mobile .fl-menu .fl-menu-mobile-toggle.hamburger .svg-container::before {
	top: -.75rem;
}

.fl-page .kn-menu-mobile .fl-menu .fl-menu-mobile-toggle.hamburger .svg-container::after {
	top: .75rem;
}

.fl-page .kn-menu-mobile .fl-menu .fl-menu-mobile-toggle.hamburger .svg-container > svg {
	display: none;
}

.fl-page .fl-theme-builder-header-sticky .kn-menu-mobile .fl-menu .fl-menu-mobile-toggle.hamburger .svg-container,
.fl-page .fl-theme-builder-header-sticky .kn-menu-mobile .fl-menu .fl-menu-mobile-toggle.hamburger .svg-container::before,
.fl-page .fl-theme-builder-header-sticky .kn-menu-mobile .fl-menu .fl-menu-mobile-toggle.hamburger .svg-container::after {
	background-color: var(--color);
}

/* @end */



/* @group Header - Menu Mobile Flyout
------------------------------------------------------------- */

.fl-page .kn-menu-mobile .fl-menu-mobile-flyout {
	background-color: #ffffff;
	padding: 1rem;
	text-align: center;
	transition-duration: .3s;
	-moz-box-shadow: 0 0 5px #b9b9b9;
	-webkit-box-shadow: 0 0 5px #b9b9b9;
	box-shadow: 0 0 5px #b9b9b9;
}

.fl-page .kn-menu-mobile .fl-menu-mobile-close {
	width: 3rem;
	height: 3rem;
	padding: 0;
	border-radius: 0;
	background-color: #ffffff!important;
	position: absolute;
}

.fl-page .kn-menu-mobile .fl-menu-mobile-close i {
	font-size: 0;
	width: 3rem;
	height: 3rem;
	position: relative;
}

.fl-page .kn-menu-mobile .fl-menu-mobile-close i:before,
.fl-page .kn-menu-mobile .fl-menu-mobile-close i:after {
	content: "";
	background-color: var(--color);
	width: 3rem;
	height: 2px;
	position: absolute;
	display: block;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

.fl-page .kn-menu-mobile .fl-menu-mobile-close i:before {
	transform: translateY(-50%) rotate(45deg);
}

.fl-page .kn-menu-mobile .fl-menu-mobile-close i:after {
	transform: translateY(-50%) rotate(-45deg);
}

.fl-page .kn-menu-mobile .fl-menu .fl-menu-mobile-flyout .menu {
	height: 100%;
	display: -webkit-flex;
    display: flex!important;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-content: stretch;
    align-content: stretch;
    -webkit-align-items: stretch;
    align-items: stretch;
}

/* @end */



/* @group Hero
------------------------------------------------------------- */

.fl-page .fl-module-pp-animated-headlines .pp-headline {
	margin: 0;
}

.fl-page .fl-module-pp-animated-headlines .pp-headline .pp-headline-plain-text {
	padding: 0;
}

.fl-page .fl-module-pp-animated-headlines .pp-headline .pp-headline-dynamic-wrapper {
	padding: 0;
	display: block;
	overflow: visible;
}

.fl-page .fl-module-pp-animated-headlines .pp-headline .pp-headline-dynamic-text {

}

/* @end */



/* @group Module Button
------------------------------------------------------------- */

.fl-page .fl-module-button .fl-button {
	padding: 1rem 2.5rem;
}

.fl-page .fl-module-button .fl-button-text {
	font-size: var(--basic-font-size);
}

/* @end */



/* @group Module Lightbox
------------------------------------------------------------- */

.fancybox-button  {
	border: none!important;
}

/* @end */