/* Custom Variables */
:root {
  --hero: calc(calc(var(--h1)*1.2)*1.2);
}

/* Global Fixes */
.brxe-block:empty:not(.content):not(.media),
.brxe-section.modules:empty {
    display: none;
}

/* Global Styling */
h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}
:is(.bricks-button, .brxe-text-link) svg [stroke]:not([stroke="none"]) {
  stroke: currentColor;
}
:is(.bricks-button, .brxe-text-link) svg [fill]:not([fill="none"]) {
  fill: currentColor;
}

/* Global Hyphens */
html, body {
    hyphens: auto;
    -webkit-hyphens: auto;
    overflow-wrap: break-word;
    hyphenate-limit-chars: 6 3 3;
}
/* Fließtext — vermeidet Orphans (einzelne Wörter in letzter Zeile) */
p {
    text-wrap: pretty;
}
/* Überschriften — gleicht Zeilenlängen aus */
h1, h2, h3, h4 {
    text-wrap: balance !important;
}

/* Global Color-Schemes */
.scheme--neutral {
    background-color: var(--neutral);
    color: var(--primary);
}
.scheme--primary {
    background-color: var(--primary);
    color: var(--white);
}
.scheme--secondary {
    background-color: var(--secondary);
    color: var(--white);
}
.scheme--accent {
    background-color: var(--accent);
    color: var(--primary);
}

/* Global Scrolling */
[id] { 
  scroll-margin-top: var(--offset,0); 
}

/* Selection Colors */
::-moz-selection {
  color: var(--accent-ultra-dark);
  background: var(--accent);
}
::selection {
  color: var(--accent-ultra-dark);
  background: var(--accent);
}

/* Accordion Fix */
.accordion-content-wrapper p {
  padding-bottom: 1rem !important;
} 
/* .accordion-content-wrapper {
  display: flex;
  flex-direction: column;
  gap: 1rem;
} */

/* Fix: Broken Sticky in Bricks w. ACSS */
.sticky.sticky {
  position: fixed !important;
}

/* Header Data Routine */
[hidden] { display: none !important; }

/* .scrolling #header {
  -moz-backdrop-filter: blur(50px);
  -ms-backdrop-filter: blur(50px);
  -o-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
}

#header_open {
  transition: opacity .25s ease, transform .25s ease;
  opacity: 0;
  transform: translateY(-6px);
}
#header_open:not([hidden]) {
  transition: opacity .25s ease, transform .25s ease;
  -moz-backdrop-filter: blur(50px);
  -ms-backdrop-filter: blur(50px);
  -o-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
  opacity: 1;
  transform: translateY(0);
} */

/* Global: Typography */
.hero {
  font-size: var(--hero) !important;
}

/* Column Image Replace */
.media {
  position: relative;
  overflow: hidden;
}
.media img.hover-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.media img.hover-overlay.is-visible {
  opacity: 1;
}

/* Complianz Fix */


/* Hero Animation */
/* #hero {
  will-change: opacity;
}

:root {
  --hero-text-hsl: 0 0% 100%;
}
#hero_content_assets {
  color: hsl(var(--hero-text-hsl));
}
#hero_content_assets * { color: inherit; }
#hero_content_assets svg { fill: currentColor; stroke: currentColor; }
#hero_content_assets a {
  transition: none;
} */

/* #hero .bricks-background-video-wrapper {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  display: block;
  overflow: hidden;
  z-index: 0;
  pointer-events: none;
}
.bricks-background-video-wrapper video {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: auto !important;
  height: auto !important;
  min-width: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  object-position: 50% 50% !important;
  max-width: none !important;
  max-height: none !important;
  z-index: 0;
} */
/* .brxe-usyanp .brxe-container,
.brxe-usyanp .brxe-block {
  position: relative;
  z-index: 2;
} */
/* Optional: leichtes filter / fallback, falls mobile hardware Probleme macht */
/* .bricks-background-video-wrapper video { filter: saturate(1.02) contrast(1.02); } */

/* Reveal Item */
