  /* ==========================================================================
  Online Training Widget Styles
  --------------------------------------------------------------------------
  Layout: Flex container with image (288px max-width) and content (flex: 1)
  Gap: 32px between image and content
  ========================================================================== */
.widget-online-training{
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.online-training-item {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  width: 100%;
}

.online-training-image {
  max-width: 288px;
  width: 100%;
  flex-shrink: 0;
}

.online-training-image img {
  width: 100%;
  height: auto;
}

.online-training-content {
  flex: 1;
  min-width: 240px;
}

.online-training-header {
  margin-bottom: 16px;
}

.online-training-chapters {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  width: 100%;
}

.online-training-chapters-column {
  flex: 1 1 calc(50% - 16px);
  min-width: 0;
}

.online-training-footer {
  margin-top: 16px;
}



@media (max-width: 877px) {
  .online-training-item {
    flex-direction: column;
  }

  .online-training-image {
    max-width: 100%;
  }

  .online-training-content {
    width: 100%;
  }

  .online-training-chapters {
    flex-direction: column;
    gap: 0;
  }

  .online-training-chapters-column {
    flex: 1 1 100%;
    width: 100%;
  }
}

/* ==========================================================================
  Modal Video Embed Styles
  --------------------------------------------------------------------------
  Responsive 16:9 video container with iframe
  ========================================================================== */
.iframe-video-embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
