.overlay {
    display: flex;
    flex-flow: column;
    justify-content: center; /* align horizontal */
    align-items: center; /* align vertical */
    position: fixed; /* Sit on top of the page content */
    min-width: 100%; /* Full width (cover the whole page) */
    height: 100%; /* Full height (cover the whole page) */
    top: 0; 
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(64, 68, 92, 0.9); /* Black background with opacity */
    z-index: 2; /* Specify a stack order in case you're using a different order for other elements */
    cursor: pointer; /* Add a pointer on hover */
}

#successOverlay > h2,
#errorOverlay > h2 {
    color: white;
    width: 50%;
    max-width: 700px;
    text-align:justify;
    letter-spacing: 0.1rem;
    text-shadow: 2px 2px rgba(22, 23, 33, 0.5);
}

#successOverlay, #errorOverlay > img {
    padding-bottom: 5rem;
    width: 10rem;
}

@media (max-width: 767px) {
    #successOverlay > img {
        width: 30vw;
    }
}

.ltr {
    direction: ltr;
}

.one-line-justifier {
    text-align:justify;
    /*height: 2.25rem;*/
    overflow: hidden;
    /*line-height: 2.25rem; */
}

.one-line-justifier:after {
    content: "";
    display: inline-block;
    width: 100%; 
}

.page-button {
    height: 3.5rem;
    width: 20rem;
    font-size: 1.5rem;
    border-radius: 40px;
    border: 0;
    letter-spacing: 0.2rem;
}

.page-button:active {
    text-decoration: underline;
    box-shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);
}

form input[type="text"],
form input[type="email"] {
    width: 100%;
    
    border-top: 0;
    border-left: 0;
    border-right: 0;
    border-bottom: 1px solid rgba(76, 76, 76, 0.6);
    font-size: 20px;
    vertical-align: middle;
    line-height: 3.5rem;
    height: 3.5rem; /* For correct displaying in IE */
}

form input[type="text"]::-webkit-input-placeholder,
form input[type="email"]::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: rgb(34, 34, 34);
  letter-spacing: 0.3rem;
}
form input[type="text"]::-moz-placeholder,
form input[type="email"]::-moz-placeholder { /* Firefox 19+ */
  color: rgb(34, 34, 34);
  letter-spacing: 0.3rem;
  opacity: 1; /* Firefox scecific issue with placeholder color */
}
form input[type="text"]:-ms-input-placeholder,
form input[type="email"]:-ms-input-placeholder { /* IE 10+ */
  color: rgb(34, 34, 34);
  letter-spacing: 0.3rem;
}
form input[type="text"]:-moz-placeholder,
form input[type="email"]:-moz-placeholder { /* Firefox 18- */
  color: rgb(34, 34, 34);
  letter-spacing: 0.3rem;
}

.scroll-btn-down {
    z-index:9999;
    display:block;
    bottom:40px;
    display: inline-block;

}
.scroll-btn-down.arrow {
    background-image:url("../images/arrow-down.png");
    background-size:contain;
    background-repeat:no-repeat;
    height: 6vh;
    width: 8vh;
    margin:0 0 0 0;
    line-height:60px;
    cursor:pointer;
    bottom:0;
    color:#FFF;
    z-index:100;
    text-decoration:none;
    text-shadow:0 0 3px rgba(0,0,0,.4);
    -webkit-animation:ca3_fade_move_down 2s ease-in-out infinite;
    -moz-animation:ca3_fade_move_down 2s ease-in-out infinite;
    animation:ca3_fade_move_down 2s ease-in-out infinite
}

@-webkit-keyframes ca3_fade_move_down{
    0%{
        -webkit-transform:translate(0,-20px);
        opacity:0
    }
    50%{
        opacity:1
    }
    100%{
        -webkit-transform:translate(0,20px);
        opacity:0
    }
}
@-moz-keyframes ca3_fade_move_down{
    0%{
        -moz-transform:translate(0,-20px);
        opacity:0
    }
    50%{
        opacity:1
    }
    100%{
        -moz-transform:translate(0,20px);
        opacity:0
    }
}
@keyframes ca3_fade_move_down{
    0%{
        transform:translate(0,-20px);
        opacity:0
    }
    50%{
        opacity:1
    }
    100%{
        transform:translate(0,20px);
        opacity:0
    }
}