/* 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:70%!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;}
.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: 2.5rem; /* spacing between cards */
  padding: 0;
  margin: 0;
}
/*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: 8px;
}

.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.25); /* 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, 0.45);
  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: 1700px){
	.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 {
		max-width: initial!important;
	}
	nav.menu-header{
		font-size: 28px !important;
	}
	html body {
		font-size: 25px;	
		--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;
	}
	.w-btn-wrapper .w-btn{
		font-size: clamp(14px, 2vw, 25px)!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;
}


