/*
Theme Name: ulrich.digital Block Theme
Version: 2025.04
Description: ulrich.digital Block Theme
Author: Matthias Ulrich & Erhard J. Sigrist
Author URI: https://ulrich.digital
License: MIT
License URI: http://opensource.org/licenses/mit-license.php
Text Domain: ulrich.digital
*/


:root{
	--box-shadow: 12px 12px 0 rgba(0,0,0,0.2);
	--font_light: #D1DAA8;
	--blue_light: #96b0c0;
	--fa-primary-color: rgb(102, 102, 58);
	--fa-secondary-color: rgb(102, 102, 58);
	--fa-primary-color:white;
	--fa-secondary-color: white;
	--fa-primary-opacity:0.5;
	--fa-secondary-opacity: 0.2;
}

/* =============================================================== *\ 
   Development
\* =============================================================== */
.display_none{
	display: none!important;
}

/* =============================================================== *\ 
   REM Basis
\* =============================================================== */
html {
	font-size: 24px;
	background-color: #29374c;
}

@media screen and (max-width: 1200px) {
	html {
		font-size: 20px;
	}	
}

@media screen and (max-width: 800px) {
	html {
		font-size: 18px;
	}	
}


/* =============================================================== *\ 
   Header
\* =============================================================== */
header {
    padding: 60px;
}

@media screen and (max-width: 800px) {
    header {
        padding: 20px 20px 80px;
    }
}

header .logo_container {
    gap: 0.125em;
}

header .logo {
    font-family: var(--wp--preset--font-family--sf-pro-display);
    font-size: 24px;
    text-transform: uppercase;
    letter-spacing: 1.8px;
}

header .logo strong {
    font-weight: 800;
}

header .logo_claim {
    font-size: 18px;
    letter-spacing: 0.125em;
    padding-left: 1.25em;
    color: var(--blue_light);
    font-style: normal;
    font-weight: 300;
}


/* =============================================================== *\ 
   Footer
\* =============================================================== */
footer {
    margin-top: 10vw;
    background-color: #1f283c;
    padding: 120px 120px 3px;
    color: var(--font_light);
}

@media screen and (max-width: 1200px) {
    footer {
        padding: 80px 80px 3px;
    }
}

@media screen and (max-width: 800px) {
    footer {
        padding: 80px 40px 3px;
    }
}

footer .footer_teaser_group {
    width: 580px;
    max-width: 100%;
}

footer .footer_teaser_group p {
    font-size: 40px;
    font-weight: 600;
    line-height: 1.125em;
    letter-spacing: 0.025em;
}

@media screen and (max-width: 800px) {
    footer .footer_teaser_group p {
        font-size: 30px;
    }
}

@media screen and (max-width: 600px) {
    footer .footer_teaser_group p {
        font-size: 24px;
    }
}

footer .footer_teaser_group p + p {
    margin-top: 1em;
}

@media screen and (max-width: 600px) {
    footer .wp-block-button a {
        padding: 8px 16px;
    }
}

footer .rechtliches {
    color: var(--blue_light);
    list-style: none;
    display: flex;
    gap: 10px;
    justify-content: flex-end;
    font-size: 18px;
    padding: 1em 1em 0.5em;
    margin: 0;
}

footer .rechtliches li {
    display: inline;
}

footer .rechtliches li:not(:last-child)::after {
    content: "|";
    margin-left: 10px;
}


/* =============================================================== *\ 
   Scroll-Animationen
\* =============================================================== */
.scroll-element {
	opacity: 0;
  	transform: translateY(100px); 
  	transition: transform 0.3s ease-out, opacity 0.3s ease-out;
}

.from_left {
	transform: translateX(-100px);
}

.from_above {
  	transform: translateY(-100px);
}

.from_right {
  	transform: translateX(100px);
}

.from_below {
  	transform: translateY(100px);
}

.animation_charwise_from_left > div:first-child {
	letter-spacing: -0.02em; /* leicht zusammenziehen */
}


/* =============================================================== *\ 
   Inhalts-Container
\* =============================================================== */
.wp-site-blocks{
	overflow-x: hidden;
	}
	
.entry-content{
	margin-left: 120px;
	margin-right: 120px;
	border: 0px solid white;
}

@media screen and (max-width: 1400px) {
	.entry-content{
		margin-left: 20px;
		margin-right: 20px;
	}	
}

section{
	margin-top: 30vw;
	margin-bottom: 30vw;
}


/* =============================================================== *\ 
   Media-Text-Block: Teaser mit Wellenbild
\* =============================================================== */
.wp-block-media-text.is-style-teaser {
    margin-top: 4vw;
    position: relative;
    aspect-ratio: 4 / 2;
    width: 100%;
    display: flex;
}

.wp-block-media-text.is-style-teaser .wp-block-media-text__media {
    position: absolute;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    width: 100%;
    max-width: 66%;
    opacity: 0.8;
}

.wp-block-media-text.is-style-teaser .wp-block-media-text__content {
    position: absolute;
    right: 0;
    margin: 0;
    padding: 0;
    width: 940px;
    font-size: 69px;
    line-height: 1.25em;
    letter-spacing: 0.8px;
    color: var(--font_light);
    border: none;
}

/* Breakpoints */
@media screen and (max-width: 1400px) {
    .wp-block-media-text.is-style-teaser .wp-block-media-text__content {
        font-size: 54px;
        width: 740px;
    }
}

@media screen and (max-width: 1200px) {
    .wp-block-media-text.is-style-teaser .wp-block-media-text__content {
        font-size: 46px;
        width: 640px;
    }
}

@media screen and (max-width: 1000px) {
    .wp-block-media-text.is-style-teaser .wp-block-media-text__content {
        font-size: 36px;
        width: 500px;
    }
}

@media screen and (max-width: 800px) {
    .wp-block-media-text.is-style-teaser .wp-block-media-text__media {
        max-width: 100%;
        opacity: 0.6;
    }

    .wp-block-media-text.is-style-teaser .wp-block-media-text__content {
        font-size: 24px;
        width: 100%;
        padding: 20px;
        bottom: 0;
    }
}


/* =============================================================== *\ 
   Teaser-Titel
\* =============================================================== */
h2.is-style-teaser,
p.is-style-teaser {
    color: var(--font_light);
    font-size: 72px;
    letter-spacing: 1.8px;
}

/* Responsive Font-Größen */
@media screen and (max-width: 1200px) {
    h2.is-style-teaser,
    p.is-style-teaser {
        font-size: 60px;
    }
}
@media screen and (max-width: 1000px) {
    h2.is-style-teaser,
    p.is-style-teaser {
        font-size: 54px;
    }
}
@media screen and (max-width: 800px) {
    h2.is-style-teaser,
    p.is-style-teaser {
        font-size: 42px;
    }
}
@media screen and (max-width: 600px) {
    h2.is-style-teaser,
    p.is-style-teaser {
        font-size: 36px;
    }
}
@media screen and (max-width: 500px) {
    h2.is-style-teaser,
    p.is-style-teaser {
        font-size: 30px;
    }
}

/* Wrapper-Block oberhalb der Isotope-Komponente */
.is-style-above-isotope {
    max-width: 1675px;
    margin-left: auto!important;
	margin-right: auto!important;
	margin-bottom: 1em;
    border: none;
}

/* Responsive Max-Width */
@media screen and (max-width: 1912px) {
    .is-style-above-isotope {
        max-width: 1095px;
    }
}
@media screen and (max-width: 1140px) {
    .is-style-above-isotope {
        max-width: 800px;
    }
}


/* =============================================================== *\ 
   Lösungen (Text links mit Bild rechts)
\* =============================================================== */
.is-style-solutions {
    font-size: 42px;
    color: white; 
    margin: 120px;
    line-height: 1.125em;
    display: flex;
    gap: 80px;
    max-width: 1600px;
}

@media screen and (max-width: 1600px) {
    .is-style-solutions {
        font-size: 36px;
    }
}

@media screen and (max-width: 1500px) {
    .is-style-solutions {
        font-size: 30px;
    }
}

@media screen and (max-width: 1100px) {
    .is-style-solutions {
        flex-direction: column-reverse;
    }
}

@media screen and (max-width: 1000px) {
    .is-style-solutions {
        font-size: 24px;
		margin-bottom: 0;
    }
}


.is-style-solutions > .wp-block-group{
	flex-basis: 55%;
	margin-bottom: 112px;
	display: flex;
	flex-direction: column;
}

@media screen and (max-width: 1100px) {
	.is-style-solutions > .wp-block-group{
		margin-bottom: 0;
	}
}

.is-style-solutions > figure{
    flex-basis: 45%;
}

.is-style-solutions figure img {
    width: 100%;
    max-width: 800px;
    height: auto;
}

.is-style-solutions figcaption {
    font-size: 20px;
    font-family: var(--wp--preset--font-family--brown);
    text-align: right;
    line-height: 1.125em;
}

.is-style-solutions figcaption strong {
    font-weight: 800;
}

.wp-block-group{
	font-weight: 600;
}

.is-style-solutions .sub_text{
	font-size: 80%;
	font-weight: 400;
}

.wp-block-group .sub_text:nth-of-type(2) {
	margin-top: 1em;
	border: 0px solid white;
	padding-left: 4vw;
}

.wp-block-group .sub_text:nth-of-type(3) {
	padding-left: 4vw;
}

@media screen and (max-width: 600px) {
	.wp-block-group .sub_text:nth-of-type(2) {
		padding-left: 00px;
	}

	.wp-block-group .sub_text:nth-of-type(3) {
		padding-left: 00px;
	}	
}


/* =============================================================== *\ 
   Kontakt
\* =============================================================== */
.kontakt_group {
    position: fixed;
    top: 60px;
    left: 0;
    z-index: 10;
    margin-left: calc(100% - 140px);
	margin-left: calc(100% - 10px);
    gap: 5px;
}

.kontakt_group i {
    font-size: 36px;
    cursor: pointer;
    transition: all 0.2s;
}

.kontakt_group .fa-address-card::before,
.kontakt_group .fa-address-card::after {
    transition: all 0.2s;
}

.kontakt_group .fa-address-card:hover::before {
    opacity: 1;
}

.kontakt_group .fa-address-card:hover::after {
    opacity: 0.4;
}

.kontakt_group .address_button {
    font-size: 18px;
    padding: 12px;
    border: 1px solid #fffffffa;
    line-height: 1em;
    opacity: 1;
    filter: drop-shadow(2px 4px 6px #00000033);
    transition: all 0.2s;
}

.kontakt_group.is_initialized .address_button{
	transform: translateX(-153px);
	visibility: visible;
}

@media screen and (max-width: 600px) {
	.kontakt_group{    
		transform: translateY(-43px);
	}

	.kontakt_group.is_initialized .address_button{
		transform: translateX(-108px);
	}	
}

.kontakt_group .address_button:hover {
    background-color: rgb(102, 102, 58)!important;
    border-color: rgb(102, 102, 58);
	cursor: pointer;
}

.kontakt_group .contact_card {
    padding: 20px;
    box-shadow: -3px 3px 4px #00000014;
    background-color: rgb(102, 102, 58);
    border: 1px solid rgb(102, 102, 58);
    font-size: 18px;
    width: 375px;
    opacity: 0;
    transition: all 0.2s;
    margin-top: 10px;
    filter: drop-shadow(2px 4px 6px #00000033);
}

.kontakt_group.is_initialized.is_open .contact_card {
    opacity: 1;
    transform: translateX(-430px);
	visibility: visible;
}

@media screen and (max-width: 600px) {
	.kontakt_group.is_initialized.is_open .contact_card {
    	transform: translateX(-310px);
	}	

    .kontakt_group .contact_card {
        width: 300px;
    }

    .kontakt_group .address_button {
        transform: translateX(26px);
    }

    .kontakt_group.is_open .contact_card {
        transform: translateX(-180px);
    }
}

/* Profilbild */
.kontakt_group figure {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border-radius: 100px;
    overflow: hidden;
}

/* Text Container */
.kontakt_group .contact_card .text_container {
    gap: 0.25em;
}

.kontakt_group .contact_card .text_container .titel {
    font-size: 14px;
    line-height: 1.25em;
    margin-bottom: 0.75em;
}

/* Mobile Textgrößen */
@media screen and (max-width: 600px) {
    .kontakt_group .contact_card .text_container .telefon_nummer,
    .kontakt_group .contact_card .text_container .email_adresse {
        font-size: 14px;
    }
}

/* Buttons */
.kontakt_group .contact_card .call_to_actions {
    width: 100%;
    margin-top: 0.75em;
    gap: 1em;
}

/* Icons */
.kontakt_group .contact_card i {
    color: white;
    cursor: pointer;
    transition: all 0.2s;
    border-radius: 100px;
}

.kontakt_group .contact_card i:hover {
    background-color: var(--wp--preset--color--background-blue);
}


/* =============================================================== *\
   Isotope Container Styling für Testimonials
\* =============================================================== */
.isotope-me {
    margin: 0 auto !important;
    max-width: 1675px;
    overflow-x: hidden;
	overflow-y: visible;
    border: 0px solid white;
}

@media screen and (max-width: 1912px) {
    .isotope-me {
        max-width: 1095px;
    }
}

@media screen and (max-width: 1140px) {
    .isotope-me {
        max-width: 800px;
    }
}

/* Pullquote Styling */
.isotope-me .testimonial {
    background: #33435c;
    box-shadow: var(--box-shadow);
    font-family: 'Brown';
    font-size: 28px;
    line-height: 1.25em;
    color: white;
    width: 500px;
    box-sizing: border-box;
    margin-bottom: 80px;
}

@media screen and (max-width: 1141px) {
    .isotope-me .testimonial {
		width: 100%;
		width: calc(100% - 12px);
    margin-bottom: 40px;
    }
}

@media screen and (max-width: 600px) {
    .isotope-me .testimonial {
    	font-size: 20px;
    	line-height: 1.25em;
    }
}

.isotope-me_02 {
    margin: 0 auto !important;
    max-width: 1675px;
    overflow-x: hidden;
	overflow-y: visible;
    border: 0px solid white;
}

@media screen and (max-width: 1912px) {
    .isotope-me_02 {
        max-width: 1095px;
    }
}

@media screen and (max-width: 1140px) {
    .isotope-me_02 {
        max-width: 800px;
    }
}

/* Pullquote Styling */
.isotope-me_02 .testimonial {
    background: #33435c;
    box-shadow: var(--box-shadow);
    font-family: 'Brown';
    font-size: 28px;
    line-height: 1.25em;
    color: white;
    width: 500px;
    box-sizing: border-box;
    margin-bottom: 80px;
    gap: 20px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

@media screen and (max-width: 1141px) {
    .isotope-me_02 .testimonial {
		width: 100%;
    }
}

@media screen and (max-width: 600px) {
    .isotope-me_02 .testimonial {
    	font-size: 20px;
    	line-height: 1.25em;
    }
}

.isotope-me_02 .testimonial .quelle{
	margin-bottom: 0;
}

/* Text- und Layout-Anpassungen */
.testimonial .text {
    padding: 0 30px;
}

.testimonial > *:first-child {
    padding-top: 20px;
}

.testimonial .quelle {
    padding: 0 30px;
    font-size: 18px;
    font-style: italic;
    line-height: 1.25em;
    margin-bottom: 1em;
	width: 100%;
}

.testimonial .mandat {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.25em;
    background: rgba(33, 44, 60, 0.37);
    padding: 10px 30px 20px;
    width: 100%;
	color: var(--font_light);
	max-height: calc(1em + 30px);
}

.testimonial.offen .mandat{
	max-height: none;
}

/* Interaktions- und Animations-Styling */
.testimonial {
    transition: all 0.2s ease-out;
	cursor: s-resize;
	cursor: pointer;
}

.testimonial.unsichtbar {
    opacity: 0.05;
}

@media screen and (max-width: 1041px) {
	.testimonial.unsichtbar {
    	opacity: 1;
	}
}

.testimonial.offen {
    opacity: 1;
    z-index: 3;
}

.testimonial.fokus {
    opacity: 1;
}

/* Hidden Content Styling */
.testimonial .hidden {
    padding-top: 0;
    gap: 1.5em;
    max-height: 0;
    overflow: hidden;
}

.testimonial.offen .hidden {
    padding-top: 1.5em;
}

.testimonial.offen .wp-block-button {
    max-height: 0;
    overflow: hidden;
}
.testimonial .wp-block-button{
    padding-right: 30px;
    padding-top: 15px;
    padding-bottom: 15px;
}
.testimonial .wp-block-button .wp-element-button {
    background-color: transparent !important;
    font-size: 18px;
    margin: 0;
    padding: 0 10px;
    transition: all 0.2s ease-out;
    border-radius: 0;
}

.testimonial .wp-block-button .wp-element-button:hover {
    background-color: rgba(0, 0, 0, 0.2)!important;
}

.testimonial .ausfuehrlich{
	opacity: 0;
	transition: all .2s;
}

.testimonial.offen .ausfuehrlich{
	opacity: 1;
}

/* =============================================================== *\ 
   Page Template Default (Impressum, Datenschutz)
\* =============================================================== */
.page-template-default .wp-block-post-title,
.page-template-default .entry-content{
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
	color: white;
}

.page-template-default .wp-block-post-title{
	color: var(--font_light);
    font-size: 3em;
    margin-top: 0;
    padding-top: 0;
    margin-block-start: 0 !important;
}

@media screen and (max-width: 800px) {
	.page-template-default .wp-block-post-title{
		font-size: 2em;
	}	
}

@media screen and (max-width: 600px) {
	.page-template-default .wp-block-post-title{
		font-size: 1.5em;
	}	
}

.page-template-default h1,
.page-template-default h2,
.page-template-default h3,
.page-template-default h4,
.page-template-default h5,
.page-template-default h6{
	font-weight: 600;
	margin-top: 2em;
}

.page-template-default .entry-content *{
    margin-block-start: 0.5em;
    margin-block-end: 0em;
}

.page-template-default h2{
	font-size: 1.6em;
	line-height: 1.25em;
	margin-block-start: 2em!important;
}

.page-template-default h3{
	font-size: 1.4em;
	line-height: 1.25em;
	margin-block-start: 2em!important;
}

.page-template-default h4{
	font-size: 1.2em;
	line-height: 1.25em;
	margin-block-start: 2em!important;
}

.page-template-default h5{
	font-size: 1em;
}

.page-template-default h6{
	font-size: 1em;
}

@media screen and (max-width: 800px) {
	.page-template-default .wp-block-post-title{
		font-size: 2em;
	}	

	.page-template-default h2{
		font-size: 1.3em;
		line-height: 1.25em;
	}

	.page-template-default h3{
		font-size: 1.2em;
		line-height: 1.25em;
	}

	.page-template-default h4{
		font-size: 1.1em;
		line-height: 1.25em;
	}
}

@media screen and (max-width: 600px) {
	.page-template-default .wp-block-post-title{
		font-size: 1.5em;
	}	

	.page-template-default h2{
		font-size: 1.2em;
		line-height: 1.25em;
	}

	.page-template-default h3{
		font-size: 1.1em;
		line-height: 1.25em;
	}

	.page-template-default h4{
		font-size: 1em;
		line-height: 1.25em;
	}
}

.page-template-default .entry-content{
	line-height: 1.25em;
	margin-top: 5vw;
}
.page-template-default .entry-content > *:first-child{
	margin-top: 0;
	margin-block-start: 0em !important;
}
.page-template-default .entry-content a{
	text-decoration: underline;
}

.page-template-default .entry-content ul{
	list-style-type: disc;
	padding-left: 20px;
}

/* =============================================================== *\ 
   Title
\* =============================================================== */
/*
.is-style-contact-shield{
	padding: 60px;
	gap: 40px;
	box-shadow: var(--box-shadow);
}

@media screen and (max-width:900px) {
	.is-style-contact-shield{
		flex-direction: column;
	}	
}

@media screen and (max-width:600px) {
	.is-style-contact-shield{
		padding: 40px;
	}	
}

@media screen and (max-width:500px) {
	.is-style-contact-shield{
		padding: 20px;
	}	
}

.is-style-contact-shield .links{
	flex-basis: 55%;
}

.is-style-contact-shield .rechts{
	flex-basis: 45%;
}

@media screen and (max-width:900px) {
	.is-style-contact-shield .links{
		flex-basis: 100%;
	}
	
	.is-style-contact-shield .rechts{
		flex-basis: 100%;
		min-width: 100%;
	}
}

.is-style-contact-shield-teaser{
	font-size: 40px;
	line-height: 1.125em;
	letter-spacing: 0.025em;
	font-weight: 600;
}

@media screen and (max-width: 600px) {
	.is-style-contact-shield-teaser{
		font-size: 36px;
	}
}	

@media screen and (max-width: 500px) {
	.is-style-contact-shield-teaser{
		font-size: 30px;
	}	

	.mobile_shrink{
		height: 50px!important;
		flex-basis: 3em;
		overflow: hidden;
	}
}
*/

/* =============================================================== *\ 
   Formular
\* =============================================================== */
/*
.frm_forms{
width: 100%;
}

.frm_pro_form{
width: 100%;
padding: 0;
box-sizing: border-box;
}
.frm_combo_inputs_container, .frm_grid_container, .frm_form_fields .frm_section_heading, .frm_form_fields .frm_fields_container,
.frm_fields_container{
display: flex;
flex-direction: column;
gap: 30px;
}

.frm_form_field input,
.frm_form_field textarea{
font-size: 24px;
color: white;
font-family: var(--wp--preset--font-family--brown);
opacity: 0.6;
transition: all 0.12s;
width: 100%;
box-sizing: border-box;
margin: 0;
padding: 0.5em 0.75em;
border: 1px solid rgba(255, 255, 255, 0.06);
background-color: rgba(255, 255, 255, 0.1);
border-radius: 12px;
}

.frm_form_field input:focus,
.frm_form_field textarea:focus{
opacity: 1;
border: 1px solid;
}
.frm_form_field input::placeholder,
.frm_form_field textarea::placeholder {
  font-style: italic;
color: white;
}

.frm_form_field input::-webkit-input-placeholder,
.frm_form_field textarea::-webkit-input-placeholder {
  font-style: italic;
color: white;
}

.frm_form_field input::-moz-placeholder,
.frm_form_field textarea::-moz-placeholder {
  font-style: italic;
color: white;
}

.frm_form_field input:-ms-input-placeholder,
.frm_form_field textarea:-ms-input-placeholder {
  font-style: italic;
color: white;
}

.frm_form_field input::-ms-input-placeholder,
.frm_form_field textarea::-ms-input-placeholder {
  font-style: italic;
color: white;
}
.frm_submit.frm_submit.frm_flex{
width: 100%;
display: flex;
justify-content: flex-end;
}

.frm_submit.frm_submit button{
padding: 12px 36px;
background-color: #535332;
border-radius: 50px;
}
.frm_button_submit svg{
height: 28px;
width: 28px;
fill: white;
}

/* =============================================================== *\ 
   Testimonials als slick-slider
\* =============================================================== */

.is-style-slick-slider.slick-slider{
	color: white;
	display: flex;
	align-items: center;
	margin-top: 0;
	overflow-y: visible;
	padding-bottom: 20px;
}

.is-style-slick-slider.slick-slider .testimonial{
    margin-left: 40px;
    margin-right: 40px;
    display: flex;
    flex-direction: column;
    gap: 1em;
	filter: drop-shadow(var(--box-shadow));
	line-height: 1.25em;
}

.is-style-slick-slider.slick-slider .slick-list{
	padding-bottom: 20px;
}

.is-style-slick-slider.slick-slider .testimonial .text{
	width: 100%;
}

.is-style-slick-slider.slick-slider .testimonial .quelle{
	margin-bottom: 0;
}

.is-style-slick-slider button{
	flex-basis: 30px;
	flex-shrink: 0;
	flex-grow: 0;
}

.is-style-slick-slider button svg{
	width: 30px;
	height: auto;
	fill: #32435c;
}

.is-style-slick-slider cite{
	font-style: italic;
	margin-top: 2em;
	display: block;
}


/* =============================================================== *\ 
   Teaser-Bild
\* =============================================================== */
@media screen and (max-width: 1000px) {
	/* First-View Media-Text-Block */
	.wp-block-media-text.is-style-teaser{
		border: 0px solid white;
		width: calc(100% + 40px);
		max-width: none;
		margin-left: -20px !important;
		margin-top: -40px;
		height: 60vh;
	}

	.wp-block-media-text.is-style-teaser .wp-block-media-text__media{
		height: 60vh;
	}

	.wp-block-media-text.is-style-teaser .wp-block-media-text__content{
		font-style: normal;
		font-weight: 600;
		visibility: visible;
		font-size: 40px;
		line-height: 1em;
	}

	.wp-block-media-text__media img{
		height: 100%;
		width: auto;
	}

	/* Satz unterhalb media Text-Block + */
	section{
		margin-top: 50vw;
		margin-bottom: 50vw;
	}

	/* */
	.is-style-solutions{
		gap: 50vw;
	}
	.is-style-above-isotope{
		margin-top: calc(50vw - 120px);
	}

	footer{
		margin-top: 50vw;
	}
}

.animation_wordwise_from_right{
	border: 0px solid green;
	visibility:hidden;
}

.animation_wordwise_from_left{
	border: 0px solid red;
}


/* =============================================================== *\ 
   Schwarzer Layer 
   -> Kontakt
\* =============================================================== */
.black_layer{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #1b2533cc;
	opacity: 0;
	transition: all .2s;
	pointer-events: none;
}

.black_layer.visible{
	opacity: 1;
}
