/**
* http://www.colorcombos.com/color-schemes/7626/ColorCombo7626.html
*/

* {
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	padding: 0;
	margin: 0;
	border: none;
	box-sizing: border-box;
	text-decoration: none;
	color: #333;
}

a {
	text-decoration: underline;
}

html, html {
	min-height: 100%;
}

body {
	background: #444;
	padding: 16px;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
}

p {
	padding: 0 24px 12px;
}

h1, h1 * {
	font-size: 24px;
	font-weight: 200;
	padding: 0 24px 12px;
}

ul.indent {
	margin-left: 45px;
}

.container {
	background: rgba(255, 255, 255, 0.95);
	max-width: 1200px;
	margin:  auto;
	border-radius: 2px;
	box-shadow: 0 0 10px rgba(0, 0, 0, .25);
}

section .inner {
	max-width: 1200px;
	margin: 0 auto;
}

.header {
	font-size: 0;
	padding: 0 32px;
	border-bottom: 1px solid #eee;
}

.header #logo {
	display: inline-block;
	line-height: 96px;
	height: 96px;
	margin-right: 32px;
}

.header #logo img {
	max-width: 100px;
	max-height: 50px;
	vertical-align: middle;
}

.header nav, .header nav ul li {
	display: inline-block;
	margin-right: 16px;
}

.header nav ul li a {
	display: block;
	height: 96px;
	line-height: 96px;
	color: #333 ;
	font-weight: 600;
	text-decoration: none;
}

.body {
	padding: 24px 0 12px;
}

.body nav {
	padding-bottom: 24px;
}

.body nav ul li {
	display: inline-block;
}

.body nav ul li a {
	display: block;
	background: #555;
	height: 32px;
	line-height: 32px;
	padding: 0 16px;
	border-radius: 16px;
	color: #fff;
	font-size: .8em;
	text-transform: uppercase;
	font-weight: 600;
	transition: background .2s;
}

.body nav ul li a:hover {
	background: #777;
	color: #fff;
}

.register-img {
	width: 100%;
	margin-bottom: 24px;
}

.footer .inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-content: space-between;
}

/**
* form
*/

form {
	padding:  0 12px 12px;
	overflow: auto;
}

form fieldset {
	float: left;
	min-width: 50%;
	max-width: 50%;
	padding: 0 12px 24px;
}

form fieldset h2 {
	font-weight: 200;
	font-size: 20px;
	color: #555 ;
	margin-bottom: 16px;
}

form fieldset .form-field {
	display: block;
	padding-bottom: 8px;
	font-size: 0;
}

form fieldset .form-field label:first-child {
	width: 55%;
	height: 32px;
	line-height: 32px;
	display: inline-block;
}

.form-field input[type="file"] {
	display: none;
}

form fieldset .form-field input[type="number"], form fieldset .form-field input[type="text"], form fieldset .form-field input[type="tel"], form fieldset .form-field select, form fieldset .form-field input[type="file"] + label, textarea {
	width: 45%;
	height: 32px;
	line-height: 32px;
	border: 1px solid #ccc;
	border-radius: 1px;
	padding: 0 12px;
	display: inline-block;
	background: #fff;
	cursor: pointer;
	transition: border-color .2s;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=number] {
    -moz-appearance:textfield;
}

textarea {
	width: 100%;
	overflow: auto;
	height: 200px;
}

form fieldset .form-field input[type="file"] + label {
	/*overflow: hidden;*/
	text-overflow: ellipsis;
}

form fieldset .form-field input[type="text"]:hover, form fieldset .form-field input[type="tel"]:hover, form fieldset .form-field select:hover, form fieldset .form-field input[type="file"] + label:hover {
	border-color: #777;
}

form fieldset .form-field input[type="file"] + label:after {
	content: "\f07b";
	font-family: FontAwesome;
	float: right;
	color: #777;
}

form fieldset .form-field input[type="checkbox"] {
	display: none;
}

form fieldset .form-field input[type="checkbox"] + label {
	line-height: 32px;
	padding-left: 30px;
	overflow: auto;
	display: block;
}

form fieldset .form-field input[type="checkbox"] + label:before {
	content: "\f00c";
	font-family: FontAwesome;
	font-size: 24px;
	width: 24px;
	height: 24px;
	line-height: 24px;
	border-radius: 1px;
	border: 1px solid #ccc;
	color: transparent;
	display: inline-block;
	text-align: center;
	margin-right: 8px;
	margin-top: 4px;
	margin-left: -30px;
	background: #fff;
	transition: font-size .3s;
}

form fieldset .form-field input[type="checkbox"]:checked + label:before {
	color: #777;
	font-size: 24px;
}

.form-field input[type="radio"]:first-child {
	margin-left: 0;
}
.radio-group {
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	width: 45%;
}
.form-field input[type="radio"] {
	width: 7%;
}
.radio-group label {
	display: inline-block;
	width: 93%;
	margin-bottom: 13px;
	margin-top: -3px;
}

form fieldset .form-field input[type="submit"], button {
	height: 32px;
	line-height: 32px;
	background: #333;
	color: #fff;
	padding: 0 12px;
	display: inline-block;
	border-radius: 2px;
}

button:disabled, button:disabled:hover, button:disabled span {
	background: #eee !important;
	color: #ccc !important;
	cursor: wait;
}

.info {
	font-size: .85em;
	color: #999;
	display: block;
	overflow: auto;
	padding-bottom: 8px;
}
.info * {
	font-size: 1em;
}

.help {
	width: 16px;
	height: 16px;
	line-height: 16px;
	background: #777;
	border-radius: 8px;
	display: inline-block;
	vertical-align: middle;
}

.help:before {
	content: '\f128';
	font-family: FontAwesome;
	color: #fff;
	font-size: 14px;
	width: 16px;
	height: 16px;
	line-height: 16px;
	text-align: center;
	display: block;
}

.help div {
	z-index: 9000;
	position: absolute;
	left: auto;
	background: #fff;
	padding: 8px;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
	margin-left: 20px;
	display: none;
	max-width:450px; 
	/*overflow:auto;*/
}

.help:hover div {
	display: block;
}

button .fa, button .fas, button .fab, button .fal, button .fad {
	color: #fff;
	margin-left: 5px;
}

button[disabled] {
	background: #ccc;
}

button {
	transition: all .2s;
}

button:hover {
	background: #555 !important;
	cursor: pointer;
}

@keyframes show-error {
	from {
		line-height: 0;
	}
	to {
		line-height: 150%;
	}
}

.errors {
	padding: 0 20px 20px;
	list-style-type: none;
}

.errors li {
	display: block;
	color: #cc0000;
	font-weight: 600;
}

form fieldset .form-field .error {
	line-height: 150%;
	overflow: hidden;
	animation-name: show-error;
	animation-duration: .4s;
	font-size: 12px;
	color: #cc0000;
	font-weight: 600;
}

/**
* ui-datepicker
*/

.ui-datepicker, .ui-autocomplete {
	background: #fff;
	box-shadow: 1px 1px 10px rgba(0,0,0,0.25);
	border: 1px solid #bcbccc;
	display: none;
}

.ui-datepicker a {
	text-decoration: none;
}

.ui-datepicker table {
	border-collapse: collapse;
}

.ui-datepicker td, .ui-datepicker th {
	padding: 5px;
	width: 25px;
	text-align: center;
}

.ui-datepicker * {
	font-size: 12px;	
}

.ui-datepicker .ui-datepicker-title {
	text-align: center;
	padding: 5px;
}

.ui-datepicker .ui-datepicker-calendar thead {
	text-transform: uppercase;
}

/**
* ui-autocomplete
*/

.ui-autocomplete {
	list-style-type: none;
	display: block;
	position: absolute;
	overflow: auto;
	z-index: 50;
	max-height: 400px;
}
.ui-helper-hidden-accessible {
	display: none;
}

ul.ui-autocomplete li {
	display: block;
	padding: 5px 10px;
	color: #555;
}

ul.ui-autocomplete li:hover {
	background: #ccc;
	color: #fff;
}

ul.ui-autocomplete li.ui-state-focus {
	background: #ccc;
	color: #fff;
}

#confirm {
	display: none;
}

#confirm .data {
	display: flex;
	margin-bottom: 20px;
	border-bottom: 1px solid rgba(0, 0, 0, .1);
	padding: 0 24px 12px;
}

#confirm .data ul {
	list-style-type: none;
	flex: 1;
}

#confirm ul li {
	display: block;
	font-size: 0;
	padding-bottom: 12px;
}

#confirm ul li span {
	display: inline-block;
	width: 55%;
}

#confirm ul li span.name {
	color: #777;
	width: 45%;
}

#confirm ul li span.value {
	font-weight: 600;
	overflow: hidden;
	text-overflow: ellipsis;
}

.hide {
	display: none !important;
}


.header .inner {
	display: flex;
	flex-wrap: wrap;
}
.header .inner nav {
	flex-grow: 1;
	
}
#lang-selector {
	float: right;
	margin-right: 0px;
}
#lang-selector > a {
	padding-left: 15px;
	padding-right: 15px;
}
#lang-selector > a:after {
	font-family: "Font Awesome\ 5 Brands", "Font Awesome\ 5 Solid", "Font Awesome\ 5 Pro","Font Awesome\ 5 Free", "FontAwesome";
	font-weight: 900;
	content: "\f078";
	padding-left: 5px;
}
#lang-selector:hover > a:after {
	content: "\f077";
}

#lang-selector ul {
	display: none;
	position: absolute;
	background: rgba(255, 255, 255, 0.95);
	box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	min-width: 30px;
	padding: 12px 16px;
	z-index: 1;
	width: 249px;
}
#lang-selector:hover ul {
	display: block;
}
#lang-selector:hover ul li {
	width: 100%;
}
#lang-selector:hover ul li a {
	height: 30px;
	line-height: 30px;
}
#lang-selector ul li a:before {
	font-family: "Font Awesome\ 5 Brands", "Font Awesome\ 5 Solid", "Font Awesome\ 5 Pro","Font Awesome\ 5 Free", "FontAwesome";
	font-weight: 900;
	content: "\f0da";
	padding-right: 5px;
}

@media all and (max-width: 800px) {
	body {
		padding: 0;
	}
	
	form {
		display: block;
	}
	
	form fieldset {
        width: 100%;
		width: 100%;
		flex: none;
		min-width: 100%;
		max-width: 100%;
	}
	
	form fieldset .form-field label:first-child {
		width: 100%;
	}
	
	form fieldset .form-field input[type="text"], 
	form fieldset .form-field input[type="tel"], 
	form fieldset .form-field select, 
	form fieldset .form-field .radio-group, 
	form fieldset .form-field input[type="file"] + label {
		width: 100%;
	}
	.form-field input:first-child {
		margin-left: 0px;
	}
	input[type="checkbox"]+label {
		width: 90%;
	}
	
	#confirm ul li span, #confirm ul li span.name {
		width: 100%;
	}
	
	#confirm .data {
		display: block;
	}
	
	#confirm .data ul {
		flex: none;
	}
}

@media all and (max-width: 550px) {
	nav, nav ul, nav ul li, nav ul li a {
		width: 100%;
	}
	
	.header nav ul li a {
		height: 30px;
		line-height: 30px;
	}
	
	
	#lang-selector {
		float: none;
	}
	#lang-selector > a {
		padding-left: 0px;
		padding-right: 0px;
	}
	
	#lang-selector ul {
		display: block;
		position: relative;
		padding: 0;
		padding-left: 20px;
		box-shadow: none;
		background: none;
	}
	
	#lang-selector > a:after {
		content: "";
	}
	#lang-selector:hover > a:after {
		content: "";
	}
}


/* Status page */
#progress > div {
	padding: 60px 0;
	text-align: center;
}

#progress-status {
	width: 100%;
	position: relative;

	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

#progress-status:before,
#progress-status:after {
	position: absolute;
	content: '';
	border-top: 1px solid #eee;
	height: 1px;
	width: 80%;
}

#progress-status:before {
	top: 0;
}
#progress-status:after {
	bottom: 0;
}

#progress-status .progress-status-block {
	width: 19%;
	height: 100px;
	position: relative;
}

#progress-status .progress-status-block .block-icon {
	font-size: 42px !important;
	color: #ccc;
	height: 50%;

	display: flex;
	justify-content: center;
}

#progress-status .progress-status-block .block-text {
	text-align: center;
	vertical-align: middle;
	color: #ccc;
	height: 50%;
	padding: 10px 10px 0;

	display: flex;
	justify-content: center;
}

#progress-status .progress-status-block:not(:first-child):before, 
#progress-status .progress-status-block:not(:last-child):after {
	position: absolute;
	content: '';
	background-color: #ccc;
	height: 1px;
	top: 2rem;
	width: calc(50% - 3.5rem);
}

#progress-status .progress-status-block:before {
	left: 0;
}

#progress-status .progress-status-block:after {
	right: 0;
}

#progress-status .progress-status-block .block-icon .fa,
#progress-status .progress-status-block .block-icon .fas {
	color: #ccc;
	font-size: 42px !important;
}

/* active */
#progress-status .progress-status-block:not(:first-child).active:before, 
#progress-status .progress-status-block:not(:last-child).active:after {
	background-color: #333;
}

#progress-status .progress-status-block.active .block-text, 
#progress-status .progress-status-block.active .block-icon .fa, 
#progress-status .progress-status-block.active .block-icon .fas {
	color: #333;
}

#progress-details #confirm_zipcode fieldset {
	width: 100%;
	max-width: 100%;
}


#progress-details ul {
	list-style: none;
}

.status_1, .status_5, .status_6 {
	color: #779944 !important;
}

#progress-details .error_code, .status_2, .status_3 {
	color: #cc0000 !important;
}

@media all and (max-width: 800px) {
	#progress-status {
		flex-direction: column;
	}

	#progress-status .progress-status-block {
		width: 100%;
		height: 200px;
	}
	
	#progress-status .progress-status-block:first-child {
		margin-top: -50px;
	}
	#progress-status .progress-status-block:last-child {
		margin-bottom: -50px;
	}

	#progress-status .progress-status-block .block-icon {
		align-items: flex-end;
	}

	#progress-status .progress-status-block:not(:first-child):before, 
	#progress-status .progress-status-block:not(:last-child):after {
		width: 1px;
		height: calc(50% - 4rem);
		left: 50%;
	}

	#progress-status .progress-status-block:before {
		top: 0 !important;
		right: auto !important;
		bottom: auto !important;
	}

	#progress-status .progress-status-block:after {
		top: auto !important;
		right: auto !important;
		bottom: 0 !important;
	}
}
/* Status page */


/* SMS Verification */
#verification_fields {
	
}
#verification_fields .btn_steps_container {
	display: none;
}
#verification_fields .btn_verification_steps_container {
	margin-top: 40px;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-around;
}
#verification_fields .btn_verification_steps_container .btn_verification_steps {
	margin-bottom: 20px;
}
#verification_fields .form-field-inline {
	display: inline-flex;
	width: 45%;
}
#verification_fields #verification_prefix_country {
	width: 85px;
	padding: 0px;
}
#verification_fields #verification_phone_no {
	width: 30%;
	flex-grow: 100;
	line-height: normal;
}

@media all and (max-width: 800px) {
	#verification_fields .form-field-inline {
		width: 100%;
	}
	#verification_fields #verification_prefix_country {
		width: 80px;
	}
	#verification_fields #verification_phone_no {
		padding: 0 6px;
	}
}
/* SMS Verification */


