body{
    font-family: 'Univers Next W01 Light';
    color: #4a4a4a;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
}

a{
    color: #4a4a4a;
    text-decoration: none;
    transition: all 0.5s ease;
}

a:hover{
    color: #000;
    text-decoration: none;
}

.margin-right {
    margin-right: 1rem;
}

#main a:not(.button){
    font-weight: bold;
    text-decoration: underline;
}

h1{
    font-size: 46px;
    line-height: 60px;
    text-align: center;
    font-family: "UniversNW01-230BThin";
}

h2{
    font-size: 24px;
    line-height: 28px;
    font-family: "Univers Next W01 Medium";
}

input[type=radio], input[type=checkbox]{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: inline-block;
	position: relative;
	background-color: #FFF;
	height: 18px;
	width: 18px;
	border: 1px solid #4a4a4a;
	cursor: pointer;
	outline: none;
	margin-top: 1px;
    float: left;
    margin-top: 3px;
    margin-right: 10px;
}

.actions input[type=checkbox] {
    float: unset;
    margin: .75em 1em;
}

input[type=radio]{
	border-radius: 9px;
}

input[type=radio]:hover, input[type=checkbox]:hover{
    border-color: #4a4a4a;
}

input[type=radio]:hover::before, input[type=checkbox]:hover::before{
	background-color: #4a4a4a;
}

input[type=radio]::before, input[type=checkbox]::before{
	position: absolute;
	content: '';
	background-color: #FFF;;
	width: 10px;
	height: 10px;
	top: 3px;
	left: 3px;
}

input[type=radio]::before{
	border-radius: 5px;
}

input[type=radio]:checked, input[type=checkbox]:checked{
    border-color: #003671;
}

input[type=radio]:checked::before, input[type=checkbox]:checked::before{
	background-color: #003671;
}

input[type=radio] ~ label, input[type=checkbox] ~ label{
    cursor: pointer;
}

input[type=radio].spreaded-radio-no-label + label{
    display: none;
}

input[type=radio]+label, input[type=checkbox]+label, table.radio input[type=radio]+label, table.radio input[type=checkbox]+label {
    padding-left: 28px;
    display: block;
}

#main input[type=radio] ~ label.inline{
	display: inline;
	padding-left:0;
}

input[type=text], input[type=password], select, textarea{
    border-width: 0 0 1px 0;
    border-style: solid;
    border-color: #878787;
    width: 100%;
    outline: 0;
    font-size: 22px;
 	-webkit-appearance: none;
 	-moz-appearance: none;
    appearance: none;
    padding: 6px 8px;
}

input[type=text], input[type=password], select{
    height: 40px;
}

input[type=text]:disabled{
	border-bottom-color:#DDD;
	background-color:#F8F8F8;
}

.select-wrapper.inline {
    display: inline-block;
}

.select-wrapper {
    display: block;
}


input[type=text].inline.interjacent, .select-wrapper.inline.interjacent select{
	margin-left: 15px;
}

input[type=text].inline.interjacent + input[type=text].inline.interjacent,
input[type=text].inline.interjacent + .select-wrapper.inline.interjacent select,
.select-wrapper.inline.interjacent + input[type=text].inline.interjacent,
.select-wrapper.inline.interjacent + .select-wrapper.inline.interjacent select{
	margin-left: 0;
}


input[type=text].small, .select-wrapper.small select {
     font-size: 14px;
     padding-right: 22px;
     height: 34px;
}

.select-wrapper.small::after{
    width: 12px;
    right: 7px;
}

input[type=text].inline, .select-wrapper.inline select {
    width: auto;
    display: inline-block;
}

.select-wrapper.inline select{
    margin-right: 0px;
}

.select-wrapper.inline{
    margin-right: 10px;
}

textarea{
    width: 100%;
    height: 100px;
    resize:vertical;
}

:not(.input-container-placeholder) > input[type=text], input[type=password], textarea{
    background-color: #F8F8F8;
}

input[type=text]:focus, input[type=password]:focus, textarea:focus{
    border-color: #4a4a4a;
    background: #dee5ec;
}

.input-container {
    margin-bottom: 2rem;
}

.input-container label, .label{
    display: block;
    font-family: 'Univers Next W01 Medium';
}

.input-container label{
    font-size: 14px;
    line-height: 24px;
}

.input-container.submit.submit-left {
    text-align: left;
}

.input-container.submit {
    text-align: right;
}

.input-container.submit .button {
    margin-left: 15px;
}

.input-container.submit.submit-left .button {
    margin-left: 0;
    margin-right: 15px;
}

.input-container-placeholder {
    position: relative;
}

.input-container-placeholder label{
    font-family: 'Univers Next W01 Light';
    font-size: 24px;
    color: #878787;
    line-height: 30px;
    position: absolute;
    top: 31px;
    left: 0;
    transition: all 0.5s ease;
    pointer-events: none;
}

.input-container-placeholder input:focus + label, .input-container-placeholder input:not(:placeholder-shown) + label{
    padding-left: 8px;
    font-family: 'Univers Next W01 Medium';
    font-size: 14px;
    line-height: 24px;
    top: 10px;
}

.input-container-placeholder input:focus + label{
    color: #00245d;
}

.input-container-placeholder input{
    padding-top: 38px;
    height: 66px;
    transition: all 0.5s ease;
}

#main .info {
    font-size: 1.2rem;
}

#main #depositAccountValidFromDesc {
    font-size: 14px;
    font-family: 'Univers Next W01 Medium';
}

label.inline{
    display: inline;
}

label.normal{
    font-family: 'Univers Next W01 Light';
}

table.radio td {
    padding-right: 30px;
}

#header{
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    width: 100%;
    z-index: 11;
    background: #FFF;
}

#header .logo{
    padding: 30px 0 12px 30px;
    display: inline-block;
}

#header .logo img{
    max-width: 100%;
    max-height: 57px;
}

#header-right{
    width: 70%;
    float: right;
}

#header-right-mobile{
    float: right;
}

.nav-trigger{
	width: 36px;
	display: inline-block;
	margin: 23px 15px 10px;
}

.nav-trigger .bar{
    background-color: #696969;
    width: 100%;
    height: 1px;
	display: block;
	margin-bottom: 8px;
}

#header-meta{
    padding-top: 10px;
    padding-right: 30px;
    text-align: right;
}

#header-meta .user, #header-meta .timeout{
    display: inline-block;
}

#header-meta .user{
    padding-right: 2rem;
}

#header-meta .timeout{
    padding-right: 3rem;
}

#nav-main-wrapper{
    padding-top: 11px;
}

#nav-main{
    font-size: 22px;
    float: right;
}

#nav-main li > span,
#nav-main li > a {
    color: #4a4a4a;
    transition: color .15s linear, border .15s linear;
    line-height: 28px;
    text-decoration: none;
}

#nav-main li > span{
    cursor: default;
}

#nav-main a:hover,
#nav-main ul.level_1 > li:hover > span,
#nav-main ul.level_1 > li:focus > span,
#nav-main ul.level_1 > li:focus-within > span {
    color: #003671;
}

#nav-main li.highlighted > span{
    cursor: pointer;
}

#nav-main ul.level_1 > li.highlighted > span > a {
    color: #003671;
}

#nav-main ul.level_1{
    margin: 0;
    padding: 0;
}

#nav-main ul.level_1 > li{
    float: left;
    padding: 0 15px 6px;
    list-style-type: none;
    position: relative;
}

#nav-main ul.level_2{
    display: none;
    position: absolute;
    top: 100%;
    left: -10px;
    transition: all 0.3s ease-in-out;
    padding: 25px 43px 25px 25px;
    box-shadow: 1px 5px 34px -7px rgba(0,0,0,.46);
    background-color: #FFF;
    z-index: 10;
    width: 300px;
    font-size: 0.8em;
}

#nav-main ul.level_1 > li.last > ul.level_2{
    left: auto;
    right: -10px;
    width: auto;
}

#nav-main ul.level_1 li:hover > ul.level_2,
#nav-main ul.level_1 li:focus > ul.level_2,
#nav-main ul.level_1 li:focus-within > ul.level_2 {
    display: block;
}

#nav-main a{
    position: relative;
}

#nav-main a::before {
    content: "";
    position: absolute;
    left: 50%;
    transform: translate(-50%);
    width: 0;
    height: 2px;
    background: #003671;
    bottom: 2px;
    transition: width .3s;
}

#nav-main a:hover::before{
    width: 100%;
}

#nav-main ul.level_2 a{
    position: relative;
    padding: 5px 0;
    vertical-align: middle;
    display: inline-block;
}

#content{
    padding-top: 130px;
}


#footer{
    padding-top: 50px;
}

#footer-content{
    border-top: 1px solid #707070;
    padding: 24px 0;
}

#footer-meta{
    text-align: center;
    padding: 14px 0;
}

#nav-footer{
    text-align: center;
    padding: 12px 0;
}

#nav-footer ul{
    margin: 0;
    padding: 0;
}

#nav-footer ul li{
    margin: 0;
    padding: 0 10px;
    display: inline-block;
    list-style: none
}

#footer-contact{
    text-align: center;
    padding: 40px 0 42px;
}

#footer-contact .title{
    font-family: "Univers Next W01 Medium";
}

#footer-contact ul{
    margin: 0;
    padding: 0;
}

#footer-contact ul li{
    margin: 0;
    padding: 0 8px;
    display: inline-block;
    list-style: none;
    position: relative;
}

#footer-contact ul li::after{
    position: absolute;
    content: '|';
    right: -4px;
    top: 0;
}

#footer-contact ul li:last-child::after{
    display: none;
}

.button, .button:focus{
    padding: 10px;
    display: inline-block;
    font-size: 16px;
    line-height: 18px;
    border-radius: 4px;
    outline: 1px solid #000000;
    transition: all 0.5s ease;
    border-color: #4a4a4a;
    border-style: solid;
    position: relative;
    color: #4a4a4a;
    background-color: #FFF;
    text-decoration: none;
}

.button.filled{
    width: 100%;
}

.button:not(.button-icon):not(.fa){
    font-family: 'Univers Next W01 Medium';
    padding: 10px 30px;
    margin-bottom: 20px;
}

.button-icon{
    background-color: #003671;
    color: #FFF;
    border-width: 0;
    transition: all 0.5s ease;
}

.button-icon:hover{
    color: #FFF;
    background-color: #6374a5;
}

.button-icon-small{
    padding: 2px 6px;
    font-size: 1.1rem;
}

.button-primary, .button-primary:focus{
    background: linear-gradient(90deg, #6374a5, #6374a5 50%, #003671 51%, #003671);
    color: #FFF;
    border-width: 0;
    padding: 11px 36px 11px 36px;
}

.button-primary:disabled{
    background: #6374a5;
    color: #BBB;
}

.button-secondary:disabled, .button-back:disabled{
    color: #999;
    border-color: #BBB;
}

.button-secondary:not(:disabled):hover, .button-back:not(:disabled):hover{
    border-color: #7d8389;
    color:#7d8389;
    stroke: #4c4c4c;
    fill: #4c4c4c;
}

.button-primary{
    background-size: 205% 200%;
    background-position: 100% 0%;
    transition: all 0.5s ease;
}

.button-primary:not(:disabled):hover{
    color: #FFF;
    background-position: 0%;
}

.button-small, .button-small:not(.button-icon):not(.fa){
    padding: 8px 22px;
    font-size: 16px;
    line-height: 18px;
}

table.table .actions .button, table.table .actions .button-icon {
    margin: 0 0 3px 3px;
}

table.table{
    width: 100%;
}

table.table, .data-listing, .fieldset{
    margin-bottom: 2rem;
}


table.table td, table.table th, .data-listing-heading, .data-listing-body > .row, .fieldset-heading, .form-heading{
    padding-bottom: 0.5rem;
    padding-top: 0.7rem;
}

table.table td, table.table th{
    border-bottom: 1px solid #878787;
}

.data-listing-heading, .data-listing-body > .row{
    border-bottom: 1px solid #DDDDDD;
}

table tr:first-child:last-child td:first-child:last-child{
    border-bottom: 0;
}

table.table:not(.list-table) td, table.table:not(.list-table) th{
    padding-left: 8px;
    padding-right: 8px;
}

table.table:not(.list-table) td:not(:first-child), table.table:not(.list-table) th:not(:first-child){
    border-left: 1em solid #FFF;
}

table.table td.amount, table.table th.amount, table.table td.actions, table.table th.actions {
    text-align: right;
}

table.table th, table.table.list-table td {
    vertical-align: middle;
}


table.table:not(.list-table) th{
    background-color: #e3e5f0;
    border-bottom-width: 2px;
}

table.list-table th, .data-listing-heading, .fieldset-heading, .form-heading{
    padding-top: 1.6rem;
}

table.table th, .data-listing-heading, .fieldset-heading, .form-heading{
    font-weight: bold;
}

.data-listing .data-listing-body {
    padding: 0 15px;
}

.data-listing .label {
    text-align: right;
    margin-bottom: 0;
}

.steps{
    counter-reset:step;
    margin-bottom: 3rem;
}
.steps .step .number{
    display: none;
}

.steps .step{
    counter-increment: step;
    position: relative;
}

.steps .step::before{
    content: '';
    width: 100%;
    height: 1px;
    background-color: #003671;
    position: absolute;
    top: 17px;
}

.steps .step.done .title::before{
    content: '';
	background-image:url("/OnlineBankingWebfrontend/javax.faces.resource/img/check.png.xhtml?loc=");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 1.2rem auto;
}

.steps .row{
    margin:0;
}

.steps .row > *{
    padding: 0;
    display: inline-block;
    width: auto;
}

.steps .row > *:last-child .step::before{
    display: none;
}

.steps .step .title{
    position: relative;
    padding-top: 40px;
    font-size: 1.3rem;
    font-weight: bold;
    padding-right: 40px;
}

.steps .step .title::before{
    content:counter(step);
    border: 1px solid #333;
    display: inline-block;
    width: 34px;
    height: 34px;
    line-height: 33px;
    font-size: 1.3rem;
    font-weight: bold;
    border-radius:17px;
    text-align: center;
    position: absolute;
    background-color: #FFF;
    top: 0;
    left: 0;
}


.steps .step.current .title::before{
    background: #003671;
    color: #FFF;
}

.panel{
    background-color: #ebebed;
    padding: 30px;
    margin-bottom: 3rem;
}

.panel .panel-heading {
    font-family: 'Univers Next W01 Medium';
    margin-bottom: 0.7em;
    color: #003671;
}

.panel-body:last-child, .panel-body:last-child .input-container:last-child:not(:first-child), .panel-body > :last-child .input-container:last-child .button:last-child, .panel-body p:last-child{
    margin-bottom: 0;
}

.select-wrapper{
	position: relative;
}

.select-wrapper::after{
	content:'';
	background-image:url("/OnlineBankingWebfrontend/javax.faces.resource/img/arrow-down.png.xhtml?loc=");
	position: absolute;
    z-index: 5;
    right: 0;
    top: 0;
    bottom:0;
    width: 36px;
    background-size: 22px;
    background-repeat: no-repeat;
    background-position: center;
    pointer-events: none;
}

select{
    cursor: pointer;
    padding-right: 36px;
    padding-left: 0;
    line-height: 20px;
    font-size: 15px;
    font-family: 'Courier New', 'Courier', monospace;
}

.panel select{
    padding-left: 8px;
}

p, .paragraph{
	margin-bottom: 16px;
	display: block;
}

ul.listing, ol.listing{
	padding-left: 25px;
}

ul.listing li, ol.listing li{
	padding-left: 5px;
	margin-bottom: 3px;
}

ul.listing li{
	list-style-type: square;
	padding-left: 0.4em;
	margin-bottom: 0.25em;
	color: #7A868C;
}

.edocNewConversation {
    list-style-type: square;
    pedding-left: 1rem
}

ul.listing li ul{
	padding-left: 20px;
}

ol.listing li{
	list-style: decimal;
}

#main .introduction{
    font-size: 20px;
    color: #777;
    line-height: 28px;
}

.pagination input, .month-filter input{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: 0;
	background-color: transparent;
	border: none;
	color: #AAA;
	margin: 0 5px 10px;
}

.pagination input.current, .month-filter input.current{
	color: #003671;
	font-weight: bold;
}

.pagination input:hover, .month-filter input:hover{
    color: #003671;
}

.pagination{
	padding-top: 15px;
	padding-bottom: 30px;
	text-align: center;
}

.month-filter{
	padding-top: 15px;
	padding-bottom: 15px;
	text-align:right;
}

.month-filter .year-container{
	display: inline-block;
	padding: 0 15px 0 30px;
}

.month-filter .year-container.last-year{
	color: #D9DBDC;
}

.error, .debug {
    color: #be0f34;
    font-weight: bold;
}

#security-info {
    text-align: center;
    padding-top: 50px;
    font-size: 1.4rem;
}

#security-info a {
    font-size: 16px;
}

#security-info .label{
    display: inline;
}

#products .interest-rates .label {
    vertical-align: top;
    display: inline;
    float: left;
    margin-right: 0.3rem;
    font-family: 'Univers Next W01 Light';
}

#products .interest-rates ul {
    display: inline-block;
}

@media (max-width: 1199px){
    #nav-main{
        font-size: 19px;
        transition: all 0.5s ease;
    }

    #nav-main ul.level_1 > li{
        padding-left: 12px;
        padding-right: 12px;
    }
}

@media (max-width: 991px){
    #header{
        transition: all 0.5s ease;
    }

    #header .logo{
        transition: all 0.5s ease;
        padding: 10px 0 10px 15px;
    }

    #header .logo img{
        max-width: 220px;
        max-height: 46px;
    }

    #mno{
        position: relative;
    }

    #mNav{
		position: fixed;
		top: 0;
		z-index: 50;
		right: 0;
		width: 50%;
		-webkit-overflow-scrolling: touch;
		-ms-overflow-style: -ms-autohiding-scrollbar;
		-webkit-backface-visibility: hidden;
		overflow-x: hidden;
		overflow-y: auto;

		-webkit-transform: translate(100%, 0);
		-moz-transform: translate(100%, 0);
		-ms-transform: translate(100%, 0);
		-o-transform: translate(100%, 0);
		transform: translate(100%,0);

		background-color: #FFF;
		box-shadow: 0 5px 15px rgb(0 0 0 / 20%);
		padding: 18px 0 18px 18px;
	}

	#mNav #user{
	    padding-bottom: 5px;
	}

	#mno:target #mNav{
        position: absolute;
        -webkit-transform: translate(0, 0);
        -moz-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        -o-transform: translate(0, 0);
        transform: translate(0, 0);
        overflow: visible;
		-webkit-transition: -webkit-transform 500ms ease;
		-moz-transition: -moz-transform 500ms ease;
		-ms-transition: -ms-transform 500ms ease;
		-o-transition: -o-transform 500ms ease;
		transition: transform 500ms ease;
    }

    #mNav .close-trigger{
		width: 20px;
		height: 20px;
		position: relative;
		display: inline-block;
		float: right;
		margin-right: 30px;
	}

	#mNav .close-trigger:after, #mNav .close-trigger:before{
		content: '';
		height: 24px;
		border-left: 1px solid #696969;
		position: absolute;
		left: 10px;
	}

	#mNav .close-trigger:after{
		transform: rotate(45deg);
	}

	#mNav .close-trigger:before{
		transform: rotate(-45deg);
	}

	#mNav h2, #mNav .menu{
	    font-family: 'Univers Next W01 Light';
	    font-size: 22px;
    }

	#mNav h2{
	    padding: 5px 0;
	    line-height: 28px;
	}

	#mNav ul.level_2{
	    padding: 10px 15px;
	    background-color: #F7F7F7;
	}

	#mNav ul.level_2 li{
	    padding: 5px 0;
	}
}
