/**
Theme Name: Raphaelswerk e.V. Child-Theme
Author: jut-so GmbH
Author URI: https://jut-so.de
Description: Raphaelswerk e.V. Custom Child Theme basierend auf dem Hello Elementor Theme. 
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: jut-so-child-theme
Template: hello-elementor
*/

/* variable.css and layout.css included via functions.php */

/* Default headline margins
 * Note: Pay attention to widget spacing. 
 * When using heading widget, margin-bottom is set to 0
 * then the spacing is controlled by the widget spacing
  .elementor-widget.elementor-widget.elementor-widget-heading .elementor-widget-container 
 */

 body {
    -webkit-font-smoothing: auto;
		--border-effect-width: 1.5px;
}

h1, h2, h3, h4, h5, h6,
.elementor-widget-container h1,
.elementor-widget-container h2,
.elementor-widget-container h3,
.elementor-widget-container h4,
.elementor-widget-container h5,
.elementor-widget-container h6 {
	margin: 0 0 .4em 0;
}

/* Utility classes for headlines */
.h1,
.h1 .elementor-heading-title,
[class*="elementor-kit-"] .h1 {
    font-family: var(--h1-font-family);
	color: var(--h1-default-color);
	font-size: var(--h1-font-size);
	line-height: var(--h1-line-height);
	font-weight: var(--h1-font-weight);
}

.h2,
.h2 .elementor-heading-title,
[class*="elementor-kit-"] .h2 {
    font-family: var(--h2-font-family);
	color: var(--h2-default-color);
	font-size: var(--h2-font-size);
	line-height: var(--h2-line-height);
	font-weight: var(--h2-font-weight);
}

.h3,
.h3 .elementor-heading-title,
[class*="elementor-kit-"] .h3 {
    font-family: var(--h3-font-family);
	color: var(--h3-default-color);
	font-size: var(--h3-font-size);
	line-height: var(--h3-line-height);
	font-weight: var(--h3-font-weight);
}

.h4,
.h4 .elementor-heading-title,
[class*="elementor-kit-"] .h4 {
    font-family: var(--h4-font-family);
	color: var(--h4-default-color);
	font-size: var(--h4-font-size);
	line-height: var(--h4-line-height);
	font-weight: var(--h4-font-weight);
}

::-moz-selection {
    background: var(--secondary);
    color: #fff
}

::selection {
    background: var(--secondary);
    color: #fff
}

/* Quotes fix */
p,
.elementor-testimonial-content{
    font-family: 'HankenGrotesk', system-ui, -apple-system, sans-serif !important;
}

/* Primary button */
.elementor-button {
	position:relative;
}

/* Effect empty */
.elementor-button:before {
	content:"";
	border: 1.5px solid var(--secondary);
	height: 48px;
	width: 48px;
	position:absolute;
	top:calc(50% - 24px);
	left:0;
	border-radius:100px;
	transition: 0.3s all ease-in-out;
	z-index:1;
}
.primary-border .elementor-button:before {
	border: var(--border-effect-width) solid var(--primary);
}
/* Effect filled */
.survey .elementor-button:before {
	border: var(--border-effect-width) solid var(--secondary);
	background-color:var(--secondary);
}
.survey.white-fill .elementor-button:before {
	border: var(--border-effect-width) solid var(--white);
	background-color:var(--white);
}
.survey.white-border .elementor-button:before {
	border: var(--border-effect-width) solid var(--white);
	background-color: transparent;
}
.no-border .elementor-button:before {
	border:none;
}

.elementor-button:hover:before{
	width: 100%;
	border-radius:0px 100px 100px 0px;
}
.elementor-button .elementor-button-content-wrapper {
	gap: 6px;
	align-items: center;
	position: relative;
	z-index:10;
}

/* Header Button Adjustment */
body.orange .elementor-location-header .survey.white-border .elementor-button:before {
	border-color:#fff !important;
	background-color:#fff !important;
}
.elementor-location-header .survey.white-border .elementor-button:before {
	border-color:#FDA632 !important;
	background-color:#FDA632 !important;
}

/* Icon Arrow */
.elementor-button .elementor-button-content-wrapper:before {
	content: "";
	background-image: url("/wp-content/themes/core-child-theme-main/assets/images/button-arrow.svg");
	width: 16px;
	height: 10px;
	background-size: cover;
	background-repeat: no-repeat;
}
.inverted .elementor-button .elementor-button-content-wrapper:before {
	background-image: url("/wp-content/themes/core-child-theme-main/assets/images/button-arrow-white.svg");
}
/* Icon Survey */
.survey .elementor-button .elementor-button-content-wrapper:before {
	background-image: url("/wp-content/themes/core-child-theme-main/assets/images/survey-white.svg");
	width: 15px;
	height: 20px;
}
.inverted.survey .elementor-button .elementor-button-content-wrapper:before {
	background-image: url("/wp-content/themes/core-child-theme-main/assets/images/survey.svg");
}

/* Download Icon */
.download .elementor-button .elementor-button-content-wrapper:before {
	background-image: url("/wp-content/uploads/download-icon.svg");
	width: 15px;
	height: 15px;
	background-size: contain;
}

/* MORE/LESS button Icon */
.more-less-button .elementor-button .elementor-button-content-wrapper:before {
	background-image: none;
	content:none;
	width:0px;
	height:0px;
}

/* NETZWERK MORE/LESS */
/* NETZWERK MORE/LESS */
#netzwerk-loop,
#netzwerk-loop .elementor-loop-container {
    max-height: 1090px;
    overflow: hidden;
    transition: max-height 0.5s cubic-bezier(0, 1, 0, 1);
}

#netzwerk-loop.expanded,
#netzwerk-loop.expanded .elementor-loop-container {
    max-height: 2650px;
    transition: max-height 0.5s cubic-bezier(0.5, 0, 1, 0);
}

/* Tablet */
@media screen and (max-width: 1024px) {
	#netzwerk-loop,
	#netzwerk-loop .elementor-loop-container {
		max-height: 1400px;
	}
    #netzwerk-loop.expanded,
    #netzwerk-loop.expanded .elementor-loop-container {
        max-height: 3150px;
    }
}

/* Mobile */
@media screen and (max-width: 767px) {
	#netzwerk-loop,
	#netzwerk-loop .elementor-loop-container {
		max-height: 4000px;
	}
    #netzwerk-loop.expanded,
    #netzwerk-loop.expanded .elementor-loop-container {
        max-height: 11150px;
    }
}

#team-toggle-height svg {
	width:15px;
	transform: translateY(4px); /* Adjust this value to match your needed offset */
	transition: transform 0.3s ease;
	transform-origin: center center;
}
#team-toggle-height.expanded svg {
	transform: translateY(4px) rotate(180deg);
}
.team-vorstand-wrapper {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.5s ease-in-out;
}

.team-vorstand-wrapper.expanded {
	max-height: 450px;
}

/* Secondary button */
.secondary-button .elementor-button {
	color: var(--light-green);
    background-color: transparent;
    border-style: solid;
    border-color: var(--light-green);
}

/* Veranstaltung */
.rounded-tag {
	font-size:12px;
	line-height:18px;
	font-weight:600;
	border: 1px solid var(--secondary);
	border-radius:20px;
	padding: 4px 12px;
}
.interne-veranstaltungen .rounded-tag {
	border-color: var(--primary);
}
.format-wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
@media (max-width:767px) {
	.format-wrapper {
		gap:16px;
	}
}

.download-heading h3 {
	margin:0;
}
.download-heading a {
	font-weight:700;
}

/* NETZWERK */
.description-popup {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.75);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
	z-index: 9999;
}

.description-popup.active {
	opacity: 1;
	visibility: visible;
}

.description-popup-content {
	background: white;
	padding: 70px 100px 60px;
	border-radius: 16px;
	position: relative;
	width: 90%;
	max-width: 1100px;
	max-height: 90vh;
	display: grid;
	grid-template-columns: 300px 1fr;
	grid-template-rows: auto;
	gap: 50px;
}

.popup-left-column {

}

.popup-logo {
	width:100%;
	height:100%;
	display:flex;
	justify-content:center;
	align-items:center;
}
.popup-logo img {
	height: auto;
	width:100%;
}

#partner-popup .popup-title h3 {
	color: var( --e-global-color-a3eaa0a );
	font-family: var( --e-global-typography-e9ba022-font-family ), Sans-serif;
	font-size: var( --e-global-typography-e9ba022-font-size );
	font-weight: var( --e-global-typography-e9ba022-font-weight );
	line-height: var( --e-global-typography-e9ba022-line-height );
	margin: 0px 0px 12px 0px;
}

#partner-popup .popup-ceo p {
	text-align: center;
	font-family: var( --e-global-typography-087aa84-font-family ), Sans-serif;
	font-size: var( --e-global-typography-087aa84-font-size );
	font-weight: var( --e-global-typography-087aa84-font-weight );
	line-height: var( --e-global-typography-087aa84-line-height );
	text-align:left;
}

.popup-description .elementor-widget-container,
#partner-popup .popup-title h3 {
	word-break: break-word;
}

.description-popup-close {
	position: absolute;
	top: 32px;
	right: 30px;
	background: none;
	border: none;
	cursor: pointer;
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
	padding:0 !important;
}

.popup-nav {
	position: absolute;
	background: none;
	border: none;
	cursor: pointer;
	font-size: 24px;
	color: #333;
	padding: 0px !important;
	z-index: 2;
	top: 10px;
}

.popup-nav:hover {
	color: #000;
}

.popup-nav.prev {
	left:38px;
}

.popup-nav.next {
	right:38px;
}
.popup-nav.prev,
.popup-nav.next {
	padding:0px !important;
	top: calc(50% - 20px);
	display:flex;
	align-items:center;
	justify-content:center;
}
.popup-nav.prev img,
.popup-nav.next img {
	height:20px;
}

/* Mobile adjustments */
@media (max-width: 768px) {
	.description-popup-content {
		grid-template-columns: 1fr;
		gap: 20px;
		padding: 20px;
		overflow: scroll;
	}
	
	.popup-left-column {

	}
	.popup-left-column img {
		max-width: 80%;
		padding-top:30px;
	}
	.popup-nav.prev {
		left:20px;
	}
	.popup-nav.next {
		right:20px;
	}
	.popup-nav.prev,
	.popup-nav.next {
		padding:0px !important;
		top: 180px;
	}
}

/* GLOSSAR */
body a.glossaryLink {
	font-size:unset;
	color:unset !important;
}
body #tt #ttcont div.glossaryItemBody {
	padding: 0 16px 24px !important;
	opacity:1 !important;
}
body #tt #ttcont div.glossaryItemTitle {
	font-size: 18px !important;
	font-weight:600 !important;
	padding: 10px 16px 0 !important;
}
body #tt #ttcont {
	background-color:#fff !important;
	box-shadow: 0px 0px 10px #73737380 !important;
	-moz-box-shadow: 0px 0px 10px #73737380 !important;
	-webkit-box-shadow: 0px 0px 10px #73737380 !important;
	margin:15px;
}
body #tt[aria-hidden="false"] {
	opacity:1 !important;
}

#glossar ul {
	column-count: 2;
  column-gap: 20px;
}
#glossar ul li {
	margin-bottom:15px;
	margin-top:15px;
}
#glossar ul li:first-of-type {
	margin-top:0;
}
#glossar ul li:last-of-type {
	margin-bottom:0;
}
@media (max-width:767px) {
	#glossar ul {
		column-count: 1;
		column-gap: 0px;
	}
}
#glossar .ln-letters {
	margin: auto;
	display: flex;
	justify-content: center;
	margin-bottom: 72px;
}

#glossar .ln-letters a {
	font-family: var( --e-global-typography-787d17d-font-family ), Sans-serif;
	font-size: var( --e-global-typography-787d17d-font-size );
	font-weight: var( --e-global-typography-787d17d-font-weight );
	line-height: var( --e-global-typography-787d17d-line-height );

	border: none;
	padding: 1px 10px;
	border-radius: 50px;
	margin-left:0;
	border: 1px solid transparent;
	display:flex;
	align-items:center;
	justify-content:center;
}

#glossar .ln-letters a.ln-selected,
#glossar .ln-letters a:hover {
	padding: 1px 10px;
	border: 1px solid var(--e-global-color-primary);
	background-color:transparent;
	margin-top:0;
}

/* Back button */
.back-button button {
	border:none;
	padding:0;
	color:#313131;
}

/* FORM */
.raw-form p a {
	color: var( --e-global-color-ff848c4 );
	border-bottom: 1px solid var( --e-global-color-ff848c4 );
	font-size:unset;
}
.raw-form .required-notice {
	text-align:center;
}
.raw-form .elementor-field-label {
	margin-left:12px;
}
.raw-form input {
	padding:12px;
}
.raw-form .elementor-field-type-acceptance label p {
	color: var( --e-global-color-1bb8b6c );
	font-family: var( --e-global-typography-8af2259-font-family ), Sans-serif;
	font-size: var( --e-global-typography-8af2259-font-size );
	font-weight: var( --e-global-typography-8af2259-font-weight );
	line-height: var( --e-global-typography-8af2259-line-height );
}
.raw-form .elementor-field-type-acceptance {
	margin-bottom: 12px !important;
}

.raw-form .elementor-field-type-acceptance .elementor-field-option {
	display:flex;
	gap:8px;
}

.raw-form .elementor-message {
	text-align: center;
	margin-top: 32px;
}
body.gruen .raw-form .elementor-button:before {
	border: 1.5px solid var(--primary);
}
.raw-form .elementor-button:hover span,
.raw-form .elementor-button[type="submit"]:hover {
	color: var( --e-global-color-1bb8b6c ) !important;
}

/* Header Chevron */
.elementor-nav-menu--main li.menu-item-has-children a .sub-arrow {
	display:none !important;
}
.elementor-nav-menu--main li.menu-item-has-children > a:after {
	content:url("https://raphaelswerk.de/wp-content/uploads/chevron-down-white-icon.svg");
	height:13px;
	width:13px;
	position:relative;
	right:0;
    top: -8px;
    padding-left: 10px;
	opacity: 1 !important;
}
body.orange .elementor-nav-menu--main li.menu-item-has-children > a:after {
	content:url("https://raphaelswerk.de/wp-content/uploads/chevron-down-anthrazit.svg");
}
.elementor-nav-menu--main li.menu-item-has-children > a {
	padding-right:24px !important;
}