@font-face {
	font-family: 'D-DIN';
	src: url('../fonts/D-DIN-Italic.eot');
	src: url('../fonts/D-DIN-Italic.eot?#iefix') format('embedded-opentype'),
		url('../fonts/D-DIN-Italic.woff2') format('woff2'),
		url('../fonts/D-DIN-Italic.woff') format('woff');
	font-weight: normal;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'D-DIN';
	src: url('../fonts/D-DIN.eot');
	src: url('../fonts/D-DIN.eot?#iefix') format('embedded-opentype'),
		url('../fonts/D-DIN.woff2') format('woff2'),
		url('../fonts/D-DIN.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'D-DIN';
	src: url('../fonts/D-DIN-Bold.eot');
	src: url('../fonts/D-DIN-Bold.eot?#iefix') format('embedded-opentype'),
		url('../fonts/D-DIN-Bold.woff2') format('woff2'),
		url('../fonts/D-DIN-Bold.woff') format('woff');
	font-weight: bold;
	font-style: normal;
	font-display: swap;
}

@media (min-width: 1600px) {
	.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl, container-xxxl {
		max-width:1500px
	}
}



:root {
  /* Yellow-Green */
  --ecym-yellow-green: #E7FF00;
  --ecym-yellow-green-75: #EDFF3F;
  --ecym-yellow-green-50: #F3FF7F;
  --ecym-yellow-green-25: #F9FFBF;

  /* Light Blue */
  --ecym-light-blue: #B0DEED;
  --ecym-light-blue-75: #C3E6F1;
  --ecym-light-blue-50: #D7EEF6;
  --ecym-light-blue-25: #EBF6FA;

  /* Blue */
  --ecym-blue: #4F92FE;
  --ecym-blue-75: #7BADFE;
  --ecym-blue-50: #A7C8FE;
  --ecym-blue-25: #D3E3FE;

  /* Deep Blue */
  --ecym-deep-blue: #2430CE;
  --ecym-deep-blue-75: #5A63DA;
  --ecym-deep-blue-50: #9197E6;
  --ecym-deep-blue-25: #C8CBF2;
  --ecym-deep-blue-125: #1B249B;
  --ecym-deepest-blue: #0f1359;

  /* Green Scale */
  --ecym-green: #45C12F;
  --ecym-green-75: #74D163;
  --ecym-green-50: #A2E097;
  --ecym-green-25: #D1F0CB;
  --ecym-green-125: #359325;
  
  
  --ecym-light-gray:#ebeff5 ;
  --ecym-lighter-gray: #f7f9fb;
  --text: #231F20;
  --offwhite: #efefef;
  
  --navbar-height: 100px;
  --navbar-height-mobile: 70px;
  --tec-font-family-sans-serif: "D-DIN", -apple-system, BlinkMacSystemFont, Roboto, Arial, sans-serif;
  --tec-color-accent-primary:  #45C12F;
  --tec-color-text-event-title:  #2430CE;
  --tec-line-height-0: 1.1;
  --tec-line-height-1: 1.42;
  --tec-line-height-2: 1.5;
  --tec-line-height-3:1.62;
  --tec-color-text-primary: #231F20;
  --tec-color-text-event-title-list:  #2430CE;
  --tec-color-background-events-bar-submit-button-hover: #359325;
  --tec-color-background-events-bar-submit-button-active: #359325;
  --tec-color-text-primary: #231F20;
}


body {
	font-family: 'D-DIN', system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	color: var(--text);
	font-size: 18px;
	font-weight: normal;
    animation: fadeIn 0.5s ease-in;
}

section {
  outline: none!important;
}

ul li {
  font-size: 20px;
}


@keyframes fadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}



.page p {
  font-size: 20px;
}

.page .lead, .lead {
  font-size: 1.5rem;
  line-height: 1.3;
  font-weight: inherit;
}



.offcanvas {
  background-color: var(--ecym-yellow-green-25);
}


.max-700 {
   max-width: 100%;
}

@media (min-width: 768px) {
.max-700 {
	width: 700px;
	margin-left: auto;
	margin-right: auto;
}
 }
 
.max-780 {
    max-width: 100%;
 }
 
 @media (min-width: 768px) {
 .max-780 {
   width: 780px;
   margin-left: auto;
   margin-right: auto;
 }
  }

.container {
	padding-right: calc(var(--bs-gutter-x) * .5 + 0.75em);
	padding-left: calc(var(--bs-gutter-x) * .5 + 0.75em);
}



@media (min-width: 992px) {
	.container {
		padding-right: calc(var(--bs-gutter-x) * .5);
		padding-left: calc(var(--bs-gutter-x) * .5);
	}
 }

a, a:visited, a:active {
	 color: var(--ecym-green);
	 text-decoration: none;
    transition: all ease-in 0.2s;
 }
 
 a:hover {
	 color: var( --ecym-blue);
	 text-decoration: none;
 }
 
 a.btn {
   color: #fff;
 }
 
 .btn {
   --bs-btn-padding-x: 1rem;
   --bs-btn-padding-y: 0.5rem;
 
   --bs-btn-font-size: 1rem;
   --bs-btn-font-weight: 600;
   --bs-btn-line-height: 1.5;
   --bs-btn-color: #212529;
   --bs-btn-bg: transparent;
 
   --bs-btn-border-radius: 0px;
   --bs-btn-hover-border-color: transparent;
   --bs-btn-box-shadow: none;
   --bs-btn-disabled-opacity: 0.65;
   --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
   transition: all ease-in-out 0.2s;
 }
 
 .btn-primary {
     color: #fff;
     --bs-btn-bg: var(--ecym-blue);
     --bs-btn-border-color: var(--ecym-blue);
     --bs-btn-hover-color: #fff;
     --bs-btn-hover-bg: var(--ecym-deep-blue);
     --bs-btn-hover-border-color: var(--ecym-deep-blue);
     --bs-btn-focus-shadow-rgb: 111, 82, 255;
     --bs-btn-active-color: #fff;
     --bs-btn-active-bg: var(--ecym-deep-blue);
     --bs-btn-active-border-color: var(--ecym-deep-blue);
     --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
     --bs-btn-disabled-color: #fff;
     --bs-btn-disabled-bg: var(--ecym-deep-blue-50);
     --bs-btn-disabled-border-color: var(--ecym-deep-blue-50)
 
 }
 
 .btn-secondary {
   color: #fff;
   --bs-btn-bg: var(--ecym-green);
   --bs-btn-border-color: var(--ecym-green);
   --bs-btn-hover-color: #fff;
   --bs-btn-hover-bg: var(--ecym-green-125);
   --bs-btn-hover-border-color: var(--ecym-green-125);
   
 }
 
 .btn-outlined, .btn-outlined:visited{
  background-color: transparent; 
  border: 1px solid var(--ecym-deep-blue);
  color: var(--ecym-deep-blue)!important;
  transition: all ease-in-out 0.3s; 
}

  .btn-outlined:hover, .btn-outlined:active {
    background-color: var(--ecym-deep-blue)!important;
    color: white!important;
  }



 /* HEADER */
 
.navbar-light-blue-25  { background-color: var(--ecym-light-blue-25); }
 .navbar-light-blue-50  { background-color: var(--ecym-light-blue-50); }
 .navbar-yellow-green-25 { background-color: var(--ecym-yellow-green-25); }
 .navbar-yellow-green-50 { background-color: var(--ecym-yellow-green-50); }
 .navbar-blue-25        { background-color: var(--ecym-blue-25); }
 .navbar-blue-50        { background-color: var(--ecym-blue-50); }
 .navbar-deep-blue-25   { background-color: var(--ecym-deep-blue-25); }
 .navbar-deep-blue-50   { background-color: var(--ecym-deep-blue-50); }
 .navbar-green-25       { background-color: var(--ecym-green-25); }
 .navbar-green-50       { background-color: var(--ecym-green-50); }
 .navbar-light-gray     { background-color: var(--ecym-light-gray); }
 .navbar-light-blue     { background-color: var(--ecym-light-blue); }
 .navbar-dark-blue      { background-color: var(--ecym-deep-blue); }
 
 .navbar-brand {
	 max-width: var(--navbar-height-mobile);
	 height: auto;
	 margin: 0;
	 padding: 0;
 }
 

 
 
 @media (min-width: 992px) {
	 .navbar-brand {
	 max-width: var(--navbar-height);
	 height: auto;
	 }
  }
 
 .navbar {
	 --bs-navbar-padding-y: 0;
	 --bs-navbar-nav-link-padding-x: 1em;
	 --bs-navbar-nav-link-padding-y: 1em;
	  
 
 }
 
 .navbar-toggler-icon {
	 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='%232430CE' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
 }
 
 .offcanvas-ecpd .btn-close {
	 background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%232430CE'%3E%3Cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3E%3C/svg%3E") center / 1em auto no-repeat;
 }
 
 
 .main-menu-desktop .nav-link {
	 display: block;
	 text-align: center;
	 color: var(--ecym-deep-blue);
	 padding-right: 1em;
	 padding-left: 1em;
     text-transform: uppercase;
     font-size: 16px;
     font-weight: 600;

 }
 
 .desktop-menu {
	 height: var(--navbar-height);
   margin-top: -5px;
	 
 }
 
 .main-menu-desktop {
	 height: var(--navbar-height);
	 display: flex;
	 align-items:center;
 }
 
 
 .wpml-ls-item .dropdown-menu {
   background: transparent;
   border: none;
 }

.wpml-ls-slot-shortcode_actions .wpml-ls-link{
  padding-left: 0px;
  font-size: 15px;
}

 /*
 
 Older Menu Design
 
 .main-menu-desktop ul {
	 height: var(--navbar-height);
	 display: flex;
	 align-items: center;
 }
 
 .main-menu-desktop li.menu-item {
	 height: 100%;
	 display: flex;
	 align-items: end;
	 transition: color .25s ease-in-out,background-color .25s ease-in-out,border-color .25s ease-in-out;
 }
 
 .main-menu-desktop li.menu-item:hover{
	 background: var(--ecym-yellow-green);
 }
 
 .main-menu-desktop li.menu-item:hover a{
	 color: var(--ecym-deep-blue);
	 text-decoration: none;
 }
 
 .main-menu-desktop li.current-menu-item {
	 background-color: var(--ecym-yellow-green);
 }
 
 .main-menu-desktop li.current-menu-item a {
	 color: var(--ecym-deep-blue);
 }
*/
 
.sticky-title {
  position: sticky;
  top: 20px;
}
 
 
 .main-menu-desktop ul {
     height: var(--navbar-height);
     display: flex;
     align-items: center;
 }
 
 .main-menu-desktop li.menu-item {
     position: relative;
     height: 100%;
     display: flex;
     align-items: end;
 }
 
.main-menu-desktop li.menu-item::before {
     content: '';
     position: absolute;
     bottom: 30%;
     left: 50%;
     transform: translateX(-50%) scale(0);
     width: 40px;
     height: 40px;
     background-image: url('../img/dreiecke-grun.svg');
     background-repeat: no-repeat;
     background-size: contain;
     background-position: center;
     opacity: 0;
     pointer-events: none;
 }
 
 .main-menu-desktop li.current-menu-item::before,
 .main-menu-desktop li.current-page-ancestor::before {
     background-image: url('../img/dreiecke-dunkel-blau.svg');
 }
 
 .main-menu-desktop li.menu-item:hover::before,
 .main-menu-desktop li.current-menu-item::before,
 .main-menu-desktop li.current-page-ancestor::before {
     animation: trianglePopIn 0.25s ease forwards;
 }
 
 @keyframes trianglePopIn {
     0%   { opacity: 0; transform: translateX(-50%) scale(0); }
     65%  { opacity: 1; transform: translateX(-50%) scale(1.1); }
     100% { opacity: 1; transform: translateX(-50%) scale(1); }
 }
 
 .main-menu-desktop li.menu-item:hover a {
     color: var(--ecym-green-125);
     text-decoration: none;
 }
 
 .main-menu-desktop li.current-menu-item a,
 .main-menu-desktop li.current-page-ancestor a {
     color: var(--ecym-deep-blue);
 }
 
 .main-menu-desktop li.current-menu-item:hover a,
 .main-menu-desktop li.current-page-ancestor:hover a {
     color: var(--ecym-deep-blue) !important;
 }
 
 .navbar-yellow-green-25 .main-menu-desktop li.menu-item::before,
 .navbar-yellow-green-50 .main-menu-desktop li.menu-item::before,
 .navbar-light-gray .main-menu-desktop li.menu-item::before,
 .navbar-light-gray .main-menu-desktop li.menu-item::before,
 .navbar-green-25 .main-menu-desktop li.menu-item::before,
 .navbar-green-50 .main-menu-desktop li.menu-item::before {
     background-image: url('../img/dreiecke-dunkel-blau.svg');
 }
 
 .navbar-light-gray .main-menu-desktop li.menu-item:hover a,
  .navbar-light-gray .main-menu-desktop li.menu-item:hover a,
 .navbar-yellow-green-25 .main-menu-desktop li.menu-item:hover a,
 .navbar-yellow-green-50 .main-menu-desktop li.menu-item:hover a,
 .navbar-green-25 .main-menu-desktop li.menu-item:hover a,
 .navbar-green-50 .main-menu-desktop li.menu-item:hover a {
     color: var(--ecym-deep-blue) !important;
 }
 
 
 /* MOBILE OFFCANVAS MENU */
 
 .offcanvas-ecpd {
	 border: 0;	
 }
 
 .offcanvas-ecpd .offcanvas-body {
	 outline: none;
	 display: flex;
	 align-items: center;
	 justify-content: center;
 }
 
 .offcanvas-ecpd a {
	 text-align: center;
	 color: var( --ecym-deep-blue);
	 text-transform: uppercase;
	 font-size: 1.5em;
 }
 
 .offcanvas-ecpd a:hover {
	 color: var(--ecym-deep-blue-75);
	 
 }
 
 .navbar-toggler {
	 border: 0;
	 outline: 0;
	 box-shadow: 0;
 }
 
 .navbar-toggler:focus {
	 text-decoration: none;
	 outline: 0;
	 box-shadow: none;
 }
 
 .btn-close:focus {
	 outline: 0;
	 box-shadow: none;
	 opacity: 1;
 }
 
 
 /* FOOTER */
 
 /* FOOTER */
 
 #prefooter {
	 background-color: var(--ecym-deep-blue-125);
	 padding: 3em 0 1em;
 }
 
 #prefooter h3{
	 color: var(--ecym-yellow-green);
 }
 
 #prefooter h3 {
	 font-weight: bold;
	 font-size: 1.1em;
	 text-transform: uppercase;
	 margin-bottom: 1em;
 }
 
 #prefooter p {
	 color: var(--ecym-blue-25);
	 margin-bottom: 0.2em;
	 font-size: 0.9em;
 }
 
 #prefooter a, #prefooter a:visited, #prefooter a:active {
	 color: var(--ecym-deep-blue-25);

     font-size: 0.9em;
 }
 
 #prefooter a.linkedin-footer {
   color: var(--ecym-yellow-green-25);
   font-size: 1.2em;
   margin-top: 2rem;
   display: inline-block;
 }
 
 #prefooter a.linkedin-footer:hover {
    color: var(--ecym-yellow-green);

  }
 
 #prefooter a:hover {
	 color: var(--ecym-yellow-green);

 }
 
 #prefooter hr {
   margin: 0.5em 0;
 }
 
 #wrapper-footer {
    background-color: var(--ecym-deep-blue-125);
  }
  
 .site-footer {
	 background-color: var(--ecym-deep-blue-125);
 }
 .site-footer p {
	  color: var(--ecym-yellow-green-25);
    font-size: 0.95rem;
 }
 
 .site-footer a {
   color: var(--ecym-blue-25);
 }
 
 .site-footer a:hover {
    color: var(--ecym-yellow-green);
  }
  
 
 
 .footer-widget {
	 margin-bottom: 2em;
 }
 
 
 @media (min-width: 1200px) {
 .footer-widget {
	 margin-bottom: 0em;
 }
  }
  
/*HOME HERO*/

#ecym-hero {
    background-color: var(--ecym-light-blue); 
    height: calc(100vh - var(--navbar-height));
    display: flex;
    flex-direction: column;
    justify-content: flex-start; /* Ensures elements take up vertical space */
    align-items: center; /* Centers horizontally */

  }
  


  
  .hero-image {
    flex-grow: 1; /* This makes the image take up available vertical space */
    display: flex;
    justify-content: center;
    align-items: center; /* Ensures the image is centered within the available space */
    height: 80%;
    padding-top: 1em;
  }
  
  .hero-image img{
    max-height: 95%;
    width: auto;
  }
  
  .hero-image-mobile {
    flex-grow: 1; /* This makes the image take up available vertical space */
    display: flex;
    justify-content: center;
    align-items: center; /* Ensures the image is centered within the available space */
    max-height: 78%;
  }
  
  .hero-image-mobile img{
    max-height: 100%;
    width: auto;
  }
  
  
  .hero-headline {
    margin-bottom: 20px; /* Adjusts spacing as needed */
    height: 12%;
  }
  
  .hero-headline h1 {
    font-size: 2.4em;
    font-weight: normal;
    color: var(--ecym-deep-blue);
  }
  
@media (min-width: 768px) {
    .hero-headline h1 {
    font-size: 2.2em; }
   }

  @media (min-width: 992px) {
    .hero-headline h1 {
    font-size: 3em; }
   }



/* HOME INTRO */

#home-intro {
  padding: 6em 0;
  
  
}

#home-intro h2 {
  color: var(--ecym-deep-blue);
  font-size: 2.2em;
  font-weight: bold;
}

#home-intro h3 {
  color: var(--ecym-blue);
  font-size: 1.8em;
  line-height: 1.2;
}

/* HOME NEWS SECTION */

.news-card {
    border-radius: 0;
    border: none;
}

.news-card a, .news-card a:visited {
  color: var(--ecym-deep-blue);
}

.news-card a:hover,  .news-card a:active {
  color: var(--ecym-green);
}

.news-card h3.card-title {
    font-size: 1.2rem;  
}

.news-card .news-card-img-wrapper {
    aspect-ratio: 3/2;
    overflow: hidden;
}

.news-card .news-card-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.news-card .card-body {
    //background-color: var(--ecym-yellow-green-50);
    background-color: var(--ecym-light-blue-25);
    padding: 1.5rem;
}

/* STANDARD PAGE HERO */

#standard-page-hero {
  min-height: 50vh;
  overflow-y: hidden;
  padding-bottom: 0;
  display: flex;
}

#standard-page-hero .hero-wrapper {
  margin-top: auto;
}

#standard-page-hero h1 {
  color: var(--ecym-deep-blue);
  font-weight: bold;
}
#standard-page-hero h3 {
  font-size: 1.5rem;
  color: var(--ecym-deep-blue-75);
}

#page-wrapper {
  padding-bottom: 0px;
}
/* SECTIONS & LAYOUTS */

  .hp-section h2 {
color: var(--ecym-deep-blue);
font-size: 2.2em;
font-weight: bold;
}

.hp-section h3 {
color: var(--ecym-deep-blue-75);
font-size: 1.8em;
line-height: 1.2;
}

/* NEWS PAGE */

#news-page-hero {

  position: relative;
  overflow: hidden;
}


#news-page-hero h1 {
  color: var(--ecym-deep-blue);
  font-weight: 600;
}

#news-page-hero .svg-element-r {
  width: 300px;
  position: absolute; 
  right: -60px;
  bottom: -1%;
  //opacity: 0.65;
  transform: rotate(-50deg);
}
#news-page-hero .svg-element-r img, #news-page-hero .svg-element-l img {
  width: 100%; 
}

#news-page-hero .svg-element-l {
  width: 450px;
  position: absolute; 
  left: -50px;
  bottom: -100px;
  //opacity: 0.5;
  transform: rotate(5deg);
}



/* EVENTS */



.e-date {
  margin-bottom: 0.3em;
  margin-top: 0.3em;
  font-size: 0.9em;
  text-transform: uppercase;
  font-size: bold;
  color: var(--ecym-blue);
  
}

h3.e-title {
  font-size: 1.5em;
  font-weight: normal;
  line-height: 1;
  margin-bottom: 0.3em;
  margin-top: 0.2em;
  color: var(--ecym-blue);
}

.tribe-events-calendar-list__month-separator h3 .tribe-events-calendar-list__month-separator-text {
  font-size: 1.4rem!important;
  font-weight: 600;
  color: var(--ecym-deep-blue);
}


.e-details {
  font-size: 1em;
  margin-bottom: 0.3em;
  
}

.event-home {
  border-bottom: 1px solid var(--ecym-light-gray);
  padding-bottom: 0.5em;
  padding-top: 0.5em;
}

.event-home a {
  text-decoration: none;
}

.e-cat {
  color: var(--ecym-blue-50);
  text-transform: capitalize;
}

/* SINGLE POST */

#single-post-hero {
  background: var(--ecym-light-blue);
  height: 45vh;
  position: relative;
  overflow: hidden;
}


#single-post-hero h1 {
  color: var(--ecym-deep-blue);
  font-weight: 600;
}

#single-post-hero .svg-element-r {
  width: 300px;
  position: absolute; 
  right: -60px;
  bottom: -1%;
  //opacity: 0.65;
  transform: rotate(-50deg);
}
#single-post-hero .svg-element-r img, #single-post-hero .svg-element-l img {
  width: 100%; 
}

#single-post-hero .svg-element-l {
  width: 450px;
  position: absolute; 
  left: -50px;
  bottom: -100px;
  //opacity: 0.5;
  transform: rotate(5deg);
}



.entry-category {
  padding: 4px 10px 3px 10px; 
  text-transform: uppercase;
  color: var(--ecym-deep-blue);
  background-color: var(--ecym-yellow-green-50);
  display: inline-block;
  margin-bottom: 1rem; 
}

.post-summary {
  margin-top: 2.5rem; 
  margin-bottom: 2rem;
}

.single-post-thumb {
  margin-bottom: 2rem; 
}

.entry-footer {
  margin-bottom: 8rem;
  margin-top: 2rem; 
  overflow: hidden;
  position: relative;
  padding: 2rem 2rem; 
  background-color: var(--ecym-light-blue-50);
  
}

.entry-footer .svg-element {
  max-width: 200px;
  position: absolute;
  top: -15px;
  right: -30px;
  z-index: 30;
  
}

.entry-footer span {
    position:relative;
    z-index: 50;
}

/* Publications Hero */

#publications-hero {

  position: relative;
  overflow: hidden;
}


#publications-hero h1 {
  color: var(--ecym-deep-blue);
  font-weight: 600;
}

#publications-hero h3 {
  font-size: 1.5rem;
  color: var(--ecym-deep-blue-75);
}

#publications-hero .svg-element-r {
  width: 300px;
  position: absolute; 
  right: -60px;
  bottom: -1%;
  //opacity: 0.65;
  transform: rotate(-50deg);
}
#publications-hero .svg-element-r img, #publications-hero .svg-element-l img {
  width: 100%; 
}

#publications-hero .svg-element-l {
  width: 450px;
  position: absolute; 
  left: -50px;
  bottom: -100px;
  //opacity: 0.5;
  transform: rotate(10deg);
}


/* SINGLE PUBLICATION */

#publication-hero {
  background: var(--ecym-light-blue);
  height: 45vh;
  position: relative;
  overflow: hidden;
}


#publication-hero h1 {
  color: var(--ecym-deep-blue);
  font-weight: 600;
}

#publication-hero .svg-element-r {
  width: 300px;
  position: absolute; 
  right: -60px;
  bottom: -1%;
  //opacity: 0.65;
  transform: rotate(-50deg);
}
#publication-hero .svg-element-r img, #publication-hero .svg-element-l img {
  width: 100%; 
}

#publication-hero .svg-element-l {
  width: 450px;
  position: absolute; 
  left: 30px;
  bottom: -100px;
  //opacity: 0.5;
  transform: rotate(15deg);
}

/* ── pub-specs ── */
.pub-specs {
    background: var(--ecym-lighter-gray);
    border-radius: 8px;
    padding: 2rem;
    margin: 2rem 0;
}

.pub-specs__row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem 1rem;
    padding: 0.85rem 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.07);
}

.pub-specs__row:last-child,
.pub-specs__row--link {
    border-bottom: none;
}

.pub-specs__label {
    flex: 0 0 140px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(0, 0, 0, 0.45);
    padding-top: 0.1rem;
}

.pub-specs__value {
    flex: 1 1 200px;
    font-size: 0.95rem;
    line-height: 1.5;
    color: inherit;
}

.pub-specs__value a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.pub-specs__row--link {
    padding-top: 1.25rem;
}

.pub-specs__cta {
    display: inline-block;
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    color: inherit;
    text-decoration: none;
    border-bottom: 2px solid currentColor;
    padding-bottom: 1px;
    transition: opacity 0.15s ease;
}

.pub-specs__cta:hover {
    opacity: 0.6;
}

/* mobile: stack label above value */
@media (max-width: 575px) {
    .pub-specs {
        padding: 1.25rem;
    }

    .pub-specs__label {
        flex: 0 0 100%;
        margin-bottom: 0.1rem;
    }

    .pub-specs__value {
        flex: 0 0 100%;
    }
}

.pub-label {
  padding: 7px 14px;
  font-size: 16px;
  background-color: var(--ecym-deep-blue);
  margin-bottom: 1rem;
  color: var(--ecym-yellow-green-25);
  display: inline-block;
}

.pub-details-ut {
  padding: 7px 14px;
  font-size: 16px;
  background-color: transparent
  margin-top: 1rem;
  color: var(--ecym-deep-blue);
  display: inline-block;
}

/* SINGLE TEAM MEMBER */

#team-member-post-hero {
  background: var(--ecym-light-gray);
  height: 35vh;
  position: relative;
  overflow: hidden;
}


#team-member-post-hero h1 {
  color: var(--ecym-deep-blue);
  font-weight: 600;
}

#team-member-post-hero .svg-element-r {
  width: 300px;
  position: absolute; 
  right: -60px;
  bottom: -1%;
  opacity: 1;

}
#team-member-post-hero .svg-element-r img, #team-member-post-hero .svg-element-l img {
  width: 100%; 
}

#team-member-post-hero .svg-element-l {
 width: 300px;
 position: absolute;
 left: -20px;
 bottom: -35px;
 opacity: 1;
}


/* EVENTS */

  #events-hero {
  height: 40vh;
}

#events-hero h1 {
  font-size: 3rem;
  font-weight: bold;
  color: var(--ecym-deep-blue);
}

#events-hero .svg-element-r {
width: 500px;
position: absolute;
right: -145px;
bottom: -93px;
opacity: 1;
transform: rotate(48deg);
overflow: hidden;
}
#events-hero .svg-element-r img, #events-hero .svg-element-l img {
  width: 100%; 
}

#events-hero .svg-element-l {
  width: 300px;
  height: 300px;
  position: absolute; 
  left: 50px;
  bottom: -170px;
  opacity: 1;
  transform: rotate(5deg);
}


/* PAGE MODULES */

.tpc-element-container,
.qc-element-container,
.qc-element-container-rx {
  z-index: 0;
}

.tpc-title,
.tpc-content,
.cq-content,
.tbwp-content,
.tbwp-wrapper {
  position: relative;
  z-index: 1;
}

/* TITLE PLUS CONTENT */

.tpc-title h2 {
  color: var(--ecym-deep-blue);
  font-size: 2rem;
  margin-bottom: 1.2rem;
  font-weight: bold;
  word-break: break-word;
}

.tpc-svg-element {
width: 280px;
position: absolute;
right: -75px;
bottom: 20px;
opacity: 1;
transform: rotate(-60deg);
}

  .tpc-byline {
  margin-bottom: 20px;
}

@media (min-width: 992px) {
  .tpc-byline p{
    font-size: 16px;
    padding-right: 30px;
  }

 }


.tpc-element-container {
  width: 300px; 
  height: 300px;
  position: absolute; 
  bottom: 0; right: 0;
}


@media (min-width: 992px) {
    .tpc-title h2 {
      
      font-size: 2.3rem;
    }
 }
 
 /* CENTERED QUOTE */
 
 .cq-content p {
   
   font-size: 1.5rem;
   font-style: italic;
 }
 
 .cq-content h2 {
   font-size: 2.4rem;
   font-weight: bold;
 }
 
 .qc-svg-element {
 width: 280px;
 position: absolute;
 left: -30px;
 top: -20px;
 opacity: 1;
 transform: rotate(-10deg);
 }
 
 .qc-element-container {
   width: 300px; 
   height: 300px;
   position: absolute; 
   top: 0; 
   left: 0;
 }
 
 
 .qc-svg-element-rx {
  width: 480px;
  position: absolute;
  right: -90px;
  bottom: -120px;
  opacity: 1;
  transform: rotate(-10deg);
  }
  
  .qc-element-container-rx {
    width: 500px; 
    height: 500px;
    position: absolute; 
    bottom: 0; 
    right: 0;
  }
  
  /* Two Blocks With Picture */
  
  .tbwp-wrapper img {
  
    width: auto;
  }
  
  .tbwp-content h2 {
    font-size: 2.4rem;
     font-weight: bold;
  }
  
  /* CHALLENGES */
  
  .challenge-label {
    padding: 7px 15px;
    background-color: var(--ecym-deep-blue);
    text-transform: uppercase;
    color: var(--offwhite);
    font-size: 0.9rem;
    font-weight: bold;
    font-spacing: 0.5px;
    margin-bottom: 8px;
    display: inline-block;
  }
  
  .spenden-button {
    width: 60px;
    height: 60px;
    position: fixed; 
    right: 20px;
    bottom: 20px;
    transition: all 0.2s ease-in-out;
    z-index: 1000;
 
  }
  
 
  @media (min-width: 992px) {
    
    .spenden-button {
      width: 90px;
      height: 90px;
      position: fixed; 
      right: 20px;
      bottom: 30px;
      transition: all 0.2s ease-in-out;
      z-index: 1000;
    
    }
  
   }
  
  .spenden-button:hover {
    transform: scale(0.9);
  
  }
  
  /* PAGINATION */
  .pagination {
    text-align: center;
    margin-top: 30px;
  }
  
  .pagination a, 
  .pagination span {
    display: inline-block;
    padding: 10px 15px;
    margin: 5px;
    font-size: 1.1em;
    font-weight: bold;
    color: var(--ecym-deep-blue);
    text-decoration: none;
    border: 1px solid var(--ecym-deep-blue);
    border-radius: 0px;
    background-color: white;
    transition: all 0.1s ease-in-out;
  }
  
  .pagination .current {
    background-color: var(--ecym-deep-blue);
    color: white;
    border: 1px solid var(--ecym-deep-blue);
  }
  
  .pagination a:hover {
    background-color: var(--ecym-deep-blue);
    color: white;
    border-color: var(--ecym-deep-blue);
  }
  
  .pagination .prev,
  .pagination .next {
    font-size: 1em;
    font-weight: normal;
  }
  
  @media (max-width: 768px) {
    .pagination a, 
    .pagination span {
      padding: 8px 12px;
      font-size: 1em;
    }
  }