:root{
	--color1: #A4ED66;
	--color2: #F0F2F0;
	--color3: #161615;
	
	--font-family: 'Outfit';
	--font-family-special: 'McQueenDisplay';
	--font-color: #24282B;
	--section-padding: 90px 0;
	--text-h1-size: 4.2rem;
	--text-h2-size: 3.5rem;
	--text-h3-size: 2.5rem;
	--text-h4-size: 1.5rem;
	
	--color-accent: #24282B;
	--color-accent-bright: #24282B;
	--color-accent-alpha: hsl(255, 100%, 88%);
	--back-to-top-offset: 20rem;
	--back-to-top-button-size: 5rem;
}

.cookie-box{
	padding: 5rem !important;
}

._brlbs-accept{
	margin-top: 4rem !important;
}

#back-to-top {
	position: fixed;
	z-index: 200;
	bottom: 2.7rem;
	right: 2rem;
}
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  box-sizing: border-box
}

html {
	color: #000;
	font-size: 62.5%;
	line-height: 1.4;
	
	
}
html, body{
	
	scroll-behavior: smooth;
}

body {
	font-family: var(--font-family);
	line-height: 1.4;
	font-size: 1.8rem;
	color: var(--font-color);
	font-weight: normal;
	
	  overflow-x: hidden;
	
	
}
.parallax {
/* The image used */

  /* Full height */
  height: 70rem;

  /* Create the parallax scrolling effect */
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

@media only screen and (max-device-width: 1366px) {
  .parallax {
	background-attachment: scroll;
  }
}
h1, h2{
	font-weight: normal;
	margin-bottom:4rem;
}


.row{
	width: 128.0rem;
	margin: 0 auto;
	position: relative;
}

.row.is__large{
	width: 142.8rem;
}
.row.is__medium{
	width: 124.2rem;
}
.row.is__small{
	width: 87.4rem;
}

header{
	padding: 6rem 0 0 0;
}

header.sticky{
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 400;
}

header .row{
	width: 156rem;
	display: flex;
	justify-content: space-between;
}

header #brand{
}

header #brand a{
	width: 19.6rem;
	height: auto;
	display: block;
}

header #brand a svg{
	width: 100%;
	height: auto;
	display: block;
}

header nav{
}
header nav ul{
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
}
header nav ul li{
	margin: 0;
	padding: 0 2.5rem;
	list-style: none;
}



header nav ul li a{
	text-transform: uppercase;
	letter-spacing: 0.1rem;
	padding: 1rem 0;
	position: relative;
	
	color: var(--font-color);
	text-decoration: none;
	  transition: 0.3s;
}

header.sticky nav ul li a{
	color: #fff;
}
/*


header nav ul li a:after{
	height: 2px;
	background:transparent;
	width: 0%;
	left: 0;
	bottom: 0;
	content: "";
	  transition: 0.3s;
	display: block;
	position: absolute;
	z-index: 1;
}

header nav ul li.current-menu-item a:after,
header nav ul li a:hover:after{
width: 100%;
	background: var(--font-color);
	}
	header.sticky  nav ul li.current-menu-item a:after,
	header.sticky  nav ul li a:hover:after{

	background: #fff;
}


*/


.stage{
	margin: 6rem 0 0 0;
	position: relative;
}

.stage.has__badge{
}

.stage .stage__image img{
	clip-path: polygon(0 14%, 100% 0, 100% 86%, 0 100%);
	object-fit: cover;
	width: 100%;
	height: 70rem;
	display: block;
}



.stage .stage__badge{
	width: 29rem;
	height: 29rem;
	position: absolute;
	right: 5%;
	bottom: -20%;
}
.stage .stage__badge svg,
.stage .stage__badge img{
	width: 100%;
	height: 100%;
	display: block;
	
}
.section__image__headline{
	position: relative;
	z-index: -1
}

.section__image__headline .subline{
	
	display: block;
	color: #fff;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.4rem;
	font-size: 2rem;
}

.section__image__headline h1{
	font-size: 8.7rem;
	font-family: var(--font-family-special);
	line-height: 9.1rem;
	margin: 4.5rem 0 0  0;
	
}

.section__image__headline h1 span{
	border-bottom: 5px solid #fff; 
	display: inline-block;
}

.section__image.home .section__image__holder section{
	display: flex;
	height: 100%;
	align-items: center;
	
	padding: 0;
}


.section__image.has__rectangle__reverse__footer:before{height: 10.4rem;
	background: var(--color2);
	width: 100%;
	display: block;
	z-index: 10;
	content: "";
	position: absolute;
	top: -1px;clip-path: polygon(100% 0, 0 0, 0 100%);
}

.teaser{
	text-align: center;
	max-width: 70rem;
	margin: 6rem auto 0 auto;
}

.section__image.has__rectangle__reverse__footer.primary:before{
	background: var(--color1);
}
.section__image.home:after{height: 10.4rem;
	background: #fff;
	width: 100%;
	display: block;
	z-index: 10;
	content: "";
	position: absolute;
	bottom: -1px;clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}

.section__image.odd{
}
section.dark{
	background: var(--color3);
	color: #fff
}
.section__image{
	position: relative;
	color: #fff;
}

.section__image.has__rectangle:before{
	height: 7.4rem;
	background: #fff;
	clip-path: polygon(100% 0, 0 0, 100% 100%);
	width: 100%;
	display: block;
	z-index: 10;
	content: "";
	position: absolute;
	top: -1px;
}

.section__image.has__rectangle:after{
	height: 7.4rem;
	background: #fff;clip-path: polygon(0 0, 0% 100%, 100% 100%);
	width: 100%;
	display: block;
	z-index: 10;
	content: "";
	position: absolute;
	bottom: -1px;
}


.section__image.odd.has__rectangle:before{
	
	background: var(--color2);
}

.section__image.odd.has__rectangle:after{
	clip-path: polygon(0 0, 0% 100%, 100% 100%);
}
.section__image img.stage__img{
	object-fit: cover;
	width: 100%;
	min-height: 90rem;
	display: block;
}

.section__image.has__rectangle__reverse_footer  img{

	height: 70rem;
}

.section__image.is__contact img.stage__img,
.section__image.home img.stage__img{
	
	min-height: 70rem;
}

section{
	padding: 13.4rem  0;
	position: relative;
}

section.is--team{
	padding-bottom: 0;
}
.section__image{
	z-index: 1
}
section.odd{
	background: var(--color2)	
}
section.primary{
	background: var(--color1);
	color: #111;
}

section.primary .headline .subline{
	color: #111
}
section.dark.has__rectangle:before{
	height: 7.4rem;
	background: var(--color3);
	clip-path: polygon(100% 0, 0% 100%, 100% 100%);
	width: 100%;
	display: block;
	z-index: 20;
	content: "";
	position: absolute;
	top: -7.38rem;
}

section.dark.has__rectangle__reverse:before{
	height: 7.4rem;
	background: var(--color3);
	clip-path: polygon(0 0, 0% 100%, 100% 100%);
	width: 100%;
	display: block;
	content: "";
	position: absolute;
	z-index: 20;
	top: -7.38rem;
}

section.dark.has__rectangle__reverse:before{
	height: 7.4rem;
	background: var(--color3);
	
	clip-path: polygon(0 0, 0% 100%, 100% 100%);
	width: 100%;
	display: block;
	content: "";
	z-index: 20;
	position: absolute;
	top: -7.38rem;
}

section.light.has__rectangle__reverse:before{
	height: 7.4rem;
	background: #fff;
	
	clip-path: polygon(0 0, 0% 100%, 100% 100%);
	width: 100%;
	display: block;
	content: "";
	z-index: 20;
	position: absolute;
	top: -7.38rem;
}
section.odd.has__rectangle:before{
	height: 7.4rem;
	background: var(--color2);
	clip-path: polygon(0 0, 0% 100%, 100% 100%);
	width: 100%;
	display: block;
	content: "";
	z-index: 10;
	position: absolute;
	top: -7.38rem;
}

.hybrid__graphic__inner{
	width: 100rem;
	margin: 6rem auto;
}

.hybrid__graphic__inner svg{
	width: 100%;
	height: auto;
	display: block;
}

section.primary.has__rectangle__reverse:before{
	height: 7.4rem;
	background: var(--color1);
	clip-path: polygon(100% 0, 0% 100%, 100% 100%);
	width: 100%;
	display: block;
	content: "";
	position: absolute;
	top: -7.38rem;
}
section.odd.has__rectangle__reverse:before{
	height: 7.4rem;
	background: var(--color2);
	clip-path: polygon(100% 0, 0% 100%, 100% 100%);
	width: 100%;
	display: block;
	content: "";
	position: absolute;
	top: -7.38rem;
	z-index: 10;
}
section.odd.has__bottom__rectangle__reverse:after{
	height: 7.4rem;
	background: var(--color2);clip-path: polygon(100% 0, 0 0, 100% 100%);
	width: 100%;
	display: block;
	content: "";
	position: absolute;
	bottom: -7.4rem;
}
section.primary.has__bottom__rectangle__reverse:after{
	height: 7.4rem;
	background: var(--color1);clip-path: polygon(100% 0, 0 0, 100% 100%);
	width: 100%;
	display: block;
	content: "";
	position: absolute;
	z-index: 10;
	bottom: -7.4rem;
}
.headline.center{
	text-align: center
}

.headline.prim h2{
	color: var(--color1)
}

section.primary.has__bottom__rectangle:after{
	height: 7.4rem;
	background: var(--color1);
	clip-path: polygon(0 0, 0% 100%, 100% 0);
	width: 100%;
	display: block;
	content: "";
	position: absolute;
	z-index: 10;
	bottom: -7.4rem;
}
.subline span{
	border-bottom: 2px solid #111;
	display: inline-block;
	padding-bottom: 5px;
}

.light .subline span{
	
	border-bottom-color: var(--color1);
}
.centered{
	text-align: center
}
section.light.has__bottom__rectangle:after{
	height: 7.4rem;
	background: #fff;
	clip-path: polygon(0 0, 0% 100%, 100% 0);
	width: 100%;
	display: block;
	content: "";
	position: absolute;
	z-index: 10;
	bottom: -7.4rem;
}
section.odd.has__bottom__rectangle:after{
	height: 7.4rem;
	background: var(--color2);
	clip-path: polygon(0 0, 0% 100%, 100% 0);
	width: 100%;
	display: block;
	content: "";
	position: absolute;
	z-index: 10;
	bottom: -7.4rem;
}

.headline__centered__out{
	display: flex;
	justify-content: center;
}
.headline__centered__out .headline__centered{
	text-align: center;
	display: inline-flex;
	flex-direction: column;	
	align-items: center;
}

.headline__centered__out .headline__centeredp:first-of-type{
	margin-top: 6rem;
}
.headline__centered__out .headline__centered p, .teaser{
	font-size: 2rem;
}
.headline__centered__out.highlight{
	margin-top: 9rem;
	color: var(--color1)
}
.headline__centered span{
	border-bottom: 3px solid var(--font-color);
	font-size: 3rem;
	display: inline-block;
	margin-bottom: 1rem;
	text-transform: uppercase;
	letter-spacing: 0.3rem;
	font-weight: 600;
}

.section__image .headline__centered span{
	border-bottom: 3px solid #fff;
	
}

.dark .headline__centered span,
.headline__centered__out.highlight span{
	color: var(--color1);
	border-bottom: 3px solid var(--color1);
}

section.primary .headline__centered__out span{
	border-color: #fff;
}


.section__image__holder{
	position: absolute;
	height: 100%;
	left: 0;
	top: 0;
	width: 100%;
	z-index: 1
	
}
.headline{
	margin-bottom: 7rem;
}
.headline h2{
	font-size: 6.7rem;
	font-family: var(--font-family-special);
	line-height: 7.1rem;
	margin: 4.5rem 0 0  0;
	
}
.headline h3{
	font-size: 5rem;
	font-family: var(--font-family-special);
	line-height: 6rem;
	margin: 4.5rem 0 0  0;
	font-weight: normal;
	
}
.headline .subline{
	display: block;
	color: var(--color1);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.4rem;
	font-size: 2rem;
}

.content{
	font-size: 2rem;
	font-weight: 300;
	line-height: 3rem;
}


.content__big{
}
.content__big ul{
	
	font-size: 5rem;
	font-family: var(--font-family-special);
	line-height: 5rem;
	margin: 0 0 5rem 0;
	padding: 0;
}

.content__big ul.no__arrows{
	font-size: 5rem;
	line-height: 6rem;
	
}
.content__big li{
	list-style: none;
	padding: 0;
	
}


.content__big ul:not(.arrows) li:before{
	content: "–";
	margin-right: 2rem;
	
}

.home .content__big ul li{
	margin-bottom: 4rem;
}

.home .content__big ul{
	font-size: 6rem;
	line-height: 6rem;
}
.single__post figure{
	margin: 0 0 8rem 0;
	padding: 0;
}

.single__post .headline .subline{
	
	color: var(--color3)
}
.single__post .headline .subline a{
	color: var(--color3)
}

.single__post .headline{
	margin-bottom: 0;
}
.single__post .headline h2{
	margin-top: 2rem;
	margin-bottom: 4rem;
}
.single__post p a{
	color: var(--color1);
	
}

.single__post figure img{
	width: 100%;
	height: auto;
	display: block;
}
.blog__post .col__subline a, .single__post .subline a{
	color: #111;
	text-decoration: none;
}

.single__post .headline .subline{
	font-size: 2rem;
	text-transform: none;
	letter-spacing: 0.1rem;
}

.blog__post .fr__col .col__head{
	min-height: 8rem;
}

.blog__post .col__head{
	hyphens: auto;
}
.content__big ul.arrows li{
	display: flex;
	align-items: center;
	margin-bottom: 2rem;
}
.content__big ul.arrows li svg{
	margin-right: 3rem;
	height: 2.6rem;
	width: auto;
	display: block;
	flex-shrink: 0;
}

.read__more svg{
	display: block;
	height: 2rem;
	margin-top: 4rem;
	width: auto;
	
}
.content__big ul.small__text li svg{
	
	height: 2rem;
}

.content__big ul.small__text li{
	align-items: flex-start
}

.content__big ul.small__text li svg{
	margin-top: 1rem;
}

.content__big ul.small__text{
	
	font-size: 2.4rem;
	line-height: 3.1rem;
}



.button__group{
	margin-top: 6rem;
}

.button__group.centered{
	
	text-align: center
}
.button__group .button svg{
	height: 1.4rem;
	width: auto;
	display: block;
	  transition: 0.3s;
	margin-left: 2rem;
}
.button__group .button.reverse{
	padding-left: 0;
}
.button__group .button.reverse svg{
	height: 2rem;
	margin-left: 0;
	margin-right: 2rem;
}
.button__group .button{
	background: #24282B;
	display: inline-flex;
	padding: 2rem 4rem;
	align-items: center;
	color: #fff;
	border: none;
	text-decoration: none;
	font-size: 1.8rem;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.1rem;
	  transition: 0.3s;
}

a.read__more{

  transition: 0.3s;
}
a.read__more svg{

  transition: 0.3s;
}
a.read__more:hover svg{
	margin-left: 2rem;
}
.old__company__badge{
	position: absolute;
	bottom: -100px;
	height: 220px;
	width: 220px;
	left: calc((100% - 156rem)/2);
	z-index: 300;
}

.scroll__handler{
	display: flex;
	position: absolute;
	width: 100px;
	left: 50%;
	margin-left: -50px;
	z-index: 300;
	bottom: 0px;
	flex-direction: column;
	align-items: center;
}
.scroll__handler span.scroll{
	color: #fff;
	font-size: 1.6rem;
	text-transform: uppercase;
	letter-spacing: 0.1rem;
	margin-bottom: 1.2rem;
	display: block;
	animation: scroll 2s ease-in-out 0s infinite normal forwards;
}
.scroll__handler span.border{
	width: 1px;
	height: 80px;
	background: #111;
	display: block;
}


@keyframes scroll {
0% {
	
	margin-bottom: 1.2rem;
}

50% {
	margin-bottom: 3rem
}

100% {
	
	margin-bottom: 1.2rem;
	}
}
.old__company__badge svg,
.old__company__badge img{
	width: 100%;
	height: 100%;
	display: block;
}

.button__group .button.light{
	background: #fff;
	color: #24282B;
}

.button__group .button.bordered{
	background: transparent;
	border: 1px solid  #24282B;
	color:   #24282B;
}


.dark .button__group .button.bordered{
	background: transparent;
	border: 1px solid  #fff;
	color: #fff;
}
.button__group .button:not(.reverse):hover svg{
	margin-left: 3rem;
}
.button__group .button.reverse:hover svg{
	margin-right: 3rem;
}

.grid__3fr{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 10rem;
	margin-top: 10.4rem;
}

.dark .fr__col{
	border: 1px solid #FFFFFF;
	padding: 3rem;
}
.foot-note{
	margin-top: 4rem;
	text-align: center;
	font-family: var(--font-family-special);
	font-size: 3.6rem;
}
.fr__col .col__head{
	font-size: 5rem;
	font-family: var(--font-family-special);
	line-height: 5.5rem;
	min-height: 12rem;
}

.grid__3fr  .fr__col ul li{
	position: relative;
	list-style: none;
	display: flex
}

.grid__3fr  .fr__col{
	display: flex;
	flex-direction: column;
}
.grid__3fr  .fr__col ul li::before {
  content: "";
  display: inline-block;
  margin-right: 1.5rem;
  margin-top: 0.7rem;
  transform: rotate(45deg);
  height: 1.2rem;
  width: 0.6rem;
  border-bottom: 0.15em solid;
  border-right: 0.15em solid;
}


.fr__col .col__image{
	margin-bottom: 3rem;
}

.fr__col .col__image img{
	width: 100%;
	height: auto;
	display: block;
}
.shop__grid{
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 3rem;
}
.shipping__note{
	margin-top: 4rem;
	font-size: 1.6rem
}
.fr__col .col__subline{
	font-size: 2rem;
	font-family: var(--font-family-special);
	margin-bottom: 1.5rem;
}
.product__qty__grid .price{
	margin-left: auto;
}
.product__qty__grid input{
	width: 4rem;
	margin-right: 1.2rem;
	border: 1px solid #dadada;
	padding: 0.6rem;
}
.product__qty__grid{
	display: flex;
	margin-bottom: 2rem;align-items: flex-start;
	font-size: 1.7rem;
}
.fr__col .col__foot{
	font-size: 3.6rem;
	font-family: var(--font-family-special);
	  margin-top: auto;
}

.fr__col .col__foot span{
	
	margin-top: 5rem;
	display: block
}


.fr__col .col__content{
	font-size: 2rem;
	line-height: 3rem;
	font-weight: 300;
	hyphens: auto;
	-webkit-hyphens: auto;
}

.fr__col .col__content ul{
	padding: 0 0 0 1.6rem;
}

.fr__col .col__content b{
	font-weight: 600
}

.fr__col:not(.no__first__letter) .col__head:first-letter {
	color: var(--color1)
}

.mt__big{
	margin-top: 10rem;
}
.col__content.team h4{
	font-size: 2rem;
	margin-bottom: 0;
	font-weight: 600;
	
}
.col__content.team h4 +p{
	margin-top: 0;
}
.col__content.team{
	text-align: center;
}
.col__content p a:not(.button){
	color: #111
}

.svg__animation__grid{
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 10rem;
	margin-top: 13rem;
}
.svg__animation__grid.ctn__center{
	display: block;
}
.svg__animation__grid.ctn__center h4{
	margin-bottom: 0.5rem;
	font-size: 2.4rem;
}
.svg__animation__grid.reset{
	display: block;
}
.svg__animation__grid.ctn__center h4 + p{
	margin-top: 0;
}

.svg__animation__grid .animation{
	
}
.svg__animation__grid .animation svg{
	width: 100%;
	height: auto;
	display: block;
}

.svg__animation__grid .animation__content{
	display: flex;
}

.tab__action:hover g,
.tab__action:hover,
.tab__action.active g,
.tab__action.active{
	opacity: 1
}

.tab{
	display: none;
}
.tab.active{
	display: block;
}

.svg__animation__grid .animation__content__head{
	
	
	font-size: 5rem;
	font-family: var(--font-family-special);
	line-height: 5.5rem;
	margin-bottom: 5rem;
}
.svg__animation__grid .animation__content__text{
	
	font-size: 2rem;
	line-height: 3rem;
	font-weight: 300;
	hyphens: auto;
}

.product__tab__navigation{
	
}

.product__tab__navigation ul{
	margin: 6rem 0 0 0;
	padding: 0;
	list-style: none;
	display: flex;
	justify-content: center;flex-wrap: wrap;
}

.product__tab__navigation ul li{
	list-style: none;
	cursor: pointer;
	padding: 0;
	display: flex
}
.product__tab__navigation ul li:after{
	content: " / ";
	font-weight: normal !important;
	padding: 0 2rem;
}
.product__tab__navigation ul li:last-of-type:after{
	content: "";
	display: none;
}

.product__tab__navigation ul li.active{
	font-weight: 600;
}

.grid__image__text__fr.first{
	
	margin-top: 10rem;
}
.grid__image__text__fr.product{
	display: none;
}

.grid__image__text__fr.product.is__show{
	display: grid;
}
.grid__image__text__fr{
	grid-gap: 10rem;
	display: grid;
	margin-top: 10rem;
	padding-right: 10rem;
	grid-template-columns: 1fr 1fr;
	align-items: center
}
.grid__image__text__fr.v__top{
	
	align-items: flex-start
}

.grid__image__text__fr.reverse{
padding-left: 10rem;	
	padding-right: 0rem;
}
/*
.grid__image__text__fr.product.is__show:nth-child(even){
	
	padding-left: 10rem;	
		padding-right: 0rem;
}
*/

.image__fr img{
	width: 100%;
	height: auto;
	display: block;
}

.reverse .image__fr{
	order: 2;
}

.col__content.team p{
	font-size: 1.7rem;
	line-height: 1.4
}
/*
.grid__image__text__fr.product.is__show:nth-child(even) .image__fr{
	
	order: 2;
}
*/
.partners{
	position: relative;
}

.carousel__outer{
	margin-top: 10rem;
}
.carousel a{
	display: block;
}
.carousel img{
	width: 100%;
	height: auto;
	display: block;
}
.prev-carousel{
	left: -12rem;
	padding: 0;
}

.next-carousel{
	
	right: -12rem;
	padding: 0;
	
}
	section.odd.has__rectangle__reverse.no__bottom__rectangle{
		padding-bottom: 17.4rem
	}
section.odd.has__rectangle__reverse.no__bottom__rectangle .headline h3{
	margin-top: 0;
}
.auto__headline .fr__col .col__head{
	min-height: auto
}
.next-carousel svg, .prev-carousel svg{
	height: 4.4rem;
	width: auto;
	display: block;
}
.next-carousel, .prev-carousel{
	position: absolute;
	top: 50%;
	height: 5rem;
	border: none;
	margin-top: -2.5rem;
	cursor: pointer;
	width: 4rem;
	background: transparent;
	display: flex;
	justify-content: center;
}

.mb__medium{
	margin-bottom: 6rem;
}
.partners, .quotes{
	width: 80%;
	margin: 0 auto;
	position: relative;
	font-size: 2rem;
}

footer{
	background: var(--color3);
	padding: 13.4rem 0;
	position: relative;
}
footer:before{
	height: 7.4rem;
	background: var(--color3);
	clip-path: polygon(100% 0, 0% 100%, 100% 100%);width: 100%;
	display: block;
	content: "";
	position: absolute;
	top: -7.3rem;
	z-index: 10
}
.mf-field select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: #fff;
  background-image: none;
}
/* Custom Arrow */
.mf-field {
  position: relative;
}
.mf-field select::-ms-expand {
  display: none;
}
.mf-field {
  position: relative;
}

.mf-field select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: #ffffff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23111111' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1.6rem center;  /* 16px rechts bei 1rem=10px */
  background-size: 1.6rem;                   /* 16px */
  padding-right: 4.5rem !important;          /* Platz für Pfeil */
}

/* optional für alte IE/Safari-Reste */
.mf-field select::-ms-expand {
  display: none;
}


.footer__grid{
	display: grid;
	grid-template-columns: 2fr 1fr 1fr;
	grid-gap: 4rem;
	color: #B9B9B8;
}

.footer__col .footer__head{
	
	font-weight: 500;
	font-size: 1.5rem;
	text-transform: uppercase;
	letter-spacing: 0.2em;
	height: 6rem;
	color: #fff;

}

.footer__buttons{
	
}

.footer__buttons a{
	margin-right: 1rem;
}

.footer__brand{
	width: 10rem;
	height: auto;
	display: block;
}
#copyright{
	border-top: 1px solid #747474;
	margin-top: 8rem;
	padding-top: 2rem;
	display: flex;
	font-size: 1.6rem;
	color: #B9B9B8;
	justify-content: space-between;
}

#copyright a{
	color: #B9B9B8;
	text-decoration: none;
	margin-left: 2rem;
}

.contact__badge{
	position: absolute;
	right: 10%;
	bottom: 5rem;
	z-index: 988;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}
.contact__badge__content{
	display:	none;
	padding: 3rem 5rem 0 5rem;
}
.contact__badge__content h4{
	margin: 0 0 3rem 0;
	font-weight: 600;
	font-size: 2rem;
	text-transform: uppercase;
	letter-spacing: 0.1rem;
}
.show__contact__badge__content{
	background: var(--color1);
	width: 8rem;
	height: 8rem;
	border-radius: 50%;
	display: inline-flex;	
	justify-content: center;
	align-items: center;
	cursor: pointer;
}
.contact__badge__content p{
	color: #fff;
}

.contact__badge__content p a{
	color: #fff;
}
.close__contact__badge__content{
	display: none;
	background: var(--color1);
	border-radius: 50%;
	width: 8rem;
	cursor: pointer;
	height: 8rem;
}
.active .contact__badge__content{
	display:	block;
}
.contact__badge.active{
	
	background: var(--color1);
	border-radius: 0 0 50px 0;
}
.active .close__contact__badge__content{
	display: inline-flex;
	justify-content: center;
	align-items: center;
}
.active .show__contact__badge__content{
	display: none;
}

.show__contact__badge__content svg,
.show__contact__badge__content svg{
	width: 4rem;
	height: auto;
	display: block;
}
.content p a:not(.button),
.content li a:not(.button),
.content td a:not(.button){
	color: #111
}
.badge__link__wow{
	width: 29rem;
	height: 29rem;
	position: absolute;
	right: 10%;
	z-index: 200;
	bottom: -18rem;
	display: block;
}

.badge__link__wow svg,
.badge__link__wow img{
	width: 100%;
	height: 100%;
	display: block;
}


.downloads{
	margin-top: 8rem;
}

.download__item .download__button{
	display: flex;
	justify-content: flex-end;
}


.download__item .download__button .button__group{
	margin-top: 1rem;
}

.download__item{
	display: grid;
	grid-template-columns: 2fr 1fr;
	margin-bottom: 4rem;
	padding-bottom: 4rem;
	border-bottom: 1px solid #fff;
}
.download__item:last-of-type{
	margin: 0;
	padding: 0;
	border: none;
}
.download__item span{
	font-size: 4rem;
	line-height: 1.2;
	display: block;
	margin-bottom: 1rem;
}


.download__item small{
	display: block;
}




.faq-item {
  overflow: hidden;
}

.faq-item.hidden{
	display: none;
}

.faqs{
	margin-top: 6rem;
}
.faq-item-headline {
  display: flex;
  justify-content: space-between;
  padding: 1rem 1em;
  font-weight: 500;
  cursor: pointer;
  font-size: 2.4rem;
  border-top: 1px solid #dadada;
  /* Icon */
}
.faq-item-headline:hover {
}
.faq-item-headline::after {
  content: "+";
  width: 3rem;
  height: 3rem;
  font-size: 3rem;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
.faq-item-content {
  max-height: 0;
  padding: 0 1em;
  color: #282828;
  overflow: hidden;
  width: 100%;
  background: white;
  font-size: 2rem;
  line-break: 3rem;
  
}

.faq-item input{
	display: none;
}



#back-to-top {
	width: var(--back-to-top-button-size);
	height: var(--back-to-top-button-size);
	border-radius: 50%;

	display: none;
	place-items: center;

	text-decoration: none;
	background-color: var(--color-accent);
	transform: translateY(0%);
	transition: ease-out 200ms;
	transition-property: transform, background-color;
}
#back-to-top.active{
	display: grid;
}
#back-to-top:hover {
	transform: translateY(-22%);
	background-color: var(--color-accent-bright);
}

#back-to-top::after {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 100%;
	height: 200%;
	transform: translateY(-30%);
	background-color: rgba(0, 0, 0, 0);
	display: block;
}

.faq-item input:checked + .faq-item-headline {
}
.faq-item input:checked + .faq-item-headline::after {
  transform: rotate(45deg);
  
  
  font-size: 3rem;
}
.faq-item input:checked ~ .faq-item-content {
  max-height: 200vh;
  padding: 0 15rem 1em 1.2em;
}

.faq-item-content ul{
  padding: 0 0 0 16px;
}




.membership-section {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 3rem 1.5rem;
}

.membership-container {
  max-width: 1100px;
  width: 100%;
  text-align: center;
}

.pricing-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2rem;
  margin-bottom: 5rem;
}

.pricing-card {
  border-radius: 32px;
  padding: 3rem 3.2rem;
  box-shadow: 0 18px 35px rgba(0, 0, 0, 0.18);
  text-align: left;
}
.pricing-card:nth-child(1) {
 margin: 4rem 0;
}	
.pricing-card {
  background: #fff;
  color: #111;
}

.pricing-card:nth-child(2) {
  background: #111;
  color: #fff;
}

.pricing-title {
  text-transform: uppercase;
  letter-spacing: 0.25em;
  font-size:2rem;
  text-align: center;
  margin-bottom: 1.5rem;
}

.pricing-price {
  text-align: center;
  margin-bottom: 0.4rem;
  font-size: 7rem;
  font-weight: 700;
}

.pricing-sub {
  text-align: center;
  font-size: 1.8rem;
  opacity: 0.85;
  margin-bottom: 2.3rem;
}

.pricing-block-title {
  font-weight: 700;
  font-size: 0.95rem;
  margin-top: 0;
  margin-bottom: 0.6rem;
}

.pricing-card ul {
  list-style: none;
  padding: 0;
  margin: 0 0 1.4rem;
  font-size: 1.8rem;
  line-height: 1.6;
}

/* Häkchen im Firmen-Block */
.pricing-card ul li::before {
  content: "✔";
  margin-right: 0.5rem;
  color: var(--color1);
  font-size: 1.8rem;
}

/* Häkchen im persönlichen Block (schwarz) */
.pricing-card:nth-child(2) ul li::before {
  content: "✔";
  margin-right: 0.5rem;
  font-size: 1.8rem;
}

.pricing-card ul li {
  margin-bottom: 0.25rem;
}

.cta-wrapper {
  margin-bottom: 2rem;
}

.cta-button {
  display: inline-block;
  padding: 0.9rem 2.7rem;
  border-radius: 999px;
  border: none;
  background: #ffffff;
  font-size: 1.6rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.cta-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.16);
  background: #f5f5f5;
}

.membership-footer {
  font-size: 1.8rem;
  line-height: 1.6;
}

.membership-footer strong {
  font-weight: 700;
}

/* RESPONSIVE */
@media (max-width: 900px) {
  .pricing-grid {
	grid-template-columns: 1fr;
	max-width: 480px;
	margin-inline: auto;
  }

  .pricing-card {
	padding: 2.4rem 2.1rem;
  }
}

@media (max-width: 560px) {
  .membership-section {
	padding: 2.5rem 1rem;
  }

  .pricing-price {
	font-size: 2.5rem;
  }

  .pricing-title {
	font-size: 0.8rem;
	letter-spacing: 0.18em;
  }
}

#newsGrid{
	margin-top: 9rem;
}


/* Sektion */
.news-section {
  color: #ffffff;
}
.news-inner {
  max-width: 1100px;
  margin: 0 auto;
  text-align: center;
}
.news-header h2 {
  font-size: 2.5rem;
  margin-bottom: 0.4rem;
}
.news-header p {
  margin: 0 0 3rem;
  opacity: 0.85;
}

/* Grid */
.news-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2rem;
  margin-bottom: 6rem;
}

/* Karte */
.news-card {
  border: 1px solid rgba(255,255,255,0.35);
  border-radius: 4px;
}
.news-card__click {
  all: unset;
  cursor: pointer;
  padding: 2.3rem 2rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  text-align: left;
}
.news-card__date {
  font-size: 1.8rem;
  font-weight: 600;
  margin-bottom: 0.3rem;
}
.news-card__title-main {
  font-size: 2rem;
  font-weight: 600;
}
.news-card__title-sub {
	  font-size: 2rem;
  color: var(--color1); /* Grün */
  font-weight: 600;
}
.news-card__teaser {
  margin-top: 1.3rem;
  margin-bottom: 2.5rem;
  font-size: 1.8rem;
  line-height: 1.6;
  opacity: 0.9;
}
.news-card__arrow {
  font-size: 1.6rem;
  margin-top: auto;
}

/* Hover */
.news-card__click:hover {
  background: rgba(255,255,255,0.03);
}

/* Load more Button */
.news-loadmore-wrap {
  text-align: center;
}
.news-loadmore {
  padding: 0.9rem 2.7rem;
  border-radius: 999px;
  border: none;
  background: #ffffff;
  color: #111;
  font-size: 1.6rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  cursor: pointer;
}
.news-loadmore:hover {
  background: #f5f5f5;
}

/* Popup / Modal */
.news-modal {
  position: fixed;
  inset: 0;
  display: none;
  z-index: 999;
}
.news-modal.is-open {
  display: block;
}
.news-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.55);
}
.news-modal__dialog {
  position: relative;
  max-width: 640px;
  margin: 5vh auto;
  background: #181b1d;
  color: #fff;
  padding: 2.3rem 2.4rem;
  border-radius: 16px;
  box-shadow: 0 18px 40px rgba(0,0,0,0.5);
}
.news-modal__close {
  position: absolute;
  top: 1rem;
  right: 1.1rem;
  border: none;
  background: none;
  color: #fff;
  font-size: 1.7rem;
  cursor: pointer;
}
.news-modal__date {
  font-weight: 600;
  margin-bottom: 0.4rem;
}
.news-modal__title {
  font-size: 1.6rem;
  margin-bottom: 0.3rem;
}
.news-modal__subtitle {
  color: #8adf4c;
  font-weight: 600;
  margin-bottom: 1.4rem;
}
.news-modal__content p:last-child {
  margin-bottom: 0;
}

/* Load-more versteckt */
.news-card.is-hidden {
  display: none;
}

/* Responsive */
@media (max-width: 992px) {
  .news-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 680px) {
  .news-grid {
	grid-template-columns: 1fr;
  }
  .news-section {
	padding: 3.5rem 1.1rem 3rem;
  }
  .news-inner{
	  max-width: 90%;
	  margin-bottom: 10rem;
  }
  .foot-note{
	  margin-bottom: 6rem;
  }
  
  #prices{
	  padding-top: 14rem;
  }
}


/* Root-Annahme: html { font-size: 62.5%; }  => 1rem = 10px */

/* Container */
.wpcf7-form-layout {
  max-width: 90rem;          /* 900px */
  margin: 0 auto;
  font-family: "Montserrat", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #111111;
  font-size: 1.6rem;         /* 16px Basistext */
}

/* Section-Titel */
.mf-section-title {
  font-size: 3.0rem;         /* 30px */
  font-weight: 600;
  margin: 4.0rem 0 2.4rem;   /* 40px oben, 24px unten */
}

/* Label + Text */
.wpcf7-form-layout label {
  font-size: 1.4rem;         /* 14px */
  font-weight: 500;
}

/* Grids */
.mf-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 2.4rem;               /* 24px Abstand */
  margin-bottom: 1.8rem;     /* 18px */
}

.mf-grid-2 .mf-field {
  flex: 1 1 calc(50% - 1.2rem); /* zwei Spalten */
}

.mf-grid-between {
  align-items: center;
  justify-content: space-between;
}

/* Felder */
.mf-field input[type="text"],
.mf-field input[type="email"],
.mf-field input[type="tel"],
.mf-field textarea,
.mf-field select {
  width: 100%;
  margin-top: 0.6rem;        /* 6px Abstand unter Label */
  padding: 1.2rem 1.6rem;    /* 12px / 16px Innenabstand */
  border-radius: 0.8rem;     /* 8px */
  border: 0.1rem solid #dddddd;
  font-size: 1.5rem;         /* 15px Feld-Text */
  font-family: inherit;
  outline: none;
  background-color: #ffffff;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
  min-height: 4.8rem;        /* 48px Höhe wie im Design */
}

.mf-field textarea {
  min-height: 14.0rem;       /* 140px */
  resize: vertical;
}

/* Placeholder etwas heller */
.mf-field ::placeholder {
  color: #b3b3b3;
}

/* Focus-Stil */
.mf-field input:focus,
.mf-field textarea:focus,
.mf-field select:focus {
  border-color: #111111;
  box-shadow: 0 0 0 0.1rem rgba(0,0,0,0.06);
}

/* Select Pfeil neutralisieren, damit es „clean“ aussieht */
.mf-field select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/* Checkbox-Zeile */
.mf-checkbox label {
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  font-size: 1.4rem;
  font-weight: 400;
}

.mf-checkbox input[type="checkbox"] {
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 0.3rem;
}

/* Pflichtfeld-Hinweis rechts */
.mf-required-note {
  font-size: 1.3rem;
}

/* Submit-Button */
.mf-submit-wrap {
  margin-top: 4.0rem;        /* 40px */
}

.mf-submit-wrap input[type="submit"] {
  padding: 1.4rem 3.0rem;    /* 14px/30px */
  border-radius: 5.0rem;     /* pill */
  border: none;
  background: #111111;
  color: #ffffff;
  font-size: 1.3rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

.mf-submit-wrap input[type="submit"]:hover {
  background: #000000;
  transform: translateY(-0.1rem);
  box-shadow: 0 0.8rem 1.8rem rgba(0,0,0,0.18);
}

/* Abstände zwischen den Bereichen etwas größer wie im Screenshot */
.wpcf7-form-layout .mf-section-title:first-of-type {
  margin-top: 0;
}
/* Vollbreite-Gitter für einzelne Felder */
.mf-grid-full .mf-field {
  flex: 1 1 100%;
  width: 100%;
}

/* Select selbst */
.mf-grid-full select {
  width: 100%;
}
/* Responsive Anpassungen */
@media (max-width: 768px) {
  .mf-grid-2 .mf-field {
	flex: 1 1 100%;
  }

  .mf-grid-between {
	flex-direction: column;
	align-items: flex-start;
	gap: 0.8rem;
  }

  .mf-section-title {
	font-size: 2.4rem;
	margin: 3.0rem 0 1.8rem;
  }

  .mf-submit-wrap {
	margin-top: 3.0rem;
  }
}

