/* Scss Document */
@import url("https://fonts.googleapis.com/css2?family=Fira+Sans:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css");
/* Base colors */
/* Transitions */
/* SCSS Includes */
/* Scss Document */
/* Btn */
.btn {
  font-family: "Fira Sans", sans-serif;
  -webkit-border-radius: 0 !important;
  -ms-border-radius: 0 !important;
  border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  border-width: 2px;
  padding: 8px 20px;
  font-size: 13px;
  -webkit-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  -moz-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  -ms-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  text-transform: uppercase;
  font-weight: 600 !important; }
  .btn i.bi {
    position: relative;
    -webkit-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    -moz-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    -ms-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    left: 0; }

.btn:hover i.bi {
  left: 7px; }

.btn-sm {
  padding: 5px 15px; }

.btn-default, .btn-default:focus {
  background-color: transparent;
  border-color: #fff;
  color: #fff; }

.btn-default:hover {
  background-color: #fff;
  border-color: #fff;
  color: #213B80; }

.btn-primary, .btn-primary:focus {
  background-color: #213B80;
  border: none;
  color: #fff; }

.btn-primary:hover {
  color: #fff !important;
  background-color: #AD1A1F; }

.btn-secondary, .btn-secondary:focus {
  background-color: #AD1A1F;
  border-color: #AD1A1F;
  color: #fff; }

.btn-secondary:hover {
  background-color: #213B80;
  border-color: #213B80;
  color: #fff; }

.btn-light, .btn-light:focus {
  background-color: #e5e5e5;
  border-color: #e5e5e5;
  color: #213B80; }

.btn-light:hover {
  background-color: #fff;
  border-color: #fff;
  color: #213B80; }

.btn-outline-light {
  border-color: #e5e5e5;
  color: #e5e5e5; }

.btn-outline-light:hover, .btn-outline-light:focus {
  background: #e5e5e5;
  color: #213B80; }

.btn-outline-primary {
  border-color: #213B80;
  color: #213B80; }

.btn-outline-primary:hover, .btn-outline-primary:focus {
  background: #213B80;
  color: #fff;
  border-color: #213B80; }

.btn-outline-default {
  border-color: #424443;
  color: #424443; }

.btn-outline-default:hover, .btn-outline-default:focus {
  background: #424443;
  color: #fff;
  border-color: #424443; }

/* Scss Document */
.wpcf7 form.sent .wpcf7-response-output {
  background: #78BE00;
  border: none;
  padding: 20px;
  color: #fff;
  font-size: 1em;
  margin: 2em 0; }

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {
  background: #FFEA83;
  border: none;
  padding: 20px;
  color: #424443;
  font-size: 1em;
  margin: 2em 0; }

.wpcf7 form.aborted .wpcf7-response-output {
  background: #dc3232;
  border: none;
  padding: 20px;
  color: #fff;
  font-size: 1em;
  margin: 2em 0; }

.wpcf7-not-valid-tip {
  color: #dc3232;
  font-size: 0.9em;
  font-weight: normal;
  display: inline-block;
  margin-top: 5px; }

/* Scss Document */
/* Top Link Wrapper */
#top-link-wrapper {
  position: fixed;
  z-index: 999999;
  bottom: 100px;
  right: -50px;
  -webkit-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  -moz-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  -ms-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995); }
  #top-link-wrapper a {
    display: block;
    color: #e5e5e5;
    text-align: center;
    width: 40px;
    height: 40px;
    padding-top: 10px;
    background: #213B80;
    -webkit-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    -moz-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    -ms-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995); }
    #top-link-wrapper a:hover {
      background: #264494;
      color: #fff; }
  #top-link-wrapper.visible {
    right: 0px; }

/* Footer */
.logo-footer {
  width: 100%;
  height: auto;
  max-width: 180px; }

/* Widget menu */
.widget_nav_menu ul {
  list-style-type: none;
  margin: 0 0 30px;
  padding: 0; }
  .widget_nav_menu ul li {
    list-style-type: none;
    margin: 0;
    padding: 1px 0; }
    .widget_nav_menu ul li a {
      color: #e5e5e5;
      font-weight: 400;
      font-size: 0.9em;
      text-transform: uppercase; }
      .widget_nav_menu ul li a:hover {
        color: #fff; }
    .widget_nav_menu ul li.current_page_item a {
      font-weight: 700; }

@media (max-width: 768px) {
  .logo-footer {
    width: 100%;
    height: auto;
    max-width: 140px; }

  /* Top Link Wrapper */
  #top-link-wrapper a {
    padding-top: 8px; }
    #top-link-wrapper a:hover {
      padding-top: 6px; } }
/* Scss Document */
/* Navbar toggler */
.navbar-toggler {
  border: none;
  background: transparent !important;
  padding: 10px 0 !important;
  outline: none !important;
  font-size: 3em !important;
  outline: 0 !important;
  box-shadow: none; }
  .navbar-toggler:focus {
    outline: none !important;
    outline: 0 !important;
    box-shadow: none; }

/* Logo */
.logo {
  height: 60px;
  margin: 10px 0;
  width: auto;
  -webkit-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  -moz-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  -ms-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995); }
  .logo:hover {
    -moz-opacity: 0.75;
    -khtml-opacity: 0.75;
    opacity: 0.75; }

/* Navbar */
header {
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
  -webkit-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  -moz-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  -ms-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995); }
  header.is-hidden {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%); }
  header .navbar-brand {
    padding: 0;
    margin: 0; }

/* Top Navbar */
.navbar .nav-item {
  padding: 0; }
  .navbar .nav-item .nav-link {
    font-family: "Fira Sans", sans-serif;
    color: #424443;
    padding: 10px 20px;
    margin: 15px 5px;
    position: relative;
    font-size: 16px;
    font-weight: 500;
    text-transform: uppercase;
    -webkit-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    -moz-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    -ms-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995); }
    .navbar .nav-item .nav-link.active {
      color: #fff !important;
      background: #213B80;
      text-decoration: none !important; }
    .navbar .nav-item .nav-link:hover, .navbar .nav-item .nav-link:focus {
      color: #fff !important;
      background: #AD1A1F;
      text-decoration: none !important; }
  .navbar .nav-item:hover {
    color: #fff !important; }
    .navbar .nav-item:hover .nav-link {
      color: #fff !important; }
  .navbar .nav-item.bg-primary {
    padding: 0 0 0 20px;
    color: #fff !important;
    background: transparent !important;
    -webkit-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    -moz-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    -ms-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995); }
    .navbar .nav-item.bg-primary .nav-link {
      background: #213B80 !important;
      padding: 5px 20px;
      color: #fff !important; }
    .navbar .nav-item.bg-primary:hover {
      background: transparent !important; }
      .navbar .nav-item.bg-primary:hover .nav-link {
        background: #AD1A1F !important; }

.dropdown-toggle::after {
  content: none; }

/* Dropdown */
.dropdown-menu, .dropdown-menu.show {
  border-radius: 0;
  border: none;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.3);
  padding: 0;
  left: 0;
  /* corrisponde al padding */
  z-index: 1000 !important; }

.dropdown-item {
  background: light-color;
  color: #424443;
  font-family: "Fira Sans", sans-serif;
  font-weight: 400;
  padding: 10px 25px;
  font-size: 14px;
  -webkit-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  -moz-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  -ms-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  position: relative; }
  .dropdown-item:hover, .dropdown-item:focus {
    background: #d8d8d8; }

/* Dropdown on hover open */
@media all and (min-width: 992px) {
  .navbar .nav-item .dropdown-menu {
    display: none;
    -webkit-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    -moz-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    -ms-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995); }

  .navbar .nav-item:hover .nav-link {
    color: #fff; }

  .navbar .nav-item:hover .dropdown-menu {
    display: block; }

  .navbar .nav-item .dropdown-menu {
    margin-top: 0; } }
/* Large devices (large desktops, 1200px and up) */
@media (max-width: 1400px) {
  .logo {
    height: 50px; }

  .navbar .nav-item {
    padding: 0; }
    .navbar .nav-item .nav-link {
      padding: 25px 15px;
      font-size: 13px; } }
/* Large devices (large desktops, 1200px and up) */
@media (max-width: 1200px) {
  .logo {
    height: 50px; }

  .navbar-toggler {
    font-size: 3.5em !important; }

  .nav-link {
    margin: 0 !important;
    border-bottom: 1px solid #999999;
    display: block;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    text-align: center !important;
    padding: 14px 0 !important; } }
/* Medium devices (desktops, 992px and up) */
/* Small devices (tablets, 768px and up) */
@media (max-width: 768px) {
  .logo {
    height: 40px; } }
/* Extra Small devices (smartphones, 480px and up) XS */
/* Extra Extra Small devices (smartphones, 320px and up) XXS */
.pace {
  -webkit-pointer-events: none;
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

.pace-inactive {
  display: none; }

.pace .pace-progress {
  background: #213B80;
  position: fixed;
  z-index: 2000;
  top: 0;
  right: 100%;
  width: 100%;
  height: 1px; }

/* Swiper */
.swiper-pagination {
  bottom: 0 !important; }

.swiper-pagination-bullet {
  background: rgba(255, 255, 255, 0.4) !important;
  opacity: 1 !important;
  height: 4px !important;
  -webkit-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  -moz-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  -ms-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  -webkit-border-radius: 0 !important; }
  .swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 32px;
    background: white !important;
    border-radius: 0 !important;
    -moz-border-radius: 0 !important;
    -webkit-border-radius: 0 !important; }

.swiper-button-next {
  cursor: pointer;
  color: #e5e5e5 !important;
  right: 30px !important;
  font-size: 0.8em !important; }

.swiper-button-prev {
  cursor: pointer;
  color: #e5e5e5 !important;
  left: 30px !important;
  font-size: 0.8em !important; }

.slide-content {
  opacity: 0;
  -webkit-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  -moz-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  -ms-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995); }
  .slide-content h1 {
    -webkit-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    -moz-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    -ms-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    transition-delay: 500ms;
    -webkit-transition-delay: 500ms;
    -moz-transition-delay: 500ms;
    position: relative;
    right: 100px;
    opacity: 0; }
  .slide-content p {
    -webkit-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    -moz-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    -ms-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    transition-delay: 1000ms;
    -webkit-transition-delay: 1000ms;
    -moz-transition-delay: 1000ms;
    position: relative;
    right: 100px;
    opacity: 0; }
  .slide-content a {
    -webkit-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    -moz-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    -ms-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
    transition-delay: 1500ms;
    -webkit-transition-delay: 1500ms;
    -moz-transition-delay: 1500ms;
    position: relative;
    right: 100px;
    opacity: 0; }
  .slide-content.animate-in {
    opacity: 1; }
    .slide-content.animate-in h1 {
      right: 0;
      opacity: 1; }
    .slide-content.animate-in p {
      right: 0;
      opacity: 1; }
    .slide-content.animate-in a {
      right: 0;
      opacity: 1; }

/* Scss Document */
.table-dark {
  --bs-table-bg: $default-color;
  --bs-table-striped-bg: #2c3034;
  --bs-table-striped-color: #fff;
  --bs-table-active-bg: #373b3e;
  --bs-table-active-color: #fff;
  --bs-table-hover-bg: #323539;
  --bs-table-hover-color: #fff;
  color: #e5e5e5;
  border-color: 1px solid rgba(229, 229, 229, 0.1); }

/* Scss Document */
body {
  font-weight: 300; }

p, li {
  line-height: 1.5em; }

p.lead {
  line-height: 1.5em; }

b, strong {
  font-weight: 800; }

.primary-font {
  font-family: "Fira Sans", sans-serif; }

.secondary-font {
  font-family: "Fira Sans", sans-serif; }

h1, .h1 {
  font-family: "Fira Sans", sans-serif;
  font-weight: 700;
  color: #213B80;
  line-height: 1.15em; }

h2, .h2 {
  font-family: "Fira Sans", sans-serif;
  font-weight: 700;
  color: #213B80;
  line-height: 1.15em; }

h3, .h3 {
  font-family: "Fira Sans", sans-serif;
  font-weight: 700;
  color: #213B80;
  line-height: 1.15em; }

h4, .h4 {
  font-family: "Fira Sans", sans-serif;
  font-weight: 700;
  color: #213B80;
  line-height: 1.15em; }

h5, .h5 {
  font-family: "Fira Sans", sans-serif;
  font-weight: 700;
  color: #213B80;
  line-height: 1.15em; }

h6, .h6 {
  font-family: "Fira Sans", sans-serif;
  font-weight: 700;
  color: #213B80;
  line-height: 1.15em; }

h1 span.display-5, h1.display-5, .display-5,
h1 span.display-4, h1.display-4, .display-4,
h1 span.display-3, h1.display-3, .display-3,
h1 span.display-2, h1.display-2, .display-2,
h1 span.display-1, h1.display-1, .display-1 {
  line-height: 1.15 !important;
  font-weight: 700; }

.nowrap {
  white-space: nowrap; }

.small {
  font-size: 0.85em; }

.x-small, .extra-small {
  font-size: 0.7em; }

a {
  color: #213B80;
  text-decoration: none;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out; }

a:hover, a:focus {
  color: #AD1A1F;
  text-decoration: none; }

h1 a:hover, h1 a:focus,
h2 a:hover, h2 a:focus,
h3 a:hover, h3 a:focus,
h4 a:hover, h4 a:focus {
  text-decoration: none !important; }

/* FW */
.fw-100 {
  font-weight: 100; }

.fw-200 {
  font-weight: 200; }

.fw-300 {
  font-weight: 300; }

.fw-400 {
  font-weight: 400; }

.fw-500 {
  font-weight: 500; }

.fw-600 {
  font-weight: 600; }

.fw-700 {
  font-weight: 700; }

.fw-800 {
  font-weight: 800; }

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

.letter-spacing {
  letter-spacing: 0.1em; }

/* COLORS */
.color-white {
  color: #fff !important; }

.color-light {
  color: #e5e5e5 !important; }

.color-light-alt {
  color: #999999 !important; }

.color-dark {
  color: #000 !important; }

.color-default {
  color: #424443 !important; }

.color-primary {
  color: #213B80 !important; }

.color-secondary {
  color: #AD1A1F !important; }

a.color-white {
  color: #fff; }

a.color-white:hover, a.color-white:focus {
  color: #e5e5e5 !important; }

a.color-light {
  color: #e5e5e5; }

a.color-light:hover, a.color-light:focus {
  color: #fff !important; }

a.color-default {
  color: #424443; }

a.color-default:hover, a.color-default:focus {
  color: #213B80 !important; }

a.color-primary {
  color: #213B80; }

a.color-primary:hover, a.color-primary:facus {
  color: #AD1A1F !important; }

a.color-secondary {
  color: #AD1A1F; }

a.color-secondary:hover, a.color-secondary:focus {
  color: #213B80 !important; }

@media (max-width: 1200px) {
  html {
    font-size: 0.95em; } }
@media (max-width: 992px) {
  html {
    font-size: 0.9em; } }
@media (max-width: 768px) {
  html {
    font-size: 0.85em; } }
@media (max-width: 576px) {
  html {
    font-size: 0.8em; } }
html {
  -webkit-font-smoothing: subpixel-antialiased;
  height: 100%; }

body {
  color: #424443;
  font-weight: 300;
  font-style: normal;
  font-family: "Fira Sans", sans-serif;
  overflow-x: hidden;
  overflow-y: auto; }

/* LIMITO CONTAINER FLUID */
.container-limit {
  max-width: 1800px !important; }

::selection {
  color: #e5e5e5;
  background: #213B80; }

.bg-primary ::selection {
  color: #fff;
  background: #1c326c; }

.filter {
  background: rgba(23, 40, 87, 0.8); }

.filter-primary {
  background: rgba(33, 59, 128, 0.8); }

.filter-default {
  background: rgba(0, 0, 0, 0.7); }

.rounded {
  -webkit-border-radius: 30px !important;
  -ms-border-radius: 30px !important;
  border-radius: 30px !important;
  -moz-border-radius: 30px !important; }

.rounded-sm {
  -webkit-border-radius: 15px !important;
  -ms-border-radius: 15px !important;
  border-radius: 15px !important;
  -moz-border-radius: 15px !important; }

.logo-filter {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: url("../images/filter-bg.svg") no-repeat left center;
  background-size: cover;
  mix-blend-mode: color;
  animation: fade-in 5s forwards;
  animation-timing-function: ease-out; }

@keyframes fade-in {
  0% {
    left: -2000px; }
  50% {
    left: -2000px; }
  100% {
    left: 0; } }
.home-icon {
  width: 100%;
  max-width: 100px;
  height: auto; }

.servizi-item .home-icon {
  width: 100%;
  max-width: 100px;
  height: auto;
  transform: scale(1, 1);
  -webkit-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  -moz-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  -ms-transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995);
  transition: all 0.6s cubic-bezier(0.535, 0.125, 0, 0.995); }
.servizi-item:hover .home-icon {
  transform: scale(1.15, 1.15); }

.text-container {
  display: inline-block;
  width: 100%;
  max-width: 600px; }

.home-main-content {
  position: relative;
  overflow: visible; }
  .home-main-content:after {
    content: '';
    position: absolute;
    right: -50px;
    top: -200px;
    width: 250px;
    height: 250px;
    background: url("../images/icon-sfasa.svg;") no-repeat center center;
    background-size: cover;
    mix-blend-mode: color; }

.gradient-filter {
  background: #172857;
  background: -moz-linear-gradient(90deg, #172857 0%, rgba(23, 40, 87, 0.5) 50%, rgba(23, 40, 87, 0) 100%);
  background: -webkit-linear-gradient(90deg, #172857 0%, rgba(23, 40, 87, 0.5) 570%, rgba(23, 40, 87, 0) 100%);
  background: linear-gradient(90deg, #172857 0%, rgba(23, 40, 87, 0.5) 50%, rgba(23, 40, 87, 0) 100%); }

/* progetti-item */
/*.progetti-item-wrapper {
	transform: skew(12deg,0) !important;
	overflow:hidden;
}
.progetti-item {
	transform: skew(-12deg,0) !important;
}*/
.progetti-item figure {
  overflow: hidden;
  position: relative;
  margin: 0;
  background: #213B80;
  -webkit-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  -moz-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  -ms-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995); }

.progetti-item figure figcaption {
  text-align: center;
  background: rgba(33, 59, 128, 0.85);
  font-size: 1.5em;
  text-transform: uppercase;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  align-items: center;
  color: #fff;
  opacity: 0;
  -webkit-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  -moz-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  -ms-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  display: flex;
  align-items: center;
  text-align: center;
  font-weight: 600; }

.progetti-item figure:hover figcaption {
  opacity: 1;
  -moz-opacity: 1; }

.progetti-item figure img {
  -webkit-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  -moz-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  -ms-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995); }

.progetti-item figure:hover img {
  -webkit-transform: scale3d(1.1, 1.1, 1);
  transform: scale3d(1.1, 1.1, 1);
  /*opacity:0.3; -moz-opacity:0.3;*/ }

/* Pagination */
.page-numbers {
  padding: 5px 12px !important;
  border: 2px solid #AD1A1F !important;
  -webkit-border-radius: 5px !important;
  -ms-border-radius: 5px !important;
  border-radius: 5px !important;
  -moz-border-radius: 5px !important;
  color: #AD1A1F;
  font-size: 0.8em;
  font-weight: 600; }
  .page-numbers.current {
    background: #213B80;
    color: #e5e5e5 !important;
    border: 1px solid #AD1A1F; }
  .page-numbers:hover {
    background: #AD1A1F;
    border: 1px solid #AD1A1F;
    color: #fff; }

/* Articles pagination */
.pagination {
  margin-top: 30px;
  display: block;
  text-align: center; }

.pagination .nav-links {
  padding: 0;
  margin: 0;
  display: inline-block; }

.pagination .nav-links a, .pagination .nav-links span.current {
  margin: 0;
  padding: 2px 6px;
  display: inline-block; }

/* Bg */
.bg-white {
  background-color: #fff !important; }

.bg-light {
  background-color: #e5e5e5 !important; }

.bg-dark {
  background-color: #000 !important; }

.bg-light-alt {
  background-color: #999999 !important; }

.bg-default {
  background-color: #424443 !important; }

.bg-primary {
  background-color: #213B80 !important; }

.bg-secondary {
  background-color: #AD1A1F !important; }

/* news-item */
.news-item figure {
  overflow: hidden;
  position: relative;
  margin: 0;
  background: #213B80;
  -webkit-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  -moz-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  -ms-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995); }

.news-item figure figcaption {
  text-align: center;
  font-size: 1.8em;
  position: absolute;
  top: 60%;
  left: 50%;
  margin-top: -20px;
  margin-left: -15px;
  color: #fff;
  opacity: 0;
  -webkit-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  -moz-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  -ms-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995); }

.news-item figure:hover figcaption {
  opacity: 1;
  -moz-opacity: 1;
  top: 50%; }

.news-item figure img {
  -webkit-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  -moz-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  -ms-transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995);
  transition: all 1.2s cubic-bezier(0.535, 0.125, 0, 0.995); }

.news-item figure:hover {
  -webkit-border-radius: 30px !important;
  -ms-border-radius: 30px !important;
  border-radius: 30px !important;
  -moz-border-radius: 30px !important; }

.news-item figure:hover img {
  -webkit-border-radius: 30px !important;
  -ms-border-radius: 30px !important;
  border-radius: 30px !important;
  -moz-border-radius: 30px !important;
  -webkit-transform: scale3d(1.1, 1.1, 1);
  transform: scale3d(1.1, 1.1, 1);
  opacity: 0.3;
  -moz-opacity: 0.3; }

/* Img tonda */
.circle {
  border-radius: 50% !important; }

/* Opacity */
.o-50 {
  opacity: 0.5;
  -moz-opacity: 0.5;
  -webkit-opacity: 0.5; }

/* Transition */
.transition {
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out; }

.th {
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out; }

.th:hover {
  opacity: 0.8;
  -moz-opacity: 0.8; }

.pull-top {
  position: relative;
  top: -48px; }

/* Maps */
#map {
  width: 100%;
  height: 400px; }

@media (max-width: 992px) {
  .home-main-content:after {
    right: -15px;
    top: -180px;
    width: 180px;
    height: 180px; } }
@media (max-width: 768px) {
  .logo-footer {
    width: 100%;
    height: auto;
    max-width: 140px; }

  #map {
    width: 100%;
    height: 400px; }

  .home-main-content:after {
    right: 0;
    top: -150px;
    width: 150px;
    height: 150px; } }
@media (max-width: 576px) {
  .home-main-content:after {
    right: 0;
    top: -100px;
    width: 100px;
    height: 100px; } }
