body {
  overflow-x: hidden; /* No horizontal scrolling here! */
}

.alert-opacity-0 {
    transition: opacity 1500ms;
    opacity: 0;
}

.alert-opacity-1 {
    transition: opacity 0ms;
    opacity: 1;
}

/* Small one-line input fields */
.contact-form-small {
	min-width: 350px;
	max-width: 100%;
	resize: none;
	color: white;
	box-sizing: border-box;
	height: 38px;
	background: #272A39;
	margin-left: auto;
	margin-left: auto;
	padding: 9px;
	outline: none !important;
	vertical-align: text-top;

	/* Accent 2 */
	border-width: 0px 3px 3px 0px;
	border-style: solid;
	border-color: #B51555;
}
.contact-form-small:focus{
	background-color: #373A49;
}

/* The big message field */
.contact-form-large {
	resize: none;
	color: white;
	box-sizing: border-box;
	min-width: 350px;
	max-width: 100%;
	height: 176px;
	background: #272A39;
	margin-left: auto;
	margin-left: auto;
	padding: 9px;
	outline: none !important;
	vertical-align: text-top;

	/* Accent 2 */
	border-width: 0px 3px 3px 0px;
	border-style: solid;
	border-color: #B51555;
}

.contact-form-large:focus{
	box-sizing: border-box;
	background-color: #373A49;

	/* Accent 2 */
	border-width: 0px 3px 3px 0px;
	border-style: solid;
	border-color: #B51555;
}



/* The 'Contact Us' title */
.contact-title {
    text-align: left;
    text-transform: uppercase;
    font-size: 1.6em;
    font-weight: 900;
    line-height: 25px;
    letter-spacing: 0em;
    padding-bottom: 20;
    width: 358px;
}

/* Regular plain text */
.contact-body {
    padding-bottom: 38;
	padding-top: 10;
	max-width: 180px;
}

/*The gradient in the background*/
.contact-gradient{
	height: 100%;
}

/*The second horizontal fade in the background, only on small screens*/
.contact-gradient2{
	grid-row-start: 1;
	grid-column-start: 1;
	width: 100%;
	height: 100%;
	z-index: 3;
}


/*The sprite in the background*/
.overlaysprite {
	object-fit: cover;
	width: 70%;
	max-width: 392px;
	height: auto;
	min-height: 400px;
	position: absolute;
	margin-left: auto;
	margin-right: auto;
	top: 1%;
	left: 50%;
	z-index: -1;
}

.moonback {
	object-fit: cover;
	object-position: top center;
	width: 100vw;
    height: 900px;
    position: absolute;
	z-index: -2;
}


.contact-block {
	grid-row-start: 1;
	grid-column-start: 1;
	width: 100%;
	height: 300px;
	z-index: 4;
	background-color: rgba(20, 21, 31, 1);
	background-repeat: no-repeat;
}


/* Invisible box that all the text and form parts are in */
.contact-container {
    width: 100%;
    max-width: 1030px;
	top: 341px;
    padding-top: 50px;
    padding-bottom: 40px;
}

/* Invisible box for each form element */
.contact-form-section {
    padding-top: 14px;
}

.contact-send-button {
	margin-top: 10px;
	right: 0px;
	height: 38px;
	display: flex;
	margin-right: 0px;
	margin-left: auto;
	cursor: pointer;
}


.contact-send-button:hover *{
	background: #DF185B;
	color: black;

}

.contact-send-button-text {
	padding-left: 20px;
	padding-right: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #272A39;
	text-transform: uppercase;
	text-align: center;
}


.contact-send-button-img {
	margin-right:0;
	margin-left: auto;
	height: 38px;
}

.content-desktop {
	display: none;
}
.content-mobile {
	display: block;
}


/* large desktops */
@media (min-width: 550px) {
.content-desktop {
	display: none;
}
.content-mobile {
	display: block;
}

/*The gradient in the background*/
.contact-gradient{
	height: 100%;
}

/*The second horizontal fade in the background, only on small screens*/
.contact-gradient2{
	grid-row-start: 1;
	grid-column-start: 1;
	width: 100%;
	height: 100%;
	z-index: 3;
}


/* large desktops */
@media (min-width: 1000px) {

	.contact-block {
		grid-row-start: 1;
		grid-column-start: 1;
		width: 100%;
		height: 300px;
		z-index: 4;
		background-color: rgba(20, 21, 31, 1);
		background-repeat: no-repeat;
	}


	.contact-gradient{
		height: 800px;
	}

	.overlaysprite {
		width: 60%;
		max-width: 460px;
		height: auto;
		position: absolute;
		margin-left: auto;
		margin-right: auto;
		top: auto;
		left: 58%;
		bottom: 1px;
		z-index: -1;

	}

	.moonback {
		object-fit: cover;
		width: 100%;
		height: 800px;
		margin-left: min(0px, calc(calc(0.227272727272727 * 100%) - 272.727272727272727px));
		margin-right:min(0px, calc(calc(0.227272727272727 * 100%) - 272.727272727272727px));
		z-index: -2;
	}

	.contact-form-large {
		width: 400px;
		box-sizing: border-box;
		min-width: 400px;
		height: 176px;
		margin-left: 0;
		margin-left: 0;
		background: #272A39;

		/* Accent 2 */
		border-width: 0px 3px 3px 0px;
		border-style: solid;
		border-color: #B51555;
	}

	.contact-form-small {
		width: 400px;
		min-width: 400px;
		margin-left: 0;
		margin-left: 0;
	}

	.content-desktop {
		display: block;
		}
	.content-mobile {
		display: none;
		}

	/* Invisible box that all the text and form parts are in */
	.contact-container {
		min-width: 400px;
		max-width: 800px;
		top: 341px;
		padding-top: 70px;
		padding-bottom: 50px;
	}

	.contact-body {
		padding-bottom: 18;
		padding-top: 5;
		max-width: 500px;
	}

    .contact-title {
        font-size: 2.6em;
        font-weight: 900;
        line-height: 43px;
        letter-spacing: 0em;
    }


	.contact-send-button {
		height: 38px;
		display: flex;
		margin-right: 0;
		margin-left: auto;
	}

	.contact-send-button-text {
		padding-left: 20px;
		padding-right: 20px;
		display: flex;
		align-items: center;
		justify-content: center;
		background: #272A39;
		text-transform: uppercase;
		text-align: center;
	}

	.contact-send-button-img {
		margin-right:0;
		margin-left: auto;
		height: 38px;
	}


}
