@charset "utf-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap');
:root {
	/* Nero e Bianco */
	--color-black: #000;
	--color-white: #fff;

	/* Colori */
	--color-primary: #E84E0E;
	--color-secondary: #5C8F66;
	--color-error: #a94442;
	--color-gold: #FFCA61;
	--color-orange: #f57d14;

	/* Grigi */
	--color-gray-lighter: #f8f8f8;
	--color-gray-light: #ebebeb;
	--color-gray: #dfdfdf;
	--color-gray-dark: #a6a6a6;
	--color-gray-darker: #737373;

	/* Buttons */
	--color-adesione: #0db24c;
	--color-adesione-dark: #0b9a42;
	--color-adesione-darker: #0a8238;
	--color-avanti: #0061a9;
	--color-avanti-dark: #005492;
	--color-avanti-darker: #00477B;
	
	/* Testi */
	--color-text: #3C3C3C;
	--color-tab-ico: #404040;
	
	/* Font */
	--font-family-base: "DM Sans", sans-serif;
	--font-family-icon: 'FontAwesome';
	--font-size-base: 16px;

	/* Buttons */
	--color-adesione: #E84E0E;
	--color-adesione-dark: #D7480D;
	--color-adesione-darker: #C5420C;
	
	--color-avanti: #5C8F66;
	--color-avanti-dark: #55845E;
	--color-avanti-darker: #4E7A57;
	
	--color-avanti: #E84E0E;
	--color-avanti-dark: #D7480D;
	--color-avanti-darker: #C5420C;
}
/* Body */
html,
body {
	background-color: var(--color-black);
	font-family: var(--font-family-base);
	font-size: var(--font-size-base);
	font-optical-sizing: auto;
	font-style: normal;
	color: var(--color-text);
	line-height: 1.5;
}
.white-bg {
	background-color: var(--color-white);
}
.pad12 {
	padding: 0.125rem 0.75rem;
}
.b-flex {
	display: flex;
}
.alert.b-flex {
	align-items: center;
}
.alert .fa {
	align-self: flex-start;
	margin-right: 2rem;
	font-size: 2.25rem;
}
.enfasi {
	font-weight: 600;
	text-transform: uppercase;
}
.help-block .error {
	display: inline-block;
	padding: 0.125rem 0.375rem;
	background: var(--color-error);
	color: var(--color-white);
}
.lista span {
	display: block;
	padding-left: 1em;
}

.lista span::before {
	content: "-";
	margin-left: -1em;
	width: 1em;
	display: inline-block;
}
/* bootstrap */
.container {
	padding-right: 1rem;
	padding-left: 1rem;
}
.row {
	margin-right: -1rem;
	margin-left: -1rem;
}
.col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9 {
	padding-right: 1rem;
	padding-left: 1rem;
}
.lead {
	font-size: 1.125rem;
}
.btn {
	font-size: 1rem;
}
.progress-bar {
	font-size: 0.875rem;
	line-height: 1.25rem;
}
.page-header {
	padding-bottom: 0.25rem;
	margin: 2.5rem 0 1.25rem;
	border-bottom: 0.0625rem solid #eee;
}
/* Reset margini per un controllo migliore */
h1, h2, h3, h4, h5, h6 {
	margin-top: 1.25rem;
	margin-bottom: 0.75rem;
	font-weight: 600;
	line-height: 1.2; /* Line-height ridotta per i titoli */
}
/* Dimensioni in REM (Scala Major Third) */
h1 {
	font-size: 3.052rem;
}
h2 {
	font-size: 2.441rem;
}
h3 {
	font-size: 1.953rem;
}
h4 {
	font-size: 1.563rem;
}
h5 {
	font-size: 1.25rem;
}
h6 {
	font-size: 1rem;
}

/* Ottimizzazione per Mobile (schermi < 768px) */
@media (max-width: 768px) {
h1 {
	font-size: 2.441rem;
}
h2 {
	font-size: 1.953rem;
}
h3 {
	font-size: 1.563rem;
}
h4 {
	font-size: 1.25rem;
}
/* h5 e h6 possono restare invariati */
}
.modal-title {
	line-height: 1;
	font-size: 1.25rem;
}
/* Header */
.header {
	position: relative;
	height: 120px;
	border-bottom: 0.125rem solid var(--color-black);
}
.header:after {
	position: absolute;
	left: 0;
	bottom: -3rem;
	width: 100%;
	height: 3rem;
	background-image: url(../img/ombra-header.png);
	content: '';
}
.header .container {
	height: 100%;
}
.header .logo {
	display: block;
	float: left;
	position: relative;
	z-index: 10;
	width: 188px;
	height: 70px;
	margin: 25px 0;
	background-image: url(../img/logo.svg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}
.header .payoff {
	display: block;
	float: right;
	margin: 2.625rem 0 2.625rem 2.625rem;
	color: var(--color-primary);
	font-size: 1.5rem;
	font-weight: bold;
}
.header .payoff span {
	display: none;
	font-size: 1rem;
	color: var(--color-white);
}
@media (max-width: 991px) {
.header .payoff {
	font-size: 1.5rem;
}
}
@media (max-width: 767px) {
.header .payoff {
	display: none;
}
}
/* Contatti */
.contatti {
	background-color: var(--color-gray-lighter);
	padding: 2rem 0;
	border-top: 0.0625rem solid var(--color-gray);
}
.contatti .col-sm-4 > div {
	position: relative;
	margin-bottom: 0.5rem;
	padding-left: 1.75rem;
	font-size: 1.125rem;
}
.contatti .col-sm-4 > div a {
	display: block;
	color: var(--color-text);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.contatti .col-sm-4 > div:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 1.25rem;
	font-family: var(--font-family-icon);
	text-align: center;
	color: var(--color-primary);
}
.contatti .col-sm-4 > div.indirizzo:before {
	content: '\f041';
}
.contatti .col-sm-4 > div.telefono:before {
	content: '\f095';
}
.contatti .col-sm-4 > div.fax:before {
	content: '\f1ac';
}
.contatti .col-sm-4 > div.email:before {
	content: '\f0e0';
}
.contatti .col-sm-4 > div.sito:before {
	content: '\f26c';
}
/* Footer */
.footer {
	padding: 1rem 0;
	background: var(--color-black);
	font-size: 1.125rem;
	text-align: center;
	color: var(--color-white);
}
#main a {
	font-weight: 500;
	color: var(--color-text);
	text-decoration: underline;
}
/* Grey */
.btn-adesione {
	background-color: var(--color-gray-lighter);
	border-color: var(--color-gray);
	color: var(--color-text);
}
.btn-adesione:hover, .btn-adesione:focus, .btn-adesione:active, .btn-adesione.active {
	background-color: var(--color-gray-light);
	border-color: var(--color-gray);
}
.btn-adesione.disabled:hover, .btn-adesione.disabled:focus, .btn-adesione.disabled:active, .btn-adesione.disabled.active, .btn-adesione[disabled]:hover, .btn-adesione[disabled]:focus, .btn-adesione[disabled]:active, .btn-adesione[disabled].active, fieldset[disabled] .btn-adesione:hover, fieldset[disabled] .btn-adesione:focus, fieldset[disabled] .btn-adesione:active, fieldset[disabled] .btn-adesione.active {
	background-color: var(--color-gray-lighter);
	border-color: var(--color-gray);
}
.btn-group:hover .btn-adesione, .btn-group:focus .btn-adesione, .btn-group:active .btn-adesione, .btn-group.active .btn-adesione {
	background-color: var(--color-adesione);
	border-color: var(--color-adesione-darker);
	color: var(--color-white);
}
/* Blue */
.btn-avanti {
	background-color: var(--color-avanti);
	border-color: var(--color-avanti);
}
.btn-avanti:hover, .btn-avanti:focus, .btn-avanti:active, .btn-avanti.active {
	background-color: var(--color-avanti-dark);
	border-color: var(--color-avanti-darker);
}
.btn-avanti.disabled:hover, .btn-avanti.disabled:focus, .btn-avanti.disabled:active, .btn-avanti.disabled.active, .btn-avanti[disabled]:hover, .btn-avanti[disabled]:focus, .btn-avanti[disabled]:active, .btn-avanti[disabled].active, fieldset[disabled] .btn-avanti:hover, fieldset[disabled] .btn-avanti:focus, fieldset[disabled] .btn-avanti:active, fieldset[disabled] .btn-avanti.active {
	background-color: var(--color-avanti);
	border-color: var(--color-avanti);
}
/* Download documenti */
.btn-download .btn {
	font-size: 1.125rem;
	line-height: 1;
}
/* Blue */
.btn-scarica {
	background-color: var(--color-avanti);
	border-color: var(--color-avanti);
}
.btn-scarica:hover, .btn-scarica:focus, .btn-scarica:active, .btn-scarica.active {
	background-color: var(--color-avanti-dark);
	border-color: var(--color-avanti-darker);
}
.btn-scarica.disabled:hover, .btn-scarica.disabled:focus, .btn-scarica.disabled:active, .btn-scarica.disabled.active, .btn-scarica[disabled]:hover, .btn-scarica[disabled]:focus, .btn-scarica[disabled]:active, .btn-scarica[disabled].active, fieldset[disabled] .btn-scarica:hover, fieldset[disabled] .btn-scarica:focus, fieldset[disabled] .btn-scarica:active, fieldset[disabled] .btn-scarica.active {
	background-color: var(--color-avanti);
	border-color: var(--color-avanti);
}
.btn-group:hover .btn-scarica, .btn-group:focus .btn-scarica, .btn-group:active .btn-scarica, .btn-group.active .btn-scarica {
	background-color: var(--color-avanti-dark);
	border-color: var(--color-avanti-darker);
	color: var(--color-white);
}
/* Testo */
.text-payoff {
	color: var(--color-black);
}
.main-title > span {
	color: var(--color-black);
}
.lower-title {
	color: var(--color-secondary);
}
.small-title {
	color: var(--color-primary);
}
/* Progress */
.progress-bar-adesione {
	background-color: var(--color-adesione);
}
.container.pad15 {
	padding-top: 1rem;
	padding-bottom: 1rem;
}
/* Input Altro specificare */
.form-control.form-altro {
	margin-top: 0.375rem;
}
.altro-container .input-group {
	margin-top: 0.375rem;
}
.altro-container .input-group .form-control.form-altro {
	margin-top: 0;
}
/* Tabella radio group */
.table_radio {
	width: 100%;
}
.table_radio tr td {
	padding-top: 0.5rem;
	padding-right: 0.375rem;
	vertical-align: top;
}
.table_radio tr:first-child td {
	padding-top: 0;
}
.table_radio.sesso {
	width: 100%;
}
.table_radio.sesso tr td {
	height: 2.125rem;
	vertical-align: middle;
}
@media (max-width: 767px) {
.table_radio tr td {
	display: block;
	width: 100% !important;
	padding-top: 0.375rem;
}
.table_radio tr:first-child td {
	padding-top: 0.375rem;
}
}
.table-privacy {
	margin-bottom: 1.25rem;
}
.table-privacy  tr td {
	padding: 0.5rem;
}
@media (max-width: 767px) {
.table-privacy  tr td {
	display: block;
	width: 100% !important;
	text-align: center;
}
}
/* Modal */
.modal-success .modal-header {
	background-color: var(--color-adesione);
	color: var(--color-white);
}
.modal-success .modal-header .close {
	color: var(--color-white);
	opacity: 0.8;
}
/*.modal-success .modal-body {
	text-transform: uppercase;
}*/
.modal-error .modal-header {
	background-color: var(--color-error);
	color: var(--color-white);
}
.modal-error .modal-header .close {
	color: var(--color-white);
	opacity: 0.8;
}
/*.modal-error .modal-body {
	text-transform: uppercase;
}*/
/*!
 * LABELAUTY jQuery Plugin Styles
 *
 * @file: jquery-labelauty.css
 * @author: Francisco Neves (@fntneves)
 * @site: www.francisconeves.com
 * @license: MIT License
 */

/* Prevent text and blocks selection */
input.labelauty.checkbox-adesione + label ::selection {
	background-color: rgba(255, 255, 255, 0);
}
input.labelauty.checkbox-adesione + label ::-moz-selection {
background-color: rgba(255, 255, 255, 0);
}
/* Hide original checkboxes. They are ugly! */
input.labelauty.checkbox-adesione {
	display: none !important;
}
/*
 * Let's style the input
 * Feel free to work with it as you wish!
 */
input.labelauty.checkbox-adesione + label {
	position: relative;
	display: inline-block;
	font-size: 1.125rem;
	margin: 0;
	padding: 0.625rem 1rem 0.625rem 3rem;
	background-color: var(--color-gray-lighter);
	border: 0.0625rem solid var(--color-gray);
	line-height: 1;
	font-weight: normal;
	color: var(--color-text);
	cursor: pointer;
	border-radius: 0.375rem 0.375rem 0.375rem 0.375rem;
	-moz-border-radius: 0.375rem 0.375rem 0.375rem 0.375rem;
	-webkit-border-radius: 0.375rem 0.375rem 0.375rem 0.375rem;
	transition: background-color 0.25s;
	-moz-transition: background-color 0.25s;
	-webkit-transition: background-color 0.25s;
	-o-transition: background-color 0.25s;
	-moz-user-select: none;
	-khtml-user-select: none;
	-webkit-user-select: none;
	-o-user-select: none;
}
/* Stylish text inside label */
input.labelauty.checkbox-adesione + label > span.labelauty-unchecked, input.labelauty.checkbox-adesione + label > span.labelauty-checked {
	display: block;
	line-height: 1;
	text-align: left;
}
/* Stylish icons inside label */
input.labelauty.checkbox-adesione + label > span.labelauty-unchecked-image, input.labelauty.checkbox-adesione + label > span.labelauty-checked-image {
	position: absolute;
	top: -0.0625rem;
	left: -0.0625rem;
	display: block;
	width: 2.5rem;
	height: 2.5rem;
	text-align: center;
	line-height: 2.5rem;
	transition: background-image 0.5s linear;
	-moz-transition: background-image 0.5s linear;
	-webkit-transition: background-image 0.5s linear;
	-o-transition: background-image 0.5s linear;
}
input.labelauty.checkbox-adesione + label > span.labelauty-unchecked-image {
	border-right: 0.0625rem solid var(--color-gray);
}
input.labelauty.checkbox-adesione + label > span.labelauty-checked-image {
	border-right: 0.0625rem solid var(--color-adesione-darker);
}
/* When not Checked */
input.labelauty.checkbox-adesione:not(:checked):not([disabled]) + label:hover {
	background-color: var(--color-gray-light);
	border-color: var(--color-gray);
}
input.labelauty.checkbox-adesione:not(:checked) + label > span.labelauty-checked-image {
	display: none;
}
input.labelauty.checkbox-adesione:not(:checked) + label > span.labelauty-checked {
	display: none;
}
/* When Checked */
input.labelauty.checkbox-adesione:checked + label {
	background-color: var(--color-adesione);
	border: 0.0625rem solid var(--color-adesione-darker);
	color: var(--color-white);
}
input.labelauty.checkbox-adesione:checked:not([disabled]) + label:hover {
	background-color: var(--color-adesione-dark);
}
input.labelauty.checkbox-adesione:checked + label > span.labelauty-unchecked-image {
	display: none;
}
input.labelauty.checkbox-adesione:checked + label > span.labelauty-unchecked {
	display: none;
}
input.labelauty.checkbox-adesione:checked + label > span.labelauty-checked {
	display: inline-block;
}
input.labelauty.checkbox-adesione.no-label:checked + label > span.labelauty-checked {
	display: block;
}
/* When Disabled */
input.labelauty.checkbox-adesione[disabled] + label {
	opacity: 0.5;
}
/* Add a background to (un)checked images */
input.labelauty.checkbox-adesione + label > span.labelauty-unchecked-image:before {
	font-family: var(--font-family-icon);
	content: '\f096';
	vertical-align: text-bottom;
}
input.labelauty.checkbox-adesione + label > span.labelauty-checked-image:before {
	font-family: var(--font-family-icon);
	content: '\f046';
	vertical-align: text-bottom;
}
input.labelauty.checkbox-adesione[type="radio"] + label > span.labelauty-unchecked-image:before {
	font-family: var(--font-family-icon);
	content: '\f10c';
	vertical-align: text-bottom;
}
input.labelauty.checkbox-adesione[type="radio"] + label > span.labelauty-checked-image:before {
	font-family: var(--font-family-icon);
	content: '\f192';
	vertical-align: text-bottom;
}
 @media (min-width: 768px) {
#searchtxt {
	width: 18.75rem;
}
}
#searchrow {
	margin-top: 2.5rem;
}
/***
Bootstrap Line Tabs by @keenthemes
A component of Metronic Theme - #1 Selling Bootstrap 3 Admin Theme in Themeforest: http://j.mp/metronictheme
Licensed under MIT
***/
/* Tabs panel */
.tabbable-panel {
	padding: 2rem 0 0 0;
}
/* Default mode */
.tabbable-line > .nav-tabs {
	border: none;
	margin: 0;
}
.tabbable-line > .nav-tabs > li {
	margin-right: 0.125rem;
}
.tabbable-line > .nav-tabs > li > a {
	border: 0;
	margin-right: 0;
	color: var(--color-gray-darker);
	text-transform: uppercase;
	font-size: 1.125rem;
}
.tabbable-line > .nav-tabs > li > a > i {
	color: var(--color-gray-dark);
}
.tabbable-line > .nav-tabs > li.open, .tabbable-line > .nav-tabs > li:hover {
	border-bottom: 0.25rem solid var(--color-gold);
}
.tabbable-line > .nav-tabs > li.open > a, .tabbable-line > .nav-tabs > li:hover > a {
	border: 0;
	background: none !important;
	color: var(--color-text);
}
.tabbable-line > .nav-tabs > li.open > a > i, .tabbable-line > .nav-tabs > li:hover > a > i {
	color: var(--color-gray-dark);
}
.tabbable-line > .nav-tabs > li.open .dropdown-menu, .tabbable-line > .nav-tabs > li:hover .dropdown-menu {
	margin-top: 0;
}
.tabbable-line > .nav-tabs > li.active {
	border-bottom: 0.25rem solid var(--color-orange);
	position: relative;
}
.tabbable-line > .nav-tabs > li.active > a {
	border: 0;
	color: var(--color-text);
}
.tabbable-line > .nav-tabs > li.active > a > i {
	color: var(--color-tab-ico);
}
.tabbable-line > .tab-content {
	margin-top: -0.1875rem;
	background-color: var(--color-white);
	border: 0;
	border-top: 0.0625rem solid #eee;
	padding: 1rem 0;
}
.portlet .tabbable-line > .tab-content {
	padding-bottom: 0;
}
/* Below tabs mode */
.tabbable-line.tabs-below > .nav-tabs > li {
	border-top: 0.25rem solid transparent;
}
.tabbable-line.tabs-below > .nav-tabs > li > a {
	margin-top: 0;
}
.tabbable-line.tabs-below > .nav-tabs > li:hover {
	border-bottom: 0;
	border-top: 0.25rem solid var(--color-gold);
}
.tabbable-line.tabs-below > .nav-tabs > li.active {
	margin-bottom: -0.125rem;
	border-bottom: 0;
	border-top: 0.25rem solid var(--color-orange);
}
.tabbable-line.tabs-below > .tab-content {
	margin-top: -0.625rem;
	border-top: 0;
	border-bottom: 0.0625rem solid #eee;
	padding-bottom: 1rem;
}
/* Show more/less */
.show-more, .show-more:visited, .show-more:active, .show-more:focus {
	display: block;
	padding-top: 0.1875rem;
	background: var(--color-text);
	color: var(--color-white);
	text-align: center;
	font-size: 1rem;
	line-height: 1.9;
	border-bottom-left-radius: 0.1875rem;
	border-bottom-right-radius: 0.1875rem;
}
.show-more:hover {
	color: var(--color-orange);
}
