.fbe-popup {
    visibility: hidden;
    opacity: 0;
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2000;
    background-color: white;
    width: 45%;
    max-width: 1000px;
    height: 100vh;
    padding: 0;
    overflow-y: auto;
    box-shadow: -10px 0 30px 20px rgb(0 0 0 / 10%);
    transform: translateX(-100vw);
    transition: transform .3s ease-out, opacity .8s ease;
}

@media (max-width: 1199.98px) {
  .fbe-popup {
    width: 60%;
  }
}
@media (max-width: 991.98px) {
  .fbe-popup {
    width: 80%;
  }
}
@media (max-width: 767.98px) {
  .fbe-popup {
    width: 100%;
    max-width: 500px;
  }
}

.fbe-popup::-webkit-scrollbar {
  width: .3rem;  
}
.fbe-popup::-webkit-scrollbar-track {
  background-color: #fff;
}
.fbe-popup::-webkit-scrollbar-thumb {
  background-color: #ccc;
  border-radius: 5px; 
}

.fbe-popup-close-button-fullscreen {
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1999;
    background-color: rgba(255, 255, 255, 0.1);
    border: none;
    transform: translateX(-100vw);
}


.fbe-popup-wrap {
    display: flex;
    flex-direction: column;
    padding: 3rem;
    max-width: 90%;
    height: auto;
    object-fit: contain;
}

@media (max-width: 767.98px) {
  .fbe-popup-wrap {
    padding: 4rem 1rem 0 1rem;
  }
}

.fbe-popup-wrap figure
{
    margin: 0 .5rem;
}

.fbe-popup-wrap img
{
    max-width:100%;
    max-height:100%;
    object-fit: contain;
}
.fbe-popup-content {
    opacity: 1;
    transition: opacity 1s ease;
}

.fbe-popup-loading .fbe-popup-content { 
    opacity: 0;
    
}

.fbe-popup-overlay, .fbe-popup-error {
    visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: white;
}

.fbe-popup-overlay span {
    display: block;
}

.fbe-popup-close-button {
    position: absolute;
    top: 1rem;
    right: 2rem;
    z-index: 20;
    width: 2rem;
    height: 2rem;
    background-color: transparent;
    border: none;
  }

  @media (max-width: 767.98px) {
    .fbe-popup-close-button {
      left: 1rem;
      right: initial;
    }
  }
  
.fbe-popup-close-button .line {
    display: block;
    height: 2rem;
    width: 3px;
    margin-left: 12px;
    background-color: black;
    transform: rotate(45deg);
    Z-index: 1;
  }
  
.fbe-popup-close-button .line-inner {
    display: block;
    height: 2rem;
    width: 3px;
    background-color: black;
    transform: rotate(90deg);
    Z-index: 2;
}


.fbe-popup-loading .fbe-popup-overlay {
    visibility: visible;
}

.fbe-popup-opened {
    visibility: visible;
    opacity: 1;
    transform: translateX(0%);
}

.fbe-spinner {
    margin: 100px auto;
    width: 5rem;
    height: 3rem;
    text-align: center;
    font-size: 10px;
  }
  
  .fbe-spinner > div {
    background-color: rgba(0,0,0,0.5);
    height: 100%;
    width: 6px;
    display: inline-block;
    
    -webkit-animation: sk-stretchdelay 1.2s infinite ease-in-out;
    animation: sk-stretchdelay 1.2s infinite ease-in-out;
  }
  
  .fbe-spinner .rect2 {
    -webkit-animation-delay: -1.1s;
    animation-delay: -1.1s;
  }
  
  .fbe-spinner .rect3 {
    -webkit-animation-delay: -1.0s;
    animation-delay: -1.0s;
  }
  
  .fbe-spinner .rect4 {
    -webkit-animation-delay: -0.9s;
    animation-delay: -0.9s;
  }
  
  .fbe-spinner .rect5 {
    -webkit-animation-delay: -0.8s;
    animation-delay: -0.8s;
  }
  
  @-webkit-keyframes sk-stretchdelay {
    0%, 40%, 100% { -webkit-transform: scaleY(0.4) }  
    20% { -webkit-transform: scaleY(1.0) }
  }
  
  @keyframes sk-stretchdelay {
    0%, 40%, 100% { 
      transform: scaleY(0.4);
      -webkit-transform: scaleY(0.4);
    }  20% { 
      transform: scaleY(1.0);
      -webkit-transform: scaleY(1.0);
    }
  }
