.container-fluid {
    margin-top: 4px;
}
.col {
    padding-left: 4px;
    padding-right: 4px;
}

#dropzone {
  margin-bottom: 3rem; }

*.icon-dropzone {color: #0087F7}

.dropzone {
  border: 2px dashed #0087F7;
  border-radius: 5px;
  background: white; }
  .dropzone .dz-message {
    font-weight: 400; }
    .dropzone .dz-message .note {
      font-size: 0.8em;
      font-weight: 200;
      display: block;
      margin-top: 1.4rem; }

*, *:before, *:after {
  box-sizing: border-box; }

.modal-dialog {
  max-width: 800px;
  margin: 30px auto;
}
.modal-content {
}

.modal-body-info {
  margin: 30px;
}
.modal-body {
  position:relative;
  padding:0px;
}
.close-video {
  position:absolute;
  right:-30px;
  top:0;
  z-index:999;
  font-size:2rem;
  font-weight: normal;
  color:#fff;
  opacity:1;
}

.video-container {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%; /* 16:9 aspect ratio for desktop */
}

.video-iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* Mobile-first approach - taller aspect ratio for mobile */
@media (max-width: 1200px) {
  .video-container {
    padding-bottom: 75%; /* 4:3 aspect ratio for mobile - better for vertical viewing */
  }
  
  /* Reduce navbar padding on mobile devices and tablets */
  .navbar {
    padding: 0.25rem 0.5rem !important;
  }
  
  .navbar-brand {
    padding: 0.25rem 0.5rem !important;
  }
  
  .navbar-text {
    padding: 0.25rem 0.5rem !important;
  }
  
  .navbar-text .btn {
    padding: 0.25rem 0.5rem !important;
    font-size: 0.875rem !important;
  }
}

@media (max-width: 768px) {
  .video-container {
    padding-bottom: 75%; /* 4:3 aspect ratio for mobile - better for vertical viewing */
  }
}

/* For very small screens, make it even taller */
@media (max-width: 480px) {
  .video-container {
    padding-bottom: 100%; /* 1:1 aspect ratio for very small screens */
  }
  
  /* Even more compact navbar for very small screens */
  .navbar {
    padding: 0.125rem 0.25rem !important;
  }
  
  .navbar-brand {
    padding: 0.125rem 0.25rem !important;
  }
  
  .navbar-text {
    padding: 0.125rem 0.25rem !important;
  }
  
  .navbar-text .btn {
    padding: 0.125rem 0.25rem !important;
    font-size: 0.75rem !important;
  }
}

.spinner {
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -30px;
  margin-top: -30px;
  height:60px;
  width:60px;
  -webkit-animation: rotation .6s infinite linear;
  -moz-animation: rotation .6s infinite linear;
  -o-animation: rotation .6s infinite linear;
  animation: rotation .6s infinite linear;
  border-left:6px solid rgba(0,104,209,.1);
  border-right:6px solid rgba(0,104,209,.1);
  border-bottom:6px solid rgba(0,104,209,.1);
  border-top:6px solid rgba(0,104,209,.9);
  border-radius:100%;
}

@-webkit-keyframes rotation {
  from {-webkit-transform: rotate(0deg);}
  to {-webkit-transform: rotate(359deg);}
}
@-moz-keyframes rotation {
  from {-moz-transform: rotate(0deg);}
  to {-moz-transform: rotate(359deg);}
}
@-o-keyframes rotation {
  from {-o-transform: rotate(0deg);}
  to {-o-transform: rotate(359deg);}
}
@keyframes rotation {
  from {transform: rotate(0deg);}
  to {transform: rotate(359deg);}
}