/*
 Theme Name:   Bricks Child Theme
 Theme URI:    https://bricksbuilder.io/
 Description:  Use this child theme to extend Bricks.
 Author:       Bricks
 Author URI:   https://bricksbuilder.io/
 Template:     bricks
 Version:      1.1
 Text Domain:  bricks
*/


/* Preloader */

html, body {
    overflow-x: hidden;
	overflow: visible;
}

.no-scroll {
   overflow: hidden;
}

/* rndm */

.bc-img-reveal, .bc-img-reveal__element {
  border-radius: 1.5em;
}

.zitat {
	cursor: none;
}

@media screen and (max-width: 380px) {
.nav-wrapper .yfb-svg-prev, .nav-wrapper .yfb-svg-next {
	width: 35px !important;
}
}

/* Fixed Button -> Kontaktformular */

.page-id-3269 .fixed-button__arc, .page-id-3269 .fixed-button__content, .page-id-3269 #brxe-pxqpku, .page-id-2445 .fixed-button__arc, .page-id-2445 .fixed-button__content, .page-id-2445 #brxe-pxqpku, .page-id-4050 .fixed-button__arc, .page-id-4050 .fixed-button__content, .page-id-4050 #brxe-pxqpku, .page-id-4046 .fixed-button__arc, .page-id-4046 .fixed-button__content, .page-id-4046 #brxe-pxqpku {
	display: none;
	visibility: hidden;
}

/* Menu */

.full-menu-container {
  width: 100vw;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0; 
  left: 0;
  background: var(--primary);
  clip-path: polygon(0 0, 100% 0, 100% 0%, 0% 0%);
  z-index: 999;
}

.full-menu-container ul {
  padding: 0;
}

.item-wrapper {
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: fit-content;
  margin: 0 auto;
  cursor: pointer;
}

.item-wrapper a {
  perspective: 25vw;
  cursor: pointer;
}

.menu-items {
  font-weight: 700;
  /*font-size: clamp(18px, 4.5vw, 100px);*/
  font-size: clamp(35px, 5.5vw, 100px);
  line-height: 105%;
  text-transform: uppercase;
  color: var(--secondary);
  position: relative;
  display: block;
  overflow: visible !important;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-transform: translateZ(-.5em) rotateX(0deg);
  transform: translateZ(-.5em) rotateX(0deg);
  transform-origin: center;
  -webkit-transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
}

.menu-items:hover {
  -webkit-transform: translateZ(-.5em) rotateX(90deg);
  transform: translateZ(-.5em) rotateX(90deg);
}


.menu-items span:first-child {
  color: transparent;
  position: relative;
  width: 100%;
  display: block;
}

.menu-items span:nth-child(2) {
  color: var(--secondary);
  position: absolute;
  top: 0;
  width: 100%;
  left: 0;
  opacity: 1;
  -webkit-transform: rotateX(0deg) translateZ(.5em);
  transform: rotateX(0deg) translateZ(.5em);
  backface-visibility: hidden;
  -webkit-transition: opacity 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}

.menu-items:hover span:nth-child(2) {
  opacity: 0;
}

.menu-items span:nth-child(3) {
  color: var(--secondary);
  font-weight: 400;
  position: absolute;
  top: 50%;
  width: 100%;
  left: 0;
  opacity: 0;
  -webkit-transform: rotateX(-90deg) translateZ(0px);
  transform: rotateX(-90deg) translateZ(0px);
  backface-visibility: hidden;
  -webkit-transition: opacity 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}

.menu-items:hover span:nth-child(3) {
  opacity: 1;
}

.sub-items {
  color: var(--secondary);
  list-style: none;
  width: 100%;
  max-height: 0;
  padding-left: 0;
  transition: max-height 0.8s ease-in-out, margin-bottom 0.6s ease-in-out;
}

.sub-items.active {
  max-height: 8em;
  margin-bottom: 2em;
}

@media screen and (max-width: 767px) {
  .sub-items.active {
    margin-bottom: 0.5em;
  }
}

.sub-items li {
  width: fit-content;
}

.sub-items li a {
  position: relative;
  color: #74726C;
  /*font-size: clamp(15px, 2vw, 45px);*/
  font-size: clamp(25px, 2.5vw, 45px);
  line-height: 110%;
  transition: color 0.3s ease-in-out;
}

.sub-items li a::after {
  content: '';
  background-image: url("/wp-content/uploads/2024/08/yfb-arrow.svg");
  background-repeat: no-repeat;
  height: 0.75em;
  width: 0.75em;
  position: absolute;
  right: -0.5em;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  transition: opacity 0.3s ease-in-out, right 0.3s ease-in-out;
}

.sub-items li a:hover {
  color: var(--secondary);
}

.sub-items li a:hover::after {
  right: -1em;
  opacity: 1;
}

.menu-items.hover-active {
  -webkit-transform: translateZ(-.5em) rotateX(90deg);
  transform: translateZ(-.5em) rotateX(90deg);
}

.menu-items.hover-active span:nth-child(3) {
  opacity: 1;
}

.menu-items.hover-active span:nth-child(2) {
  opacity: 0;
}

.sub-menu {
  cursor: pointer;
}


/* Mobile Menu */

@media screen and (min-width: 768px) {
  .desktop-menu {
    display: block;
  }
  .mobile-menu {
    display: none;
  }
}

/* Mobile Styles */
@media screen and (max-width: 767px) {
  .desktop-menu {
    display: none;
  }
  .mobile-menu {
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .item-wrapper {
  align-items: stretch;
  justify-content: flex-start;
  width: 100%;
  margin: 0 auto 1em auto;
  } .item-wrapper a {
  perspective: none;
  }
}

.mobile-menu .menu-items:hover {
  -webkit-transform: none !important;
  transform: none !important;
}

.mobile-menu {
  padding-left: 6%;
	margin-top: 3em;
}


.mobile-menu-items {
  display: block;
  font-size: 32.5px;
  font-size: clamp(30px, 9vw, 40px);
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: .2em;
  text-transform: uppercase;
  color: var(--secondary);
}

.mobile-menu-items span:first-child {
  color: var(--secondary);
}

.fs-submenu {
  position: absolute;
  bottom: 0;
  left: 2.5vw;
  width: 95%;
  height: auto;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 20px;
  padding: 7.5% 7.5% 35% 7.5%;
  border: 0.5px solid rgba(255, 255, 255, 0.4);
  box-shadow: inset 0px 0px 15px black;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  z-index: 2;
  visibility: hidden;
}

@media screen and (min-width: 600px) {
	.fs-submenu {
		padding: 7.5% 7.5% 20% 7.5%;
	}
}

.fs-submenu a {
  display: block;
  font-size: clamp(20px, 6vw, 30px);
  font-weight: 400;
  line-height: 1;
  color: var(--secondary);
  text-transform: none;
  margin-bottom: 1.75em;
}

.fs-submenu-closer {
  color: var(--secondary);
  font-size: 20px;
  font-weight: 400;
  margin-bottom: 1em;
  cursor: pointer;
}

.fs-heading {
  font-size: 18px;;
  line-height: 2;
  color: rgba(255, 255, 255, 0.4);
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  margin-bottom: 3em;
}

/*
.fs-submenu::before {
  content: '';
  position: absolute;
  top: 20px;
  width: 30%;
  height: 0.5px;
  background: gray;
  left: 50%;
  transform: translate(-50%);
}*/


html[data-bricks-builder] .fs-submenu {
  display: none !important;
}

.yfb-arrow-angled {
	stroke: #000 !important;
}

#brxe-xwfytg .yfb-arrow-angled {
	stroke: #fff !important;
}

/* Cuberto Mousefollower */

@media (hover: hover) {
	.mf-cursor {
    display: block;
	}
}
	
@media (hover: none) {
	.mf-cursor {
    display: none;
	}
}

@media screen and (max-width: 478px) {
	.mf-cursor {
		display: none;
	}
}


.mf-cursor {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    direction: ltr;
    contain: layout style size;
    pointer-events: none;
    transition: opacity .3s, color .4s
}

.mf-cursor:before {
    content: "";
    position: absolute;
    top: -24px;
    left: -24px;
    display: block;
    width: 48px;
    height: 48px;
    transform: scale(0.6);
    background: currentColor;
    border-radius: 50%;
    transition: transform .25s ease-in-out, opacity .1s
}

.mf-cursor.-inverse {
    color: #fff
}

@supports(mix-blend-mode: exclusion) {
    .mf-cursor.-exclusion {
        mix-blend-mode: exclusion
    }
    .mf-cursor.-exclusion:before {
        background: #fff
    }
}

.mf-cursor.-pointer:before {
    transform: scale(0.15);
}

.mf-cursor.-text:before {
    opacity: 1;
    transform: scale(2.25)
}

.mf-cursor.-text.-active:before {
    transform: scale(1.6);
    transition-duration: .2s
}

.mf-cursor.-icon:before {
    transform: scale(1.5)
}

.mf-cursor.-sticky:before { 
	transform: scale(1.5); 
} 

.mf-cursor.-size-0-1:before { transform: scale(0.1); } .mf-cursor.-size-0-2:before { transform: scale(0.2); } .mf-cursor.-size-0-5:before { transform: scale(0.5); } .mf-cursor.-size-0-7:before { transform: scale(0.7); } .mf-cursor.-size-1:before { transform: scale(1); } .mf-cursor.-size-1-2:before { transform: scale(1.2); } .mf-cursor.-size-1-5:before { transform: scale(1.5); } .mf-cursor.-size-1-7:before { transform: scale(1.7); } .mf-cursor.-size-2:before { transform: scale(2); } .mf-cursor.-size-2-5:before { transform: scale(2.5); } .mf-cursor.-size-3:before { transform: scale(3); } .mf-cursor.-size-3-5:before { transform: scale(3.5); } .mf-cursor.-size-4:before { transform: scale(4); }

.mf-cursor.-blur .mf-cursor-text {
  color: var(--primary);
  font-size: 1.25em;
}

.mf-cursor.-blur {
  color: rgba(255, 252, 244, 0.4);
}

.mf-cursor.-blur:before {
  -webkit-backdrop-filter: blur(10px);
  -moz-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  transform: scale(3);
}

.mf-cursor.-fixed-btn {
  color: var(--accent);
  transition: all 0s;
}

.mf-cursor.-fixed-btn .mf-cursor-text {
	color: var(--primary);
	font-weight: 600;
	font-size: 1.25em;
}

.mf-cursor.-inverse {
	color: #fff;
}

.mf-cursor.-inverse .mf-cursor-text  {
	color: #000;
}

.mf-cursor.-icon.-active:before {
    transform: scale(1.4)
}

.mf-cursor.-hidden:before {
    transform: scale(0)
}

.mf-cursor-text {
    position: absolute;
    top: -18px;
    left: -18px;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: scale(0) rotate(10deg);
    opacity: 0;
    color: #fff;
    font-size: 1em;
    line-height: 20px;
    text-align: center;
    transition: opacity .4s, transform .3s
}

.mf-cursor.-text .mf-cursor-text,
.mf-cursor.-icon .mf-cursor-text {
    opacity: 1;
    transform: scale(1)
}

.mf-cursor-media {
    position: absolute;
    width: 300px;
    height: 300px;
    margin: -150px 0 0 -150px
}

.mf-cursor-media img,
.mf-cursor-media video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%
}

@supports(object-fit: cover) {
    .mf-cursor-media img,
    .mf-cursor-media video {
        position: static;
        width: 100%;
        height: 100%;
        object-fit: cover;
        transform: translateZ(0)
    }
}

.mf-cursor-media-box {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    transform: scale(0) translateZ(0);
    padding: 1px;
    opacity: 0;
    border-radius: 50%;
    transition: transform .35s, opacity .2s .2s
}

.mf-cursor.-media .mf-cursor-media-box {
    opacity: 1;
    transform: scale(0.696);
    transition-duration: .4s, .4s;
    transition-delay: 0s, 0s
}

/* Cuberto Mousefollower Ende */

/* Line Reveal */

.split-zitat .line-wrapper {
  overflow: hidden;
  display: block;
  position: relative;
}

.split-zitat .line {
  will-change: transform;
}

/* Line Reveal */