/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/**
 * Resets 
 **/

ul,ol {
	margin-bottom: 1rem;
}

.elementor-widget-text-editor p:last-of-type,
.elementor-widget-text-editor ul:last-child,
.elementor-widget-text-editor ol:last-child {
	margin-bottom: 0;
}

/* Fix Google Search Console "mobile usability issues" */
:where(body, iframe, pre, img, svg, video, canvas, select) {
	max-width: 100%;
	overflow: auto;
	word-break: break-word;
}

/* Global Variables */
:root {
	/* Breakpoint Max-Widths */
	--breakpoint-max-small: 479px;
	--breakpoint-max-phone: 767px;
	--breakpoint-max-tablet: 1024px;
	--breakpoint-max-laptop: 1439px;
	--breakpoint-max-large: 1599px;
	
	/* Breakpoint Min-Widths */
	--breakpoint-min-small: 480px;
	--breakpoint-min-phone: 768px;
	--breakpoint-min-tablet: 1025px;
	--breakpoint-min-laptop: 1440px;
	--breakpoint-min-large: 1600px;
}


/**
 * Utils 
 **/
.rwp-section {
	--spacing-s: 1rem;
	--spacing-m: 1.875rem;
	--spacing-l: 3.75rem;
	--spacing-xl: 7.5rem;
}

@media only screen and (max-width: 1024px) {
	.rwp-section {
		--spacing-s: 0.75rem;
		--spacing-m: 1.375rem;
		--spacing-l: 2.75rem;
		--spacing-xl: 5.5rem;
	}
}

@media only screen and (max-width: 767px) {
	.rwp-section {
		--spacing-s: 0.5rem;
		--spacing-m: 0.875rem;
		--spacing-l: 3.5rem;
		--spacing-xl: 3.5rem;
	}
}

/* Paddings für Sektionen */
.rwp-section.p-s {
	padding-top: var(--spacing-s);
	padding-bottom: var(--spacing-s);
}
.rwp-section.p-t-s {
	padding-top: var(--spacing-s);
}
.rwp-section.p-b-s {
	padding-bottom: var(--spacing-s);
}
.rwp-section.p-m {
	padding-top: var(--spacing-m);
	padding-bottom: var(--spacing-m);
}
.rwp-section.p-t-m {
	padding-top: var(--spacing-m);
}
.rwp-section.p-b-m {
	padding-bottom: var(--spacing-m);
}
.rwp-section.p-l {
	padding-top: var(--spacing-l);
	padding-bottom: var(--spacing-l);
}
.rwp-section.p-t-l {
	padding-top: var(--spacing-l);
}
.rwp-section.p-b-l {
	padding-bottom: var(--spacing-l);
}
.rwp-section.p-xl {
	padding-top: var(--spacing-xl);
	padding-bottom: var(--spacing-xl);
}
.rwp-section.p-t-xl {
	padding-top: var(--spacing-xl);
}
.rwp-section.p-b-xl {
	padding-bottom: var(--spacing-xl);
}


/**
 * Headlines 
 **/
/* Überschrift H1 und H2 */
h1::before, h2::before {
	content: "";
    background-image: url(/wp-content/uploads/Group-1-2.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 5rem;
    height: 5rem;
    position: absolute;
    display: block;
    bottom: -3rem;
    left: -2rem;
}

@media only screen and (max-width: 1024px) {
	h1::before, h2::before {
		width: 4rem;
		height: 4rem;
		bottom: -2.4rem;
		left: -1.5rem;
	}
}

/* Überschrift H3 */
h3::before {
	content: "";
    background-image: url(/wp-content/uploads/h3_graphic.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 24rem;
    height: 5rem;
    position: absolute;
    display: block;
    bottom: -4.2rem;
    left: -1.5rem;
}

@media only screen and (max-width: 1024px) {
	h3::before {
		width: 24rem;
        height: 3rem;
        bottom: -2rem;
        left: -1.2rem;
	}
}

@media only screen and (max-width: 430px) {
	h3::before {
		 width: 18rem;
        height: 3rem;
        bottom: -2.5rem;
        left: -1.2rem;
	}
}

/**
 * Menü
 **/
.rwp-menu nav li::before {
	content: "";
	position: absolute;
	background-color: #580F8B;
	height: 1px;
	width: 100%;
	display: flex;
	bottom: 0;
}

.rwp-menu nav li a {
	padding-left: 0.5rem;
	padding-right: 0.5rem;
	
	display: flex;
    align-items: center;
    justify-content: center;
}

.rwp-menu nav li a:hover::before,
.rwp-menu nav li.current-menu-item a::before{
	content: "";
	position: absolute;
	background-color: #AA43B6;
	height: 4px;
	width: 100%;
	display: flex;
	bottom: 0;
	border-left: 4px solid #fff;
	border-right: 4px solid #fff;
}

@media only screen and (max-width: 767px) {
	.rwp-menu nav li a:hover {
		font-weight: 500 !important;
	}
	.rwp-menu nav li a:hover::before,
	.rwp-menu nav li.current-menu-item a::before{
		content: "";
		height: 0;
		width: 0;
	}
}


/**
 * Text Grafik 
 **/
.rwp-section .textblock::before {
	content: "";
    background-image: url(/wp-content/uploads/text_graphic.svg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 5rem;
    height: 5rem;
    position: absolute;
    display: block;
    top: -2rem;
    left: -2rem;
}

@media only screen and (max-width:1024px) {
	.rwp-section .textblock::before {
		top: -1.5rem;
   		left: -1.5rem;
	}
}

/**
 * Überschrift Hervorhebung
 **/
.rwp-hervorhebung b {
	font-weight: 500 !important;
}


/**
 * Link Box Graphic
 **/

@media only screen and (max-width:767px) {
	.rwp-box-container {
		
		flex-wrap: wrap;
		justify-content: left !important;
	}
	.rwp-boxlink {
		width: calc(50% - 0.5rem)!important;
	}
}

@media only screen and (max-width: 610px) {
	.rwp-box-container {
		justify-content: center !important;
	}
	.rwp-boxlink {
		width: 75% !important;
	}
}

@media only screen and (max-width: 493px) {
	.rwp-boxlink {
		width: 100% !important;
	}
}

.rwp-box .rwp-box-subtitle {
	max-height: 0;
	overflow: hidden;
	transition: all .5s ease-in-out;
}

.rwp-box:hover .rwp-box-subtitle {
	max-height: 7rem;
}

.rwp-box,
.rwp-box::before {
	transition: background-image 0.5s ease-in-out;
}

.rwp-box:hover::before {
	background-image: linear-gradient(180deg, var(--e-global-color-primary) 0%, #FFFFFF00 100%) !important;
}

.rwp-box.link_box_lower:hover::before {
	background-image: linear-gradient(0deg, var( --e-global-color-primary ) 0%, #FFFFFF00 100%) !important;
}

.link_box_upper::after {
    content: "";
    background-image: url('/wp-content/uploads/link_box_overlay.png');
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    height: 50%;
    position: absolute;
    display: block;
    top: 0;
}

.link_box_lower::after {
    content: "";
    background-image: url(/wp-content/uploads/link_box_overlay.png);
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    height: 80%;
    position: absolute;
    display: block;
    bottom: -3rem;
	right: 0;
}


/**
 * Container Box Shadow
 **/

.rwp-boxshadow {
    box-shadow:
        inset 15px 4px 50px -20px #00000040,
        inset 0 -4px 50px -30px #00000040 !important;
}

/**
 * Button mit Icon
 **/
.rwp-button a.elementor-button:hover .elementor-button-icon svg path {
	fill: white !important;
}

/**
 * People-Seite Suchfilter Link
 **/
.rwp-link-box:hover a{
	color: white !important;
}

.rwp-link a {
	color: black !important;
}

.rwp-link a:hover {
	color: white !important;
}

/**
 * Research-Seite Team Textauszug
 **/
.rwp-research-team .rwp-textauszug {
	max-height: 0;
	overflow: hidden;
	transition: all .5s ease-in-out;
}

.rwp-research-team:hover .rwp-textauszug {
	max-height: 7rem;
}


/*
.rwp-research-team .rwp-textauszug {
	max-height: 0;
	overflow: hidden;
	transition: all .5s ease-in-out;
}

.rwp-research-team:hover .rwp-textauszug {
	max-height: 4rem;
	transition: all .5s ease-in-out;
}

.rwp-research-team {
	transition: all 4s ease-in-out;
}
*/

@media only screen and (max-width:767px) {
	.rwp-research-team:hover .rwp-textauszug {
		max-height: 1.5rem;
		transition: all .5s ease-in-out;
	}
}

/**
 * People-Seite Positionen
 **/

@media only screen and (min-width: 1025px) {
	
	.rwp-team-maincontainer 
	.rwp-team-box .rwp-team-position {
		max-height: 0;
		overflow: hidden;
		transition: all .5s ease-in-out;
	}

	.rwp-team-box:hover .rwp-team-position, .rwp-team-maincontainer:hover .rwp-team-position {
		max-height: 4rem;
		transition: all .5s ease-in-out;
	}

	.rwp-team-box {
		position: absolute;
		display: flex;
		bottom: 0;
		height: 3.8rem;
		padding: 0.2rem;
		transition: all 0.2s ease-in-out;
	}


	.rwp-team-maincontainer:hover .rwp-team-box{
		height: 6.3rem;
		transition: all 0.2s ease-in-out;
	}
}