.px-banner {
  position: relative;
  display: flex;
  width: 94%;
  max-width: 1504px;
  margin: 0 auto;
  gap: clamp(1.5rem, 1.0405405405rem + 2.8716216216vw, 3.2rem);
  padding-bottom: 70px;
}
.px-banner.long {
  padding-top: 285px;
}
.px-banner.long .text {
  margin-top: -300px;
}
.px-banner.medium {
  padding-top: 160px;
}
.px-banner.medium .text {
  margin-top: -160px;
}
.px-banner.short {
  padding-top: 160px;
}
.px-banner.short .text {
  margin-top: -70px;
}
.px-banner p {
  line-height: 160%;
  margin-bottom: clamp(1rem, 0.7297297297rem + 1.6891891892vw, 2rem);
}
.px-banner .sparkle {
  bottom: 300px;
  left: -10%;
}
.px-banner .image, .px-banner .video, .px-banner .twoimages {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  width: 70%;
}
.px-banner .image img, .px-banner .image video, .px-banner .video img, .px-banner .video video, .px-banner .twoimages img, .px-banner .twoimages video {
  height: 100%;
  width: 100%;
  object-fit: cover;
  border-radius: 4px;
}
.px-banner .image.has-logos img, .px-banner .image.has-logos video, .px-banner .image.has-logos .googlerating, .px-banner .video.has-logos img, .px-banner .video.has-logos video, .px-banner .video.has-logos .googlerating, .px-banner .twoimages.has-logos img, .px-banner .twoimages.has-logos video, .px-banner .twoimages.has-logos .googlerating {
  margin-bottom: 55px;
}
.px-banner .image.has-logos .logos, .px-banner .video.has-logos .logos, .px-banner .twoimages.has-logos .logos {
  position: absolute;
  right: 70px;
  bottom: -95px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 15px;
}
.px-banner .image.has-logos .logos img, .px-banner .image.has-logos .logos a, .px-banner .video.has-logos .logos img, .px-banner .video.has-logos .logos a, .px-banner .twoimages.has-logos .logos img, .px-banner .twoimages.has-logos .logos a {
  background-color: #fff;
  border-radius: 4px;
  padding: 12px 13px;
  width: clamp(5rem, 4.2567567568rem + 4.6452702703vw, 7.75rem);
  height: clamp(2.5rem, 2rem + 3.125vw, 4.35rem);
  object-fit: contain;
}
.px-banner .image.has-logos .logos a.logo-link, .px-banner .video.has-logos .logos a.logo-link, .px-banner .twoimages.has-logos .logos a.logo-link {
  background-color: transparent;
  border-radius: 0;
  padding: 0;
  width: auto;
  height: auto;
  margin-top: 10px;
}
@media screen and (max-width: 768px) {
  .px-banner .image.has-logos .logos, .px-banner .video.has-logos .logos, .px-banner .twoimages.has-logos .logos {
    flex-wrap: wrap;
    position: unset;
    justify-content: flex-start;
    margin-top: 15px;
  }
}
@media screen and (max-width: 768px) {
  .px-banner .image.has-logos img, .px-banner .image.has-logos video, .px-banner .image.has-logos .googlerating, .px-banner .video.has-logos img, .px-banner .video.has-logos video, .px-banner .video.has-logos .googlerating, .px-banner .twoimages.has-logos img, .px-banner .twoimages.has-logos video, .px-banner .twoimages.has-logos .googlerating {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 1121px) {
  .px-banner .image, .px-banner .video, .px-banner .twoimages {
    height: 645px;
  }
}
.px-banner .twoimages.has-logos .logos {
  bottom: -45px;
}
.px-banner .twoimages .image-wrapper {
  display: flex;
  gap: 20px;
  height: 100%;
  align-items: flex-end;
}
.px-banner .twoimages .image-wrapper img {
  width: calc(60% - 20px);
  max-width: calc(60% - 20px);
  height: 100%;
  object-fit: cover;
  border-radius: 4px;
}
.px-banner .twoimages .image-wrapper img:first-child {
  max-height: 70%;
  width: 40%;
  max-width: 40%;
}
.px-banner .video {
  position: relative;
}
.px-banner .video::before {
  content: "";
  display: inline-block;
  background: url("img/mute.svg") no-repeat center center/100% auto;
  width: 37.5px;
  height: 37.5px;
  position: absolute;
  top: 3px;
  right: 3px;
  transition: all 0.4s ease-in-out;
  overflow: hidden;
}
.px-banner .video.unmuted::before {
  background: url("img/unmuted.svg") no-repeat center center/80% auto;
}
@media screen and (min-width: 1121px) {
  .px-banner .video.videoformat_cinema {
    height: 475px;
  }
}
.px-banner .text {
  position: relative;
  z-index: 1;
  margin: 0 auto;
  height: fit-content;
  width: 30%;
}
.px-banner .text h1 {
  margin-bottom: clamp(1rem, 0.5945945946rem + 2.5337837838vw, 2.5rem);
  width: 250%;
}
.px-banner .text h1.long-headline {
  width: 320%;
}
.px-banner .text h2 {
  width: 200%;
}
@media screen and (max-width: 1120px) {
  .px-banner {
    min-height: 500px;
  }
  .px-banner .video {
    margin-bottom: 20px;
  }
  .px-banner .image.has-logos .logos, .px-banner .video.has-logos .logos {
    right: 0;
  }
}
@media screen and (max-width: 768px) {
  .px-banner {
    flex-direction: column;
    padding-bottom: 0;
  }
  .px-banner .text, .px-banner .image, .px-banner .video {
    width: 100%;
  }
  .px-banner .text h1 {
    width: 100%;
  }
  .px-banner .text h1.long-headline {
    width: 100%;
  }
}
@media screen and (max-width: 500px) {
  .px-banner {
    min-height: 300px;
  }
  .px-banner .video.has-logos .logos {
    position: unset;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
}
@media screen and (max-width: 1200px) {
  .px-banner.with-twoimages {
    flex-direction: column;
    padding-top: 0;
    gap: 20px;
    overflow: hidden;
  }
  .px-banner.with-twoimages .text {
    width: 100%;
    margin-top: 0;
  }
  .px-banner.with-twoimages .twoimages {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .px-banner.with-twoimages .twoimages img {
    width: calc(50% - 20px) !important;
    max-width: calc(50% - 20px) !important;
  }
}
@media screen and (max-width: 470px) {
  .px-banner.with-twoimages .text h1, .px-banner.with-twoimages .text h2, .px-banner.with-twoimages .text h3, .px-banner.with-twoimages .text h4, .px-banner.with-twoimages .text h5, .px-banner.with-twoimages .text h6 {
    width: 100%;
  }
  .px-banner.with-twoimages .twoimages .image-wrapper {
    flex-direction: column;
  }
  .px-banner.with-twoimages .twoimages img {
    width: 100% !important;
    max-width: 100% !important;
    max-height: 50% !important;
  }
}
.fl .px-banner {
  width: 100%;
}
