body,
html {
	padding: 0;
	margin: 0;
	font-weight: 400;
	font-size: calc(15px + (17 - 15) * ((100vw - 300px) / (1600 - 300)));
	color: #444;
	box-sizing: border-box;
	line-height: 1.45;
	font-family: "Albert Sans", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	letter-spacing: -0.5px;
	overflow-x:hidden;
}

div,
label {
	box-sizing: border-box;
}

ul.list {
	margin: 20px 0;
	list-style: disc;
	list-style-position: inside;
}

ul.list li {
	margin: 10px 0;
}

.logo-divisione {
	width: 90px;
}

.stagger-in__el,
.stagger-in__left,
.stagger-in__right {
	opacity: 0;
}

.font-2 {
	font-family: "STIX Two Text", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
}

:focus {
	outline: 0;
}

.sticky {
	position: sticky !important;
}

.relative {
	position: relative;
}

.absolute {
	position: absolute;
}

.full-width {
	width: 100%;
	position: relative;
}

.object-cover {
	-o-object-fit: cover;
	object-fit: cover;
}

header {
	background: #fff;
}

header .cnt {
	padding-left: 5%;
	padding-right: 5%;
}

footer .cnt {
	padding-left: 5%;
	padding-right: 5%;
	line-height: 1.6;
}

footer .ac {
	margin-bottom: 0;
	border-bottom: 1px solid #ddd;
	border-top: none;
	border-left: none;
	border-right: none;
	background: transparent;
	color: #0a2c56;
}

footer .ac .ac-trigger,
footer .ac .ac-trigger::after {
	color: #0a2c56;
}

footer .ac .ac-trigger {
	padding: 12px 0;
	text-transform: uppercase;
}

footer .ac .ac-trigger:focus {
	color: #0a2c56;
}

footer .ac .ac-panel .ac-text {
	padding: 0 0 12px;
}

.bg-rosso .ac {
	margin-bottom: 0;
	border-bottom: 1px solid rgba(255,255,255,0.3);
	border-top: none;
	border-left: none;
	border-right: none;
	background: transparent;
	color: #fff;
	padding-left: 10px;
	padding-right: 10px;
}

.bg-rosso .ac:nth-child(1) {
	border-top: 1px solid rgba(255,255,255,0.3);
}

.bg-rosso .ac.is-active {
	background: rgba(255,255,255,0.2);
}

.bg-rosso .ac.is-active .number {
	background: #fff;
	color: #cf302a;
}

.bg-rosso .ac .number {
	border-radius: 50px;
	border: 1.5px dashed #fff;
	text-align: center;
	height: 42px;
	width: 42px;
	margin-right: 15px;
	font-size: calc(22px + (23 - 22) * ((100vw - 300px) / (1600 - 300)));
}

.bg-rosso .ac .ac-trigger,
.bg-rosso .ac .ac-trigger::after {
	color: #fff;
}

.bg-rosso .ac .ac-trigger {
	padding: 15px 0;
	font-weight: 600;
}

.bg-rosso .ac .ac-trigger:focus {
	color: #fff;
}

.bg-rosso .ac .ac-panel .ac-text {
	padding: 0 0 15px;
}

.bg-verde .ac {
	margin-bottom: 0;
	border-bottom: 1px solid rgba(255,255,255,0.3);
	border-top: none;
	border-left: none;
	border-right: none;
	background: transparent;
	color: #fff;
	padding-left: 10px;
	padding-right: 10px;
}

.bg-verde .ac:nth-child(1) {
	border-top: 1px solid rgba(255,255,255,0.3);
}

.bg-verde .ac.is-active {
	background: rgba(255,255,255,0.2);
}

.bg-verde .ac.is-active .number {
	background: #fff;
	color: #5fb257;
}

.bg-verde .ac .number {
	border-radius: 50px;
	border: 1.5px dashed #fff;
	text-align: center;
	height: 42px;
	width: 42px;
	margin-right: 15px;
	font-size: calc(22px + (23 - 22) * ((100vw - 300px) / (1600 - 300)));
}

.bg-verde .ac .ac-trigger,
.bg-verde .ac .ac-trigger::after {
	color: #fff;
}

.bg-verde .ac .ac-trigger {
	padding: 15px 0;
	font-weight: 600;
}

.bg-verde .ac .ac-trigger:focus {
	color: #fff;
}

.bg-verde .ac .ac-panel .ac-text {
	padding: 0 0 15px;
}

.bg-azzurro .ac {
	margin-bottom: 0;
	border-bottom: 1px solid rgba(255,255,255,0.3);
	border-top: none;
	border-left: none;
	border-right: none;
	background: transparent;
	color: #fff;
	padding-left: 10px;
	padding-right: 10px;
}

.bg-azzurro .ac:nth-child(1) {
	border-top: 1px solid rgba(255,255,255,0.3);
}

.bg-azzurro .ac.is-active {
	background: rgba(255,255,255,0.2);
}

.bg-azzurro .ac.is-active .number {
	background: #fff;
	color: #009bdd;
}

.bg-azzurro .ac .number {
	border-radius: 50px;
	border: 1.5px dashed #fff;
	text-align: center;
	height: 42px;
	width: 42px;
	margin-right: 15px;
	font-size: calc(22px + (23 - 22) * ((100vw - 300px) / (1600 - 300)));
}

.bg-azzurro .ac .ac-trigger,
.bg-azzurro .ac .ac-trigger::after {
	color: #fff;
}

.bg-azzurro .ac .ac-trigger {
	padding: 15px 0;
	font-weight: 600;
}

.bg-azzurro .ac .ac-trigger:focus {
	color: #fff;
}

.bg-azzurro .ac .ac-panel .ac-text {
	padding: 0 0 15px;
}

.bg-beige .ac {
	margin-bottom: 0;
	border-bottom: 1px solid rgba(255,255,255,0.3);
	border-top: none;
	border-left: none;
	border-right: none;
	background: transparent;
	color: #fff;
	padding-left: 10px;
	padding-right: 10px;
}

.bg-beige .ac:nth-child(1) {
	border-top: 1px solid rgba(255,255,255,0.3);
}

.bg-beige .ac.is-active {
	background: rgba(255,255,255,0.2);
}

.bg-beige .ac.is-active .number {
	background: #fff;
	color: #dab778;
}

.bg-beige .ac .number {
	border-radius: 50px;
	border: 1.5px dashed #fff;
	text-align: center;
	height: 42px;
	width: 42px;
	margin-right: 15px;
	font-size: calc(22px + (23 - 22) * ((100vw - 300px) / (1600 - 300)));
}

.bg-beige .ac .ac-trigger,
.bg-beige .ac .ac-trigger::after {
	color: #fff;
}

.bg-beige .ac .ac-trigger {
	padding: 15px 0;
	font-weight: 600;
}

.bg-beige .ac .ac-trigger:focus {
	color: #fff;
}

.bg-beige .ac .ac-panel .ac-text {
	padding: 0 0 15px;
}

.bg-marrone .ac {
	margin-bottom: 0;
	border-bottom: 1px solid rgba(255,255,255,0.3);
	border-top: none;
	border-left: none;
	border-right: none;
	background: transparent;
	color: #fff;
	padding-left: 10px;
	padding-right: 10px;
}

.bg-marrone .ac:nth-child(1) {
	border-top: 1px solid rgba(255,255,255,0.3);
}

.bg-marrone .ac.is-active {
	background: rgba(255,255,255,0.2);
}

.bg-marrone .ac.is-active .number {
	background: #fff;
	color: #8e8678;
}

.bg-marrone .ac .number {
	border-radius: 50px;
	border: 1.5px dashed #fff;
	text-align: center;
	height: 42px;
	width: 42px;
	margin-right: 15px;
	font-size: calc(22px + (23 - 22) * ((100vw - 300px) / (1600 - 300)));
}

.bg-marrone .ac .ac-trigger,
.bg-marrone .ac .ac-trigger::after {
	color: #fff;
}

.bg-marrone .ac .ac-trigger {
	padding: 15px 0;
	font-weight: 600;
}

.bg-marrone .ac .ac-trigger:focus {
	color: #fff;
}

.bg-marrone .ac .ac-panel .ac-text {
	padding: 0 0 15px;
}

.cnt {
	width: 100%;
	margin: 0 auto;
	padding-left: 12%;
	padding-right: 12%;
	position: relative;
}

img {
	display: block;
	max-width: 100%;
}

a {
	transition: all 0.5s ease;
	color: #0a2c56;
}

a:hover {
	transition: all 0.5s ease;
}

.clear {
	margin: 0;
	padding: 0;
	clear: both;
}

.vid-home {
	height: calc(100vh - 100px);
}

.shrink {
	flex-shrink: 0;
}

.flex-auto {
	width: auto;
}

.flex-column {
	flex-direction: column;
}

.flex-expand {
	flex: 1;
	min-width: 1px;
	width: 100%;
	max-width: 100%;
}

.flex-wrap {
	flex-wrap: wrap;
}

.flex,
.flex-mobile {
	display: flex;
}

.flex-left {
	justify-content: flex-start;
}

.flex-right {
	justify-content: flex-end;
}

.flex-center {
	justify-content: center;
}

.flex-middle {
	align-items: center;
}

.flex-top {
	align-items: flex-start;
}

.flex-bottom {
	align-items: flex-end;
}

.flex-space {
	justify-content: space-between;
}

.column-3 {
	column-count: 3;
	column-gap: 30px;
}

.col-2 {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: masonry;
	grid-gap: 30px;
}

.col-1-4 {
	width: 25%;
}

.col-3-4 {
	width: 75%;
}

.centered {
	margin-left: auto;
	margin-right: auto;
}

.d-table {
	display: table;
}

.block,
.d-block {
	display: block;
}

.width-100 {
	width: 100%;
}

.width-50 {
	width: 50%;
}

.width-45 {
	width: 45%;
}

.width-20 {
	width: calc(20% - 8px);
}

.height-100 {
	height: 100%;
}

.float-left {
	float: left;
}

.float-right {
	float: right;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 400;
}

.medium {
	font-weight: 500;
}

strong,
.strong {
	font-weight: 600;
	color: inherit;
}

.font-uppercase {
	text-transform: uppercase;
}

.font-center {
	text-align: center;
}

.font-right {
	text-align: right;
}

.font-left {
	text-align: left;
}

.font-underline {
	text-decoration: underline;
}

.font-65 {
	font-size: calc(33px + (60 - 33) * ((100vw - 300px) / (1600 - 300)));
	line-height: 1;
}

.font-50 {
	font-size: calc(30px + (45 - 30) * ((100vw - 300px) / (1600 - 300)));
	line-height: 1;
}

.font-40 {
	font-size: calc(25px + (40 - 25) * ((100vw - 300px) / (1600 - 300)));
	line-height: 1;
}

.font-35 {
	font-size: calc(25px + (35 - 25) * ((100vw - 300px) / (1600 - 300)));
	line-height: 1;
}

.font-26 {
	font-size: calc(23px + (26 - 23) * ((100vw - 300px) / (1600 - 300)));
}

.font-25 {
	font-size: calc(22px + (25 - 22) * ((100vw - 300px) / (1600 - 300)));
}

.font-20 {
	font-size: calc(18px + (20 - 18) * ((100vw - 300px) / (1600 - 300)));
}

.font-16 {
	font-size: calc(15px + (17 - 15) * ((100vw - 300px) / (1600 - 300)));
}

.font-15 {
	font-size: 15px;
}

.font-14 {
	font-size: 14px;
}

.line-height-12 {
	line-height: 1.2;
	font-weight: 500;
}

.no-link {
	color: inherit;
	text-decoration: none;
}

.no-link:hover {
	text-decoration: none;
	color: #0a2c56;
}

.gradient {
	background: #444;
	background: linear-gradient(180deg, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0.45) 100%);
}

.bg-gradient {
	background: rgba(10,44,86,0.7);
}

.bg-rosso {
	background: #cf302a;
}

.bg-beige {
	background: #dab778;
}

.bg-marrone {
	background: #8e8678;
}

.bg-verde {
	background: #5fb257;
}

.bg-azzurro {
	background: #009bdd;
}

.bg-verde {
	background: #5fb257;
}

.bg-azzurro {
	background: #009bdd;
}

.bg-bianco {
	background: #fff;
}

.bg-grigio {
	background: #f7f7f7;
}

.bg-blu {
	background: #0a2c56;
}

.bg-blu-2 {
	background: #183860;
}

.c-nero {
	color: #444;
}

.c-blu {
	color: #0a2c56;
}

.c-bianco {
	color: #fff;
}

.c-grigio-2 {
	color: #7b7b7b;
}

.radius-8 {
	border-radius: 8px;
}

.radius-20 {
	border-radius: 20px;
}

.btn {
	color: #fff;
	background: #0a2c56;
	padding: 11px 30px;
	box-sizing: border-box;
	text-decoration: none;
	border-radius: 150px;
	cursor: pointer;
	transition: all 0.5s ease;
	text-align: center;
	border: 1px solid #0a2c56;
	font-weight: 500;
	display: table;
	border: 1.5px solid #0a2c56;
}

.btn:hover {
	border: 1.5px solid #0a2c56;
	background: transparent;
	color: #0a2c56;
	transition: all 0.5s ease;
}

.btn.outline {
	border: 1.5px solid #0a2c56;
	background: transparent;
	color: #0a2c56;
}

.btn.outline:hover {
	color: #fff;
	background: #0a2c56;
}

.btn.outline.bianco {
	border: 1.5px solid #fff;
	color: #fff;
}

.btn.outline.bianco:hover {
	color: #0a2c56;
	background: #fff;
}

.btn-secondary {
	color: #0a2c56;
}

.btn-secondary img {
	transition: all 0.5s ease;
}

.btn-secondary:hover img {
	margin-left: 20px;
	transition: all 0.5s ease;
}

.btn-secondary.right:hover img {
	margin-right: 10px;
	transition: all 0.5s ease;
}

.circle {
	height: 30px;
	width: 30px;
	border-radius: 100px;
}

.border {
	border: 0.5px solid #7b7b7b;
}

.border-top {
	border-top: 0.5px solid #7b7b7b;
}

.border-bottom {
	border-bottom: 0.5px solid #7b7b7b;
}

.border-top-rosso {
	border-top: 1.5px solid #cf302a;
}

.border-top-azzurro {
	border-top: 1.5px solid #009bdd;
}

.border-top-verde {
	border-top: 1.5px solid #5fb257;
}

.border-top-beige {
	border-top: 1.5px solid #dab778;
}

.border-top-marrone {
	border-top: 1.5px solid #8e8678;
}

.margin-button {
	margin-bottom: 70px;
}

.margin-mappa {
	margin-bottom: 100px;
	margin-top: 100px;
}

.margin-0 {
	margin: 0;
}

.margin-xxsmall-top {
	margin-top: 5px;
}

.margin-xxsmall-bottom {
	margin-bottom: 5px;
}

.margin-xxsmall-left {
	margin-left: 5px;
}

.margin-xxsmall-right {
	margin-right: 5px;
}

.margin-xsmall-left {
	margin-left: 15px;
}

.margin-xsmall-right {
	margin-right: 15px;
}

.margin-xsmall-top {
	margin-top: 15px;
}

.margin-xsmall-bottom {
	margin-bottom: 15px;
}

.margin-small-left {
	margin-left: 30px;
}

.margin-small-right {
	margin-right: 30px;
}

.margin-small-top {
	margin-top: 30px;
}

.margin-small-bottom {
	margin-bottom: 30px;
}

.margin-left {
	margin-left: 60px;
}

.margin-right {
	margin-right: 60px;
}

.margin-top {
	margin-top: 60px;
}

.margin-bottom {
	margin-bottom: 60px;
}

.margin-large-left {
	margin-left: 100px;
}

.margin-large-right {
	margin-right: 100px;
}

.margin-large-top {
	margin-top: 100px;
}

.margin-large-bottom {
	margin-bottom: 100px;
}

.no-padding-right {
	padding-right: 0 !important;
}

.padding-xxsmall-top {
	padding-top: 5px;
}

.padding-xxsmall-left {
	padding-left: 5px;
}

.padding-xxsmall-right {
	padding-right: 5px;
}

.padding-xxsmall-bottom {
	padding-bottom: 5px;
}

.padding-xsmall-top {
	padding-top: 15px;
}

.padding-xsmall-left {
	padding-left: 15px;
}

.padding-xsmall-right {
	padding-right: 15px;
}

.padding-xsmall-bottom {
	padding-bottom: 15px;
}

.padding-small-left {
	padding-left: 30px;
}

.padding-small-right {
	padding-right: 30px;
}

.padding-small-top {
	padding-top: 30px;
}

.padding-small-bottom {
	padding-bottom: 30px;
}

.padding-left {
	padding-left: 60px;
}

.padding-right {
	padding-right: 60px;
}

.padding-top {
	padding-top: 60px;
}

.padding-bottom {
	padding-bottom: 60px;
}

.padding-large-left {
	padding-left: 100px;
}

.padding-large-right {
	padding-right: 100px;
}

.padding-large-top {
	padding-top: 100px;
}

.padding-large-bottom {
	padding-bottom: 100px;
}

.input::placeholder,
.textarea::placeholder {
	color: #0a2c56;
	opacity: 0.6;
	font-style: italic;
}

label {
	font-size: 14px;
}

.file-cta,
.file-name,
input[type="text"],
input[type="email"],
input[type="password"],
select.input,
textarea.textarea {
	border: none;
	font-family: inherit;
	font-size: calc(15px + (17 - 15) * ((100vw - 300px) / (1600 - 300)));
	padding: 15px 25px;
	background: rgba(255,255,255,0.4);
	box-shadow: 0 0 0 0;
	border-radius: 100px;
	width: 100%;
	box-sizing: border-box;
	color: #0a2c56;
	height: auto;
	border: 1.5px solid #bbb;
}

.file-cta {
	width: auto;
	border-right: none;
}

textarea.textarea {
	height: 150px;
	padding: 15px 25px;
	background: rgba(255,255,255,0.4);
	border-radius: 25px;
	border: none;
	border: 1.5px solid #bbb;
}

input[type="submit"],
button {
	box-shadow: 0 0 0 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	curson: pointer;
	transition: all 0.5s ease;
	border: 0;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
textarea.textarea:focus {
	border: 1.5px solid #183860;
	box-shadow: none;
}

.bg-blu input[type="text"]:focus,
.bg-blu-2 input[type="text"]:focus,
.bg-blu input[type="email"]:focus,
.bg-blu-2 input[type="email"]:focus,
.bg-blu input[type="password"]:focus,
.bg-blu-2 input[type="password"]:focus,
.bg-blu textarea.textarea:focus,
.bg-blu-2 textarea.textarea:focus {
	border: 1.5px solid #fff;
	color: #fff;
}

.bg-blu .input::placeholder,
.bg-blu-2 .input::placeholder,
.bg-blu .textarea::placeholder,
.bg-blu-2 .textarea::placeholder {
	color: #fff;
}

.no-style {
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: inherit;
}

button {
	cursor: pointer;
}

.megamenu li {
	padding-top: 38px;
	padding-bottom: 38px;
	margin: 0 15px;
}

.megamenu li a {
	color: #0a2c56;
	font-weight: 500;
	font-size: calc(16px + (18 - 16) * ((100vw - 300px) / (1600 - 300)));
	letter-spacing: -0.5px;
}

.megamenu li a:hover {
	position: relative;
}

.megamenu li a:hover:after {
	position: absolute;
	bottom: -5px;
	left: 0;
	content: "";
	width: 100%;
	display: block;
	background: #0a2c56;
	height: 2px;
}

.megamenu li .submenu {
	display: none;
	position: absolute;
	background: #fff;
	width: 100%;
	left: 0%;
	top: 98px;
	-webkit-box-shadow: 0 40px 50px -30px rgba(60,60,60,0.2);
	box-shadow: 0 40px 50px -30px rgba(60,60,60,0.2);
	z-index: 9999;
	box-sizing: border-box;
}

.megamenu li .submenu a:hover {
	position: relative;
}

.megamenu li .submenu a:hover:after {
	display: none;
	content: "";
}

.megamenu li .submenu.open {
	display: block;
}

.megamenu li .submenu.minimenu {
	width: 300px;
	padding: 20px 10px;
	text-align: left;
}

.megamenu li .submenu.minimenu li {
	padding: 10px;
}

.megamenu li .submenu.minimenu li a:hover {
	position: relative;
}

.megamenu li .submenu.minimenu li a:hover:after {
	position: absolute;
	bottom: -5px;
	left: 0;
	content: "";
	width: 100%;
	display: block;
	background: #0a2c56;
	height: 2px;
}

.carosello-menu .swiper-slide {
	width: auto;
}

.swiper-pagination-bullet,
.swiper-pagination-bullet-active {
	background: #fff;
}

.swiper-pagination {
	bottom: 20px !important;
}

.swiper-pagination.x4-certificazioni,
.swiper-pagination.x3,
.swiper-pagination.swiper-pagination-news,
.swiper-pagination.timeline {
	position: relative;
}

.swiper-pagination.x4-certificazioni .swiper-pagination-bullet,
.swiper-pagination.x3 .swiper-pagination-bullet,
.swiper-pagination.swiper-pagination-news .swiper-pagination-bullet,
.swiper-pagination.timeline .swiper-pagination-bullet,
.swiper-pagination.x4-certificazioni .swiper-pagination-bullet-active,
.swiper-pagination.x3 .swiper-pagination-bullet-active,
.swiper-pagination.swiper-pagination-news .swiper-pagination-bullet-active,
.swiper-pagination.timeline .swiper-pagination-bullet-active {
	background: #0a2c56;
}

.swiper-pagination.x4 {
	position: relative;
}

.swiper-pagination.x4 .swiper-pagination-bullet,
.swiper-pagination.x4 .swiper-pagination-bullet-active {
	background: #0a2c56;
}

.swiper-pagination.timeline {
	margin-top: 60px;
	display: none;
}

.mySwiper2 .swiper-slide:after {
	content: "";
	height: 27px;
	width: 27px;
	display: block;
	position: absolute;
	right: 20px;
	bottom: 20px;
	z-index: 9990;
	background: url("../img/zoom.svg") no-repeat;
}

.height-box {
	height: 70vh;
}

.goto {
	display: block;
}

.arrow {
	animation-name: move;
	animation-duration: 1.5s;
	animation-iteration-count: infinite;
	animation-direction: alternate;
	position: absolute;
	left: 50%;
	margin-left: -10px;
}

.hover {
	transition: all 0.5s ease;
}

.hover .text {
	transition: all 0.5s ease;
	opacity: 0;
	height: 0;
}

.hover:hover {
	transition: all 0.5s ease;
}

.hover:hover .text {
	opacity: 1;
	height: 100%;
	transition: all 0.5s ease;
}

.list a {
	position: relative;
}

.list a:hover:after {
	position: absolute;
	bottom: -3px;
	left: 0;
	content: "";
	width: 100%;
	display: block;
	background: #fff;
	height: 2px;
}

.list .active:after {
	position: absolute;
	bottom: -3px;
	left: 0;
	content: "";
	width: 100%;
	display: block;
	background: #fff;
	height: 2px;
}

.news .object-cover {
	transition: all 0.8s ease;
}

.news .link {
	transition: all 0.8s ease;
}

.news:hover .object-cover {
	transform: scale(1.1);
	transition: all 0.8s ease;
}

.news:hover .link {
	transition: all 0.8s ease;
	margin-left: 10px;
}

#bg-menu-mobile {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	right: -100%;
	background-color: #fff;
	will-change: transform;
	z-index: 999;
}

#menu-mobile {
	z-index: 9999;
}

#menu-mobile .margin-xsmall-top {
	margin-top: 10px;
}

#menu-mobile ul {
	width: 100%;
	position: fixed;
	top: 100px;
	left: 0;
	list-style: none;
	color: #0a2c56;
	z-index: 9997;
	display: none;
	margin-top: 0px;
}

#menu-mobile ul li {
	font-size: calc(23px + (30 - 23) * ((100vw - 300px) / (1600 - 300)));
	position: relative;
	margin-bottom: 20px;
	left: 105%;
	cursor: pointer;
	will-change: transform;
	width: 90%;
}

#menu-mobile ul li a {
	color: #0a2c56;
	font-weight: 500;
	text-decoration: none;
}

#menu-mobile ul li a:hover,
#menu-mobile ul li a.active {
	color: #444;
	-webkit-transition: all 0.1s ease-in-out;
	-moz-transition: all 0.1s ease-in-out;
	transition: all 0.1s ease-in-out;
}

#hamburger {
	width: 30px;
	height: 22px;
	position: relative;
	cursor: pointer;
	background-color: transparent;
}

#hamburger:hover span:nth-child(1) {
	top: -1px;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}

#hamburger:hover span:nth-child(3) {
	top: 21px;
	-webkit-transition: 0.16s ease-in-out;
	-moz-transition: 0.16s ease-in-out;
	-o-transition: 0.16s ease-in-out;
	transition: 0.16s ease-in-out;
}

#hamburger span {
	z-index: 3;
	display: block;
	position: absolute;
	height: 1.5px;
	width: 100%;
	background: #0a2c56;
	border-radius: 5px;
	opacity: 1;
	left: 0;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.25s ease-in-out;
}

#hamburger span:nth-child(1) {
	top: 0px;
}

#hamburger span:nth-child(2) {
	top: 10px;
}

#hamburger span:nth-child(3) {
	top: 20px;
}

#hamburger.open span:nth-child(1) {
	top: 11px;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-o-transform: rotate(135deg);
	transform: rotate(135deg);
	background-color: #0a2c56;
}

#hamburger.open span:nth-child(2) {
	opacity: 0;
	left: -30px;
	-webkit-transition: 0.16s ease-in-out;
	-moz-transition: 0.16s ease-in-out;
	-o-transition: 0.16s ease-in-out;
	transition: 0.16s ease-in-out;
}

#hamburger.open span:nth-child(3) {
	top: 11px;
	-webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	-o-transform: rotate(-135deg);
	transform: rotate(-135deg);
	background-color: #0a2c56;
}

ul.tabs {
	margin: 0 0 30px 0 !important;
	padding: 0;
	float: left;
	list-style: none;
	width: 100%;
	justify-content: center;
	flex-wrap: wrap;
}

ul.tabs li {
	overflow: hidden;
	position: relative;
	margin: 0 5px 10px;
	border: 1px solid #0a2c56;
	color: #0a2c56;
	background: #fff;
}

ul.tabs li:hover {
	background-color: #0a2c56;
	color: #fff;
	border: 1px solid #0a2c56;
}

ul.tabs li.active {
	background-color: #0a2c56;
	color: #fff;
	display: block;
}

.tab_container {
	border-top: none;
	clear: both;
	float: left;
	width: 100%;
	background: #fff;
	overflow: auto;
}

.tab_content {
	padding: 0px;
	display: none;
}

.timeline.swiper-button-next {
	color: #0a2c56;
	right: -10%;
}

.timeline.swiper-button-prev {
	color: #0a2c56;
	left: -10%;
}

.carosello-timeline .text {
	margin-top: 100px;
}

.carosello-timeline .cnt-time {
	position: relative;
}

.carosello-timeline .cnt-time .time {
	background: #0a2c56;
	color: #fff;
	padding: 5px 10px;
	border-radius: 3px;
	display: table;
	text-align: center;
	margin-bottom: 80px;
	position: relative;
}

.carosello-timeline .cnt-time .time:after {
	content: "";
	height: 100px;
	border-left: 1px dashed #0a2c56;
	width: 2px;
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -0.5px;
	display: block;
	z-index: -1;
}

.carosello-timeline .cnt-time .dot {
	height: 12px;
	width: 12px;
	border-radius: 12px;
	background: #0a2c56;
	bottom: -70px;
	left: 50%;
	margin-left: -6px;
	position: absolute;
}

.time-line {
	background: #0a2c56;
	height: 2px;
	top: 97.5px;
}

.zoom {
	overflow: hidden;
}

.zoom img {
	transition: all 0.9s ease;
}

.zoom:hover img {
	transform: scale(1.1);
	transition: all 0.9s ease;
}

.history-tl-container {
	margin: auto;
	display: block;
	position: relative;
}

.history-tl-container ul.tl {
	margin: 0;
	padding: 0;
	display: inline-block;
}

.history-tl-container ul.tl li {
	list-style: none;
	margin: auto;
	margin-left: 200px;
	min-height: 50px;
	border-left: 1px dashed #0a2c56;
	padding: 0 0 50px 30px;
	position: relative;
}

.history-tl-container ul.tl li .item-title,
.history-tl-container ul.tl li .item-detail {
	color: #444;
}

.history-tl-container ul.tl li .timestamp {
	color: #0a2c56;
	position: absolute;
	width: 150px;
	left: -180px;
	text-align: right;
}

.history-tl-container ul.tl li:last-child {
	border-left: 0;
}

.history-tl-container ul.tl li::before {
	position: absolute;
	left: -11px;
	top: 0px;
	content: " ";
	border: 8px solid rgba(255,255,255,0.74);
	border-radius: 500%;
	background: #0a2c56;
	height: 20px;
	width: 20px;
	transition: all 500ms ease-in-out;
}

.history-tl-container ul.tl li:hover::before {
	border-color: #0a2c56;
	transition: all 1000ms ease-in-out;
}

@media screen and (max-width: 1300px) {
	.timeline.swiper-button-next {
		right: -5%;
	}

	.timeline.swiper-button-prev {
		left: -5%;
	}

	.megamenu li {
		margin: 0 8px;
	}

	.cnt {
		padding-left: 5%;
		padding-right: 5%;
	}
}

@media screen and (max-width: 1215px) {
	.logo-divisione {
		width: 80px;
	}

	header {
		padding-top: 10px;
		padding-bottom: 10px;
	}

	.height-box {
		height: 50vh;
	}
}

@media screen and (max-width: 1023px) {
	.width-20 {
		width: calc(33.333% - 8px);
	}

	.no-padding-left-mobile {
		padding-left: 0 !important;
	}

	.no-padding-right-mobile {
		padding-right: 0 !important;
	}

	.no-margin-left-mobile {
		margin-left: 0 !important;
	}

	.no-margin-right-mobile {
		margin-right: 0 !important;
	}

	.flex {
		display: block;
	}

	.width-50,
	.width-45 {
		width: 100%;
	}

	button.btn {
		width: 100%;
		display: block;
		margin-top: 30px;
	}

	.vid,
	.vid-home {
		height: 55vh;
	}
}

@media screen and (max-width: 768px) {
	.width-20 {
		width: calc(50% - 8px);
	}

	.swiper-pagination.timeline {
		display: block;
	}

	.timeline.swiper-button-next,
	.timeline.swiper-button-prev {
		display: none;
	}

	.logo-divisione {
		width: 65px;
	}

	.invert-order-mobile {
		flex-direction: column-reverse;
	}

	.height-box {
		height: auto;
	}

	.no-margin-top-mobile {
		margin-top: 0 !important;
	}

	.no-margin-top-mobile {
		margin-bottom: 0 !important;
	}

	.padding-right-mobile {
		padding-right: 5% !important;
	}

	.margin-mappa {
		margin-bottom: 60px;
		margin-top: 0px;
	}

	.padding-left {
		padding-left: 40px;
	}

	.padding-right {
		padding-right: 40px;
	}

	.padding-top {
		padding-top: 40px;
	}

	.padding-bottom {
		padding-bottom: 40px;
	}

	.padding-large-left {
		padding-left: 60px;
	}

	.padding-large-right {
		padding-right: 60px;
	}

	.padding-large-top {
		padding-top: 60px;
	}

	.padding-large-bottom {
		padding-bottom: 60px;
	}

	.margin-left {
		margin-left: 40px;
	}

	.margin-right {
		margin-right: 40px;
	}

	.margin-top {
		margin-top: 40px;
	}

	.margin-bottom {
		margin-bottom: 40px;
	}

	.margin-large-left {
		margin-left: 60px;
	}

	.margin-large-right {
		margin-right: 60px;
	}

	.margin-large-top {
		margin-top: 60px;
	}

	.margin-large-bottom {
		margin-bottom: 60px;
	}

	.padding-large-top-mobile {
		padding-top: 100px;
	}

	.padding-large-bottom-mobile {
		padding-bottom: 60px;
	}

	.history-tl-container ul.tl li {
		margin-left: 10px;
	}

	.history-tl-container ul.tl li .timestamp {
		text-align: left;
		position: relative;
		width: auto;
		left: 0;
	}
}

@-moz-keyframes move {
	0% {
		top: 35px;
	}

	100% {
		top: 45px;
	}
}

@-webkit-keyframes move {
	0% {
		top: 35px;
	}

	100% {
		top: 45px;
	}
}

@-o-keyframes move {
	0% {
		top: 35px;
	}

	100% {
		top: 45px;
	}
}

@keyframes move {
	0% {
		top: 35px;
	}

	100% {
		top: 45px;
	}
}

/* Seleziona ogni secondo blocco (il 2°, 4°, 6°, ecc.) */
.row-reverse:nth-of-type(even) .columns {
	flex-direction: row-reverse;
}

/* Opzionale: aggiungi un po' di spazio tra le colonne quando sono invertite */
.row-reverse:nth-of-type(even) .column.is-half {
	padding-right: 5rem;
	padding-left: 5rem;
}

.row-reverse:nth-of-type(odd) .column.is-half {
	padding-right: 5rem;
	padding-left: 5rem;
}

/* Responsività: su mobile (es. sotto i 768px) riportiamo tutto in colonna standard */
@media (max-width: 768px) {
	.row-reverse:nth-of-type(even) .columns {
		flex-direction: column;
	}

}