/* @override 
	https://emo-ag.pincgestaltet.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
*/

/* Add your custom styles here... */ 




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

@font-face {
    font-family: 'studio_feixen_sans_trialMd';
    src: url('fonts/studiofeixensanstrial-medium-webfont.woff2') format('woff2'),
         url('fonts/studiofeixensanstrial-medium-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

html {
	-webkit-font-smoothing: antialiased!important;
	-moz-osx-font-smoothing: grayscale!important;
	text-rendering: optimizeLegibility!important;
}

		@media all and (min-width: 1801px) and (max-width: 9999px) {
			html {
				font-size: 16px!important;
			}
		}
		
		@media all and (min-width: 1501px) and (max-width: 1800px) {
			html {
				font-size: 14px!important;
			}
		}	
		
		@media all and (min-width: 1201px) and (max-width: 1500px) {
			html {
				font-size: 12px!important;
			}
		}	
		
		@media all and (min-width: 901px) and (max-width: 1200px) {
			html {
				font-size: 10px!important;
			}
		}	
		
		@media all and (min-width: 601px) and (max-width: 900px) {
			html {
				font-size: 10px!important;
			}
		}
		
		@media all and (min-width: 0px) and (max-width: 600px) {
			html {
				font-size: 8px!important;
			}
		}	
		
		@media all and (min-width: 1801px) and (max-width: 9999px) and (max-height: 900px) {
			html {
				font-size: 15px!important;
			}
		}
		
		@media all and (min-width: 1501px) and (max-width: 1800px) and (max-height: 900px) {
			html {
				font-size: 13px!important;
			}
		}	
		
		@media all and (min-width: 1201px) and (max-width: 1500px) and (max-height: 900px) {
			html {
				font-size: 11px!important;
			}
		}	
		
		@media all and (min-width: 901px) and (max-width: 1200px) and (max-height: 900px) {
			html {
				font-size: 9px!important;
			}
		}

/* @end */




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

:root {
	--basic-font-size: 2.5rem;
	--large-font-size: 5rem;
	--large-font-size-home: 5rem;
	--small-font-size: 1.75rem;
	
	--basic-line-height: 1.2;
	--large-line-height: 1;
	--small-line-height: 1.4;

	--font-style: normal;
	--font-family: "studio_feixen_sans_trialMd", Helvetica, Arial, sans-serif;
	--font-weight: normal;
	--letter-spacing: 0;
	--word-spacing: 0;
	
	--icon-size: 3rem;
}
	
@media all and (max-width: 900px) {
	:root {
		--large-font-size-home: 3.75rem;
	}
}

@media all and (max-width: 600px) {
	:root {
		--large-font-size-home: 2.5rem;
	}
}

/* @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(--large-font-size);
	line-height: var(--large-line-height);	
}

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

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

/* @end */




/* @group Typography - Home
------------------------------------------------------------- */

.home .fl-page h1,
.home .fl-page h1 *,
.home .fl-page h2,
.home .fl-page h2 * {
	font-size: var(--large-font-size-home);
	line-height: var(--large-line-height);	
}

/* @end */




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

p, h1, h2 {
	margin: 2rem 0 0 0;
}

h1 + h1 {
	margin-top: 0;
}

h2 + h2 {
	margin-top: 0;
}

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

/* @end */




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

.fl-page .fl-rich-text > * > a,
.fl-page .fl-rich-text > * > a:hover {
	background: linear-gradient(to bottom, #ffffff 0%, #ffffff 100%);
	background-position: 0 100%;
	background-repeat: repeat-x;
	background-size: .125rem .125rem;
	text-decoration: none;
}

.fl-page .fl-rich-text > * > a:hover {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 6'%3E%3Cstyle%3E%0A@keyframes a0_t %7B 0%25 %7B transform: translate(0px,-42.3px); %7D 100%25 %7B transform: translate(-20px,-42.3px); %7D %7D%0A%3C/style%3E%3Cpath d='M0 43.3c5 0 5 4 10 4c5 0 5-4 10-4c5 0 5 4 10 4c5 0 5-4 10-4' fill='none' stroke='%23ffffff' stroke-miterlimit='10' stroke-width='2' transform='translate(0,-42.3)' style='animation: 1s linear infinite both a0_t;'/%3E%3C/svg%3E");
  background-position: 0 100%;
  background-size: auto .375rem;
  background-repeat: repeat-x;
  text-decoration: none;
}

/* @end */




/* @group Layout - Rows
------------------------------------------------------------- */

.fl-row-content-wrap {
	padding: 1rem;
}

/* Row Full Height Fix */
.fl-row-full-height > .fl-row-content-wrap {
	min-height: calc((var(--real-vh) * 100));
}

/* @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 Menu Icon
------------------------------------------------------------- */

.fl-page .uabb-offcanvas-icon-wrap {
	width: calc(var(--icon-size) * 1.5);
	height: var(--icon-size);
	float: left;
}

.fl-page .uabb-offcanvas-icon-wrap .uabb-offcanvas-icon {
	width: 100%;
	height: 100%;
	position: relative;
	float: left;
	border-top: 0.6rem solid #ffffff;
	border-bottom: 0.6rem solid #ffffff;
}

.fl-page .uabb-offcanvas-icon-wrap .uabb-offcanvas-icon::before {
	content: "";
	width: 100%;
	height: 0.6rem;
	position: absolute;
	top: 50%;
	left: 0;
	background-color: #ffffff;
	transform: translateY(-50%);
}

/* @end */




/* @group Menu Icon Close
------------------------------------------------------------- */

.fl-page .uabb-offcanvas-close-icon-wrapper {
	top: 2rem;
	left: 2rem;
}

	@media all and (max-width: 600px) {
		.fl-page .uabb-offcanvas-close-icon-wrapper {
			left: 1rem;
		}
	}

.fl-page .uabb-offcanvas-close {
	width: calc(var(--icon-size) * 1.5);
	height: var(--icon-size);
	display: inline-block;
	position: relative;
	padding: 0;
}

.fl-page .uabb-offcanvas-close .uabb-offcanvas-close-icon {
	width: 100%;
	height: 100%;
	position: relative;
	float: left;
	border-top: 0.6rem solid #ffffff;
	border-bottom: 0.6rem solid #ffffff;
}

.fl-page .uabb-offcanvas-close .uabb-offcanvas-close-icon::before {
	content: "";
	width: 100%;
	height: 0.6rem;
	position: absolute;
	top: 50%;
	left: 0;
	background-color: #ffffff;
	transform: translateY(-50%);
}

/* @end */




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

.fl-page .menu {
	padding: 0;
	list-style-type: none;
}

.fl-page .menu li {
	border: none!important;
}

.fl-page .menu li a {
	font-size: var(--large-font-size);
	line-height: var(--large-line-height);
	display: inline-block;
}

/* Remove Home Link on Homepage */
.home #menu-item-467 {
	display: none;
}

/* @end */




/* @group Off-Canvas Wrapper
------------------------------------------------------------- */

.fl-page .uabb-offcanvas-content {
	padding: 0;
}

/* @end */




/* @group Multiscroll – Column Flexbox
------------------------------------------------------------- */

.ms-section .fl-row > .fl-row-content-wrap {
	-webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.ms-section .fl-row > .fl-row-content-wrap .fl-row-content {
	display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}

.ms-section .fl-row > .fl-row-content-wrap .fl-row-content > .fl-col-group:first-child {
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
}

.ms-section .fl-row > .fl-row-content-wrap .fl-row-content > .fl-col-group:last-child {
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
}

/* Add Room For Header */
.ms-section .fl-row > .fl-row-content-wrap .fl-row-content > .fl-col-group:first-child {
	padding-top: 5rem;
}

/* @end */




/* @group Multiscroll – Column Padding
------------------------------------------------------------- */

	@media all and (min-width: 901px) {
		.ms-left .ms-section .fl-row-content-wrap {
			padding-right: 4rem;
		}
		
		.ms-right .ms-section .fl-row-content-wrap {
			padding-left: 4rem;
		}
	}

/* @end */




/* @group Multiscroll – Navigation Dots
------------------------------------------------------------- */

#multiscroll-nav {
	right: 2rem!important;
	margin: 0!important;
	top: 50%!important;
	z-index: 99;
	transform: translateY(-50%);
}

	@media all and (max-width: 600px) {
		#multiscroll-nav {
			right: 1rem!important;
		}
	}

#multiscroll-nav li {
	width: 1.25rem!important;
	height: 1.25rem!important;
	margin: .25rem!important;
}
#multiscroll-nav li a span {
	top: 0px!important;
	left: 0px!important;
	width: 100%!important;
	height: 100%!important;
	border: .125rem solid #fff!important;
	background: rgba(255, 255, 255, 0)!important;
}

#multiscroll-nav li .active span {
	background: #fff!important;
}

/* @end */




/* @group Multiscroll – Shadow Overlay
------------------------------------------------------------- */

.fl-builder-content-360 .fl-row-content-wrap {
	width: 6rem;
	height: calc((var(--real-vh) * 100));
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	
	background: rgb(210,210,210);
	background: -moz-linear-gradient(90deg, rgba(210,210,210,1) 0%, rgba(255,255,255,1) 30%, rgba(255,255,255,1) 70%, rgba(210,210,210,1) 100%);
	background: -webkit-linear-gradient(90deg, rgba(210,210,210,1) 0%, rgba(255,255,255,1) 30%, rgba(255,255,255,1) 70%, rgba(210,210,210,1) 100%);
	background: linear-gradient(90deg, rgba(210,210,210,1) 0%, rgba(255,255,255,1) 30%, rgba(255,255,255,1) 70%, rgba(210,210,210,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#d2d2d2",endColorstr="#d2d2d2",GradientType=1);
}

/* @end */




/* @group Multiscroll – Mobile Link To Next Section
------------------------------------------------------------- */

.emo-link-wrap {
	position: relative;
}

.emo-link-wrap .emo-link {
	width: var(--icon-size);
	height: calc(var(--icon-size) * 1.5);
	position: absolute;
	top: 50%;
	right: 1rem;
	display: block;
	transform: translateY(-50%);
	cursor: pointer;
}

.emo-link-wrap .emo-link .emo-link-arrow-body {
	width: .6rem;
	height: 100%;
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	background-color: #ffffff;
	transform: translateX(-50%);
}

.emo-link-wrap .emo-link .emo-link-arrow-head {
	width: calc(var(--icon-size) * .75);
	height: calc(var(--icon-size) * .75);
	position: absolute;
	bottom: 0;
	left: 50%;
	display: block;
	border-bottom: .6rem solid #ffffff;
	border-right: .6rem solid #ffffff;
	transform: translateX(-50%) rotate(45deg);
}

	@media all and (min-width: 901px) {
		.emo-link-wrap .emo-link {
			display: none;
		}
	}
	
	@media all and (max-width: 900px) {
		.emo-second-title {
			display: none;
		}
	}

/* @end */




/* @group Emo Flexbox Layout
------------------------------------------------------------- */

.fl-row.emo-flexbox-layout > .fl-row-content-wrap {
	-webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.fl-row.emo-flexbox-layout > .fl-row-content-wrap .fl-row-content {
	display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}

.fl-row.emo-flexbox-layout > .fl-row-content-wrap .fl-row-content > .fl-col-group:first-child {
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
}

.fl-row.emo-flexbox-layout > .fl-row-content-wrap .fl-row-content > .fl-col-group:last-child {
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
}

/* Add Room For Header */
.fl-row.emo-flexbox-layout > .fl-row-content-wrap .fl-row-content > .fl-col-group:first-child {
	padding-top: 5rem;
}

/* @end */




/* @group Team
------------------------------------------------------------- */

/* Add Room For Header */
.fl-row.emo-flexbox-layout.emo-flexbox-layout-team > .fl-row-content-wrap .fl-row-content > .fl-col-group:first-child {
	padding-top: 6rem;
	padding-bottom: 1rem;
}

/* Stretch Rows to Full Height */
.fl-row.emo-flexbox-layout.emo-flexbox-layout-team > .fl-row-content-wrap > .fl-row-content > .fl-col-group:first-child > .fl-col {
    height: 100%;
}

.fl-row.emo-flexbox-layout.emo-flexbox-layout-team > .fl-row-content-wrap > .fl-row-content > .fl-col-group:first-child > .fl-col > .fl-col-content {
    height: 100%;
}

.fl-row.emo-flexbox-layout.emo-flexbox-layout-team > .fl-row-content-wrap > .fl-row-content > .fl-col-group:first-child > .fl-col > .fl-col-content > .fl-col-group {
    height: 100%;
}

	@media all and (min-width: 601px) {
		.fl-row.emo-flexbox-layout.emo-flexbox-layout-team > .fl-row-content-wrap > .fl-row-content > .fl-col-group:first-child > .fl-col > .fl-col-content > .fl-col-group {
		    width: 100vw;
			margin-left: -1rem;
		}
		
		.fl-row.emo-flexbox-layout.emo-flexbox-layout-team > .fl-row-content-wrap > .fl-row-content > .fl-col-group:first-child > .fl-col > .fl-col-content > .fl-col-group .fl-col-content {
		    padding: 1rem;
		}
	}

	/* Adjust Background Position on Mobile */
	@media all and (max-width: 900px) {
		.fl-page .fl-node-4fdn2b31a9sc > .fl-col-content {
			background-position: 50% 35%;
		}
		
		.fl-page .fl-node-6lbjodw71kzq > .fl-col-content {
			background-position: 50% 45%;
		}
		
		.fl-page .fl-node-vo7q0r9lbui2 > .fl-col-content {
			background-position: 50% 20%;
		}
	}

/* @end */