body.rb-video-01-active,
body:has(.rb-video-01.no-script .rb-video-modal:target) {
  overflow: hidden;
}

.rb-videos-01 {
  padding: var(--rb-padding-04);
}

.rb-videos-01 .rb-container {
  display: flex;
  flex-wrap: wrap;
  gap: var(--rb-padding-04);
}

.rb-videos-01 .rb-container .rb-video-01 {
  flex: 1;
  min-width: calc(50% - var(--rb-padding-04) / 2);
  max-width: calc(50% - var(--rb-padding-04) / 2);
  scroll-margin-top: var(--rb-header-height-01);
}

.rb-video-01 .rb-header {
  background-position: center;
  background-size: cover;
  width: 100%;
  aspect-ratio: 16 / 9;
  display: flex;
  align-items: center;
  justify-content: center;
}

.rb-video-01 .rb-play-button {
  width: 79px;
  height: 79px;
}

.rb-video-01 .rb-content {
  background-color: var(--rb-gray-01);
  padding: var(--rb-padding-04);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--rb-padding-02);
}

.rb-video-01 .rb-content .rb-title {
  margin: 0;
}

.rb-video-01 .rb-content .rb-summary {
  text-overflow: ellipsis;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  margin: 0;
}

.rb-video-01 .rb-video-modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  background-color: rgba(35, 31, 32, 0.9);
  opacity: 0;
  pointer-events: none;
  transition: opacity 150ms ease-in-out;
  display: flex;
  flex-direction: column;
}

.rb-video-01 .rb-video-modal .rb-top {
  padding: var(--rb-padding-08) var(--rb-padding-08) var(--rb-padding-04);
  display: flex;
  justify-content: flex-end;
}

.rb-video-01 .rb-video-modal .rb-center {
  padding: 0 var(--rb-padding-08);
  min-height: 0;
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}

.rb-video-01 .rb-video-modal .rb-video {
  height: 100%;
  aspect-ratio: 16 / 9;
  max-width: 100%;
}

.rb-video-01 .rb-video-modal .rb-bottom {
  padding: var(--rb-padding-04) var(--rb-padding-08) var(--rb-padding-08);
}

.rb-video-01 .rb-video-modal .rb-summary {
  color: var(--rb-white-01);
  margin: 0;
  text-align: center;
}

.rb-video-01.active .rb-video-modal,
.rb-video-01.no-script .rb-video-modal:target {
  opacity: 1;
  pointer-events: auto;
}

@media (max-width: 768px) {
  .rb-videos-01 {
    padding: var(--rb-padding-02);
  }

  .rb-videos-01 .rb-container .rb-video-01 {
    min-width: 100%;
    max-width: 100%;
    scroll-margin-top: var(--rb-header-height-02);
  }

  .rb-video-01 .rb-content {
    padding: var(--rb-padding-02);
  }

  .rb-video-01 .rb-video-modal .rb-top {
    padding: var(--rb-padding-02);
  }

  .rb-video-01 .rb-video-modal .rb-center {
    padding: 0 var(--rb-padding-02);
  }

  .rb-video-01 .rb-video-modal .rb-bottom {
    padding: var(--rb-padding-02);
  }
}
