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

  /* DEFINE SPACING FRAMEWORK VARIABLES */

  /* GAP SCALE */
  /* https://utopia.fyi/space/calculator?c=320,16,1.2,1280,18,1.25,5,2,&s=0.75|0.5|0.25,1.5|2|3|4|6,s-l&g=s,l,xl,12 */
  --gap-xxxs: clamp(0.25rem, 0.15rem + 0.52vw, 0.56rem);
  --gap-xxs: clamp(0.5rem, 0.38rem + 0.63vw, 0.88rem);
  --gap-xs: clamp(0.75rem, 0.63rem + 0.63vw, 1.13rem);
  --gap-s: clamp(1rem, 0.77rem + 1.15vw, 1.69rem);
  --gap-m: clamp(1.5rem, 1.25rem + 1.25vw, 2.25rem);
  --gap-l: clamp(2rem, 1.54rem + 2.29vw, 3.38rem);
  --gap-xl: clamp(3rem, 2.5rem + 2.5vw, 4.5rem);
  --gap-xxl: clamp(4rem, 3.08rem + 4.58vw, 6.75rem);

  /* SECTION TOP AND BOTTOM PADDING SCALE */
  /* https://utopia.fyi/space/calculator?c=320,24,1.2,1280,40,1.25,5,2,&s=0.75|0.5|0.25,1.5|2|3|4|6,s-l&g=s,l,xl,12 */
  --section-xxxs: clamp(0.38rem, 0.08rem + 1.46vw, 1.25rem);
  --section-xxs: clamp(0.75rem, 0.38rem + 1.88vw, 1.88rem);
  --section-xs: clamp(1.13rem, 0.67rem + 2.29vw, 2.5rem);
  --section-s: clamp(1.5rem, 0.75rem + 3.75vw, 3.75rem);
  --section-m: clamp(2.25rem, 1.33rem + 4.58vw, 5rem);
  --section-l: clamp(3rem, 1.5rem + 7.5vw, 7.5rem);
  --section-xl: clamp(4.5rem, 2.67rem + 9.17vw, 10rem);

  /* CONTEXTUAL GAP VARIABLES */
  --grid-gap: var(--gap-m);
  /* Gap between columns */
  --content-gap: var(--gap-m);
  /* Gap between content elements */
  --container-gap: var(--gap-m);
  /* Gap between multiple containers in sections */
}


/* HEADING SIZE UTILITY CLASSES */

/*  Do not set any headings typography in Theme Styles. 
REMOVE any font sizes or line heights on all heading levels in Theme Styles > Typography. */

.h-big {
  font-size: var(--h-big);
  line-height: 1.05;
}

.h-title {
  font-size: var(--h-title);
  line-height: 1.05;
}

h1, .h1 {
  font-size: var(--h1);
  line-height: 1.1;
}

h2, .h2, .brxe-block .brxe-text h2 {
  font-size: var(--h2);
  line-height: 1.2;
}

h3, .h3 {
  font-size: var(--h3);
  line-height: 1.3;
}

h4, .h4 {
  font-size: var(--h4);
  line-height: 1.4;
}

h5, .h5 {
  font-size: var(--h5);
  line-height: 1.5;
}

h6, .h6 {
  font-size: var(--h6);
  line-height: 1.6;
}

/* WIDTH SIZE UTILITY CLASSES */
/*
section#brxe-1dbdaa,
body.home section {
  width: 100% !important;
  max-width: 100% !important;
}
*/
section.pswp__scroll-wrap {
  width: 100% !important;
}

.mit-container-m {
  width: 48rem;
}

.mit-container-s {
  width: 40rem;
}

.mit-container-xs {
  width: 25rem;
}

/* TYPOGRAPHICAL SPACING - IF *NOT* USING FLEX ROW GAP IN EXTRAS LESSON */

/* Reset all margins */
body :is(p, h1, h2, h3, h4, h5, h6, ul, ol, li) {
  margin: 0;
}

/* Responsive bottom margin PARAGRAPHS & LISTS */
body :is(p, ul, ol) {
  /* margin-block-end: 1em; */
}

/* Responsive bottom margin HEADINGS */
body :is(h1, h2, h3, h4, h5, h6) {
  margin-block-end: 0.5em;
}

/* Adds responsive top margin on HEADINGS within Rich Text and Posts */
body .brxe-text *+ :is(h1, h2, h3, h4, h5, h6),
body .brxe-post-content:not([data-source="bricks"]) *+ :is(h1, h2, h3, h4, h5, h6) {
  margin-block-start: 1em;
}

/* Responsive bottom margin LIST ITEMS */
body .brxe-text * li,
body .brxe-post-content:not([data-source="bricks"]) * li {
  margin-block-end: 0.5em;
}

/* Unindents lists within Rich Text and Posts */
body .brxe-text *+ :is(ul, ol),
body .brxe-post-content:not([data-source="bricks"]) *+ :is(ul, ol) {
  padding-left: 16px;
  margin-top: 0;
}

/* SECTION HEIGHT UTILITY CLASSES */
/* Do NOT set any section styles in Theme Styles. */
/* 'padding-block' is top and bottom. 'padding-inline' is left and right */

.section-xl {
  padding-block: var(--section-xl);
}

.section-l {
  padding-block: var(--section-l);
}

section, .section-m {
  /* Default section padding, all sections */
  padding-block: var(--section-m);
  /* Top and bottom padding */
  padding-inline: var(--gap-m);
  /* Left and right padding */
  row-gap: var(--container-gap);
  /* Vertical gap between containers inside sections */
}

.section-s {
  padding-block: var(--section-s);
}

.section-xs {
  padding-block: var(--section-xs);
}

.section-xxs {
  padding-block: var(--section-xxs);
}

.section-xxxs {
  padding-block: var(--section-xxxs);
}


/* GAP UTILITY CLASSES */
/* Set on a parent element to affect its direct children */

/* Gap between grid columns. Set in addition to a grid class.  */
.grid-gap {
  gap: var(--grid-gap);
}

.mit-column-gap {
  column-gap: 10px;
}

/* Vertical spacing between content elements. Set on parent of the elements you want the gap between. */
.content-gap {
  gap: var(--content-gap);
}

/* If you want smaller vertical spacing between content elements. As above. */
.content-gap-s {
  gap: calc(var(--content-gap)/1.5);
}

.margin-bottom-xxxs {
  margin-bottom: var(--gap-xxxs);
}

.margin-bottom-xs {
  margin-bottom: var(--gap-xs);
}

/* Vertical gap between containers inside a section. 
You don't usually have to set this, because we already have a default row gap set for sections, above */
.container-gap {
  gap: var(--container-gap);
}


.skip-links-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  transform: translateY(-102%);
  transition: transform .3s;
  z-index: 9999;
}

.skip-links-wrapper .skip-link {
  position: static;
  transform: none;
  color: #000;
}

.skip-links-wrapper .skip-link:focus {
  background-color: var(--focus-color); 
}

.skip-links-wrapper:focus-within {
  transform: translateY(0);
}


/*
MENU
*/
body.bricks-is-frontend.bricks-is-frontend .mit-menu :focus-visible {
    outline-color: var(--black);
}
.mit-menu .brxe-container {
  max-width: 100%;
}
ul.brxe-div.brx-dropdown-content.brx-submenu-positioned {
    padding-bottom: 1rem;
}
.brxe-section.mit-menu {
  padding-left: 3rem;
  padding-right: 3rem;
}

.mit-menu .mit-logo img {
  width: 16rem;
  height: auto;
  z-index: 9999;
  position: relative;
}

.mit-menu .mit-logo:hover {
  opacity: 1;
}

.mit-menu .mit-icon-50 {
  width: 50px;
  height: 50px;
}

.mit-link-white {
  color: var(--bricks-color-pxwlqu) !important;
  font-weight: 700;
  -o-transition: .25s linear;
  -webkit-transition: .25s linear;
  transition: .25s linear;
}

.mit-link-white:hover {
  color: var(--primary) !important;
  font-weight: 700;
  -o-transition: .25s linear;
  -webkit-transition: .25s linear;
  transition: .25s linear;
}

.mit-menu .brx-dropdown-content::before {
  border-bottom-color: var(--bricks-color-pxwlqu);
}

.mit-menu .brx-dropdown-content {
  gap: 0;
}

.mit-menu .brx-dropdown-content li.menu-item a {
  color: var(--text-dark);
}

.mit-menu .brx-dropdown-content li.menu-item a::after {
  background-color: var(--bricks-color-gsulie);
  width: 90%;
  height: 2px;
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0.7;
}

.mit-menu .brx-dropdown-content li.menu-item a {
  position: relative;
  padding-block: 1rem;
}

.mit-menu .brx-dropdown-content li.menu-item a:first-of-type {
  padding-top: 1rem;
}

.mit-menu .brx-dropdown-content li.menu-item a:last-of-type {
  padding-bottom: 1rem;
}


/* 
GLOBAL
*/

html {
  scroll-behavior: smooth;
}

.text--white a:hover {
  color: #fff;
}

.mit-link-white:before,
.mit-menu nav ul li .brxe-text-link:before,
.mit-menu nav ul li .brx-submenu-toggle a:before,
.mit-link-animation a:before {
  border-bottom: 2px solid var(--text-dark);
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  bottom: 0;
  content: "";
  height: 0;
  left: 0;
  position: absolute;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -o-transition: .25s linear;
  -webkit-transition: .25s linear;
  transition: .25s linear;
  visibility: hidden;
  width: 100%;
}

.mit-menu nav ul li .brxe-text-link:before {
  border-bottom: 2px solid var(--text-dark);
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  bottom: 0;
  content: "";
  height: 0;
  left: 0;
  position: absolute;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -o-transition: .25s linear;
  -webkit-transition: .25s linear;
  transition: .25s linear;
  visibility: hidden;
  width: 100%;
} 

.mit-menu nav ul li .brxe-text-link:hover:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  visibility: visible;
}

.mit-link-white:hover:before,
.mit-menu nav ul li .brx-submenu-toggle a:hover:before,
.mit-link-animation a:hover:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  visibility: visible;
}
.mit-menu nav .mit-sublink ul.brx-dropdown-content li.menu-item a.brxe-text-link:before {
  width: 90%;;
}
.mit-menu nav .mit-sublink ul.brx-dropdown-content li.menu-item a.brxe-text-link:hover:before {
    -webkit-transform: scaleX(1) translateX(-50%);
    transform: scaleX(1) translateX(-50%);
    visibility: visible;
    left: 50%;
}

.mit-menu nav ul li .brx-submenu-toggle a:hover,
.mit-menu nav ul li .brxe-text-link:hover,
.mit-color-orange-hover a:hover {
  color: var(--text-dark);
}

.brx-submenu-toggle.aria-current a:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  visibility: visible;
}
.mit-menu nav ul li .brxe-text-link.mit-link:before {
    width: 100%;
}
.brxe-text.mit-tablet-hidden.mit-color-white.mit-link-animation.mit-color-orange-hover a::before {
    border-bottom: 1px solid var(--bricks-color-vtwuqc);
}
.brxe-text.mit-tablet-hidden.mit-color-white.mit-link-animation.mit-color-orange-hover a:hover {
  color: var(--bricks-color-vtwuqc);
  border-bottom: 1px solid transparent;
}
.brxe-text.mit-tablet-hidden.mit-color-white.mit-link-animation.mit-color-orange-hover a {
  color: var(--white);
  border-bottom: 1px solid var(--white);
  transition: all .2s ease-in-out;
}

.brxe-text.mit-tablet-hidden.mit-color-white.mit-link-animation.mit-color-orange-hover a.brxe-text-link a:hover {
  opacity: 0.8!important;
}


.mit-menu nav ul.brx-dropdown-content li.menu-item a.brxe-text-link:hover:before {
    -webkit-transform: scaleX(1) translateX(-50%);
    transform: scaleX(1) translateX(-50%);
    visibility: visible;
}

.brx-submenu-toggle.aria-current a:after,
#brxe-15acd1 .brx-nav-nested-items > li > [aria-current="page"]:after {
  content: "";
  border-bottom: 2px solid var(--text-dark);
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  bottom: 0;
  height: 0;
  left: 0;
  position: absolute;
  width: 100%;
}

#brxe-15acd1 .brx-dropdown-content > li > [aria-current="page"]:after {
  content: "";
  background-color: var(--black);
}
.mit-menu nav ul li .brx-submenu-toggle a:hover, .mit-menu nav ul li .brxe-text-link:hover {
        opacity:0.7;
}

.mit-menu nav ul li .brx-submenu-toggle a, .mit-menu nav ul li .brxe-text-link {
       transition: all .25s ease-in-out;
}
#brxe-15acd1 .brx-dropdown-content > li > [aria-current="page"] {
  opacity: 0.8;
}

.mit-max-width {
  max-width: 100% !important;
}
.mit-width-m {
  width: clamp(40rem, 30vw, 80rem);
}

.mit-width-l {
  width: clamp(60rem, 30vw, 80rem);
}

.mit-margin-right-m {
  margin-right: 2rem!important;
}

.mit-padding-left-10rem {
  padding-left: 10rem;
}

.mit-padding-bottom-0 {
  padding-bottom: 0;
}

body.bricks-is-frontend :focus {
  outline: 0;
}

.mit-margin-0 p {
  margin: 0 !important;
}

.mit-tablet-visible {
  display: none !important;
}

.mit-absolute {
  position: absolute;
  top: 0;
}

a,
.mit-nav-link {
  position: relative;
  color: var(--bricks-color-vtwuqc);
}

.mit-margin-m {
  margin-right: 2rem!important;
}

.mit-link-brown a {
  /*color: var(--bricks-color-bklxhg) !important;*/
  color: #000 !important;
  transition: all .2 ease-in-out;
  font-weight: 600;
  text-decoration: underline;
}

.mit-link-brown a:hover {
  color: var(--bricks-color-bklxhg) !important;
  opacity: 0.8;
  transition: all .2 ease-in-out;
  text-decoration: underline;
}

.mit-filter-black img {
  filter: brightness(0) saturate(100%) !important;
}

/* GRID */

.mit-grid, .mit-grid-2,
.mit-grid-1-1, .mit-grid-1-1, .mit-grid-2-1, .mit-grid-1-1-1, .mit-grid-1-3-column, .mit-grid-1-3, .mit-grid-1-2, .mit-grid-3-1 {
  display: grid;
  gap: var(--grid-gap);
}

.mit-grid-1-1-1 {
  grid-template-columns: 1fr 1fr 1fr !important;
}

.mit-grid-2,
.mit-grid-1-1 {
  grid-template-columns: 1fr 1fr !important;
}

.mit-grid-1-2 {
  grid-template-columns: 1fr 2fr !important;
}

.mit-grid-2-1 {
  grid-template-columns: 2fr 1fr !important;
}

.mit-grid-3-1 {
  grid-template-columns: 3fr 1fr !important;
}

.mit-grid-1-3-column {
  grid-template-columns: unset !important;
}

.mit-grid-1-3 {
  grid-template-columns: 1fr 3fr !important;
}

.mit-grid-span-2 {
  grid-column: 1 / span 2;
}

.mit-grid-span-3 {
  grid-column: 1 / span 3;
}

.mit-grid-second-1 {
  grid-row: 2 / span 1;
  grid-column: 1 / -1;
  /* Span across both columns */
}

/* 
  BUTTON
*/

.mit-btn,
.bricks-button {
  position: relative;
  color: #000;
}

.mit-btn:hover, .hero-section__button,
.bricks-button:hover {
  background-color: #ec7404c7;
}

.mit-btn.bricks-button:hover,
.bricks-button:hover {
  opacity: 1;
  color: #000;
}

/*
HOME
*/

.splide__slide img {
  aspect-ratio: 16/9;
}

.mit-curve {
  position: relative;
  overflow: hidden;
}

.mit-curve::before {
  content: "";
  background-color: var(--bricks-color-oydkfx);
  width: 100%;
  height: 100%;
  position: absolute;
  left: -36%;
  top: 0;
  z-index: -1;
  max-width: 100%;
}

.mit-border-radius-box::before {
  content: "";
  background-color: var(--bricks-color-oydkfx);
  width: 100%;
  height: 100vh;
  position: absolute;
  right: 50%;
  z-index: -1;
  max-width: 100%;
  border-top-right-radius: 22rem;
}

.brxe-block.mit-gap.mit-bg::before {
  content: "";
  position: absolute;
  height: 100vh;
  background: var(--bricks-color-oydkfx);;
  width: 50%;
  top: 0;
  z-index: -1;
}

.mit-grid-item {
  aspect-ratio: 1;
  min-width: 0;
}

/*
  MAP
*/
.mit-map {
  width: 680px;
  max-width: 100%;
  justify-self: center;
  justify-content: center;
  height: 100%;
}

/* 
  BORDER
*/

.mit-border-radius-left::before,
.mit-border-radius-right::before {
    content: "";
    border: 1px solid var(--bricks-color-vtwuqc);
    height: 100%;
    width: 100%;
    position: absolute;
    z-index: -1;
    top: -2rem;
}

.mit-border-radius-right::before {
    right: -2rem;
}

.mit-border-radius-left::before {
    left: -2rem;
}

.mit-img-border-radius-right {
  border-top-right-radius: 15rem;
}

/* 
FOOTER
*/
.mit-footer-link::after {
  content: "\f105";
  color: #fff;
  font-family: "Font Awesome\ 6 Solid";
  font-weight: 900;
  margin-left: 8px;
  position: absolute;
}

.footer-bottom-section__text-basic a {
  color: var(--bricks-color-pxwlqu);
  font-weight: 600;
}

p.brxe-text-basic.footer-bottom-section__text-basic a:hover {
  color: var(--bricks-color-vtwuqc);
  text-decoration: underline;
}

.mit-footer-nav-links li.menu-item a.brxe-text-link {
  color: var(--bricks-color-pxwlqu);
  text-transform: uppercase;
}

.mit-footer-nav-links li.menu-item:after {
  content: "|";
  color:  var(--bricks-color-pxwlqu);
  position: absolute;
  right: -0.7rem;
}

.mit-footer-nav-links li.menu-item {
  position: relative;
}

.mit-footer-nav-links .brx-nav-nested-items {
  gap: 1rem;
}

.mit-footer-nav-links li.menu-item:last-of-type:after {
  content: "";
}

.mit-footer-nav-links li.menu-item a.brxe-text-link:hover {
  color: var(--bricks-color-vtwuqc);
  text-decoration: underline;
}

.mit-footer-nav-links li.menu-item a.brxe-text-link[aria-current="page"] {
  color: var(--bricks-color-vtwuqc);
  text-decoration: underline;
}


/*
UNORDERED LIST
*/

/* 
ANIMATION
*/



/* 
INTERNAL PAGES
*/
.referenzen-section__link a:hover {
  color: var(--body-color, var(--text-dark));
  text-decoration: underline;
}


.mit-location-team-member img {
  outline: 1px solid var(--bricks-color-vtwuqc);
  outline-offset: 8px;
}

.mit-location-ul li {
  flex-wrap: nowrap;
}

.acf-map {
  height: 484px;
  width: 684px;
}


/* 
Niederlassungen
*/
.mit-block-location .acf-map {
  height: 100%;
  width: 100%;
}

/* 
LEISTUNGEN
*/

.truncate-text,
.truncate-text p {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.truncate-text p:not(:first-child) {
  display: none;
}
/* .mit-leistungen-section__leistungs-block-home:nth-child(n+7) {
  display: none;
}

.mit-show-all .mit-leistungen-section__leistungs-block-home {
  display: block;
} */



.mit-leistungen-cols {
  gap: 10px;
}

.mit-align-center {
  align-items: center !important;
}

.mit-display-flex {
  display: flex;
}

.mit-space-between {
  justify-content: space-between;
}

.mit-column-direction {
  flex-direction: column;
}

.mit-leistungen-col {
  border-radius: 20px;
  padding: 2rem;
}

.mit-leistungen-col figure {
  margin-top: 0;
}

.mit-leistungen-featured-img::after {
  content: '';
  display: block;
  position: absolute;
  border: 1px solid var(--bricks-color-vtwuqc);
  top: -1rem;
  width: 100%;
  height: 95%;
  z-index: -1;
  border-top-right-radius: 200px;
  left: 1rem;
}

.mit-border-radius-img-decoration-right::after {
  content: '';
  display: block;
  position: absolute;
  border: 1px solid var(--bricks-color-vtwuqc);
  top: -1rem;
  width: 100%;
  height: 95%;
  z-index: -1;
  border-top-right-radius: 15rem;
  left: 1rem;
}

.mit-leistungen-img img {
  margin-bottom: 2rem;
}

.mit-leistungen-img__100,
.mit-leistungen-img__100 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#brx-content .mit-leistungen-grid {
  align-items: center;
}

.mit-leistungen-content h2,
.mit-leistungen-content h3,
.mit-leistungen-content h4,
.mit-leistungen-content p {
  color: var(--bricks-color-iobhpg);
}

.mit-leistungen-content h2,
.mit-leistungen-content h3,
.mit-leistungen-content h4,
.mit-leistungen-content h5,
.mit-leistungen-content h6 {
  margin-top: 2rem;
}

.mit-leistungen-content .mit-leistungen_headline--h3 h3 {
    margin-top: 0;
}

.mit-leistungen-content h2 {
  font-size: 1.5rem;
  hyphens: auto;
}

.mit-leistungen-content h3 {
  font-size: 1.25rem;
}

.mit-leistungen-content h4 {
  font-size: 1.125rem;
}

.mit-leistungen-content p {
  font-size: 1rem;
  line-height: 1.5;
}

.mit-leistungen-content h2:first-of-type {
  margin-top: 0;
}

.mit-leistungen-content ul,
.mit-leistungen-content ol {
  list-style: none;
  margin: 0;
  list-style-position: outside;
}
/* added text indent für zweite zeile custom liste */
.mit-leistungen-content li {
  position: relative;
  list-style: none;
  padding-left: 1.5rem;       /* Platz für Marker */
  text-indent: -1.5rem;       /* zieht erste Zeile zurück */
  margin-bottom: 0.5rem !important;
  line-height: 1.5;
  font-size: 1rem;
  color: var(--bricks-color-iobhpg);
}

.mit-leistungen-content a {
  /*color: var(--bricks-color-vtwuqc);*/
  color: #000;
  text-decoration: underline;
  font-weight: 600;
}



.mit-leistungen-content a:hover {
  color: var(--bricks-color-vtwuqc);
  text-decoration: underline;
}

.mit-col-img {
  display: flex;
  align-items: center;
}

.mit-leistungen-content li {
  padding-left: 0.5rem;
}

/* .mit-leistungen-content li::marker, */
.mit-leistungen-content li::before {
  content: "\f058";
  color: var(--bricks-color-vtwuqc);
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  margin-right: 8px;
}

sup {
  font-size: var(--text-s);
}


/* CUSTOM BORADER RADIUS */
.brxe-image img {
    border-radius: inherit;
    height: 100%;
    position: static !important;
    transition: inherit;
    width: 100%;
}



/* 
  BLOG DETAIL
*/
.custom-blog-content h2.wp-block-heading,
.custom-blog-content h2.wp-block-post-title {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

.wp-block-image.mit-img.mit-blog-content-img img {
    height: 100%;
    object-fit: cover;
}

.mit-bg-block {
  position: relative;
}
.mit-bg-block img.css-filter.size-full {
  height: 100%;
  object-fit: cover;
} 
.mit-bg-block:before {
  content: "";
  background: var(--bricks-color-vtwuqc);;
  position: absolute;
  left: 40%;
  height: 100%;
  width: 50%;
  transform: translateX(-100%);
}

.hotspot-map-section__block a:focus,
.hotspot-map-section__block a:focus-visible,
.hotspot-map-section__block a:focus-within {
  outline-color: #fff !important;
}

.hotspot-map-section__ximagehotspots svg {
  /*fill: var(--bricks-color-pxwlqu) !important;*/
}

.text-links-white a {
  text-decoration-color: #fff;
}

.text-links-white a:hover {
  text-decoration-color: var(--bricks-color-vtwuqc);
}
.text-links-white a:focus {
  text-decoration-color: var(--bricks-color-vtwuqc);
}

.wp-block-image figure picture {
    display: block;
}

/* 
  RESPONSIVE MEDIA QUERIES (min)
*/

@media screen and (min-width: 768px) {
  .wp-block-columns.custom-logo-contact-box figure {
    margin-bottom: 0px;
  }

  .wp-block-columns.custom-logo-contact-box p {
    margin-top: 0px !important;
  }
  
}


@media screen and (max-width: 1340px) {
  .mit-tablet-hidden {
    display: none !important;
  }
  .mit-tablet-visible {
    display: block !important;
  }
  .mit-menu #brxe-f0cbf6 {
    grid-template-columns: 1fr auto;
  }
  a.mit-link-white.mit-color-orange-hover:hover::before {
      border-bottom: 1px solid var(--bricks-color-vtwuqc);
  }
  a.brxe-text-link.mit-link-white.mit-color-orange-hover::before {
      border-bottom: 1px solid var(--bricks-color-vtwuqc);
  }
}
/* 
  RESPONSIVE MEDIA QUERIES (max)
*/
@media screen and (max-width: 1024px) {
  .mit-bg-block img.css-filter.size-full {
    height: 100%;
    object-fit: cover;
  }
  .mit-menu ul li a {
    font-size: 0.9rem;
  }
  .brxe-section.mit-menu {
    padding-right: 2rem;
    padding-left: 2rem;
  }
  .wsf-form .wsf-grid {
    flex-direction: column;
  }
  div#brxe-svkxob {
    grid-template-columns: var(--grid-2);
  }
  #brx-content .wsf-extra-small-6 {
    max-width: 100% !important;
  }
}
@media  screen and (max-width:991px) {


  .mit-leistungen-content ul, .mit-leistungen-content ol {
    padding-left: 0;
  }
  .mit-leistungen-content h2 {
    font-size: 1.2rem;
  }
  .mit-menu nav .mit-sublink ul.brx-dropdown-content li.menu-item a.brxe-text-link:hover:before {
    -webkit-transform: unset;
    transform: unset;
    visibility: visible;
    left: unset;
}
  .mit-border-radius-left::before {
    left: -1rem;
  }
  .mit-border-radius-right::before {
    right: -1rem;
  }
  .mit-border-radius-left::before, .mit-border-radius-right::before {
    top: -1rem;
  }
  .grid--1-2 {
    grid-template-columns: 1fr;
    gap: 4rem;
  }
  .mit-grid-2-1 {
    grid-template-columns: 1fr !important;
  }
  #brxe-puvefe {
    padding-bottom: 0;
  }
}

@media screen and (max-width: 768px) {
  .x-slider_slide .brxe-text p {
    display: -webkit-box;
    -webkit-line-clamp: 3; /* Limit to 3 lines */
    -webkit-box-orient: vertical;  
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 4.5em; 
    line-height: 1.5em;
  }

  .brxe-container.section-leistungsspektrum__container {
    grid-template-columns: 1fr;
  }
  .mit-mobile-hidden {
    display: none;
  }

  .mit-menu #brxe-f0cbf6 {
    grid-template-columns: fit-content(100%) auto;
  }

  .brxe-section.mit-menu {
    padding-right: 1rem;
    padding-left: 1rem;
  }

  .acf-map {
    height: 300px;
    width: 100%;
  }

  .mit-leistungen-col {
    padding: 2rem 1rem;
  }
	
	.mit-leistungen-cols {
		padding: 0;
	}
	
	.postid-1034 :where(.wp-block-columns.is-layout-flex) {
		gap: 0;
	}

  /* FIX automatic.css bug (no responsive img) */
  .custom-blog-content > div {
    width: 100% !important;
  }


  .post-template-default.single.single-post section#brxe-vdxoey {
    padding-bottom: 10px;
  }
  
  .post-template-default.single.single-post section#brxe-qvcggh {
    padding-top: 40px;
  }
  
  .brxe-block.mit-location-li {
    flex-wrap: nowrap;
  }

}

section.brxe-section.hotspot-map-section::after {
  content: '';
  display: block;
  background: var(--bricks-color-gsulie);
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% - 250px);
  height: 100%;
  border-top-right-radius: 300px;
  z-index: 0;
}


@media screen and (max-width: 767px) {
  .footer__block {
    border-right: 1px solid transparent!important;
  }
  a {
    word-break: normal;
    overflow-wrap: normal;
    white-space: normal;
  }
  .mit-leistungen-content h2 {
    hyphens: none;
  }
  .mit-gray-box-left,
  .mit-gray-box-right {
    width: auto!important;
    position: relative!important;
    top: unset!important;
    right: unset!important;
    bottom: 5rem !important;
    left: unset!important;
  }

  .brxe-container.section-leistungsspektrum__container > :first-child {
    grid-column: auto;
  }
  .section-leistungsspektrum__block {
    padding-left: 0!important;
  }
  .mit-gap {
    padding-left: 20px!important;
  }
  div#brxe-svkxob {
    grid-template-columns: var(--grid-1);
  }
  .mit-bg-block img.css-filter.size-full {
      height: 100%;
      object-fit: cover;
      object-position: top;
  }
  .mit-leistungen-featured-img img,
  .mit-bg-block img.css-filter.size-full {
    border-top-right-radius: 100px;
  }
  .mit-leistungen-featured-img::after,
  .mit-border-radius-img-decoration-right::after {
    border-top-right-radius: 100px;
  }
}

@media screen and (max-width: 1240px) {
  section.brxe-section.hotspot-map-section::after {
    width: 100%;
    border-top-right-radius: 0;
  }
  .mit-bg-block:before {
    display: none;
  }
}

@media screen and (min-width: 1240px) and (max-width: 1439px) {
  .hotspot-map-section__grid-block--absolute {
    width: 325px !important;
  }

  .hotspot-map-section__text strong {
    font-size: 2rem;
  }

  .hotspot-map-section__text {
    font-size: var(--text-s);
  }

  section.brxe-section.hotspot-map-section::after {
    width: calc(100% - 161.5px);
    border-top-right-radius: 300px;
  }

  .hero-leistungen-section {
    padding-bottom: var(--space-l) !important;
  }
}

@media screen and (min-width: 1440px) and (max-width: 1660px) {
  .hotspot-map-section__grid-block--absolute {
    width: 400px !important;
  }

  section.brxe-section.hotspot-map-section::after {
    width: calc(100% - 199px);
  }
}

@media screen and (min-width: 1661px) and (max-width: 1920px) {
  .hotspot-map-section__grid-block--absolute {
    width: 500px !important;
  }

  section.brxe-section.hotspot-map-section::after {
    width: calc(100% - 249px);
  }
}

@media (min-width: 1921px) {
  .hotspot-map-section__grid-block--absolute {
    right: max(0px, calc(50% - 960px)) !important; /* Locks at 1920px */
  }

  section.brxe-section.hotspot-map-section::after {
    width: 100%;
    border-top-right-radius: 0;
  }
}

@media screen and (min-width: 992px) and (max-width:1239px) {
  .hotspot-map-section__map-container {
    grid-template-columns: var(--grid-1) !important;
  }

  .hotspot-map-section__map-container .hotspot-map-section__grid-block--absolute {
    position: relative;
    margin: 0 auto;
  }
}

@media screen and (min-width: 992px) and (max-width:1352px) {
  .mit-block-location .brxe-gkvdfb {
    flex-direction: column !important;
  }
}