/* HTML, BODY */
html,
body
{
	width: 100%;
	margin: 0;
	padding: 0;
	font-family: 'Open Sans', Calibri, sans-serif;
	overflow-x: hidden;
}

body
{
	width: 100%;
	padding-top: 60px;
	color: #333;
	background: #fff;
}


/* COMMON ELEMENTS */
a
{
	color: #2d81d7;
	-moz-transition: all 0.2s linear;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

a:hover
{
	color: #000;
}

a i.fa.fa-external-link
{
	font-size: 75%;
	vertical-align: 3px;
}

h2
{
	padding: 30px;
	font-size: 150%;
	font-weight: normal;
	text-align: center;
	line-height: 1.2;
}

h3
{
	padding: 30px 0 15px 0;
	font-size: 110%;
	font-weight: bold;
	text-align: left;
	line-height: 1.2;
}

p
{
	padding: 5px 0;
	font-size: 90%;
	line-height: 1.5;
	text-align: center;
}

body.is-wide main p
{
	text-align: left;
}

li
{
	padding: 5px 0;
	line-height: 1.5;
}

li li
{
	font-size: 100%;
}

ul li
{
	list-style: square;
}

b
{
	font-weight: bold;
}

i
{
	font-style: italic;
}


/* HEADER */
header
{
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 60px;
	background: #333;
	z-index: 500;
}

header h1
{
	position: absolute;
	left: 15px;
	top: 15px;
	height: 30px;
	line-height: 28px;
	bottom: 0;
	margin: 0 auto;
	font-size: 120%;
	font-weight: normal;
	color: #fff;
}

header h1 b
{
	position: absolute;
	left: 0;
	top: 0;
	width: 30px;
	height: 30px;
	background-position: left center;
	background-image: url('/assets/img/fakturovac-150x150-precomposed.png');
	background-repeat: no-repeat;
	background-size: contain;
}

header h1 span
{
	position: absolute;
	left: 28px;
	top: 0;
	height: 30px;
}

header h1 span i
{
	display: none;
}

header p
{
	display: none;
}


/* MAIN */
main
{
	width: 80%;
	max-width: 320px;
	margin: 0 auto;
	padding: 15px;
}

body.is-wide main
{
	max-width: 760px;
}

body.is-mobile.is-wide main
{
	width: calc(100% - 30px);
	max-width: 760px;
}


/* FOOTER */
footer
{
	position: relative;
	text-align: center;
	padding: 25px 0;
	border-top: 1px #ddd solid;
}

footer p
{
	margin: 0;
	padding: 0;
	color: #999;
	font-size: 0.8em;
}

footer a
{
	color: #999;
}

footer a:hover
{
	color: #000;
}

footer ul
{
	margin: 0;
	padding: 15px 0 0 0;
}

footer ul li
{
	display: inline;
	list-style: none;
	margin: 0 15px 0 0;
	padding: 5px 0;
	font-size: 0.8em;
}

footer ul li:last-of-type
{
	margin-right: 0;
}

footer ul li i.fa
{
	opacity: 0.5;
	margin-right: 2px;
}

body.is-mobile footer ul li
{
	display: block;
	margin-right: 0;
	padding-bottom: 5px;
}


/* FORMS */
input,
textarea,
button
{
	-webkit-appearance: none;
	border-radius: 0;
}

.form-row
{
	padding-bottom: 25px;
}

.form-spacer
{
	height: 15px;
}

input[type='text'],
input[type='email'],
input[type='password']
{
	width: calc(100% - 30px);
	height: 25px;
	line-height: 25px;
	font-size: 90%;
	font-family: 'Open Sans', Calibri, sans-serif;
	margin: 0;
	padding: 5px 10px;
	color: #333;
	background: none;
	border: #eee solid;
	border-width: 0 0 1px 0;
	transition: all 0.2s linear;
}

input[type='text']:hover,
input[type='email']:hover,
input[type='password']:hover
{
	border-color: #00a452;
}

input[type='text']:focus,
input[type='email']:focus,
input[type='password']:focus
{
	border-color: #333;
}

label.input-label
{
	display: block;
	padding-bottom: 5px;
	font-size: 70%;
	font-weight: bold;
	text-transform: uppercase;
	color: #444;
}

button[type='submit']
{
	display: block;
	padding: 10px;
	width: 100%;
	font-weight: bold;
	font-size: 95%;
	text-transform: uppercase;
	color: #fff;
	background-color: #00a452;
	border-color: #008040;
	border-width: 1px 1px 3px 1px;
	transition: all 0.2s linear;
}

button[type='submit']:hover
{
	color: #222;
}


/* CHECKBOX / RADIO */
input[type='checkbox'],
input[type='radio']
{
	opacity: 0;
	position: absolute;
	z-index: -5;
}

input[type='checkbox'],
input[type='checkbox'] + label,
input[type='radio'],
input[type='radio'] + label
{
	display: inline-block;
	vertical-align: middle;
	margin: 0;
	cursor: pointer;
}

input[type='checkbox'] + label,
input[type='radio'] + label
{
	position: relative;
	line-height: 32px;
	padding-left: 28px;
	font-size: 80%;
	color: #999;
}

input[type='checkbox'] + label:before,
input[type='radio'] + label:before
{
	content: '';
	position: absolute;
	left: 0;
	top: 6px;
	background: transparent;
	border: 1px solid #ccc;
	width: 18px;
	height: 18px;
	text-align: center;
	-webkit-transition: background-color 0.2s linear, border-color 0.2s linear;
	-moz-transition: background-color 0.2s linear, border-color 0.2s linear;
	-o-transition: background-color 0.2s linear, border-color 0.2s linear;
	-ms-transition: background-color 0.2s linear, border-color 0.2s linear;
	transition: background-color 0.2s linear, border-color 0.2s linear;
}

input[type='checkbox'] + label:hover:before,
input[type='radio'] + label:hover:before
{
	border-color: #008040;
}

input[type='checkbox']:checked + label,
input[type='radio']:checked + label
{
	color: #333;
}

input[type='checkbox']:checked + label:before
{
	background: #008040;
	box-shadow: inset 0px 0px 0px 3px #fff;
}

input[type='radio'] + label:before
{
	border-radius: 50%;
}

input[type='radio']:checked + label:before
{
	background: #008040;
	box-shadow: inset 0px 0px 0px 4px #fff;
}

input[type='checkbox']:focus + label,
input[type='radio']:focus + label
{
	outline: 0;
}


/* TERMS AND CONDITIONS */
.tac h3
{
	margin-top: 15px;
	padding-top: 25px;
	padding-bottom: 10px;
	padding: 20px 10px 10px 10px;
	font-size: 120%;
	font-weight: bold;
	line-height: 1.2;
	border-top: 1px solid #e8e8e8;
}

.tac ol
{
	padding-left: 30px;
}

.tac ol li
{
	list-style-type: decimal;
	font-size: 90%;
}

.tac ul li
{
	list-style-type: square;
	font-size: 90%;
}

.tac li li
{
	font-size: 100%;
}

.tac li ul
{
	padding-left: 15px;
}

/* PASSWORD STRENGTH NOTIFIER */
p.password-strength-notifier
{
	background-color: transparent;
}

p.password-strength-notifier.strength-weak
{
	color: #a00;
	background-color: rgba(225, 0, 0, 0.1);
}

p.password-strength-notifier.strength-normal
{
	color: #472f00;
	background-color: rgba(254, 169, 0, 0.1);
}

p.password-strength-notifier.strength-strong
{
	color: #00552b;
	background-color: rgba(0, 164, 82, 0.1);
}

/* BIG ERROR */
.big-error h3
{
	text-align: center;
	color: #ff4945;
	padding-top: 0;
	margin-top: 0;
}

.big-error p
{
	text-align: center !important;
}

.big-error p.error
{
	color: #ff4945;
}

/* BIG SUCCESS */
.big-success h3
{
	text-align: center;
	color: #01a254;
	padding-top: 0;
	margin-top: 0;
}

.big-success p
{
	text-align: center !important;
}

.big-success p.success
{
	color: #01a254;
}