/* *** Form title *** */

h1 {
	margin-top: -0.25em;
	margin-left: 0em;
}


/* *** Form container *** */

div.form_container {
	margin-top: 0.5em;
}


/* *** Text input fields, Selects *** */

input[type=text], select {
    xpadding: 12px;
		xpadding: 0.5em;
}


/* *** Text areas *** */

textarea {
	padding: 1em;
	border: solid 1px #808080;
	xcolor #404040;
	xborder-radius: 0.4em;
	xborder-radius: 0.5em;
	border-radius: 0.6em;
	width: 100%;
	margin-top: 0.5em;
	font-family: Futura Light;
	font-size: 12pt;
	resize: vertical;
}

textarea {
    width: 100%;
    xpadding: 12px;
    xresize: vertical;
		padding: 0.5em;
		xbox-shadow: inset 0.2em 0.2em 0.1em 0em rgba(0, 0, 0, 0.1);
		font-family: inherit;
		font-size: inherit;
}


/* *** Spam trap *** */

textarea#message {
	width: 0;
	height: 0;
	border: 0;
	padding: 0;
	margin: 0;
}


/* *** Labels *** */

label {
    xpadding: 12px 12px 12px 0;
    xdisplay: inline-block;
}

.field_label {
	xfloat: left;
	margin: 0;
	padding-right: 1em;
	padding-top: 0.15em;
	xwidth: 11em;
	width: 100%;
}

.text_field {
	font-family: inherit;
	font-size: inherit;
	border-radius: 0.6em;
	border: solid 1px #808080;
	display: block;
	overflow: hidden;
	width: 100%;
	xmargin-left: 1em;
	padding: 0.25em;
	padding-left: 0.6em;
	padding-right: 0.6em;
	margin-top: 0.25em;
}

/*
.text_field:required, textarea:required {
	border-color: black;
}
*/


/* *** Text input fields *** */

input[type=text], input[type=email] {
	xbox-shadow: inset 0.15em 0.15em 0.1em 0em rgba(0, 0, 0, 0.1);
	xbackground-color: #fdfdff;
}

/* *** Submit *** */

input[type=submit] {
    background-color: inherit;
    color: #202030;
    xbackground-color: #808080;
		xcolor: #f7f7ff;
		padding: 0.25em 1em;
		margin-top: 0.5em;
    margin-bottom: 1em;
    border: solid 1px #606060;
    border-radius: 1em;
    cursor: pointer;
    float: right;
		font-size: 14pt;
		font-family: Futura Medium;
		xbox-shadow: 0.1em 0.1em 0.1em 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

input[type=submit]:hover {
	xbackground-color: #c0c0c7;
	xbackground-color: #404050;
	xbackground-color: #f0f0f7;
	background-color: #e7e7eb;
	xcolor: #f0f0f7;
	color: #202040;
}

input[type=submit]:focus {
	xbackground-color: #c0c0c7;
	background-color: #404050;
	color: #f0f0f7;
}


/* *** Checkboxes *** */

.checkbox_container {
  display: block;
  position: relative;
  padding-left: 1.5em;
  padding-right: -1.5em;
  xmargin-bottom: 12px;
  cursor: pointer;
  xfont-size: 22px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default checkbox */
.checkbox_container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom checkbox */
.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 1.0em;
  width: 1.0em;
  background-color: white;
	border: solid 1px #808080;
}

/* On mouse-over */
.checkbox_container:hover input ~ .checkmark {
	background-color: #e7e7eb;
	color: #202040;
}

/* When the checkbox is checked */
.checkbox_container input:checked ~ .checkmark {
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.checkbox_container input:checked ~ .checkmark:after {
  display: block;
}

/* Style the checkmark/indicator */
.checkbox_container .checkmark:after {
  left: 0.25em;
  top: 0.0em;
  width: 0.35em;
  height: 0.7em;
  xborder: solid white;
  border: solid #202020;
  border-width: 0 0.125em 0.125em 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* *** Narrow *** */

@media only screen and (max-width: 550px) {

textarea.autosize {
	height: 26%;
}

.content {
	padding-top: 0em;
	margin-top: -0.0em;
}

}


/* *** Wide *** */

@media only screen and (min-width: 550px) {

.content {
	padding-top: 2em;
}

}

@media only screen and (min-width: 750px) {

.message_text_wrapper {
	xmargin-left: auto;
	xmargin-right: auto;
	xwidth: 37em;
	xmargin-top: 2em;
	
	margin-left: 1.5em;
	xmargin-right: auto;
	xwidth: 37em;
	margin-top: 1.0em;
	margin-bottom: 2em;
	max-width: 100%;
	text-align: justify;
}

}
