* {
	margin: 0;
	padding: 0;
}

html {
	font-size: 10px;
}

@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 200;
  src: url('../fonts/poppins-v24-latin-200.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-200italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 200;
  src: url('../fonts/poppins-v24-latin-200italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/poppins-v24-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-300italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 300;
  src: url('../fonts/poppins-v24-latin-300italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/poppins-v24-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/poppins-v24-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/poppins-v24-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 500;
  src: url('../fonts/poppins-v24-latin-500italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/poppins-v24-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-600italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 600;
  src: url('../fonts/poppins-v24-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/poppins-v24-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 700;
  src: url('../fonts/poppins-v24-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 800;
  src: url('../fonts/poppins-v24-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* poppins-800italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 800;
  src: url('../fonts/poppins-v24-latin-800italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}



:root {
	font-family: 'Poppins', sans-serif;
	--ruhrpm-color-blue: rgb(80, 125, 160);
	--ruhrpm-color-blue--darker: rgb(11, 89, 124);
	--ruhrpm-color-orange: rgb(234, 89, 43);
	--ruhrpm-color-gold: rgb(201, 178, 81);
	--ruhrpm-color-grey: rgb(69, 69, 69);
	--ruhrpm-color-sand: rgb(232, 230, 226);
	--ruhrpm-site-margin: 100px;
	--ruhrpm-site-radius: 7px;
	--ruhrpm-site-p-fontsize: 1.65rem;
}

@media screen and (max-width: 1200px) {
	:root { 
		--ruhrpm-site-margin: 40px
	}
}

@media screen and (max-width: 600px) {
	:root { 
		--ruhrpm-site-margin: 20px
	}
}

a {
	text-decoration: none
}

h1, h2, h3, h4, h5, h6 {
	line-height: 1.1em
}

h1 { font-size: 5rem; font-weight: 700 }
h2 { font-size: 4rem; font-weight: 600 }
h3 { font-size: 3rem; font-weight: 600 }
h4 { font-size: 2rem; font-weight: 600 }

@media screen and (max-width: 1200px) {
	h1 { font-size: 4rem; font-weight: 700 }
	h2 { font-size: 3.4rem; font-weight: 600 }
	h3 { font-size: 2.8rem; font-weight: 600 }
	h4 { font-size: 2.2rem; font-weight: 600 }
}

@media screen and (max-width: 800px) {
	h1 { font-size: 3rem; font-weight: 700 }
	h2 { font-size: 2.6rem; font-weight: 600 }
	h3 { font-size: 2.2rem; font-weight: 600 }
	h4 { font-size: 1.8rem; font-weight: 600 }
}

@media screen and (max-width: 600px) {
   h1 { font-size: 2.6rem; font-weight: 700 }
   h2 { font-size: 2.2rem; font-weight: 600 }
   h3 { font-size: 2rem; font-weight: 600 }
   h4 { font-size: 1.5rem; font-weight: 600 }
   
   :root {
	   --ruhrpm-site-p-fontsize: 1.38rem
   }
}


.site-main p, 
.site-main ul,
.site-main ol {
	font-size: var(--ruhrpm-site-p-fontsize);
	line-height: 1.4em;
	font-weight: 400;
}
.site-main p {
	margin: 0 0 10px 0
}

.site-main ul b,
.site-main ul strong,
.site-main p b,
.site-main p strong {
	font-weight: 600
}

.site-main ul {
	margin: 0;
	padding: 0 0 0 0;
	
}
.site-main ul li {
	margin: 0 0 10px 0;
	list-style-type: none;
	padding: 0 0 0 20px;
	position: relative
}

.site-main ul li::before {
	content: ""; 
	position: absolute;
	left: 0;
	top: 6px;
	/* transform: translateY(-50%);  */
	width: 10px;   
	height: 10px; 
	background: var(--ruhrpm-color-blue);
}


.ruhrpm-row {
	max-width: calc(100% - calc( 2 * var(--ruhrpm-site-margin)));
	margin: 0 auto
}

@media screen and (min-width: 1300px) {
	.ruhrpm-row {
		max-width: 1200px;
		margin: 0 auto
	}
}
@media screen and (min-width: 1400px) {
	.ruhrpm-row {
		max-width: 1050px;
		margin: 0 auto
	}
}

.ruhrpm-module--spacer-type-0 		{ height: 0 }
.ruhrpm-module--spacer-type-25		 { height: 25px }
.ruhrpm-module--spacer-type-50		 { height: 50px }
.ruhrpm-module--spacer-type-75		 { height: 75px }
.ruhrpm-module--spacer-type-100		 { height: 100px }
.ruhrpm-module--spacer-type-125		 { height: 125px }
.ruhrpm-module--spacer-type-150		 { height: 150px }


@media screen and (max-width: 600px) {
	.ruhrpm-module--spacer-type-0 		{ height: 0 }
	.ruhrpm-module--spacer-type-25		 { height: 20px }
	.ruhrpm-module--spacer-type-50		 { height: 30px }
	.ruhrpm-module--spacer-type-75		 { height: 50px }
	.ruhrpm-module--spacer-type-100		 { height: 70px }
	.ruhrpm-module--spacer-type-125		 { height: 100px }
	.ruhrpm-module--spacer-type-150		 { height: 125px }
}


/* Button */
	.ruhrpm-module--button a { 
		display: inline-block;
		padding: 12px 35px;
		background: var(--ruhrpm-color-blue);
		color: #fff;
		-webkit-border-radius: var(--ruhrpm-site-radius) var(--ruhrpm-site-radius) var(--ruhrpm-site-radius) var(--ruhrpm-site-radius);
		border-radius: var(--ruhrpm-site-radius) var(--ruhrpm-site-radius) var(--ruhrpm-site-radius) var(--ruhrpm-site-radius);
		font-size: var(--ruhrpm-site-p-fontsize);
		font-weight: 500;
		
		-webkit-transition: all 300ms ease;
		-moz-transition: all 300ms ease;
		-ms-transition: all 300ms ease;
		-o-transition: all 300ms ease;
		transition: all 300ms ease;
		
	}
	.ruhrpm-module--button a:hover {
		background: var(--ruhrpm-color-blue--darker);
		padding: 12px 45px;
	}
	
	.ruhrpm-module--button {
		padding: 30px 0 0 0
	}
	
	.ruhrpm-module--button.button-style--yellow a {
		background: var(--ruhrpm-color-gold);
		color: #000
	}
	.ruhrpm-module--button.button-style--orange a {
		background: var(--ruhrpm-color-orange);
		color: #fff
	}

/* footer */
	#site-footer {
		background: var(--ruhrpm-color-grey);
		background: #2e2e2e;
		background: linear-gradient(43deg, rgba(46, 46, 46, 1) 0%, rgba(97, 97, 97, 1) 64%, rgba(77, 77, 77, 1) 100%);
		color: #fff;
		position: relative;
		font-size: var(--ruhrpm-site-p-fontsize);
	}
	
	.ruhrpm-footer-logo {
		width: 80%;
		padding: 0 0 30px
	}
	.ruhrpm-footer-logo svg {
		width: 100%
	}
	
	#site-footer li {
		padding: 0;
	}
	#site-footer li:before {
		display: none
	}
	
	#site-footer a {
		color: #fff;
		opacity: .7
	}
	#site-footer a:hover,
	#site-footer li.current-menu-item a  {
		opacity: 1
	}
	
	.footer-widgets {
		padding: 100px 0 50px
	}
	
	.footer-widgets-group h2 {
		font-size: 2rem;
		font-weight: 400;
		padding: 0 0 50px 0;
		position: relative;
	}
	.footer-widgets-group h2:after {
		height: 2px;
		width: 100%;
		content: '';
		position: absolute;
		left: 0;
		bottom: 25px;
		background: #fff;
		opacity: .2
	}
	
	.footer-widgets-group {
	  display: grid;
	  grid-template-columns: repeat(4, 1fr); 
	  gap: 40px;
	}
	
	@media (max-width: 1024px) {
	  .footer-widgets-group {
	    grid-template-columns: repeat(2, 1fr); /* 2 Spalten */
	  }
	}
	
	@media (max-width: 600px) {
	  .footer-widgets-group {
	    grid-template-columns: 1fr; /* 1 Spalte */
	  }
	}
	
	.footer-bottom-group {
		padding: 0 0 40px 0;
		opacity: 1
	}
	.footer-bottom-group p,
	.footer-bottom-group li {
		font-size: 1.35rem
	}
	.site-main .footer-bottom-group p,
	#site-footer li a {
		opacity: .5
	}
	
	.site-main .footer-bottom-group ul li a:hover {
		opacity: 1
	}
	
	.footer-bottom-group .footer-bottom-column:last-child {
		text-align: right
	}
	
	.site-main .footer-bottom-group ul li {
		display: inline-block;
		margin: 0 0 0 20px
	}
	
	.footer-bottom-group {
		display: grid;
		gap: 20px; /* Abstand zwischen den Spalten */
		grid-template-columns: 1fr; /* Standard: eine Spalte */
	}
	
	.social-media-icons-container ul li {
		display: inline-block;
		margin: 0 10px 10px 0
	}
	
	.social-media-icons-container ul li a {
		width: 40px;
		height: 40px;
		background: none;
		display: block;
		overflow: hidden;
		text-indent: -9999px;
		background-position: center center;
		background-repeat: no-repeat;
		background-size: contain;
	}
	
	.social-media-icons-container ul li:first-child a {
		background-image: url("../img/icons/linkedin.svg");
	}
	.social-media-icons-container ul li:last-child a {
		background-image: url("../img/icons/youtube.svg");
	}
	
	.ruhrpm-module--kontakt  .social-media-icons-container ul li:before {
		display: none
	}
	.ruhrpm-module--kontakt  .social-media-icons-container ul li {
		padding: 0
	}
	
	.ruhrpm-module--kontakt .social-media-icons-container ul li:first-child a {
		background-image: url("../img/icons/linkedin-black.svg");
	}
	.ruhrpm-module--kontakt  .social-media-icons-container ul li:last-child a {
		background-image: url("../img/icons/youtube-black.svg");
	}
	
	/* Ab Bildschirmbreite 768px nebeneinander */
	@media (min-width: 768px) {
		.footer-bottom-group {
			grid-template-columns: 1fr 1fr; /* zwei Spalten gleich breit */
		}
	}
	
	
	/* MAIN */
		.site-main {
			padding: 200px 0 0 0;
		}
		.home .site-main {
			padding: 0 0 0 0;
		}
	
	 /* HEADER */
		 .site-header {
			 position: fixed;
			 top: 0;
			 left: 0;
			 width: 100%;
			 z-index: 9999999;
		 }
		 
		 .home .header-logo svg path {
			 -webkit-transition: all 400ms ease;
			  -moz-transition: all 400ms ease;
			  -ms-transition: all 400ms ease;
			  -o-transition: all 400ms ease;
			  transition: all 400ms ease;
		 }
		 
		 .home .header-logo svg path,
		 .home .header-logo svg rect { fill: #fff !important; }
		 
		 .home.scrolled .header-logo svg path,
		 .home.scrolled .header-logo svg rect { fill: var(--ruhrpm-color-blue) !important; }
		  
		 .site-header-background {
			 position: absolute;
			 left: 0;
			 width: 100%;
			 background: rgba(255, 255, 255, 0.948);
			 height: 100%;
			 z-index: 10;
			 backdrop-filter: blur(5px);
			 top: -100%;
			 -webkit-transition: all 400ms ease;
			 -moz-transition: all 400ms ease;
			 -ms-transition: all 400ms ease;
			 -o-transition: all 400ms ease;
			 transition: all 400ms ease;
		 }
		 .scrolled .site-header-background {
			 top: 0;
		 }
		 
		 .ruhrpm-header-box {
			 position: relative;
			 z-index: 10
		 }
		 

		
		.site-header {
			--accent: var(--ruhrpm-color-blue);
			--text: #0f172a;
			--gap: 0;
			--header-height: 72px;
			--menu-right-padding: 0;
		}
		
		 .header-inner {
		   max-width: 1200px;
		   margin: 0 auto;
		   padding: 12px var(--gap);
		   display: flex;
		   align-items: center;
		   justify-content: space-between;
		   height: var(--header-height);
		   gap: var(--gap);
		 }
		 
		 .header-logo {
		   flex: 0 0 auto;
		 }
		 .header-logo svg {
		   display: block;
		   width: 100%;
		   height: auto;
		   max-width: 160px;
		 }
		 
		 .main-nav {
		   position: relative;
		   flex: 1 1 0%;
		   display: flex;
		   justify-content: flex-end;
		   padding-right: var(--menu-right-padding);
		   text-transform: uppercase;
		   font-weight: 600
		 }
		 .nav-menu {
		   display: flex;
		   gap: 8px;
		   list-style: none;
		   margin: 0;
		   padding: 0;
		   position: relative;
		 }
		 .nav-menu li {
		   position: relative;
		 }
		 .nav-menu a {
		   display: inline-block;
		   padding: 10px 16px;
		   color: var(--text);
		   text-decoration: none;
		   font-size: 15px;
		   border-radius: 3px;
		   position: relative;
		   z-index: 2;
		   transition: color .18s ease;
		 }
		 .nav-menu li.current_page_item a {
		   background: var(--accent);
		   color: white;
		 }
		 
		 .nav-menu li#menu-item-60.current_page_item a {
			 background: var( --ruhrpm-color-gold)
		 }
		 .nav-menu li#menu-item-61.current_page_item a {
			  background: var( --ruhrpm-color-orange)
		  }
		 .nav-menu li#menu-item-62.current_page_item a {
			   background: var(--ruhrpm-color-blue--darker)
		   }
		   
		   
		.nav-menu li.ruhr-pm-header-menu-button a {
			background: #fff !important;
			color: var(--ruhrpm-color-blue) !important
		}
		   .scrolled .nav-menu li.ruhr-pm-header-menu-button a {
			   background: var(--ruhrpm-color-blue) !important;
			   color: #fff !important
		   }
	
		 
		 /* Hover-Hintergrund */
		 .hover-bg {
		   position: absolute;
		   top: 50%;
		   left: 0;
		   transform: translateY(-50%);
		   height: 40px;
		   width: 0;
		   background: #ddd;
		   border-radius: 3px;
		   z-index: 1;
		   pointer-events: none;
		   opacity: 0;
		   transition: left .25s ease, width .25s ease, opacity .2s ease;
		 }
		 @media (max-width:560px){
		   /* .header-inner{padding:10px 14px} */
		   .header-logo svg{max-width:120px}
		   .nav-menu a{padding:8px 10px; font-size:14px}
		   .hover-bg{height:36px}
		 }
		 
		 .ruhrpm-sidebar-container {
			 position: absolute;
			 top: 0;
			 left: 0;
			 width: 100%;
			 height: 100%;
			 overflow: scroll
		 }
		 .ruhrpm-sidebar-container-content  {
			 padding: 120px 40px
		 }
		 
		 #ruhrpm-sidebar-layer {
			 position: fixed;
			 top: 0;
			 left: 0;
			 width: 100%;
			 height: 100%;
			 background: rgba(255, 255, 255, 0.866);
			 z-index: 20000000;
			 backdrop-filter: blur(5px);
			 opacity: 0;
			 -webkit-transition: all 350ms ease-in-out;
			 -moz-transition: all 350ms ease-in-out;
			 -ms-transition: all 350ms ease-in-out;
			 -o-transition: all 350ms ease-in-out;
			 transition: all 350ms ease-in-out;
			 pointer-events: none;
		 }
		 
		 body.sidebar-visible #ruhrpm-sidebar-layer {
			 opacity: 1;
			 pointer-events: all
		 }
		
		@media screen and (max-width: 1200px) {
			.nav-menu a {
				display: inline-block;
				padding: 10px 10px;
			}
		}
		@media screen and (max-width: 1000px) {
			.nav-menu a {
				font-size: 13px;
			}
		}
		 
		 #ruhrpm-sidebar {
			 position: fixed;
			 right: 0;
			 top: 0;
			 width: 300px;
			 height: 100%;
			 z-index: 30000000;
			 -moz-transform: translateX(300px) translateY(0px);
			 -webkit-transform: translateX(300px) translateY(0px);
			 -o-transform: translateX(300px) translateY(0px);
			 -ms-transform: translateX(300px) translateY(0px);
			 transform: translateX(300px) translateY(0px);
			 
			 -webkit-transition: all 400ms ease-in-out;
			 -moz-transition: all 400ms ease-in-out;
			 -ms-transition: all 400ms ease-in-out;
			 -o-transition: all 400ms ease-in-out;
			 transition: all 400ms ease-in-out;
		 }
		 
		 .sidebar-visible #ruhrpm-sidebar {
			 -moz-transform: translateX(0px) translateY(0px);
			  -webkit-transform: translateX(0px) translateY(0px);
			  -o-transform: translateX(0px) translateY(0px);
			  -ms-transform: translateX(0px) translateY(0px);
			  transform: translateX(0px) translateY(0px);
		 }
		 
		 @media screen and (max-width: 800px) {
			 #ruhrpm-sidebar {
				 width: 100%;
				 -moz-transform: translateX(100%) translateY(0px);
				  -webkit-transform: translateX(100%) translateY(0px);
				  -o-transform: translateX(100%) translateY(0px);
				  -ms-transform: translateX(100%) translateY(0px);
				  transform: translateX(100%) translateY(0px);
			 }
		 }
		 
		 
		 #ruhrpm-sidebar:before {
			 content:'';
			 position: absolute;
			 top: 0;
			 left: 0;
			 width: 100%;
			 height: 100%;
			 background: rgba(80, 125, 160, .95);
			 backdrop-filter: blur(2px);
		 }
		 
		 #ruhrpm-sidebar li {
			 display: block
		 }
		 
		 #ruhrpm-sidebar
		 .nav-menu {
			 display: block
		 }
		 
		 #ruhrpm-sidebar
		  .nav-menu a {
			  padding: 0;
			  margin: 0
		  }
		  
		  @media screen and (max-width: 900px) {
			.main-nav {
				display: none
			}
		  }
		 
		
		.page--content {
			padding: 0 0 150px 0
		}
		
		.page--content h1 {
			color: var(--ruhrpm-color-blue);
			margin: 0 0 30px 0
		}
		.page--content h2 {
			color: var(--ruhrpm-color-blue);
			margin: 20px 0 10px 0;
			font-size: 3.4rem;
			font-weight: 600
		}
		.page--content h3 {
			color: var(--ruhrpm-color-blue);
			margin: 30px 0 10px 0;
			font-size: 2.8rem;
			font-weight: 600
		}
		
		.page--content h4 {
			color: var(--ruhrpm-color-grey);
			margin: 30px 0 10px 0;
			font-size: 2.4rem;
			font-weight: 600
		}
		
		.page--content a {
			color: var(--ruhrpm-color-blue)
		}
		
		@media screen and (max-width: 1400px) {
			.site-header {
				--menu-right-padding: 50px;
			}
		}
		@media screen and (max-width: 1200px) {
			.site-header {
				--menu-right-padding: 90px;
			}
		}
		@media screen and (max-width: 1000px) {
			.site-header {
				--menu-right-padding: 70px;
			}
		}
		
		.ruhrpm-module--text h1 {
			color: var(--ruhrpm-color-blue);
		}
		
		.ruhrpm-module--text h3 {
			color: var(--ruhrpm-color-blue)
		}
		
	/* Team */
	
	.rpm-teamgrid-container {
	    display: grid;
	    grid-template-columns: repeat(3, 1fr);
	    gap: 50px;
	}
	
	.rpm-teamgrid-item {
	    display: block;
	    text-decoration: none;
	    color: inherit;
	    transition: transform 0.3s;
	}
	
	.rpm-teamgrid-thumbnail img {
	    width: 100%;
	    height: auto;
	    display: block;
	    object-fit: cover;
	}
	
	.ruhrpm-module--team {
		background: var(--ruhrpm-color-sand);
		padding: 100px 0
	}
	
	.rpm-teamgrid-thumbnail-view {
		width: 100%;
		padding: 100% 0 0 0;
		border-radius: 5px;
		overflow: hidden;
		position: relative
	}
	
	.rpm-teamgrid-thumbnail-img {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		-webkit-transition: all 260ms ease-in-out;
		-moz-transition: all 260ms ease-in-out;
		-ms-transition: all 260ms ease-in-out;
		-o-transition: all 260ms ease-in-out;
		transition: all 260ms ease-in-out;
	}
	
	.rpm-teamgrid-thumbnail-img img {
		object-fit: cover;
		width: 100%;
		height: 100%;
		object-position: center center;
		-webkit-transition: all 260ms ease-in-out;
		-moz-transition: all 260ms ease-in-out;
		-ms-transition: all 260ms ease-in-out;
		-o-transition: all 260ms ease-in-out;
		transition: all 260ms ease-in-out;
	}
	
	h3.rpm-teamgrid-title {
		font-size: 1.8rem;
	}
	
	.rpm-teamgrid-item:hover .rpm-teamgrid-thumbnail-img {
		scale: 1.1
	}
	
	.rpm-teamgrid-info {
	    margin-top: 15px;
	    text-align: left;
	}
	
	.rpm-teamgrid-title {
	    font-size: 1.2rem;
	    margin: 0 0 5px;
	}
	
	.rpm-teamgrid-position {
	    font-size: 1rem;
	    color: #666;
	}
	
	/* Responsive Breakpoints */
	@media (max-width: 1024px) {
	    .rpm-teamgrid-container {
		grid-template-columns: repeat(2, 1fr);
	    }
	}
	
	@media (max-width: 600px) {
	    .rpm-teamgrid-container {
		grid-template-columns: 1fr;
	    }
	}
	
		
	.team-single {
		padding: 0 0 100px 0
	}
	
	.team-contact {
		padding: 20px 0 0 0
	}
	
	.team-contact h2 {
		font-weight: 400;
		color: var(--ruhrpm-color-blue);
		font-size: 2.6rem;
		margin: 20px 0 10px 0
	}
	.site-main .team-contact li a {
		color: var(--ruhrpm-color-blue);
	}
	.site-main .team-contact li {
		padding: 0;
		margin: 5px 0;
		font-size: 1.65rem
	}
	.team-contact li:before {
		display: none;
	}
	
	
	.home .nav-menu a { color: #fff }
	.home .nav-menu a:hover { color: var(--ruhrpm-color-blue) }
	.home.scrolled .nav-menu a { color: var(--ruhrpm-color-blue) }
		
	.home #ruhrpm-sidebar .nav-menu a {
		color: #fff
	}
	.home.scrolled #ruhrpm-sidebar .nav-menu a {
		color: #fff
	}	
	.rurhpm-team-single-header h1 {
		font-weight: 500;
		color: var(--ruhrpm-color-blue)
	}
	
	.rurhpm-team-single-header p {
		padding: 10px 0 0 0;
		color: var(--ruhrpm-color-blue)
	}
	.team-social {
		padding: 20px 0 0 0
	}
	
	.team-social svg {
		width: 50px;
		height: 50px;
	}
	
	@media screen and (max-width: 1000px) and (min-width: 450px) {
		.team-contact-group {
			display: grid;
			grid-template-columns: 1fr 1fr;
			  gap: 40px;
			  -webkit-box-shadow: -40px 40px 80px 0 rgba(0,0,0,0.1);
			    box-shadow: -40px 40px 80px 0 rgba(0,0,0,0.1);
			    background: #fff
		}	
		.team-contact-inner {
			padding: 40px 0
		}
		.team-contact h2 {
			padding: 0;
			margin: 0;
		}
		.team-contact {
			padding: 0
		}
	}
	
		
	img, svg {
		vertical-align: middle
	}
	
	/* STAGE */
		.ruhrpm-module--stage {
			width: 100%;
			position: relative
		}
		
		.ruhrpm-module--stage img {
			width: 100%;
			height: auto;
		}
		
		.stage-corner {
			position: absolute;
			left: 0;
			bottom: 0;
			width: 100%;
			text-align: center;
			z-index: 300
		}
		
		.stage-corner svg {
			width: 80px;
			height: auto
		}
		
		
		.ruhrpm-stage-content {
			position: absolute;
			z-index: 100;
			width: 100%;
			top: 0;
			left: 0
		}
		
		
		
		.ruhrpm-stage-content h1 {
			color: #fff;
			font-weight: 200;
			letter-spacing: -1px;
			font-size: 7rem;
			line-height: 1.1em
		}
		
		.ruhrpm-stage-content h2 {
			color: #fff;
			font-weight: 400;
			letter-spacing: 0px;
			font-size: 3rem;
			line-height: 1.2em
		}
		
		.ruhrpm-stage-content-box {
			padding: 200px 0 0 0	
		}
		
		.ruhrpm-stage-content-dates {
			padding: 40px 0 0 0
		}
			
		@media screen and (min-width: 1200px) {
			
			.ruhrpm-module--stage { height: 100dvh; }
			
			.ruhrpm-module--stage-image {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%
			}
			
			.ruhrpm-module--stage-image img {
				object-fit: cover;
				width: 100%;
				height: 100%;
				object-position: right center;
			}
		}	
			
			
		@media screen and (max-width: 1200px) {
			
			.ruhrpm-module--stage-image-layer {
				background: var(--ruhrpm-color-blue--darker);
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				z-index: 100;
				opacity: .3
			}
			
			.ruhrpm-module--stage-image {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%
			}
			
			.ruhrpm-module--stage-image img {
				object-fit: cover;
				width: 100%;
				height: 100%;
				object-position: right center;
			}
			
			.ruhrpm-stage-content {
				position: relative
			}
			.ruhrpm-module--stage {
				height: auto
			}
			.ruhrpm-module--stage {
				padding: 0 0 0 0;
				/* margin: 0 0 50px 0  */
			}
			
			
			.ruhrpm-stage-content h1 {
				font-size: 5rem;
				margin: 0 0 20px 0
			}
			.ruhrpm-stage-content h2 {
				font-size: 2rem
			}
		}
		
		@media screen and (max-width: 600px) {
			.ruhrpm-stage-content h1 {
				font-size: 4rem;
			}
			
			.ruhrpm-module--stage-image {
				position: relative;
				height: 400px
			}
			
			.ruhrpm-stage-content {
				background: var(--ruhrpm-color-blue)
			}
			.ruhrpm-stage-content-box {
				padding: 0 0 50px 0
			}
			.ruhrpm-stage-content-header {
				position: absolute;
				bottom: calc(100% + 40px);
				width: calc(100% - calc(2 * var(--ruhrpm-site-margin) ) );
			}
			
			.stage-corner svg {
				width: 40px
			}
			
		}
		
		@media screen and (max-width: 500px) {
			.ruhrpm-stage-content h1 {
				font-size: 3rem;
				font-weight: 500
			}
			.ruhrpm-module--stage-image {
			    height: 300px;
			  }
			  .ruhrpm-stage-content h2 {
			      font-size: 1.6rem;
			    }
		}
		@media screen and (max-width: 400px) {
			.ruhrpm-stage-content h1 {
				font-size: 2.4rem;
				font-weight: 500
			}
		}
			
	/* BURGER */
		/* Burger Button */
		  .burger {
		    position: fixed;
		    top: 38px;
		    left: auto;
		    right: 30px;
		    width: 40px;
		    height: 24px;
		    display: flex;
		    flex-direction: column;
		    justify-content: space-between;
		    cursor: pointer;
		    z-index: 40000000;
		  }
		
		  .burger span {
		    display: block;
		    height: 3px;
		    width: 100%;
		    background: var(--ruhrpm-color-blue);
		    border-radius: 2px;
		    transition: transform 0.3s, opacity 0.3s;
		  }
		  
		  .home .burger span {
			  background: #fff
		  }
		  .home.scrolled .burger span {
			    background: var(--ruhrpm-color-blue);
		    }
		.home.scrolled.sidebar-visible .burger span {
			    background: #fff
		    }
		
		  body.sidebar-visible .burger span:nth-child(1) {
		  -moz-transform: rotate(45deg) translateX(10px) translateY(10px);
		     -webkit-transform: rotate(45deg) translateX(10px) translateY(10px);
		     -o-transform: rotate(45deg) translateX(10px) translateY(10px);
		     -ms-transform: rotate(45deg) translateX(10px) translateY(10px);
		     transform: rotate(45deg) translateX(10px) translateY(10px);
		  }
		  body.sidebar-visible .burger span:nth-child(2) {
		    opacity: 0;
		  }
		  body.sidebar-visible .burger span:nth-child(3) {
		   -moz-transform: rotate(-45deg) translateX(3px) translateY(-5px);
		   -webkit-transform: rotate(-45deg) translateX(3px) translateY(-5px);
		   -o-transform: rotate(-45deg) translateX(3px) translateY(-5px);
		   -ms-transform: rotate(-45deg) translateX(3px) translateY(-5px);
		   transform: rotate(-45deg) translateX(3px) translateY(-5px);
		  }
		  
		  .sidebar-visible .burger span {
			  background: #fff
		  }
		  
		  .sidebar--address {
			  padding: 40px 0 0 0;
			  color: #fff
		  }
		  
		  .sidebar-nav a {
			  color: #fff;
			  opacity: .6;
		  }
		  
		  .sidebar-nav a:hover,
		  .sidebar-nav li.current_page_item a {
			  opacity: 1
		  }
		  
		  .sidebar--address p {
			  font-size: 1.55rem;
			  line-height: 1.5em;
		  }
		  .sidebar--address p a {
			  color: #fff
		  }
		  
		  .ruhrpm-sidebar-container-content li  {
			  padding: 0 0 20px 0
		  }
		  .ruhrpm-sidebar-container-content li a {
			  font-size: 2.4rem;
		  }
		  
		  
		  
		 .ruhrpm-team-detail-container {
		   display: grid;
		   grid-template-columns: 1fr;
		   gap: 40px;
		 }
		 
		 .rurhpm-team-single-header {
			 padding: 0 0 30px 0
		 }
		 
		 .ruhrpm-team-detailed-box {
			 margin: 0 0 40px 0;
			 -webkit-box-shadow: -40px 40px 80px 0 rgba(0,0,0,0.1);
			 box-shadow: -40px 40px 80px 0 rgba(0,0,0,0.1);
			 padding: 20px
		 }
		 .ruhrpm-team-detailed-box h3 {
			 font-size: 2.2rem;
			 color: var(--ruhrpm-color-blue);
			 margin: 0 0 20px 0
		 }
		 
		 @media screen and (min-width: 700px) and (max-width: 999px) {
		   .ruhrpm-team-detail-container {
		     grid-template-columns: 1fr 1fr;
		     grid-template-rows: auto auto;
		     grid-template-areas:
		       "right right"  
		       "left center"; 
		   }
		 
		   .ruhrpm-team-detail-right { grid-area: right; }
		   .ruhrpm-team-detail-left { grid-area: left; }
		   .ruhrpm-team-detail-center { grid-area: center; }
		 }
		 
		 .team-image {
			 width: 100%;
			 height: auto
		 }
		 .ruhrpm-team-detail-right img {
			 width: 100%; height: auto
		 }
		 
		 .ruhrpm-logo-slider-headline { text-align: center }
		 
		 @media screen and (min-width: 1000px) {
		   .ruhrpm-team-detail-container {
		     grid-template-columns: 2fr 2fr 2fr; 
		     grid-template-areas: "left center right";
		   }
		 
		   .ruhrpm-team-detail-right { grid-area: right; }
		   .ruhrpm-team-detail-left { grid-area: left; }
		   .ruhrpm-team-detail-center { grid-area: center; }
		 }
		 
		 .hubspot-formular-container {
			 padding: 30px;
			 -webkit-box-shadow: 40px 40px 80px 0 rgba(0,0,0,0.1);
			 box-shadow: 40px 40px 80px 0 rgba(0,0,0,0.1);
			 background: #fff;
			 border-right: 5px solid var(--ruhrpm-color-blue);
		 }
		 .hubspot-formular-container  a {
			 color: var(--ruhrpm-color-blue);
		 }
		 
		 .hubspot-formular-container-headline
		 {
			 padding: 0 0 30px 0
		 }
		 .hubspot-formular-container-headline h2 {
			 font-size: 2.6rem;
			color: var(--ruhrpm-color-blue);
			margin: 0 0 20px 0
		 }
		 
		
	/* BLOG */
	
	#load-more {
	  display: none;
	}
	
	#loader {
	  display: block;
	  position: fixed;
	  top: 0;
	  left: 0;
	  width: 100%;
	  height: 100dvh;
	  z-index: 100;
	  text-align: center;
	  display: flex;
	  justify-content: center; /* horizontal zentrieren */
	    align-items: center;     /* vertikal zentrieren */
	    background: rgba(255, 255, 255, 0.946);
	    backdrop-filter: blur(2px);
	    -webkit-transition: all 200ms ease;
	    -moz-transition: all 200ms ease;
	    -ms-transition: all 200ms ease;
	    -o-transition: all 200ms ease;
	    transition: all 200ms ease;
	}
	
	.blog-filter-container {
		padding: 30px 0 20px 
	}
	
	.spinner {
	  border: 4px solid #f3f3f3;
	  border-top: 4px solid var(--ruhrpm-color-blue);
	  border-radius: 50%;
	  width: 40px;
	  height: 40px;
	  animation: spin 1s linear infinite;
	  margin: 0 auto;
	}
	
	@keyframes spin {
	  0% { transform: rotate(0deg); }
	  100% { transform: rotate(360deg); }
	}
	
	.blog-filter-container {
	  display: flex;
	  flex-wrap: wrap;
	  gap: 10px;
	  margin-bottom: 20px;
	}
	.blog-filter-container .filter-btn {
	  padding: 8px 14px;
	  border-radius: 30px;
	  cursor: pointer;
	  background: #f8f8f8;
	  border: 1px solid var(--ruhrpm-color-blue);
	  color: var(--ruhrpm-color-blue);
	}
	.blog-filter-container .filter-btn.active {
	  background: var(--ruhrpm-color-blue);
	  color: #fff;
	}
	
	.masonry-grid {
	  column-count: 3;
	  column-gap: 40px;
	}
	.ruhrpm-blog-teaser-item  {
	  display: inline-block;
	  margin-bottom: 40px;
	  width: 100%;
	  background: #fff;
	  border-radius: 4px;
	  overflow: hidden;
	  -webkit-box-shadow: 30px 30px 60px 0 rgba(0,0,0,0.2);
	  box-shadow: 30px 30px 60px 0 rgba(0,0,0,0.2);
	}
	
	.ruhrpm-blog-teaser-item--inner {
		padding: 20px
	}
	
	.masonry-item img {
	  width: 100%;
	  height: auto;
	  border-radius: 4px;
	}
	.read-more {
	  display: inline-block;
	  margin-top: 10px;
	  color: var(--ruhrpm-color-blue);
	}
	
	.ruhrpm-blog-teaser-item--headline h3 {
		font-size: 2.4rem;
	}
	.ruhrpm-blog-teaser-item--headline {
		padding: 10px 0 20px 0
	}
	.ruhrpm-blog-teaser-item--headline a h3  {
		color: var(--ruhrpm-color-blue);
	}
	
	.ruhrpm-blog-teaser-container { 
		padding: 0 0 100px 0
	}
	
	.ruhrpm-blog-teaser-item--inner .categories {
		padding: 10px 0 0 0;
		font-size: 1.4rem;
	
	}
	.ruhrpm-blog-teaser-item--inner .categories a { 
		color: #888
	}
	
	.ruhrpm-blog-teaser-item--readmore a {
		background: var(--ruhrpm-color-grey);
		opacity: .7;
		color: #fff;
		font-size: 1.45rem;
		display: inline-block;
		padding: 7px 20px;
		-webkit-transition: all 300ms ease-in-out;
		-moz-transition: all 300ms ease-in-out;
		-ms-transition: all 300ms ease-in-out;
		-o-transition: all 300ms ease-in-out;
		transition: all 300ms ease-in-out;
	}
	.ruhrpm-blog-teaser-item--readmore a:hover {
		background: var(--ruhrpm-color-blue);
		color: #fff;
		opacity: 1;
		padding: 7px 30px
	}
	
	
	
	
	/* --- Tablet (bis ~1024px) --- */
	@media (max-width: 1024px) {
	  .masonry-grid {
	    column-count: 2;
	    column-gap: 16px;
	  }
	
	  .ruhrpm-blog-teaser-item--inner {
	    padding: 16px;
	  }
	
	  .ruhrpm-blog-teaser-item--headline h3 {
	    font-size: 2rem;
	  }
	}
	
	/* --- Mobile (bis ~768px) --- */
	@media (max-width: 768px) {
	  .masonry-grid {
	    column-count: 1;
	    column-gap: 0;
	  }
	
	  .ruhrpm-blog-teaser-container {
	    padding: 0 0 60px 0;
	  }
	
	  .ruhrpm-blog-teaser-item {
	    box-shadow: 0 10px 14px rgba(0, 0, 0, 0.08);
	  }
	
	  .ruhrpm-blog-teaser-item--inner {
	    padding: 14px;
	  }
	
	  .ruhrpm-blog-teaser-item--headline h3 {
	    font-size: 1.8rem;
	  }
	
	  .blog-filter-container {
	
	    padding: 15px 0;
	    gap: 8px;
	  }
	
	  .blog-filter-container .filter-btn {
	    flex: 0 0 auto;
	    font-size: 1.4rem;
	    padding: 6px 12px;
	  }
	}
	
	/* --- Sehr kleine Geräte (z. B. iPhone SE, <480px) --- */
	@media (max-width: 480px) {
	  .ruhrpm-blog-teaser-item--headline h3 {
	    font-size: 1.6rem;
	  }
	
	  .ruhrpm-blog-teaser-item--inner {
	    padding: 12px;
	  }
	}
	
	
	.ruhrpm-flex-content-image-container {
		width: 100%;
		height: auto;
	}
		.ruhrpm-flex-content-image-container img {
			width: 100%;
			height: auto;
			vertical-align: middle
		}
	
	.team-listing-single-post {
		margin: 0;
	}
	.site-main ul.team-listing-single-post li {
		margin: 0;
		padding: 0
	}
	
	.site-main ul.team-listing-single-post li a {
		color: var(--ruhrpm-color-blue);
	}
	
	.ruhrpm-blog-post-title {
		padding: 20px 0 20px 0
	}
	
	.ruhrpm-module--dynamiccontent-item p a {
		color: var(--ruhrpm-color-blue)
	}
	
	.ruhrpm-blog-post-title h1 {
		font-size: 6.2rem;
		line-height: 1.2em;
		font-weight: 600;
		color: var(--ruhrpm-color-blue);
	}
	
	.site-main ul.team-listing-single-post li:before {
		display: none;
		padding: 0;
		margin: 0
	}
	
	.ruhrpm-module--dynamiccontent-item.module--disabled-padding {
		padding: 0
	}
	
	#wpadminbar {
		z-index: 99999999 !important
	}
	body.admin-bar .site-header {
		top: 32px
	}
	body.admin-bar .burger{
		top: 64px
	}
	
	
	
	.ruhrpm-flex-content-textimage-container-group {
	  display: flex;
	  align-items: flex-start; 
	  gap: 40px;
	  box-sizing: border-box; 
	}
	
	.imagewidth-20 .ruhrpm-flex-content-textimage-container-column--image { flex: 0 0 20%; }
	.imagewidth-30 .ruhrpm-flex-content-textimage-container-column--image { flex: 0 0 30%; }
	.imagewidth-50 .ruhrpm-flex-content-textimage-container-column--image { flex: 0 0 50%; }
	.imagewidth-70 .ruhrpm-flex-content-textimage-container-column--image { flex: 0 0 70%; }
	
	.ruhrpm-flex-content-textimage-container-group .ruhrpm-flex-content-textimage-container-column--text {
	  flex: 1;
	  min-width: 0; /* wichtig für Flexbox damit Text nicht rausläuft */
	}
	
	.ruhrpm-flex-content-textimage-container-column--image,
	.ruhrpm-flex-content-textimage-container-column--text {
		box-sizing: border-box; 
	}
	
	
	.bild_position-links .ruhrpm-flex-content-textimage-container-group { flex-direction: row; }
	.ruhrpm-flex-content-textimage-container.bild_position-rechts .ruhrpm-flex-content-textimage-container-group { flex-direction: row-reverse; }
	
	.ruhrpm-flex-content-textimage-container-column--image img {
	  width: 100%;
	  height: auto;
	  display: block;
	}
	
	.imagewidth-100 .ruhrpm-flex-content-textimage-container-group {
		display: block
	}
	.imagewidth-100 .ruhrpm-flex-content-textimage-container-column--image { 
		padding: 0 0 40px 0
	}
	
	.ruhrpm-blog-post-title h1 {
		padding: 0 0 30px 0
	}
	
	.ruhrpm-authorbox-inner {
		padding: 20px
	}
	
	.ruhrpm-blog-post-title h2 {
		font-size: 3rem;
		color: #555;
		margin: 20px 0 10px;
		font-weight: 600;
	}
	
	.ruhrpm-blogarticle-header {
		padding: 0 0 50px 0
	}
	
	.ruhrpm-authorbox .author-image {
		width: 100%
	}
	
	.ruhrpm-authorbox {
		-webkit-box-shadow: -40px 40px 80px 0 rgba(0,0,0,0.1);
		box-shadow: -40px 40px 80px 0 rgba(0,0,0,0.1);
	}
	
	
	@media screen and (max-width: 900px) {
		.ruhrpm-blog-post-title h1 {
			font-size: 3.4rem;
			line-height: 1.2em;
			padding: 0 0 20px 0 !important;
			margin: 0 !important
		}
		.ruhrpm-blog-post-title {
			padding: 0
		}
		
		
	}
	
	
	@media screen and (max-width: 1200px) {
		.ruhrpm-stage-content-box {
			padding: 200px 0 100px 0;
		}
	}
	@media screen and (max-width: 600px) {
		.ruhrpm-stage-content-box {
			padding: 20px 0 50px 0;
		}
		.ruhrpm-stage-content-dates {
			padding: 20px 0 0 0
		}
		
		.ruhrpm-termin-item-box p {
			opacity: .5
		}
		
		.ruhrpm-termin-list-wrapper .ruhrpm-termin-item {
			position: relative
		}
		.ruhrpm-termin-item:after {
			content:'';
			position: absolute;
			left: 0;
			bottom: -7px;
			width: 100%;
			height: 2px;
			background: #fff;
			opacity: .3
		}
		.ruhrpm-termin-list-wrapper .ruhrpm-termin-item:last-child::after {
			display: none
		}
	}
	
	
	.termin-box-icon {
		position: absolute;
		right: 0;
		top: 0;
		width: 30px;
		height: 100%;
		z-index: 10;
		display: flex;
		justify-content: center;
		align-items: center;
		pointer-events: none;
		opacity: 0;
	}
	
	.termin-box-icon svg path {
		fill: #fff !important
	}
	
	@media screen and (min-width: 600px) {
		.termin-box-icon {
			display: none
		}
	}
	@media screen and (max-width: 600px) {
		/* .ruhrpm-termin-item-box h3 {
			width: calc(100% - 60px);
		} */
	
	}
	
	
	.ruhrpm-sitemap-group {
		padding: 30px 50px;
		background: #fff;
		-webkit-box-shadow: -40px 40px 80px 0 rgba(0,0,0,0.1);
		box-shadow: -40px 40px 80px 0 rgba(0,0,0,0.1);
		margin: 0 0 30px 0;
		position: relative
	}
	
	.ruhrpm-sitemap-group:after {
		width: 5px;
		left: 0;
		height: 100%;
		position: absolute;
		top: 0;
		content: '';
		z-index: 10;
		background: var(--ruhrpm-color-blue)
	}
	
	.site-main .ruhrpm-sitemap-group li { 
		padding: 0 0 0 40px
	}
	
	.site-main .ruhrpm-sitemap-group li:before {
		width: 30px;
		height: 6px;
		top: 9px
	}
	.site-main .ruhrpm-sitemap-group li li:before {
		width: 60px;
		left: -40px;
		height: 2px;
		top: 11px;
		opacity: .5
	}
	
	.site-main .ruhrpm-sitemap-group ul li ul {
		padding: 10px 0 20px
	}
	
	
	
	.ruhrpm-module--kontakt-columns {
	  display: grid;
	  grid-template-columns: 60% 40%;
	  gap: 50px;
	  margin: 0 auto; /* zentriert den Container */
	}
	
	.ruhrpm-module--kontakt-headline {
		padding: 0 0 30px 0;
	}
	
	.ruhrpm-module--kontakt-headline  h2 {
		color: var(--ruhrpm-color-blue)
	}
	
	.ruhrpm-module--kontakt-columns-left {
	}
	
	.ruhrpm-module--kontakt-columns-left img {
		width: 100%;
		height: auto
	}
	
	.ruhrpm-module--kontakt-columns p a {
		color: var(--ruhrpm-color-blue)
	}
	
	.ruhrpm-module--kontakt-columns-right {
	}
	
	.ruhrpm-module--kontakt-columns .ruhrpm-module--button  {
		padding: 15px 0
	}
	
	/* 📱 Mobile Ansicht (z. B. unter 768px Breite) */
	@media (max-width: 768px) {
	  .ruhrpm-module--kontakt-columns {
	    grid-template-columns: 1fr; /* nur eine Spalte */
	    gap: 20px; /* etwas kleinerer Abstand */
	  }
	
	  .ruhrpm-module--kontakt-columns-left,
	  .ruhrpm-module--kontakt-columns-right {
	    width: 100%;
	  }
	}
	
	.ruhrpm-module--kontakt-columns-left-image {
		-webkit-border-radius: 4px 4px 4px 4px;
		border-radius: 4px 4px 4px 4px;
		overflow: hidden
	}
	
	.site-main .ruhrpm-module--kontakt-columns-right h4 {
		margin: 0 0 20px 0;
		color: var(--ruhrpm-color-blue)
	}
	
	.site-main  .ruhrpm-buttonlist-item h4 {
		margin: 0 0 10px 0;
		color: var(--ruhrpm-color-blue)
	}
	
	.ruhrpm-buttonlist-item
	.ruhrpm-module--button {
		padding: 0;
		margin: 0
	}
	
	.ruhrpm-buttonlist-item  {
		padding: 0 0 40px 0
	}
	
	.ruhrpm-flex-content-textimage-buttonlist .ruhrpm-buttonlist-item:last-child {
		padding: 0
	}
	
	.ruhrpm-flex-content-image-container {
		box-shadow: 0px 15px 15px -10px rgba(0,0,0,0.05);
	}
	
	
	
	/* === Termin Box Styles === */
	.termin-box {
	  margin: 3rem auto;
	  background: #fff;
	  border-radius: 16px;
	  box-shadow: 0 4px 20px rgba(0,0,0,0.08);
	  border: 1px solid #eee;
	  overflow: hidden;
	}
	
	.termin-box-inner {
	  display: flex;
	  flex-wrap: wrap;
	}
	
	.termin-details,
	.termin-location {
	  flex: 1 1 300px;
	  padding: 2rem;
	}
	
	.termin-details {
	  background: #f9fafb;
	  border-right: 1px solid #eee;
	}
	
	.termin-location {
	  background: #ffffff;
	}
	
	.termin-heading {
	  font-size: 2rem;
	  font-weight: 600;
	  margin-bottom: 0.75rem;
	  color: var(--ruhrpm-color-blue);
	}
	
	.termin-details p,
	.termin-location-text {
	  font-size: var(--ruhrpm-site-p-fontsize);
	  color: #222;
	}
	
	.termin-box p {
	  margin: 0;
	}
	
	.termin-box {
	  transition: transform 0.2s ease, box-shadow 0.2s ease;
	}
	
	/* Responsive */
	@media (max-width: 768px) {
	  .termin-box-inner {
	    flex-direction: column;
	  }
	  .termin-details {
	    border-right: none;
	    display: block;
	    border-bottom: 1px solid #eee;
	  }
	  .termin-box-inner {
		  display: block
	  }
	}
	
	
	
	.termine-liste {
	  display: grid;
	  grid-template-columns: 1fr;
	  gap: 1.5rem;
	}
	
	.termin-card {
	  background: #fff;
	  border-radius: 1rem;
	  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
	  padding: 30px;
	  transition: transform 0.3s ease, box-shadow 0.3s ease;
	}
	
	.termin-title {
	  font-size: 3rem;
	  font-weight: 400;
	  margin-bottom: 0.5rem;
	  color: #222;
	}
	
	.termin-datum {
	  font-size: 0.95rem;
	  color: #666;
	  margin-bottom: 0.75rem;
	}
	
	.termin-teaser {
	  font-size: 1rem;
	  color: #444;
	  margin-bottom: 0.75rem;
	}
	
	.termin-ort {
	  font-size: 0.9rem;
	  color: #777;
	  margin-bottom: 1rem;
	}
	
	.termin-btn {
	  display: inline-block;
	  padding: 0.6rem 1.2rem;
	  background: #0073aa;
	  color: #fff;
	  font-size: var(--ruhrpm-site-p-fontsize);
	  border-radius: 50px;
	  text-decoration: none;
	  font-weight: 600;
	  transition: background 0.3s ease;
	}
	
	.termin-btn:hover {
	  background: #005d88;
	}
	
	.termin-box-icon-cal {
		position: absolute;
		top: 0;
		left: 0;
		width: 60px;
		height: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		-webkit-transition: all 250ms ease-in-out;
		-moz-transition: all 250ms ease-in-out;
		-ms-transition: all 250ms ease-in-out;
		-o-transition: all 250ms ease-in-out;
		transition: all 250ms ease-in-out;
	}
	
	
	@media (hover: hover) and (pointer: fine) {
		.ruhrpm-termin-item-box:hover {
		}
		
		
		.ruhrpm-termin-item-box:hover .termin-box-icon-cal {
		}
	}
	
	
	
	#ruhrpm-blog-main{
		--gap: 40px;
		--card-radius: 3px;
		--card-bg: #fff;
		--breakpoint-tablet: 900px; /* 3 -> 2 */
		--breakpoint-mobile: 600px; /* 2 -> 1 */
	}

	
	.ruhrpm-blog-grid {
	  display: grid;
	 
	    
	  grid-template-columns: repeat(3, 1fr); 
	  gap: var(--gap);
	  align-items: stretch; 
	}
	
	.ruhrpm-blog-grid .ruhrpm-grid-card {
	  display: flex;
	  flex-direction: column;
	  background: var(--card-bg);
	  border-radius: var(--card-radius);
	  box-shadow: 20px 30px 40px rgba(0,0,0,.3);
	  overflow: hidden;
	  min-height: 220px; 
	  margin: 0
	}
	
	.ruhrpm-blog-teaser-item--image {
		height: 200px;
	}
	.ruhrpm-blog-teaser-item--image img {
		object-fit: cover;
		object-position: center center;
		height: 100%;
		width: 100%
	}

	@media (max-width: 900px) {
	  .ruhrpm-blog-grid {
	    grid-template-columns: repeat(2, 1fr);
	  }
	}
	
	@media (max-width: 500px) {
	 .ruhrpm-blog-grid {
	    grid-template-columns: 1fr;
	  }
	
	}
	
	.error404 h1.wp-block-heading {
		margin: 0 0 20px 0
	}
	
	
	Element {
	  height: 100dvh;
	}
	.brlbs-cmpnt-container .brlbs-p-4 {
	  padding: 16px;
	
	}
	.brlbs-cmpnt-container .brlbs-overflow-auto {
	  overflow: auto;
	
	}
	.brlbs-cmpnt-container .brlbs-w-screen {
	  width: 100vw;
	}
	.brlbs-cmpnt-container .brlbs-h-screen {
	  height: 100vh;
	}
	
	.brlbs-cmpnt-container .brlbs-z-max {
	  z-index: 99999999999 !important;
	}