/* 
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: 2rem;
	--spacing-m: 4rem;
	--spacing-l: 6rem;
	--spacing-xl: 8rem;
}

@media only screen and (max-width: 1024px) {
	.rwp-section {
		--spacing-xs: 0.625rem;
		--spacing-s: 1.563rem;
		--spacing-m: 2.5rem;
		--spacing-l: 5rem;
	}
}

@media only screen and (max-width: 767px) {
	.rwp-section {
		--spacing-xs: 0.5rem;
		--spacing-s: 1rem;
		--spacing-m: 1.875rem;
		--spacing-l: 3.75rem;
	}
}

/* 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);
}

.rwp-section {
	padding-left: var(--spacing-l);
	padding-right: var(--spacing-l);
}

@media only screen and (max-width: 767px) {
	.rwp-section {
		padding-left: var(--spacing-m);
		padding-right: var(--spacing-l);
	}
}

/* Footer */
.rwp-footer-link a {
	color: #000;
}

.rwp-footer-link a:hover {
	color: #057C79;
}

/* Header */
.rwp-desktop-menu .elementor-item.has-submenu .sub-arrow i {
	font-size: 18px;
	transition: all .3s ease-in-out;
}

.rwp-desktop-menu .elementor-item.has-submenu:hover .sub-arrow i {
	transform: rotate(90deg);
	transition: all .3s ease-in-out;
}

/* Hover Animation Desktop Menu */
.rwp-desktop-menu .elementor-nav-menu > li a {

  cursor: pointer;
  position: relative;
}

.rwp-desktop-menu .elementor-nav-menu > li a::after {
  content: '';
  width: 0;
  height: 3px;
  background: var(--e-global-color-secondary);;
  position: absolute;
  left: 0;
  bottom: -5px;
  transition: 0.5s;
}

.rwp-desktop-menu .elementor-nav-menu > li > a:hover::after {
  width: 100%;
}

.rwp-desktop-menu .elementor-nav-menu > li > a.elementor-item-active::after {
  width: 100%;
}

.rwp-desktop-menu .elementor-nav-menu .sub-menu a::after {
  display: none !important;
}

.rwp-desktop-menu .sub-menu {
	padding-left: 1rem;
	padding-right: 1rem;
}

.rwp-desktop-menu .sub-menu li {
	padding-top: 1rem;
	text-decoration: none;
}

.rwp-desktop-menu .sub-menu li a {
	text-decoration: none;
}

.rwp-desktop-menu .elementor-nav-menu li.menu-item-has-children .sub-menu .menu-item:hover .elementor-sub-item {
	text-decoration: underline;
	color: var(--e-global-color-primary);
}

.rwp-desktop-menu .elementor-item-active {
	font-weight: 700;
}

.rwp-desktop-menu .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown {
    padding-bottom: 1rem;
    padding-right: 1rem;
}

/* Icon Box Styling */
.rwp-icon-box .elementor-icon {
	background-color: #057C79;
    padding: 2rem;
    border-radius: 43px 0px 43px 0px;
}

/* News Loop Grid */
.rwp-news-grid-title {
	font-family: var(--e-global-typography-accent-font-family), Sans-serif;
    font-size: var(--e-global-typography-accent-font-size);
    font-weight: var(--e-global-typography-accent-font-weight);
    line-height: var(--e-global-typography-accent-line-height);
	color: #000;
}

/* News */
.news-box-wrapper {
	max-width: 800px !important;
}

/* Detailseite Orientierungsangebote */
.rwp-orientierungsangebot-links {
	margin-bottom: 0;
}

.rwp-orientierungsangebot-links--headline {
	font-family: var(--e-global-typography-139eb05-font-family), Sans-serif;
    font-size: var(--e-global-typography-139eb05-font-size);
    font-weight: var(--e-global-typography-139eb05-font-weight);
    line-height: var(--e-global-typography-139eb05-line-height);
	margin-bottom: 0.5rem !important;
}

.rwp-orientierungsangebot-links ul {
	list-style: none;
	padding: 0;
}

.rwp-orientierungsangebot-links ul li .rwp-orientierungsangebot-links--a {
	font-family: "Zain", Sans-serif;
    font-size: 24px !important;
    font-weight: 400;
    line-height: 1.2em;
	color: #057C79;
	text-decoration: underline;
}

.rwp-orientierungsangebot-links ul li:hover a {
	color: #000;
}

/* Orientierungsangebote Key Fact Box */
.orientierungsangebote-key-facts-iconliste .elementor-icon-list-icon {
	min-width: 28px;
}

/* Regionen Karte */
.rwp-regionen-karte img {
	max-width: 30rem;
}

/* Veranstaltungsgrid */
.rwp-veranstaltung-datum-wrapper {
	
}

.rwp-veranstaltung-datum__text {
	font-family: var(--e-global-typography-a6ecc12-font-family), Sans-serif;
    font-size: var(--e-global-typography-a6ecc12-font-size);
    font-weight: var(--e-global-typography-text-font-weight);
    line-height: var(--e-global-typography-a6ecc12-line-height);
	color: #000;
}


/* Veranstaltungs-Detailseite */
.rwp-veranstaltungsdetails-links {
    margin-bottom: 0;
	display: flex;
    flex-direction: row;
    gap: 4rem;
	flex-wrap: wrap;
}

@media only screen and (max-width: 1024px) {
	.rwp-veranstaltungsdetails-links {
		display: flex;
		flex-direction: column;
		gap: 2rem;
		flex-wrap: wrap;
	}
}

.rwp-veranstaltungsdetails-links--item {
	
}

.rwp-veranstaltungsdetails-links--headline {
	font-family: var(--e-global-typography-139eb05-font-family), Sans-serif;
    font-size: var(--e-global-typography-139eb05-font-size);
    font-weight: var(--e-global-typography-139eb05-font-weight);
    line-height: var(--e-global-typography-139eb05-line-height);
	margin-bottom: 0.5rem !important;	
}

.rwp-veranstaltungsdetails-links--a {
	font-family: "Zain", Sans-serif;
    font-size: 24px !important;
    font-weight: 400;
    line-height: 1.2em;
	color: #057C79;
	text-decoration: underline !important;	
}


.rwp-veranstaltungsdetails-links .rwp-veranstaltungsdetails-links--a:hover  {
	color: #000;
}

/* Kalender Styling */
.flatpickr-calendar {
	font-family: 'Roboto';
}

.flatpickr-day.endRange, .flatpickr-day.endRange.inRange, .flatpickr-day.endRange.nextMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.endRange:focus, .flatpickr-day.endRange:hover, .flatpickr-day.selected, .flatpickr-day.selected.inRange, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.selected:focus, .flatpickr-day.selected:hover, .flatpickr-day.startRange, .flatpickr-day.startRange.inRange, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.startRange:focus, .flatpickr-day.startRange:hover {
	background: #057C79 !important;
    border-color: #057C79 !important;
}

.rwp-veranstaltungsfilter-wrapper {
	min-width: 274px;
}

@media only screen and (max-width: 1290px) {
	.rwp-veranstaltungsgrid-wrapper {
		width: 100%;
	}
	
	.rwp-veranstaltungsfilter-wrapper {
		width: 100%;
	}
}

/* Formulare */
.rwp-angebotsformular-wrapper,
.rwp-veranstaltungsformular-wrapper {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	gap: 1rem;
}

.rwp-angebotsformular-wrapper .rwp-angebotsformular-anbieter-angebot,
.rwp-angebotsformular-wrapper .rwp-angebotsformular-zielgruppe,
.rwp-angebotsformular-wrapper .rwp-angebotsformular-infos,
.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-anbieter-veranstaltung,
.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-details,
.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-veranstaltungsart-zielgruppe,
.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-abschluss {
    display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 4rem;
    width: 100%;
}

.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-33 {
	width: calc(33.33% - 2.7rem);
}

.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-70 {
	width: calc(66.67% - 2.7rem);
}

.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-70 .wpcf7-form-control-wrap .wpcf7-form-control {
	 display: grid !important;
 	 grid-template-columns: 1fr 1fr 1fr;
}

.rwp-angebotsformular-wrapper .rwp-angebotsformular-50,
.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-50 {
	width: calc(50% - 2rem);
}

.rwp-angebotsformular-wrapper .rwp-angebotsformular-100,
.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-100 {
	width: 100%;
}

.rwp-angebotsformular-wrapper label,
.rwp-veranstaltungsformular-wrapper label {
	width: 100%;
}

.rwp-angebotsformular-zielgruppe label .wpcf7-form-control-wrap .wpcf7-form-control,
.rwp-angebotsformular-kategorie label .wpcf7-form-control-wrap .wpcf7-form-control,
.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-veranstaltungsart-zielgruppe label .wpcf7-form-control-wrap .wpcf7-form-control {
	display: flex;
    flex-direction: column;
    margin-top: 0.5rem;
}

.rwp-angebotsformular-wrapper .check,
.rwp-veranstaltungsformular-wrapper .check {
	color: var(--e-global-color-primary);
	font-weight: 300;
}

.wpcf7-form-control.wpcf7-acceptance .wpcf7-list-item-label a {
	color: var(--e-global-color-primary);
	text-decoration: underline;
}


.wpcf7-form-control.wpcf7-acceptance .wpcf7-list-item-label a:hover {
	color: #000;
	text-decoration: none;
}

.rwp-veranstaltungsformular-wrapper label.datei .zusatzinfo {
	font-size: var(--fs-normal);
    color: var(--e-global-color-primary);
}


.rwp-veranstaltungsformular-wrapper label.datei br {
	display: none;
}

.rwp-veranstaltungsformular-wrapper label.datei {
	display: flex;
	flex-direction: column;
}

.rwp-veranstaltungsformular-wrapper label.datei .wpcf7-form-control.wpcf7-file {
	width: 100%;
}

@media only screen and (max-width: 1024px) {
	.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-33,
	.rwp-angebotsformular-wrapper .rwp-angebotsformular-50,
	.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-50,
	.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-70 {
		width: 100%;
	}
	
	.rwp-angebotsformular-wrapper .rwp-angebotsformular-anbieter-angebot,
	.rwp-angebotsformular-wrapper .rwp-angebotsformular-zielgruppe,
	.rwp-angebotsformular-wrapper .rwp-angebotsformular-infos,
	.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-anbieter-veranstaltung,
	.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-details,
	.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-veranstaltungsart-zielgruppe,
	.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-abschluss {
		flex-direction: column;
		gap: 1rem;
	}
	
	.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-70 .wpcf7-form-control-wrap .wpcf7-form-control {
	    	 grid-template-columns: 1fr 1fr;
	 }
}

@media only screen and (max-width: 767px) {
	.rwp-veranstaltungsformular-wrapper .rwp-veranstaltungsformular-70 .wpcf7-form-control-wrap .wpcf7-form-control {
	    	 grid-template-columns: 1fr;
	 }
}

.rwp-veranstaltungsformular-wrapper .rwp-angebotsformular-100 .region,
.rwp-angebotsformular-wrapper .angebotregion {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
}

@media only screen and (max-width: 1024px) {
	.rwp-veranstaltungsformular-wrapper .rwp-angebotsformular-100 .region,
	.rwp-angebotsformular-wrapper .angebotregion {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}
}

@media only screen and (max-width: 767px) {
	.rwp-veranstaltungsformular-wrapper .rwp-angebotsformular-100 .region,
	.rwp-angebotsformular-wrapper .angebotregion {
		display: grid;
		grid-template-columns: 1fr;
	}
}

/* Linkfarbe Deine Region */
.rwp-deineregion-linkfarbe-text a {
	font-weight: 600;
	color: var(--e-global-color-primary);
	text-decoration: underline;
}

.rwp-deineregion-linkfarbe-text a:hover {
	color: #000;
	text-decoration: none;
}

/* Startseite Hero */
@media only screen and (min-width: 767px) {
	.rwp-startseite-hero {
		min-width: 500px;
	}
}

/* Menü Umbruch */
@media only screen and (max-width: 1625px) {
	.rwp-desktop-menu .elementor-nav-menu li a {
		font-size: 18px !important;
	}
	
	.rwp-header-logo img {
		width: 10rem !important;
	}
}

@media only screen and (max-width: 1455px) {
	.rwp-desktop-menu .elementor-nav-menu li a {
		font-size: 20px !important;
        margin-inline-end: 0.5rem !important;
	}
	
	.rwp-header-logo img {
		width: 8rem !important;
	}
}

/* FAQ */
.rwp-faq .rwp-faq-content-wrapper a {
	font-weight: 600;
	color: var(--e-global-color-primary);
	text-decoration: underline;
}

.rwp-faq .rwp-faq-content-wrapper a:hover {
	color: #000;
	text-decoration: none;
}

@media only screen and (max-width: 767px) {
	.rwp-faq-loop-grid .rwp-faq .uael-accordion-content .rwp-faq-content-wrapper iframe {
		max-height: 20rem;
	}
}


@media only screen and (max-width: 500px) {
	.rwp-faq-loop-grid .rwp-faq .uael-accordion-content .rwp-faq-content-wrapper iframe {
		max-height: 14rem;
	}
	
	.rwp-faq-loop-grid .rwp-faq .uael-accordion-title {
		display: flex;
		flex-direction: column;
		align-items: flex-end;
	}
}


@media only screen and (max-width: 400px) {
	.rwp-faq-loop-grid .rwp-faq .uael-accordion-content .rwp-faq-content-wrapper iframe {
		max-height: 8rem;
	}
}

.dialog-widget.dialog-lightbox-widget.dialog-type-buttons.dialog-type-lightbox.elementor-popup-modal {
	z-index: 9999999;
}


/* Visibility für Off-Canvas am Laptop */
@media (min-width: 1025px) and (max-width: 1366px) {
  .uael-offcanvas-hide-desktop,
  .uael-offcanvas-parent-wrapper.uael-offcanvas-hide-desktop {
    display: block !important;
    visibility: visible !important;
  }
}


/* Ausgabe CPT bei Suchergebnis */
.ww-suche-loop-item--cpt {
    background-color: #fc5c1d;
    padding: 10px 20px 10px 20px;
    margin-bottom: 1rem;
    border-radius: 20rem;
    color: #000;
    font-weight: 700;
}