/*
Theme Name: moje
Author: 
Author URI: 
Description: The7 is perfectly scalable, performance and SEO optimized, responsive, retina ready multipurpose WordPress theme. It will fit every site – big or small. From huge corporate portals to studio or personal sites – The7 will become a great foundation for your next project!
Version: 1.0.0
License: This WordPress theme is comprised of two parts: (1) The PHP code and integrated HTML are licensed under the GPL license as is WordPress itself.  You will find a copy of the license text in the same directory as this text file. Or you can read it here: http://wordpress.org/about/gpl/ (2) All other parts of the theme including, but not limited to the CSS code, images, and design are licensed according to the license purchased. Read about licensing details here: http://themeforest.net/licenses/regular_extended
Template: dt-the7
*/


/* roboto-200 - 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: 'Roboto';
  font-style: normal;
  font-weight: 200;
  src: url('./fonts/roboto-v50-latin-200.eot'); /* IE9 Compat Modes */
  src: url('./fonts/roboto-v50-latin-200.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('./fonts/roboto-v50-latin-200.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('./fonts/roboto-v50-latin-200.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('./fonts/roboto-v50-latin-200.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('./fonts/roboto-v50-latin-200.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-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: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: url('./fonts/roboto-v50-latin-300.eot'); /* IE9 Compat Modes */
  src: url('./fonts/roboto-v50-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('./fonts/roboto-v50-latin-300.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('./fonts/roboto-v50-latin-300.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('./fonts/roboto-v50-latin-300.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('./fonts/roboto-v50-latin-300.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-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: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('./fonts/roboto-v50-latin-regular.eot'); /* IE9 Compat Modes */
  src: url('./fonts/roboto-v50-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('./fonts/roboto-v50-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('./fonts/roboto-v50-latin-regular.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('./fonts/roboto-v50-latin-regular.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('./fonts/roboto-v50-latin-regular.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-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: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: url('./fonts/roboto-v50-latin-500.eot'); /* IE9 Compat Modes */
  src: url('./fonts/roboto-v50-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('./fonts/roboto-v50-latin-500.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('./fonts/roboto-v50-latin-500.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('./fonts/roboto-v50-latin-500.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('./fonts/roboto-v50-latin-500.svg#Roboto') format('svg'); /* Legacy iOS */
}

/* roboto-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: 'Roboto';
  font-style: normal;
  font-weight: 600;
  src: url('./fonts/roboto-v50-latin-600.eot'); /* IE9 Compat Modes */
  src: url('./fonts/roboto-v50-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('./fonts/roboto-v50-latin-600.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('./fonts/roboto-v50-latin-600.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('./fonts/roboto-v50-latin-600.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('./fonts/roboto-v50-latin-600.svg#Roboto') format('svg'); /* Legacy iOS */
}


body {
  -webkit-font-smoothing: antialiased;   
  -moz-osx-font-smoothing: imagesgrayscale;   
  font-smooth: always;                 

  background-image: url("images/hIEfix.png");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: cover; 
}


body {
	min-width: 320px !important;
}

.post-content a {
  text-decoration: underline ;
}


.nav-seperator {
	margin-bottom: 25px !important;
}
.scroll-nav {
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s ease;
}
#normal-nav {
opacity: 1;
  transition: opacity 0.3s ease;
}
.scroll-nav-close {
	
	opacity: 0;
	transition: opacity 0.3s ease;
}

.the7-e-sticky-active.the7-e-sticky-effects #normal-nav {
  /*display: none !important;*/
  opacity: 0;
  transition: opacity 0.3s ease;
}
.the7-e-sticky-active.the7-e-sticky-effects .scroll-nav-active #normal-nav {
	display: block !important;
  opacity: 1;
}	

.the7-e-sticky-active.the7-e-sticky-effects .scroll-nav {
  display: block;
  opacity: 1;
	z-index: 99;
	pointer-events: painted;
}

.the7-e-sticky-active.the7-e-scroll-down.the7-e-sticky-effects {
	padding-top: 1px;
}
.scroll-nav-active .scroll-nav-close {
	z-index: 9999999;
	opacity: 1;
	transition: opacity 0.3s ease;
}
.the7-e-sticky-active.the7-e-sticky-effects .scroll-nav-active .scroll-nav {
	display: none;
}

.the7-e-sticky-active.the7-e-sticky-effects, .the7-e-sticky-active {
	  border-bottom: 1px solid transparent !important;
	   box-shadow: none !important;
	   border-top: 0px solid transparent !important;
}
header, .the7-e-sticky-spacer {
	border-bottom: 1px solid transparent !important;
	border-top: 0px solid transparent !important;
}
header {
	background-color: transparent !important;
	color:  transparent !important;
}


/* Transition immer aktiv */
.elementor-heading-title,
.elementor-widget-theme-site-title {
  transition: font-size 0.3s ease-in-out,
              line-height 0.3s ease-in-out,
              margin-top 0.3s ease-in-out;
}

/* Normalzustand */
/*
.the7-e-sticky-effects .elementor-heading-title {
  font-size: 40px !important;
  line-height: 1.0;
}*/
/*
.the7-e-sticky-effects .elementor-widget-theme-site-title {
  margin-top: 60px !important;
}*/

/* Stickyzustand */

.the7-e-sticky-active.the7-e-sticky-effects .elementor-heading-title {
  font-size: 26px !important;
  line-height: 1.0;
}
.the7-e-sticky-active.the7-e-sticky-effects .elementor-widget-theme-site-title {
  margin-top: 20px !important;
}

@media (max-width: 900px) {
	.the7-e-sticky-active.the7-e-sticky-effects .elementor-heading-title {
	  /*font-size: 20px !important;*/
	  line-height: 1.0;
		transition: font-size 0.3s ease-in-out !important,
	}
}	
@media (max-width: 600px) {
	.the7-e-sticky-active.the7-e-sticky-effects .elementor-widget-theme-site-title {
  margin-top: 20px !important;
}
.the7-e-sticky-effects .elementor-heading-title {
  font-size: 26px !important;
  line-height: 1.0;
}
}	


/*
#normal-nav {
	z-index: 999999;
  max-height: 500px;   
  opacity: 1;
  overflow: hidden;
  transition: max-height 0.6s ease, opacity 0.4s ease !important;
}

.the7-e-sticky-active.the7-e-sticky-effects  .nav-wrapper #normal-nav{
  max-height: 0;
  opacity: 0;
	transition: max-height 0.6s ease;
}
.the7-e-sticky-active.the7-e-sticky-effects .scroll-nav-active #normal-nav {
	max-height: 500px;  
  opacity: 1;
}*/
#normal-nav {
  max-height: 312px;   /* Ausgangshöhe */
  opacity: 1;
  transform: translateY(0);
  overflow: hidden;
  transition: max-height 0.4s ease, opacity 0.4s ease, transform 0.4s ease;
}

.the7-e-sticky-active.the7-e-sticky-effects .nav-wrapper #normal-nav {
  max-height: 0;
  opacity: 0;
  transform: translateY(-20px); /* leicht nach oben verschieben */
}

.the7-e-sticky-active.the7-e-sticky-effects .scroll-nav-active #normal-nav {
  max-height: 312px;
  opacity: 1;
  transform: translateY(0);
}


@media (min-width: 901px) {
	.home .elementor-22467 .elementor-element.elementor-element-d326891 {
		    top: -47px;
	}
}



.cv-entry {
  display: flex;
  margin-bottom: 12px; /* Abstand zwischen den Zeilen */
}

.cv-year {
  flex: 0 0 100px;     /* feste Breite für Jahreszahl */

}

.cv-text {
  flex: 1;             /* restliche Breite für Text */
}
@media only screen and (max-width: 600px) {
	.cv-year {
  flex: 0 0 72px;     /* feste Breite für Jahreszahl */

}
}	


/* Container */
.acf-pagination {
  text-align: center;
  margin-top: 30px;
}

.acf-pagination ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  justify-content: center;
  gap: 10px;
}

.acf-pagination ul li {
  margin: 0;
}

/* Links */
.acf-pagination ul li a,
.acf-pagination ul li span {
  display: block;
  padding: 8px 14px;
  border: 1px solid #ccc;
  border-radius: 4px;
  text-decoration: none;
  color: #333;
  transition: all 0.2s ease;
}

/* Hover */
.acf-pagination ul li a:hover {
  background-color: #f5f5f5;
  border-color: #999;
}

/* Aktive Seite */
.acf-pagination ul li span.current {
  background-color: #333;
  color: #fff;
  border-color: #333;
}

/* Nur Pfeile für Next/Prev */
.acf-pagination  a.prev::before {
  content: "←";
  font-size: 16px;
}
.acf-pagination a.prev  {
  font-size: 0; /* Text ausblenden */
   height: 40px;
}

.acf-pagination  a.next::before {
  content: "→";
  font-size: 16px;
}
.acf-pagination a.next  {
  font-size: 0; /* Text ausblenden */
  height: 40px;
}



.elementor-post__excerpt a {
	color: var(--the7-base-color) !important;
}


.header-title {
	white-space: nowrap;
}

@media only screen and (max-width: 600px) {
/*.home .nav-wrapper {
	margin-top: -8px;
}
.home .elementor-location-popup .nav-wrapper {
	margin-top: -64px;
}*/
.home .elementor-location-popup .nav-wrapper {
margin-top: -38px;
}
}






/* Basis: Popup verstecken */




/* Ausgangszustand: unsichtbar und leicht nach oben verschoben */
.dialog-lightbox-container .elementor-popup-modal {
  opacity: 0;
  transform: translateY(-20px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

/* Sichtbar: sanftes Einblenden + nach unten gleiten */
.dialog-lightbox-container.dialog-prevent-scroll .elementor-popup-modal {
  opacity: 1;
  transform: translateY(0);
}

/* Mobile Anpassung */
@media (max-width: 768px) {
  .dialog-lightbox-container .elementor-popup-modal {
    opacity: 0 !important;
    transform: translateY(-20px) !important;
    transition: opacity 0.6s ease, transform 0.6s ease !important;
  }
  .dialog-lightbox-container.dialog-prevent-scroll .elementor-popup-modal {
    opacity: 1 !important;
    transform: translateY(0) !important;
  }
}





/* News */
body.page-id-22146,
body.page-id-22146 header > div,
body.page-id-22146 .elementor-popup-modal *,
body.page-id-22146 .elementor-icon {
	background-color: #EDEDED !important;
} 
body.page-id-22146 footer,
body.page-id-22146 footer .elementor-icon {
	background-color: #FFFFFF !important;
} 

.news-wrapper article:last-child {
	margin-bottom: 0 !important;
}



.footer-news .elementor-post__text {
   position: relative;
}
.footer-news .elementor-post__text .elementor-post__excerpt a::before {
  content: "news\00a0\00a0/";
  display: block;
  float: left;
  font-size: 16px;
  font-weight: 600;
  margin-right: 6px;
	background-color: rgb(237, 237, 237);
	z-index: 1;
  position: relative;
  padding-right: 2px;
}

body.page-id-22146 footer .footer-news .elementor-post__text a::before {
	background-color: rgb(255, 255, 255);
}


@media only screen and (max-width: 900px) {
  .footer-news .elementor-post__text {
    display: flex;
    flex-direction: initial;
    justify-content: center;
  }
}



.footer-news .elementor-post__text {
  display: inline-block;
  white-space: nowrap;
  overflow: hidden;
  width: 100%;
  position: relative;
}

.footer-news .elementor-post__text a {
  display: inline-block;
  padding-left: calc(100% - 80px); /* Start ganz rechts außerhalb */
  animation: ticker-scroll 18s linear infinite;
  white-space: nowrap;
}

@keyframes ticker-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(calc(-100% + 7px)); }
}

.footer-news .elementor-post__text a:hover,
.footer-news .elementor-post__text a:focus {
  animation-play-state: paused;
}




.news-wrapper .post-entry {
    opacity: 0;
    transform: translateY(100px) !important;
    transition: opacity 0.8s ease-out, transform 0.8s ease-out !important;
    border-bottom: 1px solid rgb(26, 23, 27);
  padding: 0 0 41px 0;
  margin-bottom: 80px !important;
}

.news-wrapper .post-entry.animate {
    opacity: 1;
    transform: translateY(0) !important;
}

.news-wrapper .post-entry:last-child {
	border-bottom: 0px solid #ccc;
}

.news-wrapper .post-entry:nth-child(2) {

padding-top:80px;
}	

.posts-section-heading.posts-section-heading--past {
	margin-bottom: 60px;
}

.news-wrapper .post-thumbnail {
	margin-bottom: 39px;
}

.animated.animated-slow {
  animation-duration: 1.6s;
  animation-name: fadeInUp;
}

.fadeInUp {
  animation-name: fadeInUp;
  animation-duration: 1.6s; /* Kürzer für Mobile */
  will-change: transform, opacity; /* Hardware-Beschleunigung */
}
@media (max-width: 768px) {
  @keyframes fadeInUpMobile {
    0% { opacity: 0; transform: translate3d(0, 100px, 0); }
    100% { opacity: 1; transform: translate3d(0, 0, 0); }
  }
  .fadeInUp {
    animation-name: fadeInUpMobile !important;
    animation-duration: 1.6s !important;
  }

	@keyframes fadeInRightMobile {
    0% { opacity: 0; transform: translate3d(100px, 0, 0); }
    100% { opacity: 1; transform: translate3d(0, 0, 0); }
  }
  .fadeInRight {
    animation-name: fadeInRightMobile !important;
    animation-duration: 1.6s !important;
  }
}
