@import url("./fonts-and-vars.css");


.fliesstext a {
	text-decoration: underline;
}

.element {
	padding-top:78px; /* padding wegen den vielen blöcken mit hintergrundfarbe */
	padding-bottom: 78px;
	border-top: 2px solid var(--color-black);
}
article > .element:first-child {
	padding-top:0;
	border-top: 0;
}
article > .element:last-child {
	padding-bottom:100px;
}
.element.intro:not(.lay-komplett) {
	padding-bottom: 140px;
}
.element.bg-blau + .element.bg-blau,
.element.bg-beige + .element.bg-beige,
.element.bg-weiss + .element.bg-weiss {
	padding-top:0;
	border-top: 0;
}


.element.intro.lay-komplett.layT-center-vert .logos,
.element.intro .logos {
	margin-bottom:0 !important;
}
.element.intro.lay-komplett .logos {
	margin-bottom:auto !important;
}
.element.intro.lay-nur-logo .logos {
  justify-content: flex-end;
}
article > .element.intro:first-child {
	padding-top: 72px;
}
article > .element.intro.lay-komplett.bg-bild:first-child {
	position: sticky;
	top: 0;
	z-index:1;
}
.admin-bar article > .element.intro.lay-komplett.bg-bild:first-child {
	top: 32px;
}
article > .element {
	z-index:2;
	position:relative;
}
.fliesstext p,
.fliesstext ul,
.fliesstext table,
.fliesstext h1,
.fliesstext h2,
.fliesstext h3,
.fliesstext h4,
.fliesstext h5,
.fliesstext h6 {
  margin-top: 36px;
}
.fliesstext :first-child {
	margin-top:0 !important;
}
.fliesstext .introname,
.fliesstext .superheadline,
.fliesstext .headline,
.fliesstext .subheadline {
	margin-top: 70px;
}
.fliesstext .subsubheadline /* auf jeden fall */ {
	margin-top: 70px;
}
.fliesstext .introname + *,
.fliesstext .superheadline + *,
.fliesstext .headline + * {
	margin-top: 120px;
}
.fliesstext .subheadline + * {
	margin-top: 50px;
}
.fliesstext .subsubheadline + * {
	margin-top: 34px;
}
.fliesstext .vita + * {
  margin-top: 22px;
}
.intro .fliesstext .durchblender,
.intro .fliesstext * + .durchblender {
	margin-top: 0 !important;
}

.fliesstext .em {
	font-size: var(--font-fliesstexthervorhebung);
	line-height: var(--lh-fliesstexthervorhebung);
	letter-spacing: var(--ls-fliesstexthervorhebung);
	text-transform: uppercase;
}

.opt-center {
	margin-left:auto;
	margin-right:auto;
}
.text.opt-indent.cols-12 > :not(.introname,.superheadline,.headline,.subheadline,.subsubheadline) {
	width: 74.60%;
	margin-left:auto;
}
.text.opt-indent.cols-10 > :not(.introname,.superheadline,.headline,.subheadline,.subsubheadline) {
	width: 79.64%;
	margin-left:auto;
}
a.cta,
.cta a,
a.cta:hover,
.cta a:hover,
a.cta:focus,
.cta a:focus,
.fliesstext .kontakt-text li.has-link a,
.fliesstext .kontakt-text li.has-link a:focus,
.fliesstext .kontakt-text li.has-link a:hover {
	color:var(--color-red);
	text-decoration: none;
}
a.cta:focus,
.cta a:focus,
.fliesstext .kontakt-text li.has-link a:focus,
a.cta:hover,
.cta a:hover,
.fliesstext .kontakt-text li.has-link a:hover {
	font-weight: 400;
}
.fliesstext .kontakt-text li.has-link.hover:after {
	border-bottom-width: 3px;
}
.fliesstext .kontakt-text li.has-link a::after,
.fliesstext .kontakt-text li.has-link.hover::before {
	display: none !important;
}
.fliesstext li {
	position: relative;
	font-size: var(--font-aufzaehlung);
	line-height: var(--lh-aufzaehlung);
	letter-spacing: var(--ls-aufzaehlung);
	text-transform: uppercase;
	font-weight: 300;
	padding: 0.54em 0 0.46em 0;
}
.fliesstext ul.bulletpoints li,
.fliesstext .kontakt-text ul li,
.fliesstext ul.akkordion > li,
.fliesstext ul.download-links li {
	font-size: var(--font-bulletpoints);
	line-height: var(--lh-bulletpoints);
	letter-spacing: var(--ls-bulletpoints);
}
.fliesstext ul.akkordion > li,
.fliesstext ul.download-links li,
.fliesstext li.has-link {
	padding:0;
}
.fliesstext ul.akkordion li > a,
.fliesstext ul.download-links  a,
.fliesstext li.has-link a {
	display: block;
	padding-top: 0.54em;
	padding-bottom: 0.46em;
 	text-decoration: none;
}
.fliesstext ul {
	position: relative;
}
.fliesstext li:after {
	position: absolute;
	top:0;bottom:0;left:0;
	pointer-events:none;
	content:"";
	display: block;
	width: 100vw;
	border-top: 1px solid var(--color-black);
	border-bottom: 1px solid var(--color-black);
    z-index:5;
}
.fliesstext ul.akkordion > li ul > li:after {
	width: 100%;
}
article > section.visible .fliesstext li:first-child:after,
.fliesstext li:first-child:after {
    border-top-color: transparent;
}

.fliesstext li.nextHas_more-margin-top:after,
.fliesstext li:last-child:after {
    border-bottom-width: 2px;
}
.fliesstext li.hover:after {
	border-width:0px;
    z-index:5;
}
.fliesstext .kontakt-text li.has-link.hover:after {
	border-top-width:1px;
	border-bottom-width:3px;
}
.fliesstext li.hover:last-child:after {
	border-bottom-width:1px;
}
.fliesstext li.more-margin-top {
	margin-top:2em;
}
.fliesstext li.more-margin-top:after { /* da fallen die 2 1px-linien nicht zusammen, also müssma eigene machen */
	border-top-color: transparent !important;
}


.zweispaltig {
	display: flex;
	justify-content:space-between;
	align-items: stretch; /* zumindest bei anwaelte */
	flex-wrap:wrap;
}
.zweispaltig.wrapping > :first-child {
	margin-bottom:1em;
}
.zweispaltig > .marginLeft {
	margin-left:auto;
}
.zweispaltig > * {
	flex: 0 0 auto;
}
.element.text .cta-cont,
.zweispaltig .cols-3:first-child,
.zweispaltig .cols-4:first-child {
	margin-left: 8.46%;
	padding-top: 0;
}
.zweispaltig .cols-4:first-child,
.zweispaltig .cols-3:first-child {
	padding-right:1em;
}
.zweispaltig > :last-child > .kontakt-text > ul:first-child,
.zweispaltig > :last-child > ul:first-child {
	margin-top: -0.4em !important; /* wenn im rechten block eine ul ist, diese nach oben schieben für bündigkeit mit headline links  */
}
.zweispaltig > :first-child {
  z-index: 5;
}
.icon-link {
	display: block;
    width: 74px !important;
	height: 75px !important;
}

.kontakt-text {
	position: relative;
}
.kontakt-text .icon-link {
	position: absolute;
	right:12.77%;top:1.0em;
	z-index: 7;
}
.kontakt-text .icon-link circle {
  transition: all 150ms ease;
}
.element.bg-weiss .kontakt-text .icon-link circle {
  fill: var(--color-white);
}
.element.bg-blau .kontakt-text .icon-link circle {
  fill: var(--color-blue);
}
.kontakt-text .icon-link:focus circle,
.kontakt-text .icon-link:hover circle {
  fill: var(--color-red) !important;
}
.fliesstext li.has-link a,
ul.akkordion > li > a,
ul.download-links a {
	padding-right:60px;
}
a.cta i.icon,
/*.cta a:after,
a.cta:after,*/
.fliesstext ul:not(.download-links,.akkordion) li.has-link a i.icon,
ul.akkordion > li > a i.icon,
ul.download-links a i.icon {
	content:"";
	display: block;
	background:transparent;
	position: absolute;
	right:0; bottom:0.6em;
	width: 36px;height:36px;
}
a i.icon {
  transition: all 150ms ease;
}
a i.icon svg {
	overflow: visible;
}
a:focus i.icon .stroke-pfeil,
a:hover i.icon .stroke-pfeil {
	stroke: var(--color-red);
	stroke-width: 3px;
}
ul.akkordion a i.icon svg {
	transition: transform 150ms ease;
}
ul.akkordion .is-active a i.icon svg {
	transform: rotate(180deg);
}
a.cta i.icon {
	bottom:0.56em;
}

.fliesstext ul.download-links a i.icon svg {
    transform: rotate(45deg);
}
.kontakt-text .has-link a .icon,
ul.quicklinks a .icon,
ul.quicklinks a:after {
	display: none !important;
}
.fliesstext .kontakt-text li.has-link a,
.kontakt-text .has-link a,
ul.quicklinks a {
  padding-right: 0px;
  text-decoration: none;
}

.fliesstext li.has-link a,
.fliesstext ul.akkordion > li > a,
.fliesstext ul.download-links a {
  color: var(--color-black);
	z-index:5;
	text-decoration: none;
}
.fliesstext li.has-link a:focus,
.fliesstext ul.akkordion > li > a:focus,
.fliesstext ul.download-links a:focus,
.fliesstext li.has-link a:hover,
.fliesstext ul.akkordion > li > a:hover,
.fliesstext ul.download-links a:hover {
  font-weight: 300;
}
.fliesstext li.has-link:before,
.fliesstext ul.akkordion li:before,
.fliesstext ul.download-links li:before {
	content:"";
	display: none;
	position: absolute;
	top:-1px;bottom:-1px;
	left:-100vw;width:200vw;
	background: var(--color-yellow);
	z-index:3;
}
.fliesstext li.has-link:last-child:before,
.fliesstext ul.akkordion li:last-child:before,
.fliesstext ul.download-links li:last-child:before {
	bottom:0;
}

.bg-gelb .fliesstext li.has-link:before,
.bg-gelb .fliesstext ul.akkordion li:before,
.bg-gelb .fliesstext ul.download-links li:before {
	background: var(--color-blue);
}
.fliesstext li.has-link.hover:before,
.fliesstext ul.akkordion li.hover:before,
.fliesstext ul.download-links li.hover:before {
	display: block;
}
/*
.fliesstext li.has-link.hover:after,
.fliesstext ul.akkordion li.has-link.hover:after,
.fliesstext ul.download-links li.has-link.hover:after {
	height:2px;
}*/
a.cta:focus:after,
.cta a:focus:after,
.fliesstext li.has-link a:focus:after,
.fliesstext ul.akkordion > li > a:focus:after,
.fliesstext ul.download-links li a:focus:after,
a.cta:hover:after,
.cta a:hover:after,
.fliesstext li.has-link a:hover:after,
.fliesstext ul.akkordion > li > a:hover:after,
.fliesstext ul.download-links li a:hover:after {
	background: var(--color-red);
}
/*
.fliesstext li.has-link:after,
.fliesstext ul.akkordion li.has-link:after,
.fliesstext ul.download-links li.has-link:after {
	z-index:1;
}*/

ul.akkordion li > a {
	cursor: pointer;
}
ul.akkordion .content {
	max-height:0;
	overflow:hidden;
	padding:0;
	transition: all 100ms ease;
	z-index:5; position:relative;
}
ul.akkordion li.is-active .content {
	max-height:200vh;
	overflow: auto;
	padding-bottom: 0.5em;
	transition: all 400ms ease;
}
.fliesstext ul.akkordion li .content {
  font-size: var(--font-fliesstext);
  line-height: var(--lh-fliesstext);
  letter-spacing: 0;
  text-transform: none;
}

.bildtext2sp .hl,
.anwaelte .hl {
	margin-bottom: 64px;
}
.bildtext2sp .bild img,
.anwaelte .bild img {
  width:88%;
	display: block;
	height: auto;
}
.anwaelte .name > *,
.cta {
  position: relative;
	display:block;
	padding: 0.55em 0 0.45em 0;
}
.anwaelte .name > *:before,
.cta:before {
  content:"";
	display: block;
	position: absolute;
	top:0;
	bottom:0;
	left:0;
	width:100vw;
	border-top: 2px solid #000;
	border-bottom: 2px solid #000;
	pointer-events: none;
}
a.cta:focus:before,
.cta a:focus:before,
a.cta:hover:before,
.cta a:hover:before {
	border-bottom: 3px solid #000;
}
.anwaelte .bild-rechts .name > *:before,
.bild-rechts .cta:before {
	left:auto;
	right:0;
}

.anwaelte .name + * {
	margin-top: 17px;
}
.anwaelte .text {
	padding-right: 14%;
	margin-bottom: 22px;
}
.anwaelte .texte {
	display: flex;
	flex-direction: column;
}
.anwaelte .texte .cta {
	margin-top: auto;
}
.anwaelte .item + .item {
	margin-top: 86px;
}
.anwaelte .zweispaltig.bild-rechts .bild {
	order: 2;
}
.anwaelte .zweispaltig.bild-rechts .texte {
	order: 1;
}
.anwaelte .bild-rechts .bild img {
  margin-left: auto;
}
.zweispaltig.bild-rechts .cols-4:first-child {
  margin-right: 8.46%;
  padding-left: 1em;
	padding-right:0;
	margin-left:0;
}
.zweispaltig.bild-rechts .texte {
  margin-left: 8.46%;
	width: 49.26%;
}
.anwaelte .bild-rechts  .text {
  padding-right: 0;
}
.anwaelte .bild-rechts a.cta i.icon,
.anwaelte .bild-rechts a.cta:after {
    right: 7%;
}


.element.bilder .hl {
	margin-bottom: 60px;
}

.element.bilder .bilder {
	position:relative;
}

.bilder-slider {
	position: relative;
	height:0;
	padding-bottom: 70%;
	overflow:hidden;
}
.bilder-slider .bild {
	position: absolute;
	top:0;left:0;
	width:100%;
	height:100%;
	z-index:1;
    pointer-events:none;
}
.bilder-slider .bild.last-active {
	z-index:2;
}
.bilder-slider .bild.is-active {
	z-index:3;
}
.bilder-slider .bild > * {
	width:100%;
	height:100%;
	object-fit: cover;
}
.dots {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top:33px;
}
.dots li {
	display: block;
	width: 20px;
	height:20px;
	cursor: pointer;
	padding: 5px;
}
.dots li span {
	background: var(--color-black);
	border-radius: 50%;
	width:10px;height:10px;
	display:block;
}
.dots li.is-active span {
	background: var(--color-blue);
}

.kf-slideInRight {
	-webkit-animation-name: slideInRight;
	animation-name: slideInRight;
  -webkit-animation-duration: 300ms;
  animation-duration: 300ms;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.kf-slideInLeft {
	-webkit-animation-name: slideInLeft;
	animation-name: slideInLeft;
  -webkit-animation-duration: 300ms;
  animation-duration: 300ms;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

a.slider-arrow {
  position: absolute !important;
	cursor: pointer;
	top: 50%;
	transform:translateY(-50%);
	left:-10%;
	width: 54px;
	height: 53px;
	z-index: 10;
}
a.slider-arrow path {
  transition: all 150ms ease;
}
a.slider-arrow:focus path,
a.slider-arrow:hover path {
	stroke: var(--color-red);
	stroke-width: 3px;
}
a.slider-arrow.next {
	left:auto; right:-10%;
}

.bildtext2sp .zweispaltig {
	justify-content: flex-start;
}
.bildtext2sp .zweispaltig .bild {
	margin-right:01.47%;
}

.element.text .cta-cont {
	margin-top: 86px;
}
.element.text .cta-cont a.cta::after {
	display: none !important;
}
.element.text .cta-cont a.cta::before {
	left:auto;right:0;
}
.intro .text,
.intro .text * {
	color:#fff;
}
.intro-footer,
.intro-footer p {
	font-size: var(--font-adresseintro);
	letter-spacing:0;
	line-height:1;
	color:#fff;
}
.intro.bg-weiss .text,
.intro.bg-weiss .text *,
.intro.bg-beige .text,
.intro.bg-beige .text *,
.intro.bg-weiss .intro-footer,
.intro.bg-weiss .intro-footer p,
.intro.bg-beige .intro-footer,
.intro.bg-beige .intro-footer p {
    color:#000;
}

.intro .intro-footer > :nth-child(2) a,
.intro .intro-footer > :nth-child(2) a:focus,
.intro .intro-footer > :nth-child(2) a:hover {
	border-radius: 4px;
  	background-color: var(--color-blue);
	color:var(--color-white);
	display: block;
	padding: 0.75em 1em;
	font-size: var(--font-adresseintro);
	letter-spacing:0;
	line-height:1;
	text-align:center;
	white-space:nowrap;
	transition: background 100ms ease;
}
.intro .intro-footer > :nth-child(2) a:focus,
.intro .intro-footer > :nth-child(2) a:hover {
	background: var(--color-red);
}
.intro-footer a[href^='tel:'] {
	display: block;
	width:87px;
	height:87px;
	background: transparent;
}
a[href^='tel:'] .stroke {
	transition: all 150ms ease;
}
.auf-weiss a[href^='tel:'] .stroke,
.auf-beige a[href^='tel:'] .stroke,
.auf-gelb a[href^='tel:'] .stroke,
.intro.bg-weiss .intro-footer a[href^='tel:'] .stroke,
.intro.bg-beige .intro-footer a[href^='tel:'] .stroke {
	stroke: var(--color-red);
}
a[href^='tel:']:focus circle.stroke,
a[href^='tel:']:hover circle.stroke,
.intro-footer a[href^='tel:']:focus circle.stroke,
.intro-footer a[href^='tel:']:hover circle.stroke {
	fill: var(--color-yellow);
}
a[href^='tel:']:focus path.stroke,
a[href^='tel:']:hover path.stroke,
.intro-footer a[href^='tel:']:focus path.stroke,
.intro-footer a[href^='tel:']:hover path.stroke {
	stroke:var(--color-blue);
	fill: var(--color-yellow);
}
.auf-weiss a[href^='tel:'] circle.stroke {
	fill: #fff;
}
.auf-beige a[href^='tel:'] circle.stroke {
	fill: var(--color-beige);
}
.auf-gelb a[href^='tel:'] circle.stroke {
	fill: var(--color-yellow);
}
.auf-blau a[href^='tel:']:not(:hover):not(:focus) circle.stroke {
	fill: var(--color-blue);
}
.auf-beige a[href^='tel:']:focus circle.stroke,
.auf-weiss a[href^='tel:']:focus circle.stroke,
.auf-beige a[href^='tel:']:hover circle.stroke,
.auf-weiss a[href^='tel:']:hover circle.stroke,
.auf-gelb a[href^='tel:']:focus circle.stroke,
.auf-gelb a[href^='tel:']:hover circle.stroke,
.intro.bg-beige .intro-footer a[href^='tel:']:focus circle.stroke,
.intro.bg-weiss .intro-footer a[href^='tel:']:focus circle.stroke,
.intro.bg-beige .intro-footer a[href^='tel:']:hover circle.stroke,
.intro.bg-weiss .intro-footer a[href^='tel:']:hover circle.stroke {
	fill: var(--color-red);
}
.auf-weiss a[href^='tel:']:focus path.stroke,
.auf-weiss a[href^='tel:']:hover path.stroke,
.intro.bg-weiss .intro-footer a[href^='tel:']:focus path.stroke,
.intro.bg-weiss .intro-footer a[href^='tel:']:hover path.stroke {
	stroke:var(--color-white);
	fill: var(--color-red);
}
.auf-beige a[href^='tel:']:focus path.stroke,
.auf-beige a[href^='tel:']:hover path.stroke ,
.intro.bg-beige .intro-footer a[href^='tel:']:focus path.stroke,
.intro.bg-beige .intro-footer a[href^='tel:']:hover path.stroke {
	stroke:var(--color-beige);
	fill: var(--color-red);
}
.auf-gelb a[href^='tel:']:focus path.stroke,
.auf-gelb a[href^='tel:']:hover path.stroke {
	stroke:var(--color-yellow);
	fill: var(--color-red);
}
body .intro-footer .is-layout-flex {
  align-items: flex-start;
	gap:0;
}
body .intro-footer .is-layout-flex > * {
	margin-right:3%;
}
.intro.bg-weiss .intro-footer .is-layout-flex > *,
.intro.bg-beige .intro-footer .is-layout-flex > * {
  font-weight: 400;
}
section.intro.lay-logo-wm .intro-footer,
section.intro.lay-nur-logo .intro-footer {
	display: none;
}
.intro-footer {
	display: flex;
	justify-content:flex-end;
	align-items:center;
	margin-top: 8px;
}

.intro-footer > :nth-child(1) {
	width: auto;
	flex: 1 1 auto;
}
.intro-footer > :nth-child(2) {
	width: 30.73%;
	flex: 0 0 auto;
}
.intro-footer > :nth-child(3) {
	width: 87px;
	flex: 0 0 auto;
	margin-left: 14%;
}
.show-floating-buttons .intro-footer > :nth-child(3) > * {
	visibility: hidden !important;
	pointer-events: none;
}

.intro .bg-img {
	position: absolute;
	top:0; bottom:0;
	left:0;right:0;
	/*left:50%;
	max-width:100vw; 
	width: 100%;
	transform:translateX(-50%); */
	z-index:1;
}
.intro .bg-img img {
	width:100%;height:100%;
	object-fit:cover;
	object-position: center top;
}

/* Mobile Optimierung für Hochformat */
@media (max-width: 768px) {
  .intro .bg-img img{
    object-position: 60% top !important;
  }
}

.element.intro .restrain {
	position: relative;
	z-index:2;
}
.element.intro.lay-komplett .restrain {
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
	padding-bottom: 62px;
    height: calc( 100vh - 72px );
	/*max-height: calc( 986px - 72px );*/
    height: calc( var(--doc-height) - 72px );
}
.admin-bar .element.intro.lay-komplett .restrain {
	height: calc( 100vh - 72px - 32px );
	/*max-height: calc( 986px - 72px - 32px );*/
	height: calc( var(--doc-height) - 72px - 32px );
}
.element.intro.lay-komplett.layT-center-vert .restrain {
	justify-content:space-between;
}
.intro.lay-komplett {
	padding-bottom:0;
}
.element.intro.lay-komplett.layT-center-vert .text {
	margin: auto 0;
	padding-top: 3%;
}
.element.intro.lay-komplett.layT-bottom .text {
	margin-bottom: 5px;
}
.element.intro.lay-komplett.layT-bottom .text > p {
	width: 83.2%;
}
.intro .durchblender {
	display: flex;
	overflow:hidden;
}
.intro .durchblender,
.intro .durchblender span {
	white-space: nowrap;
}
.intro .durchblender span {
	opacity:0;
	width:0;
	overflow:hidden;
	display: block;
	transition: width 1ms linear, opacity 250ms ease 1ms;
}
.intro .durchblender span.is-active {
	opacity:1;
	width:auto;
}
@media screen and (max-width: 1410px) and (min-width: 768px) {
	.fliesstext .introname,
	.fliesstext .superheadline,
	.fliesstext .headline,
	.fliesstext .subheadline,
	.fliesstext .subsubheadline {
		hyphens: auto;
		-webkit-hyphens: auto;
	}
	.intro-footer > :nth-child(2) {
		width: auto;
		flex: 1 1 auto;
	}
	.intro-footer > :nth-child(2) a {
      display: inline-block;
	}
	.intro-footer > :nth-child(3) {
		flex: 0 0 auto;
		margin-left: 4vw;
	}
}
@media screen and (max-width: 1100px) and (min-width: 768px) {
	.element.downloads .zweispaltig > .marginLeft {
	  margin-left: 0;
	}
	.element.downloads .cols-7 {
	  width: auto;
	  flex:1;
	}
	.intro-footer > :nth-child(1) {
		display: block !important;
	}
	.element.text2sp .zweispaltig,
	.element.akkordion .zweispaltig,
	.element.kontakt .zweispaltig {
		display: block;
	}
	.element.text2sp .zweispaltig .cols-8, .element.text2sp .zweispaltig .cols-7, .element.text2sp .zweispaltig .cols-3, .element.text2sp .zweispaltig .cols-4,
	.element.akkordion .zweispaltig .cols-8, .element.akkordion .zweispaltig .cols-7, .element.akkordion .zweispaltig .cols-3, .element.akkordion .zweispaltig .cols-4,
	.element.kontakt .zweispaltig .cols-8, .element.kontakt .zweispaltig .cols-7, .element.kontakt .zweispaltig .cols-3, .element.kontakt .zweispaltig .cols-4
	{
		margin-left: 8.46% !important;
		width: auto !important;
	}
	.element.text2sp .zweispaltig > :nth-child(2),
	.element.akkordion .zweispaltig > :nth-child(2),
	.element.kontakt .zweispaltig > :nth-child(2) {
		margin-top: 50px;
	}
}


@media screen and (max-width: 767px) {

	.cta,
	.fliesstext ul.akkordion li > a, .fliesstext ul.download-links a, .fliesstext li.has-link a,
	.fliesstext li {
	  padding-top: 0.55em;
		padding-bottom:0.45em;
	}
	.text.opt-indent.cols-10 > :not(.introname, .superheadline, .headline, .subheadline, .subsubheadline) {
	  width: auto;
	  margin-left: 0;
	}
	.cols-3,
	.cols-4,
	.cols-6,
	.cols-7,
	.cols-8,
	.cols-10 {
	  width: auto !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	.bildtext2sp .bild img, .anwaelte .bild img {
	  width: 100%;
	}
	.zweispaltig {
  		display: block;
	}
	.fliesstext .introname,
	.fliesstext .superheadline,
	.fliesstext .headline,
	.fliesstext .subheadline,
	.fliesstext .subsubheadline {
		hyphens: auto;
		-webkit-hyphens: auto;
	}
	.element.intro.lay-komplett .text,
	.element.intro.lay-komplett .text > p:not([class]),
	.element.intro.lay-komplett.layT-bottom .text > p:not([class]) ,
	.fliesstext .introtext {
		font-size: 15px;
		line-height: 1.4;
		letter-spacing:0;
		text-transform:none;
	}
	.element {
	  padding-top: 54px;
	  padding-bottom: 54px;
	}
	article > .element:last-child {
	  padding-bottom: 60px;
	}

	.fliesstext p, .fliesstext ul, .fliesstext table, .fliesstext h1, .fliesstext h2, .fliesstext h3, .fliesstext h4, .fliesstext h5, .fliesstext h6 {
	  margin-top: 20px;
	}
	.fliesstext .subsubheadline {
	  margin-top: 50px;
	}
	.fliesstext .subsubheadline + * {
	  margin-top: 19px;
	}
	.fliesstext .subheadline + * {
	  margin-top: 30px;
	}
	.fliesstext .introname + *, .fliesstext .superheadline + *, .fliesstext .headline + * {
		margin-top: 68px;
	}
	.element.intro:not(.lay-komplett) {
	  padding-bottom: 170px;
	}
	.text.opt-indent.cols-12 > :not(.introname, .superheadline, .headline, .subheadline, .subsubheadline) {
	  width: auto;
		margin-left:0;
	}
	.fliesstext .headline + .kontakt-text {
		margin-top: 36px;
	}
	.fliesstext li::after {
	  border-top-color: transparent;
	}
	.fliesstext li.nextHas_more-margin-top::after, .fliesstext li:last-child::after {
	  border-bottom-width: 1px;
	}
	.icon-link {
	  width: 29px !important;
	  height: 30px !important;
	}
	.kontakt-text .icon-link {
	  right: 0;
	  top: 1.4em;
	}
	/* auf jeden fall bei downloads 15px! */
	ul.akkordion > li > a i.icon,
	a.cta i.icon, .fliesstext ul:not(.download-links, .akkordion) li.has-link a i.icon, ul.download-links a i.icon {
	  width: 15px;
	  height: 15px;
	  right: -15px;
	}
	.fliesstext li.has-link a, ul.akkordion a, ul.download-links a {
	  padding-right: 6px;
	}
	.zweispaltig .cols-4:first-child, .zweispaltig .cols-3:first-child {
	  padding-right: 0;
		margin-bottom: 32px;
	}
	.bildtext2sp .zweispaltig .bild {
		margin-bottom: 55px !important;
	}
	.bildtext2sp .hl, .anwaelte .hl {
	  margin-bottom: 34px;
	}
	.element.text .cta-cont, .zweispaltig .cols-3:first-child, .zweispaltig .cols-4:first-child {
	  margin-left: 0;
	}
	.anwaelte .name > ::before, .cta::before {
	  border-top-width: 1px;
	  border-bottom-width: 1px;
	}
	a.cta i.icon {
	  bottom: 0.6em;
	}
	.fliesstext .kontakt-text li.has-link.hover::after,
	.fliesstext li.hover::after,
	a.cta:focus::before, .cta a:focus::before, a.cta:hover::before, .cta a:hover::before {
	  border-bottom-width: 1px; /* zumindest bei anwaelte-CTA */
	}
	.anwaelte .name > ::before {
	  border-top: none;
	}
	.fliesstext li.has-link::before, .fliesstext ul.akkordion li::before, .fliesstext ul.download-links li::before { 
	  bottom:0;
	}
	.element.text .cta-cont,
	.element.text .cta-cont.cols-4 {
	    margin-top: 42px;
		width: 73.82% !important;
	}
	.intro.opts-mobile-kein-signet .home-logo {
		display: none;
	}
	.intro.opts-mobile-kein-signet .home-wm {
	  margin: 0 auto 0 auto;
	}
	.element.intro.opts-mobile-kein-signet .logos {
	  padding-top: 0px;
	}
	.intro-footer > :nth-child(3) {
		/* soll fixed sein, möcht ich anders machen */
		display: none;
	} 
	.intro-footer, .intro-footer p {
		font-weight: 400;
	}
	.intro-footer .is-layout-flex,
	.intro-footer {
		display: block;
	}
	.intro-footer .is-layout-flex, .intro-footer .is-layout-flex p {
		line-height: 1.67;
	}
	.intro-footer {
	  width: 76.47%;
		margin-top: 54px;
	}
	.intro-footer > :nth-child(2) {
	  width: auto;
		margin-top: 28px;
	}
	.intro .intro-footer > :nth-child(2) a, .intro .intro-footer > :nth-child(2) a:focus, .intro .intro-footer > :nth-child(2) a:hover {
	  padding: 0.75em 1em;
	}
	article > .element.intro:first-child {
	  padding-top: 51px;
	}
	.element.intro.lay-komplett .restrain {
	  padding-bottom: 17px;
	  height: calc( 100vh - 51px );
	  height: calc( var(--doc-height) - 51px );
		max-height: auto;
	}
	.element.intro.lay-komplett:not(.bg-bild) .restrain {
	  min-height: calc( 100vh - 51px );
	  min-height: calc( var(--doc-height) - 51px );
		max-height: auto;
		height:auto;
	}
	.intro .intro-footer > :nth-child(2) a, .intro .intro-footer > :nth-child(2) a:focus, .intro .intro-footer > :nth-child(2) a:hover {
	  padding: 0.35em 0.2em;
		white-space:normal;
	}
	.element.intro.lay-komplett .restrain,
	.element.intro.lay-komplett.layT-center-vert .restrain {
	  justify-content: flex-end;
	}
	.element.intro.lay-komplett .text,
	.element.intro.lay-komplett.layT-center-vert .text {
	  margin: auto 0 0 0;
	  padding-top: 0;
	}
	.element.intro.lay-komplett .text {
	  margin-top: 8vh;
	}
	.element.intro.lay-komplett .text > p:not([class]),
	.element.intro.lay-komplett.layT-bottom .text > p:not([class]) {
	      width: auto;
		  font-size: 15px;
	}
	.anwaelte .text {
	  padding-right: 0;
	  margin-bottom: 50px;
	}
	.anwaelte .name + * {
	  margin-top: 0.7em;
	}
	.anwaelte .item + .item {
	  margin-top: 44px;
	}
	.zweispaltig.bild-rechts .cols-4:first-child {
	  margin-right: 0;
	  padding-left: 0;
	}
	.fliesstext .vita + * {
	  margin-top: 15px;
	}
	a.slider-arrow {
		display: none;
	}
	.element.bilder .hl {
	  margin-bottom: 50px;
	}
	.dots li span {
	  width: 5px;
	  height: 5px;
	}
	.dots li {
	  width: 10px;
	  height: 10px;
	  padding: 2.5px;
	}
	.dots {
	  margin-top: 18px;
	}
}

@media screen and (max-width: 500px) {
	header nav a {
		hyphens: auto;
		-webkit-hyphens: auto;
	}
}

/* reveal effekte */
:root {
  --stagger-delay: 200ms;
}
article > section.text .text,
article > section.anwaelte .item,
article > section .hl,
article > section .bilder {
    transform: translateY(50px);
	opacity:0;
	transition: opacity 500ms ease, transform 500ms ease; 
	transition-delay: var(--stagger-delay);
}
article > section .bilder {
	transition-delay: calc( 2 * var(--stagger-delay) );
}
article > section.text.visible .text,
article > section.anwaelte .item.visible,
article > section.visible .hl,
article > section.visible .bilder {
    transform: none;
	opacity:1;
}


article > section .fliesstext li {
    transform: translateX(100px);
	opacity:0;
	transition: opacity 200ms ease, transform 500ms ease, border 400ms cubic-bezier(1.000, 0.000, 1.000, 0.000); 
}
article > section.visible .fliesstext li {
    transform: none;
	opacity:1;
}

article > section .fliesstext li:nth-child(1) {
	transition-delay: calc( 0 * var(--stagger-delay) );
}
article > section .fliesstext li:nth-child(2) {
	transition-delay: calc( 1 * var(--stagger-delay) );
}
article > section .fliesstext li:nth-child(3) {
	transition-delay: calc( 2 * var(--stagger-delay) );
}
article > section .fliesstext li:nth-child(4) {
	transition-delay: calc( 3 * var(--stagger-delay) );
}
article > section .fliesstext li:nth-child(5) {
	transition-delay: calc( 4 * var(--stagger-delay) );
}
article > section .fliesstext li:nth-child(6) {
	transition-delay: calc( 5 * var(--stagger-delay) );
}
article > section .fliesstext li:nth-child(7) {
	transition-delay: calc( 6 * var(--stagger-delay) );
}
article > section .fliesstext li:nth-child(8) {
	transition-delay: calc( 7 * var(--stagger-delay) );
}
article > section .fliesstext li:nth-child(9) {
	transition-delay: calc( 8 * var(--stagger-delay) );
}
article > section .fliesstext li:nth-child(10) {
	transition-delay: calc( 9 * var(--stagger-delay) );
}
article > section .fliesstext li:nth-child(11) {
	transition-delay: calc( 10 * var(--stagger-delay) );
}
article > section .fliesstext li:nth-child(12) {
	transition-delay: calc( 11 * var(--stagger-delay) );
}
article > section .fliesstext li:nth-child(13) {
	transition-delay: calc( 12 * var(--stagger-delay) );
}
article > section .fliesstext li:nth-child(14) {
	transition-delay: calc( 13 * var(--stagger-delay) );
}
article > section .fliesstext li:nth-child(15) {
	transition-delay: calc( 14 * var(--stagger-delay) );
}
article > section .fliesstext li:nth-child(16) {
	transition-delay: calc( 15 * var(--stagger-delay) );
}
