/* MT global styles placeholder */
html body .header-txt {
	color: #FFFFFF !important;
    text-align: left;
    background-color: #00569dc7;
    padding: 20px 50px !important;
    display: inline-block;
}
.no-space p{margin-bottom:0!important;padding-bottom:0!important;}
.menu-footer p{margin-bottom:5px!important;}
.us-btn-style_9{border:1px solid transparent!important;}
.us-btn-style_9:hover{border:1px solid white!important;}

@media screen and (max-width: 991px) {
	#header1,
	#event-header{
		height: 40vh !important;
		min-height: auto!important;
	}
	.w-popup-box-h #header1 {
        height:auto!important;
        min-height: auto !important;
    }
}
@media screen and (max-width: 991px) {
	.menu-header{display:none;}
	html body .ush_hwrapper_1{
		display: flex;
    	justify-content: space-between;
	}
}
html body .w-popup-wrap{
	background: rgba(255, 255, 255, 0.10) !important;
    box-shadow: 0 3px 0 0 rgba(0, 0, 0, 0.10) !important;
    backdrop-filter: blur(5px) !important;
}
/* flex row */
#services-grid  .g-cols.vc_row {
  display: flex !important;
  flex-wrap: nowrap !important;
}
body {
--h1-font-size: clamp(24px, 5vw, 48px)!important;
--h2-font-size: clamp(20px, 3.5vw, 40px)!important;
--h3-font-size: clamp(18px, 3vw, 30px)!important;
--h4-font-size: clamp(16px, 2.5vw, 26px)!important;
--h5-font-size: clamp(14px, 2vw, 22px)!important;
--h6-font-size: clamp(12px, 1.8vw, 18px)!important;
}
.home-events .events-grid  .eventsubtitle {font-size:clamp(20px, 1.8vw, 23px) !important;}
html body{
	font-family: Montserrat, sans-serif;
    font-size: 18px;
    line-height: 28px;
    font-weight: 400;
    text-transform: none;
    font-style: normal;
    letter-spacing: 0em;
}
html body #printform{
	    background: #efefef!important;
}
.events-grid .event-card-header {font-size:clamp(20px, 1.8vw, 25px) !important;}
.event-card{
	    justify-content: start!important;
}
.event-card .event-card-wrapper-second{padding-top:20px;}
.events-grid .eventsubtitle {font-size:clamp(20px, 1.8vw, 25px) !important;}
.events-list-page .event-card .event-card-wrapper-second {
       padding-top:0px;
    }
/* reset column widths, allow flex growth */
#services-grid .g-cols.vc_row > .wpb_column.blend-bg {
  flex: 1 1 0% !important;     /* equal by default */
  width: auto !important;      /* override inline 25% */
  transition: flex 0.5s ease;
  position: relative;
  overflow: hidden;
}

/* grow hovered column */
#services-grid .g-cols.vc_row > .wpb_column.blend-bg:hover {
  flex: 1.5 1 0% !important;     /* doubles width smoothly */
}

/* overlay layer */
#services-grid .g-cols.vc_row > .wpb_column.blend-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: #00569d;
  opacity: 0.85;
  mix-blend-mode: multiply;   /* key fix */
  transition: opacity 0.4s ease;
  z-index: 1;
}

/* overlay fades away on hover */
#services-grid .g-cols.vc_row > .wpb_column.blend-bg:hover::after {
  opacity: 0;
}

/* content sits above overlay */
#services-grid .g-cols.vc_row > .wpb_column.blend-bg > .vc_column-inner {
  position: relative;
  z-index: 2;
  padding-top: 80px !important;
  padding-bottom: 80px !important;
}
#services-grid {
  height: calc(100vh - 100px);   /* adjust to your design */
  overflow: hidden;
}
#services-grid .l-section-h.i-cf,
#services-grid .l-section-h.i-cf .g-cols.vc_row.via_grid.cols_4{
	height:100%!important;
}
#services-grid  .vc_column-link{
	z-index:9!important;
}

.footer-responsive{
		 margin-left: 11% !important; 
   		 margin-right: 11% !important;
	}


.search-events-container{display:flex;}
.search-events-container #filterEvents{
	box-shadow: none;
    border: 1px solid #f5f2f2;
    border-radius: 6px;
    margin-right: 10px;
}
.search-events-container #resetFilterBtn{    min-width: 190px;color:#fff!important;}
.search-events-container .us-btn-style_8:hover::after {
    z-index: -1;
}
@media screen and (max-width: 1599px) {
	.search-events{
		margin-bottom: 10px;
	}
	.w-tabs-section-header{border-radius:6px;}
}
@media screen and (min-width: 1600px) {
	.search-events{
		position: absolute;
		width: 40%;
		right: 0;
		z-index: 9;
	}
	
}
@media screen and (min-width: 992px) {
	#services-grid .blend-bg h3.w-text.has_text_color{
		width: 20vw;
        margin: 0 auto;
	}
}
@media screen and (min-width: 992px) and (max-width: 1200px) {
	#services-grid .blend-bg h3.w-text.has_text_color{
		font-size:24px;
	}
}


/* formstyle
 * 
 @media screen and (min-width: 2560px) {
	html body {
		font-size: clamp(14px, 2vw, 25px)!important;	
		--h1-font-size: clamp(24px, 5vw, 55px) !important;
		--h2-font-size: clamp(20px, 3.5vw, 45px) !important;
		--h3-font-size: clamp(18px, 3vw, 35px) !important;
		--h4-font-size: clamp(16px, 2.5vw, 30px) !important;
		--h5-font-size: clamp(14px, 2vw, 28px) !important;
		--h6-font-size: clamp(12px, 1.8vw, 26px) !important;
	}
	input[type=text], input[type=number], input {font-size: clamp(14px, 2vw, 25px)!important;}
}  


*/
#services-grid .blend-bg h4{min-height:63px;}
@media screen and (min-width: 1601px) {
	#services-grid {
		height: calc(100vh - 350px) !important;
	}
}
/* Mobile: allow 2 columns per row */
@media screen and (max-width: 992px) {
  #services-grid .g-cols.vc_row {
    flex-wrap: wrap !important; /* allow wrapping */
  }

  #services-grid .g-cols.vc_row > .wpb_column.blend-bg {
    flex: 1 1 50% !important;   /* two columns */
    width: 50% !important;      /* override inline */
    min-height: 200px;          /* optional: ensure some height */
    transition: none !important; /* disable hover grow on mobile */
  }

  #services-grid .g-cols.vc_row > .wpb_column.blend-bg:hover {
    flex: 1 1 50% !important; /* keep equal */
  }

}
@media screen and (min-width: 768px) and (max-width: 992px) {
	.footer-responsive{
		 margin-left: 0!important; 
   		 margin-right: 0!important;
	}
}

/*Event*/
.events-grid .event-card-header i.material-icons {
  display: none; /* hide the old icon */
}

.events-grid .event-card-header::before {
  content: "";
  display: inline-block;
  width: 50px;   /* adjust size */
  height: 40px;
  margin-right: 8px;
  background: url("/wp-content/uploads/2025/09/Gruppe-34.svg") no-repeat center/contain;
  vertical-align: middle;
}
.events-grid .eventsubtitle {padding-right:10%;}
.events-grid .typecatname, .events-grid .eventplace{padding-left:65px;}
.typecatname strong, .eventplace strong{font-weight:500!important;}
.events-grid .eventsubtitle {font-weight:600!important;}
.events-grid .event-card{
	padding: 50px 30px;
	min-height: auto;
}
.home-events .events-grid  .event-card{
	border: none !important;
    background: var(--color-chrome-toolbar);
    margin: 0px 15px;
    border-radius: 6px;
}
.events-list-page .events-grid .event-card:last-child{border-bottom:none!important;}

@media screen and (min-width: 992px) {
	html body .events-grid {gap:0}
	.event-card {
		border-right:0;
	}
	.event-card:last-child {    
		border-right: 1px solid #999;
	}
	.events-grid{
	    grid-template-columns: repeat(auto-fill, minmax(33%, 1fr));
	}
	
	.events-list-page .events-grid{display:block;}
	.events-list-page .events-grid .event-card{border:none!important;border-bottom:1px solid #999!important;}
	.events-list-page .event-card{
		display: flex;
		flex-direction: row;
		justify-content: flex-start;
	}
	.events-list-page .event-card .event-card-wrapper-first {flex:1;}
	.events-list-page .event-card .event-card-wrapper-second {flex:3;}
	.events-date-left{width:85%!important;}
}
@media screen and (max-width: 991px) {
	html body .events-grid {gap:0}
	.event-card {
		border-bottom:0;
	}
	.event-card:last-child {    
		border-bottom: 1px solid #999;
	}
	
	
}


.event-pagination{float:right;}
.event-pagination .pagination-btn{color:#C6C6C6}
.event-pagination .pagination-btn.active{color:#706F71}


/*breadcrumb*/
.g-breadcrumbs .fa-angle-right::before {
  content: "";
  display: inline-block;
  width: 9px; /* adjust size */
  height: 11px;
  background-image: url('/wp-content/uploads/2025/10/Polygon-3.svg');
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}
.g-breadcrumbs a span{color:#000;}
.white-bread.g-breadcrumbs a span{color:#fff;}
.ansprechpartner-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr); /* 4 columns */
  gap: 2rem; /* space between cards */
  padding: 0;
  margin: 0;
}

.ansprechpartner-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem; /* spacing between cards */
  padding: 0;
  margin: 0;
}
.single-partner .ansprechpartner-list {
    display: block;
    width: 65%;
 
}
/*partners*/
.partner-item {
  text-align: left;
  background: transparent; /* remove blue background */
  padding: 0;
  list-style: none;
}

.partner-item img {
  width: 100%;
  height: 500px; /* consistent height */
  object-fit: cover; /* keeps same proportions but crops consistently */
  margin-bottom: 0.75rem;
  max-width:100%;
  border-radius: 6px;
}

.partner-item h3 {
  font-weight: 600;
  color: #000;
  margin: 0 0 0.6rem 0;
  padding-top: 0;
}

.partner-item p {
  margin: 0.2rem 0;
  font-size: 0.95rem;
  line-height: 1.4;
  color: #222;
}

/* Responsive adjustments */
@media screen and (max-width: 1200px) {
  .ansprechpartner-list {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media screen and (max-width: 900px) {
  .ansprechpartner-list {
    grid-template-columns: repeat(2, 1fr);
  }
	div.popup-locations .w-popup-box-content .partner-item img,
	.partner-item img {
	  height: auto; /* consistent height */
	}
}

@media screen and (max-width: 600px) {
  .ansprechpartner-list {
    grid-template-columns: 1fr;
  }
}

.hotspot-row .l-section-h.i-cf{padding-top:0!important;}
.hotspot-row  .aio-icon-img .img-icon{cursor:pointer;}
.hotspot-row .ult_hotspot_container{margin-bottom:0!important;}
.popup-locations .w-popup-box-content{margin:6%;border-radius: 6px;}
.popup-locations .w-popup-box-content .partner-item img{height:300px;}
.list-locations-text span.w-text-h{
	cursor:pointer;
}
.list-locations-text span.w-text-h{
	color:#00569d;
}
.list-locations-text span.w-text-h:hover{
	color:#E88300;
}
.messen-section{
	padding-left:5%;
	padding-right:5%;
}
.messen-section img{
	border: 2px solid #06569C;
}
html body .w-popup-box-content h2{
	    color: var(--h2-color, inherit);
}

/*about us page*/
/* Base container */
.hover-card {
  position: relative;
  overflow: hidden;
  border-radius: 6px;
  cursor: pointer;
}

/* Image scaling on hover */
.hover-card img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.4s ease;
}

/* Title (always visible) */
.hover-card .hover-title {
  position: absolute;
  bottom: 1.5rem;
  left: 1.5rem;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 700;
  z-index: 2;
  margin: 0;
  pointer-events:none;
  color: #fff !important;
  position: absolute !important;
    left: 2rem !important;
    bottom: 30% !important;
    transform: translate(0%, -50%) !important;
    padding: 10px !important;
    background: var(--color-blue-trans) !important;
}

/* Hidden text block (appears on hover) */
.hover-card .hover-text {
  position: absolute;
  inset: 0; /* shorthand for top/right/bottom/left:0 */
  background: linear-gradient(180deg, transparent 0%, rgba(0, 86, 157, 0) 100%);
  color: #fff;
  padding: 5rem 2rem 1.5rem 2rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  opacity: 0;
  transition: all 0.4s ease;
  font-size: 1rem;
  z-index: 1;
    pointer-events:none;
}

/* Hover animation */
.hover-card:hover img {
  transform: scale(1.05);
}

.hover-card:hover .hover-text {
  opacity: 1;
  background: linear-gradient(
    180deg,
    transparent 70%,
    rgba(0, 86, 157, 0.92) 100%
  ) !important;
}

.hover-card:hover .hover-title {
  z-index: 3; /* keep title above gradient */
}


.toggle-content {
  display: none;
}
.toggle-content {
  scroll-margin-top: 120px; /* equals your header height */
}
.toggle-content.active {
  display: block;
  animation: fadeIn 0.3s ease-in-out;
}


@keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

/*END about us page*/
#event-contact-form{margin-top:-100px;}
.form-events-title{z-index:1;}


/*hotspot location*/

/* Core fix: make the hotspot coordinates relative to the image */

.hotspot-location  .aio-icon-img {
  position: relative;
  text-align: center; /* center text horizontally */
}

.hotspot-location .ult-hotspot-item .aio-icon-img::after {
  display: block;
  position: absolute;
  top: 100%; /* position text just below the image */
  left: 50%;
  transform: translateX(-50%); /* center horizontally */
  white-space: nowrap;
  color: #fff;
  font-weight: 600;
  font-size: 14px;
  padding: 4px 8px;
  border-radius: 4px;
  margin-top: 6px;
  font-size:20px!important;
  pointer-events: none; /* don’t affect clicks */
}
/*
.hotspot-location .ult-hotspot-item.bonn .aio-icon-img::after {
  content: "Bonn";
}
.hotspot-location .ult-hotspot-item.berlin .aio-icon-img::after {
	content: "Berlin";
}
.hotspot-location .ult-hotspot-item.bremen .aio-icon-img::after {
	content: "Bremen";
}
*/



/* MEnu */
/* ===========================
   VDBUM Popup Multi-Level Menu
   =========================== */

/* ===========================
   Popup Multi-Level Menu
   =========================== */
.w-menu.main-popup.layout_ver .menu>li {
	margin-bottom: 10px;
}
.w-menu.main-popup.layout_ver  {
	height: 60vh;
    scroll-behavior: smooth;
    overflow-y: scroll;
}
.w-menu.main-popup.layout_ver {
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(255,255,255,0.25) transparent;
}
/*scroll only the main parent of the nav*/
.w-menu.main-popup.layout_ver {
  height: 60vh;
  overflow: hidden; /* stop the entire nav from scrolling */
  display: flex;
  flex-direction: column;
}

/* make only the first-level <ul> scrollable */
.w-menu.main-popup.layout_ver > .menu {
  flex: 1 1 auto;
  overflow-y: auto;
  scroll-behavior: smooth;
}

/* END scroll only the main parent of the nav*/
/* WebKit browsers (Chrome, Edge, Safari) */
.w-menu.main-popup.layout_ver::-webkit-scrollbar {
  width: 10px;
}

.w-menu.main-popup.layout_ver::-webkit-scrollbar-track {
  background: transparent;
}

.w-menu.main-popup.layout_ver::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.); /* soft white */
  border-radius: 10px;
  transition: background 0.3s ease, box-shadow 0.3s ease;
}

.w-menu.main-popup.layout_ver::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 1);
  box-shadow: 0 0 6px rgba(255, 255, 255, 0.3);
}


html body .w-popup-closer:before{
	font-weight: 100;
    vertical-align: top;
    font-size: 50px;
}

html body .w-popup-wrap .w-popup-closer:focus,
html body .w-popup-wrap .w-popup-closer:focus-visible {
  outline: none;
  box-shadow: none;
  border: none;
}
.menu-popup {
  --menu-bg: #005a9c;
  --menu-hover: #0073cf;
  --menu-text: #ffffff;
  --submenu-bg: #004b82;
  --submenu-offset: 10px;
  --transition-speed: 0.3s;
  font-size: 22px;
  position: relative;
}
.menu-popup .menu-item-icon{width:35px!important;}
/* --- reset list layout --- */
.menu-popup .menu,
.menu-popup .sub-menu {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* --- menu items --- */
.menu-popup .menu > li {
  position: relative;
  margin: 0;
}

.menu-popup a {
  display: block;
  padding: 0.8em 0em!important;
  color: var(--menu-text);
  text-decoration: none;
  transition: background var(--transition-speed);
}
.menu-popup .sub-menu a{
	padding: 0.3em 0em !important;
}
.menu-popup a:hover {
  background: var(--menu-hover);
}

/* --- submenu toggle arrow --- */
.menu-popup li.menu-item-has-children {
  position: relative;
}

.menu-popup .submenu-toggle {
  position: absolute;
  right: 0.8em;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  color: #fff;
  transition: transform var(--transition-speed);
  font-size: 0.9em;
  z-index: 5;
}

.menu-popup .submenu-toggle i {
  font-family: "fontawesome";
	font-style: normal;
    font-size: 20px;
}
.menu-popup .submenu-toggle i.fa-angle-right:before{
	content: "\f054";
}
.menu-popup li.open > .submenu-toggle i {
  transform: rotate(90deg);
}
.menu-popup li.menu-item-has-children {
    position: initial !important;
}
/* --- submenus --- */
.menu-popup .sub-menu {
  position: absolute;
  top: 0;
  margin-left: var(--submenu-offset);
  background: transparent;
  opacity: 0;
  visibility: hidden;
  transform: translateX(-10px);
  transition: all var(--transition-speed) ease;
  z-index: 20;
  /*border-left: 2px solid rgba(255, 255, 255, 0.15);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);*/
}

/* --- show submenu when open --- */
.menu-popup li.open > .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

/* --- nested submenus --- */
.menu-popup .sub-menu .sub-menu {
  top: 0;
  left: 100%;
  margin-left: var(--submenu-offset);
}

/* --- submenu links --- */
.menu-popup .sub-menu a {
  background: transparent;
  padding: 0.4em 1em;
  font-size: 20px;
}


html body .menu-popup a:hover,
html body .menu-popup li.open > .menu-link-wrapper:first-child a,
html body .menu-popup li.open > .menu-link-wrapper:first-child  .submenu-toggle i{
  background: transparent!important;
  color: #fff !important;
}
.menu-popup.w-menu.layout_ver .menu>li{ padding: 0 10px;}
.menu-popup.w-menu.layout_ver .menu>li:hover,
html body .menu-popup li.open {
	background: #0073cf63 !important;
	background:#ffffff29 !important;
	cursor:pointer;
}
/* --- responsive --- */
@media screen and  (max-width: 800px) {
  .menu-popup .sub-menu {
    position: static;
    margin-left: 0;
    transform: none;
    opacity: 1;
    visibility: visible;
    box-shadow: none;
    border-left: none;
    display: none;
  }
  .menu-popup li.open > .sub-menu {
    display: block;
  }
  .menu-popup .submenu-toggle i {
    transform: none;
  }
  .menu-popup li.open > .submenu-toggle i {
    transform: rotate(90deg);
  }
}
@media screen and (min-width:992px) {
	.menu-popup.w-menu.layout_ver .menu>li{
		width:33.3%;
	}
	.menu-popup .sub-menu {
		  left: 33.3%;
		  margin-left: var(--submenu-offset);
		  min-width: 33%;
	}
	
}

.menu-popup.w-menu.style_blocks[style*=--main-bg-color] .menu>li>a{
	background: transparent;
	margin-right:20px;
}




/* Align link + toggle */
.menu-popup .menu-link-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
	    position: relative;
}

/* Toggle icon */
.menu-popup .submenu-toggle {
  display: inline-flex;
  cursor: pointer;
  margin-left: 0.5em;
}

/* Rotation animation for open state */
.menu-popup li.open > .menu-link-wrapper .submenu-toggle i {
  transform: rotate(90deg);
  transition: transform 0.25s ease;
}

/* Optional: visually nest deeper levels */
.menu-popup .sub-menu {
  margin-left: 2em;
}

.carousel-arbeit h3.post_title{
	    max-width: 80%!important;
	    
}
.spacing-right .l-section-h.i-cf{
	padding-right:10%;
}
@media screen and (min-width: 768px) {
	.two-color-row{
		    background: linear-gradient(90deg, #EFEFEF 0%, #EFEFEF 49%, #f08327 49%, #E88300 100%);
	}
}
@media screen and (min-width: 768px) {
	.btn-menu-popup .w-popup-trigger{
		font-size:40px;
	}
}
@media screen and (max-width: 767px) {
	.two-color-row{
		padding-left:0!important;
	    padding-right:0!important;
	}
	.two-color-row .cols_2 .wpb_column.vc_column_container:first-child{
		    background: #EFEFEF;
	}
	.two-color-row .cols_2 .wpb_column.vc_column_container:last-child{
		    background: #f08327;
	}
	.two-color-row .cols_2 .wpb_column.vc_column_container > .vc_column-inner{
		padding: var(--padding-inline);
    
	}
	 .two-color-row    .g-cols:not([style*="--columns-gap"]) {
        gap: 0;
    }

	section#services-grid {
		height: auto;
	}
}
@media screen and (min-width: 2560px) {
	 #header1, #event-header {
        height:calc(75vh - 100px)!important;
        min-height: auto !important;
    }
	.w-popup-box-h #header1 {
        height:auto!important;
        min-height: auto !important;
    }
     .w-popup-wrap.btn-menu-popup {
		--popup-width: 45vw!important;
	  }
	.popup-locations .w-popup-box-content .partner-item img {
		 height: 500px; 
	}
}
@media screen and (max-width: 991px) {

	.w-grid.ratio_4x3{
		--item-ratio: 1.2!important;
	}
   section.parallax-section{
		height:450px!important;
	}
	section.parallax-section .w-separator.size_custom{
		height:250px!important;
	}
}
@media screen and (max-width: 1200px) {
		 div.w-popup-wrap.btn-menu-popup {
		--popup-width: 100%!important;
	  }
}
@media screen and (min-width: 1201px) and (max-width: 1500px){
	 .w-popup-wrap.btn-menu-popup {
		--popup-width: 65vw!important;
	  }
}
@media screen and (min-width: 992px) and (max-width: 1500px){

	#services-grid {
		height: calc(60vw - 100px)!important;
		overflow: hidden;
	}
	 #header1, #event-header {
        height:calc(60vw - 100px)!important;
        min-height: auto !important;
    }
	.w-popup-box-h #header1 {
        height:auto!important;
        min-height: auto !important;
    }
	.partner-item img {
		height: 400px;
	}
	.hover-card .hover-title{
	   bottom: 45% !important;
	}
	.w-grid.ratio_4x3{
		--item-ratio: 1.2!important;
	}
	.popup-locations .w-popup-box-content {
		padding: 1%;
	}
}

.no-results-partner{display:none}
.ush_hwrapper_1{
	display: flex;
    justify-content: space-between;
}
.menu-text-items .w-nav.type_desktop .w-nav-anchor.level_1{
	    font-weight: 600;
}
.menu-text-items .w-text.ush_text_1.nowrap{display:none;}
.home .menu-text-items .w-text.ush_text_1.nowrap{display:block;}
.menu-text-items .w-text.ush_text_1.nowrap{
	color: #E88300;
    margin-top: -10px;
    margin-bottom: 0px;
}
.sticky .ush_hwrapper_1{height:80px!important;}
.technique-title-grid h3{    max-width: 280px;}
.header-main-menu{
	
}
@media screen and (min-width: 992px){.logo-main-menu{min-width:220px;}}
.logo-main-menu img{
	margin-top:3px;
}
@media screen and (max-width: 767px) {
	.hotspot-row{display:none!important;}
	.list-locations-text.us_custom_e1bdb6c2 {
		width: 250px !important;
		position: relative!important;
		bottom: auto!important;
		right: auto!important;
		padding: 0px !important;
		background: rgba(255, 255, 255, 0.80) !important;
  }
	.footer-responsive {
		margin-left: 0% !important;
		margin-right: 0% !important;
	}
}
@media screen and (min-width: 768px) {
	.locations-only-mobile{
		display:none!important;
	}
}
@media screen and (min-width: 1400px) and (max-width: 1750px){
	header .ush_hwrapper_1{height:90px!important;}
	header .l-subheader.at_middle{height:90px!important;}
	header .logo-main-menu{
		height: 110px !important;
	}
}
@media screen and (min-width: 768px) and (max-width: 1024px){
	.list-locations-text{
		display:none!important;
	}
}

@media screen and (min-width: 1900px) and (min-resolution: 2dppx),
       screen and (min-width: 2560px) {
	#services-grid .blend-bg h3.w-text.has_text_color{
		width: 400px;
        margin: 0 auto;
	}
   #services-grid {
        height: calc(100vh - 400px) !important
    }

	header .l-subheader-h, .l-section .l-section-h,
   html body  .w-tabs-section-content-h{
		max-width: initial!important;
	}
    header .ush_btn_1,header .ush_search_1{ font-size: 30px !important;}
	nav.menu-header{
		font-size: 32px !important;
	}
    html body .ush_menu_1.type_desktop .menu-item:not(.level_1){font-size: 30px !important;}
   .menu-popup,
   .menu-popup .sub-menu a{
			     font-size: 28px;  
    }
	html body .partner-item p,
    #resetFilterBtn.us-btn-style_8,
   .hover-card .hover-text{ font-size: 28px!important;}
   .list-locations-text.us_custom_5d8561f3{min-width:300px!important;}
	:root {
	  --font-size: 28px;
	}
	html body,
    html body .us_custom_07c3a575{
		font-size: 28px!important;
        line-height: 40px!important;
		   }
	:root{
		--h1-font-size: clamp(24px, 5vw, 55px) !important;
		--h2-font-size: clamp(20px, 3.5vw, 45px) !important;
		--h3-font-size: clamp(18px, 3vw, 40px) !important;
		--h4-font-size: clamp(16px, 2.5vw, 38px) !important;
		--h5-font-size: clamp(14px, 2vw, 28px) !important;
		--h6-font-size: clamp(12px, 1.8vw, 26px) !important;
		--inputs-font-size: 28px!important;
	}
	.search-events-container #resetFilterBtn{
			       min-width: 300px;
	}
   .hover-card .hover-title{font-size: max(1rem, 1.5vw) !important;}
   .search-events{width:35%;top: 10px;}
   html body .home-events .events-grid .eventsubtitle,
	html body .events-grid .eventsubtitle{font-size:28px!important;}
	.w-btn-wrapper .w-btn{
		font-size: clamp(14px, 2vw, 28px)!important;	
	}
   html body .l-header.sticky .ush_image_1 {
        height: 85px !important;
    }
}
/* Lock page scroll when popup is active (Impreza sets this on body in many cases).
   If your build doesn't, we'll toggle it via JS below. */
html.us-popup_active,
body.us-popup_active {
  overflow: hidden !important;
  height: 100%;
  touch-action: none;              /* prevent background scroll on touch devices */
}

/* Ensure the fullscreen wrapper doesn't become scrollable */
.w-popup-wrap.popup-locations {
  position: fixed;                 /* overlay */
  inset: 0;
  overflow: hidden;                /* no scroll on wrapper */
}

/* Make the inner box/content do the scrolling */
.w-popup-wrap.popup-locations .w-popup-box {
  max-height: 100dvh;              /* cap to viewport height */
  display: flex;
  flex-direction: column;
}

.w-popup-wrap.popup-locations .w-popup-box-h {
  display: flex;
  flex: 1 1 auto;
  overflow: hidden;                /* clip inner overflow to content area only */
}

/* This is your scroll container */
.w-popup-wrap.popup-locations .w-popup-box-content {
  flex: 1 1 auto;
  overflow: auto;                  /* scroll here */
  max-height: calc(100dvh - 40px); /* safety headroom for closer/title chrome */
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;    /* stop scroll chaining to body */
  scrollbar-gutter: stable;        /* avoid layout shift when scrollbar appears */
}
.popup-locations .w-popup-box-content {
    margin: 5% 0% 2% 0%;
	padding: 10px 5%;
	border-radius: 6px;
}
/* WebKit scrollbars (Chrome, Edge, Safari) */
/* WebKit browsers (Chrome, Edge, Safari) */
.w-popup-wrap.popup-locations .w-popup-box-content::-webkit-scrollbar {
  width: 8px;
}

.w-popup-wrap.popup-locations .w-popup-box-content::-webkit-scrollbar-track {
  background: transparent; /* no visible track */
}

.w-popup-wrap.popup-locations .w-popup-box-content::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.20); /* soft grey for white background */
  border-radius: 10px;
  transition: background 0.25s ease, box-shadow 0.25s ease;
}

.w-popup-wrap.popup-locations .w-popup-box-content::-webkit-scrollbar-thumb:hover {
  background: rgba(0, 0, 0, 0.35); /* slightly darker on hover */
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.15);
}

/* Firefox */
.w-popup-wrap.popup-locations .w-popup-box-content::-webkit-scrollbar-thumb:hover {
    background: #a8a8a8;
}

.text-blue h6,
.text-blue h3,
.text-blue h2,
.text-blue h4,.text-blue h5{color:#00569d}


/* =========================
   PRODUCTS SHOP FILTER
   ========================= */

.w-filter-list {
	background: #00569D;
	color: #fff;
	border-radius: 5px;
	position: relative;
	top: 30px;
}
.mt-term-icon {
	width: 44px;
	height: 44px;
	border-radius: 0!important;
	object-fit: cover;
	flex: 0 0 44px;
	margin-left: 0px;
	margin-right: 0px;
}
.filter-list-products{
	background:#00569D;
	padding:28px 22px;
	border-radius:4px;
	color:#fff;
	box-sizing:border-box;
	font-family:inherit;
}


/* Hide native radio buttons */
.filter-list-products input[type="radio"] {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

/* Make the whole filter item clickable */
.filter-list-products .w-filter-item-value label {
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 0.75rem;
}

/* Optional active state */
.filter-list-products .w-filter-item-value input[type="radio"] + .w-filter-item-value-label:hover,
.filter-list-products .w-filter-item-value input[type="radio"]:checked + .w-filter-item-value-label {
 color:#f39200;
	opacity: 1;
}

/* Optional inactive state */
.filter-list-products .w-filter-item-value .w-filter-item-value-label {
	transition: opacity 0.2s ease;
}
.filter-list-products .w-filter-item.has_value .w-filter-item-reset{
	/*float: right;*/
    border: 1px solid #f39200;
    padding: 0px 10px;
    border-radius: 5px;
    color: #f2b233;
    margin-top: -30px;
	margin-bottom:20px;
}
.filter-list-products .w-filter-item.has_value .w-filter-item-reset:hover{
	color:white!important;   border: 1px solid white!important;}

/* top title bar */
.filter-list-products .w-filter-list-title{
	display:none;
}
.filter-list-products .w-filter-list{
	background:transparent;
	padding:0;
	box-shadow:none;
	border:none;
}

/* filter block */
.filter-list-products .w-filter-item{
	margin:0;
	padding:0;
	border:none;
}

/* heading: Kategorie */
.filter-list-products .w-filter-item-title{
	color:#fff;
	font-size:28px;
	line-height:1.2;
	font-weight:600;
	margin:0 0 22px 0;
	padding:0;
}

/* hide reset link if not needed */
.filter-list-products .w-filter-item-reset{
	display:none;
}

/* list wrapper */
.filter-list-products .w-filter-item-values{
	display:flex;
	flex-direction:column;
	gap:6px;
}

/* one row */
.filter-list-products .w-filter-item-value{
	display:flex;
	align-items:center;
	gap:14px;
	padding:10px 8px;
	border-radius:8px;
	transition:background-color .2s ease;
}
.filter-list-products .w-filter-item-value:hover{
	color:#E88300;
}
.filter-list-products .w-filter-item-title:hover{}
/* icon */
.filter-list-products .w-filter-item-value .mt-term-icon{
	width:34px;
	height:34px;
	min-width:34px;
	object-fit:contain;
	display:block;
	filter:brightness(0) invert(1) opacity(.9);
}

/* label wrapper */
.filter-list-products .w-filter-item-value label{
	display:flex;
	align-items:center;
	gap:0;
	margin:0;
	cursor:pointer;
	width:100%;
}

/* hide native checkbox */
.filter-list-products .w-filter-item-value input[type="checkbox"]{
	position:absolute;
	opacity:0;
	pointer-events:none;
}

/* text */
.filter-list-products .w-filter-item-value-label{
	color:#dbe7ff;
	font-size:19px;
	line-height:1.35;
	font-weight:400;
	transition:color .2s ease;
}

/* active item text */
.filter-list-products .w-filter-item-value input[type="checkbox"]:checked + .w-filter-item-value-label{
	color:#f2b233;
	font-weight:500;
}

/* optional: active background */
.filter-list-products .w-filter-item-value:has(input[type="checkbox"]:checked){
	background:rgba(255,255,255,.08);
}

/* hide bottom panel/apply button for sidebar look */
.filter-list-products .w-filter-list-panel{
	display:none;
}

/* hide opener button on desktop */
.filter-list-products .w-filter-opener{
	display:none;
}

/* closer button */
.filter-list-products .w-filter-list-closer{
	display:none;
}
/* hide "Kategorie" title */
.filter-list-products .w-filter-item-title{
	display:none!important;
}
/* mobile */
@media (max-width: 767px){
	.filter-list-products{
		max-width:100%;
		padding:22px 18px;
	}
	
	.filter-list-products .w-filter-item-title{
		font-size:24px;
		margin-bottom:18px;
	}
	
	.filter-list-products .w-filter-item-value .mt-term-icon{
		width:28px;
		height:28px;
		min-width:28px;
	}
	
	.filter-list-products .w-filter-item-value-label{
		font-size:17px;
	}
}
.search-list-products input{
	    background-color: #EFEFEF!important;
	margin-bottom:30px;
	box-shadow: none !important;
}
.search-list-products.w-search.layout_simple .w-btn i{
	color:#00569D;
}
/* =========================================================
   PRODUCTS SHOP GRID
   ========================================================= */
.products-shop{
	--shop-card-bg:#f3f3f3;
	--shop-text:#2e2e2e;
	--shop-price:#00569D;
	--shop-btn:#f39200;
	--shop-btn-text:#ffffff;
	--shop-border:#cfcfcf;
	--shop-muted:#6a6a6a;
	--shop-radius:8px;
	--shop-gap:14px;
	--blue:#00569D;
}

/* grid gap */
.products-shop .w-grid-list{
	gap:12px;
}

/* card */

.products-shop .w-grid-item-h{
	background:var(--shop-card-bg) !important;
	background: linear-gradient(to bottom, #d6d5d4 0%,#f8f8f7 70%, #f8f8f7 100%) !important;
	box-shadow:none !important;
	border-radius:var(--shop-radius);
	padding:0 !important;
	overflow:hidden;
	display:flex;
	flex-direction:column;
	height:100%;
	min-height:570px;
}

/* remove hover lift/shadow */
.no-touch .products-shop .w-grid-item-h:hover{
	box-shadow:none !important;
	transform:none !important;
}

/* =========================================================
   IMAGE AREA
   ========================================================= */
.products-shop .usg_post_image_1{
	padding:18px 18px 0 18px;
	margin:0;
	text-align:center;
	position:relative;
}

.products-shop .usg_post_image_1 a{
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:380px;
	background:transparent;
}

.products-shop .usg_post_image_1 img{
    max-width: 200px;
    min-height: 230px;
    width: auto;
    height: 100%;
    object-fit: cover;
    display: block;
    margin: 0 auto;
}

/* optional zoom icon styling if magnific icon exists */
.products-shop .usg_post_image_1 .w-post-elm-link,
.products-shop .usg_post_image_1 .magnific,
.products-shop .usg_post_image_1 [ref="magnificPopup"]{
	position:relative;
}

/* =========================================================
   DESCRIPTION / SHOW MORE
   ========================================================= */
.products-shop .usg_post_content_1{
	background:transparent !important;
	padding:6px 20px 0 20px;
	color:var(--shop-text);
	font-size:14px;
	line-height:1.35;
	order:2;
}

.products-shop .usg_post_content_1 > div:first-child{
	height:auto !important;
	max-height:none !important;
	overflow:visible !important;
}

.products-shop .toggle-links{
	margin-top:6px;
}

.products-shop .collapsible-content-more,
.products-shop .collapsible-content-less{
	background:none;
	border:none;
	padding:0;
	color:var(--shop-btn);
	font-size:14px;
	text-decoration:none;
	cursor:pointer;
	box-shadow:none;
}

.products-shop .collapsible-content-more:hover,
.products-shop .collapsible-content-less:hover{
	color:var(--shop-btn);
	text-decoration:underline;
}

/* =========================================================
   BODY
   ========================================================= */
html body div.products-shop div.usg_vwrapper_1{
	background:transparent !important;
	padding:10px 20px 14px 20px !important;
	display:flex;
	flex-direction:column;
	align-items:flex-start !important;
	text-align:left !important;
	gap:6px;
	flex:1;
}

/* title */
html body div.products-shop h2.usg_post_title_1{
	font-size:18px !important;
	line-height:1.25 !important;
	font-weight:600 !important;
	margin:0 !important;
	order:1;
	width:100%;
	min-height: 50px;
}

.products-shop .usg_post_title_1 a{
	color:var(--shop-text) !important;
	text-decoration:none;
	/*pointer-events:none;*/
}

/* price */
.products-shop .usg_product_field_3{
	order:2;
	margin:0 !important;
	font-size:20px !important;
	font-weight:700 !important;
	color:var(--shop-price) !important;
	line-height:1.2;
}

.products-shop .usg_product_field_3 .amount,
.products-shop .usg_product_field_3 .woocommerce-Price-amount,
.products-shop .usg_product_field_3 bdi{
	color:var(--shop-price) !important;
	font-weight:600 !important;
}

/* add fake tax note like screenshot */
.products-shop .usg_product_field_3::after{
	content:"exkl. MwSt. zzgl. Versand";
	display:block;
	margin-top:3px;
	font-size:11px;
	line-height:1.25;
	font-weight:400;
	color:var(--shop-muted);
}

/* =========================================================
   ACTIONS ROW
   ========================================================= */
.products-shop .usg_hwrapper_1{
	order:3;
	display:flex !important;
	align-items:center !important;
	justify-content:space-between !important;
	gap:12px;
	width:100%;
	margin-top:auto;
	flex-wrap:nowrap;
}

/* =========================================================
   QTY CONTROL
   ========================================================= */
.products-shop .usg_html_1{
	flex:0 0 auto;
}

.products-shop .usg-qty{
	display:flex;
	align-items:center;
	gap:6px;
}

.products-shop .usg-qty__minus,
.products-shop .usg-qty__plus{
	width:22px;
	height:22px;
	border:none;
	background:transparent;
	color:#b7b7b7;
	font-size:24px;
	line-height:2;
	padding:0;
	display:flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	box-shadow:none;
}

.products-shop .usg-qty__minus:hover,
.products-shop .usg-qty__plus:hover{
	color:#777;
}

.products-shop .usg-qty__input{
    width: 40px;
    height: 21px !important;
    min-height: 38px !important;
    border: 2px solid #bcbcbc;
    border-radius: 8px;
    background: #fff;
    text-align: center;
    font-size: 16px;
    padding: 0;
    box-shadow: none !important;
	color:#222;
	-moz-appearance:textfield;
}

.products-shop .usg-qty__input::-webkit-outer-spin-button,
.products-shop .usg-qty__input::-webkit-inner-spin-button{
	-webkit-appearance:none;
	margin:0;
}
.products-shop.w-grid.type_grid .w-grid-list{
	gap: calc(var(--gap, 0px) * 0.5)!important;
}
/* =========================================================
   ADD TO CART BUTTON
   ========================================================= */
.products-shop .usg_add_to_cart_1{
	flex:1 1 auto;
	width:auto !important;
	margin:0 !important;
}

.products-shop .usg_add_to_cart_1 .button,
.products-shop .usg_add_to_cart_1 a.button{
	width:100% !important;
	border:none !important;
	background:var(--shop-btn) !important;
	color:var(--shop-btn-text) !important;
	font-size:18px !important;
	font-weight:600 !important;
	line-height:1.2 !important;
	padding:12px 16px !important;
	text-transform:none !important;
	box-shadow:none !important;
	min-height:44px;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:var(--shop-radius)!important;
}

.products-shop .usg_add_to_cart_1 .button:hover,
.products-shop .usg_add_to_cart_1 a.button:hover{
	background:var(--shop-btn) !important;
	opacity:.92;
}

/* remove uppercase from theme */
.products-shop .w-btn-label{
	text-transform:none !important;
	letter-spacing:0 !important;
}

/* remove existing symbols */
.products-shop .usg-qty__minus,
.products-shop .usg-qty__plus{
	font-size:0; /* hides − and + */
	position:relative;
}
/* LEFT arrow */
.products-shop .usg-qty__minus::before{
	content:"‹";
	font-size:35px;
	color:#b7b7b7;
	display:block;
}

/* RIGHT arrow */
.products-shop .usg-qty__plus::before{
	content:"›";
	font-size:35px;
	color:#b7b7b7;
	display:block;
}

/* hover */
.products-shop .usg-qty__minus:hover::before,
.products-shop .usg-qty__plus:hover::before{
	color:#666;
}
.products-shop .product-type-variable .w-html.usg_html_1{display:none;}
.products-shop .product-type-variable  .usg_add_to_cart_1 .button{
	    max-width: 90%;
	    margin: 0 auto;
}
/* =========================================================
   MOBILE
   ========================================================= */
@media (max-width: 1024px){
	.products-shop .w-grid-item-h{
		min-height:450px;
	}
}

@media (max-width: 767px){
	.products-shop .usg_post_image_1{
		padding:16px 16px 0 16px;
	}

	.products-shop .usg_post_image_1 a{
		min-height:180px;
	}

	.products-shop .usg_post_image_1 img{
		max-width:130px;
		max-height:150px;
	}

	.products-shop .usg_post_content_1{
		padding:4px 16px 0 16px;
	}

	.products-shop .usg_vwrapper_1{
		padding:10px 16px 14px 16px !important;
	}

	.products-shop .usg_hwrapper_1{
		gap:10px;
	}

	.products-shop .usg_add_to_cart_1 .button,
	.products-shop .usg_add_to_cart_1 a.button{
		font-size:15px !important;
		padding:11px 14px !important;
	}

	.products-shop .usg-qty__input{
		width:42px;
	}
}

/* =========================================================
   PRODUCT DETAILS – REFINED VERSION
   ========================================================= */

.product-details{
	--pd-blue:#00569D;
	--pd-orange:#E88300;
	--pd-text:#222;
	--pd-muted:#6f6f6f;
	--pd-line:#dddddd;
	--pd-soft:#f3f3f3;
	--pd-soft-2:#f7f7f7;
	--pd-green:#12c54b;
	--pd-purple:#a3348d;
}

/* layout */
.product-details .g-cols{
	align-items:start !important;
	column-gap:36px;
}

/* =========================================================
   LEFT GALLERY
   ========================================================= */

.product-details .product_gallery{
	border-radius:4px;

}

.product-details .woocommerce-product-gallery{
	margin:0;
}

.product-details .woocommerce-product-gallery__wrapper{
	min-height:520px;
	display:flex;
	align-items:center;
	justify-content:center;
}

.product-details .woocommerce-product-gallery__image{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
}

.product-details .woocommerce-product-gallery__image a{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
}

.product-details .woocommerce-product-gallery__image img{
	max-width:100%;
	max-height:700px;
	width:auto;
	height:auto;
	object-fit:contain;
}

/* hide thumbs */
.product-details .flex-control-thumbs,
.product-details .woocommerce-product-gallery .flex-control-nav{
	display:none !important;
}

/* =========================================================
   RIGHT SIDE
   ========================================================= */
.product-details .woocommerce-variation.single_variation{display:none!important;}
.product-details .vc_custom_heading,
.product-details h1,
.product-details h2{
	font-size:clamp(26px, 2.6vw, 42px) !important;
	line-height:1.08 !important;
	font-weight:500 !important;
	color:#333 !important;
	margin:0 0 35px 0 !important;
	max-width:750px;
}

/* top price */
.product-details .w-post-elm.product_field.price{
	margin:0 0 35px 0 !important;
	font-size:clamp(26px, 2.6vw, 30px) !important;
	font-weight:500;
	color:var(--pd-blue);
}









/* variation price + stock */


.product-details .woocommerce-variation-description{
	display:none !important;
}

.product-details .woocommerce-variation-price .amount{
	color:var(--pd-blue) !important;
	font-weight:700 !important;
}

.product-details .woocommerce-variation-availability .stock{
	margin:0 !important;
	color:var(--pd-green) !important;
	font-size:16px;
	font-weight:700;
}

/* =========================================================
   TIER TABLE
   ========================================================= */

.product-details .tpt__tiered-pricing{
	margin:18px 0 18px 0 !important;
}

.product-details .tiered-pricing-table{
	width:100%;
	border-collapse:collapse !important;
	border:none !important;
	box-shadow:none !important;
	background:transparent !important;

}

.product-details .tiered-pricing-table thead th{
	background:transparent !important;
	border:none !important;
	padding:0 12px 10px 12px !important;
	font-size:13px !important;
	font-weight:400 !important;
	color:#222 !important;
	text-align:left !important;
}

.product-details .tiered-pricing-table thead th:last-child{
	text-align:right !important;
}

.product-details .tiered-pricing-table tbody td{
	padding:12px !important;
	border:none !important;
	font-size:16px;
	color:#222;
}

.product-details .tiered-pricing-table tbody td:nth-child(2){
	text-align:center;
	color:#777;
	width:120px;
}

.product-details .tiered-pricing-table tbody td:last-child{
	text-align:right;
	white-space:nowrap;
}

.product-details .tiered-pricing-table tbody tr.tiered-pricing--active td{
	background:var(--pd-orange) !important;
	color:#fff !important;
}

.product-details .tiered-pricing-table tbody tr.tiered-pricing--active .amount,
.product-details .tiered-pricing-table tbody tr.tiered-pricing--active .woocommerce-Price-amount,
.product-details .tiered-pricing-table tbody tr.tiered-pricing--active .woocommerce-Price-currencySymbol{
	color:#fff !important;
}

/* =========================================================
   QTY + BUTTON
   ========================================================= */

.product-details .woocommerce-variation-add-to-cart{
	display:flex;
	align-items:center;
	gap:12px;
	flex-wrap:wrap;
	margin-top:8px;
}




.product-details .quantity .qty{
	width:54px!important;
	height:44px;
	border:1px solid #d4d4d4 !important;
	border-radius:4px;
	background:#fff !important;
	box-shadow:none !important;
	text-align:center;
	font-size:16px;
	padding:0;
	-moz-appearance:textfield;
}

html body.woocommerce section.product-details .button.single_add_to_cart_button{
    height: 60px;
    padding: 0px 26px !important;
    border: none !important;
    border-radius: 5px !important;
    background: var(--pd-orange) !important;
    color: #fff !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    line-height: 60px !important;
    text-transform: none !important;
    box-shadow: none !important;
    min-width: 300px;
	
}
html body.woocommerce section.product-details .w-post-elm.add_to_cart.qty-btn-style_0 .quantity .plus, .w-post-elm.add_to_cart.qty-btn-style_0 .quantity .minus {
     display: block!important;
	    width: 20px;
    border: none !important;
    box-shadow: none !important;
}
.product-details .single_add_to_cart_button:hover{
		background:var(--pd-blue) !important;
}
.product-details .quantity .qty::-webkit-outer-spin-button,
.product-details .quantity .qty::-webkit-inner-spin-button{
	-webkit-appearance:none;
	margin:0;
}

/* =========================================================
   ACCORDION
   ========================================================= */

.product-details .w-tabs{
	margin-top:24px;
	border-top:1px solid var(--pd-line);
}

.product-details .w-tabs-section{
	border-bottom:1px solid var(--pd-line);
	margin:0 !important;
}

.product-details .w-tabs-section-header{
	padding:16px 0 !important;
	background:transparent !important;
	border:none !important;
	box-shadow:none !important;
}

.product-details .w-tabs-section-title{
	font-size:16px !important;
	font-weight:600 !important;
	color:#222 !important;
}

.product-details .w-tabs-section-content{
	padding:0 0 16px 0 !important;
}

.product-details .w-post-elm.post_content{
	font-size:15px;
	line-height:1.6;
	color:#333;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1024px){
	.product-details .g-cols{
		column-gap:24px;
	}

	.product-details .woocommerce-product-gallery__wrapper{
		min-height:420px;
	}

	.product-details .woocommerce-product-gallery__image img{
		max-height:400px;
	}
}

@media (max-width: 767px){
	.product-details .product_gallery{
		padding:14px;
	}

	.product-details .woocommerce-product-gallery__wrapper{
		min-height:300px;
	}

	.product-details .woocommerce-product-gallery__image img{
		max-height:280px;
	}

	.product-details .vc_custom_heading,
	.product-details h1,
	.product-details h2{
		font-size:30px !important;
	}

	.product-details .woocommerce-select{
		max-width:100%;
	}

	.product-details .tiered-pricing-table{
		max-width:100%;
	}

	.product-details .tiered-pricing-table thead th{
		font-size:12px !important;
	}

	.product-details .tiered-pricing-table tbody td{
		font-size:14px;
		padding:10px !important;
	}

	.product-details .single_add_to_cart_button{
		min-width:0;
		flex:1 1 auto;
	}
}


.accordion-custom .w-tabs-section-header:hover,
.accordion-custom .w-tabs-section-header:focus{background:transparent!important;}
.accordion-custom .w-tabs-sections.icon_chevron>div>.w-tabs-section-header .w-tabs-section-control:before,
.accordion-custom .w-tabs-sections.icon_chevron>div>.w-tabs-section-header .w-tabs-section-control:after{
	background:var(--color-header-middle-text-hover)!important;
}

html body .academy-popup {
    position: fixed;
    top: 50%!important;
    left: 50%!important;
    transform: translate(-50%, -50%);

    width: min(92vw, 520px);
    min-width: 0;

    background: #fff;
    border: 1px solid rgba(30, 54, 165, 0.12);
    box-shadow: 0 18px 45px rgba(20, 28, 60, 0.18);
    padding: 28px 32px 24px;
    border-radius: 14px;

    z-index: 99999;
    font-size: 15px;
    line-height: 1.55;
    color: #1d1d1f;
}

html body  .academy-popup strong,
html body  .academy-popup b {
    color: #0f2fa3;
    font-weight: 700;
}

html body  .academy-popup a,
html body .academy-popup .academy-popup-close {
    color: #f58200;
}

html body  .academy-popup .academy-popup-close {
    position: absolute;
    top: 14px;
    right: 16px;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
    border: 0;
    background: transparent;
}

@media (max-width: 600px) {
    html body  .academy-popup {
        width: calc(100vw - 32px);
        padding: 24px 22px 20px;
        border-radius: 12px;
        font-size: 14px;
    }
}
.cart-product-short-description{text-transform:initial!important;}
.vdb-beratung-box input{    border: 1px solid grey;}
.academy_tabs .schulungskategorie-filter{box-shadow:none!important;cursor:pointer;}


a.btn-download {    
    position: absolute;
    bottom: 30%;
    right: 30%;
    left: 20px;
    text-align: left;
	padding: 10px !important;
    background: var(--color-blue-trans) !important;
    text-align: left;
    font-weight: 500;
    box-shadow: none;
	font-size: clamp(16px, 1.5vw, 35px) !important;
}
/* 125% scaling equivalent */
@media (min-width: 1280px) and (max-width: 1535px)  {
    html body div.w-popup-wrap.btn-menu-popup {
           --popup-width: 59vw !important;
    }
}

/* 150% scaling equivalent */
@media screen and (min-width: 1024px) and (max-width: 1600px)  {
   html body div.w-popup-wrap.btn-menu-popup {
           --popup-width: 65vw !important;
    }
	html body {
		font-size:16px!important;
	--h1-font-size: clamp(24px, 5vw, 40px) !important;
    --h2-font-size: clamp(20px, 3.5vw, 30px) !important;
    --h3-font-size: clamp(18px, 3vw, 26px) !important;
    --h4-font-size: clamp(16px, 2.5vw, 22px) !important;
    --h5-font-size: clamp(14px, 2vw, 20px) !important;
    --h6-font-size: clamp(12px, 1.8vw, 18px) !important;
	}
	a.btn-download{
		    font-size: clamp(16px, 2vw, 30px) !important;
	}
	.menu-popup,
	html body .ush_menu_1{ font-size: 18px!important;}
	.ush_btn_1,
	.ush_search_1{font-size:22px!important;}
	.ush_menu_1.type_desktop .menu-item:not(.level_1){    font-size: 16px!important;}
	.ush_cart_1 .w-cart-link{
		font-size:22px!important;
	}
	.menu-popup .sub-menu a{    font-size: 16px!important;	}
	.products-shop .usg_add_to_cart_1 .button, .products-shop .usg_add_to_cart_1 a.button{    font-size: 14px !important;}
	.list-locations-text{
		    height: 500px;
   		   overflow-y: scroll;
	}
	.events-date-left{width:100%!important;}
}
html body .events-grid .event-card {
      padding: 15px 30px;
      align-items: baseline;
}

/*stuntzpunkte*/

.city-tooltip {
    position: absolute;
    left: 50%;
    top: -40px;
    transform: translateX(-50%);

    background: #00569D;
    color: #fff;
    padding: 6px 10px;
    border-radius: 4px;

    font-size: 14px;
    line-height: 1;
    white-space: nowrap;

    opacity: 0;
    visibility: hidden;

    transition: opacity 0.2s ease;
    pointer-events: none;

    z-index: 999;
}

/* IMPORTANT */
.ult-hotspot-item:hover > .city-tooltip {
    opacity: 1;
    visibility: visible;
}
html body .academy_tabs .schulungskategorie-filter{    max-width: 25vw;}
#event-description #fullcontentwrapper_upper .container{        max-width: 100%;
        padding: 0 !important;}
.woocommerce-page .w-filter-item-reset{
	font-size: clamp(18px, 1.8vw, 18px) !important;
}
@media screen and (max-width: 767px) {
   html body {
    --h1-font-size: clamp(24px, 5vw, 48px) !important;
    --h2-font-size: clamp(20px, 3.5vw, 40px) !important;
    --h3-font-size: clamp(18px, 3vw, 30px) !important;
    --h4-font-size: clamp(16px, 2.5vw, 26px) !important;
    --h5-font-size: clamp(17px, 2vw, 22px) !important;
    --h6-font-size: clamp(18px, 1.8vw, 18px) !important;
	}
	html body #services-grid .g-cols.vc_row>.wpb_column.blend-bg>.vc_column-inner{
		   padding-top: 20px !important;
           padding-bottom: 20px !important;
	}
	#services-grid .g-cols.vc_row>.wpb_column.blend-bg>.vc_column-inner .w-image {
			max-width: 40%;
			margin: auto;
		}
	#services-grid .g-cols.vc_row>.wpb_column.blend-bg>.vc_column-inner h4{
		font-size:14px!important;
	}
	#services-grid .g-cols.vc_row>.wpb_column.blend-bg{padding:5px!important;}
	.layout_1985 .usg_vwrapper_2.technique-title-grid,
	html body .layout_1988 .usg_post_title_1,
	html body  .layout_2912 .usg_post_title_1{
		top: auto !important;
        bottom: 20px !important;
	}
	html body .events-grid{display:block!important}
	.events-grid .event-card {
		  width: 100%;
		  font-size: 16px;
	}   
	.w-tabs-section-content{padding-left:0!important;padding-right:0!important;}
	.home-events .events-grid .event-card{
		  width: 86vw;
		  font-size: 16px;
	}
	html body .home-events .events-grid {
		display:grid!important;
         gap: 5px!important; 
		  margin-bottom: 5px;
    }
	.events-grid > .event-card:last-of-type {
		border-bottom: 1px solid #999 !important;
	}
	.event-card .event-card-wrapper-second {
		padding-top: 0;
	}
	nav.w-menu.menu-popup.main-popup  li{
		    margin: 0 !important;
	}
	.btn-menu-popup .l-section {
       padding-left: 0!important;
	   padding-right: 0!important;
    }
	header .ush_btn_1,
	header .ush_search_1{    font-size: 20px!important;        padding: 0 !important;}
	html body .w-filter.state_mobile .w-filter-list{
	    background: #00569D!important;
	}
	html body .w-filter-list-title{display:none!important;}
	html body .w-filter-list-closer{color:white;}
	.w-filter-opener{width:100%!important}
	html body header.l-header .w-image {margin-right:0!important}
	html body .ush_hwrapper_1{padding-right: 20px !important;}
	.events-date-left > .vc_column-inner > .w-hwrapper{flex-wrap:wrap;}
	#event-header + section  .vc_column-inner > .w-hwrapper{flex-wrap:wrap;}
	[data-id="vdb_teilnahme_check"]{margin-top: 60px!important;}
}
html body div.products-shop .product_meta{order:2}
span.normal.black.unterstrichen{    font-weight: 600 !important;}
