/*
 Theme Name:   OceanWP Child
 Description:  Child Theme des high-performance WP-Theme OceanWP
 Author:       Philipp Limbeck
 Author URI:   https://insyde.at/
 Template:     oceanwp
 Version:      1.0
 Text Domain:  oceanwp-child
*/

/* overwrite general settings of oceanwp for focus of links (black border) */
#main a:focus,
#site-header a:focus,
#footer a:focus{
	outline: 0px !important;
}

.nomargin-bottom {
	margin-bottom: 0px !important;
}

#main a {
	text-decoration: none !important;
}

.page-id-2 #main #content-wrap {
	padding-bottom: 0px !important;
}

/* Menü-Hintergrund nur auf Seite mit ID 3 */
.page-id-3 #site-header {
  background-color: #7ab029 !important;
}

/* ##### STICKY HEADER ##### */





/* INTRO – BG */
.bg-intro {
  position: relative;
  width: 100vw; /* volle Bildschirmbreite */
  min-height: 800px; /* Originalhöhe des Bildes */
  background-image: url('/wp-content/uploads/2025/10/content_img_willkommen_2600-1.jpg');
  background-repeat: no-repeat;
  background-position: right;
  background-size: cover; /* gestreckt über gesamte Breite, behält Proportionen */
  background-attachment: scroll; /* oder 'fixed' für Parallax-Effekt */
  overflow: hidden;
}

@media screen and (max-width: 1000px) {
	.bg-intro{
		min-height: 400px;
		padding-top: 15px;
	}
}


/* MARKEN – BG */
.bg-marken{
  position: relative;
  width: 100vw;
  min-height: 800px;
  background-image: url('/wp-content/uploads/2025/10/arbeitsweise_2600.jpg');
  background-repeat: no-repeat;
  background-position: left;
  background-size: cover;
  overflow: hidden;
} 


@media screen and (max-width: 1600px) {
	.bg-marken{
		min-height: 550px;
	}
}

@media screen and (max-width: 1000px) {
	.bg-marken{
		min-height: 400px;
		background-position: center;
		padding-top: 15px;
	}
}


/* ERLEBNISSE – BG */
.bg-erlebnisse {
  position: relative;
  width: 100vw;
  min-height: 800px;
  background-image: url('/wp-content/uploads/2025/10/philosophie_2600.jpg');
  background-repeat: no-repeat;
  background-position: left;
  background-size: cover;
  overflow: hidden;
}
	
@media screen and (max-width: 1600px) {
	.bg-erlebnisse {
		min-height: 550px;
	}
}

@media screen and (max-width: 1000px) {
	.bg-erlebnisse {
		min-height: 400px;
		background-position: center;
		padding-top: 15px;
	}
}


/* SERVICE – BG */
.bg-fullservice {
  position: relative;
  width: 100vw;
  min-height: 800px;
  background-image: url('/wp-content/uploads/2025/10/events_2600.jpg');
  background-repeat: no-repeat;
  background-position: right;
  background-size: cover;
  overflow: hidden;
}

.bg-fullservice h2,
.bg-fullservice h3 {
	color: #fff;
}

.bg-fullservice p {
	color: #000;
}

@media screen and (max-width: 1600px) {
	.bg-fullservice {
		min-height: 550px;
		padding-top: 15px;
	}
}

@media screen and (max-width: 1000px) {
	.bg-fullservice {
		min-height: 400px;
		background-position: center;
		padding-top: 15px;
	}
}


/* GUTER RAT – BG */
.bg-rat {
  position: relative;
  width: 100vw;
  min-height: 800px;
  background-image: url('/wp-content/uploads/2025/10/content_img_consulting_2600.jpg');
  background-repeat: no-repeat;
  background-position: right;
  background-size: cover;
  overflow: hidden;
}

@media screen and (max-width: 1600px) {
	.bg-rat {
		min-height: 550px;
		padding-top: 15px;
	}
}

@media screen and (max-width: 1000px) {
	.bg-rat {
		min-height: 400px;
		padding-top: 15px;
	}
}


/* INSZENIERUNG – BG */
.bg-inszenierung {
  position: relative;
  width: 100vw;
  min-height: 800px;
  background-image: url('/wp-content/uploads/2025/10/content_img_kuenstler_2600.jpg');
  background-repeat: no-repeat;
  background-position: left;
  background-size: cover;
  overflow: hidden;
}

@media screen and (max-width: 1600px) {
	.bg-inszenierung {
		min-height: 550px;
		padding-top: 15px;
	}
}

@media screen and (max-width: 1000px) {
	.bg-inszenierung {
		min-height: 400px;
		padding-top: 15px;
	}
}

/* EINBLICKE – BG */
.bg-einblicke {
  position: relative;
  width: 100vw;
  background-image: url('/wp-content/uploads/2025/10/bg-zsw1-1.gif');
  background-repeat: repeat;
 overflow: hidden;
}

span.typed-cursor {
	opacity: 1;
  -webkit-animation: blink 0.7s infinite;
  -moz-animation: blink 0.7s infinite;
  animation: blink 0.7s infinite;
  position: relative;
  top: -3px;
}



/* KONTAKT – BG */
.bg-kontakt {
  position: relative;
  width: 100vw;
  min-height: 800px;
  background-image: url('/wp-content/uploads/2025/10/slider_zsw_kontakt.jpg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  background-attachment: fixed;   /* ← erzeugt Parallax-Effekt */
  overflow: hidden;
	padding-top: 150px;
  padding-bottom: 150px;
}

.bg-kontakt h3,
.bg-kontakt p,
.bg-kontakt a,
.bg-kontakt a:hover {
	color: #fff;
}

.impressum-text {
	font-size: 15px;
}

.kontakt-text p {
	font-size: 25px;
	line-height: 1.3;
}

/* Footer */

footer#footer.site-footer {
	background-color: #1f3d00;
	color: #6a7e56;
	padding-top: 25px;
}

footer#footer.site-footer a {
	color: #fff;
}

footer#footer.site-footer a:hover {
	color: #7ab029;
}

footer#footer.site-footer p {
	font-size: 14px;
}

.footer-text-rechts {
	padding-right: 20px;
}

.mobile-footer {
	display: none;
}

@media screen and (max-width: 900px) {
	.desktop-footer {
		display: none;
	}
	.mobile-footer {
	display: block;
}
}


/* Einblicke Grid */

span.vc_gitem-post-category-name {
	color: #fff;
	font-size: 13px;
}

div.vc_custom_heading.vc_gitem-post-data.vc_gitem-post-data-source-post_title {
	margin-bottom: 0px !important;
}


/* ===== Text-Transition (von links einfliegen) ===== */
/* Variante A: generisch – wirkt auf den Hover-Inhalt (zone-b) */
.vc_grid-item .vc_gitem-zone-b > * {
  opacity: 0;
  transform: translateX(-18px);
  transition: opacity .45s ease, transform .45s ease;
  will-change: opacity, transform;
}

/* beim Hover sichtbar u. an Position */
.vc_grid-item:hover .vc_gitem-zone-b > * {
  opacity: 1;
  transform: translateX(0);
}

/* leichte Staffelung: Titel zuerst, Kategorie danach (falls vorhanden) */
.vc_grid-item .vc_gitem-zone-b .vc_gitem-post-data:nth-child(1),
.vc_grid-item .vc_gitem-zone-b .vc_custom_heading:nth-child(1) {
  transition-delay: .05s;
}
.vc_grid-item .vc_gitem-zone-b .vc_gitem-post-category,
.vc_grid-item .vc_gitem-zone-b .vc_custom_heading:nth-child(2) {
  transition-delay: .15s;
}

/* ===== Overlay-Farbe im Hover (wenn du zone-b als Overlay nutzt) ===== */
.vc_grid-item .vc_gitem-zone-b {
  background: rgba(0, 128, 0, .45); /* Grün halbtransparent */
  transition: background-color .3s ease;
}

/* ===== Accessibility: reduzierte Bewegungen respektieren ===== */
@media (prefers-reduced-motion: reduce) {
  .vc_grid-item,
  .vc_grid-item .vc_gitem-zone-a,
  .vc_grid-item .vc_gitem-zone-b > * {
    transition: none !important;
  }
}

/* Beim Hover reinfahren */
.vc_grid-item:hover .vc_gitem-zone-b .zsw-meta {
  opacity: 1;
  transform: translateX(0);
}


/* === BILD Hover === */


/* Der äußere Grid-Container */
.vc_grid-item {
  overflow: hidden; /* verhindert, dass die Animation rausläuft */
}

.zsw-grid-item {
  position: relative;
  background-size: cover;
  background-position: center;
  transition: transform 0.5s ease-in-out;
  transform: scale(1);
}

.vc_gitem-animated-block:hover .zsw-grid-item {
  transform: scale(1.1);
}

/* Filter oben */

li.vc_grid-filter-item {
	font-family: 'Open Sans';
	font-weight: 400;
	text-transform: uppercase;
	color: #555;
}

.vc_grid-filter.vc_grid-filter-size-md .vc_grid-filter-item {
	padding: 5px 20px !important;
	border-color: #5b9b19 !important;
	background-color: transparent !important;
}

.vc_grid-filter.vc_grid-filter-size-md .vc_grid-filter-item:hover,
.vc_grid-filter.vc_grid-filter-bordered > .vc_grid-filter-item.vc_active {
	color: #fff !important;
	background-color: #5b9b19 !important;
}

.vc_grid-filter.vc_grid-filter-color-white > .vc_grid-filter-item:hover > span,
.vc_grid-filter.vc_grid-filter-bordered > .vc_grid-filter-item.vc_active > span {
	color: #fff !important;
}

.vc_grid-filter.vc_grid-filter-bordered > .vc_grid-filter-item:nth-child(n+2) {
	margin-left: 10px !important;
}

.vc_btn3.vc_btn3-color-white, .vc_btn3.vc_btn3-color-white.vc_btn3-style-flat {
	background-color: transparent !important;
  color: #555 !important;
  border: 1px solid #5b9b19;
font-family: 'Open Sans';
  text-transform: uppercase;
	font-size: 18px;
}

.vc_btn3.vc_btn3-color-white, .vc_btn3.vc_btn3-color-white.vc_btn3-style-flat:hover {
	border: 1px solid #5b9b19;
	background-color: #5b9b19 !important;
	color: #fff !important;
}


.vc_grid-filter li span[data-vc-grid-filter-value="*"],
.vc_grid-filter li a[data-vc-grid-filter-value="*"],
.vc_grid-filter li:has([data-vc-grid-filter-value="*"]) {
  display: none !important;
}

/* ============================
   WPBakery Post Grid Filter – sichtbar unter 768px
   ============================ */
/* Filter-Leiste auch unter 768px sichtbar halten */
@media (max-width: 768px) {
  html body.vc_responsive .vc_grid-filter:not(.vc_gitem-post-data) {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 3px;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    overflow: visible !important;
	  font-size: 12px;
  }
	.vc_btn3.vc_btn3-color-white, .vc_btn3.vc_btn3-color-white.vc_btn3-style-flat {
	font-size: 12px;
}
}
	@media (max-width: 485px) {
		.vc_grid-filter.vc_grid-filter-size-md .vc_grid-filter-item {
			padding-left: 7px !important;
			padding-right: 7px !important;
		}
		html body.vc_responsive .vc_grid-filter:not(.vc_gitem-post-data) {
			gap: 0px;
			font-size: 10px;
		}
		.vc_grid-filter.vc_grid-filter-bordered > .vc_grid-filter-item:nth-child(n+2) {
			margin-left: 5px !important;
		}
	}
	
	
  /* Dropdown/Wrapper immer verstecken */
  html body.vc_responsive .vc_grid-filter-select,
  html body.vc_responsive .vc_grid-filter-select-wrapper,
  html body.vc_responsive select.vc_grid-filter-select { display: none !important; }
}

/* Sicherheit: auch ohne Media Query die UL immer erlauben */
.vc_grid-filter.vc_grid-filter-dropdown .vc_grid-filter-list { display: flex !important; }
.vc_grid-filter .vc_grid-filter-list { display: flex; flex-wrap: wrap; gap: 10px; }
.vc_grid-filter .vc_grid-filter-list li { margin: 0 !important; }

/* „Alle“-Button per CSS verstecken (falls mal da) */
.vc_grid-filter [data-vc-grid-filter-value="*"] { display: none !important; }
/* und wenn ein leeres li übrig bleibt, ausblenden */
.vc_grid-filter li:empty { display: none !important; }

/* Moderner Browser: ganzes <li> verstecken, wenn es den *-Button enthält */
.vc_grid-filter li:has([data-vc-grid-filter-value="*"]) { display: none !important; }





/* Mobile */


/* Menücontainer */
#mobile-dropdown.clr {
  position: absolute;
  top: 7rem;           /* Abstand von oben */
  right: 1rem;         /* Menü nach rechts schieben */
  background: #fff;
  padding: 0.5rem 0;
  box-shadow: 0 4px 20px rgba(0,0,0,0.15);
  width: 180px;        /* kannst du nach Wunsch anpassen */
  z-index: 9999;
  text-align: left;    /* Text bleibt linksbündig */
}

/* Liste und Links */
#mobile-dropdown.clr ul,
#mobile-dropdown.clr li {
  margin: 0;
  padding: 0;
  list-style: none;
}

#mobile-dropdown.clr a {
  display: block;
  padding: 0.6rem 1rem;
  color: #555;
  text-decoration: none;
  border-bottom: 1px solid #eee;
  transition: background 0.2s ease, color 0.2s ease;
	text-align: center;
}

/* Letztes Element ohne Border */
#mobile-dropdown.clr li:last-child a {
  border-bottom: none;
}

#mobile-dropdown.clr {
  left: auto !important;
}



@media screen and (max-width: 768px) {
	  h3 {
    font-size: 35px !important;
	  line-height: 38px !important;
  }
	.kontakt-text p,
	.impressum-text p {
		font-size: 16px;
	}
	
	.bg-kontakt {
  background-image: url('/wp-content/uploads/2025/10/slider_zsw_kontakt.jpg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
	background-attachment: scroll;
   overflow: hidden;
	padding-top: 20px;
		padding-bottom: 0px;
  }

}

@media screen and (max-width: 440px) {
.footer-text-rechts a {
	font-size: 10px;
}

	}

/* Einblicke Grid mobile */

/* NUR dieses Grid */
.einblicke-mobile .vc_grid-items,
.einblicke-mobile .vc_grid-list {
  display: block !important;  /* JS-Layouts neutral */
}

/* 2 Spalten per Float, stabile Breiten */
.einblicke-mobile .vc_grid-item {
  float: left !important;
  width: 50% !important;
  max-width: 50% !important;
  left: auto !important;
  top: auto !important;
  position: relative !important;
  margin: 0 !important;
}

/* Clearfix */
.einblicke-mobile .vc_grid-items::after,
.einblicke-mobile .vc_grid-list::after {
  content: "";
  display: block;
  clear: both;
}



/* U-TURN UNTERSEITE AB HIER */

.social-row2 {
	position: absolute;
}

/* Menü rechts ausrichten – nur Seite 453 */
body.page-id-453 #site-navigation-wrap {
    margin-left: auto !important;
}


body.page-id-453 #main #content-wrap {
	padding-bottom: 0px !important;
}

body.page-id-453 div#primary.content-area.clr {
	margin-bottom: 0px;
}

body.page-id-453  #site-logo #site-logo-inner a img {
	max-width: 570px;
	padding-top: 10px;
}

body.page-id-453 #site-logo img {
  cursor: default !important;
	max-width: 50%;
  padding-top: 10px;
  padding-bottom: 10px;
}

/* nur Seite 453 */
body.page-id-453 #site-header:not(.is-sticky) img.sticky-logo { display: none !important; }
body.page-id-453 #site-header.is-sticky img.custom-logo { display: none !important; }

/* Normales Menü auf Seite 453 transparent */
body.page-id-453 #site-header {
    background: transparent !important;
}

/* Sticky Menü transparent */
body.page-id-453 #site-header.is-sticky {
    background: #fff !important;
}

body.page-id-453 #site-header,
body.page-id-453 #site-header.is-sticky {
    box-shadow: none !important;
    border-bottom: none !important;
}

body.page-id-453 .is-sticky #site-navigation-wrap .dropdown-menu > li > a {
	color: #fff;
	font-size: 16px;
	padding: 0 16px;
	text-transform: none;
}

ul#menu-uturn.main-menu.dropdown-menu.sf-menu a.menu-link {
	font-size: 16px;
	padding: 0 16px;
	text-transform: none;
	padding-top: 30px;
}

/* ----- Seite 453: Menü auf Höhe der Logounterkante ----- */
body.page-id-453 #site-header-inner {
  display: flex;
  align-items: flex-end !important; /* Menü unten am Header-Inhalt ausrichten */
}

/* Abstand zwischen Logo und Menü minimal angleichen */
body.page-id-453 #site-logo {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

body.page-id-453 #site-navigation-wrap {
  margin-bottom: 0 !important;
  padding-bottom: 10px; /* <— Feintuning, + / - 1–2px bei Bedarf */
}

/* Sticky Header – gleiches Verhalten */
body.page-id-453 #site-header.is-sticky #site-header-inner {
  align-items: flex-end !important;
}

body.page-id-453 #site-header.is-sticky #site-navigation-wrap {
  padding-bottom: 3px; /* gleiche Höhe wie normal */
}

/* optional – gleiche Schriftvertikale im Menü */
body.page-id-453 #site-header #site-navigation .menu-link {
  line-height: 1.2 !important;
}



/* Scroll Menü */

/* Seite 453: Sobald #contentstart gescrolled ist → Header einfärben */
body.page-id-453.past-contentstart #site-header,
body.page-id-453.past-contentstart #site-header.is-sticky {
  background: linear-gradient(
    90deg,
    rgb(31 120 200 / 0.8) 0%,
    rgb(13 75 134 / 0.8) 100%
  ) !important;
	backdrop-filter: blur(8px) saturate(130%);
}


body.page-id-453 {
	background: linear-gradient(90deg, #1f78c8 0%, #0d4b86 100%);
}

body.page-id-453 a,
body.page-id-453 p {
	color: #fff;
}

body.page-id-453 p {
	font-size: 20px;
  line-height: 1.3;
}

body.page-id-453 #content-wrap p a,
body.page-id-453 #content-wrap .event-table a {
  text-decoration: underline !important;
}

body.page-id-453 a:hover {
	/* font-weight: bold; */
	color: #00adee !important;
	text-shadow: 1px 0 0 currentColor; 
}


.headerbutton {
	position: absolute;
right: 16%;
  top: 42%;
}

.headersocial {
	position: absolute;
  bottom: 15%;
  left: 5%;
}

.headersocial2 {
	position: absolute;
  bottom: 10%;
  left: 5%;
}

span.uturn-h1-first {
	font-family: 'Montserrat';
	font-size: 50px;
	color: #002060;
	font-weight: bold;
	text-shadow: 1px 1px 2px grey;
}

span.uturn-h1-second {
	font-family: 'Montserrat';
	font-size: 50px;
	color: #00B0F0;
	font-weight: bold;
	text-shadow: 1px 1px 2px grey;
}

/* 1400px bis 1000px */
@media (max-width: 1400px) and (min-width: 1000px) {
    span.uturn-h1-second,
	span.uturn-h1-first
	{
        font-size: 40px;
    }
}

/* 1000px bis 500px */
@media (max-width: 1000px) and (min-width: 500px) {
    span.uturn-h1-second,
	span.uturn-h1-first{
        font-size: 30px;
    }
}

/* unter 500px */
@media (max-width: 500px) and (min-width: 320px) {
    span.uturn-h1-second,
	span.uturn-h1-first{
        font-size: 26px;
    }
}

/* unter 320px */
@media (max-width: 320px) {
    span.uturn-h1-second,
	span.uturn-h1-first {
        font-size: 22px;
    }
}

.imgshadow img {
	box-shadow: 7px -5px 8px -5px white;
}


div.custom-footer.footer-id-477 {
  background: linear-gradient(90deg, #004c97 0%, #008ed6 50%, #00b1f1 100%);
  padding-top: 25px;
}


div.custom-footer.footer-id-477 p,
div.custom-footer.footer-id-477 a {
	color: #fff;
	font-size: 16px;
}

.page-id-453 footer#footer.site-footer {
	display: none;
}

div.custom-footer.footer-id-477 div.vc_row.wpb_row.vc_row-fluid.vc_row-o-content-middle.vc_row-flex {
	 margin: auto auto;
	max-width: 1400px;
}

div.custom-footer.footer-id-477 a:hover {
	color: #004c97 !important;
}

span.uturn-zsw p,
span.uturn-zsw a {
	font-size: 12px !important;
}

.event-table {
    width: 100%;
    border-collapse: collapse;
    color: #fff;
    font-family: "Open Sans", sans-serif;
    font-size: 20px;
  line-height: 1.3;
}
  
  .event-table td {
    padding: 8px 0;
    vertical-align: top;
    border: none;
  }
  .event-table ul {
    margin: 4px 0 0 0;
    list-style-type: none;
  }
  .event-table ul li::before {
    content: "– ";
    color: #fff;
  }

/* Unter 800px: Abstand zwischen den Spalten */
@media (max-width: 800px) {
  .event-table td:first-child {
    padding-right: 7px; /* Gap zwischen den beiden Spalten */
  }
}

.schedule-badge {
	position: absolute;
  left: -220px;
}

.fanshop-bg {
	background-image: url('/wp-content/uploads/2025/11/fanshop_bg.jpg');
	background-position: center center;
	background-size: cover;
	min-height: 1500px;
}

.fanshop-info {
	position: absolute;
  top: 14%;
  left: 22%;
}

.fanshop-text:hover {
	color: #00B0F0 !important;
}

.uturnplakat {
	position: absolute;
right: 10%;
  top: 10%;
}

.ticketbutton {
	position: absolute;
	bottom: 20%;
	left: 5%;
	right: 5%;
}

.fanbutton {
	position: absolute;
	bottom: 50%;
	left: 5%;
}

.galeriebutton {
	position: absolute;
right: 10%;
  bottom: 10%;
}


/* MOBILE */


@media screen and (max-width: 1550px) { body.page-id-453 #site-logo { max-width: 40%; } } 

@media screen and (max-width: 1140px) { body.page-id-453 #site-logo { max-width: 85%; } .fanbutton img { max-width: 80% !important; } } 

@media screen and (max-width: 1600px) { .headerbutton img { max-width: 85% !important; } } 

@media screen and (max-width: 1000px) { 
	.headerbutton img { max-width: 55% !important; } 
	
	body.page-id-453 p, 
	.event-table { font-size: 16px; 
	} 
	.schedule-badge img { 
		max-width: 80% !important; 
	} 
	.galeriebutton img { 
		width: 80% !important; 
	} 
	body.page-id-453 p {
	font-size: 16px;
}
} 

@media screen and (max-width: 700px) { 
	.headerbutton img { max-width: 35% !important; } 
	.headerbutton { right: 20%; top: 50%; }
	.galeriebutton {
		display: none;
	}
} 

@media screen and (max-width: 550px) { 
	.headerbutton { right: 13%; top: 40%; } 
		body.page-id-453 p {
	font-size: 14px !important;
} 
	.mobile-no {
	display: none;
}
}

@media screen and (max-width: 1200px) { 
	.schedule-badge { left: -140px; bottom: -60px; } 
	.partner-mobile { display: block !important; } 
	.partner-desktop { display: none; } } 
.partner-mobile { display: none; } 

@media screen and (max-width: 850px) { 
	.schedule-badge { left: -60px; } 
	.fanbutton img { max-width: 60% !important; } 
		.galeriebutton img { 
		width: 70% !important; 
	}
	.galeriebutton {
		bottom: 0%;
	}
		.uturn-footer-links2 {
			display: block !important;
	}
	.uturn-footer-links {
		display: none;
	}
	#zsw-im-footer {
		display: none !important;
	}
} 

@media screen and (max-width: 767px) { 
	body.page-id-453 p, 
	.event-table { font-size: 14px; } 
	.schedule-badge { left: 55%; top: -5%; } 
	.schedule-badge img { max-width: 90% !important; } 
	.fanbutton { bottom: -2% !important; left: 0% !important; } 
	.fanbutton img { max-width: 54% !important; } 
	.fanshop-section-mobile { display: block !important; } 
	.fanshop-section { display: none; } 
	.fanshop-info-mobile { margin-left: 5%; margin-right: 2%; } 
	
			.galeriebutton img { 
		width: 50% !important; 
	}
	.galeriebutton {
		bottom: 0%;
	}
	.plakat-unten img {
		width: 40% !important;
	}
} 

.fanshop-section-mobile { display: none; } 

@media screen and (max-width: 1400px) { 
	.fanbutton { bottom: 5%; left: 40%; } 
	.fanbutton img { max-width: 80%; } 
	.uturnplakat {
		right: 3% !important;
	}
}

@media screen and (max-width: 650px) {
	  .galeriebutton {
    bottom: -10%;
    right: 10px;
  }
}

@media screen and (max-width: 1700px) { 
	.uturnplakat { top: 3%; } 
	.uturnplakat img { max-width: 90% !important; }
	.plakat-unten img {
		width: 70%;
	}
}

.uturn-footer-links2 {display: none;}

/* PLAKAT TERMINE */

/* --- Standard (über 1700px) --- */
.uturnplakat {
  position: absolute;
  right: 10%;
  top: 10%;
}

.uturnplakat img {
  width: 100%;
  height: auto;
  display: block;
}

/* --- 1500px bis 1700px: 90% Größe --- */
@media (max-width: 1700px) and (min-width: 1500px) {
  .uturnplakat img {
    width: 90%;
  }
}

/* --- 1170px bis 1500px: 70% Größe --- */
@media (max-width: 1500px) and (min-width: 1170px) {
  .uturnplakat img {
    width: 70%;
  }
}

/* --- 1001px bis 1170px: 60% Größe + nach rechts rücken --- */
@media (max-width: 1170px) and (min-width: 1001px) {
  .uturnplakat {
    position: absolute;
    right: 0%;
    top: 5%;
  }
  .uturnplakat img {
    width: 60%;
  }
}

/* --- Unter 1000px: ausblenden --- */
@media (max-width: 1000px) {
  .uturnplakat {
    display: none !important;
  }
}

/* ====== BURGER ICON – Seite 453, mobil ====== */
@media (max-width: 1140px) {
  body.page-id-453 .oceanwp-mobile-menu-icon.mobile-right {
    position: absolute;
    right: 20px;          /* Abstand vom rechten Rand */
    top: 20px;            /* optional: leicht nach unten setzen */
    z-index: 9999;
  }

  body.page-id-453 .oceanwp-mobile-menu-icon.mobile-right a.mobile-menu {
    color: #ffffff !important;       /* Burger-Icon weiß */
    font-size: 30px !important;      /* größerer Icon */
  }

  /* Optional: Hover leicht heller */
  body.page-id-453 .oceanwp-mobile-menu-icon.mobile-right a.mobile-menu:hover {
    color: rgba(255,255,255,0.8) !important;
  }
}



/* ===============================
   F A N S H O P   S E C T I O N
   =============================== */

/* U-TURN: Text über dem Bild, immer am Content ausgerichtet */
body.page-id-453 .fanshop-section{ 
  position: relative;
  width: 100%;
}

body.page-id-453 .fanshop-section .fanshop-info2 {
  position: absolute;
  top: 9%;
  /* Linke Kante = Content-Left:
     - bei breiten Screens: 50% - 700px (1400/2)
     - bei schmalen Screens: min. 20px Abstand zum Rand */
  left: max(70px, calc(50% - 700px));
  /* Breite = Contentbreite, aber nie breiter als Viewport - 40px */
  width: min(1400px, calc(100% - 40px));
  color: #fff;
  z-index: 10;
  text-align: left;
}

/* nur vertikal etwas nachstellen auf kleineren Geräten — keine Änderung der linken Kante */
@media (max-width: 1024px) {
  body.page-id-453 .fanshop-section .fanshop-info2
	{ top: 10%; }
}
@media (max-width: 768px) {
  body.page-id-453 .fanshop-section .fanshop-info2 { top: 8%; }
}

body.page-id-453 .uturn-h1-first { color: #0d4b86; }
body.page-id-453 .uturn-h1-second { color: #27b0ff;}

/* ============================================
   TERMINE & KONZERTE – Text im Bild ausrichten
   ============================================ */
/* --- Abschnittsgrundlage --- */
body.page-id-453 .termine-section {
  position: relative;
  width: 100%;
}

/* Overlay über dem Hintergrundbild */
body.page-id-453 .termine-info {
  position: absolute;
  top: 12%; /* nach Bedarf anpassen */
  left: 0;
  right: 0;
  z-index: 10;
  color: #fff;
}

/* --- Innerer Wrapper: am Content orientiert --- */
body.page-id-453 .termine-info-inner {
  max-width: 1400px;
  margin: 0 auto;
  text-align: left;
  padding-inline: 0; /* ab 1400px kein Innenrand */
}

/* 1024px bis 1400px: 60px Rand */
@media (max-width: 1400px) and (min-width: 1024px) {
  body.page-id-453 .termine-info-inner {
    padding-inline: 60px;
  }
}

/* 768px bis 1023px: 40px Rand */
@media (max-width: 1023px) and (min-width: 768px) {
  body.page-id-453 .termine-info-inner {
    padding-inline: 40px;
  }
  body.page-id-453 .termine-info {
    top: 10%;
  }
}

/* Unter 768px: 24px Rand */
@media (max-width: 767px) {
  body.page-id-453 .termine-info-inner {
    padding-inline: 24px;
  }
  body.page-id-453 .termine-info {
    top: 8%;
  }
}

/* --- Headline-Styling --- */
body.page-id-453 .uturn-h1-first,
body.page-id-453 .uturn-h1-second {
  display: inline-block;
  white-space: nowrap;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.02em;
}

body.page-id-453 .uturn-h1-first {
  color: #0d4b86;
}

body.page-id-453 .uturn-h1-second {
  color: #27b0ff;
}


/************************************
 * Borlabs Farben – nur Seite 453
 ************************************/

/* Bar-Hintergrund unten (Bar / Bar Advanced) */
body.page-id-453 #BorlabsCookieBox._brlbs-bar {
  background: linear-gradient(90deg, #1f78c8 0%, #0d4b86 100%) !important;
  border: none !important;
}

/* ALLE Buttons innerhalb der Borlabs-Box: Bar + Modal */
body.page-id-453 #BorlabsCookieBox ._brlbs-btn,
body.page-id-453 #BorlabsCookieBox .brlbs-btn,
body.page-id-453 #BorlabsCookieBox button,
body.page-id-453 #BorlabsCookieBox ._brlbs-btn a,
body.page-id-453 #BorlabsCookieBox .brlbs-btn a {
  background-color: #1f78c8 !important;
  border-color: #1f78c8 !important;
  color: #ffffff !important;
}

/* Hover-Zustand der Buttons */
body.page-id-453 #BorlabsCookieBox ._brlbs-btn:hover,
body.page-id-453 #BorlabsCookieBox .brlbs-btn:hover,
body.page-id-453 #BorlabsCookieBox button:hover,
body.page-id-453 #BorlabsCookieBox ._brlbs-btn a:hover,
body.page-id-453 #BorlabsCookieBox .brlbs-btn a:hover {
  background-color: #0d4b86 !important;
  border-color: #0d4b86 !important;
  color: #ffffff !important;
}

/* Links im Text (Bar + Modal) */
body.page-id-453 #BorlabsCookieBox a {
  color: #ffffff !important;
}

/* Switch / Toggle im Modal (optional, damit der Grünschimmer weg ist) */
body.page-id-453 #BorlabsCookieBox .brlbs-switch .brlbs-switch-handle,
body.page-id-453 #BorlabsCookieBox ._brlbs-switch ._brlbs-switch-handle {
  background-color: #1f78c8 !important;
}

body.page-id-453 #BorlabsCookieBox .brlbs-switch input:checked + .brlbs-switch-track,
body.page-id-453 #BorlabsCookieBox ._brlbs-switch input:checked + ._brlbs-switch-track {
  background-color: #0d4b86 !important;
}

/* Borlabs Modal – Textfarbe nur auf Seite 453 */
body.page-id-453 #BorlabsCookieBox,
body.page-id-453 #BorlabsCookieBox * {
    color: #555 !important;
}

/* Aber: Buttons sollen WEISS bleiben */
body.page-id-453 #BorlabsCookieBox ._brlbs-btn,
body.page-id-453 #BorlabsCookieBox .brlbs-btn,
body.page-id-453 #BorlabsCookieBox button,
body.page-id-453 #BorlabsCookieBox ._brlbs-btn *,
body.page-id-453 #BorlabsCookieBox .brlbs-btn *,
body.page-id-453 #BorlabsCookieBox button * {
    color: #fff !important;
}

  .partner-logos-footer {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    padding: 20px 0;
  }

  .partner-logos-footer .partner-link-footer img {
    width: 120px;
    height: auto;
    transition: transform 0.3s ease, filter 0.3s ease;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.3));
  }

  .partner-logos-footer .partner-link-footer:hover img {
    transform: scale(1.1);
    filter: drop-shadow(0 4px 8px rgba(0,0,0,0.4));
  }

  /* einzig gewünschte Änderung */
  @media (max-width: 850px) {
    .partner-logos-footer {
      justify-content: flex-start;
    }
    .partner-logos-footer .partner-link-footer img {
      width: 70px;
    }
  }


 .fixed-social-icons {
    position: fixed;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
    z-index: 9999;
  }

  .fixed-social-icons .social img {
    width: 60px;
    height: auto;
    transition: transform 0.3s ease, filter 0.3s ease;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.3));
  }

  .fixed-social-icons .social:hover img {
    transform: scale(1.1);
    filter: drop-shadow(0 4px 8px rgba(0,0,0,0.4));
  }

  /* responsive – kleinere Icons auf mobilen Geräten */
  @media (max-width: 768px) {
    .fixed-social-icons .social img { width: 40px; }
  }

  @media (max-width: 480px) {
    .fixed-social-icons .social img { width: 36px; }
  }

  .svg-hotspots {
    width: 100%;
    max-width: 2600px;
    margin: 0 auto;
  }

  .svg-hotspots svg {
    width: 100%;
    height: auto;
    display: block;
  }

  /* Hover-Effekt mit weichem Rand */
  .svg-hotspots a:hover circle,
  .svg-hotspots a:hover rect {
    fill: rgba(255, 255, 255, 0.25);
    filter: blur(6px) drop-shadow(0 0 18px rgba(31,120,200,0.6));
  transition: all 0.4s ease;
  }

 .svg-hotspots {
    width: 100%;
    max-width: 2600px;
    margin: 0 auto;
  }

  .svg-hotspots svg {
    width: 100%;
    height: auto;
    display: block;
  }

  /* Hover-Effekt mit weichem Rand */
  .svg-hotspots a:hover circle,
  .svg-hotspots a:hover rect {
    fill: rgba(255, 255, 255, 0.25);
    filter: blur(6px) drop-shadow(0 0 18px rgba(31,120,200,0.6));
  transition: all 0.4s ease;
  }

  /* responsive Skalierung */
  .svg-hotspots2 {
    width: 100%;
    max-width: 2600px;
    margin: 0 auto;
  }

  .svg-hotspots2 svg {
    width: 100%;
    height: auto;
    display: block;
  }

/* Hover-Effekt mit weichem Rand */
  .svg-hotspots2 a:hover circle,
  .svg-hotspots2 a:hover rect {
    fill: rgba(255, 255, 255, 0.25);
    filter: blur(6px) drop-shadow(0 0 18px rgba(31,120,200,0.6));
  transition: all 0.4s ease;
  }

 .partner-logos {
    display: flex;
    justify-content: left;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
  }

  .partner-logos .partner-link img {
    width: 120px;
    height: auto;
    transition: transform 0.3s ease, filter 0.3s ease;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.3));
  }

  .partner-logos .partner-link:hover img {
    transform: scale(1.1);
    filter: drop-shadow(0 4px 8px rgba(0,0,0,0.4));
  }

  @media (max-width: 768px) {
    .partner-logos .partner-link img {
      width: 90px;
    }
  }