@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }

  .draw-line,
  .draw-polyline,
  .dot-node,
  .btn-pieno-w {
    transition: none;
  }

  .section-cta-footer.is-visible .cta-art-left,
  .section-cta-footer.is-visible .cta-art-right,
  .section-cta-footer.is-visible .cta-art-dot {
    animation: none;
  }

  .benefit-card__wave,
  .benefit-card__line {
    animation: none;
    stroke-dashoffset: 0;
  }
}


/* MEDIA QUERY INTERVALLI */
@media only screen and (min-width:769px) and (max-width: 1200px) {

}

@media only screen and (min-width:668px) and (max-width: 768px) {
}

@media (max-width: 1440px) {
}
@media (max-width: 1399px) {
  .droopmenu > li > a, .droopmenu > li > span {padding:0 15px}
  .item-servizio a .box-item-servizio .box-servizio, .item-servizio span .box-item-servizio .box-servizio {padding:40px 40px 40px 20px}
  .item-valore .box-item-servizio .box-servizio {padding:20px}
  .dettaglio-fondo-page .h-banner-int {opacity:0.3}
  .section-numeri .numeri-panel::before {inset: 0 calc(50% - 50vw) 0 -50px;}
  .arco-numeri .numeri-archi {left:15.4vw}
  .section-numeri .numeri-grid {padding-right:0; padding-left:60px}
  .container {max-width: unset !important;}
  .section-technology {border-radius:0}
  .section.section-cta-footer {border-radius:0}
}

@media (max-width: 1299px) {
  .section-testo-profile .dot-up {left:0}
}
@media (max-width: 1200px) {
  .container {max-width: unset !important;}
}
@media (max-width: 1199.98px) {
  .img-bg-consulenza {
    -webkit-mask-size: auto 116%;
    mask-size: auto 116%;
  }

}

/* MEDIA FINO A COL-LG */
@media (max-width: 1199px) {
  .header-menu .navbar-dark .navbar-nav .nav-link span {font-size:11px}
  .header-menu .navbar-dark .navbar-nav .nav-link {padding:18px 10px}
  .box-newsletter {padding:30px 20px; margin-top:-276px}
  .titolo-newsletter h2 {font-size:22px}
  .hover.panel .box1 .cta-dark {width:100%}
  .hover.panel .box1 .cta-dark a.animated-button.thar-four {width:100%}
  .quadrato-partner-small {height:inherit; width:205px; top:125px; left:10px}
  .partner-box.team-box .testo_schedina {width:100%; padding:10px}
  .carousel-cell.slide-servizi .cont-servizi .testo-servizi {padding:0 60px}
  .has-dropdown a:after {top:inherit; bottom:15px; right:50%; margin-right:-5px}
  .rectangle-bg-2 {background-position:-150px; top:35%}
  .header-title p.lead {font-size:28px}
  .shape-form {background-repeat:no-repeat; width:220px}
  .google-like-section {height:100vh}
  .content-col {min-height:100vh}
  .cards-col {height:100vh}
  .cards-viewport {height:80vh}
  .section.section-work {padding:80px 0}
  .section.section-publications {padding:80px 0}
  .work-grid { grid-template-columns: repeat(5, minmax(260px, 1fr)); }
  .hero-visual { min-height: 500px; }
}

@media (max-width: 1180px) {
  .section-products-home .intro {padding:0 70px 0 40px}
  .risk-level > li {width:30px; height:30px; line-height:30px;}
  .risk-level > li::before {font-size:16px}
  .risk-level > li.isActive {width:40px; height:40px; line-height:40px}
  .risk-level > li.isActive::before {font-size:20px}
  .dm-nav-brand a img, .droopmenu-brand img {width:140px}
  .droopmenu > li > a, .droopmenu > li > span {padding:0 10px}
  .droopmenu > li {font-size:14px}
}

@media (max-width: 1140px) {
  .item-servizio a .box-item-servizio .box-servizio h3, .item-servizio span .box-item-servizio .box-servizio h3 {font-size:18px}
  .section.section-servizi-home .intro {padding:0 40px 40px 70px}
  .mask-recruitment {width:40%; mask-size:cover}
  .shape-bottom {right:-80px}
  .bg-recruitment-home {min-height:auto; padding-bottom:100px}
  .section-recruitment-home .intro {padding-right:15px}
  .arco-numeri .numeri-archi {top:60px; left:11.3vw; width: min(41vw, 546px)}
  .section-numeri .numeri-panel::before {inset: 0 calc(50% - 50vw) 0 -80px;}
  .section-numeri .numeri-panel {min-height:450px}
  .content-box {padding-right:20px}
  .section-highlights .intro-tech {padding:0}
}

@media (max-width: 1124px) {
  .section-numeri h2.title-h2 {font-size:40px}
  .arco-numeri .numeri-archi {top:90px; left:10.3vw; width: min(43vw, 546px)}
}

@media (max-width: 1099px) {
  .droopmenu > li {font-size:13px}
  .droopmenu > li > a, .droopmenu > li > span {padding:0 8px}
  .language-btn {width:32px; height:32px}
  .item-servizio a .box-item-servizio .box-servizio h3, .item-servizio span .box-item-servizio .box-servizio h3 {margin-top:10px}
  .item-servizio a .box-item-servizio .box-servizio img, .item-servizio span .box-item-servizio .box-servizio img {width:30px}
  .item-servizio a .box-item-servizio .box-servizio p, .item-servizio span .box-item-servizio .box-servizio p {padding-bottom:10px}
  .item-servizio a .box-item-servizio .box-servizio, .item-servizio span .box-item-servizio .box-servizio {padding:20px 45px 20px 20px}
  .list-blog .item-servizio a .box-item-servizio .box-servizio {padding:20px}
  .section-company .box-company {padding:40px 60px 40px 40px}
  .azienda-section {
    min-height: 820px;
    padding: 80px 0 92px;
  }

  .azienda-media {
    min-height: 620px;
  }

  .azienda-photo-main {
    width: min(43vw, 458px);
  }

  .azienda-photo-secondary {
    left: min(26vw, 278px);
    top: 316px;
    width: min(24vw, 260px);
    height: auto;
    aspect-ratio: 293 / 378;
  }

  .azienda-label-card {
    top: 500px;
  }

  .azienda-title {
    font-size: clamp(2.35rem, 3.7vw, 3.35rem);
  }

  .azienda-copy {
    width: min(100%, 385px);
    margin-top: 46px;
    margin-left: 0;
  }
}

@media (max-width: 1024px) {
  .header-title .title-h1 {font-size:28px}
  .header-title .title-h2 {font-size:28px}
  .hero h1.title-h1 {font-size:28px}
  .dettaglio-blog-page .title-h1 {font-size:28px}
  .dm-nav-brand a img, .droopmenu-brand img {width:130px}
  .header-title p.lead {font-size:24px; padding-right:100px}
  .item-servizio a .box-item-servizio .box-servizio p, .item-servizio span .box-item-servizio .box-servizio p {font-size:14px}
  .listing-box-servizi {position:relative; z-index:2}
}
@media (max-width: 992px) {
  .sede-principale {
    grid-template-columns: 1fr;
  }
  .sede-principale-visual {
    min-height: 280px;
  }
  .filiali-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .sedi-stats {
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
  }
  .stat-item:nth-child(2)::after { display: none; }
}
@media (max-width: 991.98px) {
  .section-intro-home .dot-up {
    top: -145px;
    width: 980px;
    max-width: none;
    transform: translate3d(-50%, -90px, 0);
  }
  .section-intro-home .dot-bottom-sx {
        left: -110px;
        bottom: -30px;
        width: 430px;
      }

      .section-intro-home .dot-bottom-dx {
        right: -92px;
        bottom: -150px;
        width: 360px;
      }

  .section-intro-home.is-intro-visible .dot-up {
    transform: translate3d(-50%, 0, 0);
  }
  .section-intro-home {
    min-height: auto;
    padding: 62px 0 76px;
  }

  .section-intro-home::before,
  .section-intro-home::after {
    opacity: 0.38;
  }

  .section-intro-home h2.title-h2 {
    margin-bottom: 28px;
  }

  .benefit-map {
    position: relative;
    inset: auto;
    margin-top: 42px;
    pointer-events: auto;
  }

  .benefit-map .benefit-carousel {
    padding: 0 0 48px;
  }

  .benefit-map .flickity-viewport {
    overflow: visible;
  }

  .benefit-map .benefit-cell {
    width: min(86vw, 360px);
    min-height: 236px;
    padding: 0 10px;
  }

  .benefit-card {
    width: min(100%, 340px);
    min-height: 236px;
    margin: 0 auto;
  }

  .benefit-map .flickity-page-dots {
    bottom: -2px;
  }

  .benefit-map .flickity-page-dots .dot {
    width: 8px;
    height: 8px;
    margin: 0 4px;
    background-color: rgba(0, 129, 198, 0.36);
    opacity: 1;
  }

  .benefit-map .flickity-page-dots .dot.is-selected {
    width: 22px;
    border-radius: 999px;
    background-color: #0081C6;
  }

  .benefit-map .flickity-prev-next-button {
    top: auto;
    bottom: 2px;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(0, 129, 198, 0.18);
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 10px 24px rgba(17, 51, 76, 0.11);
    opacity: 1;
    transform: none;
  }

  .benefit-map .flickity-prev-next-button.previous { left: calc(50% - 145px); }
  .benefit-map .flickity-prev-next-button.next { right: calc(50% - 145px); }

  .benefit-map .flickity-button-icon {
    left: 32%;
    top: 32%;
    width: 16px;
    height: 16px;
    fill: #0081C6;
  }

  .section-cta-footer {
    min-height: 330px;
    padding: 54px 0 74px;
  }

  .section-cta-footer h2 {
    max-width: 680px;
    padding: 0 64px;
  }

  .section-cta-footer .intro-cta {
    max-width: 620px;
    padding: 26px 64px 0;
  }
  .cta-art-dot {
    left: auto;
    right: 22%;
    top: 128px;
    transform: none;
  }

  @keyframes ctaPulse {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
  }
  .section.section-servizi {overflow: hidden;}
  .section-servizi .listing-box-servizi {
    display: block;
    margin-top: 34px;
    padding: 0 0 52px;
    overflow: visible;
  }

  .section-servizi .listing-box-servizi .flickity-viewport {
    overflow: visible;
  }

  .section-servizi .listing-box-servizi .tech-flickity-cell {
    width: min(86vw, 360px);
    min-height: 100%;
    padding: 0 10px;
  }

  .section-servizi .listing-box-servizi .tech-flickity-cell > * {
    height: 100%;
    margin-inline: auto;
  }

  .section-servizi .listing-box-servizi .flickity-page-dots {
    bottom: -2px;
  }

  .section-servizi .listing-box-servizi .flickity-page-dots .dot {
    width: 8px;
    height: 8px;
    margin: 0 4px;
    background-color: rgba(0, 129, 198, 0.36);
    opacity: 1;
  }

  .section-servizi .listing-box-servizi .flickity-page-dots .dot.is-selected {
    width: 22px;
    border-radius: 999px;
    background-color: #0081C6;
  }

  .section-servizi .listing-box-servizi .flickity-prev-next-button {
    top: auto;
    bottom: 2px;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(0, 129, 198, 0.18);
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 10px 24px rgba(17, 51, 76, 0.11);
    opacity: 1;
    transform: none;
  }

  .section-servizi .listing-box-servizi .flickity-prev-next-button.previous { left: calc(50% - 145px); }
  .section-servizi .listing-box-servizi .flickity-prev-next-button.next { right: calc(50% - 145px); }

  .section-servizi .listing-box-servizi .flickity-button-icon {
    left: 32%;
    top: 32%;
    width: 16px;
    height: 16px;
    fill: #0081C6;
  }

  .team-hero {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .team-title { max-width: 11ch; }

  .team-grid { grid-template-columns: repeat(6, 1fr); }

  .team-card,
  .team-card.is-wide {
    grid-column: span 3;
  }

  .team-card.offset-top { margin-top: 0; }
}
/* MEDIA FINO A COL-MD */
@media (max-width: 991px) {
  .section {padding:80px 0}
  .title-h1 {font-size:26px}
  .title-h2 {font-size:26px}
  .dettaglio-blog-page .title-h1 {font-size:26px}
  .blog-post h2 {font-size:26px}
  .banner-interno {height:450px}
  .droopmenu-header, .droopmenu-showbg .droopmenu-header {display:block}
  .droopmenu-toggle {padding-top:0}
  .droopmenu .div-menu .lang-sel select {color:#fff}
  .langselect {background: url(../images/arrow.svg) 25px / 10px no-repeat transparent;}
  .langselect option{color:#fff;}
  .droopmenu-showbg .droopmenu-toggle {padding-top:5px}
  .section.section-servizi-home {overflow: hidden}
  .h-scroll {left:-40px}
  .h-scroll-down {right:-40px}
  .section.section-servizi-home .intro {padding:0 40px 40px 30px}
  .section-products-home .intro {padding:0 30px 0 40px}
  .col-box-home {margin-left:auto; margin-top:-170px}
  .item-servizio a .box-item-servizio .box-servizio p, .item-servizio span .box-item-servizio .box-servizio p {font-size:15px}
  .section.section-company-home {padding:0}
  .shape-bottom {right:-180px}
  .section.section-products-home {overflow: hidden}
  .section.section-listing-pagine {overflow:hidden}
  .mask-recruitment {mask-size:contain}
  .section.section-intro .intro {padding:0 40px 40px 40px}
  .section.section-vantaggi-dettaglio .intro {padding:0 40px 40px 30px}
  .section.section-blog-dettaglio .intro {padding:0 40px 40px 30px}
  .testo-pagina {padding: 0 40px 0 40px}
  .item-valore .box-item-servizio {min-height:278px}
  .bg-form {padding:80px 0}
  .bg-form .intro-form {padding-bottom:40px}
  .section-vantaggi-dettaglio .h-scroll {z-index:-1}
  .listing-vantaggi .box-vantaggio {background-color:#fff; padding:20px}
  .listing-vantaggi .box-vantaggio h4 {font-size:18px}
  .section.section-intro-graf .intro {padding:0 40px 40px 30px}
  .intro-graph {padding:40px 40px 0 30px}
  #chartdiv {background-color:#fff}
  .dettaglio-fondo-page .titolo-int {padding:120px 0 80px 0}
  .intro-doc {padding-left:30px}
  .dettaglio-fondo-page .titolo-int .desc-fondo {padding:60px 0 0 0}
  .droopmenu > li.droopmenu-mega > ul {margin-left:0; width:100%}
  .droopmenu.droopmenu-right .droopmenu-col li h4 a {color:#fff;}
  .google-like-section, .google-like-section.story-section {height:auto}
  .google-like-inner {min-height: auto;}
  .content-col, .cards-col {min-height: auto; height: auto; }
  .content-col {padding-top: 0; padding-bottom: 60px;}
  .content-box {max-width: 100%; padding-right: 0;}
  .content-box p {max-width:100%}
  .cards-col {padding-bottom: 0; overflow: visible;}
  .cards-viewport {height: auto; overflow: visible; mask-image: none; -webkit-mask-image: none; max-width: 100%;}
  .cards-track {transform: none !important; padding: 0;}
  .g-card {opacity: 1; transform: none;}
  .section-bg-orb {display: none;}
  .section-metodo .metodo-layout {grid-template-columns: 1fr; gap: 44px;}
  .section-metodo .metodo-head {max-width: 720px; margin: 0; order: -1;}
  .contatti-page .section .intro {padding:0}
  .col-contatti .cont-contatti {padding:20px}
  .section-list-pub .grid-box {grid-template-columns: repeat(3, 1fr);}
  .section-testo-profile .dot-up {display:none}
  .hero { min-height: auto; padding-top: 118px; }
  .hero-visual { min-height: 430px; }
  .benefit-slide,
  .application-slide,
  .process-wrap {
    grid-template-columns: 1fr;
  }
  .sticky-copy { position: static; }
  .data-panel { min-height: auto; }
  .site-nav .desktop-links { display: none !important; }
  .droopmenu-navbar .container {border-radius:0; padding:0 10px}
  .header-title {width:65%}
  .section.section-servizi {padding:80px 0}
  .box-margin {margin-top:0}
  .box-news {height:550px}
  .box-news a {flex-direction:column}
  .box-news a .cont-box-list {width:100%; padding:20px}
  .box-news a .img-box-list {height:300px; width:100%}
  .google-like-section {padding:80px 0 !important}
  .carousel-pub {margin-top:0; width:95%}
  .img-pub {display:none}
  .carousel-case .flickity-prev-next-button.previous, .carousel-foto-pagina .flickity-prev-next-button.previous {left:30px}
  .carousel-case .flickity-prev-next-button.next, .carousel-foto-pagina .flickity-prev-next-button.next {left:30px}
  .droopmenu-navbar.droopmenu-showbg .container {padding:0 10px}
  .google-like-section.story-section {padding:100px 0 !important}
  .section.section-bio .intro.dx-intro {padding:80px 0 240px 0}
  .section.section-last-settore .intro.dx-intro {padding:80px 0 80px 0}
  .section-highlights .intro-tech p {padding-right:0}
  .section.section-intro-dettaglio .intro {padding:0 60px 0 0}
  .section-app h2.title-h2 {margin-bottom:30px}
  .col-form-contatti {padding:60px 20px 60px 40px}
  .grid-point {grid-template-columns: repeat(1, 1fr);}
}

/* MEDIA FINO A COL-SM */
@media (max-width : 767px) {
  .show-mobile{display:block}
  .show-flex-mobile{display:flex}
  .show-desktop{display:none;}
  .show-flex-desktop {display:none}
  .section, section {padding:60px 0}
  .section .intro {padding:0}
  .page-text h2 {margin-bottom:30px}
  .header-title {padding-top:0}
  .section.section-servizi-home .intro {padding:0 30px 40px 30px}
  .section.section-products-home .intro {padding:0 30px 40px 30px}
  .mask-recruitment {width:100%; height:300px; -webkit-mask-image:none; position:relative}
  .bg-recruitment-home {padding-top:60px; padding-bottom:60px; overflow: inherit}
  .bg-recruitment-home .intro {padding:0 30px}
  .shape-bottom {right:0; bottom:-75px; z-index:1}
  .col-info-legali {border-top:1px solid rgba(255,255,255,0.2); margin-top:20px; padding-top:40px}
  .text-center-sm {text-align:center}
  .col-box-home {margin-top:-80px}
  .item-servizio a .box-item-servizio .box-servizio.box-hover {opacity: 1;transform: translateY(0);}
  .section.section-intro .intro {padding:0 30px 40px 30px}
  .testo-pagina {padding: 0 30px}
  .teaml-list .grid-sizer, .teaml-list .grid-item {width:49%}
  .grid-item .list-team .box-cont-trattamento {padding:10px; width:85%}
  .grid-item .list-team .box-cont-trattamento .team-ruolo {bottom:0; transform: translateY(0); display:block}
  .grid-item:hover .list-team .box-cont-trattamento .team-ruolo {bottom:0; transform: translateY(0); display:block}
  .grid-item .list-team .box-cont-trattamento .team-ruolo p {display:none}
  .grid-item .list-team .box-cont-trattamento h3 {font-size:15px}
  .bg-form {padding:60px 0}
  .shape-form {right:-100px}
  .section.section-form-pagina {overflow:hidden}
  .bg-form .cont-form {padding:0 120px 0 0px}
  .section-form-pagina .border-light {border-left:none !important}
  .listing-vantaggi .box-vantaggio {background-color:#fff}
  .section-vantaggi-dettaglio .listing-vantaggi .box-vantaggio.box-margin {margin-top:0}
  .h-horizontal {bottom:38px}
  .h-vertical {height:242px}
  .intro-dettaglio-servizio {padding-right:20px}
  .dettaglio-fondo-page .titolo-int {padding:120px 0 60px 0}
  .dettaglio-fondo-page .h-scroll {opacity:0.2}
  .section-intro-graf .filters-button-group {padding:40px 0 20px 0}
  .section.section-track-record .intro-dettaglio-servizio {padding-left:0; padding-right:15px}
  .track-record th {padding:10px}
  .col-contatti .cont-contatti {width:100%; margin-right:0; height:auto}
  .col-contatti.flex-center{align-items:flex-start;}
  .col-form-contatti {margin-top:60px}
  .col-form-contatti .intro {width:100%}
  .list-blog .grid-box {grid-template-columns: repeat(2, 1fr);}
  .section-list-pub .grid-box {grid-template-columns: repeat(2, 1fr);}
  .item-cat a .latest-title h3 {font-size:18px}
  .section-technology .intro-tech {padding:0}
  .section.section-servizi {padding:60px 0}
  .section.section-servizi .intro {padding:0}
  .carousel-pub {margin-top:60px}
  .cta-art.cta-art-right, .cta-art.cta-art-left {opacity:0.3}
  .cta-art.cta-art-dot {display:none}
  .section.section-cta-footer {text-align:center}
  .section-cta-footer .intro-cta {padding:26px 0 0; max-width:unset}
  .section-cta-footer .intro-cta a.btn-pieno-w {margin:auto}
  .section-cta-footer h2 {max-width:unset}
  .footer .contatti-social {padding-bottom:30px}
  .section.section-intro-dettaglio .intro {padding:0}
  .pag-dettaglio .evidence-strip {margin-top:30px}
  .banner-row {margin-top:30px}
  .grid-box {margin-top:60px}
  .google-like-section.story-section {padding:80px 0 !important}
  .story-section .content-box {padding-right:0}
  .listing-page .section.section-banner-testo, .section.section-banner-testo {padding:140px 0 80px 0}
  .highlights-list.grid-box {padding-right:0}
  .section-app .intro-dx {padding-right:0}
  .section.section-last-settore .intro.dx-intro {padding:60px 0 60px 0}
  .section-list-pub .grid-box {margin-top:0}
  .col-form-contatti {padding:60px 20px 60px 40px}
  .faq-listing {padding-top:60px;}
  .cont-company-footer {border-right:none; padding-right:0}
  .download-page .section.section-testo-profile {padding:60px 0}
  .grid-point .evidence-item:last-child {border-bottom:none}
  .col-ponts-partner {padding-top:60px}
}

@media (max-width : 736px) {

}

@media (max-width : 667px) {
  .h-banner, .h-banner-int {opacity:0.4}
  .item-servizio {width:100%}
  .section.section-products-home .intro {padding:0 30px 60px 30px}
  .col-box-home {margin-top:0px}
  .box-margin, .box-margin-neg {margin-top:0px}
  .listing-box-servizi {padding-top:20px}
  .grid-item .list-team .latest-img {min-height:250px}
  .section-intro-graf .filters-button-group {overflow: scroll; white-space: nowrap;}
  .header-title {width:75%}
}
@media (max-width: 600px) {
  .sedi-section { padding: 60px 16px; }
  .sede-principale-content { padding: 40px 28px; }
  .filiali-grid { grid-template-columns: 1fr; }
  .sedi-stats { grid-template-columns: 1fr; padding: 30px 20px; }
  .stat-item::after { display: none !important; }
  .item-app {height:auto}
  .faq-listing .accordion button[aria-expanded=true] + .accordion-content {max-height:16em}
}
@media (max-width: 575.98px) {
  .section-intro-home .dot-up {
    top: -95px;
    width: 760px;
  }
  .section-intro-home .dot-bottom-sx {
        left: -170px;
        bottom: 4px;
        width: 350px;
      }

      .section-intro-home .dot-bottom-dx {
        right: -150px;
        bottom: -118px;
        width: 292px;
      }
  .section-intro-home {
    padding: 50px 0 64px;
  }

  .section-intro-home h2.title-h2 {
    font-size: clamp(34px, 11vw, 44px);
  }

  .section-intro-home p {
    font-size: 16px;
  }

  .footer-stage {
    min-height: 76vh;
    padding-bottom: 90px;
  }

  .section-cta-footer {
    min-height: auto;
    margin-bottom: -80px;
    padding: 48px 0 104px;
    border-radius: 8px;
  }

  .section-cta-footer h2 {
    padding: 0 30px;
  }

  .section-cta-footer h2.title-h2 {
    font-size: clamp(30px, 10vw, 22px);
  }

  .section-cta-footer .intro-cta {
    padding: 24px 30px 0;
  }

  .section-cta-footer .intro-cta p {
    font-size: 17px;
  }
  .benefit-card {
    width: 100%;
    min-height: 228px;
    padding: 30px 20px 24px;
  }

  .cta-art-left {
    left: -74px;
    bottom: -1px;
    transform: scale(0.9);
    transform-origin: bottom left;
  }

  .cta-art-right {
    right: -78px;
    bottom: -1px;
    transform: scale(0.9);
    transform-origin: bottom right;
  }

  .cta-art-dot {
    right: 34px;
    top: auto;
    bottom: -56px;
    transform: scale(0.82);
    transform-origin: bottom center;
  }
  .section-technology .intro-tech p {padding-right:0}
  .carousel-case .carousel-cell {width:80%; margin-right:20px;}
  .section.section-bio .intro.dx-intro {padding:60px 0 240px 0}
}
/* MEDIA FINO A COL- */
@media (max-width: 575px) {
  .show-sm {display:block}
  .hide-sm {display:none}
  .dm-nav-brand a img.logo-mobile, .droopmenu-brand img.logo-mobile {width:50px}
  .title-h1 {font-size:22px}
  .title-h2 {font-size:22px}
  .dettaglio-blog-page .title-h1 {font-size:22px}
  .pblog-post h2 {font-size:26px}
  .banner-interno {height:350px}
  .breadcrumb-cont {font-size:12px}
  .header-title {width:90%}
  .header-title p.lead {font-size:22px}
  .droopmenu .div-menu a {padding:0 10px}
  .text-center-xs {text-align:center}
  .social-footer {display:flex; align-items: center;justify-content: center; margin-bottom:30px}
  .sub-footer {font-size:12px}
  .footer .sub-footer a {font-size:12px}
  .section-company .box-company {margin-left:20px; padding:40px}
  .section-recruitment-home .intro p {padding-right:0}
  .shape-bottom {width:200px; height:90px; bottom:-45px}
  .shape-form {display:none}
  .bg-form .cont-form {padding:0 10px 0 0}
  #chartdiv {height:300px}
  .track-record th {font-size:12px; padding:2px; text-align:center}
  .testo-backend h2 {font-size:22px}
  .section-metodo {padding: 62px 0;}
  .section-metodo .metodo-grid {grid-template-columns: 1fr; gap: 16px;}
  .section-metodo .metodo-card {min-height: auto; padding: 26px;}
  .cta-testo-section {padding: 56px 0 66px;}
  .progetti-title {font-size: clamp(2.35rem, 11vw, 3.55rem);}
  .progetti-media {min-height: 410px;}
  .progetti-media::before {right: -122px; top: 28px;}
  .progetti-photo-main {width: calc(100% - 28px);}
  .progetti-photo-secondary {top: 214px; width: 52%;}
  .col-form-contatti {padding:30px}
  .list-blog .grid-box, .list-who .grid-box {grid-template-columns: repeat(1, 1fr);}
  .section-list-pub .grid-box {grid-template-columns: repeat(1, 1fr);}
  .faq-listing .accordion button {font-size:15px; padding: 20px 30px 20px 0}
  .item-cat a .latest-img {height:380px}
  .hero { padding: 104px 0 56px; }
  .hero-actions,
  .carousel-controls {
    align-items: stretch;
    flex-direction: column;
  }
  .btn-ax { width: 100%; }
  .benefit-slide,
  .application-slide {
    padding: 24px;
  }
  .signal-row { grid-template-columns: 1fr; gap: 8px;}
  .cta-band { padding: 34px 24px;}
  .chip-orbit { width: min(360px, 94vw);}
  .orbit-node { width: 58px; height: 58px;}
  .grid-box {grid-template-columns: repeat(1, 1fr);}
  .benefit-card p {max-width:100%}
  .footer h5 {margin-top:20px}
  .portrait {min-height:250px}
  .evidence-strip {padding:30px 10px}
  .highlights-list.grid-box {grid-template-columns: repeat(1, 1fr);}
  .grid-point {grid-template-columns: repeat(1, 1fr);}
}


@media (max-width: 414px) {
  .header-title p.lead {padding-right:0}
  .h-banner {opacity:0.2}
  .section-company .box-company {padding:40px 40px 40px 20px}
  .teaml-list .grid-sizer, .teaml-list .grid-item {width:100%}
  .carousel-case .carousel-cell {width:95%; margin-right:20px;}
}

/* MEDIA QUERY MIN WIDTH */
@media (min-width: 576px) {
  .container-half { max-width:initial; }
  .container-half-small { max-width:initial; }
}

@media (min-width: 768px) {
  .container-half { max-width: calc(720px / 2); }
  .container-2half { max-width: calc(720px / 2); }
  .container-3half { max-width: calc(720px / 1); }
  .container-half-small { max-width: calc(720px / 3); }
  .container-half-md-left { margin-left: 0; }
  .container-half-md-right { margin-right: 0; }
}

@media (min-width: 992px) {
  .benefit-map {
    top:30px;
    --benefit-card-width: 274px;
    --benefit-card-gap: 32px;
    --benefit-card-step: calc(var(--benefit-card-width) + var(--benefit-card-gap));
  }

  .benefit-map .benefit-carousel {
    position: static;
    overflow: visible;
  }

  .benefit-map .benefit-cell {
    position: absolute;
    display: block !important;
    float: none;
    width: auto;
    margin: 0;
    opacity: 1;
    transform: none !important;
    transition: none;
  }

  .benefit-map .benefit-cell[data-card="models"] { left: max(24px, calc(50% - 720px)); top: 122px; }
  .benefit-map .benefit-cell[data-card="data"] { left: calc(50% - (var(--benefit-card-step) * 2)); top: 404px; }
  .benefit-map .benefit-cell[data-card="risk"] { left: calc(50% - var(--benefit-card-step)); top: 500px; }
  .benefit-map .benefit-cell[data-card="design"] { left: calc(50% + var(--benefit-card-gap)); top: 556px; }
  .benefit-map .benefit-cell[data-card="material"] { left: calc(50% + var(--benefit-card-step) + var(--benefit-card-gap)); top: 404px; }
  .benefit-map .benefit-cell[data-card="methodologies"] { right: max(24px, calc(50% - 718px)); top: 122px; }

  .benefit-map .flickity-viewport,
  .benefit-map .flickity-slider,
  .benefit-map .flickity-button,
  .benefit-map .flickity-page-dots {
    display: none;
  }
  .container-half { max-width: calc(960px / 2); }
  .container-2half { max-width: calc(960px / 1.46); }
  .container-3half { max-width: calc(960px / 1.5); }
  .container-half-small { max-width: calc(960px / 3); }
    .navbar-expand-lg .navbar-collapse {display:block !important}
}

@media (min-width: 1320px) {
  .container-half { max-width: calc(1140px / 2); }
  .container-2half { max-width: calc(1140px / 1.39); }
  .container-3half { max-width: calc(1140px / 1.65); }
  .container-half-small { max-width: calc(1140px / 4); }
}

@media (min-width: 40em) {
  /* Bump up size of carousel content */
  .carousel-caption p {
    margin-bottom: 1.25rem;
    font-size: 1.25rem;
    line-height: 1.4;
  }

  .featurette-heading {
    font-size: 50px;
  }
}

@media (min-width: 62em) {
  .featurette-heading {
    margin-top: 7rem;
  }
}

/* NUOVA COOKIE BAR */
@media (max-width: 1024px) {
  .show_banner_cookies {position: fixed;  width: 100%;   background: #646463; color: #fff; z-index: 999999; padding: 30px; left: 0px; font-size: 12px;}
  .switch-item.pl-20 {padding-left:10px}
}

@media only screen and (max-width : 998px) {
  .switch-label {font-size:11px}
}

@media (max-width: 991px) {
  .show_banner_cookies {width:50%}
  .col-switch {border-left:0; border-bottom:1px solid #f2f2f2; padding-bottom:30px}
  .col-switch .switch-page {padding-left:0}
  .show_banner_cookies.big-ban {width:80%}
  .cookiebar-page hr {border-top:0}
}

@media (max-width: 767.98px) {
  .team-page {
    padding: 28px 0 44px;
    background-size: 50% 100%;
  }

  .team-wrap { width: min(100% - 22px, 560px); }

  .team-hero {
    gap: 18px;
    margin-bottom: 30px;
  }

  .team-title {
    font-size: clamp(42px, 15vw, 66px);
    max-width: 8ch;
  }

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

  .team-grid {
    display: flex;
    flex-direction: column;
    gap: 14px;
  }

  .team-card,
  .team-card.is-wide,
  .team-card.is-tall {
    min-height: 0;
    height: auto;
  }

  .team-card-inner {
    position: relative;
    transform: none !important;
    transition: none;
  }

  .team-face {
    position: relative;
    inset: auto;
    min-height: 0;
    backface-visibility: visible;
    -webkit-backface-visibility: visible;
  }

  .team-back {
    border-radius:0 0 8px 8px;
    display: flex;
    max-height: 0;
    padding: 0 22px;
    transform: none;
    top:-10px;
    overflow: hidden;
    transition: max-height .38s ease, padding .38s ease;
  }

  .team-back > .mobile-collapse {
    min-height: 0;
    overflow: hidden;
  }

  .team-card.is-open .team-back {
    max-height: 520px;
    padding: 22px;
  }

  .portrait { min-height: auto; }

  .member-meta {
    min-height: 104px;
    padding: 18px;
  }

  .member-name { font-size: 24px; }
  .bio-text { font-size: 18px; }
}

@media (max-width : 767px) {
  .show_banner_cookies {width:70%}
  .switch-cont {flex-wrap:wrap}
  .switch-item {width:50%; margin-bottom:10px}
  .switch-item.pl-20 {padding-left:0}
  .switch-item-text {margin-top:10px}
  .show_banner_cookies {padding:20px 10px}
  .show_banner_cookies.big-ban .col-bottoni-cookie {flex-direction:row}
  .show_banner_cookies.big-ban .col-bottoni-cookie .btn-foot.mb-20 {margin-bottom:0}
  .show_banner_cookies.big-ban .btn-foot {width:50%}
  .show_banner_cookies a.btn {padding:10px; min-width:90%; font-size:10px}
}

@media (max-width: 575px) {
  .show_banner_cookies {width:90%}
}

@media (min-width: 768px) {
  .azienda-layout {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
  }

  .azienda-media-col {
    flex: 0 0 52% !important;
    width: 52% !important;
    max-width: 52% !important;
  }
  .progetti-layout {
    display: flex;
    flex-wrap: nowrap;
  }

  .progetti-copy-col {
    flex: 0 0 43% !important;
    width: 43% !important;
    max-width: 43% !important;
  }

  .progetti-media-col {
    flex: 0 0 57% !important;
    width: 57% !important;
    max-width: 57% !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }

  .reveal,
  .reveal-left,
  .reveal-right,
  .reveal-scale {
    opacity: 1;
    transform: none;
  }
}
