/*
 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
*/

:root {
	font-size: 0.0520833vw;
}
body {
	font-size: 16px;
}
.sr-only:not(:focus):not(:active) {
  clip: rect(0 0 0 0); 
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap; 
  width: 1px;
}
h1 {
	font-weight: 700;
	line-height: 1.4;
}
:not(.home) h1 {
	font-size: clamp(26px, 3vw, 60px);
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	letter-spacing: 1.2px;
	text-transform: uppercase;
}
body:not(.home) main,
body.page-parent.page-id-295 main,
body.page-parent.page-id-965 main {
	padding-top: clamp(25px, 6vw, 120px);
}
body.page-parent main {
    padding-top: 0px;
}
h2 {
	margin-bottom: 30rem;
	font-size: clamp(20px, 3vw, 50px) !important;
	font-style: normal !important;
	font-weight: 500 !important;
	line-height: normal !important;
	letter-spacing: 1px !important;
	text-transform: uppercase !important;
}
.ba-htwospec h2 {
	font-size: clamp(20px, 3vw, 26px) !important;
	font-weight: 700 !important;
}
* + h2 {
	margin-top: 30rem;
}

ul {
	/*padding-inline-start: 25rem;*/
	margin-bottom: 30rem;
	margin-top: 30rem;
}

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

/*li {
	line-height: 1.76;
}*/
.brxe-container {
	max-width: 1920px;
}
.bricks-button {
	padding: clamp(10px, 30rem, 20px) clamp(20px, 30rem, 40px) !important;	
}
#brx-header {
	z-index: 9;
	box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.05);
}
.brxe-container-abstand {
	padding-top: clamp(20px, 3vw, 30px);
	padding-bottom: clamp(20px, 3vw, 30px);
}
.brxe-container-abstand-top {
	padding-top: clamp(20px, 3vw, 30px);
}
.brxe-block-gap {
	gap: clamp(15px, 3vw, 20px) !important;
}
#brx-header .brxe-breadcrumbs {
	position: absolute;
    bottom: -100rem;
	color: #293690;
    background: none;
    padding-left: 0;
	padding-right: 0;
    line-height: 1;
    border-radius: 30rem;
    gap: 10rem;
	font-size: clamp(10px, 3vw, 15px);
}
.ba-headersection .brxe-logo  {
	box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.10);
	border-radius: 10rem;
}

.parent-pageid-110 #brx-header .brxe-breadcrumbs,
.page-id-274 #brx-header .brxe-breadcrumbs,
.page-id-1005 #brx-header .brxe-breadcrumbs,
.page-id-1011 #brx-header .brxe-breadcrumbs,
.page-id-321 #brx-header .brxe-breadcrumbs {
	padding: 0rem 10rem;
	color: #293690;
	height:20px;
}
.home .brxe-breadcrumbs {
	display: none;
}/*
#brx-header :where(.brxe-nav-menu) .bricks-nav-menu button {
	display: none;
}*/
#brx-header :where(.brxe-nav-menu) .bricks-nav-menu li {
	position: static;
	font-size: clamp(13px,30rem,20px);
	font-weight: 600;
}

#brx-header .brxe-nav-menu {
	align-self: center;
}

/*#brx-header .brxe-nav-menu a {
	padding-bottom: 30rem;
}*/

#brx-header :where(.brxe-nav-menu) .bricks-nav-menu li:hover {
	color: #29A0CA;
}

#brx-header :where(.brxe-nav-menu) .bricks-nav-menu li:hover > .brx-submenu-toggle button {
	background-image: url("/wp-content/uploads/2025/08/Vector-5.svg");
}

.brx-submenu-toggle.icon-right {
	position: relative;
}
/**
.brx-submenu-toggle.icon-right button {
	content: "";
	height: 12rem;
	width: 12rem;
	background: url("/wp-content/uploads/2025/08/Vector-4.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	padding-right: 40rem;
}

.menu-item-407 > .brx-submenu-toggle.icon-right button,
.menu-item-1156 > .brx-submenu-toggle.icon-right button,
.menu-item-1174 > .brx-submenu-toggle.icon-right button,
.menu-item-538 > .brx-submenu-toggle.icon-right button {
	margin-top: 12rem;
	align-self: baseline;
}
**/

.brx-submenu-toggle.icon-right button svg {
	display: none;
}


#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu {
    left: 0 !important;
	right: 0 !important;
	top: 109rem;
    margin: 0;
	background: #f0f0f0;
	color: #293690;
	display: grid;
	padding: 0;
	text-align: center;
	justify-content: center;
}
.brxe-nav-menu.show-mobile-menu .bricks-mobile-menu-wrapper {
	z-index: 9999;
}
#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu:before {
	content: "";
	top: 0;
	left: 50%;
	transform: translatex(-50%);
	height: 1px;
	background: #c7c7c7;
	width: 1100rem;
	position: absolute;
}
#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu li {
	width: auto;
	line-height: 1;
}
#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu li {
	padding: 40rem 0;
	width: 400rem;
}
#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu li a {
	padding: 0;
}
#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu li:after {
	content: "";
	width: 1px;
	height: 30rem;
	background: #c7c7c7;
	right: 0;
	top: 50%;
	transform: translatey(-50%);
	position: absolute;
}
#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu li:last-child:after {
	display: none;
}

#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu .sub-menu {
	top: 99rem;
	padding: 0 0 25rem;
	gap: 20rem 0;
	flex-wrap: wrap;
	display: grid;
}
#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu, 
#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu .sub-menu {
	grid-template-columns: repeat(4, 175px);
}
@media screen and (min-width: 2000px) {
	#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu .sub-menu {
		top: 90rem;
	}
}

#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu .sub-menu:before {
	display: none;
}

#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu .sub-menu li {
	font-weight: 400;
	text-align: left;
	padding: 0;
}

#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu .sub-menu li:after {
	display: none;
}

.ba-langswitch {
	display: flex;
	align-items: center;
}

.ba-langswitch .wpml-ls-legacy-dropdown a {
	background: none;
	border: none;
	padding: 0;
	color: #293690 !important;
	line-height: 1.5;
}

.ba-langswitch .wpml-ls-legacy-dropdown {
	width: 40rem;
}

.wpml-ls-sub-menu {
	border: none !important;
}
/**
.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:before {
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	height: 12rem;
	width: 12rem;
	background: url("/wp-content/uploads/2025/08/Vector-4.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	transform: translatey(-50%);
}
**/
:where(.brxe-nav-menu) .bricks-mobile-menu-toggle span {
	background-color: #293690;
}

.wpml-ls-item-toggle::after {
    display: none !important;
}

:where(.brxe-nav-menu) .bricks-nav-menu {
	gap: 60rem;
	padding-top: 16rem;
	margin-top: 0;
}
@media screen and (min-width: 2000px) {
	:where(.brxe-nav-menu) .bricks-nav-menu {
		gap: 45px;
	}
	#brxe-bdgfwo, #brxe-yhljam {
		min-height: 700px !important;
	}
	#brxe-yguwcp {
		max-height: 700px;
	}
}
:where(.brxe-nav-menu) .bricks-nav-menu li {
	margin: 0;
}

.home #brx-header {
	position: sticky;
	top: 0;
}

.ba-headersection .brxe-logo img {
	height: 100%;
	min-height: 40px;
}
.ba-headersection .brxe-logo {
	top: 25rem;
	position: relative;
	z-index: 999;
	max-height: 120px !important;
}
#brx-content .ba-homeslidersection h2 {
	color: #fff;
	font-weight: 400 !important;
	letter-spacing: 1.08px !important;
	margin: 0;
}
#brx-content .ba-homeslidersection .ba-homeslidertxtone p {
	text-shadow: 0 4rem 4rem rgba(0, 0, 0, 0.25);
}
#brx-content .ba-homeslider .splide__pagination .splide__pagination__page {
	margin: 0;
	height: 10px;
	width: 10px;
	background-color: transparent;
	border: solid 1rem #fff;
}
#brx-content .ba-homeslider .splide__pagination .splide__pagination__page.is-active {
	background-color: #fff;
}
.ba-leftrightsection .brx-grid > .brxe-block {
	background: #f0f0f0;
	border-radius: 10px;
}
.ba-leftrightsection .splide__slide img {
	height: 350rem;
	width: auto;
	max-width: 100%;
	object-fit: contain;
}
.ba-logoblock img {
	height: clamp(45px, 90rem, 60px) !important;
	min-height: 45px;
	width: auto;
	object-fit: contain;
}
.ba-logoblock .brx-grid {
	justify-items: center;
	align-items: center !important;
}
.brxe-image.caption {
	overflow: visible;
}
.bricks-image-caption {
	position: absolute;
	top: -40rem;
	color: #000;
	background: none;
	bottom: auto;
	padding: 0;
}
.splide__arrow {
	width: auto;
}
.splide__arrow--prev {
	left: 30rem;
}
.splide__arrow--next {
	right: 30rem;
}
.ba-textsmall {
	font-size: 16px;
	line-height: 1.7;
}
.ba-greytextbox {
	min-width: 623rem;
}
.ba-greyboxes.ba-greyboxes-three.brxe-block {
	padding-right: 50rem;
	padding-left: 50rem;
}

.ba-productmenublock h2 {
	margin: 0;
}
.ba-productmenublock .brxe-nav-menu {
	align-content: center;
}
.ba-productmenublock .bricks-nav-menu {
	flex-wrap: wrap;
	gap: 30rem 60rem;
	margin-top: 0;
	padding-top: 0;
}
.ba-productmenublock .bricks-nav-menu li {
	position: relative;
}
.ba-productmenublock .bricks-nav-menu li:after {
	content: "";
	position: absolute;
	height: 100%;
	width: 1px;
	background: #c7c7c7;
	right: -30rem;
	top: 0;
}
.ba-productmenublock .bricks-nav-menu li:last-child:after {
	display: none;
}
.ba-productsection img {
	width: 100%;
}
@media (min-width: 1300px) {
	.ba-subpagesection img {
		max-width: 1200px;
	}
}
#brx-footer,
#brx-footer a {
	font-size: clamp(14px, 16rem, 16px);
}
#brx-footer h3 {
	margin-bottom: 20rem;
	font-size: clamp(18px, 26rem, 26px);
}
.ba-linkedincontainer a {
	position: fixed;
	right: 100rem;
	bottom: 100rem;
	transition: all 0.5s ease; /* Smooth movement */
}
/*.ba-linkedincontainer a.at-bottom {
  right: 185px;
  bottom: 120rem;
}*/
#kontakt {
	column-gap: 40px;
}
.ba-footerlinks {
	display: flex;
	gap: 40rem;
	align-self: center;
}
.ba-footerlinks p {
	margin: 0;
}
.ba-footersmall p {
	font-size: clamp(14px,15rem,20px);
	line-height: 1.2;
}
.ba-footercolone, .ba-footercoltwo {
	position: relative;
}
@media screen and (max-width: 767px) {
	.ba-footercolone:after, #germany-address:after {
		content: "";
        position: absolute;
        left: 0;
        bottom: -10px;
        height: 1px;
        width: 100%;
        background: #37B3DF;
	}
}
@media screen and (min-width: 768px) {
	.ba-footercolone:after, #germany-address:after {
		content: "";
		position: absolute;
		right: -0.5vw;
		top: 0;
		height: 100%;
		width: 1px;
		background: #37B3DF;
	}
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
	#kontakt {
		flex-wrap: wrap;
		gap: 40px;
		column-gap: 20px;
	}
	#kontakt > div:nth-child(1) {order: 3;}
	#kontakt > div:nth-child(2) {order: 1;}
	#kontakt > div:nth-child(3) {order: 2;}
	#kontakt > div:nth-child(4) {order: 4;}
	#kontakt > div:nth-child(5) {order: 5;}
	
	#kontakt > div:nth-child(2),
	#kontakt > div:nth-child(3),
	#kontakt > div:nth-child(5) {
		width: 48%;
	}
	
	#kontakt > div:nth-child(1),
	#kontakt > div:nth-child(4)	{
		width: 23%;
	}
	#germany-address:after {
		content: unset;
	}
}
.ba-fallbeispielsection table {
	width: auto;
}
.ba-fallbeispielsection table td {
	padding-right: 40rem;
}
.page-id-295, .page-id-965, .page-id-1042, .page-id-986, .page-id-1044, .page-id-1021, .page-id-965, .page-id-1085,.page-id-970,.page-id-971,.page-id-973,.page-id-978,.page-id-963,.page-id-985,.page-id-291, .page-id-295,.page-id-549, .page-id-297, .page-id-296,.page-id-293,.page-id-294, .page-id-289,.page-id-334,.page-id-336,.page-id-335,.page-id-332,.page-id-527,.page-id-525,.page-id-1133,.page-id-995{
	background-color:#E2ECF1 !important;
}
.submit-button-wrapper button {
	padding: 10px 20px;
}
@media (max-width: 767px) {
    .ba-textsmall {
	font-size: 16px;
  }
	.ba-htwospec h2 {
		font-size: 22px !important;
   }
	.ba-footersmall p {
		font-size: 16px !important;
		    line-height: 1.6;
	}
	#brx-footer h3{
		font-size:20px !important;
		margin-bottom:10px;
		margin-top:10px;
	}
	#brx-footer, #brx-footer a {
		font-size:14px !important;
	}
	#brx-header .brxe-breadcrumbs{
		font-size:15px !important;
		font-weight: 400;
        bottom: -100rem;
	}
	.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:before {
		left:30px!important;
		width:14px !important;
		height:14px !important;
	}
	.bricks-image-caption{
		top:-60px !important;
	}
}

@media (max-width: 478px) {
    .ba-textsmall {
	font-size: 16px;
  }
	.ba-htwospec h2 {
		font-size: 22px !important;
   }
	.ba-footersmall p {
		font-size: 16px !important;
		    line-height: 1.6;
	}
	#brx-footer h3{
		font-size:20px !important;
		margin-bottom:10px;
		margin-top:10px;
	}
	#brx-footer, #brx-footer a {
		font-size:14px !important;
	}
	#brx-header .brxe-breadcrumbs{
		bottom: -160rem;
	}
	.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:before {
		left:24px!important;
		width:12px !important;
		height:12px !important;
	}
	.bricks-image-caption{
		top:-60px !important;
	}
	.ba-leftrightsection .splide__slide img{
		height:540rem !important;
	}
	#brx-content .ba-homeslider .splide__pagination{
	  gap:70rem !important;
	}
	#brx-header .brxe-nav-menu {
		align-self: center !important;
	}
	#brxe-csrvcj {
		width: 215rem !important;
		top: -90rem !important;
    }
	
}
@media screen and (max-width: 767px) {
	.ba-productmenublock .bricks-nav-menu-wrapper.never .bricks-nav-menu {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
	}
	.ba-productmenublock .bricks-nav-menu li:after {
		display: none;
	}
}
@media screen and (max-width: 477px) {
	.ba-productmenublock .bricks-nav-menu-wrapper.never .bricks-nav-menu {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}
}
@media screen and (min-width: 768px) {
	#brxe-rpwevc, nav.bricks-nav-menu-wrapper, header .bricks-nav-menu {
		height: 100%;
	}
	header .bricks-nav-menu {
		padding-top: 0;
	}
	header .bricks-nav-menu > li {
		display: flex;
		align-items: center;
	}
}
#brxe-spmqsz {
	min-width: 45px;
	min-height: 45px;
	max-width: 100px;
	max-height: 100px;
}
.ba-homeslidertxtbox {
	width: 30vw;
    min-width: 600px;
	height: auto;
	color: #fff;
	background-color: rgba(0,0,0,0.5);
	border-radius: 10px;
	padding: clamp(15px, 35rem, 35px);
	padding-bottom: clamp(35px, 3vw, 65px);
	row-gap: clamp(15px, 35rem, 65px);
}

#brx-content .ba-homeslider .splide__pagination {
	left: calc(4.1vw + 20rem);
	bottom: clamp(25px, 100rem, 145px);
	gap: clamp(15px, 30rem, 25px);
	padding-left: clamp(15px, 35rem, 35px);
}
.ba-homeslidertxtone {
    font-size: 30px;
}
.ba-homeslidertxtone  + .brxe-text {
	font-size: 25px;
}
@media (max-width: 1024px) {
	.ba-homeslidertxtbox h2 {
		font-size: 40px;
	}
	.ba-homeslidertxtone {
		font-size: 24px;
	}
	.ba-homeslidertxtone  + .brxe-text {
		font-size: 22px;
	}
}
@media (max-width: 767px) {
	.ba-homeslidertxtbox {
		width: 90%;
		min-width: 400px;
		row-gap: 15px;
	}
	.ba-homeslidertxtbox h2 {
		font-size: 34px;
	}
	.ba-homeslidertxtone {
		font-size: 22px;
	}
	.ba-homeslidertxtone  + .brxe-text {
		font-size: 20px;
	}
}
@media (max-width: 478px) {
	.ba-homeslidertxtbox {
		min-width: 290px;
		padding-bottom: 35px;
	}
	.ba-homeslidertxtbox h2 {
        font-size: 25px;
		line-height: 1.2;
    }
	.ba-homeslidertxtone {
		font-size: 20px;
		line-height: 1;
	}
	.ba-homeslidertxtone  + .brxe-text {
		font-size: 18px;
	}
}

#kontakt {
    padding-top: 100rem;
    padding-bottom: 100rem;
    flex-direction: row;
    column-gap: 20px;
	align-items: stretch;
}
@media (max-width: 767px) {
    #kontakt {
        row-gap: 20px;
    }
}
@media (min-width: 768px) and (max-width: 991px) {
	.ba-fusszeile .brxe-container {
		flex-wrap: wrap;
		display: flex;
		text-align: center;
	}
	.ba-fusszeile .brxe-container > .brxe-block:last-child {
		align-items: center !important;
	}
	.ba-fusszeile .brxe-container > .brxe-block:last-child p {
		text-align: center;
	}
}
:where(.brxe-nav-menu) .bricks-nav-menu>li.menu-item-has-children:hover:before {
	left: 0;
}
@media (min-width: 992px) {
	#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu,
	#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu .sub-menu {
		grid-template-columns: repeat(4, 180px);
	}
}
@media (min-width: 1024px) {
	#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu,
	#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu .sub-menu {
		grid-template-columns: repeat(4, 215px);
	}
}
@media (min-width: 1280px) {
	.home-products-textbox p {
		width: 80%;
	}
	#kontakt div:not(:first-child):not(:last-child) {
		padding: 0 3vw;
	}
	header .ba-headersection {
		height: 115px !important;
	}
	#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu {
		top: 110px;
	}
	#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu .sub-menu {
		top: 85px;
	}
	#brx-header .brxe-breadcrumbs {
		bottom: -75px;
	}
	#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu li {
		padding: 40px 0;
		width: 250px;
	}
	#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu .sub-menu li {
		padding: 0;
		width: 250px;
	}
	#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu,
	#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu .sub-menu {
		grid-template-columns: repeat(4, 250px);
		padding-left: 9vw;
		justify-content: center;
	}
	#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu:has(> li:nth-child(2):last-child) {
		grid-template-columns: repeat(2, 250px);
	}
}
@media (max-width: 767px) {
	.brxe-nav-menu.show-mobile-menu .bricks-mobile-menu-toggle[aria-expanded="true"] {
		z-index: 10000;
		color: white;
		position: absolute;
		left: 58%;
		top: 15px;
	}
	.bricks-mobile-menu-wrapper {
		display: flex;
		justify-content: center;
	}
}
@media (max-width: 478px) {
	.brxe-nav-menu.show-mobile-menu .bricks-mobile-menu-toggle[aria-expanded="true"] {
		left: 265px;
	}
}
@media (min-width: 768px) and (max-width: 899px) {
	.brxe-container {
		padding-right: 3vw !important;
		padding-left: 3vw !important;
	}
}
@media (min-width: 2000px) {
	#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu, 
	#brx-header :where(.brxe-nav-menu) .bricks-nav-menu .sub-menu .sub-menu {
        grid-template-columns: repeat(4, 300px);
    }
	#kontakt div:not(:first-child):not(:last-child) {
        padding: 0 1vw;
    }
}
body.page-id-321 #brx-header .brxe-breadcrumbs,
body.page-id-1011 #brx-header .brxe-breadcrumbs,
body.page-id-1005 #brx-header .brxe-breadcrumbs,
body.page-id-274 #brx-header .brxe-breadcrumbs{
	color: #fff;
}

body:not(.page-id-1005):not(.page-id-274):not(.page-id-321):not(.page-id-1011) footer {
	margin-top: clamp(10px, 40rem, 60px);
}
