input[type=date] { position:relative; -moz-appearance:textfield; }
input[type=date]::-webkit-datetime-edit-year-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-datetime-edit-month-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-datetime-edit-day-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-datetime-edit-week-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-datetime-edit-hour-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-datetime-edit-minute-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-datetime-edit-second-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-datetime-edit-millisecond-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-datetime-edit-ampm-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-clear-button,
input[type=date]::-webkit-inner-spin-button { display:none; }
input[type=date]::-webkit-date-and-time-value { display:inline; }
input[type=date]::-webkit-calendar-picker-indicator { width:100%; color:transparent; position:absolute; height:100%; left:0; top:0; padding:0; }
input[type=date]::-webkit-calendar-picker-indicator:hover { background-color:transparent; }

input[type=number]::-webkit-textfield-decoration-container { height:100%; }
/*input[type=number] { -moz-appearance:textfield; }*/

select { background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"/>'); }

::placeholder { color:#A8A8A8; opacity:1; } /* Good browsers */
::-ms-input-placeholder { color:#A8A8A8; } /* Edge */
:-ms-input-placeholder { color:#A8A8A8!important; } /* IE10-11 */
:required { background-repeat:no-repeat; background-position:right 1em center; background-size:1em; background-image:url(/ccms/images/input-invalid.svg); }
:required:valid { background-image:url(/ccms/images/input-valid.svg); }
textarea:required { background-position:right 1em top 0.8em; }
select:invalid { color:#A8A8A8; }
select:required { padding-right:1em; }
select option:enabled { color:black; }

form fieldset { margin:0; padding:0; border:none; }
form fieldset legend { display:none; }
form fieldset div.formfields { display:flex; flex-wrap:wrap; }
form fieldset div.formfields > div { flex-basis:100%; flex-grow:12; padding:0.35em 0.4em; }
form fieldset div.formfields > .half { flex-basis:48%; flex-grow:6; }
form fieldset div.formfields > .third { flex-basis:31.33%; flex-grow:4; }
form fieldset div.formfields > .quarter { flex-basis:23%; flex-grow:3; }
form fieldset div.formfields > .vpad { padding:1.2em 0.4em; }

@media (max-width:600px) {
	form fieldset div.formfields > .half,
	form fieldset div.formfields > .third,
	form fieldset div.formfields > .quarter { flex-basis:100%; }
}

form fieldset div.formfields input { display:block; width:100%; outline:none; border:none; background-color:white; padding:0 0 0 0.6em; box-shadow:2px 9px 6px -7px rgba(0, 0, 0, 0.2); border-radius:0.15em; line-height:normal; height:2.5em; -webkit-appearance:none; }
form fieldset div.formfields input[type=checkbox] {display:inline-block; width:inherit;  height:inherit;  outline:inherit; -webkit-appearance:checkbox;}
form fieldset div.formfields select { display:block; width:100%; outline:none; border:none; background-color:white; padding:0 0 0 0.6em; box-shadow:2px 9px 6px -7px rgba(0, 0, 0, 0.2); border-radius:0.15em; line-height:normal; height:2.5em; }
form fieldset div.formfields textarea { display:block; width:100%; outline:none; border:none; background-color:white; padding:0.6em 2.5em 0.6em 0.6em; box-shadow:2px 9px 6px -7px rgba(0, 0, 0, 0.2); border-radius:0.15em; line-height:1.4em; resize:vertical; -webkit-appearance:none; }
form fieldset div.formfields button { display:block; width:100%; outline:none; border:none; padding:0 1.7em 0 0.6em; box-shadow:2px 9px 6px -7px rgba(0, 0, 0, 0.2); border-radius:0.15em; line-height:1em; height:2em; text-align:left; vertical-align:middle; }
form fieldset div.formfields label.datewrap { display:flex; white-space:nowrap; align-items:center; background-color:white; padding:0 0 0 0.6em; box-shadow:2px 9px 6px -7px rgba(0, 0, 0, 0.2); border-radius:0.15em; line-height:normal; height:2.5em; color:#A8A8A8; }
form fieldset div.formfields label.datewrap input { background-color:initial; box-shadow:none;color:black; padding:0 0 0 0.3em; }
form fieldset div.formfields label.datewrap input[type=date] { height:initial; }

form fieldset div.formfields button { font-size:1.2em; text-transform:uppercase; background-color:#498612; color:white; text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.43); position:relative; }
form fieldset div.formfields button:after { content:"\f054"; font-family:FontAwesome; position:absolute; right:0.6em; top:calc(50% - 0.5em); height:1em; }
