.fancy-form-input {
	position:      relative;
	margin-bottom: 12px;
}

/* 	============================================
    Fancy Label
 ============================================ */
.fancy-form-input label.fancy-label {
	position:           absolute;
	font-size:          12px;
	display:            block !important;
	left:               15px;
	top:                0px;
	opacity:            0;
	font-weight:        normal;
	color:              #3f5da6;
	line-height:        14.4px;
	cursor:             default;
	-webkit-transition: top 0.2s ease, opacity 0.2s linear;
	-moz-transition:    top 0.2s ease, opacity 0.2s linear;
	-ms-transition:     top 0.2s ease, opacity 0.2s linear;
	-o-transition:      top 0.2s ease, opacity 0.2s linear;
	transition:         top 0.2s ease, opacity 0.2s linear;
}

.fancy-form-input.focused label.fancy-label {
	top:     6px;
	opacity: 1;
}

/* 	============================================
    Fancy Input
 ============================================ */
.fancy-form-input input[type="text"],
.fancy-form-input textarea {
	width:              100%;
	height:             50px;
	border-radius:      3px;
	padding:            13px 15px;
	color:              #999999;
	font-size:          15px;
	line-height:        24px;
	border:             1px solid #E6E6E6;
	box-shadow:         rgba(255, 255, 255, 0) 0 0 4px;
	-moz-transition:    box-shadow linear 0.2s, border linear 0.2s;
	-webkit-transition: box-shadow linear 0.2s, border linear 0.2s;
	-o-transition:      box-shadow linear 0.2s, border linear 0.2s;
	transition:         box-shadow linear 0.2s, border linear 0.2s;
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	-o-box-sizing:      border-box;
	-ms-box-sizing:     border-box;
	box-sizing:         border-box;
}

.fancy-form-input textarea {
	height:      100px;
	padding-top: 10px;
}

/* 	============================================
    Fancy Icons
 ============================================ */
.fancy-form-input .required,
.fancy-form-input .note {
	position:           absolute;
	z-index:            4;
	top:                50%;
	line-height:        18px;
	height:             20px;
	width:              20px;
	margin-top:         -10px;
	text-align:         center;
	border-radius:      50%;
	border:             1px solid #CCCCCC;
	background:         #FFFFFF;
	font-size:          0.8em;
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	-ms-box-sizing:     border-box;
	-o-box-sizing:      border-box;
	box-sizing:         border-box;
}

.fancy-form-input .required {

	color:        red;
	/* Left Side */
	/*
	left:         0px;
	margin-left:  -10px;
	margin-right: 0;
	*/

	/* Right Side */
	right:        0px;
	margin-left:  0;
	margin-right: -10px;

}

.fancy-form-input .note {
	right:        0px;
	margin-left:  0;
	margin-right: -10px;
	color:        blue;
}

.fancy-form-input.fancy.focused .fancy-label + input[type="text"],
.fancy-form-input.fancy.focused .fancy-label + textarea {
	padding-top:    18px;
	padding-bottom: 6px;
}

/* 	============================================
    NOT PART OF FANCY INPUT
 ============================================ */
.fancy-form-input.fancy.prefilled-shrink textarea {
	height: 50px;
}