/*
Theme Name: Headline Music
Theme URI: https://headlinemusic.de/
Template: astra
Author: Dhana Sauernheimer
Author URI: https://www.lichtschreiber.de/
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: Astra is fast, fully customizable &amp; beautiful WordPress theme suitable for blog, personal portfolio, business website and WooCommerce storefront. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with Schema.org code integrated and is Native AMP ready so search engines will love your site. It offers special features and templates so it works perfectly with all page builders like Elementor, Beaver Builder, Visual Composer, SiteOrigin, Divi, etc. Some of the other features: # WooCommerce Ready # Responsive # RTL &amp; Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained &amp; Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and WooCommerce ready theme that you can use for building any kind of website!
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 4.7.1.1786360547
Updated: 2026-08-10 13:15:47

*/


/* GDPR */

.cli-modal.cli-blowup {
	z-index: 9999999999999;
}

#cookie-law-info-bar {
	color: #fff !important;
	background: #000 !important;
	box-shadow: none !important;
	padding:25px;
}

#cookie-law-info-bar[data-cli-style="cli-style-v2"] .cli_messagebar_head {
	color: #fff;
	font-weight: bold;
	font-size: 20px;
}

#cookie-law-info-bar[data-cli-style="cli-style-v2"] .cli-bar-message {
    line-height: 1.7em;
    max-width: 800px;
}


#cookie-law-info-bar .cli_settings_button {
	border: 1px solid #fff;
	padding: 12px 20px;
}

#cookie-law-info-bar .cli_settings_button:hover {
	background: #fff !important;
	color: #000 !important;
}

.cli-tab-footer .wt-cli-privacy-accept-btn,
.small.cli-plugin-button, .small.cli-plugin-button:visited {
	font-size: inherit;
	background: #59602a !important;
	padding: 13px 21px;
	text-transform: initial;
}

.cli-tab-footer .wt-cli-privacy-accept-btn:hover,
.small.cli-plugin-button:hover {
	opacity: .8;
}

.cli-switch input:checked + .cli-slider {
    background-color: #d01318;
}

table.cookielawinfo-winter {
	font-family: Arial;
    color: #000;
    background: #fff;
}

table.cookielawinfo-winter thead th {
	background: #000;
}

.cli-tab-container h4, .cli-tab-container h1 {
    font-family: inherit;
    font-size: 22px;
    margin-bottom: 15px;
    margin: 10px 0;
    font-weight: bold;
}



/* GENERAL */

h1, .entry-content :where(h1),
h2, .entry-content :where(h2),
h3, .entry-content :where(h3),
h4, .entry-content :where(h4),
h5, .entry-content :where(h5) {
	text-transform: none;
}

/* HERO SLIDER */

.hero-slider { 
	width: 100%; 
	padding-bottom: 40px; 
}
/*.hero-slider .swiper-slide {
    opacity: .5;
    transform: scale(.9);
    transition: opacity .4s, transform .4s;
}
.hero-slider .swiper-slide-active {
    opacity: 1;
    transform: scale(1);
}*/
.hero-slider .swiper-pagination-bullet {
    width: 20px !important;
    border-radius: 0;
    opacity: 1;
    background: #fff;
}
.hero-slider .swiper-pagination-bullet-active {
    background: #8a905a;
}

/* Overlay-Text/Button erst bei Hover einblenden */
.hero-slider .swiper-slide .wp-block-cover__inner-container {
    opacity: 0;
    transform: translateY(15px);
    transition: opacity .35s ease, transform .35s ease;
}

.hero-slider .swiper-slide:hover .wp-block-cover__inner-container {
    opacity: 1;
    transform: translateY(0);
}

/* optional: leichtes Abdunkeln des Bildes beim Hover, damit Text lesbarer wird */
.hero-slider .swiper-slide .wp-block-cover__background {
    transition: opacity .35s ease;
}

.hero-slider .swiper-slide:hover .wp-block-cover__background {
    opacity: .5 !important;
}

/* Höhe folgt der Fensterbreite, Seitenverhältnis bleibt fix */
.hero-slider .swiper-slide,
.hero-slider .wp-block-cover {
    aspect-ratio: 14 / 9;      /* Verhältnis nach Wunsch anpassen, z.B. 16/9 oder 3/1 */
    height: auto !important;   /* überschreibt die feste px-Höhe vom Editor */
    min-height: 0 !important;
}

.hero-slider .wp-block-cover p {
	margin: 0 !important;
}


.hero-slider .wp-block-cover h2 {
	margin: 0 !important;
}

/* Bild selbst muss den Container ohne Verzerrung ausfüllen */
.hero-slider .wp-block-cover__image-background,
.hero-slider .wp-block-cover img {
    object-fit: cover;
    object-position: center;
}

/* Optional: auf kleinen Screens etwas höher/quadratischer croppen */
@media (max-width: 600px) {
    .hero-slider .swiper-slide,
    .hero-slider .wp-block-cover {
        aspect-ratio: 11 / 9;
    }
	.hero-slider .wp-block-cover h2 {
        font-size: 14px !important;
    }

	.hero-slider .wp-block-cover p {
   	    font-size: 12px !important;
	    line-height: normal;
	}

	.hero-slider .wp-block-button .wp-block-button__link {
	    padding: 9px;
	    font-size: 10px;
	}

	.hero-slider .swiper-pagination {
		display: none;
	}

	.hero-slider .swiper-slide {
		margin-right: 10px !important;
	}
}



/* HEADER */
.site-header.is-scrolled .ast-main-header-wrap {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
}

.site-header.is-scrolled .custom-logo-link img {
    max-width: 170px;
    width: 170px;
}

@media (max-width: 921px) {
    .site-title {
        display: none !important;
    }

    header .custom-logo-link img {
	    max-width: 170px;
	    width: 170px;
	}
}

.swiper.headerSlider {
	width: 100%;
	height: 500px;
	background: #fff;
}

.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__input:focus, .wp-block-loginout input:focus {
    outline: none;
}

form.wp-block-search .wp-block-search__input {
    border-color: #eaeaea;
    background: #fafafa;
    outline: none;
}

.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper {
    border-color: #eaeaea;
    background: #fafafa;
    outline: 1px solid #89905a;
}


.swiper.headerSlider .swiper-slide {
	text-align: center;
	font-size: 18px;
	height: 100%;
	width: 260px;

	/* Center slide text vertically */
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;

	 display: flex;
    flex-direction: column;
}

.swiper.headerSlider .swiper-slide .event-wrap {
	height: 50%;
	margin: 5px;
	width: 250px;
}

.swiper.headerSlider .swiper-slide .event-wrap a {
	height: 250px;
	display: block;
	outline: none;
}

.swiper.headerSlider .swiper-slide .event-wrap img {
	display: block;
	width: 250px;
	height: 100%;
	object-fit: cover;
	transition: transform .3s ease-out;
	border: 1px solid #000;
}

.swiper.headerSlider .swiper-slide .event-wrap:hover img {
	transform: scale(1.05);
}

.swiper.headerSlider .swiper-button-next:after,
.swiper.headerSlider .swiper-button-prev:after {
	color: #fff;
	font-weight: bold;
    font-size: 30px;
    opacity: 0;
    transition: opacity .5s ease;
}

.headerSlider:hover .swiper-button-next:after,
.headerSlider:hover .swiper-button-prev:after {
	opacity: 1;
}

/* FOOTER */


#sponsor-widget figure {
	width: auto !important;
	display: contents !important;
}
#sponsor-widget figure img {
	width: auto !important;
	height:  100px !important;
	object-fit: contain;
	margin:  10px;
}

#sponsor-widget  {
	justify-content: center;
}

.ast-site-header-cart .ast-addon-cart-wrap i.astra-icon:after, .ast-theme-transparent-header .ast-site-header-cart .ast-addon-cart-wrap i.astra-icon:after {
	color: #fff;
}

.site-footer .widget.widget_block.widget_text {
	margin-bottom: 5px;
}

#astra-footer-menu .menu-item a, .main-header-bar .ast-masthead-custom-menu-items a {
	color: #fff;
}

#astra-footer-menu .menu-item a:hover, .main-header-bar .ast-masthead-custom-menu-items a:hover {
	text-decoration: underline;
}

.site-primary-footer-wrap[data-section="section-primary-footer-builder"], .site-below-footer-wrap[data-section="section-below-footer-builder"] {
	padding-bottom: 25px;
}
 
.footer-widget-area.widget-area.site-footer-focus-item li.menu-item a,
.footer-widget-area .ast-builder-html-element p {
	color: #fff;
	transition: color 0.3s ease;
	font-size: 13px;
	line-height: 19px;
}


.footer-widget-area.widget-area.site-footer-focus-item li.menu-item{
	line-height: 19px
}

.footer-widget-area.widget-area.site-footer-focus-item h2.widget-title,
.footer-widget-area .ast-builder-html-element h3.widgettitle {
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 12px;
	font-size: 20px;
}

.footer-widget-area .ast-builder-html-element h3.widgettitle,
.footer-widget-area .ast-builder-html-element p {
	text-align: right;
}
.footer-widget-area.widget-area.site-footer-focus-item li.menu-item a:hover {
	color: #fff;
	opacity: .8;
}

[data-vp-layout=tiles] .vp-portfolio__item-wrap .vp-portfolio__item {
    margin-left: 20px;
    margin-top: 20px
}

/* CUSTOM BLOCKS */

.single.single-portfolio .entry-header .post-thumb,
.single.single-portfolio .entry-header h1.entry-title {
	display: none !important;
}

.single.single-portfolio .artist-header .uagb-section__wrap {
	background: none rgba(0,0,0,0.5) !important;
}

.single.single-portfolio .artist-header .wp-block-cover__inner-container {
    width: 100%;
    bottom: 0;
    position: absolute;
}

.wp-block-visual-portfolio .vp-portfolio__items-style-default figcaption.vp-portfolio__item-overlay {
    position: absolute;
    bottom: 0;
    text-align: center;
    width: 100%;
}

.wp-block-visual-portfolio .vp-portfolio__items-style-default .vp-portfolio__item-meta {
	padding: 0;
}

.wp-block-visual-portfolio .vp-portfolio__items-style-default .vp-portfolio__item-meta-title { 
    background: rgb(90 96 43);
}

.wp-block-visual-portfolio .vp-portfolio__items-style-default .vp-portfolio__item-meta-title a { 
	color: #fff !important;
	font-weight: bold;
    width: 100%;
    padding: 20px;
    display: block;
    font-size: 18px;
    transition: transform .25s ease;
}

.wp-block-visual-portfolio .vp-portfolio__items-style-default .vp-portfolio__item:hover .vp-portfolio__item-meta-title a { 
	transform: scale(1.05);
}

.wp-block-cover.cover-title {
	padding: 0;
}

.eventList {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr));
  grid-auto-rows: 18rem;
  grid-gap: 30px;
}

.eventList::before {
  content: '';
  width: 0;
  padding-bottom: 100%;
  grid-row: 1 / 1;
  grid-column: 1 / 1;
}

.eventList > *:first-child {
  grid-row: 1 / 1;
  grid-column: 1 / 1;
}



.eventList .event-wrap a img {
	width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s ease;
}


.eventList .event-wrap a {
    display: block;
    height: 100%;
    position: relative;
    overflow: hidden;
 }

.eventList .event-wrap a .figcaption {
	position: absolute;
    bottom: 0;
    color: #fff;
    text-align: center;
    width: 100%;
    padding: 10px;
    background: rgba(0,0,0,0.6);
    transition: transform .3s ease;
}
.eventList .event-wrap:hover a img,
.eventList .event-wrap:hover a .figcaption  {
	transform: scale(1.05);
}

.eventList .event-wrap a .figcaption .title {
    font-size: 18px !important;
    color: #fff;
}

.eventList .event-wrap a .figcaption .band {
	font-weight: bold;
	text-transform: uppercase;
}

.eventList .event-wrap a .figcaption .price {
	color: #59602a;
}

.eventList .event-wrap a .figcaption .daterange {
	font-weight: bold;
	background: #000;
	font-size: .9rem;
}


/* WOOCOMMERCE */

.woocommerce-breadcrumb,
.woocommerce-ordering, 
.woocommerce-result-count,
.woocommerce-products-header__title.page-title {
	display: none !important;
}


.woocommerce-page ul.products li.product .woocommerce-loop-category__title {
	width: 100%;
	left: 0;
	bottom: 50%;
    transform: translateY(50%);
    background: #ffffffcc;
    position: absolute;
    padding: 10px 0;
    opacity: 0;
    transition: opacity .5s;
}


.woocommerce-page ul.products li.product:hover .woocommerce-loop-category__title {
	opacity: 1;
}

.woocommerce-page ul.products li.product .woocommerce-loop-category__title h2 {
	font-size: 1.3rem;
	margin: 0;
}
.woocommerce-page ul.products li.product .woocommerce-loop-category__title h4 {
	text-transform: uppercase;
	font-size: .9rem;
}


.woocommerce-products-header-title {
	margin-top: 20px;
}
 

.woocommerce-products-header-title h2 {
	font-size: 2.2rem;
}




/* SHOP CATEGORY PAGE (Alle Termine pro Event) */


.headline-container.category ul.products:not(.elementor-grid).columns-3 {
	grid-template-columns: repeat(2, minmax(0, 1fr)); 
}

.woocommerce .category ul.products li.product, 
.woocommerce-page  .category ul.products li.product {
	flex-direction: row;
	background: #eaeaea;
}

.woocommerce ul.products li.product .woocommerce-loop-product__link img, .woocommerce-page ul.products li.product .woocommerce-loop-product__link img,
.woocommerce ul.products li.product .wc-gzd-additional-info, .woocommerce-page ul.products li.product .wc-gzd-additional-info,
.woocommerce ul.products li.product .add_to_cart_button, .woocommerce-page ul.products li.product .add_to_cart_button,
.woocommerce ul.products li.product .astra-shop-summary-wrap, .woocommerce-page ul.products li.product .astra-shop-summary-wrap,
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap, .woocommerce-page ul.products li.product .astra-shop-thumbnail-wrap
{
	display: none;
}

.woocommerce .shop_table .order-tax {
	display: none !important;
}


.woocommerce ul.products li.product .custom-summary-wrap, .woocommerce-page ul.products li.product .custom-summary-wrap , .search ul.products li.product .custom-summary-wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    cursor: pointer;
    padding: 22px 12px;
 }

.woocommerce ul.products li.product.with-venue .custom-summary-wrap {
	cursor: default;
}
.woocommerce ul.products li.product.with-venue:hover {
	background: url("img/roter-balken.png") 100% 0/contain no-repeat transparent;
	cursor: default !important
}

.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper {
    border: 0;
    box-shadow: rgb(67 71 85 / 27%) 0px 0px 0.5em, rgb(90 125 188 / 5%) 0px 0.25em 1em;
    margin: 0 35px;
    border-radius: 5px;
    padding: 0;
}

.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__input {
	padding-left: 20px;
}

.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__button {
	border-top-right-radius: 5px !important;
	border-bottom-right-radius: 5px !important;
}


.woocommerce ul.products li.product.with-venue .event-click-wrap:hover .event,
.woocommerce ul.products li.product.with-venue .event-click-wrap:hover .price {
	color:#d11c1f
}

.woocommerce ul.products li.product.with-venue .event-click-wrap {
	cursor: pointer !important;
}

.woocommerce ul.products li.product.with-venue .event-click-wrap {
	cursor: pointer !important;
}


.woocommerce ul.products li.product .custom-summary-wrap .title, .woocommerce-page ul.products li.product .custom-summary-wrap .title , .search ul.products li.product .custom-summary-wrap .title {
	color: #59602a;
	font-size: 20px;
	font-weight: bold;
	line-height: 20px;
	margin-bottom: 12px;
}

.woocommerce ul.products li.product .custom-summary-wrap .event, .woocommerce-page ul.products li.product .custom-summary-wrap .event, .search ul.products li.product .custom-summary-wrap .event {
	color: #000;
	font-size: 15px;
	line-height: 20px;
	font-weight: normal;
	pointer-events: none;
}

.woocommerce ul.products li.product .custom-summary-wrap .event b, .woocommerce-page ul.products li.product .custom-summary-wrap .event b, .search ul.products li.product  .custom-summary-wrap .event b {
	text-transform: uppercase;
	font-weight: bold;
}

.woocommerce ul.products li.product .custom-summary-wrap .price, .woocommerce-page ul.products li.product .custom-summary-wrap .price,  .search ul.products li.product .custom-summary-wrap .price {
	color: #000;
	font-size: 15px;
	font-weight: normal;
	margin: 20px 0 0;
}

.woocommerce ul.products li.product .date-wrap, .woocommerce-page ul.products li.product .date-wrap, .search ul.products li.product .date-wrap {
	background-color: #59602a;
	color: #fff;
	padding: 12px;
    text-align: center;
    width: 130px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.woocommerce ul.products li.product .date-wrap .day, .woocommerce-page ul.products li.product .date-wrap .day, .search ul.products li.product .date-wrap .day {
	font-weight: bold;
    font-size: 40px;
    line-height: 40px;
}

.woocommerce-products-header {
	position: relative;
	/*height: 450px;*/
}

@media only screen and (min-width: 1023px) {

	.post-type-archive-product .woocommerce-products-header:first-of-type {
		height: auto;
	}
	.woocommerce-products-header:first-of-type {
		height: 555px;
		background:  none 50% 100%/cover no-repeat #000;
	}
}


.woocommerce-products-header .mobile-header-image {
	display: none;
}

.woocommerce-products-header .event-header-wrap {
	width: 100%;
    padding: 20px;
    background: url(img/stroke-bg.png) 0 0 repeat rgba(0,0,0,0.6);
    color: #fff;
    position: absolute;
    bottom: 0;
    left: 0;
}


.woocommerce-products-header .event-header-wrap h2 {
	color: #fff;
	font-weight: bold;
	font-size: 25px;
	text-align: center;
	margin-bottom: 0;
}


.woocommerce-products-header .event-header-wrap p,
.woocommerce-products-header .event-header-wrap a {
	color: #fff;
	text-align: center;
	pointer-events: none;
	margin-bottom: 0;
}


.woocommerce-products-header .event-header-wrap p.band {
	text-transform: uppercase;
	font-weight: bold;
}


.woocommerce-products-header .event-header-wrap p.dateRange {
	color: #59602a;
}

.woocommerce .woocommerce-result-count {
	margin: 10px 0 50px;
}
.woocommerce .woocommerce-ordering {
	display: none;
}

.archive.tax-product_cat .event-header-wrap .dateRange,
.archive.tax-product_cat .event-header-wrap .minPrice,
.archive.tax-product_cat .term-description,
.wc-gzd-additional-info {
	display: none !important;
} 


.wp-block-visual-portfolio .vp-portfolio__items-style-default figcaption.vp-portfolio__item-overlay {
    position: absolute;
    bottom: 0;
    text-align: center;
    width: 100%;
}

.wp-block-visual-portfolio .vp-portfolio__items-style-default .vp-portfolio__item-meta {
	padding: 0;
}

.wp-block-visual-portfolio .vp-portfolio__items-style-default .vp-portfolio__item-meta-title { 
    background: url(img/stroke-bg.png) 0 0 repeat rgb(0 0 0 / 65%);
}

.wp-block-visual-portfolio .vp-portfolio__items-style-default .vp-portfolio__item-meta-title a { 
	color: #fff !important;
	font-weight: bold;
    width: 100%;
    padding: 20px;
    display: block;
    font-size: 18px;
    transition: transform .25s ease;
}

.wp-block-visual-portfolio .vp-portfolio__items-style-default .vp-portfolio__item:hover .vp-portfolio__item-meta-title a { 
	transform: scale(1.05);
}

.wp-block-cover.cover-title:after {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    content: " ";
    background: url(img/stroke-bg.png) 0 0 repeat transparent;
   	position: absolute;
}

.wp-block-cover.cover-title {
	padding: 0;
}

.eventList {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr));
  grid-auto-rows: 18rem;
  grid-gap: 30px;
}

.eventList::before {
  content: '';
  width: 0;
  padding-bottom: 100%;
  grid-row: 1 / 1;
  grid-column: 1 / 1;
}

.eventList > *:first-child {
  grid-row: 1 / 1;
  grid-column: 1 / 1;
}



.eventList .event-wrap a img {
	width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s ease;
}


.eventList .event-wrap a {
    display: block;
    height: 100%;
    position: relative;
    overflow: hidden;
 }

.eventList .event-wrap a .figcaption {
	position: absolute;
    bottom: 0;
    color: #fff;
    text-align: center;
    width: 100%;
    padding: 10px;
    background: url(img/stroke-bg.png) 0 0 repeat rgba(0,0,0,0.6);
    transition: transform .3s ease;
}
.eventList .event-wrap:hover a img,
.eventList .event-wrap:hover a .figcaption  {
	transform: scale(1.05);
}



.eventList .event-wrap a .figcaption .title {
	font-size: 12px;
}


.eventList .event-wrap a .figcaption .band {
	font-weight: bold;
	text-transform: uppercase;
}

.eventList .event-wrap a .figcaption .price {
	color: #59602a;
}

.eventList .event-wrap a .figcaption .daterange {
	font-weight: bold;
	background: #000;
	font-size: .9rem;
}

/* PRODUKT DETAILSEITE */

.woocommerce div.product div.images .woocommerce-product-gallery__wrapper .zoomImg,
.woocommerce div.product div.images .woocommerce-product-gallery__trigger, 
.woocommerce div.product .reset_variations,
.woocommerce div.product .woocommerce-variation-availability,
.woocommerce div.product .product_meta,
.woocommerce div.product .woocommerce_events_tab {
	display: none !important
}

.woocommerce div.product .description_tab { 
	pointer-events: none;
}

.woocommerce div.product .additional_information_tab,
.woocommerce div.product .woocommerce-product-details__short-description {
	display: none !important;
}

.woocommerce div.product .product_meta>.sku_wrapper {
	display: none;
}

#main > .ast-woocommerce-container > div.product {
	padding: 30px;
	background: #f8f8f8;
}
.woocommerce #content .ast-woocommerce-container div.product div.images, .woocommerce .ast-woocommerce-container div.product div.images, .woocommerce-page #content .ast-woocommerce-container div.product div.images, .woocommerce-page .ast-woocommerce-container div.product div.images {
	width: 33%;
	height: 375px;
}

.woocommerce #content .ast-woocommerce-container div.product div.summary, 
.woocommerce .ast-woocommerce-container div.product div.summary, 
.woocommerce-page #content .ast-woocommerce-container div.product div.summary, 
.woocommerce-page .ast-woocommerce-container div.product div.summary {
    width: 65%;
	position: relative;
	padding: 0;
	display: flex;
	flex-direction: row;
}

.woocommerce #content .ast-woocommerce-container div.product div.summary .col, 
.woocommerce .ast-woocommerce-container div.product div.summary .col, 
.woocommerce-page #content .ast-woocommerce-container div.product div.summary .col, 
.woocommerce-page .ast-woocommerce-container div.product div.summary .col {
    padding: 20px;
}

.woocommerce #content .ast-woocommerce-container div.product div.summary .saalplan, 
.woocommerce .ast-woocommerce-container div.product div.summary .saalplan, 
.woocommerce-page #content .ast-woocommerce-container div.product div.summary .saalplan, 
.woocommerce-page .ast-woocommerce-container div.product div.summary .saalplan {
	align-self: end;
	display: block;
	outline: none;
}

.woocommerce #content .ast-woocommerce-container div.product div.summary .col_left, 
.woocommerce .ast-woocommerce-container div.product div.summary .col_left, 
.woocommerce-page #content .ast-woocommerce-container div.product div.summary .col_left, 
.woocommerce-page .ast-woocommerce-container div.product div.summary .col_left {
    width: 70%;
}

.woocommerce #content .ast-woocommerce-container div.product div.summary .col_right, 
.woocommerce .ast-woocommerce-container div.product div.summary .col_right, 
.woocommerce-page #content .ast-woocommerce-container div.product div.summary .col_right, 
.woocommerce-page .ast-woocommerce-container div.product div.summary .col_right {
	align-self: end;
    width: 30%;
}

.woocommerce #content .ast-woocommerce-container div.product div.summary .saalplan img, 
.woocommerce .ast-woocommerce-container div.product div.summary .saalplan img,
.woocommerce-page #content .ast-woocommerce-container div.product div.summary .saalplan img,
.woocommerce-page .ast-woocommerce-container div.product div.summary .saalplan img {
    width: auto;
    transition: .3s opacity ease;
}
.woocommerce #content .ast-woocommerce-container div.product div.summary .saalplan img:hover, 
.woocommerce .ast-woocommerce-container div.product div.summary .saalplan img:hover,
.woocommerce-page #content .ast-woocommerce-container div.product div.summary .saalplan img:hover,
.woocommerce-page .ast-woocommerce-container div.product div.summary .saalplan img:hover {
    opacity: 0.8;
}


#main > .ast-woocommerce-container > div.product h1.page-title,
#main > .ast-woocommerce-container > div.product  h1.entry-title {
	display: block;
	font-weight: bold;
	font-size: 22px;
	margin-bottom: 5px;
}

#main > .ast-woocommerce-container > div.product  h2.entry-subtitle {
    font-size: 18px;
    font-weight: bold;
    line-height: 20px;
}

#main > .ast-woocommerce-container > div.product .price {
    margin-bottom: 0;
    line-height: 33px;
    margin-top: 40px;
    font-size: 28px;
    font-weight: bold;
	color: #59602a;	
}

#main > .ast-woocommerce-container .related.products .price {
	font-size: 20px !important;
}

.woocommerce div.product form.cart .variations select {
    width: auto;
    min-width: auto;
    margin-bottom: 20px;
}

.woocommerce div.product form.cart .variations {
	border-bottom: 0;
}

.woocommerce div.product form.cart .single_variation_wrap .single_variation {
	margin-bottom: 0;
}
.woocommerce div.product form.cart .single_variation_wrap .single_variation {
	font-size: 12px;
}

#main > .ast-woocommerce-container > div.product .entry-summary {
    padding: 0;
    display: flex;
    flex-direction: column;
    padding: 20px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	border-top: 0;
	margin-bottom: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    padding: 5px 20px;
    margin-top: 10px;
    margin-left: 4px;
}


.woocommerce div.product .woocommerce-tabs ul.tabs li.active:before {
	background: 0;
}


.woocommerce div.product .woocommerce-tabs div.wc-tab {
    padding: 20px;
    margin-left: 4px;
}

.woocommerce-tabs #tab-description {
	pointer-events: none !important;
}

.woocommerce-tabs #tab-description * {
    pointer-events: all !important;
}

.woocommerce div.product form.cart .variations select {
	margin-bottom: 0;
}

.woocommerce div.product form.cart .single_variation_wrap p {
	margin-bottom: 0.2em;
}

.woocommerce div.product #fooevents_seats__trans_field {
	display: none;
}

.woocommerce .related.products h2, .woocommerce .up-sells h2, .woocommerce .woocommerce-tabs h2 {
    font-size: 20px;
    margin-top: 50px;
    font-weight: bold;
}

.entry-content .woocommerce {
	padding: 30px;
}

.woocommerce-page.woocommerce-checkout form #order_review_heading {
    width: 100%;
    border: 0;
    padding: 0 0 20px;
    font-weight: bold;
}

.woocommerce-page.woocommerce-checkout .mc4wp-checkbox-woocommerce span {
    padding-left: 10px !important;
}


.woocommerce.woocommerce-checkout form #order_review,
.woocommerce-page.woocommerce-checkout form #order_review{
	border: 0 none;
}

.woocommerce-page.woocommerce-checkout form #order_review table, .woocommerce.woocommerce-checkout form #order_review table {
	padding-left: 15px;
}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper,
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image,
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image a {
	height: 100%;
	display: block;
}

.woocommerce div.product div.images .flex-control-thumbs {
	display: none;
}
.woocommerce div.product div.images img {
	cursor: default;
	object-fit: cover;
	height: 100%;
}

body.woocommerce-checkout .entry-header {
    margin: 30px;
}

body.woocommerce-checkout .entry-header .entry-title {
 	font-size: 25px;
    font-weight: bold;
    /*color: #59602a;*/
    background: #fff;
    display: inline-block;
    padding-right: 20px;
    padding-top: 7px;

}

#fooevents_seating_dialog.ui-dialog-content  {
	padding: 20px;
}

.ui-dialog {
	max-width: 1200px;
}

.single .entry-header {
	display: none;
}




@media only screen and (max-width: 1023px) {


	.footer-widget-area .ast-builder-html-element h3.widgettitle,
	.footer-widget-area .ast-builder-html-element p {
		text-align: center;
	} 

	.woocommerce ul.products, .woocommerce-page ul.products, .search ul.products  {
		grid-template-columns: repeat(1,1fr) !important;
	}

	.woocommerce-products-header {
		background: none #000 !important;
		height: auto;
	}

	.woocommerce-products-header .mobile-header-image {
		display: block;
		width: 100%;
	    height: auto;
	    position: static;
	}
	.woocommerce-products-header .event-header-wrap {
		position: static;
	}

	.mc4wp-form .row {
		display: block;
	}

	.mc4wp-form .row .col {
		width: 100%;
		padding: 10px 20px;
	}


}



@media only screen and (max-width: 921px) { 
	.archive .blog-layout-1 .post-content {
	    display: block;
	}

	.wp-block-embed.is-type-video {
 	   width: 100%;
	}

	#primary, #secondary {
		padding: 0;
	}
	.woocommerce #content div.product div.summary, .woocommerce div.product div.summary, .woocommerce-page #content div.product div.summary, .woocommerce-page div.product div.summary {
	    float: right;
	    clear: none;
	}
	.woocommerce #content .ast-woocommerce-container div.product div.images, .woocommerce .ast-woocommerce-container div.product div.images, .woocommerce-page #content .ast-woocommerce-container div.product div.images, .woocommerce-page .ast-woocommerce-container div.product div.images {
		float: left;
		clear: none;
	}
	.site-title {
	    display: none !important
	}

	#masthead .ast-mobile-header-wrap .ast-primary-header-bar, #masthead .ast-mobile-header-wrap .ast-below-header-bar {
		border-bottom: none;
	}
	#content .headline-container {
		padding: 20px 5px;
	}
	.ast-container, .ast-container-fluid {
		padding-left: 0;
		padding-right: 0;
	}
}



@media only screen and (max-width: 767px) { 

	.headlineCharts {
		grid-template-columns: 100%;
		grid-auto-flow: initial;
	}

	.woocommerce #content .ast-woocommerce-container div.product div.images, .woocommerce .ast-woocommerce-container div.product div.images, .woocommerce-page #content .ast-woocommerce-container div.product div.images, .woocommerce-page .ast-woocommerce-container div.product div.images {
		width: 100%;
		height: auto;
		float: none;
	}

	.woocommerce #content .ast-woocommerce-container div.product div.summary, .woocommerce .ast-woocommerce-container div.product div.summary, .woocommerce-page #content .ast-woocommerce-container div.product div.summary, .woocommerce-page .ast-woocommerce-container div.product div.summary {
	    width: 100%;
	    height: auto;
	    float: none;
	    display: block;
	}
	.woocommerce #content .ast-woocommerce-container div.product div.summary .col, 
	.woocommerce .ast-woocommerce-container div.product div.summary .col, 
	.woocommerce-page #content .ast-woocommerce-container div.product div.summary .col, 
	.woocommerce-page .ast-woocommerce-container div.product div.summary .col {
	    width: 100%;
	}

	.woocommerce ul.products li.product > a img, .woocommerce-page ul.products li.product > a img, .search ul.products li.product > a img {
		width: 40%;
	}
	.woocommerce ul.products li.product .woocommerce-loop-category__title, .woocommerce-page ul.products li.product .woocommerce-loop-category__title {
		width: 60%;
	}

	.woocommerce ul.products li.product .woocommerce-loop-category__title h2, .woocommerce-page ul.products li.product .woocommerce-loop-category__title h2 {
		margin-bottom: 0;
	}

	.woocommerce ul.products li.product .woocommerce-loop-category__data .date, .woocommerce-page ul.products li.product .woocommerce-loop-category__data .date {
		font-size: 12px;
		margin-top: 8px;
	}
	.woocommerce ul.products li.product .custom-summary-wrap, .woocommerce-page ul.products li.product .custom-summary-wrap, .search ul.products li.product .custom-summary-wrap {
		padding: 22px 40px 22px 10px;
		width: 75%;
	}
	.woocommerce ul.products li.product .date-wrap, .woocommerce-page ul.products li.product .date-wrap, .search ul.products li.product .date-wrap {
		min-width: 88px;
		width: 25%;
	}
	.swiper.eventSlider .swiper-button-next,
	.swiper.eventSlider .swiper-button-prev {
		display: none !important
	}
	
	.mc4wp-form h3 {
	    padding: 0;
	    font-size: 16px;
	}
	.ast-single-post .entry-title, .page-title {
		font-size: 25px;
	}
}


/* Tourdates – Desktop-Layout & feste Spaltenbreiten */
#tourdates-list { font-family: inherit; max-width: 100%; }

#tourdates-list .tourdates-filter { margin-bottom: 24px; }
#tourdates-list .tourdates-filter label { margin-right: 8px; font-weight: bold; }
#tourdates-list .tourdates-filter select { padding: 6px 10px; font-size: 1em; }

#tourdates-list .tourdates-month-heading { margin-top: 32px; margin-bottom: 8px; font-size: 1.3em; }

#tourdates-list .tourdates-table {
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
    margin-bottom: 8px;
}

#tourdates-list .tourdates-table th,
#tourdates-list .tourdates-table td {
    text-align: left;
    padding: 8px 10px;
    border-bottom: 1px solid #ddd;
    vertical-align: top;
    overflow: hidden;
    text-overflow: ellipsis;
}

#tourdates-list .tourdates-table th { border-bottom: 2px solid #999; }
#tourdates-list .tourdates-table a { white-space: nowrap; }

/* Feste Spaltenbreiten – identisch für jede Monats-Tabelle, damit sie untereinander ausgerichtet sind */
#tourdates-list .tourdates-table th:nth-child(1),
#tourdates-list .tourdates-table td:nth-child(1) { width: 15%; }   /* Datum */
#tourdates-list .tourdates-table th:nth-child(2),
#tourdates-list .tourdates-table td:nth-child(2) { width: 16%; }   /* Artist */
#tourdates-list .tourdates-table th:nth-child(3),
#tourdates-list .tourdates-table td:nth-child(3) { width: 7%; }    /* Land */
#tourdates-list .tourdates-table th:nth-child(4),
#tourdates-list .tourdates-table td:nth-child(4) { width: 13%; }   /* Stadt */
#tourdates-list .tourdates-table th:nth-child(5),
#tourdates-list .tourdates-table td:nth-child(5) { width: 19%; }   /* Location/Venue/Festival */
#tourdates-list .tourdates-table th:nth-child(6),
#tourdates-list .tourdates-table td:nth-child(6) { width: 20%; }   /* Zusatzinfo */
#tourdates-list .tourdates-table th:nth-child(7),
#tourdates-list .tourdates-table td:nth-child(7) { width: 10%; }   /* Ticketinfo */

/* Filter-Ausblendung (wird per JS getoggelt) */
#tourdates-list tr.tourdates-hidden,
#tourdates-list .tourdates-month-heading.tourdates-hidden,
#tourdates-list .tourdates-table.tourdates-hidden { display: none; }

body.single-portfolio #tourdates-list .tourdates-table {
	font-size: 12px;
}

/* Mobile: Tabelle wird zu gestapelten Karten */
@media (max-width: 700px) {
	#tourdates-list {
 		padding: 0 20px;
 	}
    #tourdates-list .tourdates-table,
    #tourdates-list .tourdates-table thead,
    #tourdates-list .tourdates-table tbody,
    #tourdates-list .tourdates-table th,
    #tourdates-list .tourdates-table td,
    #tourdates-list .tourdates-table tr {
        display: block;
    }

    #tourdates-list .tourdates-table thead {
        display: none; /* Kopfzeile ausblenden, Labels kommen stattdessen pro Zelle */
    }

    #tourdates-list .tourdates-table tr {
        border: 1px solid #ddd;
        border-radius: 6px;
        margin-bottom: 16px;
        padding: 8px 12px;
    }

    #tourdates-list .tourdates-table td {
        border-bottom: none;
        padding: 6px 0;
        width: auto !important;
    }

    #tourdates-list .tourdates-table td::before {
        content: attr(data-label) ": ";
        font-weight: bold;
        display: inline-block;
        min-width: 90px;
    }

    #tourdates-list .tourdates-table td:empty {
        display: none; /* leere Felder (z. B. Zusatzinfo) nicht als leere Zeile anzeigen */
    }
}