/*
Theme Name: Astra Child
Template: astra
*/

p,
label {
	color: #4B0015;
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
	font-weight: 400;
}

@media (min-width: 1024px) {
	/* Nur auf Desktop 2. Submenu nach rechts ausfahren */ 
	.elementor-nav-menu .sub-menu .sub-menu {
		position: absolute !important;
		top: 0 !important;
		left: 100% !important;  /* rechts vom Parent */
		margin-left: 1px !important;
		background-color: #ccc !important;
		display: none; /* erst sichtbar bei Hover */
	}
}

.min-h-50 {
	min-height: 50px;
}


/* ===== Elementor Header Sticky Fix ===== */

/* Standard Sticky Header */
.elementor-location-header .elementor-section[data-settings*='"sticky":"top"'] {
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  width: 100%;
  background: #fff;
  transition: all 0.3s ease;
}

/* Body-Padding, damit Content nicht überdeckt wird */
body {
  /* anpassen: Höhe = Headerhöhe */
  padding-top: 95px;
}
@media (max-width: 1023px) {
	body {
		padding-top: 90px;
	}
}

/* Wenn die WP Admin Bar sichtbar ist */
body.admin-bar .elementor-location-header .elementor-section[data-settings*='"sticky":"top"'] {
  top: 32px; /* verschiebt Header unter die Admin-Bar */
}

/* Mobile Admin Bar ist höher (ca. 46px) */
@media screen and (max-width: 782px) {
  body.admin-bar .elementor-location-header .elementor-section[data-settings*='"sticky":"top"'] {
    top: 46px;
  }
}

/* Optional: Schatten beim Scrollen */
.elementor-location-header .elementor-section[data-settings*='"sticky":"top"'].is-stuck {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}





/* Hover: auch das 2. Submenu anzeigen */
.elementor-nav-menu .sub-menu li:hover > .sub-menu {
    display: block !important;
}

/* Desktop: Submenu bei Hover anzeigen */
@media (min-width: 1201px) { /* Desktop ab 1025px */
    .elementor-nav-menu li.menu-item-has-children:hover > .sub-menu {
        display: block !important; /* erzwingt Sichtbarkeit */
        opacity: 1;
        visibility: visible;
    }

    .elementor-nav-menu .sub-menu {
        display: none; /* standardmäßig ausblenden */
        position: absolute;
        top: 100%;
        left: 0;
        z-index: 9999;
        background-color: #fff; /* falls nötig */
        min-width: 250px;
    }
}

/* Submenu abrunden */

/* Erstes Submenu (nach unten aufklappend) */
@media (min-width: 1024px) {
	.elementor-nav-menu .sub-menu {
	border-radius: 0 0 12px 12px; /* nur unten abrunden */
	box-shadow: 0 4px 10px rgba(0,0,0,0.15);
	}

	.elementor-nav-menu .sub-menu .sub-menu {
	border-radius: 0 12px 12px 0; /* nur außen abrunden */
	overflow: hidden;
	}
}



/* Zweites Submenu (das rechts ausfährt) */
.elementor-nav-menu .sub-menu .sub-menu {
  border-radius: 0 12px 12px 12px; /* nur außen abrunden */
  overflow: hidden;
  min-width: 24em !important;
}


/* Mobile Menu */
@media (max-width: 1023px) {
	.dropdown-menu-toggle {
		display: inline-block !important;
		width: 40px;
		height: 40px;
		position: absolute;
		cursor: pointer;
		background: #ccc;
		right: 0;
		top: 0px;
		border-radius: 100%;
	}
	.dropdown-menu-toggle::before {
		content: "+";
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		font-size: 18px;
		font-weight: bold;
		z-index: 10;
	}
	.dropdown-menu-toggle.active::before {
		content: "−";             /* Minus */
	}
	.elementor-element .elementor-nav-menu--dropdown.elementor-nav-menu__container .menu-item .sub-menu {
		/*display: none;*/
		max-height: 0;
		overflow: hidden;
		transition: max-height 0.4s ease;
	}
	.elementor-element .elementor-nav-menu--dropdown.elementor-nav-menu__container .menu-item .sub-menu.active {
		max-height: 500px;
	}
	.elementor-nav-menu__container {
		max-height: 100vh !important;      /* passt sich an die Bildschirmhöhe an */
		overflow-y: auto !important;        /* scrollbar nur fürs Menü */
		-webkit-overflow-scrolling: touch !important; /* smoother scroll auf iOS */
	}
	.elementor-nav-menu a {
		line-height: 2.2rem !important;
		font-size: 22px !important;
	}
	


}

/* Mobile Menu Ende */	

/* Fullscreen Overlay für Mobile Menü */
.elementor-element .elementor-nav-menu--dropdown.elementor-nav-menu__container {
  position: fixed;       /* Overlay */
  top: 0;
  left: 0;
  width: 100vw;          /* Volle Breite */
  height: 100vh;         /* Volle Höhe */
  background-color: rgba(0,0,0,0.95); /* dunkles Overlay */
  display: none;         /* wird per JS angezeigt */
  flex-direction: column;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  overflow-y: auto;      /* Scroll, falls Inhalt größer als Viewport */
  padding: 2rem;
}

/* Menülinks groß, mittig */
.elementor-element .elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu > li > a {
  font-size: 2rem;
  color: #fff;
  text-align: center;
  display: block;
}

.elementor-nav-menu--main .elementor-nav-menu ul {
	width: 21em !important;
}


/* Submenus ebenfalls sichtbar */
.elementor-element .elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-menu {
  display: none;  /* wir toggeln es per JS */
  flex-direction: column;
  text-align: center;
}

.elementor-element .elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-menu li a {
  font-size: 1.5rem;
}


/* Menü sichtbar, wenn Hamburger aktiv */
.elementor-nav-menu--toggle .elementor-menu-toggle.elementor-active + .elementor-nav-menu__container {
    display: flex !important;   /* flex für zentrierten Inhalt */
    transform: scaleY(1) !important;
    max-height: 100vh !important;
    transition: transform 0.3s ease, max-height 0.3s ease;
}

/* Menülinks zentrieren und groß */
.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item {
    font-size: 2rem;
    text-align: center;
    margin: 1rem 0;
    color: #fff;
}

/* Optional: Submenus größer und zentriert */
.elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-menu li a {
    font-size: 1.5rem;
    text-align: center;
}

.elementor-nav-menu--toggle .elementor-menu-toggle:not(.elementor-active)+.elementor-nav-menu__container {
	top: 0;
    left: 0;
    position: fixed;
	transform: none !important;
	max-height: none !important;
}

/* Menu Popup */
@media (max-width: 1200px) { 
	.elementor-nav-menu,
	.elementor-nav-menu a {
		color: #4B0015 !important;
	}
	.elementor-nav-menu li a{
		border-bottom: 1px solid #7A7A7A !important;
	}
	.elementor-element .elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-menu {
		display: block;;
	}
	/* Hamburger überlagert */
	.elementor-menu-toggle[aria-expanded="true"] {
		z-index: 10000; /* damit oben bleibt */
		position: fixed;
		top: 50px;
		right: 10px;
	}
	.elementor-menu-toggle[aria-expanded="true"] .elementor-menu-toggle__icon--open {
		display: none;
	}

	.elementor-menu-toggle[aria-expanded="true"] .elementor-menu-toggle__icon--close {
		display: block !important;
	}
	.elementor-nav-menu--dropdown.elementor-nav-menu__container li a {
		font-size: 1.7rem !important;
	};
	/* Submenu links einrücken */
	.elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-menu li a {
		text-align: center;
		padding-left: 1.5rem;       /* etwas Einrückung */
		color: #FFD1B3;             /* ggf. andere Farbe für Untermenü */
		border-bottom: 1px solid rgba(255,255,255,0.2); /* leichte Trennung */
		transition: color 0.3s;
	}

	/* Hover Effekt für Untermenüs */
	.elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-menu li a:hover {
		color: #fff;                /* Highlight beim Hover */
	}

	/* Optional: Untermenüs noch kleiner und kursiv */
	.elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-menu li a {
		font-style: italic;
	}
}


.elementor-button,
input[type=button],
.qmn_btn, .qsm-quiz-container.qmn_quiz_container .qmn_btn,
input[type=submit]{
	color: #000;
    transition: all 0.3s ease !important; 
    transform: scale(1); 
	font-family: "Montserrat", Sans-serif;
    font-weight: 400;
    fill: #000000;
    color: #000000;
    border-radius: 50px 50px 50px 50px;
    padding: 20px 50p;
	background: #FFD1B3;
}
input[type=button]:focus,
input[type=submit]:focus {
	background: #FFD1B3;
	color: #000;
	outline: 1px solid black;
}
.elementor-button:hover,
.qmn_btn:hover, .qsm-quiz-container.qmn_quiz_container .qmn_btn:hover,
input[type=submit]:hover,
input[type=button]:hover{
	color: #000;
    transform: scale(1.05);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
	background: #FFD1B3;
}

.elementor-button:hover .elementor-button-text,
input[type=submit]{
	color: #000;
}

.elementor-button-danger .elementor-button,
input[type=submit]{
	background-color: #FFD1B3 !important;
}

.rounded .elementor-widget-container img {
	border-radius: 25px;
	@media (min-width: 1300px ) {
		border-radius: 50px;
	}
}
.rounded .elementor-widget-wrap {
	border-radius: 25px;
	@media (min-width: 1300px ) {
		border-radius: 50px;
	}
}
section.rounded {
	border-bottom-left-radius: 100px;
	border-bottom-right-radius: 100px;
}

section.rounded-top {
	border-top-left-radius: 100px;
	border-top-right-radius: 100px;
	@media (min-width: 1300px ) {
		padding-top: 120px !important;
	}
	
}

.elementor-widget-image-carousel.rounded .swiper-slide {
	border-radius: 50px;
}

.roundedFull .elementor-element-populated{
	border-radius: 50px;
}
.roundedFull .elementor-element-populated img{
	aspect-ratio: 1;
}


.elementor-button[type="submit"]:hover {
	color: #000 !important;
}

.elementor-element.elementor-element-35feb4a .elementor-image-carousel-wrapper .elementor-image-carousel .swiper-slide-image {
	border-radius: 100%;
	aspect-ratio: 1 / 1;
}
.qmn_btn, .qsm-quiz-container.qmn_quiz_container .qmn_btn, .qsm-quiz-container.qmn_quiz_container .btn {
	font-family: "Montserrat", Sans-serif;
    font-weight: 400;
    fill: #000000;
    color: #000000 !important;
    background-color: #FFD1B3 !important;
    border-radius: 50px 50px 50px 50px !important;
    padding: 20px 20px 20px 20px;
	border: none !important;
}


/* HOME */
.page-id-11 .elementor-location-header .elementor-top-section {
	background-color: var(--e-global-color-c3e707a);
}
.page-id-11 {
    background-color: #F0E7DF;
}

/* ADHS im Fokus*/
.page-id-190 {
	background-color: #F8E383;
}
.page-id-190 .elementor-location-header .elementor-top-section{
	background-color: #C3A49A !important;
}

/* Migräne im Fokus */
.page-id-450 {
	background-color: var(--e-global-color-c005f2a);
}
.page-id-450 .elementor-location-header .elementor-top-section{
	background-color: var(--e-global-color-a553a1c) !important;
}
.page-id-450 .elementor-widget-image-carousel.rounded .swiper-slide {
	background: #D8DCCE;
}
/* Hormone & ADHS */
/* PMS / PMDS */
/* Postpartale Depression */
/* Wechseljahre */
.page-id-4388,
.page-id-5161,
.page-id-5187,
.page-id-5193
 {
	background-color: #D4BCB0;
}
.page-id-4388 .elementor-location-header .elementor-top-section,
.page-id-5161 .elementor-location-header .elementor-top-section,
.page-id-5187 .elementor-location-header .elementor-top-section,
.page-id-5193 .elementor-location-header .elementor-top-section {
	background-color: #D7CFC5;
}
.page-id-4388 .elementor-widget-image-carousel.rounded .swiper-slide,
.page-id-5161 .elementor-widget-image-carousel.rounded .swiper-slide,
.page-id-5187 .elementor-widget-image-carousel.rounded .swiper-slide,
.page-id-5193 .elementor-widget-image-carousel.rounded .swiper-slide {
	background: #D7CFC5;
}

/* Psychotherapie im Fokus */
.page-id-455 {
	background-color: #DFD5D5;
}
.page-id-455 .elementor-location-header .elementor-top-section {
	background-color: var(--e-global-color-782570d) !important;
}
.page-id-455 .elementor-widget-image-carousel.rounded .swiper-slide {
	background: #B7BAAE;
}
/* Selbsttests im Fokus */
.page-id-69 .elementor-location-header .elementor-top-section,
.page-id-4679 .elementor-location-header .elementor-top-section,
.page-id-4724 .elementor-location-header .elementor-top-section,
.page-id-4736 .elementor-location-header .elementor-top-section,
.page-id-4749 .elementor-location-header .elementor-top-section,
.page-id-4757 .elementor-location-header .elementor-top-section,
.page-id-5518 .elementor-location-header .elementor-top-section,
.page-id-5595 .elementor-location-header .elementor-top-section {
	background-color: #B1C5CC !important;
}
/* Über mich */
.page-id-5042 .elementor-location-header .elementor-top-section {
	background-color: #B1C5CC !important;
}
.page-id-69,
.page-id-4679,
.page-id-4724,
.page-id-4736,
.page-id-4749,
.page-id-4757,
.page-id-5042 {
	background-color: #E0ECF0;
}


/* Footer */
.elementor-location-footer section.rounded-top {
    padding-top: 0 !important;
}
.elementor-location-footer .elementor-icon i,
.elementor-location-footer a,
.elementor-location-footer p{
	color: #4B0015 !important;
}
.elementor-widget-social-icons .elementor-social-icon svg{
	fill: #4B0015 !important;

}

.wpcf7-form input[type="submit"] {
	font-family: "Montserrat", Sans-serif !important;
    font-weight: 400 !important;
    fill: var(--e-global-color-primary) !important;
    color: var(--e-global-color-primary) !important;
	border-radius: 50px 50px 50px 50px !important;
    padding: 20px 20px 20px 20px !important;
	min-width: 150px;
}
@media (min-width: 900px) {
	.two-columns {
		display: flex;
		gap: 20px; /* Abstand zwischen den Feldern */
	}
}


.two-columns .col {
  flex: 1; /* beide gleich breit */
}
#ueber-mich {
	scroll-margin-top: 50px;
}

.personality-test h2 {
    color: var(--e-global-color-primary);
    font-family: var(--e-global-typography-primary-font-family), Sans-serif;
    font-weight: var(--e-global-typography-primary-font-weight);
}




.elementor-location-header .elementor-container {
  display: flex !important;
  flex-wrap: wrap !important;
}
.elementor-location-header .elementor-column {
  flex: 1 1 auto !important;  /* proportional wachsen/klein werden */
  min-width: 0;                /* verhindert Overflow */
}

.wpcf7 input.wpcf7-form-control:not([type=submit]), .wpcf7 textarea.wpcf7-form-control {
	border-radius: 12px;
	background-color: #EFE7DF;
}
@media (min-width: 1201px) {
	.dt-33 {
		width: 33.33% !important;
	}	
}
