/*
Theme Name: Impreza Child with EM
Template: Impreza
Version: 1.0.2
Author:	UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/

/*Add your own styles here:*/

/*Navigation*/
.w-nav-title {text-transform:uppercase;}

/*Tabs*/
.w-tabs-list-h {background: var(--color-header-top-bg-grad);}

.w-tabs-item {
    flex: 1; /* Jeder Tab nimmt den gleichen Anteil der verfügbaren Breite ein */
    text-align: center; /* Zentriert den Text */
    padding: 1em 1.5em;
    background: none;
    color: inherit;
    transition: none;
	background:#f5f5f5;}

.w-tabs.style_modern>.w-tabs-list .w-tabs-item span {color: var(--color-header-top-text);}
	
.w-tabs.style_modern>.w-tabs-list .w-tabs-item.active span,
.w-tabs.style_modern>.w-tabs-list .w-tabs-item:hover span {color: #fff;}
.w-tabs.style_modern>.w-tabs-list .w-tabs-item.active, 
.no-touch .w-tabs.style_modern>.w-tabs-list .w-tabs-item:hover {background: var(--color-header-top-text);}

.w-tabs.style_modern.layout_hor>.w-tabs-list .w-tabs-item.active:after {
	background: var(--color-header-top-text);
	transform: translate(-0.5em, .5em) rotate(-45deg);	}

/*Events Oberview Page*/
.events-table td h3 a {
	color: var(--color-content-link-hover); font-weight: 700;
	&:hover {color: var(--color-content-link);}
}

/*Events Single Page*/
.custom-events-single-page-content {
    display: flex;
    flex-wrap: wrap;
	h1 {margin-bottom: 3rem;}
	.l-section.height_medium {padding: 0;}
    .custom-single-event-column-1 {flex: 3; min-width: 66%; padding: 0 3rem 0 0;}
    .custom-single-event-column-2 {flex: 1; min-width: 33%;}
}

/*Widget*/
.custom-next-events-widget {
	table {
		thead {display: none;}
		tr td {
			min-width: 100%;
			&:first-child,
			&:last-child {display: none;}
			h3 a {font-size: 1rem; font-weight: 400; color: var(--color-content-heading);}
			}
		}
	}


/*Buchung*/
.em-booking-message-success {
	background: #93c01f;
	color: #fff;
	padding: 1rem;}
	
.em-booking input:not([type=submit]), textarea, select {background: #f5f5f5;}
.em-booking input:not([type=submit]):focus, select:focus, textarea:focus {background: #e8e8e8;}

.em-booking-form-section-details {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: flex-start; 
}

.em-booking-form-section-details p {
  flex: 1 1 calc(50% - 1rem); /* Sorgt für gleichmäßige Verteilung und berücksichtigt den Abstand */
  margin: 0; /* Entfernt unnötige Abstände */
}

/* Volle Breite für bestimmte Elemente */
.em-booking-form-section-details h3,
.em-booking-form-section-details textarea,
.em-booking-form-section-details .input-group,
.em-booking-form-section-details .em-consent-checkbox {
  flex: 1 1 100%;
}


/* Checkbox-Design */
.em-booking-form-section-details .input-group input[type="checkbox"],
.em-booking-form-section-details .em-consent-checkbox input[type="checkbox"] {
  margin: 0 .5rem 0 0 ;
}


.em-booking-form-details {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: flex-start;
}

.em-booking-form-details > div {
  display: contents; /* Entfernt die <div>-Wrapper aus dem Layout */
}

.em-booking-form-details p {
  flex: 1 1 calc(100% - 1rem); /* Immer zwei Spalten */
  min-width: 250px;
  margin: 0;
}

.em-booking-form-details .booking_comment {
  flex: 1 1 100%; /* Kommentar immer volle Breite */

}

/* Mobile Optimierung */
@media (max-width: 768px) {
  .em-booking-form-details p {
    flex: 1 1 100%;
  }
}
.em-booking-form-details textarea,
.em-booking-form-details label[for="booking_comment"],
.em-booking-form-details label[for="dbem_phone"],
.em-booking-form-details label[for="user_name"],
.em-booking-form-details input#user_name,
.em-booking-form-details input.em-phone-intl {display: none;}

.em-booking-form-details {
	p {padding: 0;}	
	input:not([type=submit]), select {background: #f5f5f5;}

	label {cursor: none;}
	input {cursor: pointer;}
}
.em-booking-form-section-summary,
.em-booking-summary  {background: #f5f5f5; padding: 1rem; margin-top: 3rem;}
.em-bs-section {border-bottom: 1px solid #e2e2e2}
.em-bs-cell-qty, 
.em-bs-qty-x {
	display: inline-block;
	flex-grow: 1; 
	width: auto; 
	margin: 0;}
.em-bs-cell-desc {
	display: inline-block;
	width: auto;
	margin: 0;
	&:after {content: ':'; margin-right: 1rem;}
	}
.em-bs-cell-price {
	display: inline-block;
	flex-grow: 8;
	width: auto; 
	margin: 0;}
.em-bs-subtitle {font-weight: 700}

@media (max-width: 768px) {
    .custom-events-single-page-content {
		flex-direction: column;
		padding: 0;
        .custom-single-event-column-1, 
        .custom-single-event-column-2 {min-width: 100%;}
    }
}