@font-face {
	font-family: 'Roboto';
	src: url('/fonts/Roboto/Roboto-Light-webfont.eot');
	src: url('/fonts/Roboto/Roboto-Light-webfont.eot?#iefix') format('embedded-opentype'),
	url('/fonts/Roboto/Roboto-Light-webfont.woff') format('woff'),
	url('/fonts/Roboto/Roboto-Light-webfont.ttf') format('truetype'),
	url('/fonts/Roboto/Roboto-Light-webfont.svg#RobotoBold') format('svg');
	font-weight: 300;
	font-style: normal;
}
@font-face {
	font-family: 'Roboto';
	src: url('/fonts/Roboto/Roboto-Regular-webfont.eot');
	src: url('/fonts/Roboto/Roboto-Regular-webfont.eot?#iefix') format('embedded-opentype'),
	url('/fonts/Roboto/Roboto-Regular-webfont.woff') format('woff'),
	url('/fonts/Roboto/Roboto-Regular-webfont.ttf') format('truetype'),
	url('/fonts/Roboto/Roboto-Regular-webfont.svg#RobotoRegular') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'Roboto';
	src: url('/fonts/Roboto/Roboto-Bold-webfont.eot');
	src: url('/fonts/Roboto/Roboto-Bold-webfont.eot?#iefix') format('embedded-opentype'),
	url('/fonts/Roboto/Roboto-Bold-webfont.woff') format('woff'),
	url('/fonts/Roboto/Roboto-Bold-webfont.ttf') format('truetype'),
	url('/fonts/Roboto/Roboto-Bold-webfont.svg#RobotoBold') format('svg');
	font-weight: bold;
	font-style: normal;
}
* {
	font-family: 'Roboto','Arial','sans-serif';
	margin: 0;
	padding: 0;
}
body {
	background-color: transparent;
}
input[type=text]::-ms-clear {
	display: none;
}
#kurzRegContent {
	width: 422px;
	font-size: 22px;
	color: #fff;
	font-weight: lighter;
}
.mailBasicNormalText {
	font-weight: normal;
}
#kurzRegContent h1 {
	margin-bottom: 48px;
	font-size: 48px;
	font-weight: lighter;
	color: #fff;
}
#kurzRegContent h2 {
	margin-bottom: 9px;
	font-size: 36px;
	color: #333333;
	font-weight: normal;
}
#kurzRegSecondStep h1 {
	font-size: 48px;
}
#kurzRegFirstStep .registrationElements {
	line-height: 54px;
	height: 54px;
}

#kurzRegFirstStep ul, #kurzRegFirstStep li{
	list-style: none;
	padding: 0;
	margin:0;
}
#kurzRegFirstStep li {
	font-size: 24px;
	font-weight: normal;
	padding-left: 46px;
	margin-bottom: 30px;
	position: relative;
	background: url(/img/reg/frn/spriteIconsKurzReg.png) 0 -318px no-repeat;
}
.inputBasic {
	border: 0 none;
	color: #ffffff;
	cursor: pointer;
	display: inline-block;
	float: right;
	font-size: 20px;
	font-weight: bold;
	outline: 0 none;
	padding: 10px 20px;
	text-align: center;
	text-transform: uppercase;
	vertical-align: top;
	background: #4b4b4b;
	margin-top: 35px;
}
.inputBasic:hover {
	background-color:#6b6b6b
}
.registrationElements {
	font-family: 'Roboto','Arial','sans-serif';
	font-size: 20px;
	color: #333;
	line-height: 49px;
	height: 49px;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	border: 0;
	outline: 0 none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 0;
	-webkit-border-radius:0;
}
#registrationFirstStepFormular {
	margin-top: 60px;
}
#registrationFirstStepFormularLoading {
	font-size: 14px;
	font-weight: normal;
	margin-top: 15px;
}
#registrationSecondStepFormular {
	overflow: hidden;
}

.kurzRegSpinner {
	margin-top: 20px;
	background-color: #666;
	padding: 0px 57px 0 20px;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	text-transform: uppercase;
	color: #fff;
	vertical-align: top;
	float: right;
	line-height: 54px;
	height: 54px;
	background-image: url(/img/reg/frn/ladeanimation2.gif);
	background-repeat: no-repeat;
	background-position-x: 312px;
	background-position-y: 14px;
	display: none;
}

.kurzRegButton {
	margin-top: 20px;
	background-color: #32a5ff;
	padding: 0px 20px;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	text-transform: uppercase;
	color: #fff;
	cursor: pointer;
	vertical-align: top;
	float: right;
	line-height: 54px;
	min-height: 54px;
}
.kurzRegButton:hover,
.inputLos:hover,
.freenetButton {
	background-color: #58b6ff;
}
#buttonReg, #buttonSpinner {
	margin-top: 0px;
}
.deactivateButton,
.deactivateButton:hover {
	cursor: default;
	background-color: #6b6b6b;
	color: #ccc;
}

.spriteIcons {
	background: url(/img/reg/frn/spriteIconsKurzReg.png) no-repeat center center;
}

select::-ms-expand {
	display: none;
}
.errorTexte {
	font-size: 14px;
	font-weight: normal;
	color: #e20000;
	margin-bottom: 10px;
	height: 20px;
}
.inputLocalpart {
	width: 347px;
	border: none;
	color: #333;
	padding: 0px 12px;
	font-size: 20px;
	background-position: -20px -20px;
}
.whiteBox .inputLocalpart,
.successBox .inputLocalpart {
	background-position: -20px -974px;
}
.errorBoxText .inputLocalpart {
	background-position: -20px -84px;
}
.inputLos {
	background-color: #32a5ff;
	width: 75px;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	text-transform: uppercase;
	color: #fff;
	margin-left: -6px;
	cursor: pointer;
	vertical-align: top;
	display: inline-block;
}
.inputLocalpartFull {
	width: 255px;
	background-position: -20px -148px;
	padding: 0 0 0 12px;
}
.whiteBox .inputLocalpartFull,
.successBox .inputLocalpartFull {
	background-position: -20px -1574px;
}
.errorBoxText .inputLocalpartFull {
	background-position: -20px -207px;
}
.errorBox .inputLocalpartFull {
	background-position: -20px -1633px;
}
#loadingEmail {
	display: none;
	background: url(/img/reg/frn/ladeanimation.gif) no-repeat;
	height: 24px;
	width: 24px;
	position: absolute;
	z-index: 2;
	margin-top: -38px;
	margin-left: 302px;
}
.inputLocalpartFullFN {
	width: 306px;
	background-position: -20px -148px;
	padding: 0 0 0 12px;
}
.whiteBox .inputLocalpartFullFN,
.successBox .inputLocalpartFullFN {
	background-position: -20px -1692px;
}
.errorBoxText .inputLocalpartFullFN {
	background-position: -20px -1515px;
}
.errorBox .inputLocalpartFullFN {
	background-position: -20px -1751px;
}

#chooseLocalpart {
	overflow: hidden;
}
#localpartAlt {
	position: absolute;
	width: 420px;
	z-index: 2;
	border: 1px solid #ccc;
	border-top: none;
}
.alternative {
	border-top: 1px solid #ccc;
	height: 39px;
	line-height: 39px;
	font-size: 20px;
	color: #333;
	background-color: #fff;
	font-weight: normal;
	padding: 0px 12px;
}
.alternative:hover {
	background-color: #e1e1e1;
}
.alternative:hover #haken {
	display: inline-block;
}
#haken {
	background-position: 0px 8px;
	width: 28px;
	height: 35px;
	display: none;
}
#hakenLocalpart {
	background-position: 0px 8px;
	width: 28px;
	height: 35px;
	position: absolute;
	margin-top: -42px;
	display: none;
}
#hiddenLocalpart {
	display: none;
}
#personalData,
#adressData {
	margin-top: 10px;
	overflow: hidden;
}
#personalData .inner-left,
#passwordFields .inner-left,
#adressData .inner-left {
	float: left;
}
#personalData .inner-right,
#passwordFields .inner-right,
#adressData .inner-right {
	float: right;
}
.chooseGender {
	background-position: 398px -118px;
	margin-top: 10px;
	width: 422px;
	padding: 0px 12px;
	background-color: #fff;
}
.errorBox .chooseGender,
.errorBoxText .chooseGender {
	border: 1px solid #e20000;
	background-color: #f9d1d1;
}
.inputFirstname,
.inputLastname {
	width: 206px;
	padding: 0px 12px;
}
.inputFirstname {
	background-position: -20px -266px;
}
.inputLastname {
	background-position: -20px -384px;
	margin-left: 10px;
}
.inputZip {
	width: 110px;
	padding: 0px 12px;
	background-position: -20px -1810px;
}
.errorBoxText .inputZip {
	background-position: -20px -1869px;
}
.errorBox .inputZip {
	background-position: -20px -2105px;
}
.successBox .inputZip,
.whiteBox .inputZip {
	background-position: -20px -2046px;
}

.inputTown {
	width: 303px;
	padding: 0px 12px;
	background-position: -20px -1928px;
}
.errorBoxText .inputTown {
	background-position: -20px -1987px;
}
.errorBox .inputTown {
	background-position: -20px -2223px;
}
.successBox .inputTown,
.whiteBox .inputTown {
	background-position: -20px -2164px;
}

.successBox .inputPassword1,
.whiteBox .inputPassword1,
.successBox .inputPassword2,
.whiteBox .inputPassword2,
.whiteBox .inputFirstname,
.successBox .inputFirstname,
.whiteBox .inputLastname,
.successBox .inputLastname {
	background-position: -20px -1338px;
}
.errorBoxText .inputFirstname {
	background-position: -20px -325px;
}
.errorBox .inputPassword1,
.errorBox .inputPassword2,
.errorBox .inputFirstname,
.errorBox .inputLastname {
	background-position: -20px -1279px;
}
.errorBoxText .inputLastname {
	background-position: -20px -443px;
}
#birthday {
	margin-top: 10px;
	line-height: 49px;
	font-size: 20px;
	font-weight: normal;
	overflow: hidden;
}
#birthday div {
	float: left;
}
.birthday_day {
	background-color: #fff;
	background-position: 68px -118px;
	width: 88px;
}
.birthday_year {
	background-color: #fff;
	background-position: 65px -118px;
	width: 88px;
}
.birthday_month {
	background-color: #fff;
	background-position: 87px -118px;
	width: 108px;
}
.bdayElmt {
	margin-left: 10px;
	padding: 0px 12px;
}
.errorBox .bdayElmt {
	border: 1px solid #e20000;
	background-color: #f9d1d1;
}
#passwordFields {
	margin-top: 10px;
	overflow: hidden;
}
.inputPassword1 {
	background-position: -20px -2282px;
}
.inputPassword2 {
	background-position: -20px -2400px;
}
.inputPassword1,
.inputPassword2 {
	width: 206px;
	padding: 0px 12px;
}
.successBox .inputEmail,
.whiteBox .inputEmail {
	background-position: -20px -1102px;
}
.errorBoxText .inputPassword1 {
	background-position: -20px -2341px;
}
.errorBox .inputEmail {
	background-position: -20px -1161px;
}
.errorBoxText .inputPassword2 {
	background-position: -20px -2459px;
}

#contact {
	margin-top: 10px;
}
.inputEmail {
	background-position: -20px -738px;
	width: 100%;
	padding: 0px 12px;
}
.errorBoxText .inputEmail {
	background-position: -20px -797px;
}
#helpInputEmail {
	background-position: 0px -177px;
	width: 16px;
	height: 25px;
	position: absolute;
	z-index: 2;
	margin-top: -38px;
	margin-left: 396px;
	cursor: pointer;
}

#helpTextEmail {
	display: none;
	position: absolute;
	width: 400px;
	font-size: 15px;
	color: #000;
	font-weight: normal;
	background-color: #fff;
	padding: 15px 11px;
	border-top: 1px solid #ccc;
}
#helpInputEmail:hover+#helpTextEmail {
	display: block;
}
/* 3. Step */
#kurzRegThirdStep h1 {
	font-size: 40px;
	margin-top: 0;
}
#kurzRegThirdStep p {
	font-size: 14px;
	color: #fff;
	line-height: 19px;
	margin-bottom: 20px;
}
#kurzRegThirdStep a:link,
#kurzRegThirdStep a:visited {
	color: #fff;
	text-decoration: underline;
}
#captcha {
	width: 180px;
}
#security {
	margin-bottom: 15px;
}
.securityCode {
	background-position: -20px -856px;
	width: 227px;
	margin-left: 15px;
	padding: 0px 12px;
}
.errorBoxText .securityCode {
	background-position: -20px -915px;
}
.successBox .securityCode,
.whiteBox  .securityCode {
	background-position: -20px -974px;
}
#reloadCode {
	background-position: 14px -221px;
	width: 49px;
	height: 49px;
	position: absolute;
	z-index: 2;
	margin-top: -49px;
	margin-left: 373px;
	cursor: pointer;
}
#boxAGB input[type=checkbox] {
	display: none;
}
#checkboxStatus {
	height: 15px;
	width: 15px;
	background-position: 0px -49px;
	display: inline-block;
}
#checkboxStatus.activeCheckbox {
	background-position: 0px -94px;
}
#boxAGB.errorBox #checkboxStatus {
	background-position: 0px -291px;
}

#kurzRegError,
#kurzRegThx {
	padding: 0px 30px;
	margin-top: 86px;
	color: #fff;
	font-size: 22px;
	font-weight: lighter;
	overflow: hidden;
}
.errorPageHead {
	font-size: 48px;
	margin-bottom: 30px;
	color: #e20000;
}
.thxPageHead {
	font-size: 48px;
	margin-bottom: 30px;
	color: #fff;
}
.freenetButton {
	margin-top: 40px;
	font-size: 20px;
	background-color: #32a5ff;
	padding: 0px 20px;
	text-align: center;
	font-weight: bold;
	text-transform: uppercase;
	color: #fff;
	cursor: pointer;
	vertical-align: top;
	float: right;
	line-height: 54px;
	height: 54px;
	text-decoration: none;
}

/* Strength */
.fontFamilySansSerif {
	font-family: Roboto, Arial, sans-serif;
}
#strengthInfo {
	position: absolute;
	z-index: 3;
	border-top: 1px solid #ccc;
	cursor: pointer;
}
.wholeScreen {
	background-color: #cecfd2;
}
.innerBox {
	box-shadow: 0 0 20px rgba(0,0,0,.05);
	background-color: #fff;
	width: 422px;
	padding-bottom: 10px;
}
.strengthTitleRow {
	padding-left: 10px;
	font-size: 18px;
	height: 48px;
	color: #333;
}
.title {
	color: #333;
	padding-top: 16px;
}
.separator {
	background-color:#cecfd2;
	height: 2px;
}
.strengthInfoRow {
	font-size: 18px;
	padding-top: 8px;
	color: #333;
	overflow: hidden;
}
.strengthInfo {
	padding-left: 10px;
}
.floatLeft {
	float: left;
}
.clearLeft {
	clear: left;
}
.strengthDesignation {
	padding-left: 4px;
	padding-right: 12px;
	padding-top: 16px;
}
.strengthDesignationWeak {
	color: #b20000;
}
.strengthDesignationMiddle {
	color: #f1ae00;
}
.strengthDesignationStrong {
	color: #84bc34;
}
.strengthImageWeak {
	background-position: -520px -0px;
}
.strengthImageMiddle {
	background-position: -470px -0px;
}
.strengthImageStrong {
	background-position: -420px -0px;
}
.strengthImage {
	background-image: url(/img/reg/frn/spriteGrafikWeb.png);
	background-repeat:no-repeat;
	height: 35px;
	width: 40px;
	position: relative;
	top: 12px;
}
.checkMark {
	background-image: url(/img/reg/frn/spriteGrafikWeb.png);
	background-repeat:no-repeat;
	height: 18px;
	width: 30px;
	position: relative;
	top:  0px;
	left: 2px;
}
.checkMarkEnabled {
	background-position: -565px 5px;
}
.checkMarkDisabled {
	background-position: -565px -18px;
}
.opaque {
	opacity: .3;
}
.tipRow {
	padding-left: 20px;
	padding-top: 14px;
	padding-bottom: 20px
}
.passwordTip {
	color: #333;
	font-size: 16px;
}

#domainpart {
	background-position: 0 -695px;
	display: inline-block;
	height: 49px;
	margin-left: -4px;
	vertical-align: bottom;
	width: 171px;
	z-index: 3;
}
#domainpart.fullFN {
	background-position: 0 -819px;
	width: 120px;
}
.regspriteicons {
	background: rgba(0, 0, 0, 0) url("/img/reg/frn/spriteicons.png") no-repeat scroll 0 0;
}
@media only screen and (min-width:421px) {
	.sprite {
		background-image: url(/img/reg/frn/spriteKurzReg.png);
		background-repeat: no-repeat;
	}
}
@media only screen and (max-width:421px) {

	.sprite {
		background-image: url(/img/reg/frn/spritemailreg_responsive.png);
		background-repeat: no-repeat;
	}

	.inputFirstname {
		background-position: -28px -404px;
	}

	.inputLastname {
		background-position: -28px -532px;
	}

	.inputTown {
		background-position: -28px -789px;
	}

	.inputZip {
		background-position: -28px -661px;
	}

	.inputPassword1 {
		background-position: -28px -1172px;
	}

	.inputPassword2 {
		background-position: -28px -1300px;
	}

	.inputEmail {
		background-position: -28px -1430px;
	}

	.inputLocalpartFull {
		background-position: -28px -23px;
	}

	.errorBoxText input {
		background-color: #f9d1d1;
		border: 1px solid #ff0000;
	}
	
	.errorBoxText .inputFirstname {
		background-position: -28px -468px;
	}

	.errorBoxText .inputLastname {
		background-position: -28px -596px;
	}

	.errorBoxText .inputTown {
		background-position: -28px -853px;
	}

	.errorBoxText .inputZip {
		background-position: -28px -725px;
	}

	.errorBoxText .inputPassword1 {
		background-position: -28px -1236px;
	}

	.errorBoxText .inputPassword2 {
		background-position: -28px -1364px;
	}

	.errorBoxText .inputEmail {
		background-position: -28px -1494px;
	}

	.errorBoxText  .inputLocalpartFull {
		background-position: -28px -87px;
	}

	.successBox .inputPassword1,
	.whiteBox .inputPassword1,
	.successBox .inputPassword2,
	.whiteBox .inputPassword2,
	.whiteBox .inputFirstname,
	.successBox .inputFirstname,
	.whiteBox .inputLastname,
	.successBox .inputLastname,
	.whiteBox .inputLocalpartFull,
	.successBox .inputLocalpartFull,
	.whiteBox .inputLocalpartFullFN,
	.successBox .inputLocalpartFullFN,
	.whiteBox .inputZip,
	.successBox .inputZip,
	.whiteBox .inputTown,
	.successBox .inputTown,
	.whiteBox .inputEmail,
	.successBox .inputEmail	{
		background: white;
	}

	.errorBox .inputPassword1,
	.errorBox .inputPassword2,
	.errorBox .inputFirstname,
	.errorBox .inputLastname,
	.errorBox .inputTown,
	.errorBox .inputEmail,
	.errorBox .inputZip,
	.errorBox .inputLocalpartFull,
	.errorBox .inputLocalpartFullFN {
		background-position: -28px -3266px;
	}

	#kurzRegContent {
		width: 100%;
	}
	.chooseGender,
	.inputFirstname,
	.inputLastname,
	.inputZip,
	.inputTown,
	.bdayElmt,
	.inputPassword1,
	.inputPassword2,
	#localpartAlt{
		width: 100%;
		background-color: white;
	}

	.inputLastname,
	.inputTown,
	.bdayElmt,
	.inputPassword2 {
		margin-left: 0;
		margin-top: 10px;
	}

	#personalData .inner-left,
	#adressData .inner-left,
	#birthday .inner-right,
	#birthday .inner-left,
	#birthday div,
	#personalData .inner-right,
	#adressData .inner-right,
	#passwordFields .inner-left,
	#passwordFields .inner-right {
		float: none;
	}

    #contact {
	    position: relative;
    }

	#helpInputEmail {
		margin: 0;
		right: 15px;
		bottom: 11px;
	}

    .kurzRegButton {
	    margin-bottom: 50px;
    }

	#helpInputEmail:hover+#helpTextEmail {
		display: none;
	}

    .mobileInfoBox {
	    margin-bottom: 5px;
	    color: #333333;
    }
    .mobileInfoBox .innerBox {
	    padding: 10px;
	    font-size: 18px;
	    width: auto;
    }

	#domainpart {
		background-position: -16px -693px;
		position: relative;
		width: 120px;
	}

	.inputLocalpartFull,
	.inputLocalpartFullFN{
		box-sizing: border-box;
		margin-right: -120px;
		padding-left: 12px;
		padding-right: 185px;
		width: 100%;
	}

    .inputLocalpartFullFN {
	    padding-right: 120px;
    }
}