[type=color], [type=date], [type=datetime-local], [type=datetime],
[type=email], [type=month], [type=number], [type=password], [type=search],
[type=tel], [type=text], [type=time], [type=url], [type=week] {
    display: block;
    box-sizing: border-box;
    width: 100%;
    height:auto;
    margin: 0.5rem 0 0.5rem;
    padding: 0.5rem 0.5rem;
    border: 1px solid #b8d5dd;
    border-radius: 0;
    background-color: transparent;
    box-shadow:none;
    font-family: inherit;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #252152;
    transition: box-shadow .5s, border-color .25s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}
[type=color]:focus, [type=date]:focus, [type=datetime-local]:focus,
[type=datetime]:focus, [type=email]:focus, [type=month]:focus, [type=number]:focus,
[type=password]:focus, [type=search]:focus, [type=tel]:focus, [type=text]:focus,
[type=time]:focus, [type=url]:focus, [type=week]:focus, [type=text]:focus , textarea:focus{
    outline: 0;
    border: 1px solid #6D8A98;
	background-color: #fafafa;
    box-shadow: none;
    transition: box-shadow .5s, border-color .25s ease-in-out;
	color: #252152;
}
textarea {
	border: 1px solid #b8d5dd;
	 background-color: transparent;
	 padding: 0.5rem 0.5rem;
	font-family: inherit;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
	width: 100%;
	margin: 0.5rem 0 0.5rem;
}
/**
* Make the field a flex-container, reverse the order so label is on top.
*/
 
.field {
  display: flex;
  flex-flow: column-reverse;
  margin-bottom: 1em;
}
/**
* Add a transition to the label and input.
* I'm not even sure that touch-action: manipulation works on
* inputs, but hey, it's new and cool and could remove the 
* pesky delay.
*/
label, input, textarea {
  transition: all 0.2s;
  touch-action: manipulation;
}
textarea:focus,
input:focus {
  outline: 0;
}
label {
  letter-spacing: 0.05em;
  font-size: 0.875rem;
  font-weight: 600;
}
/**
* Translate down and scale the label up to cover the placeholder,
* when following an input (with placeholder-shown support).
* Also make sure the label is only on one row, at max 2/3rds of the
* field—to make sure it scales properly and doesn't wrap.
*/
textarea:placeholder-shown + label ,
input:placeholder-shown + label {
  cursor: text;
  max-width: 66.66%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transform-origin: left bottom;
  transform: translate(0, 2rem) scale(1.3);
}
textarea:placeholder-shown + label {
	padding: 0 0.5rem;
}
/**
* By default, the placeholder should be transparent. Also, it should 
* inherit the transition.
*/
::-webkit-textarea-placeholder,
::-webkit-input-placeholder {
  opacity: 0;
  transition: inherit;
}
/**
* Show the placeholder when the input is focused.
*/
textarea:focus::-webkit-textarea-placeholder,
input:focus::-webkit-input-placeholder {
  opacity: 1;
}
/**
* When the element is focused, remove the label transform.
* Also, do this when the placeholder is _not_ shown, i.e. when 
* there's something in the input at all.
*/
textarea:not(:placeholder-shown) + label,
textarea:focus + label,
input:not(:placeholder-shown) + label,
input:focus + label {
  transform: translate(0, 0) scale(1);
  cursor: pointer;
}
div.wpcf7-response-output {
	margin: 2em 0.5em 1em;
	padding: 0.2em 1em;
	border: 2px solid #ff0000;
}

div.wpcf7-mail-sent-ok,
div.wpcf7-mail-sent-ng,
div.wpcf7-aborted,
div.wpcf7-spam-blocked,
div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {
	border: none;
}
div.wpcf7-response-output {
	padding: 1em;
}
[type=submit] {
    padding: 1rem 2rem;
	background-color: #6D8A98;
	color: #ffffff;
	display: inline-block;
	line-height: 100%;
	font-size: 0.875rem;
	font-weight: 700;
	text-transform: uppercase;
	border: none;
	cursor: pointer;
}
[type=submit]:hover {
	background-color: #252152;
}
.wpcf7-recaptcha {
	float: left;
}

input.search-field {
	border-bottom: none;
	background-color: rgb(255,255,255);
	padding: 0.75rem 1rem;
	border: none !important;
	margin: 0 !important;
	color: #34353A;
	font-size: 1rem;
}
input.search-field:focus {
	background-color: rgb(255,255,255) !important;
}

input.search-field::-webkit-input-placeholder {
  opacity: 1;
}
input.search-field:focus::-webkit-input-placeholder {
  opacity: 0;
}
/* Style the input container */
.input-container {
  display: flex;
  width: 100%;
  margin-bottom: 0;
  position: relative;
}

/* Style the form icons */
.icon {
 	padding: 1rem 0 0.75rem 0.9375rem;
  color:#cccccc;
  background-color: rgb(255,255,255);
  min-width: 50px;
  text-align: center;
  line-height: 1.5;
  font-size: 1.5rem !important;
  font-weight: 600;
}

/* Style the input fields */
.input-field {
  width: 100%;
  outline: none;
  margin-bottom: 0;
}

.wpcf7-not-valid {
	border: 1px solid #ff0000 !important;
}
.wpcf7-form-control-wrap {
	height: 100px;
}
