.grid-row {
  position: relative;
  padding: 80px calc( ( 100% - 1500px ) / 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;
  align-content: start;
  row-gap: 10px;
}

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

.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;
}

/** de: Zeilenabstand 1em oben und unten */
/** en: Line spacing 1em above and below */
.ram-1em {
  margin-top: 1em;
  margin-bottom: 1em;
}

/** de: Zeile nach oben ausrücken */
/** en: Zeilenach oben ausrücken */
.rax-negativemargintop {
  margin-top: -20vw;
}

/** de: Zwei Zeilen übergreifend */
/** en: Zwei Zeilen übergreifend */
.cax-rowspan2 {
  grid-row: span 2;
}

/** de: Ohne seitlichen Abstand */
/** en: Ohne seitlichen Abstand */
.rap-nosidemargin {
  padding-left: 0;
  padding-right: 0;
}

/** de: Erhöhter Abstand oben */
/** en: Erhöhter Abstand oben */
.cax-additionalmargintop {
}
@media all and (min-width: 1200px) {
  .cax-additionalmargintop {
    margin-top: 180px;
  }
}

/** de: Ausrücken nach unten */
/** en: Ausrücken nach unten */
.cax-negativemarginbottom {
}
@media all and (min-width: 1200px) {
  .cax-negativemarginbottom {
    margin-bottom: -180px;
    z-index: 10;
  }
}

/** de: Effekt: Fade-In links/rechts */
/** en: Effekt: Fade-In links/rechts */
.cax-fadein-ltr {
  opacity: 0;
}
.cax-fadein-ltr.animate {
  animation: fadein-ltr 1200ms forwards;
}
@keyframes fadein-ltr {
  from {
    opacity: 0;
    transform: translate(-100px,0);
  }
  to {
    opacity: 1;
    transform: translate(0,0);
  }
}

/** de: Effekt: Fade-In rechts/links */
/** en: Effekt: Fade-In rechts/links */
.cax-fadein-rtl {
  opacity: 0;
}
.cax-fadein-rtl.animate {
  animation: fadein-rtl 1200ms forwards;
}
@keyframes fadein-rtl {
  from {
    opacity: 0;
    transform: translate(100px,0);
  }
  to {
    opacity: 1;
    transform: translate(0,0);
  }
}

/** de: Effekt: Fade-In unten/oben */
/** en: Effekt: Fade-In unten/oben */
.cax-fadein-btt {
  opacity: 0;
}
.cax-fadein-btt.animate {
  animation: fadein-btt 1200ms forwards;
}
@keyframes fadein-btt {
  from {
    opacity: 0;
    transform: translate(0,100px);
  }
  to {
    opacity: 1;
    transform: translate(0,0);
  }
}

/** de: Bilder volle Breite, keine Abstände */
/** en: Bilder volle Breite, keine Abstände */
.bax-noimagemargin {
}
.bax-noimagemargin a, .bax-noimagemargin img, .bax-noimagemargin svg {
  display: block;
  width: 100%;
  margin: 0;
}
.grid-row.row-colored-1 {
  color: var(--rowColored1TextColor);
  background: var(--rowColored1Background);
  box-shadow: var(--rowColored1BoxShadow);
}

.grid-row.row-colored-1 .headline1 {
  color: var(--rowColored1Headline1Color);
}
.grid-row.row-colored-1 .headline2 {
  color: var(--rowColored1Headline2Color);
}
.grid-row.row-colored-1 .headline3 {
  color: var(--rowColored1Headline3Color);
}
.grid-row.row-colored-1 .headline4 {
  color: var(--rowColored1Headline4Color);
}
.grid-row.row-colored-1 .headline5 {
  color: var(--rowColored1Headline5Color);
}
.grid-row.row-colored-1 .headline6 {
  color: var(--rowColored1Headline6Color);
}

.grid-row.row-colored-1 a {
  text-decoration: var(--rowColored1LinkDecoration);
  color: var(--rowColored1LinkColor);
}

.grid-row.row-colored-1 a:hover {
  text-decoration: var(--rowColored1LinkHoverDecoration);
  color: var(--rowColored1LinkHoverColor);
}
.grid-row.row-colored-2 {
  color: var(--rowColored2TextColor);
  background: var(--rowColored2Background);
  box-shadow: var(--rowColored2BoxShadow);
}

.grid-row.row-colored-2 .headline1 {
  color: var(--rowColored2Headline1Color);
}
.grid-row.row-colored-2 .headline2 {
  color: var(--rowColored2Headline2Color);
}
.grid-row.row-colored-2 .headline3 {
  color: var(--rowColored2Headline3Color);
}
.grid-row.row-colored-2 .headline4 {
  color: var(--rowColored2Headline4Color);
}
.grid-row.row-colored-2 .headline5 {
  color: var(--rowColored2Headline5Color);
}
.grid-row.row-colored-2 .headline6 {
  color: var(--rowColored2Headline6Color);
}

.grid-row.row-colored-2 a {
  text-decoration: var(--rowColored2LinkDecoration);
  color: var(--rowColored2LinkColor);
}

.grid-row.row-colored-2 a:hover {
  text-decoration: var(--rowColored2LinkHoverDecoration);
  color: var(--rowColored2LinkHoverColor);
}
.grid-row.row-colored-3 {
  color: var(--rowColored3TextColor);
  background: var(--rowColored3Background);
  box-shadow: var(--rowColored3BoxShadow);
}

.grid-row.row-colored-3 .headline1 {
  color: var(--rowColored3Headline1Color);
}
.grid-row.row-colored-3 .headline2 {
  color: var(--rowColored3Headline2Color);
}
.grid-row.row-colored-3 .headline3 {
  color: var(--rowColored3Headline3Color);
}
.grid-row.row-colored-3 .headline4 {
  color: var(--rowColored3Headline4Color);
}
.grid-row.row-colored-3 .headline5 {
  color: var(--rowColored3Headline5Color);
}
.grid-row.row-colored-3 .headline6 {
  color: var(--rowColored3Headline6Color);
}

.grid-row.row-colored-3 a {
  text-decoration: var(--rowColored3LinkDecoration);
  color: var(--rowColored3LinkColor);
}

.grid-row.row-colored-3 a:hover {
  text-decoration: var(--rowColored3LinkHoverDecoration);
  color: var(--rowColored3LinkHoverColor);
}
.grid-col.col-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.grid-col.col-colored-2 {
  padding: 20px;
  border: 2px solid transparent;
  border-color: var(--colColored2BorderColor);
  border-radius: var(--colColored2BorderRadius);
  color: var(--colColored2TextColor);
  background: var(--colColored2Background);
  box-shadow: var(--colColored2BoxShadow);
}

.grid-col.col-colored-2 .headline1 {
  color: var(--colColored2Headline1Color);
}
.grid-col.col-colored-2 .headline2 {
  color: var(--colColored2Headline2Color);
}
.grid-col.col-colored-2 .headline3 {
  color: var(--colColored2Headline3Color);
}
.grid-col.col-colored-2 .headline4 {
  color: var(--colColored2Headline4Color);
}
.grid-col.col-colored-2 .headline5 {
  color: var(--colColored2Headline5Color);
}
.grid-col.col-colored-2 .headline6 {
  color: var(--colColored2Headline6Color);
}


.grid-col.col-colored-2 a {
  text-decoration: var(--colColored2LinkDecoration);
  color: var(--colColored2LinkColor);
}

.grid-col.col-colored-2 a:hover {
  text-decoration: var(--colColored2LinkHoverDecoration);
  color: var(--colColored2LinkHoverColor);
}
.grid-col.col-colored-1 {
  padding: 20px;
  border: 2px solid transparent;
  border-color: var(--colColored1BorderColor);
  border-radius: var(--colColored1BorderRadius);
  color: var(--colColored1TextColor);
  background: var(--colColored1Background);
  box-shadow: var(--colColored1BoxShadow);
}

.grid-col.col-colored-1 .headline1 {
  color: var(--colColored1Headline1Color);
}
.grid-col.col-colored-1 .headline2 {
  color: var(--colColored1Headline2Color);
}
.grid-col.col-colored-1 .headline3 {
  color: var(--colColored1Headline3Color);
}
.grid-col.col-colored-1 .headline4 {
  color: var(--colColored1Headline4Color);
}
.grid-col.col-colored-1 .headline5 {
  color: var(--colColored1Headline5Color);
}
.grid-col.col-colored-1 .headline6 {
  color: var(--colColored1Headline6Color);
}


.grid-col.col-colored-1 a {
  text-decoration: var(--colColored1LinkDecoration);
  color: var(--colColored1LinkColor);
}

.grid-col.col-colored-1 a:hover {
  text-decoration: var(--colColored1LinkHoverDecoration);
  color: var(--colColored1LinkHoverColor);
}
.grid-block.textarea-backgroundparallax {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.grid-block.textarea-backgroundparallax img, .grid-block.textarea-backgroundparallax video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin: 0;
}
.grid-block.textarea-backgroundparallax::after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.3);
  content: '';
}
@media all and (max-width: 600px ) {
  .grid-block.textarea-backgroundparallax {
    position: relative;
    top: auto;
    left: auto;
  }
}
.grid-block.textarea-transparent-white-background {
  padding: 30px;
  background: rgba(255,255,255,0.9);
  color: var(--defaultTextColor);
  border-radius: 3px;
}


.grid-block.textarea-transparent-white-background .headline1 {
  color: var(--colColored1Headline1Color);
}
.grid-block.textarea-transparent-white-background .headline2 {
  color: var(--colColored1Headline2Color);
}
.grid-block.textarea-transparent-white-background .headline3 {
  color: var(--colColored1Headline3Color);
}
.grid-block.textarea-transparent-white-background .headline4 {
  color: var(--colColored1Headline4Color);
}
.grid-block.textarea-transparent-white-background .headline5 {
  color: var(--colColored1Headline5Color);
}
.grid-block.textarea-transparent-white-background .headline6 {
  color: var(--colColored1Headline6Color);
}


.grid-block.textarea-transparent-white-background a {
  text-decoration: var(--colColored1LinkDecoration);
  color: var(--colColored1LinkColor);
}

.grid-block.textarea-transparent-white-background a:hover {
  text-decoration: var(--colColored1LinkHoverDecoration);
  color: var(--colColored1LinkHoverColor);
}

.grid-block.textarea-downloadbereich {

}
.grid-block.textarea-downloadbereich ul, .grid-block.textarea-downloadbereich ul li {
  list-style: none;
  padding: 0;
  margin: 0;
}

.grid-block.textarea-downloadbereich ul li {
  margin: 10px 0;
}

.grid-block.textarea-downloadbereich a:not(.bprop) {
  display: inline-block;
  padding: 5px 0 0px 40px;
  background: url(/_templates/blocks/images/download-li.svg) no-repeat;
  background-position: left center;
  color: #548235;
  text-decoration: none;
}
.grid-block.textarea-downloadbereich a:not(.bprop):hover {
  color: #548235;
  text-decoration: underline;
}
.grid-block.image-backgroundparallax {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.grid-block.image-backgroundparallax img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin: 0;
}
.grid-block.image-backgroundparallax::after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.3);
  content: '';
}
@media all and (max-width: 600px ) {
  .grid-block.image-backgroundparallax {
    position: relative;
    top: auto;
    left: auto;
  }
}
@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: 1600px) {
  .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: 20px;}
  .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; }
}
