* {
    padding: 0;
    margin: 0;
  }
  
  
  /* ----------------- Desktop ----------------- */
  
  @media screen and (min-width: 1025px) {
  .nascondi-desktop {
    display:none;
  }

  .container {
    min-width: 1366px;
  }

  #desktopMobile, #menuMob, #barraMenuSm {
    display: none;
  }


  }
  
  
  
  
  /* ----------------- Tablet ----------------- */
  
  @media screen and (max-width: 1024px) and (min-width: 500px) {
  
  .nascondi-tablet {
    display:none;
  }

  #desktopMobile, #menuMob, #barraMenuSm {
    display: none;
  }

  
  
  }
  
  
  
  
  /* ----------------- Smartphone ----------------- */
  
  @media screen and (max-width: 500px) {
  
  .nascondi-smartphone {
  display: none;
  }


  .col-7, .col-12, .col-4, .col-5, .col-6, .col-11, .col-8, .container-fluid {
    padding: 0 8%;
  }

   #desktopLayout,  #menuDesk, #barraMenuDesk, #barraMenuDeskInterno {
    display: none;
  }

  html {
    scroll-behavior: smooth;
  }

  h1, h2 {
    font-size: 8vh;
    padding-bottom: 35px;
  }

  h3 {
    font-size: 8vh;
    padding-bottom: 25px;
  }

  h4 {
    font-size: 8vh;
    padding-bottom: 25px;
  }

  h5 {
    font-size: 8vh;
    font-weight: 800;
    padding-bottom: 25px;
  }

  p {
    font-size: 5vw;
    line-height: 1.5em;
    margin-bottom: 0;
  }

  body {
    color: var(--grigio-scuro);
  }

  .cta-menu-sm,  p.chiudi-menu {
    font-size: 4vw;
    color: white;
    font-weight: var(--font-medium);
    background-color: var(--nero);
    padding: 5px 15px 7px;
    text-align: center;
    border-radius: 100px;
    float: right;
  }

  .cta-black {
    justify-content: center;
  }

  .cta-std-bianco, .cta-std {
    font-size: 5vw;
  }

  .pit-cta {
    width: 20px;
  }

  .pd-logo {
    padding-left: 0;
  }

  .pit-menu-aperto {
    width: 200px;
    padding-left: 8%;
    margin-top: 0px;
  }

  .barra-menu-open {
    height: 80px;
  }

  .menu-item {
    height: 7%;
  }

  .menu-item a {
    font-size: 13vw;
    color: white;
  }

  .logo-rotante-menu img {
    display: none;
  }

  a.link-test {
    font-size: 5vw;
    text-decoration: underline;
  }

  a.cta-big {
    font-size: 8vw;
  }

  a.cta-big:hover {
    padding-right: 50px;
  }

  a.cta-big:after {
    display: none;
  }

  a.social {
    font-size: 5vw;
  }

  a.invio-form {
    font-size: 12vw;
  }

  a.invio-form:hover {
    padding-right: 50px;
  }

  a.invio-form:after {
    display: none;
  }
  
  /* ------------------------------------------------ HOME PAGE ------------------------------------------------ */

  #hero .container-fluid {
    background: var(--need);
    height: 600px;
    border-radius: 0;
    top: 100px;
    position: relative;
  }

  #strategies {
    padding-top: 50px;
    background-size: 100%;
    top: 100px;
  }

  #strategies .blur-sm {
    top: 0;
    position: absolute;
    overflow: hidden;
  }

  #strategies h1 {
    font-size: 10vw;
    -webkit-text-stroke: 1px var(--bianco);
    text-align: left;
  }

  #strategies h1 span {
    padding-left: 0;
    font-weight: 600;
    font-size: 25vw;
  }

  #sliderProgettiSm {
    background: var(--need);
    padding-bottom: 50px;
    -webkit-border-bottom-right-radius: 50px;
    -webkit-border-bottom-left-radius: 50px;
    -moz-border-radius-bottomright: 50px;
    -moz-border-radius-bottomleft: 50px;
    border-bottom-right-radius: 50px;
    border-bottom-left-radius: 50px;
  }

  #sliderProgettiSm .box-4 {
    width: 100%;
  }
  
  #sliderProgettiSm .swiper-wrapper {
    padding-bottom: 25px;
  }

  #vision {
    padding: 50px 0 100px;
    background-size: 90%;
  }

  #vision h2 {
    text-align: left;
    line-height: 1em;
  }

  #vision p {
    padding-bottom: 25px;
  }

  #vision .blur {
    filter: opacity(1);
    left: 0;
    margin-top: 100px;
  }

  #vision .blur img {
    width: 100%;
    height: 100%;
  }

  #testimonianze .col-md-6.offset-md-1 {
    margin-top: 25px;
  }

  #testimonianze h2 {
    line-height: 1em;
    padding-top: 25px;
  }

  #testimonianze h3 {
    font-size: 9vw;
    padding-top: 25px;
    height: auto;
  }

  #testimonianze img {
    width: 100%;
    border-radius: 50px;
  }

  #testimonianze .swiper-slide.link {
    padding-top: 15px;
    background: white;
  }

  #testimonianze h3::after {
    display: none;
  }

  .swiper-button-next, .swiper-button-prev {
    top: unset!important;
    color: var(--need)!important;
    font-size: 9vw!important;
    font-weight: var(--font-bold);
    justify-content: unset!important;
    position: relative!important;
    margin-top: unset!important;
  }

  .pul-slider {
    display: flex;
    align-items: center;
  }

  .swiper-button-prev::after, .swiper-button-next::after {
    content: ''!important;
  }

  .swiper-button-prev,  .swiper-button-next {
    left: unset!important;
    right: unset!important;
  }

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

  .pulsanti .linea {
    height: 2px;
    background: var(--need);
    display: block;
    width: 75px;
    margin-left: 55px;
    margin-right: 10px;
  }

  .pulsanti img {
    border-radius: 0!important;
    width: 50px!important;
  }

  #regalo .cont-regalo {
    padding: 50px 8%;
  }

  #regalo .cont-regalo h4, #regalo .cta-freccia {
    padding-left: 0;
  }

  #regalo .cont-regalo h2 {
    font-size: 17vw;
    text-align: left;
    line-height: 1em;
  }

  #regalo h4 {
    font-size: 10vw;
  }

  #regalo .cont-regalo h4 {
    padding-bottom: 50px;
  }

  #regalo .logo-rotante {
    top: 10%;
    left: unset;
    overflow: hidden;
  }

  #regalo .logo-rotante img {
    width: 150%;
  }

  #pezzo {
    background-image: none;
  }

  #pezzo .container-fluid.pd-logo {
    background-color: var(--grigio-chiaro);
    padding: 0;
    background-image: url(../img/Ics.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }


  #pezzo .container-fluid.pd-logo h2 {
    padding-top: 50px;
    line-height: 1em;
  }

  #pezzo p {
    width: 100%;
    padding-bottom: 25px;
  }

  #pezzo .blur {
    top: 0px;
    right: 0;
    overflow-x: hidden;
  }

  #pezzo .blur img {
    width: 100%;
    height: 500px;
    position: relative;
    top: 0;
  }

  #contatti .int-contatti {
    align-items: center;
  }

  #contatti .int-contatti p {
    display: flex;
    align-items: center;
  }

  #contatti .int-contatti p span.linea {
    height: 2px;
    width: 25px;
    background: var(--need);
    display: inline-block;
    margin: 0 5px;
  }

  #contatti h2 {
    padding-bottom: 0;
    font-size: 12vw;
  }

  #contatti .box-iscriviti {
    padding: 35px;
  }

  #contatti .box-iscriviti h3 {
    padding-left: 0;
    padding-bottom: 50px;
    font-size: 12vw;
  }

  #contatti .box-iscriviti .col-testo {
    padding: 0;
  }

  #contatti .box-iscriviti .col-testo {
    width: 100%;
  }

  #contatti p.text-contatti {
    font-size: 5vw;
    font-weight: var(--font-regular);
    color: var(--body);
  }

  #contatti .box-iscriviti {
    background-size: contain;
  }

  #contatti .box-iscriviti .col-form {
    width: 100%;
    padding-top: 50px;
  }

  p.input-form {
    font-size: 8vw!important;
    border-bottom: solid 2px var(--need) !important;
    padding-bottom: 0px !important;
  }

  p.privacy {
    font-size: 3vw!important;
    line-height: 1em;
    margin-top: 25px;
  }




/* ------------------------------------------------ FOOTER ------------------------------------------------ */

footer {
  padding-bottom: 25px;
}

footer .container-fluid {
  display: block;
}

footer p {
  font-size: 3vw;
}


span.divisore {
  display: block;
  width: 100%;
  height: 2px;
  background: black;
  margin-top: 15px;
}

#testataProgetti {
  padding-top: 100px;
}

#testataProgetti .row {
  margin-left: 0;
  margin-right: 0;
}

#testataProgetti h1 {
  font-size: 14vw;
  padding-bottom: 15px;
}

#testataProgetti small {
  font-size: 5vw;
}

#testataProgetti .logo-rotante {
  width: 50vw;
  top: -351px;
  left: -125px;
}

#testataProgetti .cont-50.sm {
  width: 100%;
}

#testataProgetti .col-12.cont-blur {
  height: 600px;
}

#testataProgetti .slider-progetto {
  padding-left: 8%;
  padding-bottom: 0;
}

#testataProgetti .wrap-slide-progetti {
  height: 300px;
}

#testataProgetti .container-fluid.img-aff {
  display: block;
}

#testataProgetti .container-fluid.img-aff .cont-img-aff {
  width: 100%;
  height: auto;
  margin: 8% 0;
}

#testataProgetti .container-fluid.big {
  padding: 0 8%;
}

#regalo.regalo-interno {
  padding-top: 50px;
}




#archivioProgetti {
  padding: 0;
}

#archivioProgetti .box-archivio-progetti {
  width: 100%;
  padding-bottom: 50px;
}

#archivioProgetti p.tit-archivio {
  font-size: 8vw;
  padding-top: 10px;
}

span.divisore-archivio {
  margin: 0 0 10px;
  height: 2px;
}

#archivioProgetti p.tipologia-archivio {
  font-size: 4vw;
}




#testataTestimonianza .row {
  padding: 35px 0;
}

#testataTestimonianza h1 {
  font-size: 12vw;
  padding-bottom: 25px;
}

#testataTestimonianza p.piccolo {
  font-size: 4vw;
}

#testataTestimonianza span.divisore {
  width: 100%;
}

#quote .col-12.col-md-6.img img {
  top: 0;
}

#quote h2 {
  font-size: 10vw;
  border-left: solid 2px;
  padding-left: 15px;
  margin-bottom: 25px;
  padding-bottom: 0;
}

#quote .col-12.col-md-6.img {
  height: 400px;
  padding-top: 50px;
  padding-bottom: 50px;
}

#domande p {
  position: relative;
  z-index: 3;
}

#domande .col-12.testo-evidenza .testo {
  background: var(--verde);
  padding: 35px;
  border-radius: 50px;
  margin: 35px 0;
}

#testataProgetti.case {
  height: 650px;
}

#testataProgetti.case .col-12, #sezFissaCase .col-12 {
  padding: 0;
}

#testataProgetti.case .cont-50 {
  display: none;
}

#sezFissaCase {
  padding-bottom: 0;
}

#sezFissaCase .testo-fisso-case {
  width: 100%;
}

p.piccolo {
  font-size: 3.5vw;
}

#sezFissaCase .dati {
  margin-top: 50px;
}

#sezFissaCase .col-12.col-md-6.img {
  padding-top: 50px;
}

#testataContatti .col-12 {
  padding: 0;
}

#testataContatti h1 {
  font-size: 12vw;
}

#testataContatti .container-fluid.titolo .row {
  height: 600px;
  display: block;
}

#immContatti {
  width: 90%;
  margin-top: -55%;
}

#immContatti .cont-63 {
  width: 100%;
  height: 400px;
}

#infoArea {
  padding: 50px 0;
}

#infoArea h2 {
  font-size: 13vw;
}

#infoArea .col-12 {
  padding: 0;
}

#infoArea .box-area h3 {
  font-size: 5vw;
  padding-bottom: 5px;
}

#infoArea .box-area a {
  font-size: 5vw;
  line-height: 1.5em;
}

#infoArea .col-12.col-md-4 {
  margin-top: 50px;
  padding: 35px;
}

#infoArea .col-12.col-md-8 {
  padding-top: 0;
}

#infoArea .col-12 {
  padding: 0;
}

#infoArea .box-indirizzo h3 {
  font-size: 6vw;
}

#infoArea .social {
  padding-top: 100px;
}

#infoArea a.social {
  font-size: 6vw;
}

#infoArea .blur-contatti {
  display: none;
}

#questionario {
  padding: 35px;
}

#questionario .container-fluid {
  padding: 0;
}

#questionario h2 {
  font-size: 10vw;
}

#questionario .container-fluid.centrato {
  width: 100%;
}

#questionario h3 {
  padding-top: 0px;
  font-size: 7vw;
}

#questionario .freccia {
  width: 30%;
}

#questionario .cta-big {
  font-size: 8vw;
  line-height: 1em;
}








#news h1 {
  font-size: 13vw;
  color: black;
  font-weight: 600;
  line-height: 1em;
  padding-top: 25px;
  padding-bottom: 0;
}

#news .container-fluid .dati-news {
  display: block;
}

#news .container-fluid.img {
  margin: 25px 0;
  height: 400px;
}

#news .table-content {
  padding: 25px;
}

#news .table-content ul {
  font-size: 5vw;
  font-weight: 400;
}

#news .table-content li {
  line-height: 1em;
  padding-bottom: 15px;
}

#news .table-content p.contenuti {
  font-size: 8vw;
  padding-left: 15px;
  padding-bottom: 15px;
}







#introNfr {
  background-position-y: top;
  background-size: cover
}

#introNfr .pittogramma-intro img {
  width: 100%;
}

#introNfr .container-fluid.img img {
  width: 50vw;
  border-radius: 25px;
  float: right;
}

#introNfr h1 {
  font-size: 8.2vw;
}

#introNfr h3 {
  font-size: 6vw;
  padding: 0;
}

#introNfr h4 {
  font-size: 9vw;
}


#nfrOffre .col-12.col-md-6 {
  padding: 0;
}

#nfrOffre .col-12.col-md-6 img {
  margin-bottom: 25px;
}

#nfrOffre .logo-rotante img {
  width: 75vw;
}

#nfrOffre p {
  position: relative;
  z-index: 1;
}

.col-12 {
  padding: 0;
}

#nfrOffre h3 {
  padding: 50px 0;
  font-size: 9vw;
  white-space: normal;
}

#nfrTeamMktg {
  padding: 50px 0 0;
  -webkit-border-top-left-radius: 25px;
  -webkit-border-top-right-radius: 25px;
  -moz-border-radius-topleft: 25px;
  -moz-border-radius-topright: 25px;
}

#nostriServizi.nfr .container-fluid {
  padding: 0 8%;
}

#sliderHome.nfr h2 {
  padding: 50px 0;
}

#sliderHome.nfr h3 {
  font-size: 6vw;
  white-space: pre-line;
  padding-bottom: 50px;
}

.cta-nfr.giallo {
  width: 85%;
  padding: 25px 50px 35px;
  color: var(--need);
  background: var(--giallo);
}

.cta-nfr.giallo p.prima, .cta-nfr.giallo p.seconda  {
  font-size: 6.5vw;
  text-align: center;
  line-height: 1.2em;
}

.cta-nfr.giallo p.seconda::after {
  display: none;
}

#vision.nfr {
  padding: 50px 0 35px;
}

#vision.nfr h2 {
  text-align: left;
  line-height: 1em;
  font-size: 10vw;
  padding: 0;
  white-space: normal;
}

#vision.nfr h3 {
  padding: 25px 0;
  color: var(--bianco);
  font-weight: 600;
  font-size: 7vw;
}

#vision p {
  white-space: pre-line;
}

p.fonte {
  font-size: 3.5vw;
}

#strumentiNfr h2 {
  font-size: 10vw;
  white-space: normal;
  padding-top: 25px;
}

#strumentiNfr ul {
  padding-left: 0;
  font-size: 6vw;
  padding: 25px 0 25px 10%;
  line-height: 1em;
}

#comeNfr h2 {
  padding-left: 0;
}

#comeNfr img.logo-nfr {
  transform: translateX(0%);
  margin-left: 0%;
  margin-top: -3%;
  margin-bottom: 50px;
}

.cta-nfr.rosso {
  width: 85%;
  padding: 25px 50px 35px;
  color: var(--bianco);
  background: var(--rosso);
  border: solid 3px var(--rosso);
}

.cta-nfr.rosso p.prima, .cta-nfr.rosso p.seconda  {
  font-size: 6.5vw;
  text-align: center;
  line-height: 1.2em;
}

.cta-nfr.rosso p.seconda::after {
  display: none;
}

#comeNfr .container-fluid.cont {
  padding: 0;
}

#comeNfr p.prima, #comeNfr p.seconda {
  padding-bottom: 0;
}

#comeNfr .cont {
  padding: 0;
}

#comeNfr {
  padding-bottom: 50px;
}

#approccioNfr h4 {
  font-size: 8vw;
}

#approccioNfr li {
  font-size: 5vw;
  line-height: 1.5em;
}

#approccioNfr {
  padding: 50px 0 50px 0;
}

#vantaggiNfr {
  padding-left: 0;
  background-position-y: center;
}

#vantaggiNfr h2 {
  padding: 50px 0;
  font-size: 12vw;
  line-height: 1em;
}

#vantaggiNfr p {
  white-space: pre-line;
}

#vantaggiNfr h3 {
  font-size: 8vw;
  padding-bottom: 0;
}

#vantaggiNfr ul {
  font-size: 5vw;
  line-height: 1.2em;
}

#vantaggiNfr h4 {
  font-size: 5.5vw;
  padding: 25px 0;
}

#faqNfr {
  padding: 50px 0;
  background-size: 75%;
}

#faqNfr p.titolo {
  font-size: 5.5vw;
  padding: 0 15px;
}

#introNfr {
  padding-left: 0;
}

#percheNfrLanding {
  padding-bottom: 50px;
  margin-bottom: 50px;
}

#percheNfrLanding h2 {
  padding-bottom: 0;
}

#percheNfrLanding .contenuti h3 {
  font-size: 8vw;
  white-space: normal;
  padding-bottom: 5px;
}

#percheNfrLanding .contenuti p {
  padding-bottom: 50px;
  color: var(--grigio-medio);
}

#percheNfrLanding img {
  margin-bottom: 25px;
}

#percheNfrLanding .contenuti {
  padding-bottom: 0;
}

#comeNfr.landing {
  background: var(--giallo);
  margin-top: 50px;
  border-radius: 50px;
}

#comeNfr img.img-fluid.abs {
  top: 50%;
}

#comeNfr h2 {
  padding-bottom: 0;
}

#contatti.nfr .box-iscriviti h3 {
  font-size: 7.4vw;
}

#contatti.nfr .col {
  flex-basis: unset;
}

.form-control {
  font-size: 5em!important;
  padding-bottom: 0!important;
}

textarea {
  font-size: 5em!important;
  line-height: 1em;
  padding-bottom: 5px !important;
}

a.invio-form-nfr {
  font-size: 10vw;
}

video#videoNfr {
  border-radius: 25px;
}

#comeNfr.landing .container-fluid.contenuti {
  padding-top: 50px;
}

#comeNfr.landing p {
  color: var(--nero);
}

#contatti.nfr .col-md-12 {
  padding: 0;
}

#contatti.nfr .box-iscriviti {
  padding: 25px;
}

#contatti.nfr h3 {
  white-space: normal;
}

#contatti.nfr label.privacy {
  font-size: 5vw;
  padding-bottom: 15px;
}

button.invio-form-nfr {
  color: var(--rosso);
  font-size: 12vw;
  font-weight: var(--font-medium);
  position: relative;
  width: fit-content;
  text-decoration: none;
  padding-right: 25px;
  padding-top: 10px;
  transition: all .3s cubic-bezier(.215, .61, .355, 1);
  float: left !important;
  background: transparent!important;
}

.er-cont {
  position: absolute;
  top: 0;
}

.errore {
  font-size: 5vw;
  line-height: 1.2em;
  color: white;
  padding: 25px;
  background: var(--rosso);
  position: absolute;
  top: 0;
  z-index: 999;
}

#typ {
  padding: 100px 0 50px;
}

#typ h1 {
  font-size: 25vw;
}

#typ h2 {
  font-size: 10vw;
  padding-bottom: 50px;
}

#typ h3 {
  font-size: 5.7vw;
  color: var(--bianco);
  line-height: 1.2em;
  font-weight: 600;
  padding-bottom: 50px;
  white-space: normal;
}

#typ a {
  font-size: 5.5vw;
}

#testimonianze .col-12 {
  padding: 0 5%;
}

#successoClientiSm h4 {
  font-size: 8vw;
  font-weight: 600;
  color: var(--nero);
}

#testimonianze, #testimonianzeInt {
  margin-top: 50px;
}

#comeNfr .cont h3 {
  font-size: 6vw;
  padding: 10px 20px;
  line-height: 1em;
}










  
}