﻿@import url(fideuram-icon/style.css);
@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,600,300,700,800);
@charset "utf-8";


/* == LG DEVICES == */

a:focus-visible,
li:focus-visible,
button:focus-visible,
select:focus-visible,
input:focus-visible{
    outline-offset: 5px;
    outline: #000 solid 2px;
    box-shadow: 0 0 0 2px #fff, 0 0 0 5px yellow;
    border-radius: 5px;
}

body {
	font-family: Arial,"Open Sans",Helvetica,sans-serif;
	font-size: 16px;
	color: #3d3c3c;
	-webkit-font-smoothing: antialiased; /*overflow-x: hidden;*/
}

#header {
	font-family: "Open Sans";
}

label {
	margin-bottom: 7px;
	margin-top: 7px;
}

.loader {
	text-align: center;
	margin: 100px 0;
	display: none;
}

/* VERTICAL ALIGN CONTENT */
.outerContainer {
	display: table;
	height: inherit;
	overflow: hidden;
	width: inherit;
}

.innerContainer {
	display: table-cell;
	margin: 0 auto;
	text-align: center;
	vertical-align: middle;
	width: 100%;
	height: inherit;
}

.element {
}

.dispInlineBlock {
	display: inline-block;
}

.maxW {
	width: 100%;
	max-width: 1024px;
	margin: auto;
}

.center {
	text-align: center;
}

.clear {
	clear: both;
	width: 0;
	height: 0;
	font-size: 0;
}

.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

.titleBox {
	font-size: 20px;
	margin-bottom: 16px;
	display: block;
}

.top {
	display: table;
	width: 100%;
}

	.top .tbCell {
		display: table-cell;
		width: 50%;
		vertical-align: middle;
		padding: 10px 0;
	}

		.top .tbCell.logoFideuram {
			text-align: left;
		}

		.top .tbCell.logoSanpaolo {
			text-align: right;
		}

.contentFooter {
	background-color: #e2e2e2;
	margin: 40px 0 0 0;
}

	.contentFooter img {
		margin: auto;
		width: auto;
		display: block;
		padding: 10px;
	}

.separatore {
	width: 100%;
	height: 1px;
	background-color: #e5e5e5;
	margin: 20px 0;
}

.contentTop .block {
	margin-bottom: 0;
	padding-bottom: 0;
}

.thx .contentTop .contentTitle {
	margin-top: 0;
}

.contentTop .contentTitle h1 {
	margin: 0 0 24px;
}

	.contentTop .contentTitle h1.Title {
		font-family: "Open Sans", Helvetica, sans-serif;
		font-size: 30px;
	}

.thx .contentTop .contentTitle h1 {
	display: block;
	text-align: center;
	font-size: 2.5em;
	font-family: "Open Sans", Helvetica, sans-serif;
	font-weight: 600;
	color: #3d3c3c;
	margin: 0 0 25px;
}

.contentTop .contentTitle .noteBox {
	font-size: 1.02em;
	font-weight: 900;
	padding-bottom: 34px;
}

.contentTop .contentTitle .subTitle {
	font-size: 1.02em;
}

.thx .contentTop .contentTitle .subTitle {
	display: block;
	text-align: center;
	font-size: 21px;
	font-family: 'Trebuchet MS', sans-serif;
	font-weight: 200;
}

input.input {
	height: 45px;
	border: 1px solid #cdcdcd;
	display: inline-block;
	width: 100%;
	padding: 0 10px;
}

.datiIdentitainput.input {
	margin-bottom: 15px;
}

.bkg {
	background-color: #f4f4f4;
	margin: 10px 0;
}

span {
	display: block;
}

.Title {
	font-family: "Open Sans", Helvetica, sans-serif;
}

.page_cta_green {
	background-color: #2B8804;
	color: #ffffff !important;
	text-align: center;
	font-size: 13px;
	text-transform: uppercase;
	padding: 14px 10px;
	width: 170px;
	display: block;
	margin: 0px auto;
	text-decoration: none;	
}
.page_cta_green:hover {
	background-color: #323232;
	text-decoration: none;
}

span.text {
	font-family: "Open Sans", Helvetica, sans-serif;
	font-size: 16px;
	color: #3d3c3c;
	text-align: center;
	line-height: 28px;
}

span.titleBlock, .Title {
	font-family: "Open Sans", Helvetica, sans-serif;
	font-size: 1.88em;
	margin-bottom: 20px;
	font-weight: 600;
}

.Title {
	font-size: 2.5em;
}

span.subTitle {
	margin-bottom: 20px;
}

span.note {
	display: block;
	text-align: center;
	margin-top: 0;
}

.titleBlockContent {
	padding: 0 23px;
}

.block {
	padding: 0 16px;
}

	.block .bkg {
		padding: 16px;
	}

	.block .row {
		margin: 0 -15px;
	}

		.block .row > div {
			padding: 0 15px;
		}

		.block .row.field-row {
			margin-bottom: 20px;
		}

			.block .row.field-row.attachment {
				margin-bottom: 10px;
			}

				.block .row.field-row.attachment label.tbCell {
					margin: 0;
				}

		.block .row.check {
			padding: 0;
		}

		.block .row.noPadding {
			padding: 0;
		}

		.block .row .col.single {
			display: block;
		}

.thx .block .row .col.single {
	border: 1px solid #cdcdcd;
	padding: 20px 30px;
	text-align: center;
	margin: 50px auto;
	float: none;
}

.block .row .col.single .identiTitle {
	font-family: 'Trebuchet MS', sans-serif;
	font-size: 16px;
	color: #3d3c3c;
	line-height: 28px;
}

.block .row .col.single .identiCode {
	font-family: "Open Sans", Helvetica, sans-serif;
	font-size: 24px;
	color: #3d3c3c;
}

.block.user-type {
	margin: 10px 0 40px;
}

	.block.user-type .field > label {
		width: auto;
		padding-right: 40px;
		float: none;
		display: inline-block;
		margin: 0;
		line-height: 20px;
	}

.block.user-type-default {
	display: none;
}

.block.person {
	display: none;
}

.block.society {
	display: none;
}

.block .row.text-label {
	margin: 0 0 20px;
}

	.block .row.text-label .note {
		margin: 0;
	}

.block.legale {
	display: none;
}

	.block.legale .field.verify-field input {
		max-width: 261px;
	}

	.block.legale .legale-delegato-fields {
		display: none;
	}

	.block.legale .mail-fields {
		display: none;
	}

		.block.legale .mail-fields .altro-fields {
			display: none;
		}

	.block.legale .private-bankers-fields {
		display: none;
	}

	.block.legale .allegato-field {
		display: none;
	}

.block .private-bankers-fields .field-row {
	margin-bottom: 0;
}

.block.legale .private-bankers-fields .verify-code {
	text-align: center;
}

.block.legale .private-bankers-fields .centred-fields {
	display: inline-block;
}

.block.legale .private-bankers-fields .field.NetCode {
	float: left;
	margin-right: 15px;
}

.block.legale .private-bankers-fields .field.PbCode {
	float: left;
	margin-right: 15px;
}

	.block.legale .private-bankers-fields .field.PbCode input {
		width: 80px;
		text-align: center;
		display: inline-block;
	}

.block.legale .private-bankers-fields .field.verify-field {
	float: left;
}

.block.legale .private-bankers-fields .error-container {
	text-align: center;
}

.block.legale .private-bankers-fields .field.verify-field {
	display: none;
}

.block.legale .private-bankers-fields .field label {
	text-align: left;
}

.block.legale .private-bankers-fields .field .field-validation-error {
	text-align: left;
}

.field {
	display: block;
	box-sizing: border-box;
}

	.field:after {
		visibility: hidden;
		display: block;
		font-size: 0;
		content: " ";
		clear: both;
		height: 0;
	}

	.field.bkg {
		background-color: #f4f4f4;
	}

	.field label {
		display: block;
		line-height: 20px;
		padding-right: 10px;
		white-space: normal;
		font-size: 16px;
		font-weight: 200;
	}

		.field label.control--checkbox {
			width: auto;
			line-height: 20px;
		}

.cf.field label {
	line-height: 20px;
}

.tipoRichiedente.field label {
	line-height: 20px;
	width: 40%;
}

.field.date .select-container {
	display: inline-block;
	float: left;
}

	.field.date .select-container.aaaa {
		float: right;
	}

.field.date .customSelect.gg {
	width: 80px;
	margin-right: 65px;
}

.field.date .customSelect.mm {
	width: 80px;
}

.field.date .customSelect.aaaa {
	width: 100px;
}

.field textarea {
	width: 70%;
	border: 1px solid #cdcdcd;
	resize: none;
	padding: 5px;
	margin-top: 10px;
}

.field.bank-account > div {
	float: left;
}

.field.bank-account .select-container.cc-one {
	width: 85px;
}

.field.bank-account > div.slash {
	margin: 0 10px;
	position: relative;
	left: 0;
	top: 13px;
}

.field.bank-account > div span {
	display: block;
}

.field.bank-account input.cc-one {
	display: inline-block;
	width: 80px;
	text-align: center;
}

.field.bank-account input.cc-two {
	display: inline-block;
	width: 100px;
	text-align: center;
}

.verify-btn {
	border-radius: 0;
	border: 0;
	height: 45px;
	width: 100px;
	background-color: #2b8804;
	color: #fff;
	text-transform: uppercase;
	font-weight: 600;
	display: inline-block;
	float: right;
	margin-left: 15px;
	opacity: 0.35;
}
.verify-btn:hover:not([disabled]){
	background-color: #323232;
}

.verify-btn-mailcell {
	border-radius: 0;
	border: 0;
	height: 45px;
	width: 100px;
	background-color: #2b8804;
	color: #fff;
	text-transform: uppercase;
	font-weight: 600;
	display: inline-block;
	margin-left: 15px;
	opacity: 0.35;
}
.verify-btn-mailcell:hover:not([disabled]),
.verify-btn-mailcell:focus:not([disabled]){
	background-color: #323232;
}

.field.verify-field input {
	max-width: 280px;
}

.delegato-mail-fields {
	display: none;
}

.control {
	display: block;
	position: relative;
	padding-left: 30px;
	cursor: pointer;
	font-size: 18px;
}

	.control input {
		position: absolute;
		z-index: -1;
		opacity: 0;
	}

.control__indicator {
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -10px;
	height: 20px;
	width: 20px;
	background: #FFF;
	border: 1px solid #cdcdcd;
}

.control--radio .control__indicator {
	border-radius: 50%;
}

.control:hover input ~ .control__indicator, .control input:focus-visible ~ .control__indicator {
	background: #ccc;
    outline: none !important;     
    border-radius: 10px !important;
    box-shadow: 0 0 0 3px #ffdf23, 0 0 0 6px #fff, 0 0 0 8px #000 !important;     
}

.control input:checked ~ .control__indicator {
	background: #2b8804;
}

	.control input:checked ~ .control__indicator.radio {
		background: #ffffff;
	}

.control__indicator:after {
	content: '';
	position: absolute;
	display: none;
}

.control input:checked ~ .control__indicator:after {
	display: block;
}

.control--checkbox .control__indicator:after {
	left: 8px;
	top: 4px;
	width: 3px;
	height: 8px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}

.radio {
	margin-top: 0;
	margin-bottom: 0;
}

.control--checkbox .control__indicator.radio:after {
	left: 4px;
	top: 4px;
	width: 10px;
	height: 10px;
	background-color: #8e8e8e;
	transform: none;
	border: none;
}

.control--checkbox input:disabled ~ .control__indicator:after {
	border-color: #fff;
}

.control--radio .control__indicator:after {
	left: 7px;
	top: 7px;
	height: 6px;
	width: 6px;
	border-radius: 50%;
	background: #fff;
}

.control--radio input:disabled ~ .control__indicator:after {
	background: #FFF;
}

.field-container.center-content.argument-type .field > div, .field-container.center-content .field > label {
	float: left;
}

	.field-container.center-content.argument-type .field > div label.control--checkbox {
		float: left;
		margin-right: 30px;
	}

		.field-container.center-content.argument-type .field > div label.control--checkbox:last-child {
			margin-right: 0;
		}

		.field-container.center-content.argument-type .field > div label.control--checkbox .control__indicator {
			position: relative;
			float: right;
			margin-left: 10px;
			top: 0;
			margin-top: 0;
		}

	.field-container.center-content.argument-type .field > div label br {
		display: none;
	}

.customSelect {
	display: block;
	border: 1px solid #ccc;
	height: 48px;
	position: relative;	
	background-color: #FFF;
	text-align: center;
}

	.customSelect select {
		width: 100%;
		position: absolute;
		left: 0;
		top: 0;
		z-index: 2;
		display: block;
		-webkit-appearance: none;
		-moz-appearance: none;
		text-indent: 1px;		
		background: transparent;
		padding: 0 30px 0 6px;
		border: 0;
		height: 46px;
		cursor: pointer;
		text-align: center;
		border: 1px solid #ccc;
	}
	.customSelect:hover {
		border-color: #000;
	}
	.customSelect select.input-validation-error,
	.customSelect select[aria-invalid="true"]
	{
		border: 1px solid #f21212;
	}

		.customSelect select option {
			text-align: center;
		}

	.customSelect:after {
		position: absolute;
		z-index: 1;
		font-family: 'fideuram-icon';
		font-style: normal;
		font-weight: normal;
		font-variant: normal;
		text-transform: none;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		content: "\e900";
		right: 0;
		width: 30px;
		height: 45px;
		top: 0;
		color: #3d3c3c;
		text-align: center;
		line-height: 45px;
	}

#MainContent_Recaptcha1 {
	display: inline-block;
	margin: 40px 0;
}

.btnNextContent {
	margin: 40px 0;
}

.contentBtnUpload {
	display: table;
}

	.contentBtnUpload .inputBtnCustom {
		background-color: #FFF;
		color: #cdcdcd;
		padding: 3px 30px;
		text-transform: uppercase;
		box-sizing: border-box;
		font-size: 1em;
		font-weight: 200;
		text-decoration: none;
		border-radius: 0;
		border: 1px solid #cdcdcd;
		width: 15%;
	}

	.contentBtnUpload .textBtn {
		font-size: 12px;
		font-family: 'Trebuchet MS', sans-serif;
		font-weight: 100;
	}

	.contentBtnUpload .tbCell {
		display: table-cell;
	}

.textLoadFile {
	font-size: 12px;
	font-family: 'Trebuchet MS', sans-serif;
	font-weight: 100;
}

.inputBtnCustom {
	position: relative;
	padding: 3px 20px 3px 20px;
	display: inline-block;
	border: 1px solid #cdcdcd;
	overflow: hidden;
}

	.inputBtnCustom.save {
		background-color: #2b8804;
	}

	.inputBtnCustom input.inputBtn {
		position: absolute;
		top: 0;
		right: 0;
		margin: 0;
		padding: 0;
		font-size: 20px;
		opacity: 0;
		filter: alpha(opacity=0);
		z-index: 1;
		cursor: pointer;
	}

	.inputBtnCustom span.inputText {
		text-align: center;
	}

.save.inputBtnCustom span.inputText {
	color: #FFF;
}

.visual {
	margin-bottom: 40px;
}


.btn {
	background-color: #FFF;
	color: #cdcdcd;
	padding: 5px 30px;
	text-transform: uppercase;
	box-sizing: border-box;
	font-size: 1em;
	font-weight: 200;
	text-decoration: none;
	border-radius: 0;
	border: 1px solid #cdcdcd;
}

	.btn:hover, .btn:visited, .btn:link {
		color: #cdcdcd;
	}

	.btn.next {
		position: relative;
		padding: 10px 50px 10px 30px;
		background-color: #2b8804;
		color: #FFF;
	}
	.btn.next:hover:not([disabled]),
	.btn.next:focus:not([disabled]){
    background-color: #323232;
}
		.btn.next:after {
			position: absolute;
			z-index: 1;
			font-family: 'fideuram-icon';
			font-style: normal;
			font-weight: normal;
			font-variant: normal;
			text-transform: none;
			-webkit-font-smoothing: antialiased;
			-moz-osx-font-smoothing: grayscale;
			content: "\e903";
			right: 15px;
			width: 30px;
			height: 38px;
			top: 0;
			color: #FFF;
			text-align: center;
			line-height: 38px;
		}

.noPadding {
	padding: 0;
}

.inputfile {
	width: 0.1px;
	height: 0.1px;
	opacity: 0;
	overflow: hidden;
	position: absolute;
	z-index: -1;
	height: 0;
}

	.inputfile + label {
		display: inline-block;
		cursor: pointer;
		background-color: #FFF;
		color: #cdcdcd;
		padding: 3px 30px;
		box-sizing: border-box;
		font-size: 1em;
		font-weight: 200;
		text-decoration: none;
		border-radius: 0;
		border: 1px solid #cdcdcd;
	}

		.inputfile:focus + label, .inputfile + label:hover {
			background-color: #2b8804;
			color: #FFF;
		}

	.inputfile:focus + label {
		outline: 1px dotted #000;
		outline: -webkit-focus-ring-color auto 5px;
	}

/* form steps */
span.note {
	margin: 30px 0 0;
}

.contentForm {
	padding: 50px 0 0;
}

	.contentForm.step-2 {
		padding-top: 20px;
	}

.button-block {
	padding: 60px 0;
}

.step-forward-error-message {
	display: none;
	text-align: center;
	margin-top: 30px;
}

.cf-error {
	display: none;
}

.specificare-container {
	display: none;
}

.captcha.center > div {
	display: inline-block;
	padding-top: 20px;
}

label.file-selected {
	background-color: #2b8804;
	color: #fff;
}

.field input.province-field {
	width: 62.5%;
}

.verify-field .loader {
	margin: 0;
	float: right;
	position: relative;
	left: 0;
	top: 7px;
	width: 100px;
}



/* STEP 2 */
.field-container {
	text-align: left;
}

	.field-container .field > label {
		display: block;
		margin-right: 40px;
		width: 100%;
		line-height: 20px;
	}

	.field-container .field > div label.control--checkbox {
		line-height: 20px;
		margin-right: 40px;
		width: auto;
	}

	.field-container .field textarea {
		margin-top: 0;
	}

.subTitle.selection {
	padding-top: 10px;
}

.field-checkbox-row {
	padding-top: 0px;
}

.field-container.center-content {
	text-align: center;
}

	.field-container.center-content .field {
		display: inline-block;
	}

		.field-container.center-content .field > label {
			display: inline-block;
			width: auto;
		}

		.field-container.center-content .field > div {
			display: inline-block;
		}

			.field-container.center-content .field > div label.control--checkbox {
				width: auto;
				line-height: 20px;
			}

.step-2 .field textarea {
	width: 70%;
	height: 150px;
}

.step-2 .altro-field {
	padding-top: 10px;
	margin-top: 10px;
}

/* checkbox list field */
.field-container .field.checkbox-list {
	border-bottom: 1px solid #f4f4f4;
	padding: 0 0 10px;
	margin: 5px 0 0;
}

	.field-container .field.checkbox-list.label-field {
		border: 0;
	}

	.field-container .field.checkbox-list > div label.control--checkbox {
		line-height: 20px;
		margin-right: 0;
		margin-bottom: 20px;
		float: left;
	}

	.field-container .field.checkbox-list .date-box {
		text-align: right;
		position: relative;
		float: right;
	}

		.field-container .field.checkbox-list .date-box.full {
			width: 100%;
		}

		.field-container .field.checkbox-list .date-box:after {
			visibility: hidden;
			display: block;
			font-size: 0;
			content: " ";
			clear: both;
			height: 0;
		}

		.field-container .field.checkbox-list .date-box.disabled {
			opacity: .3;
		}

		.field-container .field.checkbox-list .date-box > div {
			display: inline-block;
		}

			.field-container .field.checkbox-list .date-box > div.date-to {
				padding-left: 10px;
				margin-top: 5px;
				width: 257px;
			}

			.field-container .field.checkbox-list .date-box > div.cod-contratto {
				float: left;
			}

			.field-container .field.checkbox-list .date-box > div.date-range {
				float: right;
			}

				.field-container .field.checkbox-list .date-box > div.date-range:after {
					float: right;
				}

				.field-container .field.checkbox-list .date-box > div.date-range > div {
					float: right;
					margin-left: 40px;
				}

		.field-container .field.checkbox-list .date-box label {
			line-height: 30px;
			margin: 0;
			display: inline-block;
			float: none;
			width: auto;
		}

		.field-container .field.checkbox-list .date-box input {
			width: 200px;
			text-align: center;
			padding: 3px;
		}

			.field-container .field.checkbox-list .date-box input.input-validation-error {
				border: 1px solid #f21212;
			}

		.field-container .field.checkbox-list .date-box > div img {
			margin-top: -5px;
		}

		.field-container .field.checkbox-list .date-box div.single-calendar { /*width: 275px; */
		}

/* checkbox sequence field */
.field-container .field.checkbox-sequence > div label.control--checkbox {
	width: auto;
	line-height: 20px;
	margin-bottom: 5px;
	display: inline-block;
}

/* input file field */
.field-container .field.input-file {
	position: relative;
}

	.field-container .field.input-file > label {
		width: auto;
		margin-right: 10px;
		margin-bottom: 0;
		margin-top: 20px;
		background-color: #2B8804;
		color: #fff;
	}
	.field-container .field.input-file > label:hover {
		background-color: #323232;
	}

	.field-container .field.input-file > input + label {
		margin-top: 4px;
		position: relative;
		z-index: 2;
		display: inline-block;
	}

	.field-container .field.input-file > span.textBtn {
		display: block;
		color: #000;
		position: relative;
		left: 0;
		top: 0;
		margin-top: 8px;
		z-index: 1;
	}

	.field-container .field.input-file > label.file-selected {
		background-color: #323232;
		color: #fff;
	}

.field.input-file.second-file {
	display: none;
}

.remove {
	display: inline-block;
	margin-left: 5px;
	padding: 10px;
	cursor: pointer;
	position: relative;
	left: 0;
	top: 0;
}

	.remove span {
		display: inline-block;
		font-size: 16px;
		position: relative;
		left: -1px;
		bottom: -2px;
	}

		.remove span + span {
			position: relative;
			margin-left: -11px;
			top: 2px;
		}

	.remove:hover span {
		color: #cdcdcd;
	}

/* Radio Buttons */
.field .form-radios {
	display: inline-block;
}

.field .radio_field, .field .check_field {
	margin: 0;
	padding-left: 30px;
	display: inline-block;
	position: relative;
	line-height: 20px;
	margin-right: 15px;
	min-height: 20px;
}

	.field .radio_field.dx, .field .check_field.dx {
		padding-left: 0;
		padding-right: 30px;
	}

		.field .radio_field.dx .custom_radio, .field .check_field.dx .custom_radio, .field .radio_field.dx .custom_check, .field .check_field.dx .custom_check {
			left: auto;
			right: 0;
		}

	.field .radio_field .custom_radio, .field .check_field .custom_radio, .field .radio_field .custom_check, .field .check_field .custom_check {
		position: absolute;
		top: 0;
		left: 0;
	}

	.field .radio_field label, .field .check_field label {
		margin: 0;
		padding-right: 5px;
		line-height: 20px;
		width: 100%;
	}

.field .custom_radio {
	display: block;
	width: 20px;
	height: 20px;
	position: relative;
}

	.field .custom_radio span {
		display: block;
		width: 20px;
		margin: 0;
		padding: 0;
		height: 20px;
		max-width: 20px;
		min-height: 20px;
		border: 1px solid #cdcdcd;
		position: absolute;
		left: -1px;
		top: -1px;
		border-radius: 20px;
		background: #FFF;
		float: none;
	}
	.field .custom_radio:hover span{
		border-color: #000;
	}
	.field .custom_radio input:focus-visible + span{
		outline: none !important;     
		border-radius: 10px !important;
		box-shadow: 0 0 0 3px #ffdf23, 0 0 0 6px #fff, 0 0 0 8px #000 !important; 		
	}
	.field .custom_radio input.input-validation-error + span {
		border-color: red;
	}

	.field .custom_radio input {
		cursor: pointer;
		position: absolute;
		opacity: 0;
		filter: alpha(opacity=0);
		left: 0;
		top: 0;
		margin: 0;
		width: 100%;
		height: 100%;
		display: block;
		z-index: 2;
	}
	body.acsb-keynav .field .custom_radio input {
		opacity: 0 !important;
		filter: alpha(opacity=0) !important;
	}

	.field .custom_radio span:before {
		position: absolute;
		width: 10px;
		height: 10px;
		left: 4px;
		border-radius: 20px;
		top: 4px;
		content: "";
	}

	.field .custom_radio input:checked + span:before {
		background: #CCC;
	}

/* form blocks */
.info-request-fields {
	padding-top: 30px;
}

.documents-request-fields {
	display: none;
}

.tab-documents-file-error .documents-request-fields {
	display: block;
}

.info-request-fields.tab-error {
	display: block;
}

.documents-request-fields.tab-error {
	display: block;
}

.documents-request-fields.tab-open {
	display: block;
}

.sendFormDocs {
	padding: 40px 0 50px;
}

/* errors */
.field-validation-error {
	color: #f21212;
	margin: 5px 0 0px 2px;
	font-size: 12px;
}

.error-tipo-reclamo {
	display: none;
}

.error-label {
	display: none;
	margin-top: -3px;
}

.field .form-radios + .field-validation-error {
	margin-top: 20px;
}

/*success*/
.cf-riconosciuto {
	color: #2b8804;
	margin: 5px 0 10px 2px;
	font-size: 12px;
	font-weight: bold;
}

.cell-mail-riconosciuto {
	color: #2b8804;
	margin: 5px 0 10px 2px;
	font-size: 12px;
	font-weight: bold;
}

.pb-riconosciuto {
	color: #2b8804;
	margin: 5px 0 10px 2px;
	font-size: 12px;
	font-weight: bold;
}

.piva-riconosciuta {
	color: #2b8804;
	margin: 5px 0 10px 2px;
	font-size: 12px;
	font-weight: bold;
}

.greyed-field {
	background-color: #EBEBE4;
}

/* Popup Skin */
.popup-trigger {
	display: none;
}

.feedback-popup {
	padding: 30px 20px 40px;
	max-width: 500px;
	min-height: 400px;
	background-color: #F0F0F0;
	position: relative;
}

	.feedback-popup .message {
		font-size: 16px;
		line-height: 20px;
		font-weight: 400;
		margin-bottom: 40px;
	}

		.feedback-popup .message p {
			margin-top: 10px;
		}

		.feedback-popup .message ul {
			margin-top: 30px;
		}

			.feedback-popup .message ul li {
				margin-bottom: 10px;
			}

	.feedback-popup .close-popup {
		text-align: center;
		position: absolute;
		left: 0;
		bottom: 0;
		width: 100%;
		margin-bottom: 20px;
		cursor: pointer;
	}

		.feedback-popup .close-popup:hover {
			font-weight: 600;
		}

.fancybox-skin {
	padding: 0 !important;
}

.fancybox-close {
	display: none;
}
#header .container {
	display: flex;
	height: 100%;
	align-items: center;
}
#header .nav-logo {
	width: 100%;
	text-align: center;
	display: flex;
	justify-content: space-between;
	align-items: center;	
}
#header .nav-logo .go-back {
	background: transparent;
	border: 0;
	color: #2B8804;
	font-weight: 600;
	font-size: 14px;
	text-transform: none;
}
#header .nav-logo .go-back:hover,
#header .nav-logo .go-back:focus{
	text-decoration: underline;
}
#header .nav-logo .logo img {
	display: inline-block;
	margin: 0 auto;
	max-height: 70px;
}

#info-wrapper {
	min-height: 100vh;
	margin: 0 auto;
	overflow-x: hidden;
	display: flex;
	flex-direction: column;
}

#info-wrapper > #content {
	flex-grow: 1;	
	width: 100%;
	max-width: 100%;
	z-index: 1;
	position: relative;
	display: flex;
	flex-direction: column;
}

.select-container.cc-one {
	margin: 80px auto 0;
	max-width: 50%;
}
/* =============== DEVICES QUERIES =============== */
/* == MD DEVICES == */
@media (max-width: 992px) {
	#header {
		padding: 10px 0;
		background-color: #fff;
	}
	#header .nav-logo {
	
}
	#header .nav-logo .logo img {
		display: block;
		margin: 0 auto;
		height: 50px;
	}

	.breadcrumb {
		display: block;
	}

	.select-container.cc-one {
		margin: 0;
		max-width: 100%;
	}

	.field.date {
		max-width: 320px;
	}

		.field.date .customSelect.gg {
			margin-right: 30px;
		}

	.field.verify-field {
		max-width: 320px;
	}

		.field.verify-field input {
			max-width: 205px;
		}

	.block.legale .field.verify-field input {
		max-width: 205px;
	}

	.block.user-type {
		margin: 50px 0;
	}

		.block.user-type .field {
			text-align: left;
		}

	.block .row.field-row > div {
		margin-bottom: 40px;
	}

		.block .row.field-row > div:last-child {
			margin-bottom: 0;
		}

	.bank-account-block .row.field-row {
		margin-bottom: 0;
	}

	.block.bank-account-block + .separatore {
		margin-top: 10px;
	}

	.block + .separatore {
		margin-top: 20px;
	}

	.row.field-row.attachment > div:first-child {
		margin-bottom: 0;
	}

	.field-container .field.checkbox-list .date-box input {
		width: 125px;
	}
}


/* == SM DEVICES == */
@media (max-width: 768px) {	
	.top .tbCell.logoFideuram img {
		width: 100%;
	}

	.top .tbCell.logoSanpaolo img {
		width: 100%;
	}

	.contentFooter img {
		width: 100%;
	}

	.separatore {
		margin: 20px 0;
	}

	.contentTop .contentTitle h1 {
		margin: 0 0 15px;
	}

		.contentTop .contentTitle h1.Title {
			font-size: 1.5em;
		}

	.thx .contentTop .contentTitle h1 {
		font-size: 20px;
	}

	.thx .contentTop .contentTitle .subTitle {
		font-size: 16px;
	}

	input.input {
		width: 100%;
		height: 30px;
	}

	span.titleBlock {
		font-size: 20px;
		margin-bottom: 10px;
	}

	span.subTitle {
		margin-bottom: 10px;
	}

	span.note {
		font-size: 12px;
		margin-top: 10px;
	}

	.block {
		padding: 10px 15px;
	}

		.block + .block {
			padding-top: 0;
		}

		.block .row.field-row {
			margin-bottom: 20px;
		}

			.block .row.field-row + .row.field-row, .block .row.field-row:last-child {
				margin-bottom: 0;
			}

			.block .row.field-row > div {
				margin-bottom: 20px;
			}

				.block .row.field-row > div:last-child {
					margin-bottom: 0;
				}

			.block .row.field-row.attachment {
				margin-top: 20px;
			}

		.block.user-type {
			margin: 20px 0;
		}

		.block.bank-account-block {
			padding-bottom: 0;
		}

		.block.button-block {
			padding: 20px 0 50px;
		}

	.site-form .field label {
		font-size: 0.8em;
		line-height: 12px;
	}

	.tipoRichiedente.field label {
		width: 100%;
	}

	.field input {
		float: none;
		width: 100%;
		font-size: 0.8em;
	}

	.customSelect {
		height: 30px;
	}

	.customSelect {
		height: 30px;
	}

		.customSelect select {
			height: 30px;
		}

		.customSelect:after {
			height: 30px;
			line-height: 30px;
			font-size: 12px;
		}

	.contentBtnUpload {
		display: block;
	}

		.contentBtnUpload .textBtn {
			padding-left: 0;
			margin-left: 0;
			margin-top: 5px;
		}

	.visual img {
		width: 100%;
	}

	/* form richiesta info */
	.field-container.center-content {
		text-align: left;
	}

	.field textarea {
		width: 100%;
	}

	.field-container .field > label {
		display: block;
		margin-right: 0;
	}

	.field-container .field > div label.control--checkbox {
		display: inline-block;
		margin: 7px 10px 7px 0;
	}

	.field-container .field.checkbox-sequence > div label.control--checkbox {
		width: 100%;
	}

	.field-container .field.checkbox-list {
		margin-top: 0;
	}

		.field-container .field.checkbox-list > div label.control--checkbox {
			width: auto;
			float: none;
			display: block;
		}

		.field-container .field.checkbox-list .date-box {
			float: left;
			width: auto;
			margin-bottom: 10px;
			text-align: left;
		}

			.field-container .field.checkbox-list .date-box > div {
				display: block;
			}

				.field-container .field.checkbox-list .date-box > div + div {
					padding: 5px 0 0;
				}

			.field-container .field.checkbox-list .date-box label {
				width: 80px;
			}

			.field-container .field.checkbox-list .date-box input {
				margin-top: 6px;
			}

			.field-container .field.checkbox-list .date-box > div.cod-contratto {
				float: none;
			}

			.field-container .field.checkbox-list .date-box > div.date-range {
				float: none;
			}

				.field-container .field.checkbox-list .date-box > div.date-range > div {
					float: none;
					text-align: left;
					margin-left: 0;
				}

	.field-container .field {
		margin-bottom: 0;
	}

		.field-container .field.checkbox-list + .field {
			margin-top: 10px;
		}

		.field-container .field.checkbox-sequence + .field {
			margin-top: 0;
		}

		.field-container .field.input-file .remove:hover span {
			color: #3d3c3c;
		}

	.field input.province-field {
		width: 100%;
	}

	.field .form-radios .radio_field > label {
		line-height: 20px;
	}

	.field.date {
		max-width: 320px;
	}

		.field.date .customSelect.gg {
			margin-right: 30px;
		}

	.verify-btnclass="verify-btn" {
		height: 30px;
	}

	.captcha.center > div {
		padding: 0;
	}

	.delegato-mail-fields {
		margin-top: 20px;
	}

	.block .row.text-label {
		margin-bottom: 20px;
	}

	.field-container.center-content.argument-type .field > div, .field-container.center-content .field > label {
		float: none;
		margin-bottom: 30px;
	}

		.field-container.center-content.argument-type .field > div label.control--checkbox {
			float: none;
			padding-left: 0;
		}

			.field-container.center-content.argument-type .field > div label.control--checkbox:last-child {
				padding-right: 30px;
				margin-top: 20px;
			}

				.field-container.center-content.argument-type .field > div label.control--checkbox:last-child .control__indicator {
					position: absolute;
					right: 0;
					left: auto;
				}

		.field-container.center-content.argument-type .field > div label br {
			display: block;
		}

	.field.bank-account > div.slash {
		top: 5px;
	}

	.verify-field .loader {
		top: 0;
	}

	/* STEP 2*/
	.field-container .field.checkbox-list > div label.control--checkbox {
		margin-bottom: 0;
	}

	.field-container.center-content.argument-type .field > div label.control--checkbox:last-child {
		margin-top: 0;
		position: relative;
		left: 0;
		top: 10px;
		line-height: 14px;
	}

	.field-container .field.checkbox-list {
		padding-bottom: 0;
	}

		.field-container .field.checkbox-list .date-box {
			padding-top: 5px;
		}

			.field-container .field.checkbox-list .date-box > div {
				margin-bottom: 5px;
			}

				.field-container .field.checkbox-list .date-box > div.date-from {
					width: auto;
				}

				.field-container .field.checkbox-list .date-box > div.date-to {
					width: auto;
					padding-left: 0;
				}

			.field-container .field.checkbox-list .date-box label {
				width: auto;
				min-width: 105px;
			}

	.step-2 .field textarea {
		width: 100%;
		margin-top: 5px;
	}

	.field-checkbox-row {
		padding-top: 0;
	}

	/* POPUP */
	.feedback-popup .close-popup:hover {
		font-weight: 400;
	}
}

/* == XS DEVICES == */
@media (max-width: 480px) {
	.g-recaptcha {
		transform: scale(0.95);
		transform-origin: 0 0;
	}

	.contentForm {
		padding: 0;
	}

	.block.user-type {
		margin: 10px 0;
		padding-bottom: 0;
	}

		.block.user-type .field {
			text-align: center;
		}

	.field .form-radios {
		margin-top: 20px;
	}

		.field .form-radios .radio_field > label {
			line-height: 20px;
		}

	.block.user-type .field > label {
		padding: 0;
		display: block;
	}

	.field.date {
		max-width: 290px;
	}

		.field.date .customSelect.gg {
			margin-right: 15px;
		}

	.field.verify-field {
		max-width: 290px;
	}

		.field.verify-field input {
			max-width: 175px;
		}

	.block.legale .field.verify-field {
		max-width: 245px;
	}

		.block.legale .field.verify-field input {
			max-width: 129px;
		}

	.block.legale .field.date {
		max-width: 244px;
	}

	.block.legale .customSelect.gg {
		width: 60px;
	}

	.block.legale .customSelect.mm {
		width: 60px;
	}

	.block.legale .customSelect.aaaa {
		width: 92px;
	}

	.block.legale .private-bankers-fields .field.PbCode {
		margin-right: 0;
		text-align: right;
		float: right;
	}

		.block.legale .private-bankers-fields .field.PbCode button {
			display: none;
		}

		.block.legale .private-bankers-fields .field.PbCode label {
			padding: 0;
		}

	.block.legale .private-bankers-fields .field.verify-field {
		max-width: 100%;
		width: 100%;
		text-align: center;
		display: block;
	}

		.block.legale .private-bankers-fields .field.verify-field .verify-btn {
			float: none;
		}

	.block.legale .private-bankers-fields .field.PbCode .field-validation-error {
		text-align: right;
	}

	.private-bankers-fields .field.verify-field label {
		height: 20px;
		margin: 0;
		display: block;
	}

	.block .private-bankers-fields .row.field-row > div {
		margin-bottom: 0;
	}

	.field-container .field.input-file > span.textBtn {
		font-size: 12px;
	}

	/* STEP 2 */
	.contentForm.step-2 {
		padding-top: 0px;
	}

	.field-container.center-content.argument-type .field > div label.control--checkbox {
		margin-right: 15px;
	}

		.field-container.center-content.argument-type .field > div label.control--checkbox:last-child .control__indicator {
			top: 3px;
		}

	.contentForm.step-2 .block.button-block {
		padding: 30px 0 40px;
	}
}


/* == IE 11 hacks == */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	.field.date input {
		float: left;
	}

	.customSelect:after {
		display: none;
	}

	.customSelect select {
		padding: 0 0px 0 6px;
	}
}

.field-desc {
	margin: 20px 0 0;
	font-size: 12px;	
}

@media(min-width: 992px){
	
	.field-desc {
		margin: 20px auto 40px;
		font-size: 13px;
		max-width: 70%;
	}
}