html {
    font-size: 16px;
  }
  
  body {
    margin: 0;
    padding: 0;
    height: 100%;
    min-height: 100vh;
  }
  
  #video-background {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow: hidden;
  }
  
  #video-background video {
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
  }
  
  #logo {
    position: absolute;
    bottom: 5rem;
    left: 5rem;
    max-height: 15rem;
    z-index: 1;
  }
  
  .flex-container {
    display: flex;
    flex-wrap: wrap;
    height: 100%;
    /* Set height to 100% of viewport */
    min-height: 100vh;
    /* Set min-height to 100vh for the flex container to sit at the bottom */
  }
  
  .flex-item {
    flex-basis: calc(33.33% - 20px);
    /* Subtract 20px to account for margins or padding between columns */
    padding: 20px;
    box-sizing: border-box;
  }
  
  /* Align contents along the bottom for the first flex item */
  .align-bottom {
    align-self: flex-end;
  }
  
  .margin-bottom {
    margin-bottom: 1rem;
    /* Add bottom margin to the first flex item */
  }
  
  .margin-left {
    margin-left: 5rem;
  }
  
  .langExplanation {
    width: 50%;
  }
  
  .form-control {
    display: block;
    width: 50%;
    height: calc(1.5em + 0.75rem + 2px);
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  }
  
  .bottom-align {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 100000;
  }
  
  .half-width {
    width: 50%;
  }
  
  /* CSS to style the scrollbar */
  /* For Webkit based browsers */
  ::-webkit-scrollbar {
    width: 10px;
    /* Width of the scrollbar */
    background-color: #343a40;
    /* Background color of the scrollbar track */
  }
  
  /* For Webkit based browsers */
  ::-webkit-scrollbar-thumb {
    background-color: #6c757d;
    /* Color of the scrollbar thumb */
  }
  
  /* Optional: Hover effect for the scrollbar thumb */
  ::-webkit-scrollbar-thumb:hover {
    background-color: #a6a6a6;
    /* Hover color of the scrollbar thumb */
  }
  
  /* Media query for mobile devices */
  @media (max-width: 767px) {
    .flex-container {
      flex-wrap: wrap;
      /* Prevent wrapping of columns on mobile devices */
    }
  
    .flex-item {
      flex-basis: 100%;
      /* Columns stack vertically on mobile devices */
    }
  
    /* Hide the third flex item on mobile view */
    .flex-container .flex-item:nth-child(2), .flex-container .flex-item:nth-child(3) {
      display: none;
    }
  
    html {
      font-size: 12px;
    }
  
    #logo {
      bottom: 15%;
      left: 50%;
      transform: translateX(-50%);
    }
  
    .half-width {
      width: 100%;
    }
  
    .margin-bottom {
      margin-bottom: 33rem;
    }
  
    .margin-left {
      margin-left: -1rem;
    }
  
    .form-control {
      display: block;
      width: 100%;
      height: calc(1.5em + 0.75rem + 2px);
      padding: 0.375rem 0.75rem;
      font-size: 1rem;
      font-weight: 400;
      line-height: 1.5;
      color: #495057;
      background-color: #fff;
      background-clip: padding-box;
      border: 1px solid #ced4da;
      border-radius: 0.25rem;
      transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    }
  
    .langExplanation {
      width: 100%;
    }
  }
  
  .spinner {
    margin: 0px auto 7rem auto;
    width: 3rem;
    height: 3rem;
    position: relative;
    text-align: center;
  
    -webkit-animation: sk-rotate 2s infinite linear;
    animation: sk-rotate 2s infinite linear;
  }
  
  .dot1,
  .dot2 {
    width: 60%;
    height: 60%;
    display: inline-block;
    position: absolute;
    top: 0;
    background-color: #e57763;
    border-radius: 100%;
  
    -webkit-animation: sk-bounce 2s infinite ease-in-out;
    animation: sk-bounce 2s infinite ease-in-out;
  }
  
  .dot2 {
    top: auto;
    bottom: 0;
    -webkit-animation-delay: -1s;
    animation-delay: -1s;
  }
  
  @-webkit-keyframes sk-rotate {
    100% {
      -webkit-transform: rotate(360deg);
    }
  }
  
  @keyframes sk-rotate {
    100% {
      transform: rotate(360deg);
      -webkit-transform: rotate(360deg);
    }
  }
  
  @-webkit-keyframes sk-bounce {
    0%,
    100% {
      -webkit-transform: scale(0);
    }
  
    50% {
      -webkit-transform: scale(1);
    }
  }
  
  @keyframes sk-bounce {
    0%,
    100% {
      transform: scale(0);
      -webkit-transform: scale(0);
    }
  
    50% {
      transform: scale(1);
      -webkit-transform: scale(1);
    }
  }