/* Smooth lazy image loader */
.fbt-lazy-wrap{
  position:relative;
  overflow:hidden;
  display:inline-block;
  max-width:100%;
  line-height:0;
  background:linear-gradient(180deg,#f6f7fb 0%,#edf2f7 100%);
}

.fbt-lazy-block{
  display:block;
  width:100%;
}

/* Prevent unexpected fixed heights inside post content */
.entry-content .fbt-lazy-wrap,
.nb-article__content .fbt-lazy-wrap{
  height:auto !important;
}

.fbt-lazy-wrap::before{
  content:"";
  position:absolute;
  inset:0;
  background:#f3f4f6;
  transition:opacity .35s ease;
}

.fbt-lazy-wrap.is-loaded::before{
  opacity:0;
}

.fbt-lazy-wrap img.fbt-lazy-img{
  display:block;
  width:100%;
  height:auto;
  opacity:0;
  transform:scale(1.02);
  filter:blur(10px);
  transition:opacity .5s ease, transform .5s ease, filter .5s ease;
}

.fbt-lazy-wrap.is-loaded img.fbt-lazy-img{
  opacity:1;
  transform:scale(1);
  filter:blur(0);
}

.fbt-loader{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  z-index:2;
  transition:opacity .25s ease, transform .25s ease;
}

.fbt-lazy-wrap.is-loaded .fbt-loader{
  opacity:0;
  transform:scale(.9);
  pointer-events:none;
}

.fbt-loader__dots{
  display:inline-flex;
  gap:6px;
}

.fbt-loader__dots span{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#cbd5e1;
  animation:fbt-bounce 1.2s infinite ease-in-out;
}

.fbt-loader__dots span:nth-child(2){animation-delay:.15s;}
.fbt-loader__dots span:nth-child(3){animation-delay:.3s;}

@keyframes fbt-bounce{
  0%,80%,100%{transform:scale(.6); opacity:.6;}
  40%{transform:scale(1); opacity:1;}
}
