/*LOCAL GOOGLE FONTS smd Oct 2022*/
/* poppins-regular - latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/poppins-v20-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/poppins-v20-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/poppins-v20-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/poppins-v20-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/poppins-v20-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/poppins-v20-latin-regular.svg#Poppins') format('svg'); /* Legacy iOS */
}
/* poppins-italic - latin */
@font-face {
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/poppins-v20-latin-italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/poppins-v20-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/poppins-v20-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/poppins-v20-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/poppins-v20-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/poppins-v20-latin-italic.svg#Poppins') format('svg'); /* Legacy iOS */
}
/* poppins-500 - latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/poppins-v20-latin-500.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/poppins-v20-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/poppins-v20-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/poppins-v20-latin-500.woff') format('woff'), /* Modern Browsers */
       url('../fonts/poppins-v20-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/poppins-v20-latin-500.svg#Poppins') format('svg'); /* Legacy iOS */
}
/* poppins-500italic - latin */
@font-face {
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 500;
  src: url('../fonts/poppins-v20-latin-500italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/poppins-v20-latin-500italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/poppins-v20-latin-500italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/poppins-v20-latin-500italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/poppins-v20-latin-500italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/poppins-v20-latin-500italic.svg#Poppins') format('svg'); /* Legacy iOS */
}
/* poppins-600 - latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/poppins-v20-latin-600.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/poppins-v20-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/poppins-v20-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/poppins-v20-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../fonts/poppins-v20-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/poppins-v20-latin-600.svg#Poppins') format('svg'); /* Legacy iOS */
}
/* poppins-600italic - latin */
@font-face {
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 600;
  src: url('../fonts/poppins-v20-latin-600italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/poppins-v20-latin-600italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/poppins-v20-latin-600italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/poppins-v20-latin-600italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/poppins-v20-latin-600italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/poppins-v20-latin-600italic.svg#Poppins') format('svg'); /* Legacy iOS */
}
/* poppins-700 - latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/poppins-v20-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/poppins-v20-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/poppins-v20-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/poppins-v20-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/poppins-v20-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/poppins-v20-latin-700.svg#Poppins') format('svg'); /* Legacy iOS */
}
/* poppins-700italic - latin */
@font-face {
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 700;
  src: url('../fonts/poppins-v20-latin-700italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/poppins-v20-latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/poppins-v20-latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/poppins-v20-latin-700italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/poppins-v20-latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/poppins-v20-latin-700italic.svg#Poppins') format('svg'); /* Legacy iOS */
}

/*END G-FONTS*/
html{
    font-size: calc(15px + 0.390625vw);
    font-family: 'Poppins', sans-serif;
}
body{
    font-family: 'Poppins', sans-serif;;
}
a{
   color:#9d0101;
}
:root {
  /* Create a custom property for easier management */
  --focus-color: palegreen;
  --focus-color-alt: #46a546; /* Darker green for better contrast */
}

*:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px white, 
              0 0 0 4px var(--focus-color-alt),
              0 0 8px 4px rgba(70, 165, 70, 0.6);
  transition: box-shadow 0.2s ease-in-out;
}

/* Different style for dark mode if applicable */
@media (prefers-color-scheme: dark) {
  *:focus-visible {
    box-shadow: 0 0 0 2px black, 
                0 0 0 4px var(--focus-color),
                0 0 8px 4px rgba(152, 251, 152, 0.6);
  }
}
.node__links a:focus, .readmore-extrafield a:focus, span.readmore-extrafield:focus, .js-pager__items a.button:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgb(130, 245, 77), 
              0 0 0 4px var(--focus-color-alt),
              0 0 8px 4px rgba(93, 218, 93, 0.7);
  transition: box-shadow 0.2s ease-in-out;
}
.layout-container{
  display: flex;
  flex-direction: column;
  min-height:100vh;
}
.layout-container:after{
  content:"";
  background:url(../images/roundlogo.svg) no-repeat 75% 18%;
  background-size:25vw;
  width:100vw;
  height:100vh;
  position:fixed;
  opacity: 0;
  z-index: -1;
  transition: opacity 3s ease-in-out; /* Adjust duration as needed */
}
.animation-done .layout-container:after{
  opacity:0.7;
}
.center-column{
  width:75%;
  max-width:1200px;
  margin:0 auto;
}
.transparent{
  background:transparent;
}
.sticky{
  position: -webkit-sticky; /* Safari */
  position: sticky;
  top: 0;
  z-index:500;
}
.toolbar-horizontal .sticky{
  top:3.5rem;
}
.flex{
  display:flex;
}
.flex > ul.menu{
  display:flex;
}
.flex.block-layout-builder > div{
  display:flex;
  justify-content:space-between;
  width:100%;
}
.text-center{
  text-align:center;
}
.color-white *{
  color:#fff;
}
.color-black *{
  color:#000;
}
/*Menu*/
.fixed{
  position:sticky;
  top:0;
  width:100%;
  min-height:1px;
  z-index:200;
}
.fixed #block-enlightenment-hauptnavigation{
  background-image: url(../images/kobueLogo.svg);
  background-repeat:no-repeat;
  background-position:-25%;
  transition:all 1s;
  background-size:10%;
}
.fixed.sticky-active #block-enlightenment-hauptnavigation{
  background-color:rgba(255, 255, 255, 0.9);
  background-position:15%;
}
.fixed #block-enlightenment-fusszeile{
  overflow-x:hidden;
}
.fixed #block-enlightenment-fusszeile ul.menu{
  position:relative;
  transition:all 1s;
  right:0%;
}
.fixed.sticky-active #block-enlightenment-fusszeile ul.menu{
  right:-30%;
  transition:all 1s;
}
#block-enlightenment-hauptnavigation ul.menu,
#block-enlightenment-fusszeile ul.menu
{
  justify-content:flex-end;
  width:100%;
  margin:0;
}
#block-enlightenment-hauptnavigation ul.menu a{
  color:#000;
  font-weight:bold;
  font-size:1rem;
  padding:0.5rem 0.5rem;
  text-decoration:none;
  display:inline-block;
  padding-bottom:0.5rem;
}
#block-enlightenment-fusszeile  ul.menu a{
  color:#000;
  font-weight:normal;
  font-size:1rem;
  padding:0.85rem 0.5rem;
  text-decoration:none;
  display:inline-block;
  padding-top:0.5rem;
}
/*Imagelinks*/

.block-field-blocknodestartseitefield-link-kacheln{
  width:100%;
  flex-direction:row;
  justify-content:space-between;
}
.block-field-blocknodestartseitefield-link-kacheln .field--name-field-link-kacheln{
  width:100%;
}
.flex-wrapper .view-content{
  display:flex;
  flex-direction: row;
  justify-content: flex-start;
}
.block-field-blocknodestartseitefield-link-kacheln .field--name-field-link-kacheln > .field__item,
.menu-kachel
{
  width:24%;
  box-shadow:2px 2px 4px 0px rgba(156,156,156,1);
  border-radius: 1rem;
  background-color: #88c4e6;
  text-align: center;
  position:relative;
}
.menu-kachel.active{
  background-color: #d6e8f2;
}
.menu-kachel{
  height:12rem;
  margin-right: 1%;
}
.menu-kachel:hover,
.menu-kachel:active{
  box-shadow:none;
  transition: box-shadow 0.7s;
}
/*{
  outline:palegreen 2px solid;
  outline-offset: 2px;
}*/
.menu-kachel a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10; /* Ensure it's above other elements */
  display: flex;
  flex-direction: column;
  align-items: center;
  border-radius: 1rem;
  text-decoration:none;
}

.menu-kachel {
  position: relative; /* Ensure proper positioning context */
}

.menu-kachel a:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px white, 
              0 0 0 4px var(--focus-color-alt),
              0 0 8px 4px rgba(70, 165, 70, 0.6);
  transition: box-shadow 0.2s ease-in-out;
}

/* Additional high contrast support */
@media (forced-colors: active) {
  .menu-kachel a:focus-visible {
    outline: 3px solid CanvasText;
  }
}
.menu-kachel:has(a:focus-visible) {
  outline: none;
  box-shadow: 0 0 0 2px white, 
              0 0 0 4px var(--focus-color-alt),
              0 0 8px 4px rgba(70, 165, 70, 0.6);
  transition: box-shadow 0.2s ease-in-out;
}
.block-field-blocknodestartseitefield-link-kacheln .field--name-field-media-image,
.menu-kachel img
{
  width:50%;
  margin: 0 auto;
  position:absolute;
  left:25%;
  bottom:1.5rem;
  z-index:1;
}
.block-field-blocknodestartseitefield-link-kacheln .field--name-field-imagelinks a,
.menu-kachel a .kacheltext
{
  font-size:1.12rem;
  font-weight:bold;
  display:inline-block;
  padding:1rem 0.3rem 9rem 0.3rem;
  text-decoration:none;
  color:#000;
  position:relative;
  z-index:2;
  width:100%;
}
.menu-kachel a .kacheltext p{
  margin-top:0.5rem;
  margin-bottom:0.5rem;
}


.ghostbutton:hover{
  color:#fff;
  background:rgba(138, 212, 1, 0.9);
  border-radius:0 0.75rem 0 0.75rem;
}
.ghostbutton.absolute{
  position:absolute;
  /*background:rgba(255, 255, 255, 0.8);*/
  font-size:1.2rem;
  letter-spacing:0;
  padding:0.2rem 1.5ren;
  bottom:0.25rem;
  left:0.75rem;
}
.ghostbutton.absolute:hover{
  background:rgba(138, 212, 1, 0.9);
}
/*HEADER*/
#header{
  justify-content: flex-start;
  box-sizing:border-box;
}
#block-enlightenment-site-branding{
  width:65%;
  margin-left:12%;
  margin-bottom:2rem;
  line-height:1.6rem;
  transition: all 1s;
}
#block-enlightenment-site-branding > .site-slogan{
  width:90%;
}
#block-enlightenment-site-branding.sticky-active{
  opacity:0;
}
#block-enlightenment-logoklein{
  margin:1rem 0 2rem -2rem;
  width:18vw;
  max-width:15rem;
}
#block-enlightenment-logoklein img{
  width:100%;
}
.hblocks ul.menu{
  display:flex;
  justify-content: end;
  font-size:1rem;
  font-family:'Poppins', sans-serif;
  font-weight:200;
}
.hblocks ul.menu li a{
  color:#333;
  text-decoration:none;
  padding:0.2rem 0 0.2rem 0.5rem;
}
.hblocks ul.menu li a:hover{
  color:rgba(138, 212, 1, 1);
  transition:all 0.3s;
}
/*Animated Logo*/
.logoanim {
    position: absolute;
    left: 0;
    top: 1rem;
    z-index:-1;
    pointer-events:none;
    transition: opacity 2s ease-in-out; /* Smooth transition */
}
.animation-done .logoanim {
  opacity:0;
}

#hightlighted{

}
#hightlighted .block{
}
#hightlighted a{
  color:#636363;
  text-decoration:none;
}
#hightlighted p{
  margin:0;
}
/*NAVIGATION*/
#navigation{
  background:rgba(138, 212, 1, 0.9);
  z-index:11;
}
#navigation ul.menu{
  display:flex;
  font-family:'Poppins', sans-serif;
  font-weight:600;
  font-size:1.8rem;
  padding:0;
  margin:0;
  justify-content:start;
  letter-spacing: 0.15rem;
}
#navigation ul.menu li{
  padding:0;
}
#navigation ul.menu a{
  text-decoration:none;
  color:#fff;
  padding:0.35rem 1rem;
  display:block;
  border-left:1px solid #fff;
  transition:all 0.3s;
}
#navigation ul.menu .menu-item--active-trail a,
#navigation ul.menu a:hover
{
  background:#21892ad4; 
}
h1.page-title{
  font-family:'Sofia Sans Extra Condensed', sans-serif;
  font-size:3rem;
  margin:1rem 0 0.5rem 0;
}
.node__content{
  line-height:1.5;
  color:#333;
  position:relative;
}
.grid-3 > .layout__region {
  display:flex;
  justify-content:space-around;
  box-sizing: border-box;
  padding:1%;
  margin-top:1rem;
}
.grid-3 > .layout__region > div{
  width:31.5%;
  border:1px rgba(138, 212, 1, 0.9) solid;
  border-radius:0.5rem 0.5rem 0 0;
  box-shadow: 3px 2px 7px 4px rgba(189,189,189,0.8);
  position: relative;
}
.grid-3 > .layout__region > div img{
  width:100%;
  height:auto;
  display:block;
}
.grid-3 > .layout__region > div h2{
  margin:0;
  background:rgba(138, 212, 1, 0.9);
  color:#fff;
  font-size:1.8rem;
  font-family:'Sofia Sans Extra Condensed', sans-serif;
  font-weight:600;
  padding:0.25rem 0.5rem;
  border-radius:0.5rem 0.5rem 0 0;
  letter-spacing: 0.15rem;
}
.grid-3 > .layout__region > div p,
.grid-3 > .layout__region > div ul
{
  font-size:0.8rem;
  padding:0.5rem;
  margin:0;
}
.grid-3 > .layout__region > div ul{
  margin:0 1rem;
}
.grid-3 > .layout__region .ghostbutton{
  margin-bottom:0.5rem;
}


.block-field-blocknodepagebody{
  padding:0 2rem 2rem 2rem;
}
.block-field-blocknodestartseitebody{
  background:rgba(230, 243, 250, 0.7);
  box-sizing:padding-box;
  padding:1rem;
  box-shadow: 2px 2px 4px 0px rgba(156, 156, 156, 1);
  border-radius: 1rem;
  margin-bottom:1rem;
}
.block-field-blocknodepagebody h2,
.block-field-blocknodepagetitle
{
  font-family:'Sofia Sans Extra Condensed', sans-serif;
  font-size:3rem;
  color:#636363;
  margin:1rem 0 0.5rem 0;
}
/*Footer*/
footer{
  background:#f7f7f7;
  padding-top:1rem;
  font-size:0.8rem;
}
footer p{
  font-size:0.8rem;
  line-height:1.3rem;
}
.region-footer {
  width: 75%;
  max-width: 1200px;
  margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto auto; /* Two rows */
    gap: 20px; /* Adjust gap between items as needed */
}

.region-footer #block-enlightenment-hauptnavigation-2 {
    grid-column: 1;
    grid-row: 1; /* First menu in the first row */
}

.region-footer #block-enlightenment-kontaktdatenstartseite {
    grid-column: 2;
    grid-row: 1; /* Contact block in the first row */
}

.region-footer #block-enlightenment-gefordertdurch {
    grid-column: 3;
    grid-row: 1; /* Logos in the first row */
}

.region-footer #block-enlightenment-fusszeile-2 {
    grid-column: 1 / span 1; /* Second menu spanning all columns */
    grid-row: 1; /* Second menu in the second row */
    align-self: end; /* Vertically align to the bottom of the first menu */
    position:relative;
    top:-1rem;
}

/* Optional styling for appearance */
.region-footer > div, .region-footer > nav {
    padding: 10px;
}

.region-footer .menu {
    list-style-type: none;
    padding: 0;
    margin-left:0;
    margin-bottom:0;
    line-height:1.2rem;
}

.region-footer .menu-item {
    margin:0;
}
.region-footer .menu a{
  text-decoration:none;
  color:#000;
  font-weight:bold;
  font-size:0.8rem;
}
.region-footer #block-enlightenment-fusszeile-2 .menu{
  position:relative;
  top:-3.5rem;
  margin-top:0;
}
.region-footer #block-enlightenment-fusszeile-2 .menu a{
  font-weight:normal;
}


/*STARTSEITE*/
.view-startpage .view-content{
  width:100%;

}

.view-startpage .view-content .views-row{
  position:relative;
  color:#fff;
  overflow:hidden;
  margin-top:1rem;
}
.view-startpage.view-display-id-page_1 > .view-content .views-row::after{
  content:"";
  position:absolute;
  width:100%;
  height:100%;
  background: linear-gradient(to bottom, 
  rgba(90, 155, 190, 0.2) 0%,
  rgba(90, 155, 190, 0.67) 40%,
  rgba(90, 155, 190, 0.87) 50%,
  rgba(90, 155, 190, 1) 65%
  );
  top:0;
  border-radius:1rem;
}
.view-startpage.view-display-id-page_1 > .view-content .views-row{
  border-radius:0 0 1rem 1rem;
}
.view-startpage .view-content .views-row .views-field-field-media-image{
  position:absolute;
  z-index:0;
  border-radius: 1rem 1rem 0 0;
  overflow: hidden;
  width:100%;
}
.view-startpage .view-content .views-row .views-field-field-media-image-1{
  position:absolute;
  top:600px;
  width:100%;
}
.view-startpage .view-content .views-row h2{
  margin: 3rem 0 2rem 0;
}
.view-startpage .view-content .views-row .views-field-field-zusammenfassung{
  line-height:1.5;
}
.view-startpage .view-content .views-row .views-field-field-media-image-1 img,
.view-startpage .view-content .views-row .views-field-field-media-image img{
  width:100%;
  height:auto;

}
.view-startpage .view-content .views-row .views-field-fieldset{
  position: relative;
  z-index: 2;
}
.view-startpage .view-content .views-row .views-field-fieldset-1{
  position: relative;
  z-index: 2;
  max-height:0;
  overflow:hidden;
  transition: max-height 0.5s ease-out;
  margin-top:-3rem;
  line-height:1.5;
}
.view-startpage .view-content .views-row .views-field-fieldset-1.expanded{
  max-height: 2000px;
  transition: max-height 0.5s ease-in;
}
.views-filters-summary .value {
  padding:0;
  margin:0;
}
.currentsearch{
  font-size:0.8rem;
  margin-bottom:1rem;
}
.currentsearch .views-filters-summary{
  display:inline-block;
}
.currentsearch .views-filters-summary {
  display:inline-block;
}
.currentsearch .views-filters-summary .values{
  border-radius:1rem;
  background-color: #dfdfdf;
  padding:0.1rem 0.5rem;
  padding-right:0;
  border:#000 solid 1px;
}
.currentsearch .views-filters-summary .value{
  border:none;
  font-weight:normal;
}
.currentsearch .views-filters-summary a.remove-filter {
  background-color: #e9e9e9;
  text-transform: lowercase;
  display: inline-block;
  border:#000 solid 1px;
  border-radius:1rem;
  padding: 0.13rem 0.45rem 0.13rem 0.45rem;
  position: relative;
  top: -0.04rem;
  right: -1px;
  text-decoration:none;
  line-height: 1;
  height: 1rem;
}
.currentsearch .views-filters-summary a.remove-filter:hover {
  background-color: #9d0101;
  cursor: pointer;
}
.currentsearch .reset{
  text-decoration:none;
  color:#000;
  display: inline-block;
  padding: 0.22rem 0.45rem 0.21rem 0.45rem;
  border: solid 1px #000;
  border-radius:1rem;
  background:#dfdfdf;
}
.currentsearch .reset:hover{
  background:#9d0101;
  color:#fff;
}
/*Promotion Kachel*/
.field--name-field-promotion-kachel{
  position:relative;
  margin-top:0.5rem;
  z-index:2;
}
.field--name-field-promotion-kachel .node__content{
  min-height:20rem;
}
.field--name-field-promotion-kachel .field--name-field-headerbild,
.field--name-field-promotion-kachel .field--name-field-headerbild div{
  position:absolute;
  width:100%;
  height:100%;
  border-radius:1rem;
  z-index:-1;
}
.field--name-field-promotion-kachel .field--name-field-headerbild div{
  background-size:cover;
}
.padding_plus,
.padding-plus
{
  padding:2rem 5rem;
  padding-top:1.5rem;
  color:#fff;
}
.kicker,.kicker a{
  text-decoration:none;
  color:#fff;
  font-size:0.9rem;
}
.kicker > div {
    position: relative;
    padding: 0 0.4rem;
    padding-right:1rem;
}

.kicker > div::after {
    content: '-';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right:0;
}
.kicker > div:last-child::after {
    content: none;
}
.field--name-field-promotion-kachel h2{
  margin-top:0;
}
.field--name-field-promotion-kachel h2 a{
  text-decoration:none;
  color:#fff;
}
/*Masonry-Views*/
.masonry-brick .view-content,
.masonry-brick .view-content > div
{
  width:101%!important;
}
.masonry-item.views-row,
.float-right-cards  .node--view-mode-teaser .node__content
{
  width:31.2%!important;
  min-height:4rem;
  box-shadow: 2px 2px 4px 0px rgba(156, 156, 156, 1);
  border-radius: 1rem;
  background-color: #88c4e6;
  text-align: left;
  position: relative;
  z-index:1;
  margin-right:1.8%;
  margin-bottom:1rem;
}
.masonry-item.views-row > .node--view-mode-teaser .node__content{
  background:transparent;
  box-shadow: none;
}
.masonry-item.views-row .node--type-article.node--view-mode-teaser .node__content{
  padding:0.5rem;
}
.masonry-item.views-row .node--type-article.node--view-mode-teaser .node__content:after,
.node__content > .layout--twocol-section .layout__region--second .block-layout-builder .node--type-article.node--view-mode-teaser .node__content:after
{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width: 100%;
  height:100%;
  background:rgba(255, 255, 255, 0.5);
  border-radius:1rem;
  z-index:0;
}
.node__content > .layout--twocol-section .layout__region--second .block-layout-builder .node--type-article.node--view-mode-teaser .node__content:after{
  z-index: -1;
}

.masonry-item.views-row .node--type-article.node--view-mode-teaser .node__content > *{
  position:relative;
  z-index:1;
}
.masonry-item.views-row .node--type-article.node--view-mode-teaser .node__content > .field--name-field-image{
  position:static;
  z-index:0;
}
.node--view-mode-teaser .infobox .field--name-field-headerbild img{
  width:calc(100% + 1.6rem);
  margin:-0.8rem;
  margin-bottom:0;
  height:auto;
}
.float-right-cards  .node--view-mode-teaser .node__content{
  float:right;
  clear:right;
  margin-left:1rem;
  margin-right:0;
}

@media (max-width: 768px) {
  .float-right-cards .node--view-mode-teaser .node__content {
    float: none !important;
    clear: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    display: block;
    margin-top:1rem;
  }
  .float-right-cards {
    display: flex;
    flex-direction: column;
  }
}
@media (max-width: 768px) {
  .layout--onecol > div{
    display: flex;
    flex-direction: column;
  }

  .float-right-cards {
    order: 2;
    width: 100%; /*Optional: Make sure it takes full width */
  }

  .block-field-blocknodearticlebody {
    order: 1;
  }
  .block-field-blocknodearticlefield-galerie {
    order: 3;
  }
}


.layout__region--second .node--view-mode-teaser .node__content{
  min-height:4rem;
  box-shadow: 2px 2px 4px 0px rgba(156, 156, 156, 1);
  border-radius: 1rem;
  background-color: #88c4e6;
  text-align: left;
  position: relative;
  z-index:1;
}
.masonry-item.views-row h2,
.layout__region--second .node--view-mode-teaser .node__content h2,
.float-right-cards  .node--view-mode-teaser .node__content h2
{
  margin-top:0;
  margin-bottom:0;
}
.layout__region--second .node--view-mode-teaser .node__content h2 a,
.float-right-cards  .node--view-mode-teaser .node__content h2 a
{
  text-decoartion:none;
  font-size: 1.0rem;
    line-height: 1.1em;
    color: #000;
    padding-top: 1.1rem;
    padding-left: 1rem;
    font-weight: bold;
    word-wrap: break-word;
    text-decoration: 0;
    display: inline-block;
    margin-bottom: 0;
    padding-bottom: 1.2rem;
}
.titel-bar{
    display:flex;
    padding:0.8rem;
    padding-bottom:0;
    justify-content: space-between;
}
.titel-bar p{
  margin-top:0;
}
.field--name-field-fachgebiet{
  width:96%;
  font-size: 1rem;
  font-weight:bold;
  border-radius:1rem;
  padding:0.8rem;
  padding-bottom:0;
  line-height:1.2;
}
.node--view-mode-full .field--name-field-fachgebiet{
  font-size:2rem;
  padding-left:0;
}
.block-field-blocknodeeinrichtungenfield-fachgebiet + div h1{
  font-size:1.5rem;
}
.infobox{
  background:#fff;
  padding:0.8rem;
  font-size:0.8rem;
  word-wrap: break-word;
}
.infobox p{
  margin-top:0;
}
.masonry-item.views-row .infobox h2 a{
  font-weight:normal;
  font-size:0.8rem;
}

.masonry-item.views-row h2 a{
    font-size: 1.0rem;
    line-height: 1.1em;
    color: #000;
    padding-top: 1.1rem;
    padding-left:1rem;
    font-weight: bold;
    word-wrap: break-word;
    text-decoration:0;
    display:inline-block;
    margin-bottom:0;
    padding-bottom:1.2rem;
}
.masonry-item.views-row .titel-bar img,
.field--name-field-kleines-logo img
{
  max-width:3rem;
  height:auto;
}
.masonry-item.views-row .node__content div + .titel-bar h2 a{
  padding:0;
  font-weight:normal;
  font-size:0.8rem;
  padding-bottom:0;
}

.masonry-item .field--name-field-image{
  position:static;
}
.masonry-item .field--name-field-image div,
.layout__region--second .node--view-mode-teaser .node__content .field--name-field-image > div
{
  position:absolute;
  width:100%;
  background-position:top center;
  background-size:cover;
  height:100%;
  top:0;
  left:0;
  border-radius:1rem;
  z-index:-1;
}
.expander{
  text-align:center;
  margin-bottom:1rem;
  margin-left:-2rem;
}
.node__links a,
.readmore-extrafield a,
span.readmore-extrafield,
.js-pager__items a.button,
.agree-button
{
  margin-top: 1.5rem;
  padding: 0.4rem 1.7rem;
  background-color: white;
  border: solid 1px #fff;
  border-radius: 1.7rem;
  text-align: center;
  display: inline-block;
  font-size: 1rem;
  line-height: normal;
  font-weight: bold;
  text-decoration: none;
  color: #000;
  margin-bottom: 1.2rem;
  margin-left: 0.5rem;
  box-shadow: none; /* No shadow by default */
  transition:all 0.3s;
  position:relative;
  z-index:3;
  cursor: pointer;
}

.readmore-extrafield a {
  margin-left: 0;
}

.readmore-extrafield a:hover,
.node__links a:hover,
span.readmore-extrafield:hover,
.js-pager__items a.button:hover,
.agree-button:hover
{
  box-shadow:
    inset 0px 0px 10px rgba(0, 0, 0, 0.8); /* Uniform inset shadow for pressed effect */
    font-size:0.98rem;
    color:rgba(0, 0, 0, 0.8);
    border:solid 1px rgba(0, 0, 0, 0.5);
    
}
.readmore-extrafield a:active,
.node__links a:active,
span.readmore-extrafield:active,
.js-pager__items a.button:active,
.agree-button:active
{
  box-shadow: none;
  background-image: radial-gradient(circle, rgba(136,196,230,0.9) 0%, transparent 90%);
  background-size: 0%; /* Start small */
  animation: wave-animation 0.6s ease-out forwards; /* Longer duration for smoother effect */
}

@keyframes wave-animation {
  from {
    background-size: 0%; /* Start with no visible gradient */
    background-position: center; /* Centered start */
  }
  
  to {
    background-size: 500%; /* Expand to cover button */
    background-position: center; /* Keep centered */
  }
}
.js-pager__items a.button{
  border:solid 1px #000;
}
.js-pager__items{
  width:100%;
  text-align: center;
}
.masonry-brick select {
    background-color: #dfdfdf;
    border-radius: 1rem;
    padding: 0.4rem 2.7rem 0.4rem 1.2rem;
    border: solid 1px #fff;
    -webkit-appearance: none;
    -moz-appearance: none;
    -o-appearance: none;
    background-image: url(../images/selectDown.svg);
    background-position: 95% center;
    background-repeat: no-repeat;
    outline: none;
    cursor: pointer;
    float: right;
    font-weight: 600;
    min-width: 75%;
    margin-left:0.5rem;
    font-size:0.9rem;
}
/* Search bar + button layout */
/* Main container adjustments */
.masonry-brick .form--inline {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  justify-content: flex-end; /* Align children to right by default */
}

/* Search input container */
.masonry-brick .js-form-type-search-api-autocomplete {
  order: 1; /* Show after button in DOM order */
  flex: 1 0 80%; /* Grow to 80% width */
  max-width: 80%;
}
.masonry-brick .js-form-type-search-api-autocomplete .form-autocomplete.form-text{
  width:104%;
  border-radius: 1rem;
  padding: 0.3rem 1rem;
  background-position:99%;
}
/* Search button container */
.masonry-brick .form-actions {
  order: 2; /* Keep button next to input */
  flex: 0 0 auto;
  margin-left: auto; /* Push button to right */
}
.masonry-brick .form-submit{
  border-radius: 1rem;
  padding: 0.3rem 1rem;
}

/* Filter items */
.masonry-brick .form-item.js-form-wrapper {
  position: relative;
  max-width: 12.3rem; /* Set maximum width */
  flex-shrink: 0; /* Prevent shrinking */
  order: 3; /* Show filters after search row */
  margin-top: 0.5rem; /* Add space between rows */
  margin-left: 0; /* Right-align filters */
  font-size:0.85rem;
}

/* Summary element stabilization */
.masonry-brick .views-exposed-form summary {
  width: 100%;
  box-sizing: border-box;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative;
  background-color: #dfdfdf;
  border-radius: 1rem;
  padding: 0.4rem 2.7rem 0.4rem 1.2rem;
  border: solid 1px #dfdfdf;
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  background-image: url(../images/selectDown.svg);
  background-position: 95% center;
  background-repeat: no-repeat;
  outline: none;
  cursor: pointer;
  list-style-type: none;
  font-weight:bold;
}

/* Keep size consistent when open */
.masonry-brick details[open] summary {
  border-radius: 1rem 1rem 0 0;
  border-bottom: none;
}

/* Checkbox list container */
.masonry-brick details{
  border:none;
}
.masonry-brick .details-wrapper {
  width: 100%;
  box-sizing: border-box;
  z-index: 2;
  background: #dfdfdf;
  border: none;
  border-radius: 0 0 1rem 1rem;
}
.masonry-brick label{
  display:none;
}
.masonry-brick [id^="edit-field-datum-value-wrapper"] fieldset{
  border:none;
  height:0;
  margin:0;
  padding:0;
}
.masonry-brick [id^="edit-field-datum-value-wrapper"] fieldset > div.fieldset-wrapper{
  width:0;
  height:0;
  padding:0;
  margin:0;
}
.masonry-brick [id^="edit-field-datum-value-wrapper"] fieldset legend{
    background-color: #dfdfdf;
    border-radius: 1rem;
    padding: 0.41rem 2.7rem 0.41rem 1.2rem;
    border: solid 1px #fff;
    -webkit-appearance: none;
    -moz-appearance: none;
    -o-appearance: none;
    background-image: url(../images/selectDown.svg);
    background-position: 95% center;
    background-repeat: no-repeat;
    outline: none;
    cursor: pointer;
    float: right;
    font-weight: 600;
    min-width: 75%;
    margin-left:0.5rem;
    font-size:0.9rem;
    margin-top:1rem;
    position:relative;
}
.masonry-brick [id^="edit-field-datum-value-wrapper"] fieldset legend button{
    position: absolute;
    background-color: #dfdfdf;
    font-size: 1rem;
    right: 0;
    top: 0;
    border-radius: 1rem;
    height: 100%;
    width: 1.8rem;
    border: 0;
}
.masonry-brick .header{
  position:relative;
  height:15rem;
  margin-bottom:1rem;
}
.masonry-brick .header .views-field-field-headerbild{
  position:absolute!important;
  height:15rem;
  width:100%;
  top:0;
  z-index:0!important;
}
.masonry-brick .header .views-row{
  position:relative;
}
.masonry-brick .header .views-row > *{
  z-index:1;
  position:relative;
}
.masonry-brick .header .views-field-field-headerbild > div > div{
  height:15rem;
  width:100%;
  border-radius:1rem;
}

/*Kontaktblock*/
.kontaktblock{
  width:60%;
  margin:0 auto;
  border-radius:1rem;
  background: #e6f3fa;
  padding:5%;
  color:#000;
}
.kontaktblock td img{
  position: relative;
  top:0.2rem;
}
.horizontal-list{
  display:flex;
  justify-content:space-between;
  margin-top:1rem;
}
.horizontal-list li{
  list-style-type: none;
}

.horizontal-list li a:before {
  content: "■";
  color: #fff;
  font-size: 1.5rem; /* Adjust size as needed */
  display: inline-block;
  width: 1.2rem; /* Adjust width to match font-size */
  margin-right: 0;
  line-height: 0.5;
  position: relative;
  top: 0.15rem;
}

.horizontal-list li a{
  color:#fff;
  font-weight:bold;
}


/**************GLOSSARY***************/
.glossary .view-header{
  margin-bottom:1rem;
}
.glossary .view-header .glossary{
  text-align:center;
  color:#fff;
}
.glossary .view-header .glossary a{
  font-weight: normal;
  color: #fff;
  background: #000;
  text-decoration: none;
  display: inline-block;
  /* padding: 0.3rem 0; */
  margin-right: 0.1rem;
  font-size: 0.75rem;
  font-weight:bold;
  width: 1.9em;
  height: 1.20rem;
  text-align: center;
  border: solid 1px #333;
  transition: all 0.3s;
  border-radius: 50%;
  padding-top: 0.2rem;
}
.glossary .view-header a.disabled{
  color:#ccc;
  pointer-events: none;
  background:#6a6a6a; 
}
.glossary .view-header a.active{
  background:#88c4e6;
  border-color:#88c4e6;
  color:#000;
}
.glossary .view-header a:hover{
  color:#000;
  background:transparent;
  border:solid 1px #000;
}
.glossary .table-section-header{
  background:#000;
  color:#fff;
  padding:0.3rem 1.5rem 0.3rem 1rem; 
  margin-bottom:1rem;
}

/***************NODES*****************/
.node--view-mode-full .node__content{
  border-radius: 1rem;
  box-shadow: 2px 2px 4px 0px rgba(156, 156, 156, 1);
  margin-bottom:1rem;
}
.node--type-ansprechpartner.node--view-mode-full .node__content{
  box-shadow:none;
}
.node--type-ansprechpartner.node--view-mode-full .node__content > .layout--onecol:first-child {
  box-shadow: 2px 2px 4px 0px rgba(156, 156, 156, 1);
  position:relative;
  z-index:0;
}
.node--type-ansprechpartner.node--view-mode-full .node__content > .layout--onecol:first-child + .layout {
  box-shadow: 2px 2px 4px 0px rgba(156, 156, 156, 1);
  border-radius: 0 0 1rem 1rem;
  position: relative;
  z-index: 1;
  background: #fff;
  margin-bottom:1rem;
  padding:1rem;
}
.node--type-article.node--view-mode-full > .node__content{
  background:rgba(255, 255, 255, 0.7);
}
.node__content > .layout--onecol:first-child{
  background:rgba(136,196,230,0.9);
  border-radius: 1rem 1rem 0 0;
  padding:2rem 1rem 1rem 1rem;
  position:relative;
}
.node--type-startseite .node__content > .layout--onecol:first-child{
  background:transparent;
  border-radius:0;
  padding:0;
}
.node__content > .layout--onecol:first-child .block-field-blocknodearticlefield-headerbild > div > div,
.node__content > .layout--onecol:first-child .block-field-blocknodeeinrichtungenfield-headerbild > div > div
{
  position:absolute;
  top:0;
  left:0;
  border-radius:1rem 1rem 0 0;
  width:100%;
  height:100%;
  z-index:0;
  background-size: cover;
}
.node__content > .layout--onecol:first-child .block-field-blocknodearticlefield-headerbild > div > div:after,
.node__content > .layout--onecol:first-child .block-field-blocknodeeinrichtungenfield-headerbild > div > div:after
{
  background:rgba(255, 255, 255, 0.6);
  content:"";
  width:100%;
  height:100%;
  position:absolute;
  z-index:-1;
  left:0;
  border-radius:1rem 1rem 0 0;
}
.node__content > .layout--onecol:first-child .block-field-blocknodearticlefield-headerbild ~ div,
.node__content > .layout--onecol:first-child .block-field-blocknodeeinrichtungenfield-headerbild ~ div
{
  position: relative;
  z-index:1;
}
.node__content > .layout--twocol-section{
  border-radius: 0 0 1rem 1rem;
  background: rgba(255, 255, 255, 0.7);
  padding-bottom:2rem;
  margin-bottom:3rem;
}
.node__content > .layout--twocol-section .layout__region--first .field--label-above .field__label,
.node__content > .layout--onecol > .layout__region--content .field--label-above .field__label
{
  background:#000;
  color:#fff;
  padding:0.3rem 1.5rem 0.3rem 1rem; 
  display:inline-block;
  margin-left:-1rem;
  margin-top:1.5rem;
  margin-bottom:0.5rem;
}
.node__content > .layout--twocol-section .layout__region--second .field--name-field-geodaten > div{
  border-radius:0 0 1rem 1rem;
  box-shadow:0px 2px 4px 0px rgba(156,156,156,1);
  margin:0;
}
.block-field-blocknodearticlefield-galerie {
  padding:1rem 0;
}
.flex.block-layout-builder > div.field--name-field-galerie{
  flex-wrap: wrap;
  gap:0.4rem;
}
.block-field-blocknodearticlefield-galerie.flex .field__item{
  flex: 1 1 calc((100% - 5*0.4rem) / 6); 
  /* Erklärung: 
     - 100% Containerbreite 
     - 5 Lückenabstände (8px) abziehen 
     - Durch 6 teilen für max. 6 Items/Zeile */
  min-width: calc((100% - 5*0.4rem) / 6); /* Minimalbreite für Umbruch */
  max-width: 100%; /* Volle Breite bei Einzelbild */
}
@media (max-width: 768px) {
  .block-field-blocknodearticlefield-galerie.flex .field__item {
    flex-basis: calc((100% - 2*0.4rem) / 3);
    min-width: calc((100% - 2*0.4rem) / 3);
  }
}
.block-field-blocknodearticlefield-galerie.flex img {
  width:100%;
  height:auto;
}





.node__content > .layout--twocol-section .layout__region--second .block-layout-builder{
  margin:1rem 0 1rem 0;
}
.node__content > .layout--twocol-section .layout__region--second .block-layout-builder.block-field-blocknodeeinrichtungenfield-geodaten{
  margin:0;
  margin-bottom:1.5rem;
}
.node__content > .layout--twocol-section .layout__region--second .block-layout-builder .field__label,
.node__content > .layout--twocol-section .layout__region--second .block-layout-builder > h2
{
  background:#000;
  color:#fff;
  padding:0.3rem 0.5rem 0.3rem 0.2rem;
}
.node__content > .layout--twocol-section .layout__region--second .block-layout-builder .field__label + .field__item,
.node__content > .layout--twocol-section .layout__region--second .block-layout-builder .field__label + .field__items
{
  margin-top:0.5rem;
  padding-left:0.5rem
}
.node__content > .layout--twocol-section .layout__region--second .block-layout-builder h2{
  color:#fff;
  margin:0;
  font-size:1rem;
}

.node__content > .layout--twocol-section .layout__region--second .block-layout-builder a{
  color:#000;
}
.nodeheader{
  
}


/*Galleries*/
.flex-wrapped{
  margin-bottom:3rem;
}
.flex-wrapped .views-infinite-scroll-content-wrapper,
.flex-wrapped .attachment + .view-content
{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  width:102.2%;
}
.flex-wrapped .views-infinite-scroll-content-wrapper .views-row,
.flex-wrapped .attachment + .view-content .views-row
{
  width:31.42%;
  height:0;
  padding-top:31.46%;
  overflow:hidden;
  position:relative;
  margin-top:1.5%;
  display:table;
  /*border-left:1.4vw solid rgba(255, 255, 255, 0.1);*/
  margin-right:1.5%;
  border-radius:0.5rem;
  box-shadow: 3px 2px 7px 4px rgba(189,189,189,0.8);
}
.flex-wrapped .views-infinite-scroll-content-wrapper .views-row a,
.flex-wrapped .attachment + .view-content .views-row a
{
  display:inline-block;
  position:absolute;
  top:0;
  width:100%;
  overflow:hidden;
  height:0;
  padding-top:100%;
  border-radius:0.5rem;
}
.flex-wrapped .views-infinite-scroll-content-wrapper .views-row a:focus,
.flex-wrapped .attachment + .view-content  .views-row a:focus
{
  outline: none;
  box-shadow: 0 0 0 2px white, 
              0 0 0 4px var(--focus-color-alt),
              0 0 8px 4px rgba(70, 165, 70, 0.6);
  transition: box-shadow 0.2s ease-in-out;
}
.flex-wrapped .views-infinite-scroll-content-wrapper .views-row a img,
.flex-wrapped .attachment + .view-content .views-row a img
{
  width:100%;
  height:auto;
  transition:all 1s;
  position:absolute;
  top:0;
}
.flex .views-row a img:hover,
.flex-wrapped .views-infinite-scroll-content-wrapper .views-row a img:hover,
.flex-wrapped .attachment + .view-content .views-row a img:hover
{
    width:110%;
}
.flex-wrapped .views-row h2{
  position:absolute;
  bottom:0.5rem;
  font-family:'Sofia Sans Extra Condensed', sans-serif;
  color:#fff;
  width:85%;
  left:0.7rem;
  pointer-events: none;
}
.flex-wrapped .views-row h2 span{
  background:rgba(138, 212, 1, 0.9);
  line-height:1.5;
  box-shadow:0.7rem 0px 0px 0px rgba(138, 212, 1, 0.9), -0.7rem 0px 0px 0px rgba(138, 212, 1, 0.9);
  box-decoration-break: clone;
  -webkit-box-decoration-break:clone;
}
.flex-wrapped .form-item-search-api-fulltext{
  margin-top:1px;
  width:100%;
  margin-bottom:0;
}
.flex-wrapped .form-item-search-api-fulltext input{
  width:calc(100% - 4.9rem);
  border:solid rgba(138, 212, 1, 0.9) 4px;
  font-family: 'IBM Plex Sans', sans-serif;
  font-weight:bold;
  font-size:1rem;
  padding:0.5rem;
  padding-right:4rem;
}
.flex-wrapped .views-exposed-form{
  position:relative;
}
.flex-wrapped .views-exposed-form .form-actions{
  position:absolute;
  right:0;
  top:0;
  font-family:'Sofia Sans Extra Condensed', sans-serif;
  margin:0;
}
.flex-wrapped .views-exposed-form .form-actions input{
  height:100%;
  color:#fff;
  border:0;
  background-color:rgba(138, 212, 1, 0.9);
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='13'%3e%3cg stroke-width='2' stroke='%23fff' fill='none'%3e%3cpath d='M11.29 11.71l-4-4'/%3e%3ccircle cx='5' cy='5' r='4'/%3e%3c/g%3e%3c/svg%3e");
  padding-left: 2.5rem;
  padding-right:0.5rem;
  background-size: 22%;
  background-position: 0.5rem;
  background-repeat: no-repeat;
  font-size: 1.8rem;
  font-weight: bold;
  position: relative;
  top: 0.25rem;
  transition:0.3s;
}
.flex-wrapped .views-exposed-form .form-actions input:hover{
  background-color:transparent;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='13'%3e%3cg stroke-width='2' stroke='%237fd021' fill='none'%3e%3cpath d='M11.29 11.71l-4-4'/%3e%3ccircle cx='5' cy='5' r='4'/%3e%3c/g%3e%3c/svg%3e");
  color:rgba(138, 212, 1, 0.9);
  border-left:3px solid rgba(138, 212, 1, 0.9);
}
.flex-wrapped .views-exposed-form .form-actions input + input{
background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg width='107mm' height='107mm' version='1.1' viewBox='0 0 107 107' xmlns='http://www.w3.org/2000/svg'%3e%3cg transform='translate(-54.506 -99.85)' fill='none' stroke='%23fff'%3e%3ccircle cx='108.01' cy='153.35' r='47.718' stroke-width='11.562'/%3e%3cg transform='matrix(.63663 .63478 -.63478 .63663 76.601 81.114)' stroke-width='12.861'%3e%3cpath d='m48.844 31.329 64.709-0.82652'/%3e%3cpath d='m80.218 0.54833 1.6386 61.903'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e");
  background-size: 25%;
  margin:0;
}
.flex-wrapped .views-exposed-form .form-actions input + input:hover{
  border-left:0;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg width='107mm' height='107mm' version='1.1' viewBox='0 0 107 107' xmlns='http://www.w3.org/2000/svg'%3e%3cg transform='translate(-54.506 -99.85)' fill='none' stroke='%237fd021'%3e%3ccircle cx='108.01' cy='153.35' r='47.718' stroke-width='11.562'/%3e%3cg transform='matrix(.63663 .63478 -.63478 .63663 76.601 81.114)' stroke-width='12.861'%3e%3cpath d='m48.844 31.329 64.709-0.82652'/%3e%3cpath d='m80.218 0.54833 1.6386 61.903'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e");
}
.node__content .layout--twocol-section .layout__region--first{
  padding: 1rem;
  box-sizing: border-box;
  padding-top:0.5rem;
}
.node__content .layout--onecol .layout__region--content{
  padding: 1rem;
  box-sizing: border-box;
  padding-top:0.5rem;
}
/*Flex-Slider*/
.slick-track {
  margin-left:0;
}

.slick-slide img {
    display: block;
    width: 100%;
    height:auto;
}
.mobile-menu{
  display:none;
}
.mobile-menu-toggle{
  display:none;
}
.contact-message-feedback-form{
  padding:2rem;
  border-radius:1rem;
  box-shadow: 2px 2px 4px 0px rgba(156, 156, 156, 1);
  background-color: #88c4e6;
  margin-bottom:3rem;
}
/*COOKIEBANNER*/
.eu-cookie-compliance-message p {
  font-size: 1rem;
  color: #000;
  margin: 0;
  box-shadow: none;
}
.eu-cookie-compliance-message h2 {
  font-size: 1.3rem;
}
.disagree-button.eu-cookie-compliance-more-button,
.eu-cookie-compliance-agree-button,
.eu-cookie-compliance-default-button,
.eu-cookie-compliance-hide-button,
.eu-cookie-compliance-more-button-thank-you,
.eu-cookie-withdraw-button,
.eu-cookie-compliance-save-preferences-button{
  background: transparent;
  border:solid 2px #000;
  border-radius: 1rem;
  color:#000;
  box-shadow: none;
  text-shadow: none;
}
/*ACESSIBILITY*/
.menu-kachel a:focus {
  outline: none;
  box-shadow: 0 0 0 2px white, 
              0 0 0 4px var(--focus-color-alt),
              0 0 8px 4px rgba(70, 165, 70, 0.6);
  transition: box-shadow 0.2s ease-in-out;
}

.readmore-extrafield:focus {
  outline: none;
  box-shadow: 0 0 0 2px white, 
              0 0 0 4px var(--focus-color-alt),
              0 0 8px 4px rgba(70, 165, 70, 0.6);
  transition: box-shadow 0.2s ease-in-out;
}
.masonry-brick .js-form-type-search-api-autocomplete .form-autocomplete.form-text:focus{
  outline: none;
  box-shadow: 0 0 0 2px white, 
              0 0 0 4px var(--focus-color-alt),
              0 0 8px 4px rgba(70, 165, 70, 0.6);
  transition: box-shadow 0.2s ease-in-out;
}
.form-actions .button:focus{
  outline: none;
  box-shadow: 0 0 0 2px white, 
              0 0 0 4px var(--focus-color-alt),
              0 0 8px 4px rgba(70, 165, 70, 0.6);
  transition: box-shadow 0.2s ease-in-out;
}
.masonry-brick .views-exposed-form summary:focus{
  outline: none;
  box-shadow: 0 0 0 2px white, 
              0 0 0 4px var(--focus-color-alt),
              0 0 8px 4px rgba(70, 165, 70, 0.6);
  transition: box-shadow 0.2s ease-in-out;
}
/*############## MEDIA-Queries ##########################*/
@media all and (max-width:769px) {
  
  html{
    position:fixed;
    width:100vw;
    height:100vh;
    overflow-y:auto;
    overflow-x:hidden;
  }
  body{
    background-image:none;
    width:100vw;
    position:absolute;
    width:100vw;
    height:100vh;
    overflow-x:hidden;
    overflow-y:auto;
  }
  #header{
    flex-direction:column;
  }
  .hblocks.f-items nav{
    display:none;
  }
  .fixed{
    position:fixed;
    top:0;
    width:100vw;
    left:0;
    z-index:100;
  }

/* Mobile Menu Overrides */
  #header{
    position: fixed;
  }
  .path-frontpage #header{
    position: relative;
    
  }
  .node--view-mode-full .node__content {
    margin-top: 4.5rem;
  }
  #block-enlightenment-logoklein {
    margin: 1rem 0 2rem 4.5rem;
    width: 42vw;
    max-width: 16rem;
  }
  .mobile-menu{
    display: block;
  }
  .mobile-menu-toggle{
    display:block;
  }
  /* Hide original desktop menu on mobile */
  #block-enlightenment-site-branding {
    width:50%;
    margin-left:19%;
    margin-top:1rem;
    font-size:1rem;
  }
  #block-enlightenment-site-branding > .site-slogan {
    width: 140%;
    font-size:0.85rem;
  }
  #block-enlightenment-hauptnavigation {
    display: none;
    position: fixed;
    top: 0;
    right: -100%;
    width: calc(100vw - 5.9rem);
    height: 100vh;
    background: #fff;
    z-index: 1001;
    transition: right 0.3s ease;
    padding: 20px;
    overflow-y: auto;
    border-left:1px solid #000;
  }
  #block-enlightenment-site-branding {
    margin-bottom: 0;
  }

  /* Show menu when active */
  body.mobile-menu-open #block-enlightenment-hauptnavigation {
    display: block;
    right: 0;
    background:#fff;
  }

  /* Original burger icon styles remain */
  .mobile-menu-toggle {
    display: flex !important;
    border: 3px solid #333;
    top: 1rem;
    left: 1rem;
    position: relative;
    width: 2.5rem;
    height: 2.5rem;
    flex-direction: column;
    padding:0rem 0.3rem;
    border-radius: 0.3rem;
    /* ... existing burger styles ... */
  }

  /* Animated burger icon */
  .mobile-menu-toggle span {
    background: #000 !important;
    transition: transform 0.3s ease, opacity 0.2s ease;
    width: 100%;
    height: 3px;
    display: inline-block;
    position: relative;
    margin-top: 0.4rem;
  }

  body.mobile-menu-open .mobile-menu-toggle span:nth-child(1) {
    transform: translateY(10px) rotate(45deg);
  }
  
  body.mobile-menu-open .mobile-menu-toggle span:nth-child(2) {
    opacity: 0;
  }
  
  body.mobile-menu-open .mobile-menu-toggle span:nth-child(3) {
    transform: translateY(-10px) rotate(-45deg);
  }

  /* Menu list adjustments */
  #block-enlightenment-hauptnavigation ul.menu {
    flex-direction: column;
    padding: 0;
  }

  #block-enlightenment-hauptnavigation ul.menu li {
    margin: 0.2rem 0;
  }

  #block-enlightenment-hauptnavigation ul.menu a {
    font-size: 1rem;
    padding: 0.7rem;
    padding-bottom:1rem;
    display: block;
    border-bottom:1px solid #000;
  }
  #fixed .region-fixedheader{
    display:none;
  }
  .block-field-blocknodestartseitefield-link-kacheln .field--name-field-imagelinks a, .menu-kachel a .kacheltext {
    font-size: 0.8rem;
    font-weight: bold;
    display: inline-block;
    padding: 1rem 0.3rem 4rem 0.3rem;
    text-decoration: none;
    color: #000;
    position: relative;
    z-index: 2;
    width: 100%;
  }
  .kontaktblock {
    width: 96%;
    margin: 0;
    border-radius: 1rem;
    padding: 2%;
  }
  .kontaktblock .contenttable {
    margin-left:-0.5rem;
  }
  .kontaktblock .contenttable td {
    padding:0;
  }
  .horizontal-list{
    flex-direction: column;
  }
  .horizontal-list li{
    padding-top:0.5rem;
  }

  .padding_plus, .padding-plus {
    padding: 1rem 2rem;
    padding-top: 0rem;
    color: #fff;
  }
  .menu-kachel {
    height: 7rem;
    margin-right: 1%;
  }
  .masonry-item.views-row, .float-right-cards .node--view-mode-teaser .node__content {
    width: 94%!important;
    margin-bottom: 1rem;
    margin-left:1.5%;
  }
  .bef-exposed-form .form--inline > .form-item, .bef-exposed-form .form--inline .js-form-wrapper > .form-item {
    float: left;
    max-width: 60vw;
    margin-bottom:0;
  }
  .masonry-brick .js-form-type-search-api-autocomplete .form-autocomplete.form-text {
    width: 98%;
    border-radius: 1.2rem;
    padding: 0.5rem 1rem;
    background-position: 99%;
    margin-left: 0.5rem;
  }
  .masonry-brick .form-submit {
    border-radius: 1.5rem;
    padding: 0.5rem 1rem;
    margin-right:0.5rem!important;
  }
  .currentsearch{
    padding:0.5rem;
  }
  .currentsearch .views-filters-summary {
    display: inline;
  }
  .currentsearch .views-filters-summary .items{
    display:block;
    margin-top:0.5rem;
  }
  .currentsearch .item{
    display:block;
    margin-bottom:0.5rem;
  }
  .currentsearch .views-filters-summary a.remove-filter {
    line-height:0.8;
  }
  .currentsearch .reset{
    width:95%;
    margin-top:0.5rem;
    text-align:center;
    margin-left:0!important;
  }
  #navigation{
    display:none;
  }
  .center-column{
    width:100%;
  }
  #block-telefonnummer {
    text-align: left;
    letter-spacing: 0.15rem;
    transform: scale(1, 1.3);
    margin-top: 0rem;
    position: relative;
    left: 0;
    margin-right: 0;
  }
  .region-sitename{
    margin-top:1rem;
  }
  .region-sitename img{
    width:70%;
    height:auto;
  }
  .grid-3 > .layout__region{
    flex-direction:column;
  }
  .grid-3 > .layout__region > div{
    width:100%;
    margin-bottom:0.5rem;
  }
  .block-field-blocknodepagebody h2, .block-field-blocknoderezeptetitle, .block-field-blocknodepagetitle {
    font-size:1.8rem;
  }
  .block-field-blocknodepagebody {
    padding: 0 1rem 1rem 1rem;
  }
  .flex-wrapped .views-infinite-scroll-content-wrapper,
  .flex-wrapped .attachment + .view-content{
    flex-wrap:wrap;
  }
  footer > div {
    display: flex;
    flex-direction:column;
    width: 100%;
    margin: 0 auto;
  }
  footer > div > div.block{
    width:100%;
  }
  .flex-wrapped .views-infinite-scroll-content-wrapper .views-row,
  .flex-wrapped .attachment + .view-content .views-row{
     width:100%;
     padding-top:98%;
     margin-bottom:0.5rem;
  }
  footer > div > div h2{
    border-bottom:solid 2px #fff;
    border-top:solid 2px #fff;
    padding:0.3rem 1rem;
    margin-top:0;
  }
  footer > div > div h2 ~ form{
    padding-right:1rem;
    margin-bottom:10rem;
  }
  footer > div > div h2 ~ form input{
    max-width:98%;
  }
  .cheeseburger-menu__backdrop--active{
    background:transparent;
    display:none;
  }
  .cheeseburger-menu__item a{
    font-weight:bold;
    color:rgba(138, 212, 1, 1);
  }
  .views-field-field-galerie a.colorbox img.image-style-wide{
    max-width:100vw;
    height:auto;
  }
  .region-footer {
    gap:0;
    width: 95%;
    grid-template-columns: 1fr; /* Eine Spalte statt drei */
    grid-template-rows: auto auto auto auto; /* Vier Zeilen für die Elemente */
  }
  .region-footer ul.menu li a{
    padding:0.25rem 0;
    font-weight:bold!important;
    font-size:1.2rem;
    display:inline-block;
  }
  .region-footer #block-enlightenment-fusszeile-2 .menu{
    top:0;
  }
  /* Alle Elemente untereinander anordnen */
  .region-footer #block-enlightenment-hauptnavigation-2 {
    grid-column: 1;
    grid-row: 1;
  }
  
  .region-footer #block-enlightenment-kontaktdatenstartseite {
    grid-column: 1;
    grid-row: 2;
  }
  
  .region-footer #block-enlightenment-gefordertdurch {
    grid-column: 1;
    grid-row: 3;
  }
  
  .region-footer #block-enlightenment-fusszeile-2 {
    grid-column: 1;
    grid-row: 4;
    position: static; /* Entferne die relative Positionierung */
    top: 0;
  }
}
