.grid-row {
  position: relative;
  padding: 80px calc( ( 100% - 1620px ) / 2 );
  display: grid;
  grid-template-columns: repeat( 12, minmax(0,1fr) );
  column-gap: 40px;
  row-gap: 40px;
}

.grid-col {
  position: relative;
  padding: 0;
  box-sizing: content-box;
  display: grid;
  grid-template-columns:  100%;
  align-content: start;
  row-gap: 10px;
}

.grid-block {
  position: relative;
  text-overflow: ellipsis;
}

/** de: je eine Spalte seitlich Abstand */
/** en: je eine Spalte seitlich Abstand */
.rax-grid10cols {
  padding: 80px calc( ( 100% - 1620px ) / 2 + 138px );
  grid-template-columns: repeat( 10, minmax(0,1fr) );
}


/** de: teils unterstrichene Überschrift */
/** en: half underlined headlines  */
.bax-headlineunderline {
}
.bax-headlineunderline .headline1, .bax-headlineunderline .headline2, .bax-headlineunderline .headline3, .bax-headlineunderline .headline4, .bax-headlineunderline .headline5, .bax-headlineunderline .headline6 {
  margin-bottom: 0.75em;
  padding-bottom: 0.15em;
  display: inline-block;
  position: relative;
}
.bax-headlineunderline .headline1:after, .bax-headlineunderline .headline2:after, .bax-headlineunderline .headline3:after, .bax-headlineunderline .headline4:after, .bax-headlineunderline .headline5:after, .bax-headlineunderline .headline6:after {
  position: absolute;
  display: block;
  bottom: -10px;
  left: 30%;
  width: 40%;
  border-bottom: 2px solid #0090CC;
  content: '';
}

/** de: ist ein Slider */
/** en: is a slider */
.bax-slider {
}
.bax-slider ul {
  list-style: none;
}
.bax-slider .slick-track {
  display: flex;
  align-items: center;
}
.bax-slider .slick-slide img {
  margin: 0 auto 0 !important;
}
@media all and (max-width: 600px) {
  .bax-slider {
    margin: 0 30px;
  }
}

/** de: Text mit Schlagschatten */
/** en: Text with dropshadow */
.bax-dropshadow {
  text-shadow: 0 2px 6px rgba(0,0,0,0.4);
}

/** de: Bilder als Kreis */
/** en: Round images */
.bax-rounded-images {
}
.bax-rounded-images img {
  position: relative;
  margin: 0;
  border-radius: 9999px;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  overflow: hidden;
  box-shadow: 0px 8px 25px -1px rgba(0,0,0,0.29);
}

.grid-col.aligncntnt-start {
  align-content: start;
}
.grid-col.aligncntnt-end {
  align-content: end;
}
.grid-col.aligncntnt-center {
  align-content: center;
}
.grid-col.aligncntnt-stretch {
  align-content: stretch;
}
.grid-col.aligncntnt-space-around {
  align-content: space-around;
}
.grid-col.aligncntnt-space-between {
  align-content: space-between;
}
.grid-col.aligncntnt-space-evenly {
  align-content: space-evenly;
}

.grid-block.align-left, .grid-block.txt-left {
  text-align: left;
}
.grid-block.align-right, .grid-block.txt-right {
  text-align: right;
}
.grid-block.align-center, .grid-block.txt-center {
  text-align: center;
}
.grid-block.align-justify, .grid-block.txt-justify {
  text-align: justify;
}
.grid-row.row-colored-1 {

  background: var(--rowColored1Background);
  box-shadow: var(--rowColored1BoxShadow);
  color: var(--rowColored1TextColor);

  --headline1Color: var(--rowColored1Headline1Color);
  --headline2Color: var(--rowColored1Headline2Color);
  --headline3Color: #008fcc;
  --headline4Color: var(--rowColored1Headline4Color);
  --headline5Color: var(--rowColored1Headline5Color);
  --headline6Color: var(--rowColored1Headline6Color);
  --defaultTextColor: var(--rowColored1TextColor);
  --defaultLinkColor: var(--rowColored1LinkColor);
  --defaultLinkDecoration: var(--rowColored1LinkDecoration);
  --defaultLinkHoverColor: var(--rowColored1LinkHoverColor);
  --defaultLinkHoverDecoration: var(--rowColored1LinkHoverDecoration);
  --button1BorderColor: var(--rowColored1Button1BorderColor);
  --button1HoverBorderColor: var(--rowColored1Button1HoverBorderColor);
  --button1Color: var(--rowColored1Button1Color);
  --button1HoverColor: var(--rowColored1Button1HoverColor);
  --button1Background: var(--rowColored1Button1Background);
  --button1HoverBackground: var(--rowColored1Button1HoverBackground);
  --button2BorderColor: var(--rowColored1Button2BorderColor);
  --button2HoverBorderColor: var(--rowColored1Button2HoverBorderColor);
  --button2Color: var(--rowColored1Button2Color);
  --button2HoverColor: var(--rowColored1Button2HoverColor);
  --button2Background: var(--rowColored1Button2Background);
  --button2HoverBackground: var(--rowColored1Button2HoverBackground);
}
.grid-row.row-colored-2 {

  background: var(--rowColored2Background);
  box-shadow: var(--rowColored2BoxShadow);
  color: var(--rowColored2TextColor);

  --headline1Color: var(--rowColored2Headline1Color);
  --headline2Color: var(--rowColored2Headline2Color);
  --headline3Color: var(--rowColored2Headline3Color);
  --headline4Color: var(--rowColored2Headline4Color);
  --headline5Color: var(--rowColored2Headline5Color);
  --headline6Color: var(--rowColored2Headline6Color);
  --defaultTextColor: var(--rowColored2TextColor);
  --defaultLinkColor: var(--rowColored2LinkColor);
  --defaultLinkDecoration: var(--rowColored2LinkDecoration);
  --defaultLinkHoverColor: var(--rowColored2LinkHoverColor);
  --defaultLinkHoverDecoration: var(--rowColored2LinkHoverDecoration);
  --button1BorderColor: var(--rowColored2Button1BorderColor);
  --button1HoverBorderColor: var(--rowColored2Button1HoverBorderColor);
  --button1Color: var(--rowColored2Button1Color);
  --button1HoverColor: var(--rowColored2Button1HoverColor);
  --button1Background: var(--rowColored2Button1Background);
  --button1HoverBackground: var(--rowColored2Button1HoverBackground);
  --button2BorderColor: var(--rowColored2Button2BorderColor);
  --button2HoverBorderColor: var(--rowColored2Button2HoverBorderColor);
  --button2Color: var(--rowColored2Button2Color);
  --button2HoverColor: var(--rowColored2Button2HoverColor);
  --button2Background: var(--rowColored2Button2Background);
  --button2HoverBackground: var(--rowColored2Button2HoverBackground);

}
.grid-col.col-colored-5 {
  padding: 20px;
  border: 1px solid #fee8ea;
  border-top: 0;
  border-radius: 15px;
  color: var(--defaultTextColor);
  grid-template-rows: auto 1fr auto;

  --headline1Color: #ff7585;
  --headline2Color: #ff7585;
  --headline3Color: #ff7585;
  --headline4Color: #ff7585;
  --headline5Color: #ff7585;
  --headline6Color: #ff7585;
  --button1BorderColor: #ff7585;
  --button1Color: #ff7585;
  --button1HoverBorderColor: #ff7585;
  --button1HoverColor: #FFFFFF;
  --button1HoverBackground: #ff7585;
}
.grid-col.col-colored-5 .grid-block:first-child {
  margin: -20px -21px 15px -21px;
  padding-bottom: 12px;
  padding-top: 25px;
  width: calc( 100% + 42px );
  color: #ff7585;
  background: linear-gradient(0deg, #fedee1 0%, rgba(255,252,252,0.6) 100%);
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
}
.grid-col.col-colored-2 {
  padding: 20px;
  border: 1px solid #daf1fe;
  border-top: 0;
  border-radius: 15px;
  color: var(--defaultTextColor);
  grid-template-rows: auto 1fr auto;

  --headline1Color: #0190CC;
  --headline2Color: #0190CC;
  --headline3Color: #0190CC;
  --headline4Color: #0190CC;
  --headline5Color: #0190CC;
  --headline6Color: #0190CC;
  --button1BorderColor: #0190CC;
  --button1Color: #0190CC;
  --button1HoverBorderColor: #0190CC;
  --button1HoverColor: #FFFFFF;
  --button1HoverBackground: #0190CC;
}
.grid-col.col-colored-2 .grid-block:first-child {
  margin: -20px -21px 15px -21px;
  padding-bottom: 12px;
  padding-top: 25px;
  width: calc( 100% + 42px );
  color: #0190CC;
  background: linear-gradient(0deg, #D0E6F3 0%, rgba(252,253,254,0.6) 100%);
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
}
.grid-col.col-aktuelles {
  border-radius: 15px;
  height: 350px;
  overflow: hidden;
  font-size: 1rem;
  color: white;
  align-content: end;

  --headline1Color: white;
  --headline1FontSize: 1.4rem;
  --headline2Color: white;
  --headline2FontSize: 1.4rem;
  --headline3Color: white;
  --headline3FontSize: 1.4rem;
  --headline4Color: white;
  --headline4FontSize: 1.4rem;
  --headline5Color: white;
  --headline5FontSize: 1.4rem;
  --headline6Color: white;
  --headline6FontSize: 1.4rem;
  --button1BorderColor: white;
  --button1Color: white;
  --button1HoverBorderColor: white;
  --button1HoverColor: #FFFFFF;
  --button1HoverBackground: white;
}
.grid-col.col-aktuelles .grid-block:first-child {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.grid-col.col-aktuelles .grid-block:first-child img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: cover;
  object-position: center center;
}
.grid-col.col-aktuelles .grid-block:last-child {
  padding: 5px 20px;
  height: 150px;
  background: linear-gradient(180deg, transparent 0%, rgba(9, 75, 149, 0.9) 100%);
  align-content: end;
  display: grid;
}

.grid-col.col-aktuelles .grid-block:last-child p {
  display: none;
}

.grid-col.col-aktuelles:hover .grid-block:last-child p {
  font-weight: 400 !important;
  line-height: 120%;
  display: inline-block;
}
.grid-col.col-aktuelles:hover .grid-block:last-child {
  padding-bottom: 20px;
  height: 330px;
  background: linear-gradient(180deg, rgba(9, 75, 149, 0.2) 0%, rgba(9, 75, 149, 0.9) 100%);
}
.grid-col.col-aktuelles a {
  color: white;
}
.grid-col.col-aktuelles a:hover, .grid-col.col-aktuelles a:active, .grid-col.col-aktuelles a:focus {
  color: white;
}
.grid-col.col-imageslider {
  height: fit-content;
}
.grid-col.col-imageslider > .grid-block .grideditor-edit-button {
  display: none;
}
.grid-col.col-imageslider > .grid-block {
  display: none;
}
.grid-col.col-imageslider.slick-slider > .grid-block {
  display: block;
}
.grid-col.col-imageslider > .grid-block:first-child {
  display: block;
}
.grid-col.col-imageslider .slick-arrow {
  position: absolute;
  top: 50%;
  left: 10px;
  width: 6%;
  aspect-ratio: 1 / 1;
  background: rgba(255,255,255,0.3);
  border: 1px solid rgba(0,0,0,0.1);
  border-radius: 50px;
  overflow: hidden;
  color: transparent;
  z-index: 100;
  transform: translate(0,-50%);
  cursor: pointer;
  transition: background 300ms;
  outline: none;
}
.grid-col.col-imageslider .slick-arrow:hover {
  background: rgba(255,255,255,0.6);
}
.grid-col.col-imageslider .slick-arrow::after {
  display: block;
  position: absolute;
  top: 50%;
  width: 25%;
  aspect-ratio: 1 / 1;
  border: 3px solid rgba(0,0,0,0.2);
  border-radius: 2px;
  border-left-color: transparent;
  border-bottom-color: transparent;
  content: '';
  transform: translate(0,-50%);
  transform-origin: center center;
  transition: 300ms;
}
.grid-col.col-imageslider .slick-arrow:hover::after {
  border: 3px solid rgba(0,0,0,0.5);
  border-left-color: transparent;
  border-bottom-color: transparent;
}
.grid-col.col-imageslider .slick-arrow.slick-prev::after {
  transform: translate(0,-50%) rotate(-135deg);
  left: 40%;
}
.grid-col.col-imageslider .slick-arrow.slick-next::after {
  transform: translate(0,-50%) rotate(45deg);
  left: 23%;
}

.grid-col.col-imageslider .slick-arrow.slick-next {
  right: 10px;
  left: auto;
}

.grid-col.col-imageslider .slick-dots {
  position: absolute;
  bottom: 10px;
}
.grid-col.col-colored-3 {
  padding: 20px;
  border: 1px solid #E6EEDF;
  border-top: 0;
  border-radius: 15px;
  color: var(--defaultTextColor);
  grid-template-rows: auto 1fr auto;

  --headline1Color: #9AC077;
  --headline2Color: #9AC077;
  --headline3Color: #9AC077;
  --headline4Color: #9AC077;
  --headline5Color: #9AC077;
  --headline6Color: #9AC077;
  --button1BorderColor: #9AC077;
  --button1Color: #9AC077;
  --button1HoverBorderColor: #9AC077;
  --button1HoverColor: #FFFFFF;
  --button1HoverBackground: #9AC077;
}
.grid-col.col-colored-3 .grid-block:first-child {
  margin: -20px -21px 15px -21px;
  padding-bottom: 20px;
  width: calc( 100% + 42px );
  color: #9AC077;
  background: linear-gradient(0deg, #E6EEDF 0%, rgba(252,255,249,0.7) 100%);
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
}
.grid-col.col-colored-4 {
  padding: 20px;
  border: 1px solid #fce8d9;
  border-top: 0;
  border-radius: 15px;
  color: var(--defaultTextColor);
  grid-template-rows: auto 1fr auto;

  --headline1Color: #f7a664;
  --headline2Color: #f7a664;
  --headline3Color: #f7a664;
  --headline4Color: #f7a664;
  --headline5Color: #f7a664;
  --headline6Color: #f7a664;
  --button1BorderColor: #f7a664;
  --button1Color: #f7a664;
  --button1HoverBorderColor: #f7a664;
  --button1HoverColor: #FFFFFF;
  --button1HoverBackground: #f7a664;
}
.grid-col.col-colored-4 .grid-block:first-child {
  margin: -20px -21px 15px -21px;
  padding-bottom: 12px;
  padding-top: 25px;
  width: calc( 100% + 42px );
  color: #f7a664;
  background: linear-gradient(0deg, #fbdfc9 0%, rgba(254,249,246,0.6) 100%);
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
}
.grid-col.col-colored-1 {
  padding: 20px;
  border: 1px solid #CFD5E5;
  border-radius: 15px;
  background: linear-gradient(0deg, rgba(255,255,255,1) 40%, rgba(206,213,229,1) 100%);
  color: var(--defaultTextColor);
  grid-template-rows: auto 1fr auto;

  --headline1Color: #0C4A93;
  --headline2Color: #0C4A93;
  --headline3Color: #0C4A93;
  --headline4Color: #0C4A93;
  --headline5Color: #0C4A93;
  --headline6Color: #0C4A93;
}
.grid-col.col-colored-1 .grid-block:first-child {
  color: #0C4A93;
}
.grid-block.textarea-links-as-buttons1 a {
  display: inline-block;
  padding: 0.1em 0.6em 0.2em 0.6em;
  margin: 0.6em 0 0 0;
  border: 1px solid transparent;
  border-radius: var(--button1BorderRadius);
  font-size: 1rem;
  border-color: var(--button1BorderColor);
  font-weight: var(--button1FontWeight);
  color: var(--button1Color);
  text-decoration: var(--button1TextDecoration);
  text-transform: var(--button1TextTransform);
  background: var(--button1Background);
}
.grid-block.textarea-links-as-buttons1 a:hover {
  text-decoration: var(--button1HoverTextDecoration);
  border-color: var(--button1HoverBorderColor);
  color: var(--button1HoverColor);
  background: var(--button1HoverBackground);
}
.grid-block.textarea-links-as-buttons2 a {
  display: inline-block;
  padding: 0.4em 1.7em;
  margin: 0.6em 0 0 0;
  border: 2px solid transparent;
  border-radius: var(--button2BorderRadius);
  font-size: 0.8em;
  border-color: var(--button2BorderColor);
  font-weight: var(--button2FontWeight);
  color: var(--button2Color);
  text-decoration: var(--button2TextDecoration);
  text-transform: var(--button2TextTransform);
  background: var(--button2Background);
}
.grid-block.textarea-links-as-buttons2 a:hover {
  text-decoration: var(--button2HoverTextDecoration);
  border-color: var(--button2HoverBorderColor);
  color: var(--button2HoverColor);
  background: var(--button2HoverBackground);
}
.grid-block.textarea-accordion > ul {
  padding: 0;
  margin: 0;
}
.grid-block.textarea-accordion > ul > li {
  position: relative;
  padding: 0;
  margin: 0;
}
.grid-block.textarea-accordion > ul > li:nth-child(even) {
  list-style: none;
}
.grid-block.textarea-accordion > ul > li:nth-child(odd) {
  border-bottom: 1px solid #CCC;
  padding-top: 10px;
  margin-bottom: 20px;
  cursor: pointer;
}
.grid-block.textarea-accordion > ul > li:nth-child(odd)::after {
  display: block;
  position: absolute;
  right: 15px;
  top: 10px;
  width: 8px;
  height: 8px;
  border: 3px solid transparent;
  border-radius: 2px;
  border-top-color: #C1001F;
  border-right-color: #C1001F;
  transform: rotate(135deg);
  content: '';
}
.grid-block.textarea-accordion > ul > li:nth-child(odd).open::after {
  top: 20px;
  transform: rotate(-45deg);
}
.grid-block.textarea-accordion > ul > li:nth-child(even) {
  display: none;
  padding-bottom: 20px;
}
@media all and (min-width: 1101px) {
  .hide-default { display: none; }
  .col-1 { grid-column: span 1; }
  .col-2 { grid-column: span 2; }
  .col-3 { grid-column: span 3; }
  .col-4 { grid-column: span 4; }
  .col-5 { grid-column: span 5; }
  .col-6 { grid-column: span 6; }
  .col-7 { grid-column: span 7; }
  .col-8 { grid-column: span 8; }
  .col-9 { grid-column: span 9; }
  .col-10 { grid-column: span 10; }
  .col-11 { grid-column: span 11; }
  .col-12 { grid-column: span 12; }
}

@media all and (max-width: 1620px) {
  .grid-row { padding: 60px 40px; }
}

@media all and (min-width: 601px) and (max-width: 1100px) {
  .hide-tablet { display: none; }
  .col-t-1 { grid-column: span 1; }
  .col-t-2 { grid-column: span 2; }
  .col-t-3 { grid-column: span 3; }
  .col-t-4 { grid-column: span 4; }
  .col-t-5 { grid-column: span 5; }
  .col-t-6 { grid-column: span 6; }
  .col-t-7 { grid-column: span 7; }
  .col-t-8 { grid-column: span 8; }
  .col-t-9 { grid-column: span 9; }
  .col-t-10 { grid-column: span 10; }
  .col-t-11 { grid-column: span 11; }
  .col-t-12 { grid-column: span 12; }
}

@media all and (max-width: 600px) {
  .grid-row { column-gap: 20px; padding: 40px 20px; row-gap: 40px;}
  .hide-mobile { display: none; }
  .col-m-1 { grid-column: span 1; }
  .col-m-2 { grid-column: span 2; }
  .col-m-3 { grid-column: span 3; }
  .col-m-4 { grid-column: span 4; }
  .col-m-5 { grid-column: span 5; }
  .col-m-6 { grid-column: span 6; }
  .col-m-7 { grid-column: span 7; }
  .col-m-8 { grid-column: span 8; }
  .col-m-9 { grid-column: span 9; }
  .col-m-10 { grid-column: span 10; }
  .col-m-11 { grid-column: span 11; }
  .col-m-12 { grid-column: span 12; }
}
