@import url("https://fonts.googleapis.com/css?family=Montserrat");
@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@200;300;400;600;700;800&amp;display=swap");

*,
:after,
:before,
::backdrop {
  box-sizing: border-box;
  border: 0 solid;
  margin: 0;
  padding: 0;
}

.free-container * {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
}

.free-container button {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
}

.free-container img,
.free-container video {
  max-width: 100%;
  height: auto;
}

.free-container img,
.free-container svg,
.free-container video,
.free-container canvas,
.free-container audio,
.free-container iframe,
.free-container embed,
.free-container object {
  vertical-align: middle;
  display: block;
}

::-webkit-scrollbar {
  width: 5px;
  height: 50px;
}

::-webkit-scrollbar-track {
  background: #131314;
  border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
  background: #888;
}

::-webkit-scrollbar-thumb {
  background: #fff;
  border-radius: 2px;
}

* {
  font-family: "Poppins", sans-serif;
}
body {
}

.overflow_hidden {
  overflow: hidden;
}

button {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
}

@keyframes shine {
  0% {
    background-position: -100%;
  }

  50% {
    background-position: 100%;
  }
  100% {
    background-position: -100%;
  }
}

.free-content {
  width: 100%;
}

.content {
  /* height: 300px; */
  width: 100%;
  padding: 0;
}

#mute_button {
  position: absolute;
  padding: 12px;
  border-radius: 100%;
  top: 80px;
  right: 24px;
  color: #fff;
  background: rgba(0, 0, 0, 0.2);
  border-color: rgba(255, 255, 255, 0.2);
  z-index: 49;
  border-width: 1px;
  transition: all 0.3s;
}

#mute_button:hover {
  background: rgba(0, 0, 0, 0.4);
}

#mute_button.off .mute {
  display: block;
}

#mute_button.off .loud {
  display: none;
}

#mute_button .loud {
  display: block;
}

#mute_button .mute {
  display: none;
}

.tags {
  display: flex !important;
  gap: 24px;
  line-height: 24px;
  margin: 0 0 16px;
}

.tags > span {
  color: #00d492;
  line-height: 28px;
  font-size: 18px;
  font-weight: 600;
}

.tags > div {
  display: flex;
  align-items: center;
  color: #fdc700;
  font-size: 16px;
  font-weight: 500;
  gap: 4px;
}

.tags > div svg {
  width: 16px;
  height: 16px;
}

/* --- Media Queries --- */
@media (max-width: 768px) {
  .tags {
    gap: 16px;
  }
  .tags > span {
    font-size: 16px;
    line-height: 24px;
  }
  .tags > div svg {
    width: 12px;
  }
}

.categories {
  display: flex !important;
  flex-wrap: wrap;
  gap: 8px;
}

.categories span {
  padding: 4px 12px;
  border-radius: 20px;
  line-height: 20px;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.9);
  background-color: rgba(255, 255, 255, 0.1);
}

/* --- Media Queries --- */
@media (max-width: 768px) {
  .categories span {
    font-size: 16px;
    line-height: 24px;
  }
}

.free-container .categories {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  flex-direction: row;
}

.free-container .categories span {
  padding: 4px 12px;
  border-radius: 20px;
  line-height: 20px;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.9);
  background-color: rgba(255, 255, 255, 0.1);
}

.the_text {
  width: 50%;
  margin: 0 0 32px;
  font-size: 20px;
  line-height: 32.5px;
  color: rgba(255, 255, 255, 0.9);
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 6;
  text-align: left;
}

/* --- Media Queries --- */
@media (max-width: 1024px) {
  .the_text {
    display: none;
  }
}

.main_buttons {
  display: flex;
  gap: 12px;
  align-items: center;
}

.main_buttons button {
  transition: all 0.3s;
}

.main_buttons button:hover {
  transform: scale(1.02);
}

.round_button {
  padding: 12px;
  backdrop-filter: blur(12px);
  border-color: rgba(255, 255, 255, 0.2);
  border-width: 1px;
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 100%;
  color: #fff;
}

.round_button svg {
  font-size: 24px;
  line-height: 32px;
}

.main_buttons .round_button:hover {
  transform: scale(1.05);
  background-color: rgba(255, 255, 255, 0.2);
}

@media (max-width: 1024px) {
  .play_button svg,
  .play_button span,
  .round_button svg {
    font-size: 14px;
    line-height: 20px;
  }

  .round_button.info svg {
    width: 16px;
    height: 16px;
  }
}

.play_button {
  position: relative;
  display: flex;
  align-items: center;
  padding: 8px 16px;
  background: oklch(0.577 0.245 27.325);
  color: #fff;
  border-radius: 10px;
  gap: 8px;
  font-size: 18px;
  font-weight: 600;
  overflow: hidden;
}

.play_button .gradient {
  position: absolute;
  opacity: 0;
  inset: 0;
  background: linear-gradient(
    to right,
    oklch(0.637 0.237 25.331) 0%,
    oklch(0.577 0.245 27.325) 100%
  );
  transition: all 0.3s;
}

.play_button:hover .gradient {
  opacity: 1;
}

.play_button span {
  line-height: 28px;
  z-index: 10;
}

.play_button svg {
  z-index: 10;
}

@media (max-width: 1024px) {
  .play_button svg,
  .play_button span,
  .round_button svg {
    font-size: 14px;
    line-height: 20px;
  }
}

@media (max-width: 768px) {
  .play_button {
    padding: 8px 12px;
    font-size: 16px;
  }
}

main {
}

.swiper-slide {
  position: relative;
  text-align: center;
  font-size: 18px;
  background: #000;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: grab;
  overflow: hidden;
}

.swiper-slide .overlay_1 img {
  position: realative; /* Provavelmente um erro de digitação, deveria ser "relative" */
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}

.swiper {
  width: 100%;
  overflow: hidden;
  height: 100vh;
}

.overlay_1,
.overlay_2,
.overlay_3,
.overlay_4 {
  position: absolute;
  inset: 0;
  z-index: -1;
}

.overlay_1 {
  background: linear-gradient(
    to right,
    oklab(0 0 0 / 0.9) 0%,
    oklab(0 0 0 / 0.5) 50%,
    rgba(0, 0, 0, 0) 100%
  );
}

.overlay_2 {
  background: linear-gradient(
    oklab(0 0 0 / 0.9) 0%,
    oklab(0 0 0 / 0.5) 50%,
    rgba(0, 0, 0, 0) 100%
  );
}

.overlay_3 {
  background: linear-gradient(
    to right,
    oklab(0 0 0 / 0.2) 0%,
    rgba(0, 0, 0, 0) 50%,
    rgba(0, 0, 0, 0) 100%
  );
}

.overlay_4 {
  background: linear-gradient(
    to top in oklab,
    rgb(0, 0, 0) 0%,
    rgba(0, 0, 0, 0) 50%,
    rgba(0, 0, 0, 0) 100%
  );
}

.overlay_1 iframe {
  position: relative;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  transform: scale(1.3);
  z-index: 21;
}

.swiper-slide .overlay_1 img {
  position: realative; /* Provavelmente "relative" */
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}

.top_part {
  margin: 3rem 0;
}

.top_part > img {
  width: 30%;
  height: fit-content;
}

.swiper_content {
  position: relative;
  z-index: 99;
  width: 100%;
  height: 80%;
  padding: 0 24px;
}

.swiper_content {
  display: flex;
  align-items: center;
  height: 100%;
}

.bottom_most_section {
  position: relative;
  overflow: hidden;
}

.bottom_most_section img {
  position: relative;
  object-fit: cover;
  width: 100%;
  height: 320px;
  z-index: 0;
}

.bottom_most_section .red_fitler {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(
    to right,
    oklab(0.637 0.214213 0.1014 / 0.5) 0%,
    oklab(0.637 0.214213 0.1014 / 0.5) 50%,
    rgba(0, 0, 0, 0) 100%
  );
  z-index: 1;
}

.bottom_most_section .content_wrapper {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  inset: 0;
  z-index: 2;
}

.bottom_most_section .free-content {
  width: 672px;
  text-align: center;
  color: #fff;
}

.bottom_most_section h3 {
  margin: 0 0 16px;
  filter: drop-shadow(rgba(0, 0, 0, 0.15) 0px 4px 4px);
  font-size: 48px;
  font-weight: 700;
  line-height: 48px;
}

.bottom_most_section h4 {
  font-size: 24px;
  line-height: 32px;
  text-transform: uppercase;
  font-weight: 400;
  margin: 0 0 24px;
  text-align: center;
}

.bottom_most_section .button {
  display: inline-block;
  padding: 8px 28px;
  border-radius: 10px;
  background: linear-gradient(
    oklch(0.637 0.237 25.331) 0%,
    oklch(0.577 0.245 27.325) 100%
  );
  color: #fff;
  font-size: 18px;
  line-height: 28px;
  font-weight: 600;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
  transition: all 0.3s;
  cursor: pointer;
  text-decoration: none;
}

ol,
ul {
  padding-left: 0rem;
  padding: 0;
}

@media (max-width: 1024px) {
  .play_button svg,
  .play_button span,
  .round_button svg {
    font-size: 24px;
    line-height: 32px;
  }

  .round_button.info svg {
    width: 16px;
    height: 16px;
  }
}

@media (max-width: 768px) {
  .tags {
    gap: 16px;
  }

  .tags > span {
    font-size: 16px;
    line-height: 24px;
  }

  .tags > div svg {
    width: 12px;
  }
  .free-container .categories span {
    font-size: 16px;
    line-height: 24px;
  }
  .play_button {
    padding: 8px 12px;
    font-size: 16px;
  }

  .swiper_content {
    position: absolute;
    display: flex;
    inset: 0;
    top: 80px;
    align-items: center;
    z-index: 500;
  }

  /* --- Media Queries --- */
  @media (max-width: 768px) {
    .swiper_content {
      top: 72px;
    }
  }

  .swiper_content .container {
    position: relative;
    z-index: 99;
    max-width: 95%;
    padding: 0 24px;
  }

  .swiper_content .container img {
    height: 128px;
    object-fit: contain;
    margin: 0 0 16px;
    transform: scale(0.95);
    transform-origin: bottom;
    transition-duration: 0.3s !important;
  }

  .swiper_content .container img.show {
    transform: scale(1);
  }

  .swiper_content .container .item {
    /*opacity: 0;*/
    visibility: hidden;
    transition: all 0.3s ease-in-out;
  }

  .swiper_content .container .item.show {
    opacity: 1;
    visibility: visible;
  }

  /* --- Media Queries --- */
  @media (max-width: 768px) {
    .swiper_content .container {
      width: 100%;
      max-width: initial;
      padding: 0 16px;
    }
    .swiper_content .container img {
      height: 64px;
    }
  }

  .swiper_content .top_part {
    margin-bottom: 32px;
  }

  /* --- Media Queries --- */
  @media (max-width: 768px) {
    .swiper_content .top_part {
      margin-bottom: 24px;
    }
  }

}

.status-on-off {
  color: #e7000b !important;
  font-weight: bold;
}
