/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
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: 1.0.1
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
*/
@charset "utf-8";

/*Header*/
.site-header {
	z-index: 9999;
	transition: all 0.6s ease;
}

/* Wenn sticky: nach oben „fliegen“ */
.site-header.sticky {
  top: 0;
  bottom: auto;
}

	
/* Navigation */
.site-header .site-navigation .menu li {
  color: #fff;
  transform: translateY(30px);
  animation: flyInSoftBounce 1.8s ease-out 3 forwards;
}
.site-header .site-navigation .menu li a:hover {
  background-color: var(--e-global-color-primary);
}

/* Versetzte "Notenanschläge" */
.site-header .site-navigation .menu li:nth-child(1) { animation-delay: 0.3s; }
.site-header .site-navigation .menu li:nth-child(2) { animation-delay: 0.5s; }
.site-header .site-navigation .menu li:nth-child(3) { animation-delay: 0.7s; }
.site-header .site-navigation .menu li:nth-child(4) { animation-delay: 0.9s; }
.site-header .site-navigation .menu li:nth-child(5) { animation-delay: 1.1s; }
.site-header .site-navigation .menu li:nth-child(6) { animation-delay: 1.3s; }
.site-header .site-navigation .menu li:nth-child(7) { animation-delay: 1.5s; }

/* 🔹 angepasst für 8 und 9 */
.site-header .site-navigation .menu li:nth-child(8) {
  animation-delay: 1.65s;
  animation-duration: 1.6s; /* etwas schneller */
}
.site-header .site-navigation .menu li:nth-child(9) {
  animation-delay: 1.8s;
  animation-duration: 1.5s; /* noch etwas knackiger */
}

@keyframes flyInSoftBounce {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  30% {
    opacity: 1;
    transform: translateY(-6px);
  }
  60% {
    transform: translateY(3px);
  }
  80% {
    transform: translateY(-1.5px);
  }
  100% {
    transform: translateY(0);
  }
}


/*Erweiterung fuer Tabelle*/
.concert-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 1.5rem;
}

.concert-table td {
  padding: 0.4rem 0.8rem;
  vertical-align: top;
  border-bottom: 1px solid #ddd;
}

.concert-table td:first-child {
  white-space: nowrap;
  font-weight: bold;
  color: #222;
}

/*CF7-Form*/
.wpcf7-form a:hover {color: #fff}
.wpcf7-form textarea {max-height:150px; 	border-bottom:2px solid #A80031;}
/* Container für alle Eingabefelder außer Textarea */
.wpcf7-form {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;}

/* Allgemeines Styling der einzelnen Eingabefelder */
.wpcf7-form .wpcf7-form-control-wrap {
  flex: 1 1 calc(33.333% - 1rem); /* 3 Spalten mit Abstand */
  box-sizing: border-box;}

.wpcf7-form .wpcf7-form-control-wrap input,
.wpcf7-form .wpcf7-form-control-wrap select {
	border-bottom:2px solid #A80031;}
	
/* Textarea bleibt 100% breit */
.wpcf7-form .wpcf7-form-control-wrap[data-name="IhreNachricht"] {
  flex: 1 1 100%;}

/* DSGVO-Checkbox und SPAM-Schutz auf volle Breite */
.wpcf7-form .wpcf7-form-control-wrap[data-name="datenschutz"],
.wpcf7-form .wpcf7-form-control-wrap[data-name="SPAM-Schutz"] {
  flex: 1 1 100%;
}

/* Datenschutz-Link optisch getrennt */
.wpcf7-form a[href*="datenschutz"] {
  display: block;
  width: 100%;
  margin-bottom: 0.25rem;
}

/* Submit-Button */
.wpcf7-form .wpcf7-submit {
  margin-top: 1rem;
}


/*Footer Widgets*/
.footer-widgets {
	background-color: var(--e-global-color-secondary);
	padding-top: 5rem;
	padding-bottom: 5rem;
	color: #fff;}
	
.footer-widgets a {color: #fff;}	
.footer-widgets .elementor-button {background-color:  #fff; display: none;}
.footer-widgets .container {
	position:relative;
	margin: 0 auto;
	max-width: 72.813rem;
}

.wpcf7-form .wpcf7-submit {background-color: #fff !important}
	
/*Footer Copyright*/
.copyright {
	background: #fff;
	color: #000;
	padding: 1rem;
	text-align: center;}
	

@media all and (min-width: 1200px) {

h1, .h1 {font-size: 2rem}
.h3 {
    font-family: var(--e-global-typography-primary-font-family), Sans-serif;
	font-size: 1.75rem;
    font-weight: var(--e-global-typography-primary-font-weight);
    text-transform: var(--e-global-typography-primary-text-transform);
    line-height: var(--e-global-typography-primary-line-height);}
.site-header {
	bottom: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding-block-end: 1rem;
	padding-block-start: 1rem;
	position: fixed;
	left: 0;
	right: 0;}

}

@media all and (max-width: 1199px) {
	
	.site-header {
    position: fixed;
    top: 0;
    bottom: auto;
    left: 0;
    right: 0;
    z-index: 9999;
    transition: all 0.6s ease;
}
	
	.site-header.sticky {
    top: 0;
    bottom: auto;
  }
	
	.site-navigation-dropdown ul.menu {background-color: #000; height: 100vh}
	.site-navigation-dropdown ul.menu li a,
	site-navigation-dropdown ul.menu li.current-menu-item a {background-color:transparent !important;}
	
	.slogan-header {max-inline-size: 12ch; text-wrap: balance;}
	.footer-widgets {padding: 2rem;}
}	

@media (max-width: 767px) {
  .wpcf7-form .wpcf7-form-control-wrap {flex: 1 1 100%;}
}
