html,body {
	height: 100%;
	margin: 0;
	padding:0;
}

body {
	background-image: url("main.jpg");
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
	font-family: "Helvetica Neue", Helvetica, Arial;
	font-size: 0.8em;
	overflow: hidden;
	padding: 0;
	margin:0;
}

hr{
	background-color:#bdbeb7;
	height: 1px;
	border: 0;
    margin: 1em 0;
}

input:-webkit-autofill {
	-webkit-box-shadow: 0 0 0px 1000px #e0e2dd inset;
}
input:-webkit-autofill:focus{
	-webkit-box-shadow: 0 0 0px 1000px #e0e2dd inset, 0 0 8px rgba(82, 168, 236, 0.6);
}
.container {
	margin-left: 5%;
	max-width: 406px;
	height:100%;
	position: fixed;
	top: 0;
}

.s-text-containt {
	background-color: #f6f6f6;
	background:rgba(246, 246, 246, 0.8)  no-repeat scroll 50% ;
	padding-top:70px;
	display: table;
	position: static;
	height:100%;
}

.s-text {
	color: #0A83BE;
}

.button {
	background-color: #0A83BE;
}

a {
	background-color: #0A83BE;
	border-radius: 3px;
	clear: both;
	color: white;
	display: block;
	letter-spacing: 1px;
	padding: 0.7em 1em;
	text-decoration: none;
	font-weight:bold;
	font-size:1.1em;
}

a:hover,a:focus {
	background-color: #0A83BE;
}

.s-m-signin {
	text-align: center;
}

.s-product {		
	font-size: 2em;
	padding: 1em 0.3em;
	text-align: center;
	color: #0A83BE;
}


.s-product-other {
	font-size: 1.3em;
	padding: 0.3em;
	text-align: center;
	color: #0A83BE;
}

.s-start {
	border-bottom: 3px dotted;
	border-top: 3px dotted;
}

.z-field {
	display: block;
	padding: 0.25em 2.2em;
}
.z-input-check {
	width: 15px;
	padding: 0px;
	margin-right: 0.2em;
	display: -webkit-inline-box;
}
.z-action {
	display: block;
	padding: 1em 2.2em;
	text-align: center;
}

.z-error {
	display: block;
	padding: 1em 2.2em;
	text-align: center;
	color:#0A83BE;
}

input {
	background-color: #0A83BE;
	border: 1px solid #ccc;
	border-radius: 3px;
	margin-bottom: 0.5em;
	padding: 0.6em;
	width: 330px;
}

input:focus {
	background-color: 0 0 5px rgba(0, 159, 218, 0.8);
}

.s-visibility-hidden {
	display: none;
	visibility: hidden;
}

.s-visibility-visible {
	visibility: visible;
}

input.submit {
	background-color: transparent;
	color: transparent;
	border: none;
	width: 1px;
	height: 1px;
	font-size: 1pt;
	padding-left: inherit;
	padding-right: inherit;
	padding-top: inherit;
	padding-bottom: inherit;
}

@media screen and (max-width: 1024px) {
	body {
		font-size: 0.7em;
	}
}

@media screen and (max-height: 600px) {
	.s-product {		
		color: #0A83BE;
		font-size: 1.5em;
		padding: 0.3em;
		text-align: center;
	}
}

@media ( max-width : 600px) {
	.s-product {
		border-top: 0 none;
		padding-bottom: 0;
	}
	.s-text {
		padding: 0.1em;
	}
	.container {
		max-width: 80%;
		width: 100%;
	}
	.s-text-containt {
		margin: 0.2em;
		width: 80%;
	}
	.s-product {
		padding: 0.3em;
	}
}

@media screen and (max-width: 480px) {
	body {
		font-size: 0.55em;
	}
	.s-text-containt {
		width: 70%;
		background:rgba(246, 246, 246, 0.8) url("../img/logo_sage_small.png") no-repeat scroll 50% 15px;
		padding-top:90px;
	}
	
	.container {
		max-width: 100%;
		margin-left: 12%;
		width: 100%;
	}
	.s-product {
		color: #51534A;
		font-size: 1.5em;
		font-weight: bold;
		padding: 0.3em;
		text-align: center;
	}
	.s-product-other {
		font-weight: bold;
	}
	input {
		font-size: 1.2em;
		padding: 0.2em 0.5em;
		width: 180px;
	}
	.s-product {
		padding: 0.3em;
	}
}

* { box-sizing:border-box; }

/* basic stylings ------------------------------------------ */
body 				 { 

}
.container 		{ 

}

h2 		 { 
  text-align:center; 
  margin-bottom:50px; 
}
h2 small { 
  font-weight:normal; 
  color:#888; 
  display:block; 
}
.footer 	{ text-align:center; }
.footer a  { color:#0A83BE; }

/* form starting stylings ------------------------------- */
.group 			  { 
  position:relative; 
  margin-bottom:20px; 
}
input 				{
  font-size:18px;
  padding:10px 10px 10px 5px;
  display:block;
  width:300px;
  border:none;
  /*#85CD36*/
  border-bottom:1px solid #0A83BE;
  background-color: rgba(0,0,0,0);
}
input:focus 		{ outline:none !important; }

/* LABEL ======================================= */
label 				 {
  color:#0A83BE; 
  font-size:18px;
  font-weight:normal;
  position:absolute;
  pointer-events:none;
  left:30px;
  top:20px;
  transition:0.2s ease all; 
  -moz-transition:0.2s ease all; 
  -webkit-transition:0.2s ease all;
}

/* active state */
input:focus ~ label, input:valid ~ label 		{
  top:-20px;
  font-size:14px;
  color:#0A83BE;
}

/* BOTTOM BARS ================================= */
.bar 	{ position:relative; display:block; width:300px; }
.bar:before, .bar:after 	{
  content:'';
  height:2px; 
  width:0;
  bottom:9px; 
  position:absolute;
  background:#0A83BE; 
  transition:0.2s ease all; 
  -moz-transition:0.2s ease all; 
  -webkit-transition:0.2s ease all;
}
.bar:before {
  left:50%;
}
.bar:after {
  right:50%; 
}

/* active state */
input:focus ~ .bar:before, input:focus ~ .bar:after {
  width:50%;
}

/* HIGHLIGHTER ================================== */
.highlight {
  position:absolute;
  height:60%; 
  width:100px; 
  top:25%; 
  left:0;
  pointer-events:none;
  opacity:0.5;
}

/* active state */
input:focus ~ .highlight {
  -webkit-animation:inputHighlighter 0.3s ease;
  -moz-animation:inputHighlighter 0.3s ease;
  animation:inputHighlighter 0.3s ease;
}

/* ANIMATIONS ================ */
@-webkit-keyframes inputHighlighter {
	from { background:#0A83BE; }
  to 	{ width:0; background:transparent; }
}
@-moz-keyframes inputHighlighter {
	from { background:#0A83BE; }
  to 	{ width:0; background:transparent; }
}
@keyframes inputHighlighter {
	from { background:#0A83BE; }
  to 	{ width:0; background:transparent; }
}