@charset "UTF-8";

/* GLOBAL
----------------------------------------------------------------------------- */
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
  min-height: 100%;
  position: relative;
}

body {
  font-family: "AvenirNextLTPro-Regular";
  background-color: #fff;
  font-size: 14px;
  line-height: 1.6;
  color: #000000;
  letter-spacing: 0.5px;
  overflow-x: hidden;
}

fieldset {
  border: 0;
}

*:focus {
  outline: 0;
}

.clearfix::after {
  content: "";
  clear: both;
  display: table;
}

.wpml-ls-legacy-list-horizontal li,
.no_list li,
.top_menu li {
  display: inline-block;
  list-style: none;
  margin: 0;
}

.img_fluid {
  display: block;
  width: 100%;
  height: auto;
}

.img_rounded {
  border-radius: 50%;
}

.float_sx {
  float: left;
}

.float_dx {
  float: right;
}

.align_sx {
  text-align: left;
}

.align_dx {
  text-align: right;
}

.align_center {
  text-align: center;
}

.hidden_for_visitors {
  display: none !important;
}

.logged-in .hidden_for_visitors {
  display: block !important;
}
/* Cursor */
#image-scroll {
  position: absolute;
  width: 94px;
  height: 54px;
  display: none;
  pointer-events: none;
  z-index: 9999;
}

/* COLORS
----------------------------------------------------------------------------- */
.clr_dark,
.clr_dark a {
  color: #000000;
}

.bg_dark {
  background-color: #000000;
}

.clr_dark_blue,
.clr_dark_blue a {
  color: #2e287b;
}

.bg_dark_blue {
  background-color: #2e287b;
}

.clr_blue,
.clr_blue > a {
  color: #4080c2;
}

.bg_blue {
  background-color: #4080c2;
}

.clr_dark_grey,
.clr_dark_grey > a {
  color: #4a4a4a;
}

.clr_dark_grey_2,
.clr_dark_grey_2 > a {
  color: #5a5a5a;
}

.bg_dark_grey {
  background-color: #4a4a4a;
}

.clr_grey,
.clr_grey > a {
  color: #bec6cb;
}

.bg_grey {
  background-color: #bec6cb;
}

.clr_lightgrey,
.clr_lightgrey a {
  color: #b4bece;
}

.bg_lightgrey {
  background-color: #b4bece;
}

.bg_lightergrey {
  background-color: #f7f7f7;
}

.clr_white,
.clr_white a {
  color: #fff;
}

.bg_white {
  background-color: #ffffff;
}

/* Gradients */
.gradient_text,
.btn_gradient,
.searchform input[type="submit"] {
  background: -webkit-linear-gradient(45deg, #1481c8, #2f2680 80%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.bg_gradient {
  background: -webkit-linear-gradient(45deg, #1481c8, #2f2680 100%);
}

/* Responsive */
.show_from_menu_css,
.show_from_ds,
.show_from_tl,
.show_from_tp,
.show_from_sl,
.show_from_sp,
.show_from_ss {
  display: none;
}

/* BUTTONS
----------------------------------------------------------------------------- */
.btn_box > a {
  text-decoration: none;
}

.btn {
  display: inline-block;
  text-decoration: none;
  font-weight: 600;
  text-align: center;
  border-radius: 2px;
  padding: 13px 20px 11px 20px;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.btn_long {
  padding: 13px 30px 11px 30px;
}

.btn_rounded {
  border-radius: 100px;
}

.btn_outline {
  border: 1px solid;
  transition: all linear 0.2s;
}

.btn_gradient {
  border-image-source: linear-gradient(45deg, #1481c8, #2f2680 100%);
  border-image-slice: 1;
}

/* Btn Hover */
.btn_gradient.btn_outline {
}

.clr_white.btn_outline:hover {
  color: #2e287b;
  background: #fff;
  border-color: #fff;
}

.btn_gradient.btn_outline:hover {
  background: -webkit-linear-gradient(45deg, #1481c8, #2f2680 100%);
  -webkit-text-fill-color: #fff;
}

/* TYPOGRAPHY
----------------------------------------------------------------------------- */
a[x-apple-data-detectors] {
  color: inherit !important;
  text-decoration: none !important;
  font-size: inherit !important;
  font-family: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
}

.fw_300 {
  font-weight: 300;
}
.fw_400 {
  font-weight: 400;
}
.fw_600 {
  font-family: "AvenirNextLTPro-Medium";
}
.fw_700 {
  font-family: "AvenirNextLTPro-Bold";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.fw_600.uppercase {
  letter-spacing: 1px;
}

h1,
h2,
h3,
h4,
h5,
h6,
.heading_1,
.heading_2,
.heading_3 {
  font-weight: normal;
  font-family: "AvenirNextLTPro-Bold";
}

strong {
  font-weight: 600;
}

/* Text Helpers */
.uppercase,
.upp {
  text-transform: uppercase;
  letter-spacing: 1px;
}

.heading_2,
.heading_3,
.heading_4,
.heading_5,
.heading_6 {
  line-height: 1.2;
}

[class^="heading"] > a {
  text-decoration: none;
  display: block;
}

.heading_1 {
  font-size: 32px;
  line-height: 1;
  font-weight: 700;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.heading_2 {
  font-size: 28px;
}
.heading_3 {
  font-size: 22px;
}
.heading_4 {
  font-size: 18px;
}
.heading_5 {
  font-size: 15px;
}
.heading_6 {
  font-size: 12px;
  letter-spacing: 1px;
}
.heading_404 {
  font-size: 72px;
}

.text_small {
  font-size: 10px;
}

/* Editor */
.post_intro,
.editor_wysiwyg {
  line-height: 1.6;
}

.editor_wysiwyg a,
.editor_wysiwyg a strong {
  text-decoration: underline;
  font-weight: 600;
  color: #4080c2;
}

.editor_wysiwyg p,
.editor_wysiwyg ul,
.editor_wysiwyg ol {
  margin-bottom: 20px;
}

.editor_wysiwyg ul {
  list-style: none;
}
.editor_wysiwyg li {
  position: relative;
}
.editor_wysiwyg ul li::before {
  content: "";
  display: inline-block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #4080c2;
  margin-left: -14px;
  position: absolute;
  top: 11px;
  left: 0;
}

.editor_wysiwyg ul,
.editor_wysiwyg ol {
  margin-left: 16px;
}

.editor_wysiwyg strong {
  color: #000000;
  font-weight: 600;
}

.editor_wysiwyg > .reset_heading_padding + h2,
.editor_wysiwyg > .reset_heading_padding + h3,
.editor_wysiwyg > .reset_heading_padding + h4,
.editor_wysiwyg > .reset_heading_padding + h5,
.editor_wysiwyg > .reset_heading_padding + h6 {
  padding-top: 0 !important;
}

.editor_wysiwyg h2,
.editor_wysiwyg h3,
.editor_wysiwyg h4,
.editor_wysiwyg h5,
.editor_wysiwyg h6 {
  line-height: 1.2;
  margin: 24px 0 16px 0;
  text-transform: uppercase;
  color: #4a4a4a;
  font-weight: 600;
}

.editor_wysiwyg h2 {
  font-size: 22px;
}

.editor_wysiwyg h3 {
  font-size: 18px;
}

.editor_wysiwyg h4,
.editor_wysiwyg h5 {
  font-size: 15px;
}

.editor_wysiwyg h6 {
  font-size: 12px;
}

.editor_wysiwyg img {
  height: auto;
}

.editor_wysiwyg p:last-child {
  margin-bottom: 0;
}

/* LAYOUT
----------------------------------------------------------------------------- */
.pla-loader {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: #fff;
  z-index: 9999;
}
.pla-loader > div {
  margin: 45vh auto 0;
  text-align: center;
}
.lds-ellipsis {
  display: inline-block;
  position: relative;
  width: 80px;
  height: 80px;
  margin-left: 20px;
}
.lds-ellipsis div {
  position: absolute;
  top: 33px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #1481c8;
  animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.lds-ellipsis div:nth-child(1) {
  left: 8px;
  animation: lds-ellipsis1 1s infinite;
}
.lds-ellipsis div:nth-child(2) {
  left: 8px;
  animation: lds-ellipsis2 1s infinite;
}
.lds-ellipsis div:nth-child(3) {
  left: 32px;
  animation: lds-ellipsis2 1s infinite;
}
.lds-ellipsis div:nth-child(4) {
  left: 56px;
  animation: lds-ellipsis3 1s infinite;
}
@keyframes lds-ellipsis1 {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes lds-ellipsis3 {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes lds-ellipsis2 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(24px, 0);
  }
}

/* Basic Structure */
.container {
  margin: auto;
  width: 100%;
  max-width: 1520px;
  padding-left: 40px;
  padding-right: 40px;
}

.container_narrow {
  max-width: 976px;
  margin: auto;
}

.container_small {
  max-width: 470px;
  margin: auto;
}

.container > .main {
  width: 100%;
  max-width: calc(100% - 410px);
}

.container > .main.related_items {
  max-width: 100%;
}

.container > .sidebar {
  width: 100%;
  max-width: 320px;
}

/* Flex Helpers */
.center_v {
  display: flex;
  align-items: center;
  width: 100%;
}

.center_h_v {
  display: flex;
  justify-content: center;
  align-items: center;
}

/* Paddings */
.set_pt_x1 {
  padding-top: 8px;
}
.set_pb_x1 {
  padding-bottom: 8px;
}
.set_pt_x2 {
  padding-top: 16px;
}
.set_pb_x2 {
  padding-bottom: 16px;
}
.set_pt_x3 {
  padding-top: 24px;
}
.set_pb_x3 {
  padding-bottom: 24px;
}
.set_pt_x4 {
  padding-top: 32px;
}
.set_pb_x4 {
  padding-bottom: 32px;
}
.set_pt_x5 {
  padding-top: 40px;
}
.set_pb_x5 {
  padding-bottom: 40px;
}
.set_pt_x6 {
  padding-top: 48px;
}
.set_pb_x6 {
  padding-bottom: 48px;
}
.set_pt_x7 {
  padding-top: 56px;
}
.set_pb_x7 {
  padding-bottom: 56px;
}
.set_pt_x8 {
  padding-top: 64px;
}
.set_pb_x8 {
  padding-bottom: 64px;
}
.set_pt_x9 {
  padding-top: 72px;
}
.set_pb_x9 {
  padding-bottom: 72px;
}
.set_mb_x9 {
  margin-bottom: 72px;
}
.set_pt_x10 {
  padding-top: 80px;
}
.set_pb_x10 {
  padding-bottom: 80px;
}
.set_pt_x11 {
  padding-top: 88px;
}
.set_pb_x11 {
  padding-bottom: 88px;
}
.set_pt_x12 {
  padding-top: 96px;
}
.set_pb_x12 {
  padding-bottom: 96px;
}
.set_pt_x13 {
  padding-top: 104px;
}
.set_pb_x13 {
  padding-bottom: 104px;
}
.set_pt_x14 {
  padding-top: 112px;
}
.set_pb_x14 {
  padding-bottom: 112px;
}
.set_pt_x15 {
  padding-top: 120px;
}
.set_pb_x15 {
  padding-bottom: 120px;
}

.set_pl_x1 {
  padding-left: 60px;
}
.set_pr_x1 {
  padding-right: 60px;
}
.set_pl_x2 {
  padding-left: 120px;
}
.set_pr_x2 {
  padding-right: 120px;
}

.acf_editor + .acf_highlights {
  padding-top: 0 !important;
}

.acf_software + .acf_partners,
.acf_partners + .acf_software {
  border-top: 1px solid #ccc;
  border-top: 1px solid #5a5a5a;
}

/* Columns Grid */
.grid_2,
.grid_3,
.grid_4 {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: flex-start;
}

.col {
  float: left;
  text-align: left;
  margin-right: 4%;
}

.grid_2 .col {
  width: 48%;
}

.grid_3 .col {
  width: 30.6%;
}

.grid_4 .col {
  width: 22.5%;
}

.grid_2 .col:nth-child(2n),
.grid_3 .col:nth-child(3n),
.grid_4 .col:nth-child(4n) {
  margin-right: 0;
}

/* Logo Grid */
.logo_grid .logo_grid_item {
  width: 25%;
  margin: 0;
  float: left;
}

.logo_grid .logo_grid_item img {
  max-height: 160px;
  max-width: 100%;
}

.logo_grid.logo_grid_5 .logo_grid_item {
  width: 20%;
}

/* MIXITUP
---------------------------------------------------------------------- */
.mix_grid {
  text-align: justify;
  min-height: 100vh;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: flex-start;
  justify-content: space-between;
  overflow: hidden;
}

.mix_grid:after {
  content: "";
  display: inline-block;
  width: 100%;
}

.mix,
.gap {
  display: inline-block;
  vertical-align: top;
}

.mix {
  position: relative;
}

.mix_grid_5 .mix,
.mix_grid_5 .gap {
  width: calc(100% / 5 - (((5 - 1) * 2%) / 5));
}

.mix_grid_3 .mix,
.mix_grid_3 .gap {
  width: calc(100% / 3 - (((3 - 1) * 4%) / 3));
}

.mix_grid_1 .mix,
.mix_grid_1 .gap {
  width: 100%;
}

.archive .mix_grid_1 {
  background: rgb(247, 247, 247);
  background: linear-gradient(
    180deg,
    rgba(247, 247, 247, 1) 62%,
    rgba(255, 255, 255, 1) 100%
  );
}
.archive .mix_grid_1 .item_post,
.archive .mix_grid_1 .item_formazione {
  padding: 4vw;
  margin-bottom: 0;
}

/* Filters */
.mix_filters button {
  display: block;
  appearance: none;
  -webkit-appearance: none;
  border: 0;
  background: none;
  text-transform: uppercase;
  cursor: pointer;
  font-weight: 400;
  text-align: left;
}
.mix_filters ul {
  list-style: none;
}
.mix_filters > ul > li > ul button {
  padding-left: 32px;
  font-size: 0.9em;
  padding-top: 0;
}

.mix_filters_horizontal {
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
}

.archive_filter ul > li:not(:last-child):after {
}

.mix_filters_horizontal button {
  display: inline-block;
  position: relative;
  margin: 0;
}

.mix_filters_horizontal button:not(:last-child):after {
  content: "•";
  display: inline-block;
  margin: 0 12px;
}

.mix_filters_vertical {
}

.mix_filters_vertical button {
  border-left: 1px solid #ccc;
  padding: 7px 0 7px 18px;
}

button.mixitup-control-active {
  color: #2e287b;
  font-family: "AvenirNextLTPro-Bold";
}

/* Filters (Plugin Filter Everything Pro) */
.wpc-filters-widget-wrapper {
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 12px;
  line-height: 1.2;
}
.wpc-filter-title {
  padding-bottom: 16px;
  margin: 0 !important;
}

.wpc-filter-content {
  border-left: 1px solid #ccc;
}

.wpc-filter-content ul {
  padding: 10px 0 !important;
}

.wpc-filter-content li.wpc-term-item {
  margin-bottom: 12px !important;
  display: block !important;
  float: none !important;
}

.wpc-filter-content li.wpc-term-item:last-child {
  margin-bottom: 0 !important;
}
.wpc-filter-content li.wpc-term-item label {
  padding: 0 !important;
  border: 0 !important;
}

.wpc-filter-content li.wpc-term-item label span {
  padding: 0 !important;
  border: 0 !important;
}

.wpc-filter-content li.wpc-term-item a {
  color: inherit !important;
  padding-left: 18px !important;
}

.wpc-filter-content li.wpc-term-item label:hover {
}
.wpc-filter-content li.wpc-term-item label:hover span {
  background: rgba(0, 0, 0, 0) !important;
  color: #2e287b !important;
}

.wpc-filter-content input[type="radio"],
.wpc-filter-content input[type="checkbox"] {
  display: none !important;
}

.wpc-filters-widget-main-wrapper
  input.wpc-label-input:checked
  + label
  span.wpc-filter-label-wrapper,
.wpc-filter-content input[type="radio"]:checked + label a,
.wpc-filter-content input[type="checkbox"]:checked + label a {
  background-color: rgba(0, 0, 0, 0) !important;
  color: #2e287b !important;
  font-family: "AvenirNextLTPro-Bold";
}

.widget-area .widget a.wpc-open-close-filters-button,
.wpc-filters-open-widget,
.wpc-open-close-filters-button,
a.wpc-filters-open-widget,
a.wpc-open-close-filters-button,
body a.wpc-filters-open-widget,
body a.wpc-open-close-filters-button {
  border-image-source: linear-gradient(45deg, #1481c8, #2f2680 100%) !important;
  border-image-slice: 1 !important;
  color: #2f2680 !important;
}

.wpc-icon-html-wrapper span {
  background: #2f2680 !important;
}

span.wpc-icon-line-1:after,
span.wpc-icon-line-2:after,
span.wpc-icon-line-3:after {
  border: 1px solid #2f2680 !important;
}

/* Chips */
.wpc-filter-chips-list {
  margin-bottom: 12px;
}

.wpc-filter-chip {
  text-transform: uppercase;
  font-family: "AvenirNextLTPro-Regular", sans-serif;
  font-weight: 400 !important;
  letter-spacing: 1px;
  font-size: 12px;
}

.wpc-chip-reset-all {
  font-family: "AvenirNextLTPro-Bold", sans-serif;
  color: #2e287b !important;
}

.wpc-filter-chip a {
  border: 0 !important;
  padding: 0 18px 0 0 !important;
}

.wpc-filter-chip-name {
  max-width: none !important;
}

.wpc-chip-remove-icon {
  font-size: 1.65em !important;
  position: relative;
  top: -1px;
}

.wpc-filter-chip a:hover .wpc-chip-remove-icon {
  color: #2e287b !important;
}

/* Fix Filter Width for specific cases*/
label[for="wpc-radio-taxonomy-specializzazione-107"] > a {
  max-width: min-content;
  min-width: 220px;
}
label[for="wpc-radio-taxonomy-specializzazione-206"] > a {
  max-width: min-content;
  min-width: 236px;
}

/* Grid Breakpoints

.mix,
.gap {
    width: calc(100%/2 - (((2 - 1) * 1rem) / 2));
}


@media screen and (min-width: 541px) {
    .mix,
    .gap {
        width: calc(100%/3 - (((3 - 1) * 1rem) / 3));
    }
}


@media screen and (min-width: 961px) {
    .mix,
    .gap {
        width: calc(100%/4 - (((4 - 1) * 1rem) / 4));
    }
}


@media screen and (min-width: 1281px) {
    .mix,
    .gap {
        width: calc(100%/5 - (((5 - 1) * 1rem) / 5));
    }
}
*/

/* LAYOUT ELEMENTS
----------------------------------------------------------------------------- */

/* Page Content */
.page_menu,
.push_page_content {
  width: 32%;
  min-height: 10px;
  float: left;
}

.page_menu + .page_content,
.push_page_content + .page_content {
  float: left;
  width: 68%;
}

/* Pagination */
.pagination .screen-reader-text {
  display: none;
}

.paging-navigation .loop-pagination,
.paging-navigation {
  border: 0;
  text-align: left;
  margin: 0;
}

.paging-navigation .page-numbers.current,
.paging-navigation a:hover {
  border-color: rgba(0, 0, 0, 0) !important;
}

.page-num {
  display: inline-block;
  margin-right: 40px;
}

.page-numbers:not(.page-num) {
  transition: all ease-in-out 0.3s;
  display: inline-block;
  background: #fff;
  color: #407fc4;
  padding: 3px 12px;
  margin-right: 4px;
  text-decoration: none;
  border: 1px solid;
}

.page-numbers.current,
.page-numbers.current:not(.page-num):hover {
  background: #4080c2;
  color: #fff;
}

.page-numbers:not(.page-num):hover {
  background: #b4becd;
  color: #fff;
}

.next.page-numbers,
.prev.page-numbers {
  display: none;
}

/* Images overlay textures */
.apply_overlay_texture {
  position: relative;
}

.apply_overlay_texture::before,
.apply_overlay_texture::after {
  width: 136px;
  height: 62px;
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: 100% auto;
  display: block;
  z-index: 1;
}

.apply_overlay_texture::before {
  bottom: 44px;
  left: 36px;
}

.apply_overlay_texture::after {
  transform: rotate(180deg);
  top: 44px;
  right: 36px;
}

.apply_overlay_texture_white::before,
.apply_overlay_texture_white::after {
  background-image: url("../img/overlay_texture_corner_white.svg");
  opacity: 0.3;
}

.apply_overlay_texture_grey::before,
.apply_overlay_texture_grey::after {
  background-image: url("../img/overlay_texture_corner_grey.svg");
}

.apply_overlay_texture_gradient::before,
.apply_overlay_texture_gradient::after {
  background-image: url("../img/overlay_texture_corner_gradient.svg");
}

.site_header + .acf_slider.apply_overlay_texture_white::after {
  top: 142px;
}

/* List */
.list-link > span {
  font-family: "AvenirNextLTPro-Bold";
  display: block;
}

/* ARCHIVES
----------------------------------------------------------------------------- */

/* Archive Partnerships */
.item_partnership_archive {
  border-top: 1px solid #cccccc;
  align-items: center;
  display: flex;
}

.item_partnership_archive:nth-child(1),
.item_partnership_archive:nth-child(2) {
  border-top: 0px;
}

.item_partnership_archive > .partner_thumb,
.item_partnership_archive > .partner_info {
  width: 100%;
  max-width: 50%;
}

/* Archive Formazione */
.item_formazione {
  border-bottom: 1px solid #cccccc;
  position: relative;
  text-align: left;
}

.item_formazione_icon {
  position: absolute;
  top: 4vw;
}

.item_formazione_content {
  padding-left: 100px;
}

.archive .mix:last-child .item_formazione {
  border: 0;
}

.item_formazione .logo_partner,
.item_software .logo_partner {
  height: 110px;
  width: auto;
  display: block;
}

.item_formazione .logo_partner {
  background-color: #fff;
}

.sticky_posts:not(.sticky_posts_news) {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #cccccc;
  margin-bottom: 0;
  flex-wrap: wrap;
}
.sticky_posts {
  background-color: #fff;
}

.sticky_posts > .item_formazione {
  width: 100%;
  /*max-width: 42%;*/
  border-bottom: 0;
  padding: 0;
  flex: 1;
}

/*.sticky_posts > .item_formazione:first-child::after {
    height: 100%;
    content: "";
    width: 1px;
    position: absolute;
    right: 0;
    top: 0;
    background: #ccc;
	}*/
.sticky_posts > .item_formazione:nth-child(2) {
  border-left: 1px solid #fff;
}

.sticky_posts > .item_formazione .language {
  display: block;
  margin-top: 4px;
}

.item_formazione .language::before {
  content: "/ ";
}

.sticky_posts + .mix > .item_formazione {
  /*padding-top: 0;*/
}

.sticky_label {
  display: none;
}

.sticky_posts .sticky_label {
  display: block;
}

.autore_post {
  margin-top: 40px;
}
.autore_post img {
  margin: 0 10px;
}

/* Archive Software */
.item_software {
  justify-content: space-between;
  flex-direction: column;
  display: flex;
}

/* Archive News */
.sticky_posts_news {
  display: block;
}

.archive .mix:last-child .item_post {
  border: 0;
}

.item_post {
  border-bottom: 1px solid #cccccc;
  justify-content: space-between;
  align-items: center;
  align-items: flex-start;
  text-align: left;
  display: flex;
}

.item_post .category {
  position: relative;
}

.item_post .category:not(:last-child)::after {
  margin-left: -3px;
  content: ",";
}

.item_post_thumb {
  max-width: 30%;
  width: 100%;
}

.item_post_content {
  max-width: calc(70% - 50px);
  width: 100%;
}

/* Archive Clienti */
div.sticky_filters {
  position: -webkit-sticky; /* Safari */
  position: sticky;
  top: 67px;
  background: #fff;
  z-index: 2;
  margin-left: -40px;
  width: calc(100% + 80px);
}

/* SINGLE PAGES
----------------------------------------------------------------------------- */
.logo_website_link,
.widget_title {
  padding-left: 24px;
  padding-right: 24px;
}

.logo_website_link a {
  text-decoration: none;
}

.partner_flag {
  display: flex;
}

.partner_flag img {
  margin-right: 10px;
}

a.social {
  display: inline-block;
}

/* CONTATTI
----------------------------------------------------------------------------- */

.sidebar_contacts {
  width: 100%;
  max-width: 350px;
}

.map_wrapper {
  width: 100%;
  height: 640px;
}

.map {
  height: 100%;
  width: 100%;
}

.form_wrapper {
  border-top: 1px solid #979797;
}

/* Form Structure */
.form_grid,
.form_submit {
  justify-content: space-between;
  display: flex;
}

.form_grid > div {
  max-width: 48.25%;
  width: 100%;
}

.form_submit .acceptance {
  margin-right: 76px;
}

.gform-theme--framework .gform-field-label>.gfield_required{
	color: #000 !important;
}

.gform-theme--foundation .gform_fields{
    gap: 1.25rem 2rem !important;
}


/* Reset Form Styles */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0px 1000px #f7f7f7 inset;
  transition: background-color 5000s ease-in-out 0s;
}

.ua_mobile input,
.ua_mobile textarea {
  border-radius: 0;
  box-shadow: none;
  -webkit-appearance: none;
}

/* CF7 Fields */
div.wpcf7 br {
  display: none !important;
}

html[lang="en-US"] div.wpcf7 i.ita,
html[lang="it-IT"] div.wpcf7 i.eng {
  display: none !important;
}

div.wpcf7 i {
  font-style: normal;
}

button,
textarea,
select,
input,
option {
  letter-spacing: 0.5px;
  font-family: "AvenirNextLTPro-Regular";
}

textarea {
  font-family: "AvenirNextLTPro-Regular";
  resize: vertical;
  overflow: auto;
}

.input_wr {
  margin-bottom: 30px;
  width: 100%;
}

.gform_heading{
    display: none !important;
}

select,
.input_wr input[type="text"],
.input_wr input[type="tel"],
.input_wr input[type="email"],
.input_wr textarea,
body .gfield input[type="text"],
body .gfield input[type="tel"],
body .gfield input[type="email"],
body .gfield textarea {
  color: #4c4c4c;
  border: 2px solid #f7f7f7;
  transition: all ease-in-out 0.3s;
  font-size: 15px;
  padding: 13px 14px;
  width: 100%;
  background: #f7f7f7;
  font-weight: 300;
}

.input_wr textarea {
  height: 201px;
}

.input_wr input[type="text"]:focus,
.input_wr input[type="tel"]:focus,
.input_wr input[type="email"]:focus,
.input_wr textarea:focus,
body .gfield input[type="text"]:focus,
body .gfield input[type="tel"]:focus,
body .gfield input[type="email"]:focus,
body .gfield textarea:focus,
select:focus {
  background: #f7f7f7;
  border: 2px solid #4080c2;
  outline: none !important;
}

select,
select:focus {
  appearance: none;
  -webkit-appearance: none;
  background-image: url("../img/chevron_down.svg");
  background-position: calc(100% - 12px) center;
  background-repeat: no-repeat;
  background-size: 12px;
  cursor: pointer;
}

select:focus {
  background-color: #f7f7f7;
  border: 2px solid #4080c2;
}

/* Form Submit Btn */
div.wpcf7 .ajax-loader {
  display: none;
}

input[type="submit"],
body .gform-theme [type="submit"].gform_button{
    background: -webkit-linear-gradient(45deg, #1481c8, #2f2680 100%) !important;
  text-transform: uppercase!important;
  font-family: "AvenirNextLTPro-Regular"!important;
  appearance: none!important;
  letter-spacing: 1px!important;
  display: block!important;
  border-width: 1px!important;
  cursor: pointer!important;
  border-radius: 0 !important;
  color: #FFFFFF !important;
}

body .gform-theme [type="submit"].gform_button{
    
}


/* Placeholders */
::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  opacity: 1;
  color: #4a4a4a;
  font-weight: 300;
}

::-moz-placeholder {
  /* Firefox 19+ */
  opacity: 1;
  color: #4a4a4a;
  font-weight: 300;
}

:-ms-input-placeholder {
  /* IE 10+ */
  opacity: 1;
  color: #4a4a4a;
  font-weight: 300;
}

:-moz-placeholder {
  /* Firefox 18- */
  opacity: 1;
  color: #4a4a4a;
  font-weight: 300;
}

/* Submit Button */
.wpcf7-submit {
  cursor: pointer;
}

/* Acceptance */
.acceptance {
  display: block;
  float: left;
  width: 100%;
  margin-bottom: 30px;
  font-size: 11px;
}


.acceptance a,
.gfield--type-html a {
  font-weight: 600;
  color: #407fc2;
}

.bg_gradient .acceptance a {
  color: #fff;
}

#mc-field-group .acceptance {
  margin-bottom: 0;
}

/* Validation */
span.wpcf7-not-valid-tip,
.screen-reader-response {
  display: none;
}

.wpcf7 form .wpcf7-response-output,
.wpcf7-response-output {
  border: 0;
  padding: 12px 16px;
  background: #4481c3;
  margin: 0 0 32px 0;
  font-weight: 400;
  color: #fff;
  font-size: 14px;
}

.wpcf7-not-valid {
  border-color: #4c4c4c !important;
}

form.sent p,
form.sent .acceptance,
form.sent .floating_label,
form.sent .submit_wr {
  display: none;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 0 transparent inset !important;
}

/* JOB POSITIONS
----------------------------------------------------------------------------- */
.job_positions {
  border-top: 1px solid #979797;
}

.job_item {
  position: relative;
  padding-right: 4%;
}

.job_positions .grid_3,
.job_positions .grid_2 {
  width: 104%;
  margin-left: 0%;
}

.grid_3 .job_item {
  border-right: 1px solid #979797;
}

.grid_3 .job_item:last-child {
  border-right: 0;
}

.job_positions .grid_2 .job_item:nth-child(1):before,
.job_positions .grid_2 .job_item:nth-child(3):before {
  width: 1px;
  height: 84%;
  background: #979797;
  content: "";
  position: absolute;
  right: 0;
}

.job_positions .grid_2 .job_item:nth-child(1):before {
  top: 0;
}

.job_positions .grid_2 .job_item:nth-child(3):before {
  bottom: 0;
}

.job_positions .grid_2 .job_item:nth-child(3):after,
.job_positions .grid_2 .job_item:nth-child(4):after {
  border-bottom: 1px solid #979797;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 8%;
}

/* ACF FORMAZIONE
----------------------------------------------------------------------------- */
.acf_formazione {
  border-top: 1px solid #ccc;
  position: relative;
}

.acf_formazione > div:first-child {
  position: absolute;
  width: 100%;
  z-index: 10;
  top: 0;
}

.acf_formazione > div:first-child > .container {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.acf_formazione > div:first-child > .container > .btn {
}

.acf_formazione_container {
  display: flex;
}

.acf_formazione_container > div {
  width: 100%;
}

.acf_formazione_count_2 > div:first-child {
  padding-left: 0 !important;
}

.acf_formazione_count_2 > div:last-child {
  padding-right: 0 !important;
}

.acf_formazione_item {
  padding: 190px 60px;
  position: relative;
}

@media screen and (max-width: 1640px) {
  .acf_formazione_item {
    padding: 190px 30px;
  }
}

.acf_formazione_item.primo_piano:not(.slick-slide) {
  background: #f7f7f7;
}

.acf_formazione_count_2 > div:first-child.primo_piano::before,
.acf_formazione_count_2 > div:last-child.primo_piano::after {
  position: absolute;
  width: 100%;
  background: #f7f7f7;
  content: "";
  display: block;
  top: 0;
  bottom: 0;
}

.acf_formazione_count_2 > div:first-child.primo_piano::before {
  left: -100%;
}

.acf_formazione_count_2 > div:last-child.primo_piano::after {
  right: -100%;
}

.item_formazione_heading {
  position: relative;
}

.item_formazione_heading > .item_formazione_icon {
  top: 0;
}

.item_formazione_heading > div:last-child {
  padding-left: 80px;
}

/* ACF SLIDER
----------------------------------------------------------------------------- */

.acf_slider {
  position: relative;
  width: 100%;
  min-height: 8vw;
  opacity: 0;
  visibility: hidden;
  transition: all 1.2s ease;
}

.slick-slide {
  position: relative;
}

.slide-content {
  position: absolute;
  z-index: 1;
  bottom: 20%;
  width: 100%;
}

.slide-content > .container > div {
  max-width: 700px;
}

.acf_slider.slick-initialized {
  opacity: 1;
  visibility: visible;
}

.item.vimeo::before {
  background: linear-gradient(5deg, rgba(0, 0, 0, 0.5), transparent);
  position: absolute;
  width: 100%;
  z-index: 1;
  content: "";
  height: 100%;
  opacity: 1;
}

.slick-slide video {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: 100%;
  height: auto;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.slick-slide iframe {
  position: absolute;
  pointer-events: none;
  width: 100%;
  height: 100%;
}

.slick-slide figure {
  position: relative;
  height: 100%;
}

.slick-slide .slide-image {
  opacity: 0;
  height: 100%;
  background-size: cover;
  background-position: center;
  transition: all 0.8s ease;
}

.slick-slide .slide-image.show {
  opacity: 1;
}

.slick-slide .image-entity {
  width: 100%;
  opacity: 0;
  visibility: hidden;
}

.slick-slide .loading {
  position: absolute;
  top: 44%;
  left: 0;
  width: 100%;
}

.slick-slide .slide-media {
  -webkit-animation: slideOut 0.4s cubic-bezier(0.4, 0.29, 0.01, 1);
  animation: slideOut 0.4s cubic-bezier(0.4, 0.29, 0.01, 1);
}

.slick-slide.slick-active {
  z-index: 1;
}

.slick-slide.slick-active .slide-media {
  -webkit-animation: slideIn 2.4s cubic-bezier(0.4, 0.29, 0.01, 1);
  animation: slideIn 2.4s cubic-bezier(0.4, 0.29, 0.01, 1);
}

.slick-slide.slick-active .caption {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  transition: all 0.7s cubic-bezier(0.32, 0.34, 0, 1.62) 0.6s;
}

/* Slider Dots */
.slick-dots {
  text-align: center;
  position: absolute;
  width: 100%;
  bottom: 35px;
}

.slick-dots > li {
  display: inline-block;
  margin: 0 5px;
}

.slick-dots > li button {
  cursor: pointer;
  text-indent: -9999px;
  border-radius: 100%;
  width: 11px;
  height: 11px;
  background: rgba(255, 255, 255, 0.5);
  transition: all ease-in-out 0.2s;
  border: 0;
  -webkit-appearance: none;
  appearance: none;
  display: block;
}

.slick-dots > li.slick-active button {
  background: rgba(255, 255, 255, 1);
}

@-webkit-keyframes slideIn {
  from {
    -webkit-filter: blur(15px);
    filter: blur(15px);
  }
  to {
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}

@keyframes slideIn {
  from {
    -webkit-filter: blur(15px);
    filter: blur(15px);
  }
  to {
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}

@-webkit-keyframes slideOut {
  from {
    -webkit-filter: blur(0);
    filter: blur(0);
  }
  to {
    -webkit-filter: blur(15px);
    filter: blur(15px);
  }
}

@keyframes slideOut {
  from {
    -webkit-filter: blur(0);
    filter: blur(0);
  }
  to {
    -webkit-filter: blur(15px);
    filter: blur(15px);
  }
}

/* Slide Content */
.slide-content.container {
  max-width: 100%;
}

/* ACF CLAIM
----------------------------------------------------------------------------- */
.acf_claim {
  display: flex;
}

.acf_claim > * {
  width: 100%;
}

/* ACF TECSA DOCUMENTS
----------------------------------------------------------------------------- */
.link_with_icon {
  display: flex;
  float: left;
  align-items: center;
}

.link_with_icon:hover span {
  text-decoration: underline;
}

.link_with_icon:first-child {
  margin-right: 40px;
}

.link_with_icon:first-child::after {
  content: "";
  font-weight: 300;
  margin-left: 30px;
  height: 33px;
  width: 1px;
  background: #979797;
}

.ico_quality {
  background-image: url("../img/ico_quality.svg");
  background-size: 100% auto;
  display: inline-block;
  margin-right: 12px;
  height: 28px;
  width: 41px;
}

.ico_keynote {
  background-image: url("../img/ico_keynote.svg");
  background-size: 100% auto;
  margin-right: 12px;
  display: inline-block;
  height: 33px;
  width: 33px;
}

/* ACF FEATURES
----------------------------------------------------------------------------- */
.acf_features {
  border-bottom: 1px solid #cccccc;
}

.item_feature {
  padding-left: 2%;
  padding-right: 2%;
}

.item_feature_head {
  position: relative;
}

.item_feature_head img {
  display: block;
  margin: auto;
  transform: translate(20%);
}

.item_feature_head .heading_1 {
  transform: translateX(-100%);
  position: absolute;
  bottom: 5px;
  left: 50%;
}

/* ACF QUOTE
----------------------------------------------------------------------------- */
.blockquote_wrapper {
  position: relative;
}

.blockquote_wrapper::after,
.blockquote_wrapper::before {
  background-repeat: no-repeat;
  background-size: 100% auto;
  display: block;
  position: absolute;
  width: 24px;
  height: 18px;
  content: "";
}

.blockquote_wrapper::before {
  background-image: url("../img/ico_quote_open.svg");
  top: 28px;
  left: 24px;
}

.blockquote_wrapper::after {
  background-image: url("../img/ico_quote_close.svg");
  bottom: 28px;
  right: 24px;
}

.blockquote_author {
  position: absolute;
}

/* ACF NEWS
----------------------------------------------------------------------------- */
.acf_news_header {
  display: flex;
  justify-content: space-between;
}

.acf_news > .container {
  position: relative;
}

.acf_news > .container > .btn {
  position: absolute;
  right: 40px;
  top: 0;
}

.acf_news_count_4 .grid_2 {
  width: 108%;
  margin-left: -4%;
}

.acf_news_count_4 .grid_2 .acf_news_item {
  position: relative;
  margin: 0;
  width: 50%;
  padding-left: 4%;
  padding-right: 4%;
}

.acf_news_count_4 .grid_2 > .acf_news_item:nth-child(1)::after,
.acf_news_count_4 .grid_2 > .acf_news_item:nth-child(2)::after {
  content: "";
  height: 1px;
  background: #fff;
  display: block;
  position: absolute;
  bottom: 0;
}

.acf_news_count_4 .grid_2 > .acf_news_item:nth-child(1)::after,
.acf_news_count_4 .grid_2 > .acf_news_item:nth-child(2)::after {
  left: 8%;
  right: 8%;
}

.acf_news_count_4 .grid_2 > .acf_news_item:nth-child(2)::before,
.acf_news_count_4 .grid_2 > .acf_news_item:nth-child(4)::before {
  content: "";
  width: 1px;
  background: #fff;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
}

.acf_news_count_4 .grid_2 > .acf_news_item:nth-child(2)::before,
.acf_news_count_4 .grid_2 > .acf_news_item:nth-child(4)::before {
  bottom: 56px;
  top: 56px;
}

/* ACF HIGHLIGHTS + RELATED ITEMS
----------------------------------------------------------------------------- */
.highlight_item {
  border-top: 1px solid #cccccc;
  align-items: flex-start;
  display: flex;
}

.highlight_item:first-child {
  padding-top: 0 !important;
  border-top: 0;
}

.highlight_item > .thumb {
  display: block;
  max-width: 254px;
  width: 100%;
}

.related_items .highlight_item > .thumb {
  max-width: 382px;
}

.highlight_item > div {
  width: 100%;
}

/* ACF PARTNERSHIP
----------------------------------------------------------------------------- */
.acf_partners {
  /*border-bottom: 1px solid #5A5A5A;*/
}

.home .acf_partners {
  border-bottom: 0;
}

.marquee {
  white-space: nowrap;
  overflow: hidden;
  box-sizing: border-box;
  z-index: 0;
}

.marquee ul,
.marquee li {
  margin: 0;
  padding: 0;
}

.marquee .marquee_animation {
  display: inline-block;
  text-indent: 0;
  animation: marquee 150s linear infinite;
  display: inline-block;
  list-style: none;
  width: auto;
  text-align: center;
  font-size: 65px;
  white-space: nowrap;
  font-weight: 200;
}

@keyframes marquee {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(-100%, 0);
  }
}

.js_draggable_carousel.slick-initialized,
.js_formazione_carousel.slick-initialized {
  cursor: url("../img/cursor.svg") 92 52, auto;
}

/* ACF NEWSLETTER
----------------------------------------------------------------------------- */
#mc_embed_signup_scroll {
  position: relative;
}

.mc-field-group.input_wr {
  margin-bottom: 0;
}

.mc-field-group input[type="email"] {
  border: 1px solid #b6b6b6;
  background: transparent;
  font-size: 15px;
  padding: 14px 20px;
  color: #fff;
}

.mc-field-group input[type="email"].inverse_input {
  background: none;
  border-color: #fff;
}

.mc-field-group input[type="email"].inverse_input::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  opacity: 1;
  color: #ffffff;
}

.mc-field-group input[type="email"].inverse_input::-moz-placeholder {
  /* Firefox 19+ */
  opacity: 1;
  color: #ffffff;
}

.mc-field-group input[type="email"].inverse_input:-ms-input-placeholder {
  /* IE 10+ */
  opacity: 1;
  color: #ffffff;
}

.mc-field-group input[type="email"].inverse_input:-moz-placeholder {
  /* Firefox 18- */
  opacity: 1;
  color: #ffffff;
}

#mc_embed_signup input.mce_inline_error {
  border-color: #6b0505 !important;
}

.mc-field-group input[type="email"]:focus {
  border-width: 1px !important;
  /*background: #FFF;*/
  background: transparent;
}

.mc-field-group + .submit_wr input[type="submit"] {
  background: rgba(255, 255, 255, 0);
  -webkit-text-fill-color: #fff;
  position: absolute;
  top: 16px;
  font-weight: 600;
  width: auto;
  right: 20px;
  border: 0;
}
#mce-responses .response {
  background-color: #fff;
  padding: 14px;
  line-height: 1.3;
  font-size: 0.9em;
  margin-bottom: 10px;
}

.cards_popup #mce-responses .response {
  background: #4080c2;
  color: #fff;
}

/* HEADER
----------------------------------------------------------------------------- */
.site_header {
  border-bottom: 1px solid #bec6cb;
  background: #fff;
  width: 100%;
}

.site_header > .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 1;
  max-width: 100%;
  overflow: visible;
}

.site_logo {
}

/* Lang Switcher */
.lang_mobile {
  display: none;
}

.site_header_right {
  display: flex;
  position: relative;
  top: 12px;
}

.site_header_right .wpml-ls-legacy-list-horizontal {
  padding: 0;
  margin: 0;
  border: 0;
}

/* Fix Menu when Logged */
.admin-bar .site_header {
  top: auto;
}

/* Navigation */
.site_nav {
}

.blog .site_nav {
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
}

.site_nav > ul {
  float: right;
}

.top_menu a,
.site_header_right .wpml-ls-legacy-list-horizontal a {
  box-sizing: border-box;
  text-transform: uppercase;
  padding: 14px;
  width: 100%;
  display: inline-block;
  text-align: center;
  text-decoration: none;
  font-size: 11.5px;
  color: #4a4a4a;
  position: relative;
}

.wpml-ls-legacy-list-horizontal a {
  padding-right: 0 !important;
}

.top_menu > li {
  padding-bottom: 14px;
  padding-top: 37px;
}

.top_menu > li.menu-item-home {
  display: none;
}

.top_menu > li.menu-item-has-children > a::after {
  background-image: url("../img/chevron_down.svg");
  background-repeat: no-repeat;
  background-position: center;
  content: "";
  width: 12px;
  height: 10px;
  display: inline-block;
  margin-left: 6px;
}

.top_menu > li.menu-item-has-children:hover > a,
.top_menu > li.current-menu-item > a,
.top_menu > li.current_page_parent > a {
  text-decoration: none;
}

/* Navigation Status */
.current-menu-ancestor > .sub-menu,
.current-page-ancestor > .sub-menu,
.single-partnerships .menu-item-298 > .sub-menu,
.single-associazioni .menu-item-298 > .sub-menu,
.parent-pageid-60 li.menu-item-298 > .sub-menu,
.single-post li.menu-item-207 > .sub-menu {
  display: block !important;
}

.current-menu-item > a,
.current_page_item > a,
.current-menu-parent > a,
.current-page-ancestor > a,
.top_menu > li.active > a,
.single-partnerships li.menu-item-298 > a,
.single-partnerships li.menu-item-object-partnerships > a,
.single-associazioni li.menu-item-298 > a,
.single-associazioni li.menu-item-object-associazioni > a,
.single-software li.menu-item-object-software > a,
.parent-pageid-60 li.menu-item-298 > a,
.parent-pageid-75 li.menu-item-167 > a,
.parent-pageid-95 li.menu-item-167 > a,
.single-post li.menu-item-207 > a {
  font-weight: 600;
  color: #2e287b;
}

.top_menu > li.active > a:after,
.top_menu > li.current-menu-parent > a:after,
.single-partnerships .top_menu > li.menu-item-298 > a:after,
.single-associazioni .top_menu > li.menu-item-298 > a:after,
.page-child .top_menu > li.current-page-ancestor > a:after,
.parent-pageid-60 .top_menu > li.menu-item-298 > a:after,
.single-post .top_menu > li.menu-item-207 > a:after {
  background-image: url("../img/chevron_up.svg");
}

.top_menu > li > a:before {
  width: 0;
  height: 1px;
  content: "";
  background: #2e287b;
  display: block;
  position: absolute;
  bottom: -14px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transition: 0.25s ease-in-out;
  -moz-transition: 0.25s ease-in-out;
  -ms-transition: 0.25s ease-in-out;
  -o-transition: 0.25s ease-in-out;
  transition: 0.25s ease-in-out;
}

.top_menu > li.active > a:before,
.top_menu > li.current-menu-item > a:before,
.top_menu > li.current-menu-parent > a:before,
.single-partnerships li.menu-item-298 > a:before,
.single-associazioni li.menu-item-298 > a:before,
.single-software li.menu-item-object-software > a:before,
.page-child .top_menu > li.current-page-ancestor > a:before,
.parent-pageid-60 li.menu-item-298 > a:before,
.single-post li.menu-item-207 > a:before {
  width: calc(100% - 36px);
}

/* Sub Menu */
.top_menu .sub-menu {
  text-align: center;
  position: absolute;
  padding: 15px 0;
  top: 99px;
  z-index: 8888;
  width: 100%;
  background: #f7f7f7;
  display: none;
  left: 0;
}

.active > .sub-menu {
  z-index: 9999;
}

.top_menu .sub-menu li {
  display: inline-block;
  width: auto;
  margin: 0 10px;
}

.top_menu .sub-menu li:last-child {
  border: 0;
}

.top_menu .sub-menu li a {
  padding: 10px;
  display: block;
  text-decoration: none;
  text-transform: uppercase;
}

/* Sticky Header
.sub-menu.sticky {
    position: fixed;
    top: 0;
	} */

/* Sticky Header
.site_header_small .sub-menu{
	opacity: 0;

}*/
.site_header.scrollUp {
  transform: translateY(-168px);
  transform: translateY(-99px);
}

.site_header + * {
  padding-top: 99px;
}
/*
.page-child .site_header + *{
	padding-top: 168px;
	}*/

.site_header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9998;
  transition: all 1.2s;
}

.breadcrumbs a {
  text-decoration: none;
  color: inherit;
}

.breadcrumbs a:hover {
  border-bottom: 1px solid;
}

/* Inner Navigation */
.bellows .bellows-nav .bellows-custom-content.bellows-custom-content-padded,
.bellows .bellows-nav .bellows-target,
.bellows
  .bellows-nav
  .bellows-target.bellows-target-w-image
  > .bellows-image.bellows-image-padded,
.bellows
  .bellows-nav
  .bellows-target.bellows-target-w-image
  > .bellows-target-text {
  padding: 10px 0 !important;
}

.page_menu li {
  display: block;
  margin-bottom: 12px;
}

.page_menu a {
  text-decoration: none;
  color: #000;
}

.page_menu a:hover span {
  text-decoration: underline;
}

.bellows .bellows-nav li > .bellows-submenu {
  background: #f7f7f7;
  padding: 4px 15px;
  border-left: 1px solid #ccc;
}

.bellows .bellows-nav .bellows-subtoggle {
  width: 20px !important;
}

.bellows .bellows-nav .bellows-subtoggle i {
  background-image: url("../img/chevron_down.svg");
  transition: all linear 0.4s;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 12px 10px;
  width: 12px;
  height: 10px;
  transform: rotate(0);
}

.bellows .bellows-nav .bellows-active .bellows-subtoggle i {
  transform: rotate(180deg);
}

.bellows-current-menu-item > a {
  font-weight: 600;
  color: #2e287b;
}

.bellows-current-page-ancestor > .bellows-submenu {
  display: block !important;
}

.bellows-target-title {
  max-width: calc(100% - 24px);
}

/* MOBILE MENU
----------------------------------------------------------------------------- */
/* Burger Button */
.js_burger_btn {
  padding-left: 0;
  padding-right: 0;
  display: block;
  top: 2px;
}

.mm-wrapper_opened .js_burger_btn {
  top: -3px;
}

.js_burger_btn > div {
  transform: rotate(0deg) scale(0.85) translateX(4px);
  transition: 0.5s ease-in-out;
  cursor: pointer;
  width: 24px;
  height: 12px;
  position: relative;
  display: block;
}

.js_burger_btn > div > span {
  display: block;
  position: absolute;
  height: 1px;
  width: 100%;
  background: #4a4a4a;
  border-radius: 0;
  opacity: 1;
  left: 0;
  transform: rotate(0deg);
  transition: 0.25s ease-in-out;
}

.js_burger_btn > div > span:nth-child(1) {
  top: 0px;
}

.js_burger_btn > div > span:nth-child(2),
.js_burger_btn > div > span:nth-child(3) {
  top: 10px;
}

.js_burger_btn > div > span:nth-child(4) {
  top: 20px;
}

.mm-wrapper_opened .js_burger_btn > div > span:nth-child(1) {
  top: 18px;
  width: 0%;
  left: 50%;
}

.mm-wrapper_opened .js_burger_btn > div > span:nth-child(2) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

.mm-wrapper_opened .js_burger_btn > div > span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.mm-wrapper_opened .js_burger_btn > div > span:nth-child(4) {
  top: 18px;
  width: 0%;
  left: 50%;
}

/* Menu Mobile Panel */
.mm-panels > .mm-panel > .mm-listview:first-child,
.mm-panels > .mm-panel > .mm-navbar + .mm-listview {
  margin-top: 0;
}

.mm-menu_position-top {
  border-top: 1px solid #bec6cb;
  height: 80vh;
  min-height: 140px;
  max-height: 880px;
  font-size: 12px;
  top: 72px;
}

.admin-bar .mm-menu_position-top {
  top: 104px;
}

.mm-menu {
  background: #fff;
  color: #4a4a4a;
  font-weight: 400;
  text-transform: uppercase;
  font-size: 12px;
}

.mm-listitem {
  padding-left: 40px;
  padding-right: 40px;
}

.mm-listitem .mm-btn_next:before {
  display: none;
}

.mm-listitem > a,
.mm-listitem > span {
  padding: 13px 0;
}

.mm-listitem:after {
  border-color: #bec6cb;
  left: 40px;
  right: 40px;
}

/* Submenu */
.mm-btn_next:after,
.mm-btn_prev:before {
  border-top: 1px solid transparent;
  border-left: 1px solid transparent;
}

.mm-listitem .mm-btn_next:not(.mm-btn_fullwidth) + a,
.mm-listitem .mm-btn_next:not(.mm-btn_fullwidth) + span {
  margin: 0;
}

.mm-listitem .mm-btn_next:not(.mm-btn_fullwidth) {
  width: auto;
  height: 48px;
  border: 0;
  left: 0px;
  right: 0px;
}

.mm-menu .sub-menu {
  color: rgba(255, 255, 255, 0.7);
  color: #4a4a4a;
}

.mm-menu .mm-listitem_opened {
  background: rgba(0, 0, 0, 0.03);
}

.mm-menu .mm-listitem > .mm-btn_next {
  right: 24px;
}

.mm-menu .mm-listitem_opened > a:not(.mm-btn_next) {
  font-weight: 800;
  color: #2e287b;
}

.mm-menu .mm-listitem_opened > .mm-btn_next,
.mm-menu .mm-listitem_opened > .mm-panel {
  background: rgba(0, 0, 0, 0);
  padding: 0;
}

.mm-menu .sub-menu a,
.mm-listitem_opened > a {
  border: 0;
}

.mm-menu .sub-menu > .mm-listitem {
  padding-left: 0;
  padding-right: 0;
}

.mm-menu .sub-menu > .mm-listitem > a {
}

.mm-menu .sub-menu > .mm-listitem:after {
  display: none;
}


.mm-page__blocker.mm-slideout{
  width: 70px;
  right: 0;
  position: fixed;
  left: auto;
}

/* SEARCH
----------------------------------------------------------------------------- */
a.search_trigger,
.js_burger_btn {
  padding: 14px 24px;
  display: block;
  position: relative;
}

.js_burger_btn {
  display: none;
}

.search_trigger i {
  background: url("../img/ico_search.svg");
  background-repeat: no-repeat;
  background-size: 100% auto;
  display: block;
  height: 21px;
  width: 19px;
}

.lightbox-search-content {
  transform: translate(-50%, -50%);
  position: absolute;
  top: 40%;
  left: 50%;
  width: 50%;
  width: 100%;
  padding: 50px 6%;
}

.searchform .screen-reader-text {
  display: none;
}

.searchform input[type="text"] {
  font-family: "AvenirNextLTPro-Regular";
  font-size: 65px;
  text-align: center;
  border: 0;
  border-bottom: 2px solid #cbcbcb !important;
  width: 100%;
  color: #4a4a4a;
}

.searchform input[type="text"]::-webkit-search-decoration,
.searchform input[type="text"]::-webkit-search-cancel-button,
.searchform input[type="text"]::-webkit-search-results-button,
.searchform input[type="text"]::-webkit-search-results-decoration {
  display: none;
}

.searchform input[type="submit"] {
  font-family: "AvenirNextLTPro-Regular";
  margin: 50px auto 0px auto;
  cursor: pointer;
  width: auto;
  -webkit-text-fill-color: #2e287b;
  color: #2e287b;
  text-transform: uppercase;
  padding: 18px 44px;
  font-size: 16px;
  display: block;
  width: 100%;
  max-width: 240px;
  border-image-source: linear-gradient(45deg, #1481c8, #2f2680 100%);
  border-image-slice: 1;
  font-weight: 600;
  transition: all ease-in-out 0.2s;
}

.searchform input[type="submit"]:hover {
  background: -webkit-linear-gradient(45deg, #1481c8, #2f2680 100%);
  -webkit-text-fill-color: #fff;
  color: #fff;
}

.searchform ::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  opacity: 1;
  color: #bec6cb;
}

.searchform ::-moz-placeholder {
  /* Firefox 19+ */
  opacity: 1;
  color: #bec6cb;
}

.searchform :-ms-input-placeholder {
  /* IE 10+ */
  opacity: 1;
  color: #bec6cb;
}

.searchform :-moz-placeholder {
  /* Firefox 18- */
  opacity: 1;
  color: #bec6cb;
}
.search-results .item_post_thumb {
  max-width: 210px;
}
.search-results .item_post_content {
  max-width: calc(100% - 250px);
}

/* CARDS
----------------------------------------------------------------------------- */
.page_hero_cards .slide_content {
}

/* Slideshow */
.slideshow-slide {
  height: auto;
}

.slideshow-slide .slide_image {
  float: left;
  max-width: 50%;
  width: 100%;
}

.slideshow-slide .slideshow-content {
  position: absolute;
  width: 100%;
  top: 50%;
  transform: translateY(-50%);
}

.slideshow-content > .container {
  overflow: visible;
}

.slideshow-content > .container > div {
  padding-left: 54.3%;
}

.slideshow-content .editor_wysiwyg ul {
  list-style: none;
  margin-left: 0;
}

.slideshow-content .editor_wysiwyg li {
  list-style: none;
  padding-left: 0;
}

.slideshow-content .editor_wysiwyg li strong {
  text-transform: uppercase;
  color: #4a4a4a;
  font-family: "AvenirNextLTPro-Bold";
  font-size: 18px;
}

.slideshow-content .editor_wysiwyg ul li:before {
  display: none;
}

.slideshow-slide a {
  text-decoration: none;
}

.js_slideshow .slick-dots {
  width: 50% !important;
}

.slideshow_navigation {
  justify-content: flex-end;
  display: flex;
  position: relative;
  top: 20px;
  overflow: visible;
  z-index: 3;
}

.slideshow_navigation > div {
  cursor: pointer;
  display: block;
  text-indent: -9999px;
  width: 20px;
  height: 20px;
  margin-right: 40px;
  background-size: 9px auto;
  background-position: center;
  background-repeat: no-repeat;
}

.js_slideshow_prev {
  background-image: url("../img/chevron_sx.svg");
}

.js_slideshow_next {
  background-image: url("../img/chevron_dx.svg");
}

/** Text Animation **/

@-webkit-keyframes fadeInUpSD {
  0% {
    opacity: 0;
    -webkit-transform: translateY(100px);
    transform: translateY(100px);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInUpSD {
  0% {
    opacity: 0;
    -webkit-transform: translateY(100px);
    transform: translateY(100px);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInUpSD {
  -webkit-animation-name: fadeInUpSD;
  animation-name: fadeInUpSD;
}

.slick-active .slide-content > .container > div {
  animation-name: fadeInUpSD;
  animation-duration: 1s;
  opacity: 1;
}

/* Text Animation End **/
.slick-dots {
  position: absolute;
  bottom: 10px;
  display: block;
  width: 100%;
  padding: 0;
  list-style: none;
  text-align: center;
}

/* Media Queries */
@media (max-width: 768px) {
  .slideshow-text .slideshow .slideshow-slide a {
    padding-top: 0.8rem;
  }

  .slideshow-text .slideshow .slideshow-slide a span {
    font-size: 20px;
    margin-top: 0.5rem;
  }

  .slideshow .slideshow-slide .header-content {
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    margin: 0 auto;
  }
}

/* Slideshow Secondario */
.img_slideshow_wrapper {
  display: flex;
  align-items: center;
  position: relative;
  justify-content: flex-end;
}

.js_img_slideshow {
    position: relative;
    z-index: 2;
  width: 100%;
  max-width: 50%;
}

.img_slideshow_content {
  position: absolute;
  z-index: 1;
  transform: translateX(-50%);
  left: 50%;
  padding-right: 54%;
}

.img_slideshow_wrapper.aligned_sx {
  flex-direction: row-reverse;
}

.img_slideshow_wrapper.aligned_sx .img_slideshow_content {
  right: 50%;
  left: auto;
  padding-right: 0;
  padding-left: 54%;
  transform: translateX(50%);
}

/* Slideshow Dots */
.js_slideshow .slick-dots > li button,
.js_img_slideshow .slick-dots > li button,
.js_img_slider .slick-dots > li button {
  border-color: #4a4a4a;
  border: 1px solid #4a4a4a;
  background: none;
  opacity: 0.5;
}

.js_slideshow .slick-dots > li.slick-active button,
.js_img_slideshow .slick-dots > li.slick-active button,
.js_img_slider .slick-dots > li.slick-active button {
  background: #4a4a4a;
}

/* Popup Info */
.cards_popup {
  max-width: 540px;
}

.cards_popup .fancybox-close-small {
  width: 70px;
  height: 70px;
  background: url("../img/ico_close_grey.svg") no-repeat center;
}

.cards_popup .fancybox-button svg {
  display: none !important;
}

.cards_popup .form_submit {
  display: block;
}
.cards_popup .form_submit input[type="submit"] {
  max-width: 120px;
  float: right;
}

/* CASI STUDIO
----------------------------------------------------------------------------- */
.related-grid > .col {
  border-right: 1px solid #fff;
  padding-right: 4%;
}

.related-grid > .col:last-child {
  border-right: 0;
}

h1 + .cat-casi-studio > .heading_6 {
  padding-bottom: 0 !important;
}

.single-casi-studio .post-thumbnail {
  display: none;
}

/* FANCYBOX
----------------------------------------------------------------------------- */

.fancybox-bg {
  background: rgba(255, 255, 255, 0.95);
}

.fancybox-slide--html {
  padding: 0;
}

.fancybox-content#search {
  width: 100%;
  height: 100%;
  margin: 0;
}

.fancybox-button.fancybox-button--close {
  background-image: url("../img/ico_close.svg");
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center;
  background-color: rgba(0, 0, 0, 0);
  width: 36px;
  height: 36px;
  float: right;
}
.fancybox-toolbar {
  margin-top: 44px;
  margin-right: 42px;
}
.fancybox-toolbar .fancybox-button.fancybox-button--close {
  width: 24px;
  height: 24px;
}

.fancybox-button.fancybox-button--arrow_left,
.fancybox-button.fancybox-button--arrow_right {
  margin: 0 32px;
  padding: 0;
  width: 28px;
  height: 28px;
}

.fancybox-button.fancybox-button--arrow_left > div,
.fancybox-button.fancybox-button--arrow_right > div {
  background-size: 15px auto;
  background-repeat: no-repeat;
  background-position: center;
  background-color: rgba(255, 255, 255, 0);
}

.fancybox-button.fancybox-button--arrow_left > div {
  background-image: url("../img/chevron-sx.svg");
}

.fancybox-button.fancybox-button--arrow_right > div {
  background-image: url("../img/chevron-dx.svg");
}

.fancybox-button.fancybox-button--close svg,
.fancybox-button.fancybox-button--arrow_left svg,
.fancybox-button.fancybox-button--arrow_right svg {
  display: none;
}

.fancybox-button.fancybox-button--arrow_left,
.fancybox-button.fancybox-button--arrow_right {
  background-color: rgba(255, 255, 255, 0);
}

.fancybox-infobar {
  position: absolute;
  top: auto;
  bottom: 40px;
  left: 50%;
  transform: translateX(-50%);
}

.fancybox-navigation .fancybox-button {
  top: calc(50% - 28px) !important;
}

/* MASONRY
----------------------------------------------------------------------------- */
.masonry_grid {
  width: calc(100% + 24px);
  margin-left: -12px;
}

.masonry_grid_4 .masonry_grid_sizer,
.masonry_grid_4 .masonry_grid_item {
  width: 25%;
}

.masonry_grid_3 .masonry_grid_sizer,
.masonry_grid_3 .masonry_grid_item {
  width: calc(33.333% - 20px);
}

.masonry_grid_2 .masonry_grid_sizer,
.masonry_grid_2 .masonry_grid_item {
  width: 50%;
}

.masonry_grid_1 .masonry_grid_sizer,
.masonry_grid_1 .masonry_grid_item {
  width: 100%;
}

.masonry_grid_item {
  border: 10px solid #f7f7f7;
  margin-bottom: 20px;
}

/* IMG SLIDER /Usato in casi studio
----------------------------------------------------------------------------- */
.js_img_slider {
  width: 100%;
  aspect-ratio: 5 / 3;
  background: #f7f7f7;
  margin-top: 60px;
}

.js_img_slider .slick-list,
.js_img_slider .slick-slider,
.js_img_slider .slick-track {
  position: relative;
  display: block;
  height: 100%;
}

.js_img_slider .img_slideshow_slide {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.js_img_slider .img_slideshow_slide > img {
  position: absolute;
  max-width: calc(100% - 80px);
  max-height: calc(100% - 80px);
  width: auto;
  height: auto;
}

/* FOOTER
----------------------------------------------------------------------------- */
.footer_logo {
  max-width: 185px;
  display: block;
}

.footer_col,
.footer_col_small {
  float: left;
}

.footer_col {
  width: 30%;
}

.footer_col_small {
  width: 20%;
}

.footer_menu a,
.site_footer a {
  text-decoration: none;
}

.site_footer > .container_flex {
  justify-content: space-between;
  display: flex;
}

.footer_menu li {
  padding: 8px 0;
  display: block;
}

.footer_menu li strong {
  padding-bottom: 16px;
  display: block;
}

.footer_menu li.has_icon {
  background-repeat: no-repeat;
  background-position: left 8px;
  padding-left: 34px;
}

.footer_email {
  background-image: url("../img/ico_email.svg");
}

.footer_linkedin {
  background-image: url("../img/ico_linkedin.svg");
}

.footer_tel {
  background-image: url("../img/ico_tel.svg");
}

.footer_press {
  background-image: url("../img/ico_download.svg");
}

.footer_venue {
  background-image: url("../img/ico_pointer.svg");
}

.logo_cert {
  margin-right: 16px;
  float: left;
}
.sep_bull {
  font-size: 9px;
  display: inline-block;
  vertical-align: middle;
}

/* BANNER IUBENDA
----------------------------------------------------------------------------- */
#iubenda-cs-banner {
  display: block;
  position: fixed;
  width: 100%;
  z-index: 9999999;
  bottom: 0;
  color: #817d77;
  background: rgba(255, 255, 255, 0.85);
  font-size: 12px;
  border-top: 1px solid #ccc;
}

.iubenda-cs-container {
  margin: auto;
  width: 100%;
  max-width: 1580px;
  padding: 28px 120px;
}

.iubenda-banner-content a {
  color: #1481c8;
}

.iubenda-cs-rationale {
  justify-content: space-between;
  display: flex;
}

.iubenda-cs-accept-btn {
  -webkit-appearance: none;
  appearance: none;
  border: 0;
  letter-spacing: 1.3px;
  text-transform: uppercase;
  font-weight: 300;
  color: #817d77 !important;
  cursor: pointer;
  background: rgba(255, 255, 255, 0);
  display: block;
}
