.banner-v79 {
  position: relative;
  text-align: center;
}

.banner-v79__logo {
  z-index: 2;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  padding: 4rem;
  height: 29rem;
  width: 29rem;
  background-color: #fff;
  overflow: hidden;
}
@media (max-width: 991px) {
  .banner-v79__logo {
    padding: 1rem;
    width: 12rem;
    height: 12rem;
  }
}

@media (max-width: 991px) {
  .banner-v79__img {
    height: 40rem;
  }
  .banner-v79__img .xo-image {
    height: 100%;
  }
  .banner-v79__img img {
    height: 100%;
  }
}

.banner-v79__content {
  width: 100%;
  padding: 0 2rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media (min-width: 768px) {
  .banner-v79__content {
    max-width: 60rem;
  }
}

.banner-v79__title {
  text-transform: uppercase;
  font-size: clamp(4rem, calc(2.5cqw + 3rem), 6rem);
}

.banner-v79__subtitle {
  margin-bottom: 2rem;
}
@media (min-width: 992px) {
  .banner-v79__subtitle {
    margin-bottom: 5rem;
  }
}

.banner-v79__button-play {
  position: relative;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 6.4rem;
  width: 6.4rem;
  background-color: rgb(var(--color-accent));
  border-radius: 50%;
}

.banner-v79__button-play::before,
.banner-v79__button-play::after {
  width: 6.4rem;
  height: 6.4rem;
  position: absolute;
  content: "";
  left: calc(50% - 3.2rem);
  top: calc(50% - 3.2rem);
  background: rgba(var(--color-accent));
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  z-index: -1;
  animation-name: pulse;
  animation-duration: 2s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}

.banner-v79__button-play:after {
  animation-delay: 1s;
}

@keyframes pulse {
  0% {
    -webkit-transform: scale(1);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(1.5);
    opacity: 0;
  }
}
.banner-v79__button-play:hover .banner-v79__icon-play {
  border-left: 1.6rem solid rgba(255, 255, 255, 0.6);
}

.banner-v79__icon-play {
  border-bottom: 0.9rem solid transparent;
  border-top: 0.9rem solid transparent;
  border-left: 1.6rem solid #fff;
  margin-left: 0.2rem;
  transition: all 0.3s ease;
  margin-left: 0.5rem;
}

.banner-v79__modal .xo-video {
  width: 70vw;
}
.banner-v79__modal .xo-media {
  position: relative;
  top: 3rem;
}

.banner-v79__button-close {
  position: absolute;
  top: 1rem;
  cursor: pointer;
  transition: 0.3s;
  width: 3.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 3.2rem;
  border-radius: 50%;
  background-color: rgba(var(--color-background));
}
[dir=ltr] .banner-v79__button-close {
  right: -4rem;
}
[dir=rtl] .banner-v79__button-close {
  left: -4rem;
}
.banner-v79__button-close:hover {
  background-color: rgba(var(--color-foreground));
  rotate: 180deg;
}
.banner-v79__button-close:hover svg {
  color: rgba(var(--color-background));
}