:root {
    --primary: #004c99 !important;
    --secondary: #0053a6 !important;
    --dark: #003366 !important;
}


#box .secondary {
    color: var(--secondary);
}

/* #box .btn-secondary {
    background-color: var(--secondary);
    color: #fff;
    border-color: var(--secondary);
} */


.btn-primary {
	color: #fff;
	background-color: var(--primary);
	border-color: var(--primary);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075)
}

.btn-primary:focus,.btn-primary.focus {
	box-shadow: inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075),0 0 0 .25rem var(--secondary);
}

.btn-primary:hover {
	background-color: var(--primary);
	color: #fff;
	border-color: var(--primary);
}

.btn-primary.disabled,.btn-primary:disabled {
	color: #fff;
	background-color: var(--primary);
	border-color: var(--primary);
	pointer-events: none
}

.btn-primary:not(:disabled):not(.disabled):active,.btn-primary:not(:disabled):not(.disabled).active,.show>.btn-primary.dropdown-toggle {
	color: #fff;
	background-color: var(--primary);
	border-color: var(--primary);
}

.btn-primary:not(:disabled):not(.disabled):active:focus,.btn-primary:not(:disabled):not(.disabled).active:focus,.show>.btn-primary.dropdown-toggle:focus {
	box-shadow: inset 0 3px 5px rgba(0,0,0,.125),0 0 0 .25rem var(--secondary);
}

.btn-secondary {
	color: #fff;
	background-color: #5d7083;
	border-color: #5d7083;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);
}

.btn-secondary:focus,.btn-secondary.focus {
	box-shadow: inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075),0 0 0 .25rem rgba(93,112,131,.5);
}










#box h1 .id-domanda span {
	color: var(--primary);
	font-weight: 600;
	font-size: 2.5rem;
}

.titolo-domanda .id-domanda span {
	color: var(--primary);
	font-weight: 600;
}

.it-header-slim-wrapper {
    background-color: var(--dark);
}

.it-header-center-wrapper {
background-color: var(--primary);
}

.it-header-navbar-wrapper {
    background-color: var(--primary);
}

.navbar-brand {
    font-weight: bold;
}

.bottom-flag-icon {
    width: 32px;
    height: 48px;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    position: absolute;
    background: #06c;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    border-radius: 5px 5px 0px 0px;
    padding: 5px;
    bottom: 0px;
    right: 48px;
}

.card.disabled{
	background-color: #eaeaea;
}

.card-text {
    font-family: 'Titillium Web',Geneva,Tahoma,sans-serif !important;
}

div.card-warning {
    text-transform: uppercase;
}

.card.card-big .card-body {
    padding-top: 0px;
    padding-right: 48px;
    padding-bottom: 48px;
    padding-left: 48px;;
    -webkit-box-flex: 1;
    flex: 1 1 auto;
}

.card.card-big .card-body .etichetta{
    font-size: .7rem;
    margin-top: 16px;
    margin-bottom: 8px;
    -webkit-box-pack: end;
    justify-content: flex-end;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: .9px;
    color: #435a70;
}

.etichetta .icon {
    fill: #435a70;
    width: 24px;
    height: 24px;
    margin-right: 8px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.card.card-big .card-body .top-icon {
    margin-bottom: 24px;
}
.card.card-big .card-body .top-icon .icon {
    width: 80px;
    height: 80px;
    fill: #06c;
}

.card.card-big .card-body h5.card-title {
    font-size: 1.33333rem;
    line-height: 1.55556rem;
}

.card .card-body h5.card-title {
    font-size: 1.125rem;
    line-height: 1.44444rem;
    font-weight: 700;
    color: #17324d;
    margin-bottom: 16px;
    -webkit-transition: .3s;
    transition: .3s;
}

.card.card-big .card-body .card-text {
    font-size: .88889rem;
    line-height: 1.33333rem;
}

.card .card-body .card-text {
    font-size: .875rem;
    line-height: 1.2rem;
    color: #435a70;
}

.form-sottile {
    margin-bottom: 1rem !important; 
}


/*  */

.it-header-slim-wrapper {
    padding: 6.5px 18px;
}


.it-header-slim-wrapper .it-header-slim-wrapper-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.it-header-slim-wrapper .it-header-slim-wrapper-content .navbar-brand {
    color: #fff;
    font-size: .778em;
    padding: 0;
}

.it-header-slim-wrapper .it-header-slim-wrapper-content a {
    color: #fff;
    text-decoration: none;
}


.it-header-slim-wrapper .it-header-slim-wrapper-content .header-slim-right-zone, .it-header-slim-wrapper .it-header-slim-wrapper-content .it-header-slim-right-zone {
    display: flex;
    align-items: center;
    align-self: flex-start;
}


.it-header-slim-wrapper .it-header-slim-wrapper-content .dropdown-menu {
    top: -9px !important;
}
.dropdown-menu {
    border-radius: 0 0 4px 4px;
    z-index: 8;
}

.dropdown-menu .link-list {
    margin-bottom: 0;
}

.link-list-wrapper ul {
    padding: 0;
    list-style-type: none;
}

.link-list-wrapper ul li a.list-item.icon-left, .link-list-wrapper ul li a.list-item.left-icon {
    position: relative;
    padding-left: 32px;
}

.it-user-wrapper .link-list-wrapper>ul>li>a {
    line-height: 3em;
}

.it-header-slim-wrapper .it-header-slim-wrapper-content a {
    color: #fff;
    text-decoration: none;
}

.link-list-wrapper ul li a {
    font-size: .889em;
    line-height: 2.3em;
    display: block;
    padding: 0 24px;
    position: relative;
    text-decoration: none;
}

.link-list-wrapper ul li a.list-item.icon-left span, .link-list-wrapper ul li a.list-item.left-icon span {
    margin-top: 4px;
}
.link-list-wrapper ul li a span {
    color: #06c;
    display: inline-block;
    margin-right: 24px;
}

.it-header-wrapper .it-nav-wrapper {
    position: relative;
}


.it-header-center-wrapper {
    /* height: 80px; */
    display: flex;
    align-items: center;
    padding-left: 18px;
    padding-right: 18px;
}

/* .it-header-center-wrapper.it-small-header {
    height: 64px;
}
 */

.it-header-center-wrapper .it-header-center-content-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-basis: 100%;
}

.it-header-wrapper .it-nav-wrapper .it-brand-wrapper {
    padding-left: 32px;
}

.it-header-center-wrapper .it-header-center-content-wrapper .it-brand-wrapper a {
    display: flex;
    color: #fff;
    align-items: center;
    text-decoration: none;
    padding: 12px 0;
}

.it-header-center-wrapper .it-header-center-content-wrapper .it-brand-wrapper a .icon {
	fill: #fff;
	width: 48px;
	height: 48px;
	margin-right: 8px;
	flex-shrink: 0;
}

.it-header-wrapper .it-brand-wrapper .icon image {
	width: 48px;
	height: 48px;
}








.it-header-center-wrapper .it-header-center-content-wrapper .it-right-zone {
    color: #fff;
    display: flex;
    align-items: center;
}

.h2, h2 {
    line-height: 1.25;
    letter-spacing: normal;
}

.it-header-center-wrapper .it-header-center-content-wrapper .it-brand-wrapper a h2 {
    font-size: 1.25em;
    margin-bottom: 0;
    font-weight: 600;
    letter-spacing: unset;
    line-height: 1.1;
}

.it-header-center-wrapper .it-header-center-content-wrapper .it-brand-wrapper .it-brand-text {
    padding-right: 24px;
}

.h3, h3 {
    line-height: 1.1428;
    letter-spacing: normal;
}

.it-header-center-wrapper .it-header-center-content-wrapper .it-brand-wrapper a h3 {
    font-size: .889em;
    font-weight: 400;
    margin-bottom: 0;
}


.it-header-center-wrapper .it-header-center-content-wrapper .it-right-zone .it-socials {
    align-items: center;
    font-size: .889em;
}

.it-header-center-wrapper .it-header-center-content-wrapper .it-right-zone .it-socials ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
}

.icon {
    width: 32px;
    height: 32px;
    vertical-align: middle;
}

.it-header-center-wrapper .it-header-center-content-wrapper .it-right-zone .it-socials ul .icon {
    fill: #fff;
    width: 24px;
    height: 24px;
    margin-left: 16px;
}

.it-footer-main {
    background-color: var(--dark);
    color: #fff;
    font-size: 16px;
}



@media (min-width: 576px) {
    .h2, h2 {
        font-size: 2.222rem;
        line-height: 1.2;
    }
    .h3, h3 {
        font-size: 1.777rem;
        line-height: 1.25;
    }
    
    /* body, html {
        font-size: 18px;
        line-height: 1.555;
    } */
}


@media (min-width: 992px) {
    .it-header-wrapper .it-nav-wrapper .it-brand-wrapper {
        padding-left: 0;
    }
    .it-header-center-wrapper .it-header-center-content-wrapper .it-brand-wrapper {
        margin-left: 0;
    }
    .it-header-center-wrapper.it-small-header .it-header-center-content-wrapper .it-brand-wrapper a h2 {
        font-size: 1.333em;
    }
    .it-header-center-wrapper .it-header-center-content-wrapper .it-brand-wrapper a h2 {
        font-size: 1.778em;
        margin-bottom: 0;
        font-weight: 600;
    }
    .it-header-center-wrapper.it-small-header .it-header-center-content-wrapper .it-brand-wrapper a h3 {
        font-size: 1.7rem;
		text-transform: uppercase;
    }
    .it-header-center-wrapper .it-header-center-content-wrapper .it-brand-wrapper a h3 {
        font-size: .889em;
        font-weight: 400;
        margin-bottom: 0;
    }
    .it-header-center-wrapper .it-header-center-content-wrapper .it-brand-wrapper a .icon {
        width: 82px;
        height: 82px;
        margin-right: 16px;
    }
    .it-header-center-wrapper .it-header-center-content-wrapper .it-right-zone .it-socials {
        align-items: center;
        font-size: .889em;
    }
    .it-header-center-wrapper .it-header-center-content-wrapper .it-right-zone .it-socials ul {
        list-style-type: none;
        margin: 0;
        padding: 0;
        display: flex;
    }
    .it-header-center-wrapper .it-header-center-content-wrapper .it-right-zone .it-socials ul .icon {
        width: 24px;
        height: 24px;
        margin-left: 16px;
    }
}



/* FOOTER */
.it-footer-main section {
    padding: 0 16px;
}
/* .it-footer-main .it-brand-wrapper {
    padding: 32px 0;
} */
.it-footer-main .it-brand-wrapper a {
    display: flex;
    color: #fff;
    align-items: center;
    text-decoration: none;
}
.it-footer-main .it-brand-wrapper a h2 {
    font-size: 1.25em;
    margin-bottom: 0;
    font-weight: 600;
    letter-spacing: unset;
    line-height: 1.1;
}
.it-footer-main .it-brand-wrapper a h3 {
    font-size: .889em;
    font-weight: 400;
    margin-bottom: 0;
}



.it-footer-main .it-brand-wrapper a .icon {
    fill: #fff;
    width: 48px;
    height: 48px;
    margin-right: 8px;
    flex-shrink: 0;
}

.icon {
    width: 32px;
    height: 32px;
    vertical-align: middle;
}

.it-footer-main .it-brand-wrapper .it-brand-text {
    padding-right: 24px;
}


footer .it-footer-small-prints {
    background-color: #0a2344;
    font-size: .8rem;
    padding: 0;
    position: unset;
    width: 100%;
}

footer .it-footer-small-prints ul.it-footer-small-prints-list {
    padding: 1.5rem 1rem;
}

footer .it-footer-small-prints ul.it-footer-small-prints-list li {
    padding: .5rem 0;
}

footer .it-footer-small-prints a, .it-footer-small-prints a:hover:not(.disabled) {
    color: #fff;
    font-size: 15px;
    text-decoration: none;
}


footer .it-footer-main h4 a {
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 16px;
}

footer .it-footer-main .link-list-wrapper ul li a {
    padding: 0;
    font-size: 1em;
    line-height: 2em;
    color: #fff;
}

div.contenitore footer li {
    list-style: none;
    color: #ffffff;
    margin: 0;
    padding: 0;
}

.it-footer-small-prints ul.it-footer-small-prints-list li:first-child {
    padding: .5rem 0;
}

.it-footer-small-prints ul.it-footer-small-prints-list li {
    padding: .5rem 0;
}

.list-inline-item:not(:last-child) {
    margin-right: .5rem;
}

@media (min-width: 576px) {
    .h4, h4 {
        font-size: 1.555rem;
        line-height: 1.428;
        font-weight: 600;
    }
}

@media (min-width: 768px) {
    .it-footer-small-prints ul.it-footer-small-prints-list li:first-child {
        padding-left: 0;
    }
    .it-footer-small-prints ul.it-footer-small-prints-list li {
        padding: 0 1rem;
    }

}


/* Stili per FOOTER */

.social svg use {
    fill: white !important;
}

div.contenitore .it-socials li {
    list-style: none;
    color: #444444;
    margin: .1em 0 .2em 0;
    padding: 0;
}

footer svg.icon > image {
	width: inherit;
	height: inherit;
}




/* fix per asseverazione 16.07.2025 */
.col-12.footer-items-wrapper.logo-wrapper {
	flex-direction: row;
	align-items: flex-start;
	display: flex;
	gap: 30px;
	padding-top: 32px;
	padding-bottom: 32px;
}

.ue-logo {
	display: inline-block;
	width: unset;
	height: unset;
	max-width: 50%;
	position: relative;
}

.it-footer a {
	color: #ffffff!important;
}


ul.footer-list {
	padding: 0;
}

.it-footer .footer-list a,
.it-footer .footer-info {
	letter-spacing: 0.24px;
	font-size: 1rem;
	line-height: 32px;
}



.it-footer .footer-heading-title {
	font-size: 1.125rem;
	font-weight: 600;
    border: 0;
	padding-bottom: 0;
    line-height: 1.5;
	text-transform: uppercase;
}


.visually-hidden {
	position: absolute !important;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	width: 1px;
	height: 1px;
	word-wrap: normal;
}

.visually-hidden, .visually-hidden-focusable:not(:focus):not(:focus-within) {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}


.icon.icon-sm {
	width: 24px;
	height: 24px;
}


.navbar .navbar-collapsable {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	z-index: 100;
	display: none;
	width: 100%;
}


@media (min-width: 992px) {
	.navbar .navbar-collapsable {
		position: relative;
		top: auto;
		right: auto;
		left: auto;
		bottom: auto;
		z-index: auto;
		background: none;
		display: block !important;
		transition: none;
	}
}

@media (min-width: 992px) {
	.has-megamenu .navbar-collapsable {
		width: 100%;
	}
}

.navbar .close-div {
	opacity: 0;
	position: fixed;
	left: auto;
	right: 2px;
	top: 24px;
	background: rgba(0, 0, 0, 0);
	z-index: 10;
	pointer-events: none;
	transition: all .3s cubic-bezier(0.1, 0.57, 0.4, 0.97);
}

@media (min-width: 992px) {
	.navbar .close-div {
		display: none;
	}
}


.navbar .navbar-collapsable .menu-wrapper {
	background: #fff;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 48px;
	left: 0;
	pointer-events: all;
	overflow-y: auto;
	transform: translateX(-100%);
	transition: all .2s cubic-bezier(0.29, 0.85, 0.5, 0.99);
	z-index: 5;
}


@media (min-width: 992px) {
	.navbar .navbar-collapsable .menu-wrapper {
		position: inherit;
		top: auto;
		bottom: auto;
		right: auto;
		left: auto;
		overflow-y: visible;
		transform: none;
		transition: none;
		background: #007a52;
	}
}


@media (min-width: 992px) {
	.it-header-wrapper .navbar-collapsable .menu-wrapper {
		background: 0 0;
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
	}
}




.it-header-wrapper .navbar-collapsable .logo-hamburger {
	display: flex;
	align-items: center;
	color: #007a52;
	padding: 32px 50px 16px 24px;
}

@media (min-width: 576px) {
	.it-header-wrapper .navbar-collapsable .logo-hamburger {
		padding: 32px 65px 16px 24px;
	}
}


@media (min-width: 992px) {
	.it-header-wrapper .navbar-collapsable .logo-hamburger {
		display: none;
	}
}


.it-header-wrapper .it-nav-wrapper .it-header-navbar-wrapper nav {
	padding-left: 18px;
	padding-right: 18px;
}

@media (min-width: 992px) {
	.it-header-wrapper .it-nav-wrapper .it-header-navbar-wrapper nav {
		padding-left: 18px;
		padding-right: 18px;
	}
}



.navbar .navbar-collapsable .menu-wrapper .navbar-nav {
	padding: 24px 0 0;
	overflow: hidden;
}

@media (min-width: 992px) {
	.it-header-wrapper .navbar .navbar-collapsable .menu-wrapper .navbar-nav {
		padding: 0;
	}
}

@media (min-width: 992px) {
	.navbar .navbar-collapsable .menu-wrapper .navbar-nav {
		margin-top: 0;
		padding: 0 24px;
		overflow: inherit;
	}
}



@media (min-width: 992px) and (min-width: 992px) {
	.navbar .navbar-collapsable .navbar-nav li.nav-item {
		display: flex;
	}
}

@media (min-width: 992px) and (min-width: 992px) {
	.navbar .navbar-collapsable .navbar-nav li.nav-item .nav-link {
		display: flex;
		align-self: flex-end;
		align-items: center;
	}
}

@media (min-width: 992px) {
	.navbar .navbar-collapsable .navbar-nav li a.nav-link {
		font-weight: 400;
		padding: 13px 24px;
		color: #fff;
		border-bottom: 3px solid rgba(0, 0, 0, 0);
	}
}

@media (min-width: 1200px) {
	.it-header-wrapper .navbar .navbar-collapsable .navbar-nav li a.nav-link {
		padding: .89rem 1.33rem;
	}
}



.custom-navbar-toggler {
	background: none;
	border: none;
	cursor: pointer;
}

@media (min-width: 992px) {
	.custom-navbar-toggler {
		display: none;
	}
}


.it-header-wrapper .it-nav-wrapper .it-header-navbar-wrapper nav {
	padding-left: 0;
	padding-right: 0;
}



.it-header-wrapper .navbar-collapsable .it-socials {
	margin-top: 30px;
	padding: 0 24px;
	color: #007a52;
}

@media (min-width: 992px) {
	.it-header-wrapper .navbar-collapsable .it-socials {
		display: none;
	}
}

.navbar .navbar-collapsable .navbar-nav li a.nav-link {
    text-decoration: none;
}

.navbar .navbar-collapsable .navbar-nav li a.nav-link:hover:not(.active) {
	text-decoration: underline;
}

@media (min-width: 1200px) {
	.it-header-wrapper .navbar .navbar-collapsable .navbar-nav li a.nav-link {
		padding: .89rem 1.33rem;
	}
}
@media (min-width: 992px) and (min-width: 992px) {
	.navbar .navbar-collapsable .navbar-nav li.nav-item .nav-link {
		display: flex
;
		align-self: flex-end;
		align-items: center;
	}
}
@media (min-width: 992px) {
	.navbar .navbar-collapsable .navbar-nav li a.nav-link {
		font-weight: 400;
		padding: 13px 24px;
		color: #fff;
		border-bottom: 3px solid rgba(0, 0, 0, 0);
	}
}

.custom-navbar-toggler svg {
	fill: #fff;
	width: 24px;
	height: 24px;
	display: block;
}