@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700;1,800&display=swap');

@font-face {
  font-family: 'FontAwesome';
  src: url('../fonts/fontawesome-webfont.eot?v=4.5.0');
  src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.5.0') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff2?v=4.5.0') format('woff2'), url('../fonts/fontawesome-webfont.woff?v=4.5.0') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.5.0') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.5.0#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}


/*** ALLGEMEIN ****************************************************************************
*******************************************************************************************/

* {
    -webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

body, html {
    height: 100%;
    width: 100%;
}

body {
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-style: normal;
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
	background: #f8f8fa;
	color: #000;
	overflow-x:  hidden;
}

h1, h2, h3, h4, h5 {
	margin: 0;
	padding: 0;
	display: block;
	font-weight: 400;
	line-height: 1;
}

h1,
#site-1 .tx-felogin-pi1 h3{
	font-size: 30px;
	font-size: 1.875rem;
	margin: 0 0 30px 0;
	margin: 0 0 1.875rem 0;
	padding: 0;
	color: #0061af;
	text-transform: uppercase;
}

h2 {
	font-size: 24px;
	font-size: 1.5rem;
	margin: 0 0 20px 0;
	margin: 0 0 1.25rem 0;
	font-weight: 500;
}

h3 {
	font-size: 20px;
	font-size: 1.25rem;
	margin: 0 0 10px 0;
	margin: 0 0 0.625rem 0;
	font-weight: 500;
}

h4 {
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	margin: 0 0 10px 0;
	margin: 0 0 0.625rem 0;
}

h4.validation {
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 500;
	margin: 5px 0 0 0;
	margin: 0.3125rem 0 0 0;
}

h4.validation.text-danger:before{
	content:"\f00d";
	color: #e41d1d;
	font-family: FontAwesome;
	font-style: normal;
	font-weight: normal;
	text-decoration: inherit;
	margin-right: 5px;
	margin-right: 0.3125rem;
}

h4.validation.text-danger:after{
	content:"Validazione fallita!";
	color: #e41d1d;
}

h4.validation.text-success:before{
	content:"\f00c";
	color: #60b72e;
	font-family: FontAwesome;
	font-style: normal;
	font-weight: normal;
	text-decoration: inherit;
	margin-right: 5px;
	margin-right: 0.3125rem;
}

h4.validation.text-success:after{
	content:"Carta valida!";
	color: #60b72e;
}

h5 {
	font-size: 16px;
	font-size: 1rem;
	margin: 0 0 10px 0;
	margin: 0 0 0.625rem 0;
	font-weight: 500;
}

p {
	padding: 0;
	margin: 0;
}

a {
	color: #0061af;
}

a:hover {
	color: #0061af;
	text-decoration: underline;
}

small {
	font-size: 12px;
	font-size: 0.75rem;
	color: #0061af;
}

.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

.container {
	width: 100%;
	max-width: 1280px;
	max-width: 80rem;
	margin: 0 auto;
	padding: 0 20px;
	padding: 0 1.25rem;
}

main {
	padding: 60px 0 0 0;
	padding: 3.75rem 0 0 0;
}

.copyright {
	font-size: 12px;
	font-size: 0.75rem;
	text-align: center;
	margin: 20px 0 40px 0;
	margin: 1.25rem 0 2.5rem 0;
	padding: 0 20px;
	padding: 0 1.25rem;
}

.logo {
	text-align: right;
	padding: 40px 0 0 0;
	padding: 2.5rem 0 0 0;
}

.logo img {
	max-width: 180px;
	max-width: 11.25rem;
}

#site-1 .logo {
	display: none;
}

.flex {
    display: flexbox;
	-webkit-display: box;
	display: box;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}

.flex-wrap {
	flex-wrap: wrap;
}
.justify-between {
    -webkit-box-pack: justify;
	-moz-box-pack: justify;
	box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	-moz-justify-content: space-between;
	justify-content: space-between;
}

.align-center {
	align-items: center;
}

.justify-center {
	justify-content: center;
}

/*** FORMULAR *****************************************************************************
*******************************************************************************************/
form {
	margin: 0;
}

.page-header {
	padding: 0 0 20px 0;
	padding: 0 0 1.25rem 0;
	margin: 0 0 30px 0;
	margin: 0 0 1.875rem 0;
	border-bottom: 1px solid #b1adb7;
	border-bottom: 0.0625rem solid #b1adb7;
}

.form-actions {
	padding: 0;
	text-align: right;
	border: none;
}

.form-horizontal .form-actions {
	padding-left: 0;
	background: none;
}

.Tx-Formhandler {
	width: 100%;
	background: #fff;
	border-radius: 20px;
	border-radius: 1.25rem;
	padding: 60px;
	padding: 3.75rem;
	box-shadow: 0 0 20px 10px #e5e6e6;
	box-shadow: 0 0 1.25rem 0.625rem #e5e6e6;
	position: relative;
}

.form-horizontal .control-group,
#payment-form .control-group {
	margin: 0 0 30px 0;
	margin: 0 0 1.875rem 0;
}

.row50 {
	position: relative;
	width: 100%;
}

.row50 input:first-child {
	width: 49%;
	float: left;
}

.row50 input:last-child {
	width: 49%;
	float: right;
}

.row30-70 {
	position: relative;
	width: 100%;
}

.row30-70 input:first-child {
	width: 29%;
	float: left;
}

.row30-70 input:last-child {
	width: 69%;
	float: right;
}

.row70-30 {
	position: relative;
	width: 100%;
}

.row70-30 input:first-child {
	width: 69%;
	float: left;
}

.row70-30 input:last-child {
	width: 29%;
	float: right;
}

textarea, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"], .uneditable-input, #pdate, .StripeElement {
	width: 100%;
	border: 1px solid #50475e;
	border: 0.0625rem solid #50475e;
	box-shadow: none;
	outline: none;
	border-radius: 0;
	background: #fff;
	padding: 10px;
	padding: 0.625rem;
	line-height: 1;
	font-size: 14px;
	font-size: 0.875rem;
	color: #000;
}

textarea:focus, input[type="text"]:focus, input[type="password"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="time"]:focus, input[type="week"]:focus, input[type="number"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="color"]:focus, .uneditable-input:focus, #pdate:focus, .StripeElement:focus {
    border-color: #0061af;
	box-shadow: none;
	outline: none;
}

select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	max-width: 300px;
	max-width: 18.75rem;
	padding: 10px 30px 10px 10px;
	padding: 0.625rem 1.875rem 0.625rem 0.625rem;
	border: 1px solid #50475e;
	border: 0.0625rem solid #50475e;
	color: #000;
	margin: 0;
	font-size: 14px;
	font-size: 0.875rem;
	border-radius: 0;
	box-shadow: none;
	cursor: pointer;
	height: 40px;
	height: 2.5rem;
	background: #fff url(/fileadmin/templates/img/select-down.svg) no-repeat center right 10px/10px auto;
	background: #fff url(/fileadmin/templates/img/select-down.svg) no-repeat center right 0.625rem/0.625rem auto;
}

select:focus, select:active {
	outline: none;
	box-shadow: none;
}

#pdate {
	max-width: 300px;
	max-width: 18.75rem;
	padding: 10px 30px 10px 10px;
	padding: 0.625rem 1.875rem 0.625rem 0.625rem;
	background: #fff url(/fileadmin/templates/img/date.svg) no-repeat center right 10px/14px auto;
	background: #fff url(/fileadmin/templates/img/date.svg) no-repeat center right 0.625rem/0.875rem auto;
}

#price {
	max-width: 300px;
	max-width: 18.75rem;
	padding: 10px 30px 10px 10px;
	padding: 0.625rem 1.875rem 0.625rem 0.625rem;
	background: #fff url(/fileadmin/templates/img/euro.svg) no-repeat center right 10px/10px auto;
	background: #fff url(/fileadmin/templates/img/euro.svg) no-repeat center right 0.625rem/0.625rem auto;
}

input[type="checkbox"] {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	width: 14px;
	width: 0.875rem;
	height: 14px;
	height: 0.875rem;
	border: 1px solid #0061af;
	border: 0.0625rem solid #0061af;
	margin: 0;
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -7px;
	margin-top: -0.4375rem;
	margin-left: 0 !important;
	float: none !important;
}

input[type="checkbox"]:hover {
	border-width: 2px;
	border-width: 0.125rem;
}

input[type="checkbox"]:checked {
	background: #0061af;
}

.checkhead {
	position: relative;
	margin: 0 0 30px 0;
	margin: 0 0 1.875rem 0;
}

.checkhead label {
	font-weight: 400;
	font-size: 14px;
	font-size: 0.875rem;
	position: relative;
	padding: 0 0 0 22px;
	padding: 0 0 0 1.375rem;
	display: inline-block;
	line-height: 1.3;
	cursor: pointer;
}

.ui-autocomplete {
	max-height: 250px !important;
	max-height: 15.625rem !important;
	overflow-y: auto;
	overflow-x: hidden;
}

/* Features */

.features-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin: 0 0 30px 0;
	margin: 0 0 1.875rem 0;
}

.features-wrap .wrap {
	width: calc(100%/2 - 40px);
	width: calc(100%/2 - 2.5rem);
	position: relative;
	border: 1px solid #dbdbe5;
	border: 0.0625rem solid #dbdbe5;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.features-wrap .wrap:hover {
	box-shadow: 0 0 15px rgba(0,0,0,0.2);
	box-shadow: 0 0 0.9375rem rgba(0,0,0,0.2);
}

.features-wrap .wrap .p-top {
	padding: 30px 40px;
	padding: 1.875rem 2.5rem;
	text-align: center;
	background: #0061af;
	color: #a2cdf0;
}

.features-wrap .wrap .p-top h2 {
	color: #fff;
	text-shadow: 0 1px 0 rgba(0,0,0,0.25);
	text-shadow: 0 0.0625rem 0 rgba(0,0,0,0.25);
}

.features-wrap .wrap .p-top h4 {
	font-weight: 600;
	margin: 0;
}

.features-wrap .wrap .p-body {
	padding: 40px;
	padding: 2.5rem;
}

.features-wrap .wrap .p-body h4 {
	text-transform: uppercase;
}

#list-cov {
	margin: 0;
	padding: 0;
}

#list-cov img {
	display: none;
}

#list-cov li {
	list-style: none;
	position: relative;
	padding: 0 0 0 30px;
	padding: 0 0 0 1.875rem;
	font-size: 14px;
	font-size: 0.875rem;
	margin: 0 0 10px 0;
	margin: 0 0 0.625rem 0;
	line-height: 1.3;
}

#list-cov li::before {
	content:'';
	width: 16px;
	width: 1rem;
	height: 16px;
	height: 1rem;
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -8px;
	margin-top: -0.5rem;
	background: url(/fileadmin/templates/img/check2.svg) no-repeat center/100% auto;
}

.features-wrap .wrap span {
	font-weight: 500;
	display: block;
	text-align: center;
	padding: 0 40px 10px 40px;
	padding: 0 2.5rem 0.625rem 2.5rem;
}

.features-wrap .wrap.activescheme .p-top {
	background: #f93;
	color: #88490a;
}

.features-wrap .wrap label {
	width: 100%;
	position: absolute;
	background: transparent;
	top: 0;
	left: 0;
	height: 100%;
	cursor: pointer;
}

.features-wrap .wrap input[type="radio"] {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	width: 0;
	height: 0;
	border: none;
	outline: none;
	box-shadow: none;
	padding: 0;
	margin: 0;
}

/* Payment */

#div-kontoinhaber {
	width: 100%;
}

#payment-placeholder-box {
	width: 100%;
}

#wrapper {
	position: absolute;
	bottom: 190px;
	margin-left: 200px;
	margin-left: 12.5rem;
}

#signature-space {
	position: relative;
	height: 325px;
}

.signature-component button {
	font-family: 'Montserrat', sans-serif;
	margin: 15px 10px 0 0;
	margin: 0.9375rem 0.625rem 0 0;
	border-radius: 5px;
	border-radius: 0.3125rem;
	padding: 15px 25px;
	padding: 0.9375rem 1.5625rem;
	font-size: 14px;
	font-size: 0.875rem;
}

.fa-check::before, .fa-remove::before, .fa-close::before, .fa-times::before {
    font-family: FontAwesome;
    font-style: normal;
}

#save {
	background: #84d658;
	color: #1d4c01;
}

#clear {
	background: #000;
}

#message {
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 500;
	position: absolute;
	margin-top: 5px;
	margin-top: 0.3125rem;
}

#cc-number:active, #cc-number:focus,
#cc-exp:active, #cc-exp:focus,
#cc-cvc:active , #cc-cvc:focus{
	box-shadow: none;
	border-color: #0061af;
	color: #000;
}

.control-label .text-muted {
	font-weight: 400;
	margin-left: 5px;
	margin-left: 0.3125rem;
}

.cc-brand {
	padding: 0 2px;
	padding: 0 0.125rem;
	font-weight: 400;
}

.check-card {
	position: relative;
	margin-left: 200px;
	margin-left: 12.5rem;
	margin-bottom: 30px;
	margin-bottom: 1.875rem;
}

.btn.btn-small.btn-payment-submit {
	font-family: 'Montserrat', sans-serif;
	border-radius: 5px;
	border-radius: 0.3125rem;
	padding: 15px 25px;
	padding: 0.9375rem 1.5625rem;
	font-size: 14px;
	font-size: 0.875rem;
	color: #fff;
	background: #0061af;
	text-shadow: none;
	font-weight: 400;
	border: none;
	box-shadow: none;
}

/* Buttons */

.form-actions {
	margin: 20px 0 0 0;
	margin: 1.25rem 0 0 0;
}

button:focus, button:active {
	outline: none;
	box-shadow: none;
}

.btn {
	line-height: 1;
}

.btn.btn-primary {
	background: #0061af;
	color: #fff;
	border: none;
	padding: 15px 40px;
	padding: 0.9375rem 2.5rem;
	font-weight: 400;
	border-radius: 5px;
	border-radius: 0.3125rem;
	text-shadow: none;
	font-size: 16px;
	font-size: 1rem;
	box-shadow: none;
}

.btn.btn-primary::after {
	content:'';
	width: 0;
	height: 15px;
	height: 0.9375rem;
	background: url(/fileadmin/templates/img/next-arrow.svg) no-repeat center right/80% auto;
	display: inline-block;
	float: right;
	margin: 2px 0 0 0;
	margin: 0.125rem 0 0 0;
	transition: all 0.3s;
}

.btn.back {
	background: #fff;
	color: #000;
	border: 1px solid #000;
	border: 0.0625rem solid #000;
	padding: 15px 40px;
	padding: 0.9375rem 2.5rem;
	font-weight: 400;
	border-radius: 5px;
	border-radius: 0.3125rem;
	text-shadow: none;
	font-size: 16px;
	font-size: 1rem;
	box-shadow: none;
}

.btn.back::before {
	content:'';
	width: 0;
	height: 15px;
	height: 0.9375rem;
	background: url(/fileadmin/templates/img/back-arrow.svg) no-repeat center left/80% auto;
	display: inline-block;
	float: left;
	margin: 2px 0 0 0;
	margin: 0.125rem 0 0 0;
	transition: all 0.3s;
}

.btn.back:hover {
	background: #000;
	color: #fff;
}

.btn.btn-primary:hover::after,
.btn.back:hover::before {
	width: 25px;
	width: 1.5625rem;
}

.form-horizontal .form-actions .btn-first {
	float: right;
}

.form-horizontal .form-actions .btn {
	margin: 0 0 0 10px;
	margin: 0 0 0 0.625rem;
	height: 46px;
	height: 2.875rem;
	vertical-align: baseline;
}

/* Labels */

.form-horizontal .controls,
#payment-form .controls{
	position: relative;
	width: calc(100% - 200px);
	width: calc(100% - 12.5rem);
	margin: 0 0 0 200px;
	margin: 0 0 0 12.5rem;
}

label {
	font-size: 14px;
	font-size: 0.875rem;
	color: #000;
	font-weight: 700;
}

label .required-icon {
	color: #0061af;
	margin: 0 0 0 5px;
	margin: 0 0 0 0.3125rem;
}

.form-horizontal .control-label,
#payment-form .control-label{
    width: 200px;
	width: 12.5rem;
	margin: 0;
    text-align: left;
	padding: 0 10px 0 0;
	padding: 0 0.625rem 0 0;
	min-height: 40px;
	min-height: 2.5rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	text-transform: uppercase;
	float: left;
}

.StripeElement {
	
}

/* Error */

#errorbox {
	display: none;
}

.alert {
    padding: 20px;
	padding: 1.25rem;
    margin-bottom: 20px;
	margin-bottom: 1.25rem;
    text-shadow: none;
    border: 1px solid #fbeed5;
	border: 0.0625rem solid #fbeed5;
    border-radius: 3px;
	border-radius: 0.1875rem;
    background-color: #f2dede;
	border-color: #eed3d7;
	color: #e41d1d;
	font-size: 14px;
	font-size: 0.875rem;
}

.control-group.error .checkbox, .control-group.error .radio, .control-group.error input, .control-group.error select, .control-group.error textarea, input.error {
    color: #000;
    border-color: #e41d1d;
    box-shadow: none;
}

.control-group.error .checkbox:focus, .control-group.error .radio:focus, .control-group.error input:focus, .control-group.error select:focus, .control-group.error textarea:focus {
    border-color: #e41d1d;
    box-shadow: none;
}

.control-group.error > label, .control-group.error .help-block, .control-group.error .help-inline, .control-group.error label .required-icon {
    color: #e41d1d;
}

span.error,
span.error .required-icon{
	color: #e41d1d;
}

/*** APPLICATION FORM  ********************************************************************
*******************************************************************************************/

.form6 #wrapper {
	position: relative;
	margin: 0 0 15px 0;
	margin: 0 0 0.9375rem 0;
	bottom: auto;
}

.form6 #message {
	position: relative;
}

.table-wrap {
	border-bottom: 1px solid rgba(0,0,0,0.15);
	border-bottom: 0.0625rem solid rgba(0,0,0,0.15);
	margin: 0 0 15px 0;
	margin: 0 0 0.9375rem 0;
}


.form6 table {
	width: 100%;
	
}

.form6 tbody {
	width: 100%;
}

.form6 table th, .form6 table tr, .form6 table td {
	width: 100%;
	padding: 5px 0;
	padding: 0.3125rem 0;
}

.form6 table th {
	text-align: left;
	font-weight: 600;
	color: #0061af;
	line-height: 1.2;
}

.form6 table td {
	font-size: 14px;
	font-size: 0.875rem;
}

.form6 table td .bold {
	font-weight: 500;
	display: inline-block;
	width: 300px;
	width: 19.75rem;
}

/*** LOGIN/OUT ****************************************************************************
*******************************************************************************************/

#site-1 .frame-type-login.frame-layout-0 {
	width: 100%;
	background: #0071bb;
	background: -o-linear-gradient(315deg, #004f83, #0071bb);
	background: linear-gradient(135deg, #004f83, #0071bb);
	position: relative;
	min-height: 600px;
	min-height: 37.5rem;
	-webkit-box-shadow: 0 15px 25px 5px rgba(0,0,0,0.1);
	        box-shadow: 0 15px 25px 5px rgba(0,0,0,0.1);
	-webkit-box-shadow: 0 0.9375rem 1.5625rem 0.3125rem rgba(0,0,0,0.1);
	        box-shadow: 0 0.9375rem 1.5625rem 0.3125rem rgba(0,0,0,0.1);
}

#site-1 .frame-type-login.frame-layout-0::before {
	content: '';
	width:  calc(100% - 460px);
	width:  calc(100% - 28.75rem);
	position: absolute;
	height: 100%;
	background: url(/fileadmin/templates/img/DG-logo2.png) no-repeat center/55% auto;
	top: 0;
	right: 0;
}

#site-1 .tx-felogin-pi1 {
	width: 460px;
	width: 28.75rem;
	padding: 40px 60px 60px 60px;
	padding: 2.5rem 3.75rem 3.75rem 3.75rem;
	background: #fff;
	display: table-cell;
	vertical-align: middle;
	height: 600px;
	height: 37.5rem;
	font-size: 14px;
	font-size: 0.875rem;
}

#site-1 fieldset {
	margin: 20px 0 0 0;
	margin: 1.25rem 0 0 0;
	padding: 0;
}

#site-1 .tx-felogin-pi1 fieldset legend {
	display: none;
}

#site-1 .tx-felogin-pi1 input {
	margin: 0 0 20px 0;
	margin: 0 0 1.25rem 0;
	padding: 10px 35px 10px 10px;
	padding: 0.625rem 2.1875rem 0.625rem 0.625rem;
}

#site-1 .tx-felogin-pi1 #user {
	background: #fff url(/fileadmin/templates/img/user.svg) no-repeat center right 10px/15px auto;
	background: #fff url(/fileadmin/templates/img/user.svg) no-repeat center right 0.625rem/0.9375rem auto;
}

#site-1 .tx-felogin-pi1 #pass {
	background: #fff url(/fileadmin/templates/img/lock.svg) no-repeat center right 10px/15px auto;
	background: #fff url(/fileadmin/templates/img/lock.svg) no-repeat center right 0.625rem/0.9375rem auto;
}

#site-1 .tx-felogin-pi1 input[type="submit"] {
	background: #0061af;
	color: #fff;
	border: none;
	padding: 15px 40px;
	padding: 0.9375rem 2.5rem;
	font-weight: 400;
	border-radius: 5px;
	border-radius: 0.3125rem;
	text-shadow: none;
	font-size: 16px;
	font-size: 1rem;
	box-shadow: none;
	width: 100%;
}

#site-1 .tx-felogin-pi1 label {
	text-transform: uppercase;
}

#site-1 .tx-felogin-pi1 .status-message {
	font-size: 16px;
	font-size: 1rem;
	color: #333;
	display: block;
	margin: 0 0 20px 0;
	margin: 0 0 1.25rem 0;
}

.tx-felogin-pi1 .logout {
	text-align: left;
	margin: 20px 0 0 0;
	margin: 1.25rem 0 0 0;
	font-weight: 600;
	font-size: 14px;
	font-size: 0.875rem;
}

.tx-felogin-pi1 .logout fieldset {
	padding: 0;
}

.tx-felogin-pi1 .logout input[type="submit"] {
	background: #f93;
	color: #fff;
	border: none;
	padding: 15px 40px;
	padding: 0.9375rem 2.5rem;
	font-weight: 400;
	border-radius: 5px;
	border-radius: 0.3125rem;
	text-shadow: none;
	font-size: 16px;
	font-size: 1rem;
	box-shadow: none;
	margin: 15px 0 0 0;
	margin: 0.9375rem 0 0 0;
}

.tx-felogin-pi1 .logout input[type="submit"]:hover {
	background: #000;
}

.tx-felogin-pi1 .logout .status-message {
	margin: 0 0 10px 0;
	margin: 0 0 0.625rem 0;
	font-weight: 400;
}

.icon-info-sign {
	background-position: -120px -96px;
	cursor: pointer;
	position:relative;
	z-index:200000;
}

.control-label{position: relative;}
.infobox {
	background: #eeeeee none repeat scroll 0 0;
	border: 1px solid #dddddd;
	bottom: 10px;
	left: 65px;
	padding: 20px;
	position: absolute;
	width: 200px;
	z-index: 10000;
	display: none;
	text-transform: none;
}

/*** HOME *********************************************************************************
*******************************************************************************************/

.home {
	width: 100%;
    background: #fff;
    border-radius: 20px;
	border-radius: 1.25rem;
    padding: 60px;
    padding: 3.75rem;
    box-shadow: 0 0 20px 10px #e5e6e6;
    box-shadow: 0 0 1.25rem 0.625rem #e5e6e6;
    position: relative;
}

.home .frame-type-html {
	width: calc(100%/3 - 40px);
	width: calc(100%/3 - 2.5rem);
	margin: 10px 20px;
	margin: 0.625rem 1.25rem;
}

.home .btn {
	width: 100%;
	display: block;
	font-size: 20px;
	font-size: 1.25rem;
	padding: 40px 20px;
	padding: 2.5rem 1.25rem;
	border-radius: 5px;
	border-radius: 0.3125rem;
	font-weight: 400;
	background: #202e52;
	color: #fff;
	text-shadow: none;
	box-shadow: none;
	height: 100%;
	align-items: center;
	display: flex;
	justify-content: center;
}

.home .btn:hover {
	background: #0061af;
}


.home .Tx-Formhandler {
	padding: 0;
	box-shadow: none;
	border-radius: 0;
}

.home .frame-type-formhandler_pi1,
.home .frame-type-list {
	width: 100%;
}

/* Download Center */

.tx-filelist {
	margin-bottom: 40px;
	margin-bottom: 2.5rem;
}

.tx-filelist table {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1;
}

.tx-filelist table th {
	color: #fff;
	background: #0061af;
	font-weight: 500;
	border-left: 1px solid rgba(255,255,255,0.5);
	border-left: 0.0625rem solid rgba(255,255,255,0.5);
	padding: 10px;
	padding: 0.625rem;
}

.tx-filelist table tr td {
	padding: 10px;
	padding: 0.625rem;
	border: 1px solid #b1adb7;
	border: 0.0625rem solid #b1adb7;
	border-top: none;
	border-right: none;
	vertical-align: middle;
}

.tx-filelist table tr td:last-child {
	border-right: 1px solid #b1adb7;
	border-right: 0.0625rem solid #b1adb7;
}

.tx-filelist table tr:nth-child(2n+1) td {
    background-color: #f9f9f9;
}

.tx-filelist table tr:hover td {
    background-color: rgba(0,97,175,0.1);
}

.input-append {
	width: 100%;
	width: calc(100% - 50px);
	width: calc(100% - 3.125rem);
}

.btn_upload {
	width: 40px;
	width: 2.5rem;
	height: 40px;
	height: 2.5rem;
	background: #f9f9f9 url(../img/upload.svg) no-repeat center/40% auto;
	border: 1px solid #b1adb7;
	border: 0.0625rem solid #b1adb7;
	position: absolute;
	top: 0;
	right: 0;
	cursor: pointer;
}

.btn-upload{
    font-family: 'Montserrat', sans-serif;
    background: #0061af;
    color: #fff;
    border: none;
    padding: 15px 40px;
    padding: 0.9375rem 2.5rem;
    font-weight: 400;
    border-radius: 5px;
    border-radius: 0.3125rem;
    text-shadow: none;
    font-size: 16px;
    font-size: 1rem;
    box-shadow: none;
    display: inline-block;
    line-height: 1;
    vertical-align: baseline;
    margin-left: 5px;
    margin-left: 0.3125rem;
}

.btn-upload:hover {
	background: #000;
	color: #fff;
}

.btn.btn-mini.btn-danger.delete-button {
	font-size: 0;
	min-width: auto;
	width: auto;
	margin: -4px 0 0 10px;
	margin: -0.25rem 0 0 0.625rem;
	line-height: 1;
	display: inline-block;
}

.delete-button::after {
	content: "\f1f8";
	display: inline-block;
	font-family: FontAwesome;
	font-size: 14px;
	font-size: 0.875rem;
}

/*** SALES *********************************************************************************
*******************************************************************************************/

/* List */

#tbl_employee {
	font-size: 14px;
	font-size: 0.875rem;
	border-radius: 0;
	line-height: 1;
	border: none;
}

#tbl_employee th {
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	background: #0061af;
	color: #fff;
	padding: 0;
	text-decoration: none !important;
	border-left: 1px solid rgba(255,255,255,0.5);
	border-left: 0.0625rem solid rgba(255,255,255,0.5);
}

.table-bordered th:first-child {
	border-color: #0061af;
}

#tbl_employee th a {
	color: #fff;
	display: block;
	padding: 10px;
	padding: 0.625rem;
}

#tbl_employee th a:hover {
	background: #009eec;
	text-decoration: none;
}

#tbl_employee th:last-child a {
	display: none;
}

#tbl_employee th .sortArrow {
	margin-left: 5px !important;
	margin-left: 0.3125rem !important;
}

#tbl_employee .fancySearchRow {
	padding: 0;
}

#tbl_employee .fancySearchRow th {
	padding: 0 !important;
	background: #0071BB;
	border: 2px solid #0061af;
	border: 0.125rem solid #0061af;
	border-top: none;
}

#tbl_employee .fancySearchRow input {
	font-family: 'Montserrat', sans-serif;
	padding: 10px;
	padding: 0.625rem;
	font-size: 14px;
	font-size: 0.875rem;
	border: none;
	color: #000;
}

#tbl_employee tr {
	
}

#tbl_employee tr td {
	padding: 10px;
	padding: 0.625rem;
	border: 1px solid #b1adb7;
	border: 0.0625rem solid #b1adb7;
	border-top: none;
	border-right: none;
}

#tbl_employee tr td:last-child {
	border-right: 1px solid #b1adb7;
	border-right: 0.0625rem solid #b1adb7;
}

.table-hover tbody tr:hover td,
.table-hover tbody tr:hover th {
	background-color: rgba(0,97,175,0.1);
}

.btn.btn-mini,
.btn.btn-mini.btn-danger {
	background: none;
	padding: 0;
	text-shadow: none;
	box-shadow: none;
	border: none;
	border-radius: 0;
	font-size: 18px;
	font-size: 1.125rem;
	margin-right: 5px;
	margin-right: 0.3125rem;
}

.btn.btn-mini {
	color: #0061af;
}

.btn.btn-mini.btn-danger {
	color: #e41d1d;
}

.btn.btn-mini:hover,
.btn.btn-mini.btn-danger:hover{
	color: #000;
}

.pag .btn.btn-light {
	border-radius: 0;
	background: rgba(0,0,0,0.1);
	box-shadow: none;
	padding: 5px 10px;
	padding: 0.3125rem 0.625rem;
	border: none;
	text-shadow: none;
	margin: 0 2px;
	margin: 0 0.125rem;
	font-size: 14px;
	font-size: 0.875rem;
	color: #000;
}

.pag .btn.btn-light:hover {
	background: rgba(0,0,0,0.15);
}

.pag .btn.btn-light.active {
	background: #333;
	color: #fff;
}

.btn2 {
	font-family: 'Montserrat', sans-serif;
    background: #0061af;
    color: #fff;
    border: none;
    padding: 15px 40px;
    padding: 0.9375rem 2.5rem;
    font-weight: 400;
    border-radius: 5px;
    border-radius: 0.3125rem;
    text-shadow: none;
    font-size: 16px;
    font-size: 1rem;
    box-shadow: none;
	display: inline-block;
	line-height: 1;
	vertical-align: baseline;
	margin-left: 5px;
	margin-left: 0.3125rem;
}

.btn2.btn-danger {
	background: #f93;
	color: #fff;
}

.btn2.back {
	border: 1px solid #000;
	border: 0.0625rem solid #000;
	color: #000;
	background: #fff;
	height: 46px;
	height: 2.875rem;
}

.btn2:hover,
.btn2.btn-danger:hover{
	background: #000;
	color: #fff;
	text-decoration: none;
}

.checkbox {
	line-height: 1;
	margin-right: 10px;
	margin-right: 0.625rem;
	position: relative;
	min-height: auto;
	padding: 0 0 0 20px !important;
	padding: 0 0 0 1.25rem !important;
	margin: 0 0 5px 0;
	margin: 0 0 0.3125rem 0;
}

.radio {
	line-height: 1;
	margin-right: 10px;
	margin-right: 0.625rem;
	position: relative;
	min-height: auto;
	padding: 0 0 0 15px !important;
	padding: 0 0 0 0.9375rem !important;
	margin: 0 10px 0 0;
	margin: 0 0.625rem 0 0;
}

input[type="radio"] {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	margin: 0;
	width: 14px;
	width: 0.875rem;
	height: 14px;
	height: 0.875rem;
	border-radius: 100%;
	border: 1px solid #0061af;
	border: 0.0625rem solid #0061af;
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -7px;
	margin-top: -0.4375rem;
	margin-left: 0 !important;
	float: none !important;
}

input[type="radio"]:hover {
	border-width: 2px;
	border-width: 0.125rem;
}

input[type="radio"]:checked {
	background: #0061af;
	border-color: #0061af;
}

input[type="radio"]:focus {
	outline: none;
}

/*** MEDIA QUERIES ************************************************************************
*******************************************************************************************/

@media screen and (min-width: 2560px) {
    html {
        font-size: 125%;
    }
}

@media screen and (max-width: 1260px) {
	/*#errorboxerror.alert.alert-error.nmabe {
		min-height: 155px;
	}
	
	#wrapper.signature-konto.nmabe {
		top: 490px;
	}*/
}

@media screen and (max-width: 1080px) {
	.features-wrap .wrap {
		width: calc(100%/2 - 10px);
	}
	
	.features-wrap .wrap .p-top {
		padding: 25px 30px;
	}
	
	.features-wrap .wrap .p-body {
		padding: 30px 30px 15px 30px;
	}
	
	.features-wrap .wrap span {
		padding: 0 30px;
		font-size: 14px;
	}
	
	.home .frame-type-html {
		width: calc(100%/2 - 40px);
	}
}

@media screen and (max-width: 960px) {
	
	#payment-placeholder-box {
		width: 100%;
		padding: 0;
	}

	.summary-row {
		width: 100%;
	}

}

@media screen and (max-width: 767px) {
	body {
		padding: 0;
		font-size: 14px;
	}
	
	main, .logo {
		padding: 20px 0 0 0;
	}
	
	
	#site-1 .frame-type-login.frame-layout-0 {
		min-height: auto;
		padding-top: 120px;
	}
	
	#site-1 .frame-type-login.frame-layout-0::before {
		width: 100%;
		top: 0;
		left: 0;
		right: auto;
		height: 120px;
		background-size: auto 80px;
	}
	
	#site-1 .tx-felogin-pi1 {
		width: 100%;
		height: auto;
		display: inline-block;
	}
	
	.Tx-Formhandler, .home {
		padding: 40px;
	}
	
	.form-horizontal .control-group,
	#payment-form .control-group{
		margin: 0 0 20px 0;
	}
	
	.form-horizontal .control-label,
	#payment-form .control-label{
		width: 140px;
	}
	
	label {
		font-size: 12px;
	}
	
	.form-horizontal .controls,
	#payment-form .controls{
		width: calc(100% - 140px);
		margin: 0 0 0 140px;
	}
	
	.table-box th {
		font-size: 14px;
		letter-spacing: 0;
	}

	.table50-50 .tab {
		width: 100%;
	}
	
	.table50-50 .tab.left {
		margin: 0 0 20px 0;
	}
	
	.table-box .td-underline span {
		font-size: 12px;
	}

	
	
	.features-wrap .wrap {
		width: 100%;
	}
	
	.features-wrap .wrap:first-child {
		margin-bottom: 20px;
	}
	
	#wrapper {
		bottom: 175px;
		margin-left: 140px;
	}
	
	.check-card {
		margin-left: 140px;
		margin-bottom: 20px;
	}
	
	.form6 table td {
		font-size: 13px;
	}
	
	.home .frame-type-html {
		width: 100%;
	}
}

@media screen and (max-width: 600px) {
	
	.form6 table td .bold {
		width: auto;
	}
	
	.form6 .table-wrap {
		margin: 0 0 5px 0;
	}
	
	.form-horizontal .form-actions {
		padding: 0;
		max-width: 300px;
		margin: 0 auto;
		margin-top: 20px;
	}
	
	.form-horizontal .form-actions.sales {
		padding: 0;
		max-width: 300px;
		margin: 0 auto;
		margin-top: 20px;
		display: flex;
		flex-wrap: wrap;
		flex-flow: column-reverse;
		text-align: center;
	}
	
	.form-horizontal .form-actions .btn,
	.form-horizontal .form-actions .btn2.btn-danger,
	.form-horizontal .form-actions.sales .btn2 {
		width: 100%;
		display: block;
		text-align: center;
		margin: 10px 0 0 0;
		float: none;
	}
	
	#tbl_employee,
	#tbl_employee .fancySearchRow input,
	.tx-filelist table {
		font-size: 12px;
	}
	
	#tbl_employee tr td,
	#tbl_employee th a,
	#tbl_employee .fancySearchRow input,
	.tx-filelist table th,
	.tx-filelist table tr td{
		padding: 5px;
	}
	
	#wrapper {
		bottom: 295px;
	}
	
	/*.table-box .text {
		font-size: 13px;
		line-height: 1.3;
	}
	
	table, .table-box {
		width: 600px;
		max-width: 600px;
	}
	
	.table50-50 .tab .table-box {
		width: 100%;
		max-width: 100%;
	}
	
	#tbl_employee thead {
		display: none;
	}
	
	#tbl_employee tbody tr {
		display: block;
		width: 100%;
		border: 1px solid rgba(0,0,0,0.05);
	}
	
	#tbl_employee tbody tr td {
		display: block;
		width: 100%;
		border:none;
		padding: 5px 10px;
	}
	
	#tbl_employee tbody tr td::before {
		color: #aaaaaa;
		min-width: 110px;
		display: inline-block;
	}
	
	#tbl_employee tbody tr td:nth-child(1)::before {
		content: "Vorname: ";
	}
	#tbl_employee tbody tr td:nth-child(2)::before {
		content: "Nachname: ";
	}
	#tbl_employee tbody tr td:nth-child(3)::before {
		content: "Benutzername: ";
	}*/
}

@media screen and (max-width: 560px) {

	#wrapper {
		margin-left: 0;
	}
}


@media screen and (max-width: 480px) {
	
	.Tx-Formhandler, .home {
		padding:  30px 20px;
	}
	
	.logo img {
		max-width: 100px;
	}
	
	h1 {
		font-size: 24px;
	}
	
	h2 {
		font-size: 20px;
	}
	
	.summary-row h4 {
		font-size: 18px;
	}
	
	#site-1 .tx-felogin-pi1 {
		padding: 25px;
	}
	
	#site-1 .tx-felogin-pi1 h3 {
		font-size: 26px;
		margin: 0 0 10px 0;
	}
	
	#site-1 .frame-type-login.frame-layout-0 {
		padding-top: 100px;
	}
	
	#site-1 .frame-type-login.frame-layout-0::before {
		height: 100px;
		background-size: auto 60px;
	}
	
	.page-header {
		padding: 0 0 10px 0;
		margin: 0 0 15px 0;
	}
	
	.form-horizontal .control-label,
	#payment-form .control-label{
		width: 100%;
		text-align: left;
		height: auto;
		min-height: auto;
		display: block;
		padding: 0 0 5px 0;
		float: none;
	}
	
	.form-horizontal .controls,
	#payment-form .controls{
		width: 100%;
		margin: 0 0 0 0;
	}
	
	select, .controls.dollar input, #price, #pdate {
		max-width: 100%;
	}
	
	.checkhead {
		margin:  0 0 20px 0;
	}
	
	.form-horizontal .form-actions {
		padding: 0;
		max-width: 300px;
		margin: 0 auto;
		margin-top: 20px;
	}
	
	.btn.btn-primary,
	.btn-upload{
		width: 100%;
	}
	
	.btn.back {
		width: 100%;
	}
	
	.form-horizontal .form-actions .btn.back {
		margin: 10px 0 0 0;
	}
	
	.btn.btn-primary:hover::after, .btn.back:hover::before {
		width: 0;
	}
	
	.tx-felogin-pi1 .logout .status-message {
		text-align: center;
	}
	
	#signature-space {
		height: 390px;
	}
	
	#wrapper {
		bottom: 270px;
	}
	
	#message {
		margin-top: 3px;
		font-size: 13px;
	}
	
	#save {
		width: 100%;
		margin: 15px 0 0 0;
		display: block;
	}
	
	#clear {
		width: 100%;
		margin: 10px 0 0 0;
		display: block;
	}
	
	.check-card {
		margin-left: 0;
	}

	.alert {
		font-size: 13px;
		line-height: 1.35;
	}
	
	.home .frame-type-html .btn {
		font-size: 16px;
		padding: 30px 15px;
	}

}

@media screen and (max-width: 440px) {

}


@media screen and (max-width: 400px) {
	
	.row50 input:first-child,
	.row50 input:last-child,
	.row30-70 input:first-child,
	.row30-70 input:last-child,
	.row70-30 input:first-child,
	.row70-30 input:last-child{
		float: none;
		width: 100%;
	}
	
	.row50 input:first-child,
	.row30-70 input:first-child,
	.row70-30 input:first-child{
		margin: 0 0 10px 0;
	}
	
	.form3 #salutation {
		margin: 0 0 10px 0;
	}

	
}