/*************************************************************************************************/
/** Basics ***************************************************************************************/
/*************************************************************************************************/

*:focus {
	outline: 0;
}
* {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
html {
	font-size: 62.5%;
}
body {
	background: #fff;
	color: #364d5a;
	font: 1.3em/1.6 'Open Sans', Arial, sans-serif;
}
 body.scroll {
	overflow-y: scroll;
}
a {
	color: #ea1140;
	outline: 0;
	text-decoration: none;
}
.no-touch a:hover {
	text-decoration: underline;
}
a.invert {
	text-decoration: underline;
}
.no-touch a.invert:hover {
	text-decoration: none;
}
a.tr {
	transition-duration: .3s;
	transition-property: all;
	-webkit-transition-duration: .3s;
	-webkit-transition-property: all;
}
a.btn {
	border-radius: 1px;
	color: #ea1140;
	display: inline-block;
	font-weight: bold;
	text-decoration: none;
}
a.btn.orange {
	background: #ea1140 !important;
}
a.btn.grey {
	background: #364d5a !important;
}
.no-touch a.btn:hover {
	text-decoration: none;
}
a.btn:active {
	position: relative;
	top: 1px;
}
a.btn.disabled {
	opacity: 0.5;
}
.left {
	float: left;
}
.right {
	float: right;
}
.full-width {
	width: 100%;
}
.float-center {
	left: 50%;
}
.top-15px {
	margin-top: 15px !important;
}
.top-20px {
	margin-top: 20px !important;
}
.top-30px {
	margin-top: 30px !important;
}
.top-40px {
	margin-top: 40px !important;
}
.btm-15px {
	margin-bottom: 15px !important;
}
.btm-20px {
	margin-bottom: 20px !important;
}
.btm-30px {
	margin-bottom: 30px !important;
}
.btm-40px {
	margin-bottom: 40px !important;
}
::placeholder {
	color: #648ca3;
	opacity: .5;
}
:-ms-input-placeholder {
	color: #648ca3;
	opacity: .5;
}
::-ms-input-placeholder {
	color: #648ca3;
	opacity: .5;
}

/*************************************************************************************************/
/** Typography ***********************************************************************************/
/*************************************************************************************************/

h1, h2, h3, h4, h5, h6 {
	color: #364d5a;
	font-family: 'Open Sans', Arial, sans-serif;
	font-weight: normal;
}

h1 { font-size: 3.8rem }
h2 { font-size: 2.6rem }
h3 { font-size: 1.6rem }

p {
	margin-bottom: 10px;
}
em {
	font-style: italic;
}
strong {
	font-weight: 600;
}
small {
	font-size: 80%;
}
ul {
	list-style: none outside;
}
ol {
	list-style: decimal;
}
ul.square {
	list-style: square outside;
}
ul.circle {
	list-style: circle outside;
}
ul.disc {
	list-style: disc outside;
}
li {
	margin-bottom: 0;
}
input[type=text], input[type=password], select, textarea {
	border: 1px solid #cedbe2;
	border-radius: 1px;
	color: #364d5a;
	font-family: 'Open Sans', Arial, sans-serif;
	padding: 3px 6px;
	transition-duration: 0.3s;
	transition-property: all;
	-moz-appearance: none;
	-webkit-appearance: none;
	-webkit-transition-duration: .3s;
	-webkit-transition-property: all;
}
textarea {
	height: auto;
	padding: 3px 6px;
	resize: vertical;
}
input[type=file] {
	position: absolute;
	left: -9999px;
}
select {
	appearance: none;
	background: #fff url(../image/select-arrow.png) no-repeat center right 10px;
	padding: 0 2px;
	padding-right: 23px !important;
	-moz-appearance: none;
	-webkit-appearance: none;
}
select::-ms-expand {
	display: none;
}
select::-ms-value {
	background: transparent;
	color: #364d5a;
}
select option {
	background: #fff;
}
input:not([type=file]):focus, input:not([type=checkbox]):focus, select:focus, textarea:focus {
	border: 1px solid #ea1140;
}
label {
	position: relative;
}
label:not(.radio) {
	display: block;
	margin-bottom: 5px;
}
label.radio {
	margin: 0 15px 0 5px;
}