
/*
Copyright 2017 - 2026 pp. by: LMP-MEDIA (www.LMP-MEDIA.de)
*/


@font-face {
  font-family: 'Outfit';
  src: url('fonts/Outfit/Outfit-VariableFont_wght.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

body {
  font-family: 'Outfit', sans-serif;
  font-weight: 400;
  letter-spacing: 0;
}

.font-main {
  font-family: 'Outfit', sans-serif;
}





	/* Image animation */
	.cbp-item .work-image{-webkit-transform:scale(1);transform:scale(1); -webkit-transition:transform 0.5s;transition:transform 0.5s;}
	.cbp-item:hover .work-image{-webkit-transform:scale(1.03);transform:scale(1.03);}
	/* Details animation */
	.cbp-item .details{opacity:0;-webkit-transform:scale(1.04) perspective(1000px);transform:scale(1.04) perspective(1000px);-webkit-transition:all 0.5s;transition:all 0.5s;}
	.cbp-item:hover .details{opacity:1;-webkit-transform:scale(1) perspective(1000px);transform:scale(1) perspective(1000px);}
	/* Texts and line animations */
	.cbp-item .details .title, .cbp-item .details .tag{opacity:0;-webkit-transform:translateY(15px);transform:translateY(15px);-webkit-transition:all 0.5s;transition:all 0.5s;}
	.cbp-item:hover .details .title, .cbp-item:hover .details .tag{opacity:1;-webkit-transform:translateY(0px);transform:translateY(0px);}
	.cbp-item:hover .details .title{-webkit-transition-delay:0.1s;transition-delay:0.1s;}
/* =========================
   PAGE LOADER / SPINNER NR. 2
   ========================= */

/* Standard: versteckt */
.site-loader {
  display: none;
}

/* Nur wenn JavaScript aktiv ist, wird der Loader sichtbar */
.js .site-loader {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.78);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  opacity: 1;
  visibility: visible;
  transition: opacity 0.35s ease, visibility 0.35s ease;
}

/* Zustand beim Ausblenden */
.js .site-loader.is-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

/* Damit die Seite während des Ladens nicht scrollt */
.js body.is-loading {
  overflow: hidden;
}

/* Zentrierung */
.site-loader__spinner {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 80px;
  min-height: 40px;
}

/* Demo-Spinner übernommen und auf deine Seite angepasst */
.spinner {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.spinner > div {
  width: 16px;
  height: 16px;
  margin: 0 2px;
  border-radius: 50%;
  display: inline-block;
  background-color: #5b7bdf;
  box-shadow: 0 4px 14px rgba(91, 123, 223, 0.28);
  transform: scale(0);
  animation: sk-bouncedelay 1.4s infinite ease-in-out both;
  animation-delay: 0.15s;
}

.spinner > .spinner__item2 {
  animation-delay: 0.30s;
}

.spinner > .spinner__item3 {
  animation-delay: 0.45s;
}

.spinner > .spinner__item4 {
  animation-delay: 0.60s;
}

@keyframes sk-bouncedelay {
  0%, 80%, 100% {
    transform: scale(0);
    opacity: 0.35;
  }
  40% {
    transform: scale(1);
    opacity: 1;
  }
}

/* Barrierefreiheit / weniger Bewegung */
@media (prefers-reduced-motion: reduce) {
  .spinner > div {
    animation: none;
    transform: scale(1);
    opacity: 1;
  }

  .js .site-loader {
    transition: none;
  }
}