/* ////////////////////////////////////////////////////////////////////////////////////////////////////
// TYPO3 FSC Master Style
// LeiserPublishing GmbH, www.leiserpublishing.com
// //////////////////////////////////////////////////////////////////////////////////////////////////// */

/* ###############################
// FSC MASTERSTYLE TX_FRONTEND ###
// ############################### */
/* ==================================================================================================== */
/* ### RESET all ### */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, header, p, a, blockquote, pre,
abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong,
sub, sup, tt, img, hr, figure, figcaption, audio, video,
var, dl, dt, dd, ol, ul, li, table, caption, tbody, tfoot, thead, tr, th, td, form,
.formhandler_form, .formhandler_form form, .formhandler_form form fieldset, .formhandler_form form label,
.formhandler_form p, .formhandler_form h1, .formhandler_form h2, .formhandler_form h3, .formhandler_form h4,
.formhandler_form h5, .formhandler_form h6 {
	border: 0;
    margin: 0;
    outline: 0;
	padding: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	vertical-align: baseline;
	text-indent: 0;
	letter-spacing: normal;
    line-height: 1em;
}
.clearlayer {
	clear: both;
	display: block;
	overflow: hidden;
	visibility: hidden;
	width: 0;
	height: 0;
}
:focus {
	outline: 0;/* remember to define focus styles! */
}
ol, ul, dl {
	list-style: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: "";
}
blockquote, q {
	quotes: "" "";
}
a img {
	border: 0;
}
table {
	border-collapse: separate;
	border-spacing: 0;/* tables still need 'cellspacing="0"' in the markup */
	background-color: transparent;
}
caption, th, td {
	font-weight: normal;
	text-align: left;
}
.formhandler_form form .hiddenfields {
    display: none;
}
/* ==================================================================================================== */
/* ### GENERAL definition ### */
/* ## FSC Elements and classes ## */
/* # "tx_frontend" content-element (FSC) default # */
/* content-element 'align' definition */
.ce-align-left {
    text-align: left;
}
.ce-align-center {
    text-align: center;
}
.ce-align-right {
    text-align: right;
}
/* content-element 'textpic', 'image', 'nowrap - bodytext', 'gallery', 'row', 'uploads li' and 'uploads div' definition */
.ce-textpic, .ce-image, .ce-nowrap .ce-bodytext, .ce-gallery, .ce-row, .ce-uploads li, .ce-uploads div {
    overflow: hidden;
}
/* content-element 'left - gallery', 'column', 'center - outer', 'center - inner' and 'right - gallery' definition */
.ce-left .ce-gallery, .ce-column {
    float: left;
}
.ce-center .ce-outer {
    position: relative;
    float: right;
    right: 50%;
}
.ce-center .ce-inner {
    position: relative;
    float: right;
    right: -50%;
}
.ce-right .ce-gallery {
    float: right;
}
/* content-element 'gallery' - 'figure', 'figcaption', 'img' and 'iframe' definition */
.ce-gallery figure {
    display: table;
    margin: 0;
}
.ce-gallery figcaption {
    display: table-caption;
    caption-side: bottom;
}
.ce-gallery img {
    display: block;
}
.ce-gallery video, .ce-gallery audio,
.ce-gallery .video-embed iframe.video-embed-item,
.ce-gallery .audio-embed iframe.audio-embed-item {
    max-width: 100%;
}
.ce-gallery iframe {
    border-width: 0;
}
/* content-element 'border' - 'img' and 'iframe' definition */
.ce-border img, .ce-border iframe {
    border: 2px solid #000000;
    padding: 0px;
}
/* content-element 'intext - right - gallery' and 'intext - left - gallery' definition */
.ce-intext .ce-right .ce-gallery, .ce-intext .ce-left .ce-gallery, .ce-above .ce-gallery {
    margin-bottom: 10px;
}
.ce-intext .ce-right .ce-gallery {
    margin-left: 10px;
}
.ce-intext .ce-left .ce-gallery {
    margin-right: 10px;
}
/* content-element 'intext - left - ol' and 'intext - left - ul' definition */
.ce-intext .ce-left ol, .ce-intext .ce-left ul {
    padding-left: 40px;
    overflow: auto;
}
/* content-element 'below - gallery' definition */
.ce-below .ce-gallery {
    margin-top: 10px;
}
/* content-element 'column' definition */
.ce-column {
    margin-right: 10px;
}
.ce-column:last-child {
    margin-right: 0;
}
/* content-element 'row' definition */
.ce-row {
    margin-bottom: 10px;
}
.ce-row:last-child {
    margin-bottom: 0;
}
/* content-element 'above - bodytext' definition */
.ce-above .ce-bodytext {
    clear: both;
}
/* content-element 'headline' definition */
.ce-headline-left {
    text-align: left;
}
.ce-headline-center {
    text-align: center;
}
.ce-headline-right {
    text-align: right;
}
/* content-element 'headerline' definition */
.ce-headerline-center {
    text-align: center;
}
.ce-headerline-right {
    text-align: right;
}
.ce-headerline-left {
    text-align: left;
}
/* content-element 'uploads' definition */
.ce-uploads {
    margin: 0;
    padding: 0;
}
.ce-uploads li {
    list-style: none outside none;
    margin: 1em 0;
}
.ce-uploads li a {
    color: inherit;
}
.ce-uploads img, .ce-uploads video {
    float: left;
    padding-right: 1em;
    vertical-align: top;
}
.ce-uploads span {
    display: block;
}
.ce-uploads span.ce-uploads-fileName {
    float: left;
    text-decoration: underline !important;
}
.ce-uploads span.ce-uploads-description {
    float: left;
}
/* content-element 'table' (Table) definition */
.ce-table {
    width: 100%;
    max-width: 100%;
}
.ce-table th, .ce-table td {
    padding: 0.5em 0.75em;
    vertical-align: top;
}
.ce-table thead th {
    border-bottom: 2px solid #dadada;
}
.ce-table th, .ce-table td {
    border-top: 1px solid #dadada;
}
.ce-table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(0,0,0,.05);
}
.ce-table-bordered th, .ce-table-bordered td {
    border: 1px solid #dadada;
}
.ce-table-striped caption, .ce-table-linedown caption {
    margin-bottom: 0.2em;
}
.ce-table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(0,0,0,.05);
}
.ce-table-striped th, .ce-table-striped td {
    padding: 0.5em 0.75em;
}
.ce-table-bordered caption, .ce-table-line caption, .ce-table-lineup caption {
    margin-bottom: -1px;
    border-bottom: 2px solid rgb(200,200,200);
}
.ce-table-bordered th, .ce-table-bordered td {
    padding: 0.5em 0.75em;
    border: 1px solid rgb(200,200,200);
}
.ce-table-bordered tr:not(:first-child) th, .ce-table-bordered tr:not(:first-child) td {
    border-top: 0;
}
.ce-table-bordered thead tr th:not(:last-child), .ce-table-bordered tr td:not(:last-child) {
    border-right: 0;
}
.ce-table-line th, .ce-table-line td {
    padding: 0.5em 0 0.5em 0;
    border-top: 1px solid rgb(200,200,200);
    border-bottom: 1px solid rgb(200,200,200);
}
.ce-table-line tr:not(:first-child) th, .ce-table-line tr:not(:first-child) td {
    border-top: 0;
}
.ce-table-lineup caption {
    margin-bottom: -2px;
}
.ce-table-lineup th, .ce-table-lineup td {
    padding: 0.5em 0 0.5em 0;
    border-top: 1px solid rgb(200,200,200);
}
.ce-table-lineup thead tr:first-child th {
    border-top: 2px solid rgb(200,200,200);
    border-bottom: 1px solid rgb(200,200,200);
}
.ce-table-linedown th, .ce-table-linedown td {
    padding: 0.5em 0 0.5em 0;
    border-bottom: 1px solid rgb(200,200,200);
}
.ce-table-linedown thead th {
    border-bottom: 2px solid rgb(200,200,200);
}
/* # "tx_frontend" (RTE Text Option) (FSC-content-element) ce-bodytext default # */
/* ce-bodytext 'text-left', 'text-center', 'text-right' and 'text-justify' definition */
.text-left {
    text-align: left;
}
.text-center {
    text-align: center;
}
.text-right {
    text-align: right;
}
.text-justify {
    text-align: justify;
}
/* ce-bodytext tag 'em', 'strong', 'sub', 'sup' and 'a definition */
em {
    font-style: italic;
}
strong {
    font-weight: bold;
}
sub {
    vertical-align: sub;
    font-size: smaller;
}
sup {
    vertical-align: super;
    font-size: smaller;
}
a {
    color: inherit !important;
}
/* # "tx_frontend" (Space befor/Space after Option) frame-element (FSC-content-element) default # */
/* frame-element basic definition */
.frame {
}
/* # "tx_frontend" (Border-Ruler Option) frame-element (FSC-content-element) default (frame-default) # */
/* frame-element 'default', 'ruler-before', 'ruler-after', 'indent', 'indent-left' and 'indent-right' definition */
.frame-default {
}
.frame-ruler-before:before {
    content: '';
    display: block;
    border-top: 1px solid rgba(0,0,0,0.25);
    margin-bottom: 2em;
}
.frame-ruler-after:after {
    content: '';
    display: block;
    border-bottom: 1px solid rgba(0,0,0,0.25);
    margin-top: 2em;
}
.frame-indent {
    margin-left: 15%;
    margin-right: 15%;
}
.frame-indent-left {
    margin-left: 33%;
}
.frame-indent-right {
    margin-right: 33%;
}
/* # "tx_frontend" (Layout Option) frame-element (FSC-content-element) default # */
/* frame-element 'default' definition */
.frame-layout-0 {
}
/* frame-element 'space-befor'/'space-after' - 'extra-small', 'small', 'medium', 'large' and 'extra-large' definition */
.frame-space-before-extra-small {
    margin-top: 1em;
}
.frame-space-before-small {
    margin-top: 2em;
}
.frame-space-before-medium {
    margin-top: 3em;
}
.frame-space-before-large {
    margin-top: 4em;
}
.frame-space-before-extra-large {
    margin-top: 5em;
}
.frame-space-after-extra-small {
    margin-bottom: 1em;
}
.frame-space-after-small {
    margin-bottom: 2em;
}
.frame-space-after-medium {
    margin-bottom: 3em;
}
.frame-space-after-large {
    margin-bottom: 4em;
}
.frame-space-after-extra-large {
    margin-bottom: 5em;
}
/* # "tx_frontend" Bullet (frame-type-buttels...) frame-element (FSC-content-element) default # */
/* frame-element 'ol', 'ul' and 'dl' definition */
ol, ol.ce-bullets, ul, ul.ce-bullets {
    display: block;
    list-style-position: outside;
    margin: 0 0 1em 0em;
    padding: 0 0 0 1em;
}
ol li, ol.ce-bullets li, ul li, ul.ce-bullets li  {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
}
ul, ul.ce-bullets-disc {
    list-style-type: disc;
}
ul.ce-bullets-circle {
    list-style-type: circle;
}
ul.ce-bullets-square {
    list-style-type: square;
}
ul.ce-bullets-right-triangle {
    margin: 0 0 1em 0;
    padding: 0 0 0 0;
    list-style-type: none;
}
ul.ce-bullets-right-triangle li {
    position: relative;
    padding-left: 1.25em;
}
ul.ce-bullets-right-triangle li::before {
    position: absolute;
    left: 0;
    top: 0;
    content: "\25b6";
}
ol.ce-bullets-numbers {
    margin: 0 0 1em 0;
    padding: 0 0 0 0;
    list-style-type: none;
}
ol.ce-bullets-numbers li {
    position: relative;
    counter-increment: step-counter;
    padding-left: 2em;
}
ol.ce-bullets-numbers li::before {
    position: absolute;
    left: 0;
    top: 0;
    content: counter(step-counter)".";
}
ol, ol.ce-bullets-decimal {
    list-style-type: decimal;
    margin: 0 0 1em 0;
    padding: 0 0 0 2em;
}
ol.ce-bullets-decimal-leading-zero {
    list-style-type: decimal-leading-zero;
    margin: 0 0 1em 0;
    padding: 0 0 0 2em;
}
ol.ce-bullets-lower-alpha {
    list-style-type: lower-alpha;
    margin: 0 0 1em 0;
    padding: 0 0 0 2em;
}
ol.ce-bullets-lower-roman {
    list-style-type: lower-roman;
    margin: 0 0 1em 0;
    padding: 0 0 0 4em;
}
ol.ce-bullets-upper-alpha {
    list-style-type: upper-alpha;
    margin: 0 0 1em 0;
    padding: 0 0 0 2.5em;
}
ol.ce-bullets-upper-roman {
    list-style-type: upper-roman;
    margin: 0 0 1em 0;
    padding: 0 0 0 5em;
}
dl, dl.ce-bullets, dt, dd {
    display: block;
}
dl, dl.ce-bullets {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
}
dl.ce-bullets dt {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
	font-weight: bold;
}
dl.ce-bullets dd {
    margin: 0 0 0 2em;
    padding: 0 0 0 0;
}
/* BUTTON (ce-button) definition */
.ce-button {
    cursor: pointer;
}


/* ###################
// TX_GRIDELEMENTS ###
// ################### */
/* ==================================================================================================== */
/* ### EXT tx_gridelements style ### */
/* # default styles for extension "tx_gridelements" # */
/* LAYOUTSTRUCTURE definition */
.one-one-full-column, .one-one-column, .one-half-column, .one-third-column, .two-third-column,
.three-fourth-column, .one-fourth-column, .one-fifth-column, .two-fifth-column, .three-fifth-column,
.four-fifth-column, .one-sixth-column, .five-sixth-column {
	position: relative;
	margin: 0;
	float: left;
}
.one-one-full-column {
    float: none;
	clear: right;
    margin-left: calc(((100% - 100vw) / 2) + (var(--scrollbar-width, 20px) /2));
    margin-right: calc(((100% - 100vw) / 2) + (var(--scrollbar-width, 20px) /2));
}
.one-one-column {
	width: 100%;
	margin-right: 0 !important;
	clear: right;
}
.one-half-column {
	width: 50%;
}
.one-third-column {
	width: 33.33%;
}
.two-third-column {
	width: 66.66%;
}
.one-fourth-column {
	width: 25%;
}
.three-fourth-column {
	width: 75%;
}
.one-fifth-column {
	width: 20%;
}
.two-fifth-column {
	width: 40%;
}
.three-fifth-column {
	width: 60%;
}
.four-fifth-column {
	width: 80%;
}
.one-sixth-column {
	width: 16.66%;
}
.five-sixth-column {
	width: 83.33%;
}
.last-column {
	margin-right: 0 !important;
	clear: right;
}


/* ###########
// TX_FORM ###
// ########### */
/* ==================================================================================================== */
/* ### EXT tx_form style ### */
/* ## RESET all ## */

/* ## MAIN definition ## */
/* div and label definition */
div.form div.steplist_none {
    display: none;
}
div.form div.steplist_smallline, div.form div.steplist_middleline, div.form div.steplist_bigline,
div.form div.steplist_smallnumbers, div.form div.steplist_middlenumbers, div.form div.steplist_bignumbers,
div.form div.steplist_smalllinenumbers, div.form div.steplist_middlelinenumbers,
div.form div.steplist_biglinenumbers {
    width: 100%;
}
div.form div.steplist-step {
    float: left;
}
div.form div.steplist-step p {
    text-align: center;
    margin: 0;
    padding: 0;
}
div.form div.steplist_smallline div.steplist-step div, div.form div.steplist_middleline div.steplist-step div, 
div.form div.steplist_bigline div.steplist-step div {
    display: none;
}

div.form--formfield100 div.form--input, div.grid-row, div.grid-row div.grid-column-12 {
    float: none;
    min-width: 100%;
    max-width: 100%;
}
div.form--formfield100 label.control-label {
    float: none;
    min-width: 100%;
    max-width: 100%;
}
div.form--formfieldright90 div.form--input {
    float: right;
    min-width: 90%;
    max-width: 90%;
}
div.form--formfieldright90 label.control-label {
    float: left;
    min-width: 10%;
    max-width: 10%;
}
div.form--formfieldright80 div.form--input {
    float: right;
    min-width: 80%;
    max-width: 80%;
}
div.form--formfieldright80 label.control-label {
    float: left;
    min-width: 20%;
    max-width: 20%;
}
div.form--formfieldright70 div.form--input {
    float: right;
    min-width: 70%;
    max-width: 70%;
}
div.form--formfieldright70 label.control-label {
    float: left;
    min-width: 30%;
    max-width: 30%;
}
div.form--formfieldright60 div.form--input {
    float: right;
    min-width: 60%;
    max-width: 60%;
}
div.form--formfieldright60 label.control-label {
    float: left;
    min-width: 40%;
    max-width: 40%;
}
div.form--formfieldright50 div.form--input {
    float: right;
    min-width: 50%;
    max-width: 50%;
}
div.form--formfieldright50 label.control-label {
    float: left;
    min-width: 50%;
    max-width: 50%;
}
div.form--formfieldright40 div.form--input {
    float: right;
    min-width: 40%;
    max-width: 40%;
}
div.form--formfieldright40 label.control-label {
    float: left;
    min-width: 60%;
    max-width: 60%;
}
div.form--formfieldright30 div.form--input {
    float: right;
    min-width: 30%;
    max-width: 30%;
}
div.form--formfieldright30 label.control-label {
    float: left;
    min-width: 70%;
    max-width: 70%;
}
div.form--formfieldright20 div.form--input {
    float: right;
    min-width: 20%;
    max-width: 20%;
}
div.form--formfieldright20 label.control-label {
    float: left;
    min-width: 80%;
    max-width: 80%;
}
div.form--formfieldright10 div.form--input {
    float: right;
    min-width: 10%;
    max-width: 10%;
}
div.form--formfieldright10 label.control-label {
    float: left;
    min-width: 90%;
    max-width: 90%;
}
span.labeltext {
    word-wrap: break-word;
}
div.form--input input {
    margin:0;
    padding:0;
    width: 100%;
}
div.text-control div.zip-control {
    float: left;
    /* 10px for margin-right */
    max-width: calc(22% - 10px);
}
div.text-control div.village-control {
    float: right;
    min-width: 78%;
    max-width: 78%;
}
div.grid-row div.grid-column-6 {
    float: left;
    min-width: 50%;
    max-width: 50%;    
}
div.grid-row div.grid-column-4 {
    float: left;
    min-width: 33%;
    max-width: 33%;
}
div.grid-row div.grid-column-3 {
    float: left;
    min-width: 25%;
    max-width: 25%;
}
div.grid-row div.grid-column-2 {
    float: left;
    min-width: 20%;
    max-width: 20%;
}

div.grid-row label.control-label {
    float: none;
    min-width: 100%;
    max-width: 100%;
}
div.form--formfieldright90 div.textarea-control, div.form--formfieldright90 div.fileupload-control,
div.form--formfieldright90 div.imageupload-control, 
div.form--formfieldright80 div.textarea-control, div.form--formfieldright80 div.fileupload-control,
div.form--formfieldright80 div.imageupload-control,
div.form--formfieldright70 div.textarea-control, div.form--formfieldright70 div.fileupload-control,
div.form--formfieldright70 div.imageupload-control,
div.form--formfieldright60 div.textarea-control, div.form--formfieldright60 div.fileupload-control,
div.form--formfieldright60 div.imageupload-control,
div.form--formfieldright50 div.textarea-control, div.form--formfieldright50 div.fileupload-control,
div.form--formfieldright50 div.imageupload-control,
div.form--formfieldright40 div.textarea-control, div.form--formfieldright40 div.fileupload-control,
div.form--formfieldright40 div.imageupload-control,
div.form--formfieldright30 div.textarea-control, div.form--formfieldright30 div.fileupload-control,
div.form--formfieldright30 div.imageupload-control,
div.form--formfieldright20 div.textarea-control, div.form--formfieldright20 div.fileupload-control,
div.form--formfieldright20 div.imageupload-control,
div.form--formfieldright10 div.textarea-control, div.form--formfieldright10 div.fileupload-control,
div.form--formfieldright10 div.imageupload-control,
div.grid-row label, div.grid-row div.form--input {
    float: none;
    min-width: 100%;
    max-width: 100%;
}
div.textarea-control textarea {
    width: calc(100% - 6px);
}
div.form-check {
    position: relative;
}
div.form-check input[type=checkbox] {
    position: absolute;
    float:right;
    opacity: 0;
    cursor: pointer;
    top:0.5em;
    left: 0.5em;
    max-width: 0.5em;
    z-index: 1;
    transform: scale(2.5);
    -ms-transform: scale(2.5);
    -moz-transform: scale(2.5);
    -webkit-transform: scale(2.5);
    -o-transform: scale(2.5);    
}
div.checkbox-control {
    position: absolute;
    cursor: pointer;
}
div.checkbox-control:after {
    position: absolute;
    content: '';
    margin: 0;
    padding: 0;
    left: 0;
    top: 0;
}
div.form-check input:checked ~ div.checkbox-control:after {
    content: '\2714';
}
div.checkboxlabeltext {
    margin-left: 2em;
}
div.radiobutton-control div.radio label > input[type='radio'] {
    display: none;
}
div.radiobutton-control div.radio label > input[type='radio'] + *::before {
    content: '';
    display: inline-block;
    vertical-align: bottom;
    width: 1em;
    height: 1em;
    border-radius: 50%;
}
div.fileupload-control input[type='file'], div.imageupload-control input[type='file'],
div.form--actions--button button.action-button {
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    font-size: inherit !important;
    font-family: inherit !important;
}
div.fileupload-control input[type='file']::file-selector-button, 
div.fileupload-control input[type='file']::-webkit-file-upload-button,
div.imageupload-control input[type='file']::file-selector-button,
div.imageupload-control input[type='file']::-webkit-file-upload-button,
div.form--actions--button button.action-button {
    margin:0;
    padding:0;
    border: 1px solid;
    width: auto !important;
    cursor: pointer;
}
div.singleselect-control, div.multiselect-control {
    position: relative;
}
div.singleselect-control select, div.multiselect-control select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border: none;
    outline: none;
    cursor: pointer;
}
div.singleselect-control:after {
    position: absolute;
    pointer-events: none;
}
div.singleselect-control select::-ms-expand {
    display: none;
}
div.singleselect-control select option, div.multiselect-control select option {
    font-size: inherit !important;
    color: inherit !important;
}
div.singleselect-control:after {
    position: absolute;
    pointer-events: none;
    padding: 0 0 0 0;
    content: '\203A';
    -webkit-transform:rotate(90deg);
    -moz-transform:rotate(90deg);
    -ms-transform:rotate(90deg);
    transform:rotate(90deg);
    top: 0.06em;
    right: 0.1em;
    font-size: 3em;
}
div.hidden-control {
    display: none;
}
div.freecapcaptcha-captcha-control,
div.freecapcaptcha-captcha-control img.tx-srfreecap-image {
    margin:0;
    padding:0;
    border:0;
}
div.freecapcaptcha-captcha-control button.ce-button {
    background: transparent url('../Icons/reload.svg') no-repeat;
    background-size: 30px 30px;
    background-position: center center; 
    margin: 0 0 0 10px;
    padding: 0;
    width: 40px !important;
    height: 40px !important;
    cursor: pointer;
}
fieldset.form-group {
    margin: 0 0 0 0 !important;
    padding: 0 0 0 0 !important;
    border: 0 !important;
    background: transparent;
}
fieldset.form-group legend {
    margin: 0 0 0 0 !important;
    padding: 0 10px 0 10px;
    padding: 0 0 0 0 !important;
    border: 0 !important;
    background: transparent;
}
div.error-help-block-message, div.description-help-block-message {
    float: none;
    min-width: 100%;
    max-width: 100%;
}
/* ## DEFAULT definition ## */
div.form div.steplist_smallline div.steplist-step, 
div.form div.steplist_smalllinenumbers div.steplist-step {
    border-bottom: 2px solid rgb(0,100,176);
}
div.form div.steplist_middleline div.steplist-step,
div.form div.steplist_middlelinenumbers div.steplist-step {
    border-bottom: 4px solid rgb(0,100,176);
}
div.form div.steplist_bigline div.steplist-step,
div.form div.steplist_biglinenumbers div.steplist-step {
    border-bottom: 6px solid rgb(0,100,176);
}
div.form div.steplist_smallnumbers div.steplist-step div,
div.form div.steplist_smalllinenumbers div.steplist-step div {
    margin: 0 auto 0 auto;
    padding: 2px;
    height: calc(0.65em + 4px);
    width: calc(0.65em + 4px);
    background: rgb(0,100,176);
    border-radius: 50%;
}
div.form div.steplist_smalllinenumbers div.steplist-step div {
    margin: 0 auto 4px auto;
}
div.form div.steplist_smallnumbers div.steplist-step div p,
div.form div.steplist_smalllinenumbers div.steplist-step div p {
    text-align: center;
    font-size: 0.65em;
    font-weight: normal;
    color: rgb(249,249,249) !important;
}
div.form div.steplist_middlenumbers div.steplist-step div,
div.form div.steplist_middlelinenumbers div.steplist-step div {
    margin: 0 auto 0 auto;
    padding: 4px;
    height: calc(1em + 4px);
    width: calc(1em + 4px);
    background: rgb(0,100,176);
    border-radius: 50%;
}
div.form div.steplist_middlelinenumbers div.steplist-step div {
    margin: 0 auto 4px auto;
}
div.form div.steplist_middlenumbers div.steplist-step div p,
div.form div.steplist_middlelinenumbers div.steplist-step div p {
    text-align: center;
    font-size: 1em;
    font-weight: bold;
    color: rgb(249,249,249) !important;
}
div.form div.steplist_bignumbers div.steplist-step div,
div.form div.steplist_biglinenumbers div.steplist-step div {
    margin: 0 auto 0 auto;
    padding: 5px;
    height: calc(1.2em + 5px);
    width: calc(1.2em + 5px);
    background: rgb(0,100,176);
    border-radius: 50%;
}
div.form div.steplist_biglinenumbers div.steplist-step div {
    margin: 0 auto 5px auto;
}
div.form div.steplist_bignumbers div.steplist-step div p,
div.form div.steplist_biglinenumbers div.steplist-step div p {
    text-align: center;
    font-size: 1.2em;
    font-weight: bold;
    color: rgb(249,249,249) !important;
}
div.form div.step-deactivated {
    opacity: 0.2;
}
div.form--formfieldright90 span.labeltext, div.form--formfieldright80 span.labeltext,
div.form--formfieldright70 span.labeltext, div.form--formfieldright60 span.labeltext,
div.form--formfieldright50 span.labeltext, div.form--formfieldright40 span.labeltext,
div.form--formfieldright30 span.labeltext, div.form--formfieldright20 span.labeltext,
div.form--formfieldright10 span.labeltext {
    padding-right: 10px;
/* Options
    word-wrap: break-word;
    font-size: 0.8em;
*/
}
div.form--formfield100 label.control-label {
    font-size: 0.75em;    
}
span.required {
    color: red;
    font-size: 0.75em;
}
div.form--input input, div.form--input textarea, div.checkbox-control,
div.singleselect-control select, div.multiselect-control select {
    margin:0;
    padding: 0.25em 0.5em 0.25em 0.5em;
    border: 2px solid rgb(200,200,200);
    border-radius: 4px 4px 4px 4px;
    width: calc(100% - (2*0.5em) - (2*2px));
    font-family: inherit;
/* Options
    font-size: inherit;
*/
}
div.textarea-control {
/* Options
    margin-top: 5px;
*/
}
div.checkbox-control {
    width: 0.5em !important;
    height: 1em !important;
    background: rgb(249,249,249);
}
div.checkbox-control:hover {
    background: rgb(249,249,249);
}
div.checkbox-control:after {
    font-size: 1.25em;
    margin: 0.2em 0 0 0.2em;
    padding: 0;
}
div.form-check input:checked ~ div.checkbox-control:after {
/* Options
    content: '\2714';
*/
}
div.checkboxlabeltext {
    padding-top:0.1em;
/* Options
    margin-left: 2em;
*/
}
div.radiobutton-control div.radio label > input[type='radio'] + *::before {
    width: 1.25em;
    height: 1.25em;
    margin-right: 0.5em;
    margin-bottom: 3px;
    border-style: solid;
    border-width: 0.1em;
    border-width: 2px;
    border-color: rgb(200,200,200);
}
div.radiobutton-control div.radio label > input[type='radio']:checked + *::before {
    border-color: rgb(90,90,90);
    background: radial-gradient(rgb(90,90,90) 0%, rgb(90,90,90) 40%, transparent 50%, transparent 100%);
/* Alternative
    border-color: rgb(90,90,90);
    background: radial-gradient(transparent 0%, transparent 25%, rgb(90,90,90) 30%, rgb(90,90,90) 100%);
*/
}
div.radiobutton-control div.radio label > input[type='radio']:checked + * {
/* Options
    color: rgb(90,90,90);
*/
}
div.radiobutton-control div.radio label span {
    vertical-align: 0.3em;
}
div.singleselect-control select, div.multiselect-control select {
    padding: 0.25em 0.25em 0.25em 0.25em !important;
    width: 100% !important;
    background: rgb(255,255,255);
}
div.singleselect-control:after {
/* Options
    content: '\203A';
    -webkit-transform:rotate(90deg);
    -moz-transform:rotate(90deg);
    -ms-transform:rotate(90deg);
    transform:rotate(90deg);
    top: 0.06em;
    right: 0.1em;
    font-size: 3em;
    color: inherit !important;
*/
}
div.singleselect-control select {
    color: rgb(90,90,90) !important;
}
div.multiselect-control select option[value=''] {
    background: rgb(200,200,200);
}                                                           
div.multiselect-control select option:hover {
    background: rgb(220,220,230);
}

div.error-help-block-message span.error {
    color: red;
    font-size: 0.75em;
}
div.description-help-block-message span.help-block {
    color: rgb(140,140,140);
    font-size: 0.75em;
}
div.freecapcaptcha-captcha-control img.tx-srfreecap-image {
    margin: 4px 0 0 0;
    border: 2px solid rgb(200,200,200);
    border-radius: 4px 4px 4px 4px;
/* Options
    padding: 2px;
*/
}
div.form-toolbar div.button-control {
    float: left;
}
/* Gemeinsame definition auch für ce-button und ce-button a */
div.form--actions--button button.action-button,
div.fileupload-control input[type='file']::file-selector-button,
div.fileupload-control input[type='file']::-webkit-file-upload-button,
div.imageupload-control input[type='file']::file-selector-button,
div.imageupload-control input[type='file']::-webkit-file-upload-button {
    margin-right: 0.5em !important;
    padding: 0.25em 0.5em 0.25em 0.5em !important;
    border: 2px solid rgb(200,200,200) !important;
    border-radius: 5px 5px 5px 5px !important;
    color: rgb(249,249,249) !important;
    background: rgb(0,100,176);
/* Options
    font-size: inherit;
    font-family: inherit;
*/
}
div.freecapcaptcha-captcha-control button.ce-button {
    margin-left: 20px;
    background-size: 33px auto;
    padding-right: 33px;
}
div.form--actions--button button.action-primary {
/* Options
    background: red !important;    
*/
}
div.form--actions--button button.action-previous {
/* Options
    background: red !important;
*/
}
div.form--actions--button button.action-next {
/* Options
    background: red !important;
*/
}
div.form--actions--button button.action-cancel {
/* Options
    background: gray !important;
*/
}
div.fileupload-control input[type='file']::file-selector-button:hover,
div.imageupload-control input[type='file']::file-selector-button:hover,
div.form--actions--button button.action-button:hover {
    opacity: 0.8;
/* Options
    background: rgb(102,162,208);
*/
}
div.fileupload-control input[type='file']::-webkit-file-upload-button:hover,
div.imageupload-control input[type='file']::-webkit-file-upload-button:hover {
    opacity: 0.8;
/* Options
    background: rgb(102,162,208);
*/
}
div.form-group, div.form-group + div.clearlayer {
    margin-bottom: 0.2em !important;
}
div.grid-row div.grid-column-6:first-child div.form-group {
    padding-left:0 !important;
    padding-right: 5px !important;
}
div.grid-row div.grid-column-6:last-child div.form-group {
    padding-left: 5px !important;
    padding-right:0 !important;
}
div.grid-row div.grid-column-4 div.form-group,
div.grid-row div.grid-column-3 div.form-group,
div.grid-row div.grid-column-2 div.form-group {
    padding-left: 3px !important;
    padding-right: 3px !important;
}
div.grid-row div.grid-column-4:first-child div.form-group,
div.grid-row div.grid-column-3:first-child div.form-group,
div.grid-row div.grid-column-2:nth-child(5n+1) div.form-group {
    padding-left:0 !important;
    padding-right: 6px !important;
}
div.grid-row div.grid-column-4:last-child div.form-group,
div.grid-row div.grid-column-3:last-child div.form-group,
div.grid-row div.grid-column-2:nth-child(5n+5) div.form-group {
    padding-left: 6px !important;
    padding-right:0 !important;
}
fieldset.fieldset-control {
    margin: 10px 0 10px 0 !important;
    padding: 0 10px 10px 10px !important;
    border: 1px solid rgb(200,200,200) !important;
/* Options
    margin: 0 0 0 0 !important;
    background: transparent;
*/
}
fieldset.fieldset-control legend {
    margin: 0 0 0 0 !important;
    padding: 0 10px 0 10px !important;
    background: transparent;
    font-size: 0.75em;
/* Options
    color: rgb(200,200,200);
    border: 1px solid rgb(200,200,200) !important;
*/
}
fieldset.summarypage-control {
    margin: 10px 0 10px 0 !important;
    padding: 0 10px 0 10px !important;
    border: 1px solid rgb(0,94,170) !important;
/* Options
    margin: 0 0 0 0 !important;
    background: transparent;
*/
}
fieldset.summarypage-control legend {
    margin: 0 0 0 0 !important;
    padding: 0 10px 0 10px !important;
    background: transparent;
    font-size: 0.75em;
    color: rgb(0,94,170);
/* Options
    border: 1px solid rgb(200,200,200) !important;
*/
}
fieldset.summarypage-control div.table-responsive {
    margin: 0 0 0 0 !important;
    padding: 0 0 0 0 !important;
/* Options
    background: transparent;
*/
}
fieldset.summarypage-control div.table-responsive table.table tr {
/* Options
    background: transparent;
*/
}
fieldset.summarypage-control div.table-responsive table.table td,
fieldset.summarypage-control div.table-responsive table.table td ul li {
    padding: 0 0 5px 0 !important;
    font-size: 0.75em;
    font-family: inherit;
/* Options
    font-size: inherit;
    background: transparent;
*/
}
fieldset.summarypage-control div.table-responsive table.table td ul {
    list-style: none;
    text-decoration: none;
    padding: 0 !important;    
}
fieldset.summarypage-control div.table-responsive table.table td.summary-table-first-col {
    padding-right: 20px !important;
}
fieldset.summarypage-control div.table-responsive table.table tr:last-child td {
    padding: 0 0 0 0 !important;
}


/* ================================= */
/* formhandler: BEGIN */
/* div ce-formfield... definition */
.ce-mailform-field {
    clear: both;
}
.ce-formfieldleft {
    float: left;
}
.ce-formfieldtop {
    float: none;
    min-width: 100%;
    max-width: 100%;
}
.ce-formfieldright {
    float: right;
}
.ce-formfield20 {
    min-width: 20%;
    max-width: 20%;
}
.ce-formfield30 {
    min-width: 30%;
    max-width: 30%;
}
.ce-formfield40 {
    min-width: 40%;
    max-width: 40%;
}
.ce-formfield50 {
    min-width: 50%;
    max-width: 50%;
}
.ce-formfield60 {
    min-width: 60%;
    max-width: 60%;
}
.ce-formfield70 {
    min-width: 70%;
    max-width: 70%;
}
.ce-formfield80 {
    min-width: 80%;
}
.ce-formfield90 {
    min-width: 90%;
    max-width: 90%;
}
.ce-formfield100 {
    float: none;
    min-width: 100%;
    max-width: 100%;
}
/* CHECKBOX (ce-formfielcheckbox) definition */
.ce-formfielcheckbox {
    position: relative;
}
.ce-formfielcheckbox input[type=checkbox] {
    position: absolute;
    float:right;
    opacity: 0;
    cursor: pointer;
    top:0.5em;
    left: 0.5em;
    max-width: 0.5em;
    z-index: 1;
    transform: scale(2.5);
    -ms-transform: scale(2.5);
    -moz-transform: scale(2.5);
    -webkit-transform: scale(2.5);
    -o-transform: scale(2.5);
}
.ce-checkbox {
    position: relative;
    cursor: pointer;
}
.ce-checkbox:after {
    position: absolute;
    content: '';
    margin: 0;
    padding: 0;
    left: 0;
    top: 0;
}
/* RADIOBUTTON (ce-formfieldlabelradio) definition */
.ce-formfieldlabelradio {
    display: block;
    position: relative;
    cursor: pointer;
    margin: 0 0 0 0 !important;
    padding: 0 0 0 0 !important;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.ce-formfieldlabelradio .labeltext {
    margin: 0 !important;
    padding:0 !important;
}
.ce-formfieldlabelradio input[type=radio] {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    top:0;
    right:50%;
    margin: 0.3em 0 0 0 !important;
    z-index: 1;
    transform: scale(2.5);
    -ms-transform: scale(2.5);
    -moz-transform: scale(2.5);
    -webkit-transform: scale(2.5);
    -o-transform: scale(2.5);
}
.labeltextradio {
    position: absolute;
}
.labeltextradio:after {
    content: "";
    position: absolute;
    display: none;
}
.ce-formfieldlabelradio input:checked ~ .labeltextradio:after {
    display: block;
}
/* SINGLESECT (singleselect) definition */
.ce-mailform-field .singleselect {
    position: relative;
}
.ce-mailform-field select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border: none;
    outline: none;
    cursor: pointer;
}
.ce-mailform-field .singleselect:after {
    position: absolute;
    pointer-events: none;
}
.ce-mailform-field select::-ms-expand {
    display: none;
}
.ce-mailform-field select option {
    font-size: inherit !important;
    color: inherit !important;
}
/* INPUT (type=color) definition */
/* Only Firefox */
@-moz-document url-prefix() {
    .ce-mailform-field input[type=color] {
        width: 100% !important;
    }
}
/* BUTTON (ce-button) definition */
.ce-button {
    cursor: pointer;
}
/* formhandler: END */
/* ================================= */


/* #####################
// TX_INDEXED_SEARCH ###
// ##################### */
/* ====================================================================================================
/* ### INDEXEDSEARCHSTYLE ### */
/* *** RESET all *** */
.Tx-Indexedsearch, .Tx-Indexedsearch form, .Tx-Indexedsearch form fieldset, .Tx-Indexedsearch form label,
.Tx-Indexedsearch p, .Tx-Indexedsearch h1, .Tx-Indexedsearch h2, .Tx-Indexedsearch h3, .Tx-Indexedsearch h4,
.Tx-Indexedsearch h5, .Tx-Indexedsearch h6 {
	border: 0;
    margin: 0;
    outline: 0;
	padding: 0;
}
.Tx-Indexedsearch .tx-indexedsearch-searchbox, .Tx-Indexedsearch .tx-indexedsearch-rules {
    clear: both;
}
form#tx_indexedsearch {
}
form#tx_indexedsearch .tx-indexedsearch-hidden-fields {
    display: none;
}
.tx-indexedsearch-searchbox .ce-fieldset {
    margin: 0 0 0 0 !important;
    padding: 0 0 0 0 !important;
    background: transparent;
    border: 0 !important;
}
.ce-indexedsearch-field {
    margin: 0 0 0 0;
    padding: 5px 0 5px 0;
    background: transparent;
    border: 0;
    clear: both;
}
.ce-indexedsearch-field .singleselect {
    position: relative;
}
.ce-indexedsearch-field select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    border: none;
    outline: none;
    cursor: pointer;
}
.ce-indexedsearch-field select::-ms-expand {
    display: none;
}
.ce-indexedsearch-field select option {
    font-size: inherit !important;
    color: inherit !important;
}
.tx-indexedsearch-rules-toggleboxTitle {
    display: none;
}
.tx-indexedsearch-rules-toggleboxTitle + label {
}
.tx-indexedsearch-rules-toggleboxTitle + label + .tx-indexedsearch-rules-toogleboxContent {
    display: none;
}
.tx-indexedsearch-rules-toggleboxTitle:checked + label + .tx-indexedsearch-rules-toogleboxContent {
    display: block;
}
.tx-indexedsearch-rules-toggleboxTitle + label:before {
    display: block;
    float: left;
}
.tx-indexedsearch-rules-toggleboxTitle:checked + label:before {
}
.tx-indexedsearch-rules-toggleboxTitle + label:after {
    float: right;
    cursor: pointer;
}
ul.tx-indexedsearch-browsebox {
    margin: 0;
    border: 0;
    padding: 0;
    list-style: none;
    text-decoration: none;
    background: transparent;
	display: block;
}
ul.tx-indexedsearch-browsebox li {
    text-decoration: none;
	display: block;
    float: left;
    padding: 5px;
    margin: 0;
    margin-right: 5px;
    cursor: pointer;
}
ul.tx-indexedsearch-browsebox li a {
    text-decoration: none;
}
.tx-indexedsearch-sectionhead {
}
h5.tx-indexedsearch-title {
}


/* ##############
// HEADERMENU ###
// ############## */
/* ==================================================================================================== */
/* ### HEADERMENUSTYLE ### */
#HEADERMENU {
    background: transparent;
    margin: 0;
    padding: 0;
}
#headermenu-top, #headermenu-page, #headermenu-lang, #headermenu-felogin,
.headermenu-block, .close-headermenu, .open-headermenu-page, .open-headermenu-lang,
nav#menu, nav#menu a, nav#menu ul#servicemenu, nav#menu ul#mainmenu, nav#menu ul#langmenu,
nav#menu ul.navigationsub1, nav#menu ul.navigationsub2, nav#menu ul.navigationsub3, nav#menu ul.navigationsub4 {
    margin: 0;
    border: 0;
    padding: 0;
    list-style: none;
    text-decoration: none;
    background: transparent;
}
#headermenu-page, #headermenu-lang, #headermenu-felogin {
    position: absolute;
    top: 0;
    width: 100%;
    overflow: hidden;
    z-index: 10200;
}
#headermenu-page:not(:target), #headermenu-lang:not(:target), #headermenu-felogin:not(:target) {
    z-index: 1;
    height: 0;
}
#headermenu-page:target .close-headermenu, #headermenu-lang:target .close-headermenu, , #headermenu-felogin:target .close-headermenu {
    display: block;
}


/* ############
// PAGEMENU ###
// ############ */
/* ==================================================================================================== */
/* ### PAGEMENUSTYLE ### */
#PAGEMENU {
    background: transparent;
    margin: 0;
    padding: 0;
}
.pagemenu-top, #pagemenu-page,
#PAGEMENU nav#menu, #PAGEMENU nav#menu a, #PAGEMENU nav#menu ul#servicemenu, #PAGEMENU nav#menu ul#mainmenu,
#PAGEMENU nav#menu ul.navigationsub1, #PAGEMENU nav#menu ul.navigationsub2, #PAGEMENU nav#menu ul.navigationsub3, #PAGEMENU nav#menu ul.navigationsub4 {
    margin: 0;
    border: 0;
    padding: 0;
    list-style: none;
    text-decoration: none;
    background: transparent;
}
.pagemenu-top > .pagemenuTabButton {
    display: block;
}
.pagemenu-top > input {
    display: none;
}
.pagemenu-top > input:checked + label + .pagemenuTabContent {
    display: block;
    position: relative;
    margin: 0;
    padding: 0;
    border:0;
}
.pagemenu-top > .pagemenuTabContent {
    display: none;
}
.pagemenu-top {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.pagemenu-top > .pagemenuTabButton {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    cursor: pointer;
}
.pagemenu-top > .pagemenuTabContent {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    width: 100%;
}
.pagemenu-top > .pagemenuTabButton {
    z-index: 2;
}

.pagemenuTabContent > .pagemenuContent {
    position: absolute;
    margin: 0;
    padding: 0;
}


/* ########
// NAVI ###
// ######## */
/* ==================================================================================================== */
/* ### NAVISTYLE ### */
/* ## GENERAL ## */
#LANGNAVI, div.langnavi-outer, div.langnavi-inner, div.langnavi-content,
#QUICKNAVI, div.quicknavi-outer, div.quicknavi-inner, div.quicknavi-content,
#MAINNAVI, div.mainnavi-outer, div.mainnavi-inner, div.mainnavi-content,
#SERVICENAVI, div.servicenavi-outer, div.servicenavi-inner, div.servicenavi-content,
#COUNTRYNAVI, div.countrynavi-outer, div.countrynavi-inner, div.countrynavi-content,
#LOGINNAVI, div.loginnavi-outer, div.loginnavi-inner, div.loginnavi-content,
#LOGINBOX,
ul.navigation, ul.navigationsub1, ul.navigationsub2, ul.navigationsub3, ul.navigationsub4,
ul.navigation li.navigation {
    margin: 0;
    border: 0;
    padding: 0;
    background: transparent;
}
nav#langnaviNav, nav#quicknaviNav, nav#mainnaviNav, nav#servicenaviNav, nav#countrynaviNav, nav#countryMenu,
nav#loginnaviNav {
    border: 0;
    padding: 0;
    background: transparent;
}
#LANGNAVI {
    z-index: 11100;
}
#LANGNAVI ul.navigation {
    z-index: 11150;
}
#QUICKNAVI {
    z-index: 11200;
}
#QUICKNAVI ul.navigation {
    z-index: 11250;
}
#MAINNAVI {
    z-index: 11400;
}
#MAINNAVI ul.navigation {
    z-index: 11450;
}
#SERVICENAVI {
    z-index: 11500;
}
#SERVICENAVI ul.navigation {
    z-index: 11550;
}
#COUNTRYNAVI {
    z-index: 11600;
}
#COUNTRYNAVI ul.navigation {
    z-index: 11650;
}
#LOGINNAVI {
    z-index: 11700;
}
#LOGINNAVI ul.navigation {
    z-index: 11750;
}
#loginnavi-loginbox {
    z-index: 11780;
}
div.langnavi-outer, div.quicknavi-outer, div.mainnavi-outer, div.servicenavi-outer, div.countrynavi-outer, 
div.loginnavi-outer {
    display: flex;
    flex-flow: column;
    height: 100%;
}
div.langnavi-content, div.quicknavi-content, div.mainnavi-content, div.servicenavi-content, div.countrynavi-content, 
div.loginnavi-content {
    display: flex;
}
nav.navileft {
    margin: 0 auto 0 0;
}
nav.naviright {
    margin: 0 0 0 auto;
}
nav.navicenter {
    margin: 0 auto 0 auto;
    float: right;
    left: -50%;
}
ul.navigation, ul.navigationsub1, ul.navigationsub2, ul.navigationsub3, ul.navigationsub4,
ul.navigation li.navigation {
    list-style: none;
    text-decoration: none;
    background: transparent;
	position: relative;
	display: block;
}
ul.navileft li {
	float: left;
}
ul.naviright li {
	float: left;
}
ul.navicenter {
    left: 50%;
}
ul.navicenter li {
    float: left;
    left: -50%;
}
ul.naviverticalleft {
/*	float: left;*/
}
ul.naviverticalright {
/*    float: right;*/
}
li.navigation a {
    text-decoration: none;
}
nav#langnaviNav li.navigation {
	z-index: 11160;
}
nav#langnaviNav li:hover {
	z-index: 11165;
}
nav#quicknaviNav li.navigation {
	z-index: 11260;
}
nav#quicknaviNav li:hover {
	z-index: 11265;
}
nav#mainnaviNav li.navigation {
	z-index: 11460;
}
nav#mainnaviNav li.sub:hover {
	z-index: 11465;
}
nav#servicenaviNav li.navigation {
	z-index: 11560;
}
nav#servicenaviNav li.sub:hover {
	z-index: 11565;
}
nav#countrynaviNav li.navigation, nav#countryMenu li.navigationsub1 {
	z-index: 11660;
}
nav#countrynaviNav li:hover, nav#countryMenu li.navigation:hover {
	z-index: 11665;
}
nav#loginnaviNav li.navigation {
	z-index: 11760;
}
nav#loginnaviNav li:hover {
	z-index: 11765;
}
nav#mainnaviNav ul.navigationsub1, nav#mainnaviNav ul.navigationsub2,
nav#mainnaviNav ul.navigationsub3, nav#mainnaviNav ul.navigationsub4,
nav#servicenaviNav ul.navigationsub1, nav#servicenaviNav ul.navigationsub2,
nav#servicenaviNav ul.navigationsub3, nav#servicenaviNav ul.navigationsub4,
nav#countrynaviNav ul.navigationsub1, nav#countryMenu ul.navigationsub1 {
	position: absolute;
	display: none;
}
nav#mainnaviNav li.last ul.navigationsub1, nav#mainnaviNav li.last ul.navigationsub2,
nav#mainnaviNav li.last ul.navigationsub3, nav#mainnaviNav li.last ul.navigationsub4,
nav#servicenaviNav li.last ul.navigationsub1, nav#servicenaviNav li.last ul.navigationsub2,
nav#servicenaviNav li.last ul.navigationsub3, nav#servicenaviNav li.last ul.navigationsub4 {
    right:0;
}
nav#mainnaviNav ul.navigation li.sub:hover ul.navigationsub1,
nav#mainnaviNav ul.navigation ul.navigationsub1 li.sub:hover ul.navigationsub2,
nav#mainnaviNav ul.navigation ul.navigationsub1 ul.navigationsub2 li.sub:hover ul.navigationsub3,
nav#mainnaviNav ul.navigation ul.navigationsub1 ul.navigationsub2 ul.navigationsub3 li.sub:hover ul.navigationsub4,
nav#servicenaviNav ul.navigation li.sub:hover ul.navigationsub1,
nav#servicenaviNav ul.navigation ul.navigationsub1 li.sub:hover ul.navigationsub2,
nav#servicenaviNav ul.navigation ul.navigationsub1 ul.navigationsub2 li.sub:hover ul.navigationsub3,
nav#servicenaviNav ul.navigation ul.navigationsub1 ul.navigationsub2 ul.navigationsub3 li.sub:hover ul.navigationsub4,
nav#countrynaviNav ul.navigation li.sub:hover ul.navigationsub1,
nav#countryMenu ul.navigation li.sub:hover ul.navigationsub1 {
	display: block;
}
/* ## LOGINNAVISTYLE ## */
#LOGINNAVI.loginnavi-floatleft, #LOGINNAVI.loginnavi-floatfullleft {
    position: relative;
    float: left;
    margin: 0;
}
#LOGINNAVI.loginnavi-floatfullleft {
    margin-left: calc(((var(--pageWidth) - 100vw) / 2) + (var(--scrollbar-width, 20px) /2));
}
#LOGINNAVI.loginnavi-floatright, #LOGINNAVI.loginnavi-floatfullright {
    position: relative;
    float: right;
    margin: 0;
}
#LOGINNAVI.loginnavi-floatfullright {
    margin-right: calc(((var(--pageWidth) - 100vw) / 2) + (var(--scrollbar-width, 50px) /2));
}
/* ## LOGINBOXSTYLE## */
#loginnavi-loginbox {
    position: absolute;
    top: 0 !important;
    margin: 0;
    padding: 0;
}
#loginnavi-loginbox:not(:target) {
    display: none;
}
#loginnavi-loginbox:target {
    display: block;
}
.loginnavi-floatleft + #loginnavi-loginbox, .loginnavi-floatfullleft + #loginnavi-loginbox {
    left: 0 !important;
}
.loginnavi-floatright + #loginnavi-loginbox, .loginnavi-floatfullright + #loginnavi-loginbox {
    right: 0 !important;
}
.loginnavi-floatfullleft + #loginnavi-loginbox {
    margin-left: calc(((var(--pageWidth) - 100vw) / 2) + (var(--scrollbar-width, 20px) /2));
}
.loginnavi-floatfullright + #loginnavi-loginbox {
    margin-right: calc(((var(--pageWidth) - 100vw) / 2) + (var(--scrollbar-width, 20px) /2));
}
#loginnavi-loginbox {
    width: 250px !important;
    max-width: 100% !important;
}
.loginnavi-floatleft + #loginnavi-loginbox.loginnavi-loginbox-fullwidth,
.loginnavi-floatright + #loginnavi-loginbox.loginnavi-loginbox-fullwidth {
    width: 100% !important;
}
.loginnavi-floatfullleft + #loginnavi-loginbox.loginnavi-loginbox-fullwidth,
.loginnavi-floatfullright + #loginnavi-loginbox.loginnavi-loginbox-fullwidth {
    width: calc((100vw - var(--pageWidth)) + var(--pageWidth) - var(--scrollbar-width, 20px)) !important;
    max-width: calc((100vw - var(--pageWidth)) + var(--pageWidth) - var(--scrollbar-width, 20px)) !important;
}
.loginnavi-floatleft + #loginnavi-loginbox .loginnavi-loginbox-close::after,
.loginnavi-floatfullleft + #loginnavi-loginbox .loginnavi-loginbox-close::after {
    margin: 0 auto 10px 0;
}
#loginnavi-loginbox .loginnavi-loginbox-block {
    margin: 0;
    padding: 0;
    border: 0;
}
#loginnavi-loginbox .loginnavi-loginbox-close::after {
    display: flex;
    padding: 0;
    content: '';
    width: 30px;
    height: 30px;
    background:url(../Img/headermenu-close_silver.png) no-repeat;
    background-size: 30px 30px;
}
.loginnavi-floatright + #loginnavi-loginbox .loginnavi-loginbox-close::after,
.loginnavi-floatfullright + #loginnavi-loginbox .loginnavi-loginbox-close::after { 
    margin: 0 0 10px auto;
}
/* # FELOGINFORMSTYLE # */
.felogin_form {
}
.felogin_form .ce-fieldset {
    margin: 0 0 0 0 !important;
    padding: 0 0 0 0 !important;
    background: transparent;
    border: 0 !important;
}
.felogin_form .ce-fieldset legend {
    margin: 0 0 0 0;
    padding: 0 10px 0 10px;
    background: transparent;
    border: 0;
}
.felogin_form .ce-felogin-field {
    margin: 0 0 0 0;
    padding: 5px 0 5px 0;
    background: transparent;
    border: 0;
}
.felogin_form .ce-checkbox {
    margin:0;
    padding: 0.25em 0.5em 0.25em 0.5em;
    border: 2px solid rgb(200,200,200);
    border-radius: 4px 4px 4px 4px;
    width: calc(100% - (2*0.5em) - (2*2px));
    font-size: inherit;
    font-family: inherit;
    width: 0.5em !important;
    height: 1em !important;
    background: transparent;
}
.felogin_form .ce-checkboxtext {
    margin-left: 2em;
    padding-top:0;
}
.felogin_form .ce-checkbox:after {
    font-size: 1.25em;
    margin: 0.25em 0 0 0.2em;
    padding: 0;
}
.felogin_form .ce-formfielcheckbox input:checked ~ .ce-checkbox:after {
    content: '\2714';
}
.felogin_form .ce-formfielcheckboxleft {
    float: left;
}
.felogin_form .felogin-hidden {
    display: none;
}
.ce-felogin-field label, .loginnavi-felogin-left .ce-checkboxtext p, .loginnavi-felogin-right .ce-checkboxtext p {
    font-size: 0.75em !important;
    border: 0 !important;
}
.loginnavi-felogin-left .ce-checkboxtext p, .loginnavi-felogin-right .ce-checkboxtext p {
    padding: 7px 0 0 0 !important;
}
.ce-felogin-field input[type=text], .ce-felogin-field input[type=password] {
    padding: 0.25em 0.5em 0.25em calc(0.5em + 20px);
    border: 0;
    border-bottom: 2px solid rgb(200,200,200);
    width: calc(100% - (2*0.5em) - (2*2px) - 20px);
    font-size: inherit;
    font-family: inherit;
    text-align: left;
}
.ce-felogin-field input[id=user], .ce-felogin-field input[id=tx_felogin_pi1-forgot-email] {
    background: transparent;
}
.ce-felogin-field input[id=pass], .ce-felogin-field input[id=tx_felogin_pi1-newpassword1], .ce-felogin-field input[id=tx_felogin_pi1-newpassword2] {
    background: transparent;
}

