/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }
  .owl-carousel .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y;
    touch-action: manipulation;
    -moz-backface-visibility: hidden;
    /* fix firefox animation glitch */ }
  .owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0; }
  .owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    /* fix for flashing background */
    -webkit-transform: translate3d(0px, 0px, 0px); }
  .owl-carousel .owl-wrapper,
  .owl-carousel .owl-item {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0); }
  .owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none; }
  .owl-carousel .owl-item img {
    display: block;
    width: 100%; }
  .owl-carousel .owl-nav.disabled,
  .owl-carousel .owl-dots.disabled {
    display: none; }
  .owl-carousel .owl-nav .owl-prev,
  .owl-carousel .owl-nav .owl-next,
  .owl-carousel .owl-dot {
    cursor: pointer;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel .owl-nav button.owl-prev,
  .owl-carousel .owl-nav button.owl-next,
  .owl-carousel button.owl-dot {
    background: none;
    color: inherit;
    border: none;
    padding: 0 !important;
    font: inherit; }
  .owl-carousel.owl-loaded {
    display: block; }
  .owl-carousel.owl-loading {
    opacity: 0;
    display: block; }
  .owl-carousel.owl-hidden {
    opacity: 0; }
  .owl-carousel.owl-refresh .owl-item {
    visibility: hidden; }
  .owl-carousel.owl-drag .owl-item {
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel.owl-grab {
    cursor: move;
    cursor: grab; }
  .owl-carousel.owl-rtl {
    direction: rtl; }
  .owl-carousel.owl-rtl .owl-item {
    float: right; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  animation-name: fadeOut; }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition: height 500ms ease-in-out; }

/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item {
  /**
			This is introduced due to a bug in IE11 where lazy loading combined with autoheight plugin causes a wrong
			calculation of the height of the owl-item that breaks page layouts
		 */ }
  .owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    transition: opacity 400ms ease; }
  .owl-carousel .owl-item .owl-lazy[src^=""], .owl-carousel .owl-item .owl-lazy:not([src]) {
    max-height: 0; }
  .owl-carousel .owl-item img.owl-lazy {
    transform-style: preserve-3d; }

/*
 * 	Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000; }

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: transform 100ms ease; }

.owl-carousel .owl-video-play-icon:hover {
  -ms-transform: scale(1.3, 1.3);
      transform: scale(1.3, 1.3); }

.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none; }

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease; }

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%; }
/* --- FULL WIDTH BANNER WITH ANIMATIONS --- */
.banner-full-width {
  background: #ffffff;
  border-radius: 8px;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
  padding: 15px 25px;
  margin: 20px 0;
  border-top: 5px solid #0d47a1;
  font-family: 'Poppins', sans-serif;
  width: 100%;
  display: block;
}

.bf-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}

/* SECTION 1: CONTENT */
.bf-content {
  flex: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-right: 15px;
  border-right: 1px solid #eee;
}

/* ANIMATION: Live Webinar Pulse */
@keyframes live-pulse {
  0% { transform: scale(1); text-shadow: 0 0 0 rgba(211, 47, 47, 0); }
  50% { transform: scale(1.02); text-shadow: 0 0 10px rgba(211, 47, 47, 0.3); color: #ff0000; }
  100% { transform: scale(1); text-shadow: 0 0 0 rgba(211, 47, 47, 0); }
}

.bf-header { 
  font-size: 0.95rem; 
  color: #d32f2f; 
  font-weight: 800; 
  text-transform: uppercase; 
  margin-bottom: 2px;
  /* Apply Animation */
  animation: live-pulse 1.5s infinite ease-in-out;
  display: inline-block;
  transform-origin: left;
}

.bf-sub { 
  font-size: 0.8rem; 
  color: #555; 
  font-style: italic; 
  margin-bottom: 8px; 
}

.bf-title { 
  font-size: 1.5rem; 
  font-weight: 800; 
  color: #0d47a1; 
  line-height: 1.2; 
  margin-bottom: 8px; 
}

.bf-audience { 
  font-size: 0.85rem; 
  font-weight: 600; 
  color: #333; 
  background: #e3f2fd; 
  padding: 4px 8px; 
  border-radius: 4px; 
  display: inline-block; 
  margin-right: 10px;
}

.bf-cert {
  font-size: 0.8rem;
  color: #2e7d32;
  font-weight: 700;
  display: inline-block;
}

/* SECTION 2: SPEAKERS */
.bf-speakers {
  flex: 1.2;
  display: flex;
  justify-content: center;
  gap: 15px;
}

.bf-sp-card {
  text-align: center;
  width: 130px;
  /* Smooth transition for card hover */
  transition: transform 0.3s ease;
}

.bf-sp-card:hover {
  transform: translateY(-5px);
}

/* ANIMATION: Speaker Image Zoom & Glow */
.bf-img {
  width: 85px;
  height: 85px;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid #0d47a1;
  margin: 0 auto 5px auto;
  display: block;
  transition: all 0.3s ease; /* Animation Speed */
}

/* Hover Effect on Image */
.bf-sp-card:hover .bf-img {
  transform: scale(1.1); /* Zoom In */
  border-color: #ff0000; /* Border turns Red */
  box-shadow: 0 5px 15px rgba(13, 71, 161, 0.4);
}

.bf-name { font-size: 0.85rem; font-weight: 800; color: #000; line-height: 1.2; display: block; }
.bf-role { font-size: 0.7rem; color: #555; line-height: 1.2; display: block; margin-bottom: 2px; }
.bf-comp { font-size: 0.7rem; color: #0d47a1; font-weight: 700; display: block; }
.bf-exp  { font-size: 0.7rem; color: #777; display: block; }

/* SECTION 3: ACTION */
.bf-action {
  flex: 0.8;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding-left: 10px;
}

.bf-date-row { font-size: 0.85rem; font-weight: 700; color: #333; margin-bottom: 4px; white-space: nowrap; }
.bf-date-row i { color: #fbc02d; margin-right: 5px; }

.bf-qr-box {
  width: 100px;
  height: 100px;
  border: 2px dashed #0d47a1;
  padding: 4px;
  border-radius: 6px;
  background: white;
  position: relative;
  margin-top: 5px;
  cursor: pointer;
  transition: transform 0.2s;
}
.bf-qr-box:hover { transform: scale(1.05); }

.bf-qr-box img { width: 100%; height: 100%; }
.bf-scan-lbl { font-size: 0.8rem; font-weight: 800; color: #000; margin-top: 5px; }

/* Laser Animation */
.bf-laser {
  position: absolute; top: 0; left: 0; width: 100%; height: 2px; background: red;
  box-shadow: 0 0 5px red; animation: scan-full 2s infinite linear;
}
@keyframes scan-full { 0% { top: 0; } 100% { top: 100%; } }

/* Responsive */
@media (max-width: 991px) {
  .bf-row { flex-direction: column; text-align: center; gap: 20px; }
  .bf-content { border-right: none; border-bottom: 1px solid #eee; padding-bottom: 20px; padding-right: 0; width: 100%; }
  .bf-speakers { width: 100%; border-bottom: 1px solid #eee; padding-bottom: 20px; }
  .bf-action { width: 100%; padding-left: 0; }
}
