body {
  font-family: Arial, sans-serif;
  margin: 0;
  padding: 0;
}

#modal {
  cursor: pointer;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.65);

  align-items: center; 
  justify-content: center;

  &.active {
    display: flex;
  }
  img {
    width: 94%;
  }

  &.loading::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  z-index: -1;
  
  background-image: var(--bg-image);
  background-size: 850px auto;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  
  filter: brightness(0) invert(1);
  }

  &.mobile.loading::before {
    background-size: 94% auto;
    }

  &.loading img.scintillatio {
    width: 382px;
  }
  &.mobile.loading img.scintillatio {
    width: 45%;
  }  
}

#loader {
  cursor: pointer;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #ffffff;  
  align-items: center; 
  justify-content: center;

  &.active {
    display: flex;
  }

  img {
    width: 500px;  
  }

  &.mobile img {
    width: 70%;  
  }
}

.scintillatio {
  animation: scintillatio 1.5s step-start infinite;
}

@keyframes scintillatio {
  0%, 100% {
    opacity: 1; 
  }
  50% {
    opacity: 0; 
  }
}

#message {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 70%;
  margin: 1% auto;  

  textarea {
    width: 100%;
    font-family: Arial, Helvetica, sans-serif;
    height: 3rem;
    border: none;
    resize: none;
    background-image: url('../images/type.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;

    &:focus, &:focus-visible {
      outline: none;
    }
  }
  
  button {
    width: 250px;
    height: 53px;
    border: 0;
    outline: 0;    
    background-image: url('../images/send.jpg');  
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;       


    margin: 1% auto;
    &:hover {
      cursor: pointer
    }
  }
}

#publications {
  .rect {
    height: 75%;
  }

  .col {
    display: flex;
    flex-direction: column;
    width: 97.7%;
    margin: 0 auto;

    img {
      width: 100%;
      margin: 0.7% 0;

      &.smaller {
        width: 70%;
        margin: 1% auto;
      }
    }
  }

  .two-cols {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    img {
      cursor: pointer;

      -webkit-tap-highlight-color: transparent;      
      -webkit-user-select: none;
      -khtml-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      -webkit-user-drag: none;
      user-drag: none;
      outline: none;
          
      width: 48%;
      margin: 1%;
    }
  }
}

#publications:not(.mobile) {
  max-width: 1200px;
  margin: 0 auto;
}

#modal:not(.mobile) img {
  max-width: 850px;
  margin: 0 auto;
}