@charset "UTF-8";
/*@font-face {
  font-family: 'Karla' !important;
  font-style: italic;
  font-weight: 400;
  src: local("Karla Italic"), local("Karla-Italic"), url(../assets/fonts/Karla-Italic.woff2) format("woff2"), url(../assets/fonts/Karla-Italic.woff) format("woff"), url(../assets/fonts/Karla-Italic.ttf) format("truetype"); }

@font-face {
  font-family: 'Karla' !important;
  font-style: italic;
  font-weight: 700;
  src: local("Karla Bold Italic"), local("Karla-BoldItalic"), url(../assets/fonts/Karla-BoldItalic.woff2) format("woff2"), url(../assets/fonts/Karla-BoldItalic.woff) format("woff"), url(../assets/fonts/Karla-BoldItalic.ttf) format("truetype"); }

@font-face {
  font-family: 'Karla' !important;
  font-style: normal;
  font-weight: 400;
  src: local("Karla"), local("Karla-Regular"), url(../assets/fonts/Karla-Regular.woff2) format("woff2"), url(../assets/fonts/Karla-Regular.woff) format("woff"), url(../assets/fonts/Karla-Regular.ttf) format("truetype"); }

@font-face {
  font-family: 'Karla' !important;
  font-style: normal;
  font-weight: 700;
  src: local("Karla Bold"), local("Karla-Bold"), url(../assets/fonts/Karla-Bold.woff2) format("woff2"), url(../assets/fonts/Karla-Bold.woff) format("woff"), url(../assets/fonts/Karla-Bold.ttf) format("truetype"); }
*/

/* ------- INIZIO MODIFICHE FONT Karla: cambiare url folder e caricare i font 
da https://google-webfonts-helper.herokuapp.com/api/fonts/karla?download=zip&subsets=latin&variants=700,regular,italic,700italic*/

/* karla-regular - latin */
@font-face {
  font-family: 'Karla';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/karla-v13-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Karla'), local('Karla-Regular'),
       url('../fonts/karla-v13-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/karla-v13-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/karla-v13-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/karla-v13-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/karla-v13-latin-regular.svg#Karla') format('svg'); /* Legacy iOS */
}
/* karla-italic - latin */
@font-face {
  font-family: 'Karla';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/karla-v13-latin-italic.eot'); /* IE9 Compat Modes */
  src: local('Karla Italic'), local('Karla-Italic'),
       url('../fonts/karla-v13-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/karla-v13-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/karla-v13-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/karla-v13-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/karla-v13-latin-italic.svg#Karla') format('svg'); /* Legacy iOS */
}
/* karla-700 - latin */
@font-face {
  font-family: 'Karla';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/karla-v13-latin-700.eot'); /* IE9 Compat Modes */
  src: local('Karla Bold'), local('Karla-Bold'),
       url('../fonts/karla-v13-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/karla-v13-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/karla-v13-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/karla-v13-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/karla-v13-latin-700.svg#Karla') format('svg'); /* Legacy iOS */
}
/* karla-700italic - latin */
@font-face {
  font-family: 'Karla';
  font-style: italic;
  font-weight: 700;
  src: url('../fonts/karla-v13-latin-700italic.eot'); /* IE9 Compat Modes */
  src: local('Karla Bold Italic'), local('Karla-BoldItalic'),
       url('../fonts/karla-v13-latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/karla-v13-latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/karla-v13-latin-700italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/karla-v13-latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/karla-v13-latin-700italic.svg#Karla') format('svg'); /* Legacy iOS */
}

/*--------Fine modifiche inserimento Font Karla*/

@font-face {
  font-family: "Montserrat-Medium";
  font-style: normal;
  font-weight: 400;
  src: local("Montserrat Medium"), local("Montserrat-Medium"), url(../assets/fonts/Montserrat-Medium.woff2) format("woff2"), url(../assets/fonts/Montserrat-Medium.woff) format("woff"), url(../assets/fonts/Montserrat-Medium.ttf) format("truetype"); }

body * {
  -webkit-overflow-scrolling: touch; }

/* html {
  Quando si aprono i modali il body non deve mai scrollare.
       Verificare in particolare su iPad e iPhone...
     } */
  html.hasModal {
    overflow-y: hidden !important;
    height: 100%;
    max-height: 100%;
    width: 100%; }

body {
  font-family: 'Karla', sans-serif !important;
  -webkit-font-smoothing: antialiased; }

.hasModal body:after {
  display: block;
  position: fixed;
  content: ' ';
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10; }

.btn-trasparent {
  background-color: transparent;
  border: 0; }

*:focus,
a:focus,
a:active,
.btn:focus,
.btn:active,
.btn:active:focus,
input:focus ~ .radiomark, input:focus ~ .checkmark {
  outline: none;
  box-shadow: none; }

/* ----- BREAKPOINT ------*/
/* 1201 - max 1920 */
/* 1025- 1200 */
/* 993 - 1024 */
/* 577 - 992  */
/* 320 - 576  */
/* ----- COLORS ------*/
/* L'array di colori serve per le classi generate */
/* ------ GRADIENTI ----------*/
/* deve esistere un file card-dotted-{nome}.png per ogni riga */


/* ---- CUSTOM CSS ----*/

.mt-1 {margin-top: 0.25rem}
.mt-2 {margin-top: 0.50rem}
.mt-3 {margin-top: 1rem}
.mt-4 {margin-top: 1.25rem}
.mt-5 {margin-top: 1.50rem}

.mb-1 {margin-bottom: 0.25rem}
.mb-2 {margin-bottom: 0.50rem}
.mb-3 {margin-bottom: 1rem}
.mb-4 {margin-bottom: 1.25rem}
.mb-5 {margin-bottom: 1.50rem}

.ml-1 {margin-left: 0.25rem}
.ml-2 {margin-left: 0.50rem}
.ml-3 {margin-left: 1rem}
.ml-4 {margin-left: 1.25rem}
.ml-5 {margin-left: 1.50rem}

.mr-1 {margin-right: 0.25rem}
.mr-2 {margin-right: 0.50rem}
.mr-3 {margin-right: 1rem}
.mr-4 {margin-right: 1.25rem}
.mr-5 {margin-right: 1.50rem}

.align-text-vertical {
  margin-top: 25%
}

input .input-alert-error {
  border: 3px solid #e84e0f;
}

small .alert-danger-hidden {
  display: none;
}

.alert-danger {
  color: #E84E0F;
  border: solid 1px #fef6f3;
  display: block;
  margin-top: 2px;
  /* padding-top: 5px; */
  /* padding-bottom: 5px; */
  padding-left: 10px;
  border-radius: 5px;
  background-color: #fef6f3;
  position: absolute;
  /*top: 83px; */
  left: 14px;
  right: 0;
  margin-right: 15px;
}

.step-section {
  margin-top: 30px;
}

.funnel .btn-outline {
  font-size: 14px;
  font-weight: bold;
  min-width: 197px;
  height: 55px;
  margin-top: 28px;
  padding: 16px 30px;
/*   background-color: #FCFCFC  !important;
  border: 2px solid #e84e0f; */
  color: #E84E0F !important; }

.btn-outline:hover {
  border-radius: 25px 25px 25px 25px; 
  text-decoration: none
}

.funnel .btn-confirmation {
  font-size: 14px;
  font-weight: bold;
  min-width: 197px;
  height: 55px;
  margin-top: 28px;
  padding: 16px 30px;
  background-color: #e84e0f  !important;
  color: #FCFCFC !important; }

.btn-confirmation:hover {
  border-radius: 25px 25px 25px 25px; 
  text-decoration: none
}

.go-back {
  border-bottom: 2px solid #e84e0f;
  font-size: 14px;
  font-weight: bold
}

.go-back:hover {
  text-decoration: none;
  border-bottom: 1px solid #e84e0f;
  font-size: 14px;
  font-weight: bold
}

.privacy-link {
  border-bottom: 2px solid #e84e0f;
  font-size: 16px;
  font-weight: bold
}

.privacy-link:hover {
  text-decoration: none;
  border-bottom: 1px solid #e84e0f;
  font-size: 16px;
  font-weight: bold
}

span.step-number {
  color: #8E8E8E;
  margin-right: 10px;
  font-size: 18px
}

.funnel .step-title {
  color: #e84e0f;
}

.funnel-top-margin {
  margin-top: 100px
}

.funnel-top-margin-2 {
  margin-top: 40px
}

.step-2-info-text {
  color: #333;
  line-height: 25px;
  margin: 10px 0px 50px 0px;
}

.step-4-info-text {
  color: #333;
  line-height: 25px;
  margin: 10px 0px 10px 0px;
}

.funnel .input-action {
  color: #333;
  text-decoration: underline;
}

.confirm-section {
  margin-top: 100px;
  padding-bottom: 100px;
}

/*CART SIDEBAR*/
.item.clearfix.rate-title-section {
  border: 1px #eeeeee solid;  
  background-color: #fcfcfc;
}

.gift-container {
  background-color: #fcfcfc; 
  margin: 12px; 
  border: 1px solid #F4F4F4;
}

.gift-section {
  display: flex; 
  flex-direction: column;
}

.gift-section img {
  margin-bottom: 10px
}

.gift-section--text {
  font-weight: 300;
}


.summary_cart_sub {
  position: relative;
  z-index: 10; }
  .summary_cart_sub .content_wrap {
    position: relative; }
  .summary_cart_sub .cart_sub {
    width: 374px;
    position: absolute;
    top: 650px;
    right: 0;
    /* box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.12); */
    background: #fff;
    border-radius: 12px;
    overflow: hidden; 
  }

  .summary_cart_sub .goahead {
    margin-top: -20px;
  }

  .btn-helper {
    display: block;
    text-align: center;
    font-size: 14px;
    text-decoration: none;
    font-weight: bold;
    width: 100%;
    height: 55px;
    margin-top: 28px;
    /* padding: 16px 30px; */
    background-color: #FCFCFC  !important;
    border: 2px solid #e84e0f;
    color: #333333 !important; 
    border-radius: 25px  25px 0 25px;
    -webkit-transition: all 0.3s;
    transition: all 0.3s; 
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .btn-helper-2 {
    display: block;
    text-align: center;
    font-size: 14px;
    text-decoration: none;
    font-weight: bold;
    width: 100%;
    height: 55px;
    margin-top: 28px;
    /* padding: 16px 30px; */
    color: #fff !important; 
    background-color: #e84e0f  !important;
    border: 2px solid #e84e0f;
    color: #333333 !important; 
    border-radius: 25px  25px 0 25px;
    -webkit-transition: all 0.3s;
    transition: all 0.3s; 
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .btn-helper:hover {
    text-decoration: none;
    border-radius: 25px  25px 25px 25px;
  }

  .btn-helper-2:hover {
    text-decoration: none;
    border-radius: 25px  25px 25px 25px;
  }
  
  p.consulta-documentazione {
    text-align: center;
  }

  p.consulta-documentazione a {
    color: #e84e0f;
    font-weight: bold;
  }

  /*POPOVER INPUT*/
  .hide-popover {
    display: none;
  }
  .show-popover {
    display: block;
  }

  /*STEP2 - CUSTOM CHECK BUTTON*/
  .funnel .form-check-input-quad {
    border-radius: 4px!important;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%; }

    .funnel .form-check-input-quad ~ .radiomark,
    .funnel .form-check-input-quad ~ .checkmark{
      border: 2px #373737 solid;
      border-radius: 4px;
    }
    .funnel .form-check-input-quad:checked ~ .radiomark,
    .funnel .form-check-input-quad:checked ~ .checkmark {
      border-radius: 4px!important;
      background-color: #ffffff;
      border: 2px solid #e84e0f;
      box-shadow: 0px 2px 5px 0px #b4b4b4;
      background-image: url(../assets/images/check-mark-quad.svg);
      background-position: center center;
      background-repeat: no-repeat;
      background-size: 60%; }
      .funnel .form-check-input-quad:checked ~ .radiomark.white,
      .funnel .form-check-input-quad:checked ~ .checkmark.white {
        background-color: transparent;
        border-color: #ffffff;
        box-shadow: none; }
      .funnel .form-check-input-quad:checked ~ .radiomark.fill-white,
      .funnel .form-check-input-quad:checked ~ .checkmark.fill-white {
        background-color: white;
        background-image: url(../assets/funnel/images/check-vermillion.svg); }
  .funnel .icon-check {
    background-image: url(../assets/funnel/images/check.svg);
    display: inline-block;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    width: 22px;
    height: 22px;
    margin-left: 10px;
    border-radius: 0%;
    cursor: pointer; }
    .funnel .icon-check.green {
      background-color: #6fcc75; }
    .funnel .icon-check.white {
      background-color: transparent;
      background-image: url(../assets/funnel/images/check-positive.svg);
      box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3); }
  .funnel .icon-luce {
    background-image: url(../assets/funnel/images/check.svg);
    display: inline-block;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    width: 22px;
    height: 22px;
    margin-left: 10px;
    border-radius: 0%;
    cursor: pointer; }
    .funnel .icon-luce.green {
      background-color: #6fcc75; }
  .funnel .radiomark,
  .funnel .checkmark {
    border: 2px #373737 solid;
    width: 30px;
    height: 30px;
    border-radius: 0%;
    display: inline-block;
    position: relative;
    top: 8px;
    margin-right: 8px;
    transition: all .1s; }
    .funnel .radiomark.white,
    .funnel .checkmark.white {
      background-color: transparent;
      border-color: #ffffff;
      box-shadow: none; }

.radio-sub-text {
  margin-left: 42px;
  color: #555;
  display: inline-block;
}      

/*Step 5 Accordion*/

.panel-default {
  border: 0px!important;
}

.panel-heading {
  position: relative!important;
  background-color: #fff!important;
}

.panel-heading .panel-title .title-class {
  margin-bottom: 0px;
}

.panel-body .title-class {
  margin-top: 10px;
}

.btn-prosegui {
  display: block;
  text-align: center;
  font-size: 14px;
  text-decoration: none;
  font-weight: bold;
  width: 95%;
  height: 49px;
  margin-top: -13px;
  /* padding: 16px 30px; */
  background-color: #FCFCFC !important;
  border: 2px solid #e84e0f;
  color: #e84e0f !important;
  border-radius: 25px 25px 0 25px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  display: flex;
  align-items: center;
  justify-content: center;
}

.check-consensi {
  padding: 0 10px 0 5px;
  position: relative;
  top: -8px;
  font-family: 'Karla';
  font-size: 14px !important;
  font-style: normal;
  font-weight: 400 !important;
  line-height: 19px;
  letter-spacing: 0px !important;
  text-align: left;
  color: #373737;
}

.info-consensi {
  font-family: 'Karla';
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 19px;
  letter-spacing: 0px;
  text-align: left;
  color: #373737;
}

.title-class {
  font-family: 'Karla';
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 19px;
  letter-spacing: 1px;
  text-align: left;
  color: #373737;
}

.title-p {
  font-family: 'Karla';
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 19px;
  letter-spacing: 0px;
  text-align: left;
  color: #8298AB;
}

.value-p {
  font-family: 'Karla';
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 19px;
  letter-spacing: 0px;
  margin-bottom: 20px; /* parametro preso da .lead */
  text-align: left;
  color: #373737;
}

#riepilogo {
  padding-left: 0
}

#riepilogo .panel-heading {
  border-bottom: none !important;
  border-top: solid 2px #ddd !important
}

#riepilogo .panel-body {
  border: none
}

#riepilogo .panel-heading, #riepilogo .panel-body {
  padding-left: 0
}

#riepilogo .panel {
  -webkit-box-shadow: 0;
  box-shadow: none
}

#riepilogo .edit-btn {
  padding-right: 0;
}

.panel-heading h2 {
  display: inline-block;
}

.panel-heading h2.plus-icon {
  position: absolute!important;
  top: -2px;
  right: 10px;
  font-size: 40px!important;
}

.accordion-edit-button {
  display: inline;
  position: absolute!important;
  top: 0px;
  right: 0px
}

@keyframes example {
  0%   { left:200px; top:0px; opacity: 0}
  
  10% { left:0px; top:0px; opacity: 1}
}

/* The element to apply the animation to */
.edit-btn  {
  position: relative;
  animation-name: example;
  animation-duration: 4s;
}


/*Model Custom Styles*/
.modal-header-gradient-bg {
  background-image: linear-gradient(254deg, #fdc300, #e84e0f);
}

.modal-header {
  padding: 5px !important;
}

.close {
  position: absolute;
  top: 10px;
  right: 15px;
}

/* ---- ---- ---- ---- */

.accordion.panel-group .panel {
  border-radius: 10px; }

.accordion.panel-group .panel-default {
  background: transparent;
  border: 0; }
  .accordion.panel-group .panel-default > .panel-heading + .panel-collapse > .panel-body {
    border: 0; }

.accordion.panel-group .panel-heading {
  cursor: pointer;
  border-radius: 10px;
  border: solid 2px #ffffff;
  padding: 27px 40px 25px;
  transition: all .8s; }
  .accordion.panel-group .panel-heading h4 {
    transition: all .8s;
    padding-right: 14px;
    font-size: 24px;
    letter-spacing: -1.3px;
    font-weight: bold;
    position: relative; }
  .accordion.panel-group .panel-heading h5 {
    font-size: 18px; }
  .accordion.panel-group .panel-heading .open-icon, .accordion.panel-group .panel-heading .close-icon {
    position: absolute;
    right: -.8em;
    top: -.4em;
    display: block;
    width: 50px; }
    .accordion.panel-group .panel-heading .open-icon img, .accordion.panel-group .panel-heading .close-icon img {
      width: 100%;
      height: auto; }
  .accordion.panel-group .panel-heading .close-icon {
    opacity: 0; }
  .accordion.panel-group .panel-heading a:hover, .accordion.panel-group .panel-heading a:focus {
    text-decoration: none; }

.accordion.panel-group .panel-body {
  visibility: hidden;
  font-size: 18px;
  line-height: 1.39;
  letter-spacing: -1px;
  padding: 0 40px; }
  .accordion.panel-group .panel-body h5 {
    font-size: 18px;
    font-weight: bold;
    margin: 0;
    line-height: 1.39; }
  .accordion.panel-group .panel-body ul {
    margin: 22px 51px 39px 26px;
    padding: 0;
    list-style-type: circle; }

.accordion.panel-group .panel-collapse {
  display: none; }

.accordion.panel-group .panel-heading .open-icon {
  transition: transform .5s;
  transform: rotate(-180deg); }

.accordion.panel-group .panel-heading .close-icon {
  transition: transform .5s;
  transform: rotate(0deg); }

.accordion.panel-group .open .panel-body {
  visibility: visible; }

.accordion.panel-group .open .panel-heading .open-icon {
  opacity: 0;
  transform: rotate(0deg); }

.accordion.panel-group .open .panel-heading .close-icon {
  transform: rotate(180deg);
  opacity: 1;
  height: auto; }

.footer-accordion.accordion.panel-group .panel-heading {
  border: none;
  color: #ffffff;
  background: transparent;
  padding: 20px 20px 18px 0; }
  .footer-accordion.accordion.panel-group .panel-heading .open-icon, .footer-accordion.accordion.panel-group .panel-heading .close-icon {
    width: 40px; }

.footer-accordion.accordion.panel-group .panel-body {
  padding: 0 0px; }
  .footer-accordion.accordion.panel-group .panel-body a {
    color: #ffffff; }
  .footer-accordion.accordion.panel-group .panel-body a:hover {
    background: transparent; }
  .footer-accordion.accordion.panel-group .panel-body a:focus {
    background: transparent; }

.dialog_offer {
  background: #ffffff; }
  .dialog_offer dd {
    margin-left: 0;
    margin: 8px 0 20px;
    font-size: 16px;
    letter-spacing: -0.9px; }
  .dialog_offer .pattern::before {
    background: url(../assets/images/card-dotted-vermillion.png) repeat center center;
    width: 100%;
    height: 100%;
    opacity: .4;
    z-index: -1;
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    display: block; }
  .dialog_offer .opzionali .pattern::before {
    opacity: 0.3; }
  .dialog_offer .hero-content {
    padding: 20px 33px; }
    .dialog_offer .hero-content h4 {
      font-size: 64px;
      font-weight: bold;
      font-style: normal;
      font-stretch: normal;
      line-height: 0.94;
      letter-spacing: -4px;
      color: #ffffff; }
    .dialog_offer .hero-content p {
      font-size: 20px;
      font-weight: normal;
      font-style: normal;
      font-stretch: normal;
      line-height: normal;
      letter-spacing: -1.1px;
      margin-bottom: 0; }
    .dialog_offer .hero-content var {
      font-size: 40px;
      font-weight: bold;
      font-style: normal;
      font-stretch: normal;
      line-height: normal;
      letter-spacing: normal; }
    .dialog_offer .hero-content .description {
      font-size: 24px;
      font-style: normal;
      font-stretch: normal;
      line-height: normal;
      letter-spacing: -1.5px;
      color: #ffffff; }
    .dialog_offer .hero-content .separator {
      opacity: 0.3;
      height: 1px;
      line-height: 0;
      border-bottom: solid 1px #ffffff;
      margin: 30px 0 10px; }
    .dialog_offer .hero-content .price-detail {
      padding-top: 20px; }
    .dialog_offer .hero-content .code {
      font-size: 30px;
      display: inline-block;
      margin-right: 8px;
      letter-spacing: normal;
      min-width: 52px; }
  .dialog_offer.theme_vermillion {
    background-color: #eeeeee; }
    .dialog_offer.theme_vermillion .pattern::before {
      background: url(../assets/images/card-dotted-vermillion.png) repeat center center; }
    .dialog_offer.theme_vermillion .hero-content {
      background: linear-gradient(222deg, #fdc300, #e84e0f);
      color: #ffffff;
      position: relative; }
    .dialog_offer.theme_vermillion .opzionali {
      background: linear-gradient(222deg, #fdc300, #e84e0f);
      color: #ffffff; }
  .dialog_offer.theme_peacock-blue {
    background-color: #eeeeee; }
    .dialog_offer.theme_peacock-blue .pattern::before {
      background: url(../assets/images/card-dotted-peacock-blue.png) repeat center center; }
    .dialog_offer.theme_peacock-blue .hero-content {
      background: linear-gradient(218deg, #008bff, #005ca9);
      color: #ffffff;
      position: relative; }
    .dialog_offer.theme_peacock-blue .opzionali {
      background-color: #005ca9;
      background-image: linear-gradient(50deg, #005ca9, #008bff);
      color: #ffffff; }
  .dialog_offer.theme_violet {
    background-color: #eeeeee; }
    .dialog_offer.theme_violet .pattern::before {
      background: url(../assets/images/card-dotted-violet.png) repeat center center; }
    .dialog_offer.theme_violet .hero-content {
      background: linear-gradient(218deg, #fdc300, #b400c8);
      color: #ffffff;
      position: relative; }
    .dialog_offer.theme_violet .opzionali {
      background-color: #b400c8;
      background-image: linear-gradient(254deg, #fdc300, #b400c8);
      color: #ffffff; }

.dialog-backdrop.active {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 10000; }

.dialog-full-height {
  min-height: 100vh;
  max-height: 100vh; }
  .dialog-full-height::-webkit-scrollbar-thumb, .dialog-full-height::-webkit-scrollbar-track-piece {
    background-color: transparent; }
    .dialog-full-height::-webkit-scrollbar-thumb:hover, .dialog-full-height::-webkit-scrollbar-track-piece:hover {
      background-color: transparent;
      border-radius: 10px;
      -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); }
  .dialog-full-height::-webkit-scrollbar-track, .dialog-full-height::-webkit-scrollbar-thumb:vertical {
    background-color: transparent; }

.dialog_offer {
  width: 450px;
  /* box-shadow: 0px 0px 71px rgba(0,0,0,.7); */
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.1);
  transition: opacity .5s, transform .5s;
  transform: translateX(100%);
  /* generali sotto $bp-s (576) */ }
  .dialog_offer.animate {
    box-shadow: 1px 0px 0px 10000px rgba(0, 0, 0, 0.6);
    transform: translateX(0%); }
  .dialog_offer .close-button {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    margin: 10px 10px 0 0;
    z-index: 50; }
    .dialog_offer .close-button img {
      width: 50px;
      height: 50px; }
  .dialog_offer .note {
    font-size: 13px;
    font-weight: normal;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.54;
    letter-spacing: normal;
    color: #8e8e8e;
    padding-bottom: 10px; }
  @media only screen and (max-width: 576px) {
    .dialog_offer {
      width: 100vw;
      box-shadow: none; 
    }
  }

.dialog {
  position: relative;
  z-index: 10000;
  /*

    input[type='checkbox'],
    input[type='radio']{
        opacity: 0;
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        width: 100%;
        height: 100%;
    }

    .form-check-label {
        position: relative;
        padding-left: 40px;

        .checkmark,
        .radiomark {
            width: 25px;
            height: 25px;
            border: 2px solid $white-two;
            background-color: transparent;
            border-radius: 50%;
            position: absolute;
            top: 0;
            left: 0;
            background-color: transparent;
            border-radius: 50%;
        }

        input:checked ~ .radiomark,
        input:checked ~ .checkmark {
            background-image: url(../assets/funnel/images/check-white.svg);
            background-size: 120%;
            background-position: center center;
        }
    }
*/ }
  .dialog .accordion.panel-group .open .collapse {
    padding-bottom: 35px; }
  .dialog .slideshow {
    margin-top: 30px;
    padding: 0 30px;
    min-height: 223px; }
    .dialog .slideshow .swiper-container {
      padding: 0;
      position: relative; }
      .dialog .slideshow .swiper-container .swiper-wrapper {
        display: flex;
        align-items: center; }
      .dialog .slideshow .swiper-container .swiper-slide {
        text-align: center; }
        .dialog .slideshow .swiper-container .swiper-slide img {
          transition: all 300ms linear;
          max-width: 150px;
          transform: rotate(0deg) scale(0.8, 0.8);
          opacity: 0; }
        .dialog .slideshow .swiper-container .swiper-slide.swiper-slide-visible img {
          transform: rotate(0deg) scale(1, 1);
          opacity: 1; }
      .dialog .slideshow .swiper-container .swiper-button-next,
      .dialog .slideshow .swiper-container .swiper-button-prev {
        background-image: url(../assets/funnel/images/chevron-up.svg);
        background-repeat: no-repeat;
        box-shadow: none;
        background-color: transparent;
        background-size: contain;
        z-index: 100; }
      .dialog .slideshow .swiper-container .swiper-button-prev {
        left: 0;
        transform: rotate(-90deg); }
        .dialog .slideshow .swiper-container .swiper-button-prev:hover {
          transform: rotate(-90deg) scale(1.1); }
      .dialog .slideshow .swiper-container .swiper-button-next {
        right: 0;
        transform: rotate(90deg); }
        .dialog .slideshow .swiper-container .swiper-button-next:hover {
          transform: rotate(90deg) scale(1.1); }
  .dialog.theme_white .hero-content {
    padding: 20px 33px; }
    .dialog.theme_white .hero-content h4 {
      font-size: 32px;
      font-weight: bold;
      line-height: 1.2;
      margin: 0;
      letter-spacing: -1.8px;
      color: #373737; }
    .dialog.theme_white .hero-content p {
      font-size: 16px;
      font-weight: normal;
      font-style: normal;
      font-stretch: normal;
      line-height: normal;
      letter-spacing: -1px; }
    .dialog.theme_white .hero-content .description {
      font-size: 14px;
      letter-spacing: -1px;
      color: #8e8e8e; }
    .dialog.theme_white .hero-content .price-details .new-price {
      font-size: 45px;
      font-weight: bold;
      color: #e84e0f; }
    .dialog.theme_white .hero-content .price-details .old-price {
      font-size: 24px;
      color: #e84e0f;
      text-decoration: line-through;
      margin-left: 20px; }
    .dialog.theme_white .hero-content .separator {
      opacity: 0.3;
      height: 1px;
      line-height: 0;
      border-bottom: solid 1px #ffffff;
      margin: 35px 0; }
  .dialog .divider {
    height: 1px;
    background-color: #d0d0d0;
    margin: 0 30px;
    opacity: 0.3;
    width: auto; }
  .dialog .extra-info {
    padding: 33px;
    border-bottom: 1px solid rgba(200, 200, 200, 0.3); }
    .dialog .extra-info h4 {
      font-size: 24px;
      font-weight: bold;
      line-height: 1.17;
      letter-spacing: -1px; }
    .dialog .extra-info ul {
      list-style-position: outside;
      list-style-type: circle;
      padding: 20px; }
      .dialog .extra-info ul li {
        font-size: 18px;
        line-height: 1.39;
        letter-spacing: -1px; }
  .dialog .scrollable-container {
    overflow-y: scroll;
    max-height: 100vh; }
  .dialog .content-accordion::-webkit-scrollbar-thumb, .dialog .content-accordion::-webkit-scrollbar-track-piece {
    background-color: transparent; }
    .dialog .content-accordion::-webkit-scrollbar-thumb:hover, .dialog .content-accordion::-webkit-scrollbar-track-piece:hover {
      background-color: transparent;
      border-radius: 10px;
      -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); }
  .dialog .content-accordion::-webkit-scrollbar-track, .dialog .content-accordion::-webkit-scrollbar-thumb:vertical {
    background-color: transparent; }
  .dialog .accordion {
    background: #ffffff; }
    .dialog .accordion .panel-default {
      box-shadow: none;
      border-radius: 0;
      border-bottom: 1px solid rgba(200, 200, 200, 0.3); }
      .dialog .accordion .panel-default:last-child {
        border: 0; }
      .dialog .accordion .panel-default > .panel-heading {
        background: #ffffff; }
  .dialog .offerta {
    padding: 20px 33px 150px 33px; }
    .dialog .offerta h5 {
      font-size: 16px;
      font-weight: bold;
      font-style: normal;
      font-stretch: normal;
      line-height: normal;
      letter-spacing: -0.7px; }
    .dialog .offerta p {
      font-size: 13px;
      font-weight: normal;
      font-style: normal;
      font-stretch: normal;
      line-height: 1.54;
      letter-spacing: normal;
      color: #8e8e8e;
      margin-top: 18px; }
    .dialog .offerta a {
      font-size: 16px;
      font-weight: normal;
      font-style: normal;
      font-stretch: normal;
      line-height: normal;
      letter-spacing: -0.9px;
      color: #373737; }
  .dialog .pattern::before {
    background: url(../assets/images/card-dotted-vermillion.png) repeat center center;
    display: inline-block;
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1; }
  .dialog .spacer {
    margin: 0;
    height: 80px; }
  .dialog .opzionali {
    font-size: 18px;
    font-weight: bold;
    color: #ffffff;
    position: absolute;
    z-index: 100;
    bottom: 0;
    width: 100%;
    background-image: linear-gradient(254deg, #fdc300, #e84e0f); }
  .dialog .opzionali-box {
    padding: 20px 30px 15px; }
    .dialog .opzionali-box ~ .opzionali-box {
      border-top: 2px white solid; }
  .dialog .brick-box {
    width: 50%;
    float: left;
    min-height: 130px;
    margin-top: 20px;
    font-size: 18px;
    display: block;
    padding: 0 15px; }
    .dialog .brick-box .box-img {
      width: 100%;
      display: block;
      float: none; }
      .dialog .brick-box .box-img img {
        width: 75px;
        height: 75px;
        margin: 0 auto;
        display: block; }
    .dialog .brick-box .box-desc {
      font-size: 18px;
      width: 100%;
      float: none;
      display: block;
      text-align: center; }
    @media only screen and (max-width: 576px) {
      .dialog .brick-box {
        min-height: 160px; } }
    @media only screen and (min-width: 992px) {
      .dialog .brick-box {
        min-height: 210px; } }

/* I file prefissati da _ non vengono sempre inclusi da un main come questo e mai direttamente */
/* Fonts */
@font-face {
  font-family: 'Karla' !important;
  font-style: italic;
  font-weight: 400;
  src: local("Karla Italic"), local("Karla-Italic"), url(../assets/fonts/Karla-Italic.woff2) format("woff2"), url(../assets/fonts/Karla-Italic.woff) format("woff"), url(../assets/fonts/Karla-Italic.ttf) format("truetype"); }

@font-face {
  font-family: 'Karla' !important;
  font-style: italic;
  font-weight: 700;
  src: local("Karla Bold Italic"), local("Karla-BoldItalic"), url(../assets/fonts/Karla-BoldItalic.woff2) format("woff2"), url(../assets/fonts/Karla-BoldItalic.woff) format("woff"), url(../assets/fonts/Karla-BoldItalic.ttf) format("truetype"); }

@font-face {
  font-family: 'Karla' !important;
  font-style: normal;
  font-weight: 400;
  src: local("Karla"), local("Karla-Regular"), url(../assets/fonts/Karla-Regular.woff2) format("woff2"), url(../assets/fonts/Karla-Regular.woff) format("woff"), url(../assets/fonts/Karla-Regular.ttf) format("truetype"); }

@font-face {
  font-family: 'Karla' !important;
  font-style: normal;
  font-weight: 700;
  src: local("Karla Bold"), local("Karla-Bold"), url(../assets/fonts/Karla-Bold.woff2) format("woff2"), url(../assets/fonts/Karla-Bold.woff) format("woff"), url(../assets/fonts/Karla-Bold.ttf) format("truetype"); }

@font-face {
  font-family: "Montserrat-Medium";
  font-style: normal;
  font-weight: 400;
  src: local("Montserrat Medium"), local("Montserrat-Medium"), url(../assets/fonts/Montserrat-Medium.woff2) format("woff2"), url(../assets/fonts/Montserrat-Medium.woff) format("woff"), url(../assets/fonts/Montserrat-Medium.ttf) format("truetype"); }

/* Mixins */
/* Bottoni */
.theme_vermillion .btn-rectangle {
  background-color: #e84e0f;
  color: #ffffff; }

.theme_peacock-blue .btn-rectangle {
  background-color: #005ca9;
  color: #ffffff; }

.theme_violet .btn-rectangle {
  background-color: #a83765;
  color: #ffffff; }

.btn-rectangle {
  width: 158px;
  height: 50px;
  border-radius: 25px  25px 0 25px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }

.btn-rectangle:hover {
  border-radius: 25px 25px 25px 25px; }

.btn-arrow {
  font-size: 20px;
  background-color: transparent;
  color: #373737;
  font-weight: bold;
  border: 0;
  padding: 0; }
  .btn-arrow img {
    margin-left: 2px;
    width: 23px;
    height: 21px;
    position: relative;
    top: -2px;
    left: 0;
    -webkit-transition: left 0.3s;
    transition: left 0.3s; }
  @media only screen and (min-width: 577px) and (max-width: 992px) {
    .btn-arrow {
      font-size: 15px; } }

.btn-arrow:hover {
  text-decoration: none; }
  .btn-arrow:hover img {
    left: 7px; }

/* Icone */
.icon-round {
  position: relative;
  width: 122px;
  margin-top: 20px;
  margin-right: 110px;
  float: left; }
  .icon-round.icon-round-vermillion .round {
    background-image: linear-gradient(45deg, #fdc300, #e84e0f); }
  .icon-round .round {
    width: 122px;
    height: 122px;
    border-radius: 50%;
    position: relative; }
    .icon-round .round img {
      height: 53px;
      width: auto;
      position: absolute;
      left: 0;
      right: 0;
      margin: auto;
      top: 34px; }
  .icon-round p {
    padding-top: 12px;
    font-size: 16px;
    color: #8e8e8e;
    text-align: center;
    line-height: 1.13;
    letter-spacing: -0.9px; }
  .icon-round .bar {
    position: absolute;
    width: 81px;
    height: 1px;
    border-top: 2px dashed #979797;
    top: 61px;
    left: 130px; }
    .icon-round .bar .point {
      width: 7px;
      height: 7px;
      border: 2px solid #979797;
      border-radius: 50%;
      margin-top: -5px;
      right: 0;
      margin-left: 105%; }

.icon-round:last-child {
  margin-right: 0; }
  .icon-round:last-child .bar {
    display: none; }

/* Divider */
.divider {
  width: 100%;
  height: 1px;
  background-color: #454545; }

/* Scheda */
.theme_vermillion .scheda aside .add {
  background-image: linear-gradient(226deg, #fdc300, #e84e0f); }

.theme_peacock-blue .scheda aside .add {
  background-image: linear-gradient(46deg, #005ca9, #008bff); }

.theme_violet .scheda aside .add {
  background-image: linear-gradient(46deg, #005ca9, #008bff); }

/* Come in Smart Living Box */
.scheda {
  width: 373px;
  height: 308px;
  border-radius: 15px 15px 0 15px;
  background-color: #ffffff;
  box-shadow: 0 15px 20px 0 rgba(0, 0, 0, 0.14);
  padding: 1px 0 0 0;
  margin: 92px auto 0;
  position: relative;
  /* breakpoint 0 - 576 */ }
  .scheda > .desc {
    color: #373737;
    text-align: center;
    max-width: 240px;
    margin: auto; }
    .scheda > .desc h1, .scheda > .desc h4 {
      font-size: 24px;
      margin: 0;
      font-weight: bold; }
    .scheda > .desc p {
      font-size: 18px; }
  .scheda aside {
    color: #373737;
    position: absolute;
    bottom: 15px;
    width: 94%;
    margin: 0 auto;
    left: 3%; }
    .scheda aside .offerta {
      font-weight: bold; }
      .scheda aside .offerta > span {
        color: #e84e0f;
        font-size: 16px;
        display: block; }
      .scheda aside .offerta var {
        display: block;
        font-style: normal;
        line-height: 1; }
        .scheda aside .offerta var span:nth-child(1) {
          font-size: 32px; }
        .scheda aside .offerta var span:nth-child(2) {
          font-size: 16px; }
        .scheda aside .offerta var span:nth-child(3) {
          padding-left: 3px;
          font-size: 16px; }
    .scheda aside .add {
      width: 47px;
      height: 45px;
      border-radius: 50% 50% 0 50%;
      display: inline-block;
      position: relative;
      box-shadow: 0px 5px 16px rgba(0, 0, 0, 0.2); }
      .scheda aside .add img {
        position: relative;
        left: -3px;
        top: 2px; }
  .scheda > img {
    margin: -84px auto 0;
    display: block;
    transition: all .3s; }
    .scheda > img:hover {
      transform: translateY(-9px); }
  .scheda .inner {
    margin: 129px 88px 0; }
  @media only screen and (max-width: 576px) {
    .scheda {
      width: 315px;
      height: 290px; }
      .scheda > .desc h1, .scheda > .desc h4 {
        font-size: 20px; }
      .scheda > img {
        height: 214px;
        margin: -92px auto 0;
        display: block; } }

/* Sfondi generici */
/* Sfondo con mezza luna in basso */
.bg-round {
  width: 100%;
  max-width: 1920px;
  height: 200px;
  background: #eeeeee;
  position: relative;
  overflow: hidden; }
  .bg-round:after {
    content: " ";
    display: block;
    position: absolute;
    bottom: -54px;
    left: -20px;
    width: calc(100% + 40px);
    height: 100px;
    border: solid 0px #000;
    border-radius: 180%/150px 150px 0 0;
    background: #fff; }

/* Gradienti e sfondi a puntini */
.gradient_v_vermillion {
  background: #e84e0f;
  background: linear-gradient(218deg, #fdc300, #e84e0f); }

.gradient_h_vermillion {
  background: #e84e0f;
  background: linear-gradient(251deg, #fdc300, #e84e0f); }

.dotted_bg_vermillion {
  background-image: url("../assets/images/card-dotted-vermillion.png");
  background-repeat: repeat;
  background-position: center center; }

.gradient_v_vermillion.dotted_bg_vermillion {
  background: url("../assets/images/card-dotted-vermillion.png") repeat center center, linear-gradient(218deg, #fdc300, #e84e0f); }

.gradient_h_vermillion.dotted_bg_vermillion {
  background: url("../assets/images/card-dotted-vermillion.png") repeat center center, linear-gradient(251deg, #fdc300, #e84e0f); }

.gradient_v_vermillion-two {
  background: #E84E0F;
  background: linear-gradient(218deg, #F79E09, #E84E0F); }

.gradient_h_vermillion-two {
  background: #E84E0F;
  background: linear-gradient(251deg, #F79E09, #E84E0F); }

.dotted_bg_vermillion-two {
  background-image: url("../assets/images/card-dotted-vermillion-two.png");
  background-repeat: repeat;
  background-position: center center; }

.gradient_v_vermillion-two.dotted_bg_vermillion-two {
  background: url("../assets/images/card-dotted-vermillion-two.png") repeat center center, linear-gradient(218deg, #F79E09, #E84E0F); }

.gradient_h_vermillion-two.dotted_bg_vermillion-two {
  background: url("../assets/images/card-dotted-vermillion-two.png") repeat center center, linear-gradient(251deg, #F79E09, #E84E0F); }

.gradient_v_peacock-blue {
  background: #005ca9;
  background: linear-gradient(218deg, #008bff, #005ca9); }

.gradient_h_peacock-blue {
  background: #005ca9;
  background: linear-gradient(251deg, #008bff, #005ca9); }

.dotted_bg_peacock-blue {
  background-image: url("../assets/images/card-dotted-peacock-blue.png");
  background-repeat: repeat;
  background-position: center center; }

.gradient_v_peacock-blue.dotted_bg_peacock-blue {
  background: url("../assets/images/card-dotted-peacock-blue.png") repeat center center, linear-gradient(218deg, #008bff, #005ca9); }

.gradient_h_peacock-blue.dotted_bg_peacock-blue {
  background: url("../assets/images/card-dotted-peacock-blue.png") repeat center center, linear-gradient(251deg, #008bff, #005ca9); }

.gradient_v_violet {
  background: #fdc300;
  background: linear-gradient(218deg, #b400c8, #fdc300); }

.gradient_h_violet {
  background: #fdc300;
  background: linear-gradient(251deg, #b400c8, #fdc300); }

.dotted_bg_violet {
  background-image: url("../assets/images/card-dotted-violet.png");
  background-repeat: repeat;
  background-position: center center; }

.gradient_v_violet.dotted_bg_violet {
  background: url("../assets/images/card-dotted-violet.png") repeat center center, linear-gradient(218deg, #b400c8, #fdc300); }

.gradient_h_violet.dotted_bg_violet {
  background: url("../assets/images/card-dotted-violet.png") repeat center center, linear-gradient(251deg, #b400c8, #fdc300); }

.gradient_v_turquoise {
  background: #005ca9;
  background: linear-gradient(218deg, #00a8b0, #005ca9); }

.gradient_h_turquoise {
  background: #005ca9;
  background: linear-gradient(251deg, #00a8b0, #005ca9); }

.dotted_bg_turquoise {
  background-image: url("../assets/images/card-dotted-turquoise.png");
  background-repeat: repeat;
  background-position: center center; }

.gradient_v_turquoise.dotted_bg_turquoise {
  background: url("../assets/images/card-dotted-turquoise.png") repeat center center, linear-gradient(218deg, #00a8b0, #005ca9); }

.gradient_h_turquoise.dotted_bg_turquoise {
  background: url("../assets/images/card-dotted-turquoise.png") repeat center center, linear-gradient(251deg, #00a8b0, #005ca9); }

.gradient_v_grey {
  background: #454545;
  background: linear-gradient(218deg, #8e8e8e, #454545); }

.gradient_h_grey {
  background: #454545;
  background: linear-gradient(251deg, #8e8e8e, #454545); }

.dotted_bg_grey {
  background-image: url("../assets/images/card-dotted-grey.png");
  background-repeat: repeat;
  background-position: center center; }

.gradient_v_grey.dotted_bg_grey {
  background: url("../assets/images/card-dotted-grey.png") repeat center center, linear-gradient(218deg, #8e8e8e, #454545); }

.gradient_h_grey.dotted_bg_grey {
  background: url("../assets/images/card-dotted-grey.png") repeat center center, linear-gradient(251deg, #8e8e8e, #454545); }

.gradient_v_black {
  background: #373737;
  background: linear-gradient(218deg, #373737, #373737); }

.gradient_h_black {
  background: #373737;
  background: linear-gradient(251deg, #373737, #373737); }

.dotted_bg_black {
  background-image: url("../assets/images/card-dotted-black.png");
  background-repeat: repeat;
  background-position: center center; }

.gradient_v_black.dotted_bg_black {
  background: url("../assets/images/card-dotted-black.png") repeat center center, linear-gradient(218deg, #373737, #373737); }

.gradient_h_black.dotted_bg_black {
  background: url("../assets/images/card-dotted-black.png") repeat center center, linear-gradient(251deg, #373737, #373737); }

/* Colori piatti, uno per ogni colore definito in main */
.bg_white {
  background-color: #eeeeee; }

.bg_important_white {
  background-color: #eeeeee !important; }

.bg_white-two {
  background-color: #ffffff; }

.bg_important_white-two {
  background-color: #ffffff !important; }

.bg_black {
  background-color: #373737; }

.bg_important_black {
  background-color: #373737 !important; }

.bg_warm-grey {
  background-color: #8e8e8e; }

.bg_important_warm-grey {
  background-color: #8e8e8e !important; }

.bg_turquoise-blue {
  background-color: #00a8b0; }

.bg_important_turquoise-blue {
  background-color: #00a8b0 !important; }

.bg_peacock-blue {
  background-color: #005ca9; }

.bg_important_peacock-blue {
  background-color: #005ca9 !important; }

.bg_peacock-blue2 {
  background-color: #008bff; }

.bg_important_peacock-blue2 {
  background-color: #008bff !important; }

.bg_marigold {
  background-color: #fdc300; }

.bg_important_marigold {
  background-color: #fdc300 !important; }

.bg_vermillion {
  background-color: #e84e0f; }

.bg_important_vermillion {
  background-color: #e84e0f !important; }

.bg_marigold-two {
  background-color: #F79E09; }

.bg_important_marigold-two {
  background-color: #F79E09 !important; }

.bg_vermillion-two {
  background-color: #E84E0F; }

.bg_important_vermillion-two {
  background-color: #E84E0F !important; }

.bg_violet {
  background-color: #b400c8; }

.bg_important_violet {
  background-color: #b400c8 !important; }

.bg_violet-two {
  background-color: #a83765; }

.bg_important_violet-two {
  background-color: #a83765 !important; }

.bg_border-gray {
  background-color: #dbdbdb; }

.bg_important_border-gray {
  background-color: #dbdbdb !important; }

.bg_greyish-brown {
  background-color: #454545; }

.bg_important_greyish-brown {
  background-color: #454545 !important; }

.bg_pinkish-grey {
  background-color: #d0d0d0; }

.bg_important_pinkish-grey {
  background-color: #d0d0d0 !important; }

.bg_input-shadow {
  background-color: #6e6868; }

.bg_important_input-shadow {
  background-color: #6e6868 !important; }

.bg_code-background {
  background-color: rgba(255, 255, 255, 0.4); }

.bg_important_code-background {
  background-color: rgba(255, 255, 255, 0.4) !important; }

.bg_card-divider {
  background-color: rgba(255, 255, 255, 0.3); }

.bg_important_card-divider {
  background-color: rgba(255, 255, 255, 0.3) !important; }

.bg_box-shadow {
  background-color: rgba(0, 0, 0, 0.1); }

.bg_important_box-shadow {
  background-color: rgba(0, 0, 0, 0.1) !important; }

.bg_red-brown {
  background-color: #6f2d13; }

.bg_important_red-brown {
  background-color: #6f2d13 !important; }

/* Card .box-card */
.hero-card {
  width: 100%;
  height: auto;
  padding: 24px 24px 3px;
  box-shadow: 0 9px 20px 0 rgba(0, 0, 0, 0.18); }
  .hero-card.gradient-peacock-blue .btn.btn-rectangle, .hero-card.gradient_v_peacock-blue .btn.btn-rectangle {
    color: #005ca9; }
  .hero-card .contrast_if_active {
    padding-bottom: 5px; }
  .hero-card .contrast_if_active.active {
    margin: 17px -34px 0px;
    padding: 0 34px 3px; }
  .hero-card .box-card {
    font-family: Karla;
    color: #ffffff;
    /*
        .header {
            font-size: 13px;
            font-weight: normal;
            clear: both;
            border-bottom: none;
            margin-bottom: -12px;
        }
        .details {
            float: right;
            font-size: 16px;
            font-weight: normal;
            text-align: right; 
            letter-spacing: -0.4px;
        }
        */
    /* RADIO BUTTON */
    /* When the checkbox is checked, add a blue background */
    /* Create the radiomark/indicator (hidden when not checked) */
    /* CHECKBOX BUTTON */
    /* When the checkbox is checked, add a blue background */
    /* Create the checkmark/indicator (hidden when not checked) */
    /* INDEX OFFERTE */ }
    .hero-card .box-card .btn-rectangle {
      position: relative;
      margin-top: 25px;
      width: 100%;
      left: 0;
      font-size: 24px;
      background-color: #ffffff;
      color: #e84e0f;
      font-weight: bold;
      padding: 9px 12px;
      height: 54px;
      box-shadow: 0 2px 2px rgba(0, 0, 0, 0.15); }
    .hero-card .box-card a.btn-rectangle {
      line-height: 54px; }
    .hero-card .box-card .title {
      font-weight: bold;
      font-style: normal;
      font-stretch: normal;
      font-size: 34px;
      line-height: 1.03;
      letter-spacing: -1px;
      margin-top: -4px;
      margin-bottom: 0px;
      text-shadow: 0 2px 2px rgba(0, 0, 0, 0.15); }
    .hero-card .box-card .description {
      font-weight: normal;
      font-style: normal;
      font-stretch: normal;
      font-size: 16px;
      line-height: 1.25;
      letter-spacing: -0.8px;
      margin-top: -3px;
      text-shadow: 0 2px 2px rgba(0, 0, 0, 0.15); }
    .hero-card .box-card .price-tabs {
      margin-top: 15px;
      text-shadow: 0 2px 2px rgba(0, 0, 0, 0.15); }
    .hero-card .box-card .price-details {
      text-shadow: 0 2px 2px rgba(0, 0, 0, 0.15);
      margin-top: 0px;
      display: inline-block; }
      .hero-card .box-card .price-details.mono .price {
        font-size: 48px; }
      .hero-card .box-card .price-details.mono .unit {
        margin: 30px 6px 0; }
      .hero-card .box-card .price-details .price {
        display: none;
        font-size: 38px;
        font-weight: bold; }
        .hero-card .box-card .price-details .price.active {
          display: block; }
      .hero-card .box-card .price-details .unit {
        font-size: 18px;
        font-weight: normal;
        float: left;
        height: 20px;
        margin: 19px 6px 0; }
      .hero-card .box-card .price-details .code {
        font-size: 12px;
        font-weight: bold;
        float: left;
        height: 23px;
        width: auto;
        padding: 3px 6px;
        border-radius: 12.5px;
        margin-top: 18px; }
      .hero-card .box-card .price-details .number {
        float: left;
        height: 42px;
        display: -webkit-inline-box;
        display: -webkit-inline-flex;
        display: -moz-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-align-self: auto; }
        .hero-card .box-card .price-details .number::after {
          content: '€';
          font-family: 'Montserrat-Medium'; }
    .hero-card .box-card .header {
      font-size: 13px;
      font-weight: normal;
      text-shadow: 0 2px 2px rgba(0, 0, 0, 0.15); }
    .hero-card .box-card .tariff {
      margin-top: 17px;
      border-top: 1px solid #ffffff; }
    .hero-card .box-card .mono-el .tarif-title {
      font-size: 16px;
      line-height: 1.06;
      letter-spacing: -0.9px; }
    .hero-card .box-card .mono-el .icon {
      float: left;
      width: auto;
      text-align: center; }
    .hero-card .box-card .mono-el .label {
      font-size: 16px;
      font-weight: bold;
      float: left; }
    .hero-card .box-card .mono-el .price {
      font-size: 24px;
      font-weight: bold; }
    .hero-card .box-card .date {
      font-weight: bold;
      text-align: center;
      margin-top: 8px;
      /*border-top: 1px solid $card-divider;*/
      padding-top: 12px;
      margin-left: -5px;
      margin-right: -5px;
      padding-right: 5px;
      padding-left: 5px;
      text-shadow: 0 2px 2px rgba(0, 0, 0, 0.15); }
/*     .hero-card .box-card .mono-gas {
      
            label {
                margin-left: 10px;
                line-height: 1.5em;
            }
} */
      .hero-card .box-card .mono-gas ~ .mono-gas {
        margin-top: 17px;
        margin-bottom: 17px; }
      .hero-card .box-card .mono-gas .tarif-title {
        font-size: 16px;
        line-height: 1.06;
        letter-spacing: -0.9px;
        float: left; }
      .hero-card .box-card .mono-gas .tarif-details {
        float: right;
        font-size: 16px;
        letter-spacing: -0.4px;
        text-align: right;
        margin-top: 4px; }
        .hero-card .box-card .mono-gas .tarif-details a {
          color: #ffffff;
          text-decoration: none; }
        .hero-card .box-card .mono-gas .tarif-details img {
          width: 15px;
          display: none; }
      .hero-card .box-card .mono-gas .icon {
        float: left;
        width: auto;
        text-align: center; }
      .hero-card .box-card .mono-gas .label {
        height: 17px; }
      .hero-card .box-card .mono-gas .price {
        font-size: 24px;
        font-weight: bold; }
      .hero-card .box-card .mono-gas .unit {
        font-size: 14px;
        font-weight: normal; }
      .hero-card .box-card .mono-gas .code {
        font-size: 12px;
        font-weight: bold; }
      .hero-card .box-card .mono-gas input[type="radio"] {
        vertical-align: middle; }
    .hero-card .box-card .header-gas {
      margin-top: 17px;
      border-top: 1px dashed; }
      .hero-card .box-card .header-gas .gas-row-description p {
        margin: 0; }
    .hero-card .box-card .radio-container {
      font-size: 16px;
      font-weight: bold;
      font-style: normal;
      font-stretch: normal;
      line-height: 1.06;
      letter-spacing: -0.9px; }
      .hero-card .box-card .radio-container .left {
        float: left;
        width: 50%; }
      .hero-card .box-card .radio-container .right {
        float: right;
        width: 50%; }
      .hero-card .box-card .radio-container label {
        width: 60px; }
    .hero-card .box-card .gas-row-description .title {
      float: left;
      font-size: 20px;
      font-weight: bold;
      letter-spacing: -1.3px; }
    .hero-card .box-card .gas-row-description .header {
      font-size: 13px;
      font-weight: normal;
      clear: both;
      border-bottom: none;
      font-size: 13px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.3);
      margin-bottom: 22px;
      padding-bottom: 2px;
      margin-left: -5px;
      margin-right: -5px;
      padding-right: 5px;
      padding-left: 5px; }
    .hero-card .box-card .gas-row-description .details {
      float: right;
      font-size: 16px;
      font-weight: normal;
      text-align: right;
      letter-spacing: -0.4px; }
    .hero-card .box-card .tarif-gas {
      margin-top: 14px;
      margin-bottom: 3px; }
    .hero-card .box-card .mono-gas .tarif-title {
      font-size: 16px;
      line-height: 1.06;
      letter-spacing: -0.9px; }
    .hero-card .box-card .mono-gas .icon {
      float: left;
      width: auto;
      text-align: center; }
    .hero-card .box-card .mono-gas .label {
      font-size: 16px;
      font-weight: bold; }
    .hero-card .box-card .mono-gas .price {
      font-size: 24px;
      font-weight: bold; }
    .hero-card .box-card .mono-gas .unit {
      font-size: 14px;
      font-weight: normal; }
    .hero-card .box-card .mono-gas .code {
      font-size: 12px;
      font-weight: bold; }
    .hero-card .box-card .date {
      font-weight: bold;
      text-align: center; }
    .hero-card .box-card input[type='radio'] {
      display: none; }
    .hero-card .box-card .radiomark {
      width: 25px;
      height: 25px;
      border: 2px solid #ffffff;
      background-color: transparent;
      border-radius: 27px;
      position: absolute;
      top: 7px;
      left: 0;
      background-color: rgba(255, 255, 255, 0.1);
      box-shadow: inset 0 1px 7px 0 rgba(0, 0, 0, 0.2); }
    .hero-card .box-card .radiomark img {
      position: absolute;
      top: -5px;
      left: -5px;
      width: 32px; }
    .hero-card .box-card .container-radio img {
      display: none; }
    .hero-card .box-card .container-radio {
      background-color: transparent;
      display: block;
      width: 100px;
      position: relative;
      padding-left: 35px;
      margin-bottom: 12px;
      line-height: 1.5em;
      font-weight: bold;
      cursor: pointer;
      font-size: 16px;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none; }
      .hero-card .box-card .container-radio p {
        margin: 0;
        text-shadow: none;
        margin-top: -5px; }
    .hero-card .box-card .container-radio input[checked] ~ .radiomark {
      background-color: #ffffff;
      box-shadow: 1px 2px 7px 0px rgba(0, 0, 0, 0.2); }
    .hero-card .box-card .container-radio input[checked] ~ .radiomark img {
      display: block; }
    .hero-card .box-card .container-radio input[checked] ~ img {
      display: block; }
    .hero-card .box-card .radiomark:after {
      content: "";
      position: absolute;
      display: none; }
    .hero-card .box-card input[type='checkbox'] {
      opacity: 0;
      display: none; }
    .hero-card .box-card .checkmark {
      width: 25px;
      height: 25px;
      border: 2px solid #ffffff;
      background-color: transparent;
      border-radius: 27px;
      position: absolute;
      top: 0;
      left: 0;
      background-color: transparent;
      box-shadow: inset 0 1px 7px 0 rgba(0, 0, 0, 0.2); }
    .hero-card .box-card .checkmark img {
      position: absolute;
      top: -5px;
      left: -5px;
      width: 32px; }
    .hero-card .box-card .container-checkbox img {
      display: none; }
    .hero-card .box-card .container-checkbox {
      background-color: transparent;
      display: block;
      line-height: 25px;
      position: relative;
      padding-left: 35px;
      width: auto;
      cursor: pointer;
      font-size: 16px;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      text-shadow: 0 2px 2px rgba(0, 0, 0, 0.15); }
    .hero-card .box-card .container-checkbox input[checked] ~ .checkmark {
      background-color: #ffffff;
      box-shadow: 1px 2px 7px 0px #6e6868; }
    .hero-card .box-card .container-checkbox input[checked] ~ .checkmark img {
      display: block; }
    .hero-card .box-card .container-checkbox input[checked] ~ img {
      display: block; }
    .hero-card .box-card .checkmark:after {
      content: "";
      position: absolute;
      display: none; }
    .hero-card .box-card .index-offerte {
      text-shadow: 0 2px 2px rgba(0, 0, 0, 0.15);
      min-height: 396px;
      /*
            .box-switch{
                margin-top: 20px;
                button.switch {
                    margin: 0 auto;
                    width: 100%;
                    height: 40px;
                    display: inline-block;
                    margin-right: 0.25em;
                    line-height: 20px;
                    vertical-align: middle;
                    text-align: center;
                    border-radius: 20px;
                    background-color: rgba(111, 45, 19, 0.3);
                    box-shadow: none;
                    border: 0;
                    position: relative;
                }
                
                button.switch span {
                    width: 50%;
                    padding: 11px 0;
                    border-radius: 25px;
                    position: absolute;
                    top: 0;
                    font-size: 16px;
                    &.js-mono{ left: 0; }
                    &.js-bio{ right: 0; }
                }
                
                [role="switch"][data-checked="false"] :first-child,
                [role="switch"][data-checked="true"] :last-child {
                    background: $white-two;
                    color: $red-brown ;
                    font-weight: bold;
                    box-shadow: 0 7px 12px 0 rgba(0, 0, 0, 0.15);
                }
                
                [role="switch"][data-checked="false"] :last-child,
                [role="switch"][data-checked="true"] :first-child {
                    color: $white-two;                              
                }  
                
                

                .active{
                    -webkit-transition: 0.3s;
                    -moz-transition: 0.3s;
                    -ms-transition: 0.3s;
                    -o-transition: 0.3s;
                    transition: 0.3s;
                }
                .js-mono.active{
                    margin-left: 50% !important;
                }
                .js-bio.active{
                    margin-right: 50% !important;
                }

            }  
            */ }
      .hero-card .box-card .index-offerte.no-price {
        min-height: 271px;
        padding-top: 38px; }
      .hero-card .box-card .index-offerte .no-display {
        display: none !important; }
      .hero-card .box-card .index-offerte .box-info {
        padding-top: 12px;
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex; }
        .hero-card .box-card .index-offerte .box-info .box-content.text {
          width: 80%;
          margin-top: 2px;
          margin-left: 10px;
          font-size: 18px; }
        .hero-card .box-card .index-offerte .box-info .box-content .icon {
          width: 30px;
          height: 30px; }
      .hero-card .box-card .index-offerte .js-switch-mono {
        display: block; }
      .hero-card .box-card .index-offerte .js-switch-bio {
        display: none; }
      .hero-card .box-card .index-offerte .box-switch {
        margin: 20px auto;
        width: 100%;
        height: 40px;
        display: inline-block;
        margin-right: 0.25em;
        line-height: 20px;
        vertical-align: middle;
        text-align: center;
        border-radius: 20px;
        background-color: rgba(111, 45, 19, 0.3);
        box-shadow: none;
        border: 0;
        position: relative;
        text-shadow: none; }
        .hero-card .box-card .index-offerte .box-switch .container-radio {
          width: 100%;
          padding: 0;
          text-align: center; }
          .hero-card .box-card .index-offerte .box-switch .container-radio p {
            font-size: 16px; }
        .hero-card .box-card .index-offerte .box-switch .btn-radio {
          width: 50%;
          padding: 10px 0;
          border-radius: 25px;
          position: absolute;
          top: 0;
          font-size: 16px;
          height: 40px; }
          .hero-card .box-card .index-offerte .box-switch .btn-radio.js-mono {
            left: 0; }
          .hero-card .box-card .index-offerte .box-switch .btn-radio.js-bio {
            right: 0; }
        .hero-card .box-card .index-offerte .box-switch [role="radio"][aria-checked="true"] {
          padding: 0;
          background: #ffffff;
          color: #6f2d13;
          font-weight: bold;
          box-shadow: 0 7px 12px 0 rgba(0, 0, 0, 0.15);
          padding-top: 10px; }
        .hero-card .box-card .index-offerte .box-switch [role="radio"][aria-checked="false"] {
          color: #ffffff; }
        .hero-card .box-card .index-offerte .box-switch .switch-active {
          -webkit-transition: 0.2s;
          -moz-transition: 0.2s;
          -ms-transition: 0.2s;
          -o-transition: 0.2s;
          transition: 0.2s; }
        .hero-card .box-card .index-offerte .box-switch .js-mono.switch-active {
          margin-left: 50% !important; }
        .hero-card .box-card .index-offerte .box-switch .js-bio.switch-active {
          margin-right: 50% !important; }
      .hero-card .box-card .index-offerte .desc {
        padding: 20px 0px 0px 0; }
      .hero-card .box-card .index-offerte .price-details {
        float: none;
        display: inline; }
        .hero-card .box-card .index-offerte .price-details .price {
          height: auto;
          width: 100%; }

/* breakpoint 577 - 768 */
/* breakpoint 769 - 992 */
@media only screen and (min-width: 577px) and (max-width: 992px) {
  .hero-card {
    margin: 218px 0 0;
    padding: 24px 29px 3px; }
    .hero-card .box-card .index-offerte .box-info .box-content.text {
      margin-top: 0; }
    .hero-card .box-card .title {
      font-size: 50px;
      line-height: normal;
      letter-spacing: -2.5px;
      margin-bottom: -6px;
      margin-top: -8px; }
    .hero-card .box-card .date {
      border-top: none;
      margin-top: 0;
      padding-top: 14px; }
    .hero-card .box-card .description {
      font-size: 18px;
      line-height: 1.39;
      letter-spacing: -0.9px;
      margin-bottom: 22px;
      margin-top: -11px; }
    .hero-card .box-card .header {
      font-size: 14px;
      padding-bottom: 12px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
      .hero-card .box-card .header p {
        margin: 0; }
    .hero-card .box-card .switch-container {
      padding: 25px 0 16px 0; }
    .hero-card .box-card .price-tabs {
      margin-top: 26px; }
    .hero-card .box-card .radio-container {
      font-size: 18px;
      line-height: 1;
      letter-spacing: -1px;
      float: left;
      margin-top: 8px; }
      .hero-card .box-card .radio-container .left {
        float: none;
        width: 100%; }
      .hero-card .box-card .radio-container .right {
        float: none;
        width: 100%; }
    .hero-card .box-card .price-details {
      float: right;
      margin-top: 0px; }
      .hero-card .box-card .price-details .price {
        display: block; }
      .hero-card .box-card .price-details.mono {
        float: none; }
    .hero-card .box-card .smart-block {
      height: 64px; }
    .hero-card .box-card .btn-rectangle {
      visibility: visible;
      position: relative;
      margin-top: 10px;
      left: 0;
      right: 0;
      font-size: 20px;
      font-weight: bold;
      background-color: #ffffff;
      color: #e84e0f;
      height: 50px;
      box-shadow: 0 2px 2px rgba(0, 0, 0, 0.15); }
    .hero-card .box-card a.btn-rectangle {
      line-height: 32px; }
    .hero-card .box-card .gas-row-description {
      margin-top: 24px; }
      .hero-card .box-card .gas-row-description .title {
        float: left;
        font-size: 24px;
        font-weight: bold;
        letter-spacing: -1px;
        margin-bottom: 4px; }
      .hero-card .box-card .gas-row-description .header {
        font-size: 14px;
        font-weight: normal;
        clear: both;
        border-bottom: none;
        padding-bottom: 22px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.3);
        margin-bottom: 32px; }
    .hero-card .box-card .mono-gas .tarif-title {
      font-size: 18px;
      line-height: 1;
      letter-spacing: -1px;
      float: left; }
    .hero-card .box-card .mono-gas .tarif-details {
      float: right;
      font-size: 16px;
      letter-spacing: -0.4px;
      text-align: right;
      margin-top: 4px; }
      .hero-card .box-card .mono-gas .tarif-details img {
        width: 15px;
        margin-bottom: 2px;
        margin-left: 5px;
        display: inline-block; }
    .hero-card .box-card .tarif-gas {
      margin-top: 0; }
    .hero-card .box-card .container-radio {
      font-size: 18px; }
    .hero-card .box-card .container-checkbox {
      font-size: 18px; } 
    }

/* breakpoint 993 - 1920 */
@media only screen and (min-width: 993px) and (max-width: 1920px) {
  .hero-card {
    width: 100%;
    height: auto;
    max-width: 443px;
    float: right; }
    .hero-card .box-card .price-details .price {
      display: none;
      font-size: 38px;
      font-weight: bold; }
      .hero-card .box-card .price-details .price.active {
        display: block; }
    .hero-card .box-card .price-details .unit {
      font-size: 18px;
      margin: 21px 6px 0; }
    .hero-card .box-card .price-details .code {
      margin-top: 16px; }
    .hero-card .box-card .price-details .number {
      float: left;
      height: 34px; }
      .hero-card .box-card .price-details .number::after {
        content: '€';
        font-family: 'Montserrat-Medium'; }
    .hero-card .box-card .btn-rectangle {
      visibility: visible;
      position: relative;
      margin-top: 32px;
      width: 100%;
      left: 0;
      right: 0;
      font-size: 24px;
      padding: 0 9px;
      background-color: #ffffff;
      color: #e84e0f;
      box-shadow: 0 2px 2px rgba(0, 0, 0, 0.15); }
    .hero-card .box-card .title {
      font-size: 50px;
      line-height: normal;
      letter-spacing: -2.5px; }
    .hero-card .box-card .description {
      font-size: 18px;
      line-height: 1.39;
      letter-spacing: -0.9px; }
    .hero-card .box-card .header {
      font-size: 14px;
      font-weight: normal;
      clear: both;
      padding-bottom: 12px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.3);
      margin-bottom: 20px; }
    .hero-card .box-card .header-gas {
      border-top: 1px dashed; }
    .hero-card .box-card .gas-row-description .title {
      float: left;
      font-size: 24px;
      font-weight: bold;
      letter-spacing: -1px; }
    .hero-card .box-card .gas-row-description .header {
      font-size: 14px;
      font-weight: normal;
      clear: both;
      border-bottom: none;
      border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
    .hero-card .box-card .date {
      border-top: none;
      font-size: 15px;
      margin-top: 0px; }
    .hero-card .box-card .mono-gas .tarif-details img {
      width: 15px;
      margin-bottom: 2px;
      margin-left: 5px;
      display: inline-block; }
    .hero-card .box-card .radio-container {
      font-size: 18px;
      line-height: 1;
      letter-spacing: -1px;
      float: left;
      margin-top: 8px; }
      .hero-card .box-card .radio-container .left {
        float: none;
        width: 100%; }
      .hero-card .box-card .radio-container .right {
        float: none;
        width: 100%; }
    .hero-card .box-card .price-details {
      float: right;
      margin-top: 0px; }
      .hero-card .box-card .price-details .price {
        display: block; }
      .hero-card .box-card .price-details.mono {
        float: none; }
    .hero-card .box-card .smart-block {
      height: 80px; }
    .hero-card .box-card .container-radio {
      font-size: 18px;
      line-height: 20px; }
    .hero-card .box-card .container-checkbox {
      font-size: 18px; } }

@media only screen and (min-width: 993px) and (max-width: 1200px) {
  .hero-card {
    padding: 27px 29px 0px 29px; }
    .hero-card .contrast_if_active.active {
      margin: 17px -29px 0px;
      padding: 0 29px 2px; }
    .hero-card .box-card .smart-block {
      height: 56px; }
    .hero-card .box-card .btn-rectangle {
      margin-top: 19px;
      font-size: 20px;
      font-weight: bold;
      height: 50px;
      box-shadow: 0 2px 2px rgba(0, 0, 0, 0.15); }
    .hero-card .box-card a.btn-rectangle {
      line-height: 50px; }
    .hero-card .box-card .title {
      font-size: 50px;
      line-height: normal;
      letter-spacing: -2.5px;
      margin-top: -8px; }
    .hero-card .box-card .description {
      margin-top: -12px; }
    .hero-card .box-card .price-tabs {
      margin-top: 0; }
    .hero-card .box-card .header {
      font-size: 14px;
      margin-bottom: 13px;
      padding-bottom: 4px; }
    .hero-card .box-card .date {
      margin-top: -2px;
      border-top: none; }
/*     .hero-card .box-card .gas-row-description .title {
      margin-bottom: -8px;} */
    .hero-card .box-card .gas-row-description .header {
      padding-bottom: 16px; }
    .hero-card .box-card .price-details .price {
      display: block; }
      .hero-card .box-card .price-details .price.active {
        display: block; }
    .hero-card .box-card .price-details .unit {
      font-size: 15px;
      margin: 14px 6px 0; }
    .hero-card .box-card .price-details .code {
      margin-top: 10px; }
    .hero-card .box-card .price-details .number {
      float: left;
      height: 34px; }
      .hero-card .box-card .price-details .number::after {
        content: '€';
        font-family: 'Montserrat-Medium'; } }

/* breakpoint 1200 - 1920 */
@media only screen and (min-width: 1200px) and (max-width: 1920px) {
  .hero-card {
    width: 100%;
    height: auto;
    max-width: 520px;
    float: right; }
    .hero-card .box-card .btn-rectangle {
      margin-top: 33px;
      padding-bottom: 0;
      font-weight: bold;
      height: 60px;
      padding: 0;
      box-shadow: 0 2px 2px rgba(0, 0, 0, 0.15); }
    .hero-card .box-card a.btn-rectangle {
      line-height: 60px; }
    .hero-card .box-card .date {
      border-top: none; }
    .hero-card .box-card .title {
      font-size: 60px; }
    .hero-card .box-card .description {
      font-size: 20px; }
    .hero-card .box-card .header {
      margin-bottom: 16px; }
    .hero-card .box-card .gas-row-description .header {
      font-size: 14px;
      font-weight: normal;
      clear: both;
      border-bottom: none;
      padding-bottom: 4px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
    .hero-card .box-card .mono-gas .tarif-details img {
      width: 15px;
      margin-bottom: 2px;
      margin-left: 5px;
      display: inline-block; }
    .hero-card .box-card .radio-container {
      font-size: 18px;
      line-height: 1;
      letter-spacing: -1px;
      float: left;
      margin-top: 13px; }
      .hero-card .box-card .radio-container .left {
        float: none;
        width: 100%; }
      .hero-card .box-card .radio-container .right {
        float: none;
        width: 100%; }
    .hero-card .box-card .price-details {
      float: right;
      margin-top: 0px; }
      .hero-card .box-card .price-details .price {
        display: block; }
    .hero-card .box-card .smart-block {
      height: 63px; } }

@media (min-width: 1200px) {
  .hero-card {
    padding: 24px 34px 3px; }
    .hero-card .contrast_if_active.active {
      margin: 17px -34px 0px; }
    .hero-card .box-card .title {
      font-size: 60px;
      line-height: 1.08;
      letter-spacing: -3px;
      padding-bottom: 7px; }
      .hero-card .box-card .title p {
        margin: 0; }
    .hero-card .box-card .description {
      max-width: 368px;
      font-size: 20px;
      line-height: 1.25;
      letter-spacing: -1px; }
      .hero-card .box-card .description p {
        margin: 0; }
    .hero-card .box-card .index-offerte .box-info .box-content.text {
      width: 80%;
      margin-top: -1px;
      margin-left: 13px;
      font-size: 18px; }
    .hero-card .box-card .price-tabs {
      margin-top: 21px; }
      .hero-card .box-card .price-tabs .header {
        margin-bottom: 11px; }
        .hero-card .box-card .price-tabs .header p {
          margin: 0; }
      .hero-card .box-card .price-tabs .price-details {
        margin-top: 4px;
        margin-bottom: 5px; }
    .hero-card .box-card .header-gas {
      border-top: 1px dashed; }
      .hero-card .box-card .header-gas .gas-row-description {
        margin-top: 18px; }
        .hero-card .box-card .header-gas .gas-row-description .title {
          font-size: 28px;
          letter-spacing: -1.2px;
          padding-bottom: 3px; }
        .hero-card .box-card .header-gas .gas-row-description .header {
          margin-bottom: 0;
          padding-bottom: 18px; }
    .hero-card .box-card .container-checkbox {
      font-size: 18px; 
    }
    /* Desktop */
    .top-modal {
      max-width: 20% !important;
      width: 20% !important;
      top: -1px !important;
      right: -1px !important;
      position: absolute !important;
      height: 100% !important;
    }

    #callMeBackDesktopBtn {
      margin-top: 6em !important;
    }
  }

  @media screen and (max-width: 1536px) {
    .title-call-me-back {
      padding: 10px 16px 8px 16px !important;
    }

    .sub-title-call-me-back {
      margin-bottom: 12px !important;
    }

    .label-field-call-me-back {
      font-size: 16px !important;
    }

    .input-call-me-back {
      height: 44px !important;
    }
    
    .info-privacy-call-me-back {
      font-size: 16px !important;
      margin-top: 6px !important;
    }
    
    .btn-call-me-back {
      font-size: 14px !important;
      height: 36px !important;
    }
    
    .div-btn-call-me-back {
      bottom: 60px !important;
    }
  }

@media (min-width: 1920px) {
  .hero-card {
    width: 100%;
    height: auto;
    max-width: 520px;
    float: right; }
/*     .hero-card .box-card {
      /*.title {
                font-size: 60px;
                line-height:  normal;
                letter-spacing: -2.5px;
                margin-bottom: -6px;
            }
      .description {
                font-size: 20px;
                line-height: 1.39;
                letter-spacing: -0.9px;
            } */
      .hero-card .box-card .container-radio {
        font-size: 18px;
        line-height: 20px; }
      .hero-card .box-card .btn-rectangle {
        visibility: visible;
        position: relative;
        padding: 0;
        width: 100%;
        left: 0;
        right: 0;
        font-size: 24px;
        padding: 0 9px;
        font-weight: bold;
        background-color: #ffffff;
        color: #e84e0f;
        height: 60px;
        box-shadow: 0 2px 2px rgba(0, 0, 0, 0.15); }
      .hero-card .box-card a.btn-rectangle {
        line-height: 60px; }
      .hero-card .box-card .date {
        border-top: none;
        font-size: 16px;
        margin-top: 0px; }
      .hero-card .box-card .header {
        font-size: 14px;
        font-weight: normal;
        clear: both;
        border-bottom: none;
        border-bottom: 1px solid rgba(255, 255, 255, 0.3);
        /* TODO: check this!
                padding-bottom: 0px;
                margin-bottom: 16px;
                */ }
      .hero-card .box-card .smart-block {
        height: 63px; }
      .hero-card .box-card .gas-row-description .title {
        float: left;
        font-size: 24px;
        font-weight: bold;
        letter-spacing: -1px; }
      .hero-card .box-card .gas-row-description .header {
        font-size: 14px;
        font-weight: normal;
        clear: both;
        border-bottom: none;
        padding-bottom: 4px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
      .hero-card .box-card .mono-gas .tarif-details img {
        width: 15px;
        margin-bottom: 2px;
        margin-left: 5px;
        display: inline-block; }
      .hero-card .box-card .radio-container {
        font-size: 18px;
        line-height: 1;
        letter-spacing: -1px;
        float: left;
        margin-top: 8px; }
        .hero-card .box-card .radio-container .left {
          float: none;
          width: 100%; }
        .hero-card .box-card .radio-container .right {
          float: none;
          width: 100%; }
      .hero-card .box-card .price-details {
        float: right;
        margin-top: 0px; }
        .hero-card .box-card .price-details .price {
          display: block; }
        .hero-card .box-card .price-details.mono {
          float: none; }
      .hero-card .box-card .container-radio {
        font-size: 18px;
        line-height: 20px; }
      .hero-card .box-card .container-checkbox {
        font-size: 18px; } }

/* breakpoint 577 - 993 */
@media only screen and (min-width: 577px) and (max-width: 992px) {
  .hero-card {
    padding: 24px 24px 3px 29px; }
  .hero-card .box-card .gas-row-description {
    margin-top: 24px; }
  .hero-card .contrast_if_active.active {
    margin: 17px -24px 0px -29px;
    padding: 6px 29px 3px; }
    .hero-card .contrast_if_active.active .header-gas .gas-row-description {
      margin-top: 23px; } }

/* breakpoint 556 */
@media only screen and (max-width: 576px) {
  .hero-card .box-card .gas-row-description {
    margin-top: 18px; }
  .hero-card .contrast_if_active.active {
    margin: 17px -24px 0px;
    padding: 0 24px 2px; }
    .hero-card .contrast_if_active.active .header-gas {
      margin-top: 0px; }
      .hero-card .contrast_if_active.active .header-gas .gas-row-description {
        margin-top: 10px; }
  .hero-card .box-card a.btn-rectangle {
    line-height: 36px; }
  .hero-card .index-offerte .box-info {
    display: block;
    padding-top: 1px;
    margin-bottom: 10px; }
    .hero-card .index-offerte .box-info .box-content img {
      display: block;
      position: relative;
      transform: translateY(-12px);
      width: 25px;
      height: 25px;
      top: 50%;
      padding-top: 0; }
    .hero-card .index-offerte .box-info .box-content.text p {
      margin: 0;
      line-height: normal; } }

.simple-tooltip-container {
  position: relative; }

.simple-tooltip-tooltip {
  position: absolute;
  z-index: 9999;
  top: -133px;
  left: -114px;
  width: 212px;
  height: 122px;
  background: #ffffff;
  background: #ffffff;
  border: none;
  border-radius: .5em;
  padding: 20px 25px 23px 21px;
  text-align: left;
  box-shadow: 2px 4px 24px 1px rgba(0, 0, 0, 0.2); }
  .simple-tooltip-tooltip::before {
    content: "";
    position: absolute;
    pointer-events: none;
    top: 100%;
    left: 50%;
    transform: translate3d(-50%, 0%, 0);
    transition: all .3s ease;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: #ffffff transparent transparent transparent; }

.simple-tooltip-tooltip__title {
  margin: 0;
  line-height: 1; }

.simple-tooltip-tooltip p {
  font-size: 16px;
  font-style: normal;
  letter-spacing: -0.9px;
  color: #454545;
  font-weight: normal; }

.simple-tooltip-tooltip__close {
  float: right;
  border: none;
  position: absolute;
  right: 5px;
  top: 8px;
  background-color: unset;
  color: #000; }

@media (max-width: 992px) {
  .simple-tooltip-container {
    position: relative; }
  .simple-tooltip-tooltip {
    position: absolute;
    width: 212px;
    height: 122px;
    margin-top: 1em;
    top: -144px; } }

@-webkit-keyframes fromleft {
  0% {
    width: 0; }
  100% {
    width: 25em; } }

@keyframes fromleft {
  0% {
    width: 0; }
  100% {
    width: 25em; } }

.btn-code {
  font-size: 12px;
  font-weight: bold;
  float: left;
  height: 23px;
  width: auto;
  padding: 3px 6px;
  border-radius: 12.5px;
  border-style: none;
  background-color: rgba(255, 255, 255, 0.4); }

/* Round tip presente nell'hero */
.round-tip {
  width: 158px;
  height: 158px;
  background-color: #ffffff;
  border-radius: 50%;
  box-shadow: 0 8px 25px 0 rgba(0, 0, 0, 0.15);
  padding: 35px;
  margin-bottom: 20px; }
  .round-tip .tip-content {
    width: 100%;
    text-align: center;
    font-style: normal;
    font-stretch: normal;
    font-family: Karla;
    letter-spacing: normal; }
    .round-tip .tip-content .tip-icon {
      margin: 0 auto;
      width: 32px;
      height: 32px; }
      .round-tip .tip-content .tip-icon img {
        width: 32px;
        height: 32px;
        margin: 0 auto; }
    .round-tip .tip-content p {
      margin: 3px 0; }
    .round-tip .tip-content .tip-text {
      font-size: 14px;
      line-height: normal;
      letter-spacing: -1.1px; }
    .round-tip .tip-content .tip-text-bigger {
      font-weight: bold;
      line-height: 0.9;
      font-size: 20px;
      letter-spacing: -1.1px; }
  @media only screen and (max-width: 576px) {
    .round-tip {
      width: 158px;
      height: 158px; } }
  @media only screen and (min-width: 576px) and (max-width: 992px) {
    .round-tip {
      width: 240px;
      height: 240px;
      padding: 46px; }
      .round-tip .tip-content .tip-icon {
        width: 45px;
        height: 45px; }
        .round-tip .tip-content .tip-icon img {
          width: 45px;
          height: 45px; }
      .round-tip .tip-content p {
        margin: 9px 0; }
      .round-tip .tip-content .tip-text {
        font-size: 18px; }
      .round-tip .tip-content .tip-text-bigger {
        font-size: 30px; } }
  @media only screen and (min-width: 992px) and (max-width: 1200px) {
    .round-tip {
      width: 200px;
      height: 200px; }
      .round-tip .tip-content .tip-icon {
        width: 45px;
        height: 45px; }
        .round-tip .tip-content .tip-icon img {
          width: 45px;
          height: 45px; }
      .round-tip .tip-content p {
        margin: 3px 0; }
      .round-tip .tip-content .tip-text {
        font-size: 16px; }
      .round-tip .tip-content .tip-text-bigger {
        font-size: 24px; } }
  @media only screen and (min-width: 1200px) {
    .round-tip {
      width: 240px;
      height: 240px;
      padding: 46px; }
      .round-tip .tip-content .tip-icon {
        width: 45px;
        height: 45px; }
        .round-tip .tip-content .tip-icon img {
          width: 45px;
          height: 45px; }
      .round-tip .tip-content p {
        margin: 9px 0; }
      .round-tip .tip-content .tip-text {
        font-size: 18px; }
      .round-tip .tip-content .tip-text-bigger {
        font-size: 30px; } }

/*  */
.no-small {
  display: block; }

.only-small {
  display: none; }

.hide-element {
  display: none; }

@media only screen and (max-width: 576px) {
  .btn-confirmation {
    width: 100% !important;
    display: inline-block;
    text-align: center;
  }
}

@media only screen and (max-width: 576px) {
  .salva-continua-mobile {
    text-align: center;
  }
}

@media only screen and (max-width: 576px) {
  /* Usare per nascondere nel mobile */
  .no-small {
    display: none; }
  .only-small {
    display: block; } }

/* Varianti di colore */
/* -------- COLOR VARIANTS --------- */
/* TEXT */
/* uno per ogni colore definito in main */
.text_white {
  color: #eeeeee; }

.text_important_white {
  color: #eeeeee !important; }

.text_super_white {
  color: #eeeeee !important; }
  .text_super_white:hover, .text_super_white:active, .text_super_white:focus {
    color: #eeeeee !important; }

.text_white-two {
  color: #ffffff; }

.text_important_white-two {
  color: #ffffff !important; }

.text_super_white-two {
  color: #ffffff !important; }
  .text_super_white-two:hover, .text_super_white-two:active, .text_super_white-two:focus {
    color: #ffffff !important; }

.text_black {
  color: #373737; }

.text_important_black {
  color: #373737 !important; }

.text_super_black {
  color: #373737 !important; }
  .text_super_black:hover, .text_super_black:active, .text_super_black:focus {
    color: #373737 !important; }

.text_warm-grey {
  color: #8e8e8e; }

.text_important_warm-grey {
  color: #8e8e8e !important; }

.text_super_warm-grey {
  color: #8e8e8e !important; }
  .text_super_warm-grey:hover, .text_super_warm-grey:active, .text_super_warm-grey:focus {
    color: #8e8e8e !important; }

.text_turquoise-blue {
  color: #00a8b0; }

.text_important_turquoise-blue {
  color: #00a8b0 !important; }

.text_super_turquoise-blue {
  color: #00a8b0 !important; }
  .text_super_turquoise-blue:hover, .text_super_turquoise-blue:active, .text_super_turquoise-blue:focus {
    color: #00a8b0 !important; }

.text_peacock-blue {
  color: #005ca9; }

.text_important_peacock-blue {
  color: #005ca9 !important; }

.text_super_peacock-blue {
  color: #005ca9 !important; }
  .text_super_peacock-blue:hover, .text_super_peacock-blue:active, .text_super_peacock-blue:focus {
    color: #005ca9 !important; }

.text_peacock-blue2 {
  color: #008bff; }

.text_important_peacock-blue2 {
  color: #008bff !important; }

.text_super_peacock-blue2 {
  color: #008bff !important; }
  .text_super_peacock-blue2:hover, .text_super_peacock-blue2:active, .text_super_peacock-blue2:focus {
    color: #008bff !important; }

.text_marigold {
  color: #fdc300; }

.text_important_marigold {
  color: #fdc300 !important; }

.text_super_marigold {
  color: #fdc300 !important; }
  .text_super_marigold:hover, .text_super_marigold:active, .text_super_marigold:focus {
    color: #fdc300 !important; }

.text_vermillion {
  color: #e84e0f; }

.text_important_vermillion {
  color: #e84e0f !important; }

.text_super_vermillion {
  color: #e84e0f !important; }
  .text_super_vermillion:hover, .text_super_vermillion:active, .text_super_vermillion:focus {
    color: #e84e0f !important; }

.text_marigold-two {
  color: #F79E09; }

.text_important_marigold-two {
  color: #F79E09 !important; }

.text_super_marigold-two {
  color: #F79E09 !important; }
  .text_super_marigold-two:hover, .text_super_marigold-two:active, .text_super_marigold-two:focus {
    color: #F79E09 !important; }

.text_vermillion-two {
  color: #E84E0F; }

.text_important_vermillion-two {
  color: #E84E0F !important; }

.text_super_vermillion-two {
  color: #E84E0F !important; }
  .text_super_vermillion-two:hover, .text_super_vermillion-two:active, .text_super_vermillion-two:focus {
    color: #E84E0F !important; }

.text_violet {
  color: #b400c8; }

.text_important_violet {
  color: #b400c8 !important; }

.text_super_violet {
  color: #b400c8 !important; }
  .text_super_violet:hover, .text_super_violet:active, .text_super_violet:focus {
    color: #b400c8 !important; }

.text_violet-two {
  color: #a83765; }

.text_important_violet-two {
  color: #a83765 !important; }

.text_super_violet-two {
  color: #a83765 !important; }
  .text_super_violet-two:hover, .text_super_violet-two:active, .text_super_violet-two:focus {
    color: #a83765 !important; }

.text_border-gray {
  color: #dbdbdb; }

.text_important_border-gray {
  color: #dbdbdb !important; }

.text_super_border-gray {
  color: #dbdbdb !important; }
  .text_super_border-gray:hover, .text_super_border-gray:active, .text_super_border-gray:focus {
    color: #dbdbdb !important; }

.text_greyish-brown {
  color: #454545; }

.text_important_greyish-brown {
  color: #454545 !important; }

.text_super_greyish-brown {
  color: #454545 !important; }
  .text_super_greyish-brown:hover, .text_super_greyish-brown:active, .text_super_greyish-brown:focus {
    color: #454545 !important; }

.text_pinkish-grey {
  color: #d0d0d0; }

.text_important_pinkish-grey {
  color: #d0d0d0 !important; }

.text_super_pinkish-grey {
  color: #d0d0d0 !important; }
  .text_super_pinkish-grey:hover, .text_super_pinkish-grey:active, .text_super_pinkish-grey:focus {
    color: #d0d0d0 !important; }

.text_input-shadow {
  color: #6e6868; }

.text_important_input-shadow {
  color: #6e6868 !important; }

.text_super_input-shadow {
  color: #6e6868 !important; }
  .text_super_input-shadow:hover, .text_super_input-shadow:active, .text_super_input-shadow:focus {
    color: #6e6868 !important; }

.text_code-background {
  color: rgba(255, 255, 255, 0.4); }

.text_important_code-background {
  color: rgba(255, 255, 255, 0.4) !important; }

.text_super_code-background {
  color: rgba(255, 255, 255, 0.4) !important; }
  .text_super_code-background:hover, .text_super_code-background:active, .text_super_code-background:focus {
    color: rgba(255, 255, 255, 0.4) !important; }

.text_card-divider {
  color: rgba(255, 255, 255, 0.3); }

.text_important_card-divider {
  color: rgba(255, 255, 255, 0.3) !important; }

.text_super_card-divider {
  color: rgba(255, 255, 255, 0.3) !important; }
  .text_super_card-divider:hover, .text_super_card-divider:active, .text_super_card-divider:focus {
    color: rgba(255, 255, 255, 0.3) !important; }

.text_box-shadow {
  color: rgba(0, 0, 0, 0.1); }

.text_important_box-shadow {
  color: rgba(0, 0, 0, 0.1) !important; }

.text_super_box-shadow {
  color: rgba(0, 0, 0, 0.1) !important; }
  .text_super_box-shadow:hover, .text_super_box-shadow:active, .text_super_box-shadow:focus {
    color: rgba(0, 0, 0, 0.1) !important; }

.text_red-brown {
  color: #6f2d13; }

.text_important_red-brown {
  color: #6f2d13 !important; }

.text_super_red-brown {
  color: #6f2d13 !important; }
  .text_super_red-brown:hover, .text_super_red-brown:active, .text_super_red-brown:focus {
    color: #6f2d13 !important; }

/* -------- END COLOR VARIANTS --------- */
/* Generico hover sui bottoni dello slider */
.swiper-container .swiper-button-prev:not(.swiper-button-disabled), .swiper-container .swiper-button-next:not(.swiper-button-disabled) {
  transition: all 0.1s ease-in; }
  .swiper-container .swiper-button-prev:not(.swiper-button-disabled):hover, .swiper-container .swiper-button-next:not(.swiper-button-disabled):hover {
    transform: scale(1.1); }

/* Scroll slider */
/* width */
::-webkit-scrollbar {
  width: 10px; }

/* Track */
::-webkit-scrollbar-track {
  background: #f1f1f1; }

/* Handle */
::-webkit-scrollbar-thumb {
  background: #888; }

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #555; }

.dialog::-webkit-scrollbar {
  width: 1px; }

.support-widget-container {
  position: relative;
  z-index: 999;
  margin: 0 auto;
  max-width: 1200px; }

.support-widget {
  position: fixed;
  right: 0;
  bottom: 0;
  width: 100%;
  box-shadow: 0px -4px 20px 10px rgba(0, 0, 0, 0.12);
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  border-bottom-left-radius: 8px;
  background-color: #eeeeee; }
  .support-widget__header {
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    padding: 15px 20px;
    border-bottom: 1px solid #eeeeee;
    position: relative;
    background-color: #ffffff; }
    .support-widget__header > * {
      display: inline-block; }
    .support-widget__header img.logo {
      width: 35px;
      margin-right: 10px; }
    .support-widget__header h2 {
      font-size: 18px;
      color: #e84e0f;
      font-weight: bold;
      margin: 0;
      line-height: 35px;
      vertical-align: middle; }
    .support-widget__header a {
      width: 40px;
      height: 40px;
      right: 10px;
      position: absolute; }
  .support-widget .tabs-container .tab-panel {
    padding: 0 20px;
    min-height: 350px; }
    .support-widget .tabs-container .tab-panel > .title {
      font-size: 18px;
      font-weight: bold;
      line-height: 1.22;
      letter-spacing: -0.9px;
      margin: 0 0 20px; }
    .support-widget .tabs-container .tab-panel .form {
      margin: 0; }
    .support-widget .tabs-container .tab-panel .form-group label {
      font-size: 18px;
      margin-bottom: 10px;
      font-weight: normal;
      letter-spacing: -1px; }
    .support-widget .tabs-container .tab-panel .small {
      font-size: 14px;
      line-height: 1.36;
      letter-spacing: -0.8px; }
  .support-widget .tabs-container .button-container {
    padding-bottom: 40px; }
    .support-widget .tabs-container .button-container .btn.btn-rectangle {
      background-color: #005ca9 !important; }
  .support-widget .tabs-container .tab-panel[aria-hidden="true"] {
    display: none; }
  .support-widget ul.tabs-list {
    padding: 0;
    margin-bottom: 20px;
    display: flex; }
    .support-widget ul.tabs-list > li {
      display: inline-flex;
      width: 100%;
      border: 0;
      margin: 0;
      padding: 0;
      text-align: center; }
      .support-widget ul.tabs-list > li > a {
        display: inline-block;
        width: 100%;
        font-size: 18px;
        letter-spacing: -1.2px;
        color: #373737;
        line-height: 58px;
        position: relative;
        text-decoration: none; }
      .support-widget ul.tabs-list > li > a[aria-selected="true"] {
        font-weight: bold;
        background-color: #ffffff; }
        .support-widget ul.tabs-list > li > a[aria-selected="true"]::after {
          content: '';
          display: inline-block;
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          height: 4px;
          background-image: linear-gradient(89deg, #00a8b0, #005ca9); }
      .support-widget ul.tabs-list > li:last-child > a[aria-selected="true"]::after {
        background-image: linear-gradient(89deg, #fdc300, #e84e0f); }
  @media (min-width: 1200px) {
    .support-widget {
      position: absolute;
      width: 374px;
      bottom: -80px; } }

/* Solo per funnel */
.funnel {
  color: #8c8c8c;
  /* Sotto 1200px */ }
  .funnel .btn {
    border: 0; }
    .funnel .btn.blank {
      line-height: 55px;
      background: transparent !important;
      color: #e84e0f !important;
      margin: 0;
      width: auto;
      padding: 0; }
  .funnel .form {
    margin-top: 30px; }
    .funnel .form sub {
      display: block;
      padding-top: 14px;
      font-size: 16px;
      text-align: right; }
      .funnel .form sub a {
        color: #e84e0f;
        font-weight: bold; }
    .funnel .form label {
      font-size: 18px;
      letter-spacing: -1px;
      font-weight: normal; }
      .funnel .form label.strong {
        font-weight: bold; }
    .funnel .form legend {
      border: 0; }
    .funnel .form input[type="text"], .funnel .form input[type="date"], .funnel .form select {
      border-radius: 4px;
      background-color: #ffffff;
      border: solid 1px #d0d0d0;
      height: 55px;
      line-height: 55px;
      padding: 0 20px;
      box-shadow: none;
      font-size: 18px;
      font-weight: bold;
      letter-spacing: -1px;
      color: #373737;
      -webkit-appearance: none;
      -ms-appearance: none;
      -moz-appearance: none;
      appearance: none; }
      .funnel .form input[type="text"]::-ms-expand, .funnel .form input[type="date"]::-ms-expand, .funnel .form select::-ms-expand {
        display: none; }
      .funnel .form input[type="text"]::-ms-clear, .funnel .form input[type="date"]::-ms-clear, .funnel .form select::-ms-clear {
        display: none; }
      .funnel .form input[type="text"]::placeholder, .funnel .form input[type="date"]::placeholder, .funnel .form select::placeholder {
        font-size: 18px;
        letter-spacing: -1px;
        color: #8e8e8e; }
    .funnel .form input[type="date"] {
      -webkit-appearance: none;
      -moz-appearance: none; }
      .funnel .form input[type="date"]::-webkit-inner-spin-button {
        display: none;
        -webkit-appearance: none;
        -moz-appearance: none; }
      .funnel .form input[type="date"]::-webkit-calendar-picker-indicator {
        background-color: transparent;
        opacity: .7;
        color: #000;
        margin-right: -10px; }
    .funnel .form input[readonly] {
      background-color: #eeeeee;
      border: 0; }
    .funnel .form select[readonly] {
      background-color: #eeeeee;
      border: 0; }
    .funnel .form select {
      padding-right: 35px; }
    .funnel .form .select-wrapper {
      display: block;
      position: relative; }
      .funnel .form .select-wrapper::after {
        content: " ";
        display: inline-block;
        position: absolute;
        opacity: .7;
        top: 50%;
        width: 8px;
        height: 8px;
        border-right: 2px solid rgba(0, 0, 0, 0.9);
        border-top: 2px solid rgba(0, 0, 0, 0.9);
        transform: rotate(135deg);
        margin-top: -4px;
        right: 15px; }
      .funnel .form .select-wrapper input {
        padding-right: 40px; }
    .funnel .form .error input, .funnel .form .error select {
      color: #ff4646;
      border-color: #ff4646; }
    .funnel .form .form-group {
      margin-bottom: 44px; }
      .funnel .form .form-group .form-group {
        margin-bottom: 0; }
      .funnel .form .form-group.form-group-header {
        margin: 0; }
  .funnel .content_wrap {
    max-width: 1200px;
    padding: 0;
    margin: 0 auto; }
  .funnel .dialog_body_content {
    max-width: 1200px;
    margin: 0 auto 30px; }
  .funnel .content_wrap_sub {
    max-width: 788px;
    margin-left: 0; }
  .funnel .btn {
    font-size: 20px;
    font-weight: bold;
    min-width: 197px;
    height: 55px;
    margin-top: 28px;
    padding-top: 13px;
    background-color: #e84e0f !important;
    color: #ffffff !important; }
  .funnel .radio-container .form-check,
  .funnel .checkbox-container .form-check {
    display: inline-block; 
    margin-top: 10px;
  }
  .funnel .radio-container .info,
  .funnel .checkbox-container .info {
    padding: 0 0 20px; }
  .funnel .form-check-label {
    font-size: 18px;
    letter-spacing: -1px;
    font-weight: normal;
    padding: 0 10px 0 5px;
    position: relative;
    top: -8px; }
    .funnel .form-check-label.strong {
      font-weight: bold; }
    .funnel .form-check-label.small {
      font-size: 13px;
      letter-spacing: -0.7px;
      top: 0; }
      .funnel .form-check-label.small .radiomark,
      .funnel .form-check-label.small .checkmark {
        width: 20px;
        height: 20px;
        top: 5px; }
    .funnel .form-check-label.medium {
      font-size: 18px;
      letter-spacing: -0.9px;
      top: 0; }
      .funnel .form-check-label.medium .radiomark,
      .funnel .form-check-label.medium .checkmark {
        width: 25px;
        height: 25px;
        top: 6px; }
  .funnel .form-check-input {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%; }
    .funnel .form-check-input:checked ~ .radiomark,
    .funnel .form-check-input:checked ~ .checkmark {
      background-color: #e84e0f;
      border: 2px solid #e84e0f;
      box-shadow: 0px 2px 5px 0px #b4b4b4;
      background-image: url(../checkwhite);
      background-position: center center;
      background-repeat: no-repeat;
      background-size: 120%; }
      .funnel .form-check-input:checked ~ .radiomark.white,
      .funnel .form-check-input:checked ~ .checkmark.white {
        background-color: transparent;
        border-color: #ffffff;
        box-shadow: none; }
      .funnel .form-check-input:checked ~ .radiomark.fill-white,
      .funnel .form-check-input:checked ~ .checkmark.fill-white {
        background-color: white;
        background-image: url(../assets/funnel/images/check-vermillion.svg); }
  .funnel .icon-check {
    background-image: url(../assets/funnel/images/check.svg);
    display: inline-block;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    width: 22px;
    height: 22px;
    margin-left: 10px;
    border-radius: 50%;
    cursor: pointer; }
    .funnel .icon-check.green {
      background-color: #6fcc75; }
    .funnel .icon-check.white {
      background-color: transparent;
      background-image: url(../assets/funnel/images/check-positive.svg);
      box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3); }
  .funnel .icon-luce {
    background-image: url(../assets/funnel/images/check.svg);
    display: inline-block;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    width: 22px;
    height: 22px;
    margin-left: 10px;
    border-radius: 50%;
    cursor: pointer; }
    .funnel .icon-luce.green {
      background-color: #6fcc75; }
  .funnel .radiomark,
  .funnel .checkmark {
    border: 2px #373737 solid;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: inline-block;
    position: relative;
    top: 8px;
    margin-right: 8px;
    transition: all .1s; }
    .funnel .radiomark.white,
    .funnel .checkmark.white {
      background-color: transparent;
      border-color: #ffffff;
      box-shadow: none; }
  .funnel .peacock .form-check-input:checked ~ .radiomark,
  .funnel .peacock .form-check-input:checked ~ .checkmark,
  .funnel .theme_peacock-blue .form-check-input:checked ~ .radiomark,
  .funnel .theme_peacock-blue .form-check-input:checked ~ .checkmark {
    background-image: url(../assets/funnel/images/check-peacock.svg); }
  .funnel .violet .form-check-input:checked ~ .radiomark,
  .funnel .violet .form-check-input:checked ~ .checkmark,
  .funnel .theme_violet .form-check-input:checked ~ .radiomark,
  .funnel .theme_violet .form-check-input:checked ~ .checkmark {
    background-image: url(../assets/funnel/images/check-violet.svg); }
  .funnel .step2-swiper-wrapper {
    margin: 0 auto;
    max-width: 620px;
    position: relative;
    padding: 40px 0;
    overflow: hidden; }
  .funnel .swiper-container {
    width: 100%;
    height: 100%;
    position: initial;
    padding: 0 20px 0;
    overflow: visible; }
    .funnel .swiper-container .swiper-slide {
      width: auto; }
      .funnel .swiper-container .swiper-slide .scheda {
        transform: rotate(0deg) scale(0.8, 0.8);
        opacity: 0; }
      .funnel .swiper-container .swiper-slide.swiper-slide-visible .scheda {
        transform: rotate(0deg) scale(1, 1);
        opacity: 1; }
      .funnel .swiper-container .swiper-slide .scheda {
        width: 268px;
        height: 293px;
        transition: all 300ms linear;
        box-shadow: none;
        border: dashed 2px #8e8e8e;
        border-radius: 10px;
        position: relative;
        margin-bottom: 60px; }
        .funnel .swiper-container .swiper-slide .scheda > img {
          max-height: 170px;
          margin: -70px auto -20px;
          position: relative;
          z-index: 3; }
        .funnel .swiper-container .swiper-slide .scheda .desc {
          margin-top: 20px; }
        .funnel .swiper-container .swiper-slide .scheda .advert {
          font-weight: bold;
          color: #e84e0f; }
        .funnel .swiper-container .swiper-slide .scheda.active {
          box-shadow: 0 7px 16px 0px rgba(0, 0, 0, 0.2);
          border-width: 0; }
          .funnel .swiper-container .swiper-slide .scheda.active::before {
            display: block;
            position: absolute;
            top: 0;
            background-image: linear-gradient(226deg, #fdc300, #e84e0f);
            left: 0;
            width: 100%;
            height: 10px;
            content: " ";
            z-index: 2;
            border-radius: 10px 10px 0 0; }
        .funnel .swiper-container .swiper-slide .scheda.promo::after {
          display: inline-block;
          width: 70px;
          height: 70px;
          line-height: 70px;
          position: absolute;
          font-size: 14px;
          content: 'PROMO';
          top: -35px;
          right: -33px;
          background-image: url(../assets/funnel/images/promo.svg);
          background-repeat: no-repeat;
          background-size: contain;
          font-weight: 600;
          color: #ffffff;
          letter-spacing: -0.778px;
          text-align: center;
          z-index: 3;
          transition: all 300ms linear; }
        .funnel .swiper-container .swiper-slide .scheda.promo.active::after {
          right: -31px;
          top: -33px; }
        .funnel .swiper-container .swiper-slide .scheda .selection_wrap {
          position: absolute;
          bottom: -63px;
          left: 76px; }
          .funnel .swiper-container .swiper-slide .scheda .selection_wrap label {
            font-weight: bold;
            font-size: 16px; }
        .funnel .swiper-container .swiper-slide .scheda aside {
          text-align: center; }
        .funnel .swiper-container .swiper-slide .scheda .oldprice {
          font-weight: bold;
          letter-spacing: -0.8px;
          text-decoration: line-through;
          color: #8e8e8e; }
        .funnel .swiper-container .swiper-slide .scheda .strong {
          font-size: 32px;
          font-weight: bold;
          letter-spacing: -1.6px;
          line-height: 1; }
        .funnel .swiper-container .swiper-slide .scheda .sub {
          font-size: 16px;
          font-family: "Montserrat-Medium";
          letter-spacing: -0.4px; }
        .funnel .swiper-container .swiper-slide .scheda .more {
          margin-top: 10px;
          font-size: 14px;
          line-height: normal;
          letter-spacing: -0.7px; }
          .funnel .swiper-container .swiper-slide .scheda .more a {
            color: #454545; }
          .funnel .swiper-container .swiper-slide .scheda .more .img {
            margin-left: 5px; }
      .funnel .swiper-container .swiper-slide .extra-options {
        opacity: 0;
        transform: scale(0.8);
        overflow: hidden;
        transition: transform 250ms linear, opacity 250ms linear, max-height 250ms linear;
        max-height: 0; }
        .funnel .swiper-container .swiper-slide .extra-options .form-check {
          padding-top: 30px; }
          .funnel .swiper-container .swiper-slide .extra-options .form-check:first-child {
            padding-top: 40px; }
        .funnel .swiper-container .swiper-slide .extra-options .strong {
          letter-spacing: -1.3px;
          font-size: 24px; }
        .funnel .swiper-container .swiper-slide .extra-options .description {
          letter-spacing: -1px;
          font-size: 18px;
          padding-left: 50px;
          line-height: normal; }
      .funnel .swiper-container .swiper-slide.swiper-slide-visible .scheda.active ~ .extra-options {
        opacity: 1;
        transform: scale(1);
        max-height: 800px;
        margin-top: 40px; }
    .funnel .swiper-container .swiper-button-prev, .funnel .swiper-container .swiper-button-next {
      z-index: 0;
      background-image: none;
      bottom: 49px;
      top: 100px;
      width: 52px;
      height: 52px;
      border-radius: 50%;
      background-color: #ffffff;
      box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.15);
      padding: 6px 7px;
      position: absolute; }
    .funnel .swiper-container .swiper-button-prev {
      left: -80px; }
    .funnel .swiper-container .swiper-button-next {
      right: -80px; }
    .funnel .swiper-container .swiper-pagination {
      display: none; }
    .funnel .swiper-container .swiper-pagination-bullets .swiper-pagination-bullet {
      width: 12px;
      height: 12px;
      background-color: #ffffff; }
    .funnel .swiper-container .swiper-pagination-bullets .swiper-pagination-bullet-active {
      background-color: #ffffff;
      border: 2px solid #ffffff; }
  .funnel .step2-swiper-wrapper .swiper-button-prev, .funnel .step2-swiper-wrapper .swiper-button-next {
    z-index: 2;
    background-image: none;
    bottom: 49px;
    top: 300px;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background-color: #ffffff;
    box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.15);
    padding: 6px 7px;
    position: absolute;
    display: none; }
    @media (min-width: 810px) {
      .funnel .step2-swiper-wrapper .swiper-button-prev, .funnel .step2-swiper-wrapper .swiper-button-next {
        display: block; } }
  @media (max-width: 1200px) {
    .funnel .content_wrap_sub {
      max-width: none;
      margin-left: 0; } }
  .funnel .strong {
    font-weight: bold; }
  .funnel .radio-container__list {
    list-style-type: none;
    padding-left: 0;
    border-top: 1px solid #eeeeee; }
    .funnel .radio-container__list li {
      border-bottom: 1px solid #eeeeee;
      padding: 18px 10px 8px;
      position: relative; }
      .funnel .radio-container__list li label {
        font-weight: bold;
        letter-spacing: -1.3px;
        color: #8e8e8e;
        font-size: 24px; }
      .funnel .radio-container__list li::after {
        transition: opacity 100ms linear;
        display: inline-block;
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        content: '';
        width: 4px;
        background-color: transparent;
        opacity: 0; }
      .funnel .radio-container__list li.active label {
        color: #e84e0f; }
      .funnel .radio-container__list li.active::after {
        background-color: #e84e0f;
        opacity: 1; }
  .funnel .attachs-container__item {
    background-color: #eee;
    height: 100px;
    display: flex;
    align-items: center;
    margin: 15px 0;
    border-radius: 10px;
    background-image: url(../assets/funnel/images/download-orange.svg);
    background-repeat: no-repeat;
    background-size: 28px 34px;
    background-position: 90% 50%; }
  .funnel .attachs-container__link {
    display: block;
    margin-right: 80px;
    padding: 24px;
    font-size: 20px;
    letter-spacing: -1.4px;
    color: #373737; }
  .funnel .panel.panel--default {
    background-color: #eeeeee;
    padding: 20px 30px;
    border: 0;
    margin-bottom: 50px; }

    .funnel .panel--default--vermillion {
      color: #373737;
      padding: 0px;
      border: 0;
      margin-bottom: 50px; 
      border-bottom-left-radius: 25px;
      border-bottom-right-radius: 25px;
      border-top-right-radius: 10px;
      border-top-left-radius: 10px;
     }

     .funnel_header .step li {
      display: inline-block;
      height: 52px;
      position: relative;
  }

     .funnel_header .step li a {
      display: inline-block;
      height: 52px;
      font-size: 14px;
      font-weight: bold;
      font-style: normal;
      font-stretch: normal;
      line-height: normal;
      letter-spacing: normal;
      color: #454545;
      padding-right: 10px;
  }
     

    .funnel .panel.panel--default .title {
      margin: 0 0 25px;
      padding: 0; }
      .funnel .panel.panel--default .title.info {
        padding-left: 46px;
        position: relative; }
        .funnel .panel.panel--default .title.info:after {
          display: inline-block;
          content: '';
          position: absolute;
          width: 29px;
          height: 29px;
          top: 0;
          left: 0;
          background-image: url(../assets/funnel/images/info-vermillion.svg);
          background-position: center center;
          background-repeat: no-repeat;
          background-size: contain; }
    .funnel .panel.panel--default fieldset.radio-container {
      margin-top: 30px; }
      .funnel .panel.panel--default fieldset.radio-container legend {
        padding: 0;
        font-size: 18px;
        letter-spacing: -1px;
        float: left; }
    .funnel .panel.panel--default .form-check-label {
      font-size: 16px;
      font-weight: bold;
      letter-spacing: -0.9px; }
  .funnel .divider--spacer {
    margin: 50px 0;
    background-color: #eee; }
  .funnel .eur {
    font-family: 'Montserrat-Medium';
    letter-spacing: normal; }

@media (min-width: 1024px) {
  .funnel_header_spacer {
    height: 170px; } }

.funnel_header_scroll_content {
  /* height: calc(100vh - 171px); */
  padding-bottom: 30px;
  /* Sotto 1200px */ 
}
/* .funnel_header_scroll_content.has_footer {
  height: calc(100vh - 171px - 99px); 
} */
@media (max-width: 1200px) {
  .funnel_header_scroll_content {
    padding: 0 30px 30px;
    /* height: calc(100vh - 171px - 68px);  */
  }
  /* .funnel_header_scroll_content.has_footer {
    height: calc(100vh - 171px - 68px); 
  }  */
}
@media (max-width: 576px) {
  .funnel_header_scroll_content {
    padding: 0 20px 20px; 
  }
}
@media (min-width: 1024px) {
/*   .funnel_header_scroll_content {
    overflow-x: hidden;
    overflow-y: auto; 
  } */
  .funnel_header_scroll_content::-webkit-scrollbar {
    width: 10px; 
  }
  .funnel_header_scroll_content::-webkit-scrollbar-track, .funnel_header_scroll_content::-webkit-scrollbar-thumb {
    width: 10px;
  }
}
.funnel_header {
  box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.12);
  background: #ffffff;
  height: 170px;
  top: 0;
  width: 100%;
  z-index: 3;
  /* Sotto 1200px */
  /* Sotto 577px */ }
  @media (min-width: 1024px) {
    .funnel_header {
      position: fixed; } }
  .funnel_header .content_wrap {
    position: relative; }
  .funnel_header .hd_wrap {
    position: relative; 
    width: 95%;
    margin: 0 auto
  }
  .funnel_header .hd_top {
    /* height: 117px; */
    height: 80px;
    position: relative; }
    .funnel_header .hd_top .logo {
      position: absolute;
      left: 0;
      top: 21px; }
      .funnel_header .hd_top .logo img {
        width: 113px; }
    .funnel_header .hd_top .close-button {
      position: absolute;
      right: 0;
      top: 29px;
      font-size: 16px;
      font-weight: bold;
      font-style: normal;
      font-stretch: normal;
      line-height: normal;
      letter-spacing: -0.9px;
      text-align: right;
      padding: 11px 30px;
      color: #333333; }
    .funnel_header .hd_top .close-button:hover {
      text-decoration: none
    }
  .funnel_header .step {
    height: 52px; }
    .funnel_header .step ul {
      margin: 0;
      list-style: none;
      padding: 0; }
    .funnel_header .step li {
      display: inline-block;
      height: 52px;
      position: relative; }
      /*
      .funnel_header .step li.active:after{
        content: " ";
        position: absolute;
        display: block;
        bottom: 0;
        left: 0;
        height: 4px;
        width: 100%;
        background-image: linear-gradient(89deg, #e84e0f, #fdc300);  
      }
      */
      .funnel_header .step li:hover:after {
        content: " ";
        position: absolute;
        display: block;
        bottom: 0;
        left: 0;
        height: 4px;
        width: 100%;
      }
      .funnel_header .step li a {
        display: inline-block;
        height: 52px;
        font-size: 14px;
        font-weight: bold;
        font-style: normal;
        font-stretch: normal;
        line-height: normal;
        letter-spacing: normal;
        color: #454545;
        padding-right: 10px; 
      }
      .funnel_header .step li .in-progress {
        color: #EEEEEE;
      }
      .funnel_header .step li .bullet {
        background: #EEEEEE; 
        width: 23px;
        height: 23px;
        margin-right: 6px;
        display: inline-block;
        border-radius: 50%; }
      .funnel_header .step li.valid{
        color: #3d3d3d;
      }
      .funnel_header .step li.valid .bullet {
        background: #00a8ae; 
        color: red !important;
      }
      .funnel_header .step li.active {
        color: #E84E0F;
      }
      .funnel_header .step li.active .bullet {
        background-color: #E84E0F;
      }
  @media (max-width: 1200px) {
    #text {
      margin-right: 30px;
    }
    .funnel_header .hd_top .logo {
      left: 30px; }
    .funnel_header .hd_top .close-button {
      right: 15px; }
    .funnel_header .step {
      overflow-x: scroll;
      overflow-y: hidden;
      -ms-overflow-style: none; }
      .funnel_header .step ul {
        width: 840px;
        margin-left: 30px; }
      .funnel_header .step::-webkit-scrollbar {
        width: 1px; }
      .funnel_header .step::-webkit-scrollbar-thumb, .funnel_header .step::-webkit-scrollbar-track-piece {
        display: none; }
      .funnel_header .step::-webkit-scrollbar-track, .funnel_header .step::-webkit-scrollbar-thumb {
        display: none;
        width: 0;
        height: 0; } }
  @media (max-width: 576px) {
    .funnel_header .hd_top .logo {
      left: 20px; }
    .funnel_header .hd_top .close-button {
      right: 5px; }
      .funnel_header .hd_top .close-button span {
        display: none; }
    .funnel_header .step ul {
      margin-left: 20px; } 
    
      .summary_cart {
        bottom: 68px;
        top: auto !important;
      }

/*       p.consulta-documentazione {
        margin-bottom: 0px !important;
      } */
  }

.summary_cart {
  position: fixed;
  top: 0;
  z-index: 10; }
  .summary_cart .content_wrap {
    position: relative; }
  .summary_cart .cart {
    width: 374px;
    position: absolute;
    top: 108px;
    right: 0;
    box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.12);
    background: #fff;
    border-radius: 30px 30px 0 30px;
    overflow: hidden; }
    .summary_cart .cart .content {
      background-color: #fcfcfc;
      overflow-y: auto;
      max-height: 82.5vh;
      padding-bottom: 80px;
      -ms-overflow-style: none; }
      .summary_cart .cart .content::-webkit-scrollbar, .summary_cart .cart .content::-webkit-scrollbar-thumb, .summary_cart .cart .content::-webkit-scrollbar-track-piece, .summary_cart .cart .content::-webkit-scrollbar-track {
        display: none; }
      @media (min-width: 1200px) {
        .summary_cart .cart .content {
          overflow-y: auto;
          max-height: calc(100vh - 300px);
          padding-bottom: 0; } }
      .summary_cart .cart .content .accordion-body {
        transition: all .2s ease-in-out;
        opacity: 1; }
      .summary_cart .cart .content .accordion-body[aria-hidden=true] {
        opacity: 0;
        height: 0;
        overflow: hidden; }
  /* .summary_cart .header {
    height: 107px;
    border-radius: 8px 8px 0 0;
    padding: 0 25px;
    position: relative;
    overflow: hidden; 
  } */
    .summary_cart .header p {
      font-size: 14px;
      font-weight: bold;
      position: absolute;
      top: 28px;
      left: 25px; }
    .summary_cart .header p.info {
      top: 30px;
      left: 320px; 
      background-color: #E84E0F;  
      border-radius: 50%;
      padding: 5px
    }
    .summary_cart .header h1 {
      font-size: 32px;
      font-weight: bold;
      line-height: 1.06;
      letter-spacing: -1.8px;
      position: absolute;
      top: 50px;
      left: 25px;
      margin: 0; }
    .summary_cart .header.peacock {
      color: #ffffff;
      background-image: linear-gradient(254deg, #008bff, #005ca9); }
    .summary_cart .header.vermillion {
      color: #ffffff;
      background-image: linear-gradient(254deg, #fdc300, #e84e0f); }
    .summary_cart .header.violet {
      color: #ffffff;
      background-image: linear-gradient(254deg, #fdc300, #b400c8); }
  .summary_cart h2 {
    font-size: 12px;
    border-top: 1px solid #f4f4f4;
    font-weight: bold;
    letter-spacing: 0.4px;
    color: #462020;
    height: 38px;
    line-height: 38px;
    margin: 0;
    padding: 0 25px;
    /* border-top: 1px #eeeeee solid;
    border-bottom: 1px #eeeeee solid; */
    background-color: #fff;
    position: relative; }
    .summary_cart h2[aria-expanded] {
      cursor: pointer; }
    .summary_cart h2[aria-expanded]::after {
      content: " ";
      display: inline-block;
      position: absolute;
      opacity: .7;
      top: 50%;
      width: 8px;
      height: 8px;
      border-right: 2px solid rgba(0, 0, 0, 0.9);
      border-top: 2px solid rgba(0, 0, 0, 0.9);
      transform: rotate(135deg);
      margin-top: -4px;
      right: 15px;
      transition: transform .15s linear; }
    .summary_cart h2[aria-expanded=true]::after {
      transform: rotate(-45deg); }
  .summary_cart .block:first-child h2 {
    border: 0; }
  .summary_cart .block .radio-container, .summary_cart .block .checkbox-container {
    margin-left: 0 !important; }
    .summary_cart .block .radio-container .form-check, .summary_cart .block .checkbox-container .form-check {
      margin-left: 0 !important; }
      .summary_cart .block .radio-container .form-check .radiomark, .summary_cart .block .radio-container .form-check .checkmark, .summary_cart .block .checkbox-container .form-check .radiomark, .summary_cart .block .checkbox-container .form-check .checkmark {
        width: 25px;
        height: 25px; }
      .summary_cart .block .radio-container .form-check label, .summary_cart .block .checkbox-container .form-check label {
        top: -2px;
        padding-left: 0; }
  .summary_cart .block .item {
    padding: 24px 28px 21px;
    font-size: 18px;
    font-weight: bold;
    font-style: normal;
    font-stretch: normal;
    line-height: normal;
    letter-spacing: -1px;
    color: #373737;
    display: table;
    height: 100%;
    width: 100%;
    border-bottom: 1px solid #eeeeee; }
    .summary_cart .block .item:last-child {
      border-bottom: 0; }
    .summary_cart .block .item .price {
      display: table-cell;
      vertical-align: middle;
      text-align: right; }
      .summary_cart .block .item .price .wrap {
        margin-left: auto;
        margin-right: 0; }
        .summary_cart .block .item .price .wrap div {
          margin-bottom: 6px; }
      .summary_cart .block .item .price aside {
        color: #e84e0f; }
      .summary_cart .block .item .price .code {
        font-weight: normal;
        font-size: 90%; }
      .summary_cart .block .item .price p.line {
        margin: 0 0 1px 0;
        font-size: 16px; }
      .summary_cart .block .item .price img.icon {
        margin: 0 0 0 3px;
        width: 14px; }
    .summary_cart .block .item .title {
      display: table-cell;
      vertical-align: middle;
      max-width: 175px;
      position: relative; }
      .summary_cart .block .item .title .icon {
        max-width: 24px;
        width: 100%;
        margin-right: 15px;
        position: absolute; }
        .summary_cart .block .item .title .icon--portrait {
          max-width: 20px; }
      .summary_cart .block .item .title div {
        margin-left: 43px; }
      .summary_cart .block .item .title aside {
        margin-left: 44px; }
    .summary_cart .block .item aside {
      font-size: 12px;
      color: #8e8e8e;
      font-weight: normal; }
    .summary_cart .block .item sub {
      font-size: 13px;
      font-weight: normal;
      font-style: normal;
      font-stretch: normal;
      line-height: normal;
      letter-spacing: -0.7px;
      color: #454545;
      bottom: 0; }
  @media (min-width: 1200px) {
    .summary_cart .open-cart, .summary_cart .call-me-back {
      display: none !important; } }
  @media (max-width: 1200px) {
    .summary_cart {
      position: fixed;
      z-index: 50;
      top: calc(100% - 68px);
      width: 100%;
      background: rgba(0, 0, 0, 0);
      transition: top 1s cubic-bezier(0.2, 1, 0.3, 1); }
      .summary_cart.open {
        top: 0 !important; }
        .summary_cart.open .open-cart {
          transform: rotate(180deg); }
        .summary_cart.open .cart {
          top: auto;
          /* bottom: -100vh; */
          /*border-radius: 8px 8px 0 0;*/
          margin-top: 98px;
          min-height: 90vh;
          /*box-shadow: 0 150px 10px #fff;*/ }
        .summary_cart.open .buttons {
          text-align: center; }
          .summary_cart.open .buttons .btn {
            display: inline-block;
            margin: 15px 25px 30px; }
      .summary_cart .call-me-back {
        background-image: linear-gradient(76deg, #00a8b0, #005ca9);
        margin: 10px auto 30px;
        display: block; }
      .summary_cart .open-cart {
        position: absolute;
        top: 22px;
        right: 18px;
        transition: transform 0.5s ease-out, -webkit-transform 0.5s ease-out; }
      .summary_cart .cart {
        position: absolute;
        transition: all .8s !important;
        width: 100%;
        left: 0;
        top: 0;
        box-shadow: 0px -4px 16px 0 rgb(0 0 0 / 10%);
        margin-top: 0px; }
      .summary_cart .header {
        height: 68px; }
        .summary_cart .header p {
          font-size: 14px;
          font-weight: normal;
          top: 15px; }
        .summary_cart .header h1 {
          font-size: 24px;
          top: 32px; } }

.step_heading {
  border-bottom: 1px #eeeeee solid;
  padding-top: 1px;
  padding-bottom: 20px; }
  .step_heading h1 {
    font-family: 'Karla';
    font-size: 35px;
    font-style: normal;
    font-weight: 700;
    line-height: 41px;
    letter-spacing: -2px;
    text-align: left;
    color: #E84E0F;
  }
.step_heading p {
  font-family: 'Karla';
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 19px;
  letter-spacing: 0px;
  text-align: left;
  color: #373737;
}
  @media (min-width: 1200px) {
    .step_heading h1,
    .step_heading p {
      max-width: 788px; } }
  @media (max-width: 1200px) {
    .step_heading h1 {
      font-size: 44px; }
    .step_heading p {
      font-size: 20px;
      letter-spacing: -0.8px; } }

.funnel_step {
  
  font-size: 16px;
  color: #373737; }
  .funnel_step a {
    color: #e84e0f; }
  .funnel_step .icon-info {
    background-image: url(../assets/funnel/images/info-dark.svg);
    display: inline-block;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    width: 18px;
    height: 18px;
    margin-left: 10px;
    cursor: pointer; }
  .funnel_step .subtext {
    text-align: right;
    font-size: 16px;
    letter-spacing: -1px;
    text-align: center;
    margin: 5px 0 -20px 0; }
    @media (max-width: 1200px) {
      .funnel_step .subtext {
        text-align: right; } }
    .funnel_step .subtext a {
      font-weight: bold; }
  .funnel_step .policy {
    padding: 20px 0 50px;
    border-bottom: 2px #eeeeee solid; }
    .funnel_step .policy .radio-container {
      margin-top: 30px; }
/*   .funnel_step .section {
     Rimuovo il bordo nella sezione del cross selling
      border-bottom: 1px #d8d8d8 solid;  } */
    .funnel_step .section--default {
      border-bottom: 0; }
    .funnel_step .section .title {
      margin: 40px 0 20px;
      font-size: 24px;
      font-weight: bold;
      letter-spacing: -1.3px;
      color: #373737;
      position: relative; }
    .funnel_step .section .icon-info {
      position: absolute;
      right: 5px;
      bottom: 4px; }
    .funnel_step .section .description {
      font-size: 18px;
      line-height: 1.39;
      letter-spacing: -1px;
      color: #373737; }
    .funnel_step .section--disclaimers p {
      font-size: 16px;
      line-height: 20px;
      letter-spacing: -0.9px;
      margin-bottom: 18px; }
  .funnel_step .contract_option {
    padding-bottom: 50px; }
    .funnel_step .contract_option .radio-container {
      margin-top: 30px; }
  .funnel_step .radio_tooltip {
    background-image: linear-gradient(265deg, #fdc300, #e84e0f);
    border-left: 3px #ffde00 solid;
    height: 0;
    opacity: 0;
    margin-top: 0;
    transition: all .8s;
    transform: translateY(60px);
    color: #ffffff;
    font-size: 18px;
    font-weight: bold; }
    .funnel_step .radio_tooltip.in-view {
      opacity: 1;
      height: 60px;
      margin-top: 7px;
      transform: translateY(0px); }
    .funnel_step .radio_tooltip:after {
      content: '';
      position: absolute;
      top: -7px;
      left: 14px;
      width: 0;
      height: 0;
      border: 7px solid transparent;
      border-bottom-color: #e84e0f;
      border-top: 0;
      margin-left: -4px;
      margin-bottom: -4px;
      transition: left .8s; }
      @media (max-width: 375px) {
        .funnel_step .radio_tooltip:after {
          display: none; } }
    .funnel_step .radio_tooltip.sel_opt_b:after {
      left: 154px; }
    .funnel_step .radio_tooltip .wrap {
      padding: 0 20px;
      height: 60px;
      line-height: 60px; }
    .funnel_step .radio_tooltip .large {
      font-size: 34px;
      font-weight: bold;
      vertical-align: top; }
      @media (max-width: 375px) {
        .funnel_step .radio_tooltip .large {
          font-size: 32px; } }
    .funnel_step .radio_tooltip .promo {
      margin-right: 20px;
      white-space: nowrap; }
      .funnel_step .radio_tooltip .promo span {
        display: inline-block; }
      .funnel_step .radio_tooltip .promo span:last-child {
        max-width: 55%;
        white-space: initial;
        line-height: 1.1;
        vertical-align: bottom;
        padding-bottom: 14px; }
        @media (max-width: 375px) {
          .funnel_step .radio_tooltip .promo span:last-child {
            font-size: 16px; } }
    .funnel_step .radio_tooltip .info_wrap {
      font-size: 16px;
      position: absolute;
      right: 20px;
      top: 0;
      height: 60px;
      line-height: 60px; }
  .funnel_step .check_offer .block {
    border-radius: 10px;
    box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.1);
    color: #ffffff;
    padding: 20px;
    margin: 50px auto; }
    .funnel_step .check_offer .block header h1 {
      font-size: 32px;
      font-weight: bold;
      letter-spacing: -1.6px;
      margin-top: 0; }
      .funnel_step .check_offer .block header h1 img {
        margin-top: -10px;
        margin-right: 8px; }
      .funnel_step .check_offer .block header h1 .img_unselected {
        display: none; }
    .funnel_step .check_offer .block header p {
      font-size: 16px;
      font-weight: normal;
      letter-spacing: -0.8px; }
    .funnel_step .check_offer .block footer {
      border-top: 1px rgba(255, 255, 255, 0.2) solid;
      padding: 14px 0 0;
      margin-bottom: -9px; }
      .funnel_step .check_offer .block footer .info_wrap {
        float: right;
        font-size: 14px;
        font-weight: normal;
        font-style: normal;
        font-stretch: normal;
        line-height: normal;
        letter-spacing: -0.7px;
        text-align: right;
        color: #ffffff;
        padding: 8px 0; }
        .funnel_step .check_offer .block footer .info_wrap img {
          margin-left: 5px; }
        .funnel_step .check_offer .block footer .info_wrap a {
          color: #ffffff;
          cursor: pointer; }
      .funnel_step .check_offer .block footer .selection_wrap {
        float: left; }
        .funnel_step .check_offer .block footer .selection_wrap .offergroup {
          margin: 0; }
          .funnel_step .check_offer .block footer .selection_wrap .offergroup > div label {
            font-size: 16px;
            font-weight: bold;
            font-style: normal;
            font-stretch: normal;
            line-height: normal;
            letter-spacing: -0.8px; }
          .funnel_step .check_offer .block footer .selection_wrap .offergroup .radiomark {
            width: 30px;
            height: 30px; }
    .funnel_step .check_offer .block.unselected {
      background: transparent !important;
      border: dashed 2px #8e8e8e;
      color: #373737; }
      .funnel_step .check_offer .block.unselected header .img {
        display: none; }
      .funnel_step .check_offer .block.unselected header .img_unselected {
        display: inline-block; }
      .funnel_step .check_offer .block.unselected footer {
        border-top: 1px #eeeeee solid; }
        .funnel_step .check_offer .block.unselected footer .info_wrap,
        .funnel_step .check_offer .block.unselected footer .info_wrap a {
          color: #454545; }
      .funnel_step .check_offer .block.unselected .form-check-label {
        color: #454545; }
      .funnel_step .check_offer .block.unselected .radiomark {
        border-color: #454545 !important; }
      .funnel_step .check_offer .block.unselected .btn-code {
        background-color: #e0e0e0; }
    .funnel_step .check_offer .block--default {
      border: 1px solid #d0d0d0;
      box-shadow: none;
      color: #373737; }
      .funnel_step .check_offer .block--default header h1,
      .funnel_step .check_offer .block--default header h2 {
        color: #e84e0f;
        letter-spacing: -1.3px;
        font-size: 24px;
        font-weight: bold;
        margin-top: 10px; }
      .funnel_step .check_offer .block--default header p {
        letter-spacing: -0.9px;
        color: #8e8e8e; }
      .funnel_step .check_offer .block--default header .box-price {
        padding-top: 26px;
        font-size: 32px;
        letter-spacing: -1.6px; }
        .funnel_step .check_offer .block--default header .box-price .sub {
          font-size: 16px;
          letter-spacing: -0.8px; }
      .funnel_step .check_offer .block--default footer {
        border-top: 1px solid #eeeeee;
        margin: 15px -20px -15px;
        padding: 14px 14px 0; }
    .funnel_step .check_offer .block--default ~ .block--default {
      margin-top: -38px; }
    .funnel_step .check_offer .block.vermillion, .funnel_step .check_offer .block.luce {
      background-image: linear-gradient(245deg, #fdc300, #e84e0f); }
      .funnel_step .check_offer .block.vermillion input:checked ~ .radiomark, .funnel_step .check_offer .block.luce input:checked ~ .radiomark {
        background-image: url(../assets/funnel/images/check-vermillion.svg); }
      .funnel_step .check_offer .block.vermillion .radiomark, .funnel_step .check_offer .block.luce .radiomark {
        border-color: #ffffff; }
    .funnel_step .check_offer .block.peacock, .funnel_step .check_offer .block.gas {
      background-image: linear-gradient(74deg, #005ca9, #008bff); }
      .funnel_step .check_offer .block.peacock .form-check-label, .funnel_step .check_offer .block.gas .form-check-label {
        color: #ffffff; }
      .funnel_step .check_offer .block.peacock .radiomark, .funnel_step .check_offer .block.gas .radiomark {
        border-color: #ffffff; }
      .funnel_step .check_offer .block.peacock.unselected .form-check-label, .funnel_step .check_offer .block.gas.unselected .form-check-label {
        color: #454545; }
      .funnel_step .check_offer .block.peacock.unselected .radiomark, .funnel_step .check_offer .block.gas.unselected .radiomark {
        border-color: #454545; }
    .funnel_step .check_offer .block.violet, .funnel_step .check_offer .block.dual {
      background-image: linear-gradient(245deg, #fdc300, #b400c8); }
      .funnel_step .check_offer .block.violet .radiomark, .funnel_step .check_offer .block.dual .radiomark {
        border-color: #ffffff; }
    .funnel_step .check_offer .block .offergroup {
      margin: 25px 3px; }
      .funnel_step .check_offer .block .offergroup .form-check-vertical-inline .form-check-label {
        display: block; }
      .funnel_step .check_offer .block .offergroup .form-check-vertical-inline .price {
        display: inline-block; }
      .funnel_step .check_offer .block .offergroup > div {
        padding-right: 30px; }
        .funnel_step .check_offer .block .offergroup > div label {
          font-size: 13px;
          font-weight: bold;
          font-style: normal;
          font-stretch: normal;
          line-height: normal;
          letter-spacing: -0.7px;
          color: #ffffff; }
        .funnel_step .check_offer .block .offergroup > div .radiomark {
          width: 20px;
          height: 20px;
          top: 5px; }
        .funnel_step .check_offer .block .offergroup > div input:checked ~ .radiomark {
          background-color: #ffffff;
          border: 2px solid #ffffff;
          box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2); }
        .funnel_step .check_offer .block .offergroup > div.form-check .price {
          margin-left: 30px; }
        .funnel_step .check_offer .block .offergroup > div .price {
          font-size: 24px;
          font-weight: bold;
          letter-spacing: -1.2px; }
          .funnel_step .check_offer .block .offergroup > div .price sub {
            font-size: 14px;
            letter-spacing: -0.7px;
            bottom: auto;
            display: inline; }
          .funnel_step .check_offer .block .offergroup > div .price .code {
            display: inline-block;
            margin-bottom: -5px; }
  @media (max-width: 1200px) {
    .funnel_step .section {
      margin-left: -30px;
      margin-right: -30px;
      padding-left: 30px;
      padding-right: 30px; } }
  @media (max-width: 576px) {
    .funnel_step .section {
      margin-left: -20px;
      margin-right: -20px;
      padding-left: 20px;
      padding-right: 20px; } }
  @media (max-width: 650px) {
    .funnel_step .radio_tooltip .info_wrap span {
      display: none; } }
  .funnel_step .funnel_step__completed {
    margin-top: 30px; }
    .funnel_step .funnel_step__completed p {
      line-height: 1.39;
      letter-spacing: -1px;
      color: #373737;
      font-size: 18px;
      margin-bottom: 30px; }
    .funnel_step .funnel_step__completed .primary {
      color: #e84e0f; }

/* .funnel_step_footer {
   Sotto 1200px } */
  .funnel_step_footer h2 {
    font-size: 24px;
    font-weight: bold;
    font-style: normal;
    font-stretch: normal;
    line-height: normal;
    letter-spacing: -1.2px;
    color: #373737;
    margin-top: 50px; }
  .funnel_step_footer .goahead {
    text-align: center;
    padding-bottom: 100px;
  }
    .funnel_step_footer .goahead .g-recaptcha {
      margin: 50px auto 5px;
      display: inline-block;
      width: auto; }
    @media (min-width: 1024px) {
      .funnel_step_footer .goahead {
        padding-bottom: 0; } }
    .funnel_step_footer .goahead a {
      color: #e84e0f;
      font-weight: bold;
      font-size: 18px;
      font-weight: bold;
      font-style: normal;
      font-stretch: normal;
      line-height: normal;
      letter-spacing: -0.9px; }
    .funnel_step_footer .goahead .or {
      display: block;
      margin: 26px auto 20px; }
  .funnel_step_footer .btn.continue {
    padding-top: 0;
    padding-bottom: 0;
    width: auto;
    line-height: 53px; }
    .funnel_step_footer .btn.continue.disabled {
      background-color: #d0d0d0 !important; }
    @media (min-width: 576px) {
      .funnel_step_footer .btn.continue {
        padding: 0 94px; } }
  .funnel_step_footer .swiper-container-horizontal-documents {
    overflow: hidden;
    position: relative !important;
    padding: 0; }
    .funnel_step_footer .swiper-container-horizontal-documents .swiper-pagination {
      display: block !important; }
      .funnel_step_footer .swiper-container-horizontal-documents .swiper-pagination .swiper-pagination-bullet:first-child:nth-last-child(1) {
        display: none; }
      .funnel_step_footer .swiper-container-horizontal-documents .swiper-pagination.swiper-pagination-bullets .swiper-pagination-bullet-active {
        background-color: #908989;
        border: 2px solid #cecece; }
      .funnel_step_footer .swiper-container-horizontal-documents .swiper-pagination.swiper-pagination-bullets .swiper-pagination-bullet {
        background-color: #ffffff;
        border: 2px solid #cecece; }
      @media (max-width: 576px) {
        .funnel_step_footer .swiper-container-horizontal-documents .swiper-pagination {
          display: none !important; } }
    @media (max-width: 576px) {
      .funnel_step_footer .swiper-container-horizontal-documents {
        padding: 0; }
        .funnel_step_footer .swiper-container-horizontal-documents .item.swiper-slide {
          min-width: 350px; } }
  .funnel_step_footer .documents {
    height: 120px;
    font-size: 16px;
    font-weight: normal;
    letter-spacing: -0.8px;
    text-align: center;
    color: #373737;
    margin: 45px auto 38px; }
    .funnel_step_footer .documents img {
      width: 30px;
      height: 30px;
      margin: 30px auto 11px; }
    .funnel_step_footer .documents .item {
      height: 120px;
      /* width: calc(50% - 1px); */
      background-color: #f8f8f8;
      min-width: 374px;
      border-right: 2px #d0d0d0 solid; }
      .funnel_step_footer .documents .item:last-child {
        border-right: 0; }
    @media (max-width: 576px) {
      .funnel_step_footer .documents {
        height: auto; }
        .funnel_step_footer .documents.swiper-wrapper {
          display: block; }
        .funnel_step_footer .documents .item {
          border-right: 0 !important;
          border-left: 0 !important;
          float: none;
          width: 100%;
          border-bottom: 1px #d0d0d0 solid; }
          .funnel_step_footer .documents .item:last-child {
            border-bottom: 0; } }
  .funnel_step_footer .documents_list .documents {
    height: auto; }
    .funnel_step_footer .documents_list .documents .item {
      width: calc(50% - 1px);
      float: left;
      border-bottom: 2px #d0d0d0 solid;
      min-width: auto; }
      .funnel_step_footer .documents_list .documents .item:nth-last-child(2) {
        border-right: 0;
        border-bottom: 0; }
      .funnel_step_footer .documents_list .documents .item:nth-child(even) {
        border-right: 0; }
      .funnel_step_footer .documents_list .documents .item:nth-child(odd) {
        border-right: 2px #d0d0d0 solid; }
      .funnel_step_footer .documents_list .documents .item:last-child {
        border-right: 0;
        border-bottom: 0; }
    @media (max-width: 576px) {
      .funnel_step_footer .documents_list .documents .item {
        float: none;
        width: 100%; }
        .funnel_step_footer .documents_list .documents .item:nth-last-child(2) {
          border-right: 0;
          border-bottom: 2px #d0d0d0 solid; } }
  @media (min-width: 577px) {
    .funnel_step_footer .goahead .later a.btn {
      background: transparent !important;
      color: #e84e0f !important;
      margin: 0;
      width: auto;
      padding: 0; } }
  @media (max-width: 576px) {
    .funnel_step_footer .goahead .or {
      display: none; }
    .funnel_step_footer .goahead .later a.btn {
      display: inline-block;
      background: #eeeeee !important;
      color: #e84e0f !important;
      margin: 5px 0 0;
      padding: 0; }
    .funnel_step_footer .goahead .btn {
      width: 100%;
      max-width: 310px;
      line-height: 53px;
      font-size: 20px; } }

.funnel_footer {
  z-index: 1;
  height: 99px;
  background-color: #373737;
  box-shadow: 0 -5px 18px 0 rgba(0, 0, 0, 0.2);
  width: 100%;
  position: fixed;
  bottom: 0;
  color: #ffffff; }
  .funnel_footer .content_wrap {
    position: relative; }
  .funnel_footer .text {
    font-size: 24px;
    font-weight: normal;
    font-style: normal;
    font-stretch: normal;
    line-height: normal;
    letter-spacing: -1px;
    color: #ffffff;
    height: 99px;
    line-height: 99px; }
  .funnel_footer .buttons {
    position: absolute;
    right: 0;
    top: 10px; }
    .funnel_footer .buttons .btn {
      margin: 10px 0 30px 20px;
      display: inline-block; }
  .funnel_footer .peacock-blue {
    background-image: linear-gradient(76deg, #00a8b0, #005ca9); }
  .funnel_footer .vermillion {
    background-image: linear-gradient(256deg, #fdc300, #e84e0f); }
  @media (max-width: 1200px) {
    .funnel_footer {
      display: none; } }

.dialog_full_centered {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(55, 55, 55, 0.5);
  overflow-y: scroll;
  padding-bottom: 50px; }

.dialog_funnel .exit-icon {
  width: 70px;
  height: 70px;
  background: #454545;
  border-radius: 50%;
  display: block;
  margin: 32px auto -12px; }
  .dialog_funnel .exit-icon img {
    margin: 20px 0 0 22px; }

.dialog_funnel .close-button {
  position: absolute;
  top: 6px;
  right: 6px; }

.dialog_funnel .radio-container .form-check input:checked ~ .radiomark,
.dialog_funnel .radio-container .form-check input:checked ~ .checkmark, .dialog_funnel .checkbox-container .form-check input:checked ~ .radiomark,
.dialog_funnel .checkbox-container .form-check input:checked ~ .checkmark {
  background-color: #ffffff;
  border: 2px solid #ffffff;
  background-image: url(../assets/funnel/images/check-vermillion.svg); }

.dialog_funnel .intestazione {
  padding-top: 1px; }
  .dialog_funnel .intestazione h1 {
    font-size: 24px;
    font-weight: bold;
    letter-spacing: -1.3px;
    text-align: center;
    color: #e84e0f;
    margin: 44px 0; }

.dialog_funnel .dialog_body {
  position: relative;
  background: #ffffff;
  max-width: 700px;
  margin: 100px auto 0;
  padding: 0 38px;
  overflow: visible; }
  .dialog_funnel .dialog_body:before {
    content: ' ';
    display: block;
    height: 5px;
    width: 100%;
    background-image: linear-gradient(to left, #fdc300, #e84e0f);
    position: absolute;
    top: -4px;
    left: 0; }
  .dialog_funnel .dialog_body .policy {
    font-size: 16px;
    max-width: 600px; }

.dialog_funnel .footer {
  text-align: center; }
  .dialog_funnel .footer .btn {
    margin: 0; }

.dialog_funnel.dialog_funnel_type_a .intestazione {
  border-bottom: 1px #eeeeee solid; }

.dialog_funnel.dialog_funnel_type_a .form {
  margin-top: 30px; }

.dialog_funnel.dialog_funnel_type_a .footer {
  border-top: 1px #eeeeee solid;
  padding: 50px 0; }

.dialog_funnel.dialog_funnel_type_b .intestazione h1 {
  margin-bottom: 30px; }

.dialog_funnel.dialog_funnel_type_b .form {
  margin-top: 0; }

.dialog_funnel.dialog_funnel_type_b .footer {
  padding: 4px 0 34px;
  margin-top: -10px; }
  .dialog_funnel.dialog_funnel_type_b .footer .btn {
    min-width: 250px; }

.select2-container--default .select2-selection--single{
    padding:6px !important;
    height: 55px !important;
    font-size: 1.2em !important;  
    position: relative !important;
    background-color: #fff !important;
    border: solid 1px #d0d0d0 !important;
    border-radius: 4px !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    border-radius: 4px !important;


    
    height: 55px !important;
    line-height: 55px !important;
    padding: 0 20px !important;
    box-shadow: none !important;
    font-size: 18px !important;
    font-weight: bold !important;
    letter-spacing: -1px !important;
    color: #373737 !important;
    position : initial !important;
}

.select2-container .select2-selection--single {
    box-sizing: border-box !important;
    cursor: pointer !important;
    display: block !important;
    height: 55px !important;
    user-select: none !important;
    -webkit-user-select: none !important;
}

.select2-container--default .select2-selection--single{
    padding:6px !important;
    height: 55px !important;
    font-size: 1.2em !important;  
    position: relative !important;
    background-color: #fff !important;
    border: solid 1px #d0d0d0 !important;
    border-radius: 4px !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    border-radius: 4px !important;


    
    height: 55px !important;
    line-height: 55px !important;
    padding: 0 20px !important;
    box-shadow: none !important;
    font-size: 18px !important;
    font-weight: bold !important;
    letter-spacing: -1px !important;
    color: #373737 !important;
    position : initial !important;
}

.select2-container .select2-selection--single {
    box-sizing: border-box !important;
    cursor: pointer !important;
    display: block !important;
    height: 55px !important;
    user-select: none !important;
    -webkit-user-select: none !important;
}

#prestazioneEle .step-title {
  margin-top: 0
}
@media (max-width: 1024px) {
  .mobile-bottom-100 {
    margin-bottom: 100px;
  }
}
@media (max-width: 768px) {
  .fix-captcha {
    margin-top: 30px
  }
}

/* offering card */



*:focus,a:focus,a:active,.btn:focus,.btn:active,.btn:active:focus {
  outline: 0;
  box-shadow: none;
}

a {
  color: inherit;
}

.mobile_content {
  display: none;
}

@media only screen and (max-width: 767px) {
  .mobile_content {
    display: block;
  }
}

a.btn-rectangle {
  width: auto;
}

.btn-rectangle {
  font-size: 20px;
  font-weight: bold;
  height: 50px;
  line-height: 1.8;
  width: auto;
  padding-left: 25px;
  padding-right: 25px;
  /*  &.border-3-sunflower-yellow {
        border: 3px solid $sunflower-yellow;
    }
    &.border-3-marigold {
        border: 3px solid $marigold;
    } */
}

/* ------ SPAZIATURE GENERICHE PER I CONTENITORI ------*/

/* FILTRO IMAGE - il contenitore avrà la classe filter-image che contiene img a cui verrà applicato il filtro */

@keyframes loading {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* necessary plugin styles jquery.ellipsis*/

/* I file prefissati da _ non vengono sempre inclusi da un main come questo e mai direttamente */

/* Mixins */

/* Elementi testo */

h1 {
  font-size: 64px;
  font-weight: bold;
}

h3 {
  font-size: 24px;
}

h2 {
  font-size: 54px;
  font-weight: bold;
}

/* Bottoni */

.theme_vermillion .btn-rectangle,.theme_vermillion a.btn-rectangle {
  background-color: #e84e0f;
  color: #ffffff;
}

.theme_vermillion .btn-radius {
  border: 2px solid #e84e0f;
  color: #e84e0f;
}

.theme_turquoise-blue .btn-rectangle,.theme_turquoise-blue a.btn-rectangle {
  background-color: #00a8b0;
  color: #ffffff;
}

.theme_turquoise-blue .btn-radius {
  border: 2px solid #00a8b0;
  color: #00a8b0;
}

.theme_white-two .btn-rectangle,.theme_white-two a.btn-rectangle {
  background-color: #ffffff;
  color: #ffffff;
}

.theme_white-two .btn-radius {
  border: 2px solid #ffffff;
  color: #ffffff;
}

.theme_energia-luce .btn-rectangle,.theme_energia-luce a.btn-rectangle {
  background-color: #FFDC13;
  color: #373737;
}

.theme_energia-luce .btn-radius {
  border: 2px solid #FFDC13;
  color: #FFDC13;
}

.theme_energia-gas .btn-rectangle,.theme_energia-gas a.btn-rectangle {
  background-color: #0a387c;
  color: #ffffff;
}

.theme_energia-gas .btn-radius {
  border: 2px solid #0a387c;
  color: #0a387c;
}

.theme_energia-dual .btn-rectangle,.theme_energia-dual a.btn-rectangle {
  background-color: #e84e0f;
  color: #ffffff;
}

.theme_energia-dual .btn-radius {
  border: 2px solid #e84e0f;
  color: #e84e0f;
}

a.btn-acea {
  min-width: 217px;
  height: 55px;
  line-height: 41px;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: -1px;
  box-shadow: 0 5px 12px 0 rgba(0, 0, 0, 0.1);
  border-radius: 28px 28px 0px 28px;
  border: none;
}

span.btn {
  cursor: default;
}

.btn-rectangle {
  width: 158px;
  height: 50px;
  border-radius: 25px  25px 0 25px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.btn-rectangle:hover {
  border-radius: 25px 25px 25px 25px;
  text-decoration: none;
}

.btn-link {
  font-size: 20px;
  background-color: transparent;
  color: #373737;
  font-weight: bold;
  border: 0;
  padding: 0;
  white-space: initial;
  text-align: left;
}

.btn-link img {
  margin-left: 2px;
  width: 23px;
  height: 21px;
  position: relative;
  top: -2px;
  left: 0;
  -webkit-transition: left 0.3s;
  transition: left 0.3s;
}

@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .btn-link {
    font-size: 15px;
  }
}

.btn-link {
  font-size: 18px;
}

.btn-link {
  text-decoration: none;
}

.btn-link img {
  left: 7px;
}

.btn-radius {
  border-radius: 22px;
  padding: 11px 28px;
  font-size: 16px;
  font-weight: bold;
  line-height: 18px;
  height: auto;
  width: auto;
  background-color: transparent;
}

/* Icone */

/* Divider */

/* Radio button */

[class*="theme_"] .radio-button-container input:checked ~ .checkmark:after,[class*="theme_"] .check-button-container input:checked ~ .checkmark:after {
  content: " ";
  background-repeat: no-repeat;
  display: block;
  width: 30px;
  height: 30px;
  margin: -7px;
}

.theme_vermillion .radio-button-container input:checked ~ .checkmark:after,.theme_vermillion .check-button-container input:checked ~ .checkmark:after {
  background-image: url(../assets/images/check_vermillion.svg);
}

.theme_turquoise-blue .radio-button-container input:checked ~ .checkmark:after,.theme_turquoise-blue .check-button-container input:checked ~ .checkmark:after {
  background-image: url(../assets/images/check_turquoise-blue.svg);
}

.theme_white-two .radio-button-container input:checked ~ .checkmark:after,.theme_white-two .check-button-container input:checked ~ .checkmark:after {
  background-image: url(../assets/images/check_white-two.svg);
}

.theme_energia-luce .radio-button-container input:checked ~ .checkmark:after,.theme_energia-luce .check-button-container input:checked ~ .checkmark:after {
  background-image: url(../assets/images/check_energia-luce.svg);
}

.theme_energia-gas .radio-button-container input:checked ~ .checkmark:after,.theme_energia-gas .check-button-container input:checked ~ .checkmark:after {
  background-image: url(../assets/images/check_energia-gas.svg);
}

.theme_energia-dual .radio-button-container input:checked ~ .checkmark:after,.theme_energia-dual .check-button-container input:checked ~ .checkmark:after {
  background-image: url(../assets/images/check_energia-dual.svg);
}

.radio-button-container .form-check,.check-button-container .form-check {
  display: inline-block;
}

.radio-button-container input.form-check-input,.check-button-container input.form-check-input {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.radio-button-container .checkmark,.check-button-container .checkmark {
  border: 2px #373737 solid;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: inline-block;
  position: relative;
  top: 8px;
  margin-right: 8px;
  transition: all .1s;
}

.radio-button-container input:checked ~ .checkmark,.check-button-container input:checked ~ .checkmark {
  background-color: #ffffff;
  border: 2px solid #ffffff;
  box-shadow: 0px 2px 5px 0px #b4b4b4;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 120%;
}

.radio-button-container label,.check-button-container label {
  padding: 0 10px 0 5px;
  position: relative;
  top: -8px;
}

.radio-button-container .info,.check-button-container .info {
  padding: 0 0 20px;
}

/*Select */

/* Multiselect */

/* Immagine */

.check-button-container .form-check-label .checkmark {
  border-radius: 0;
  width: 24px;
  height: 24px;
  border-width: 2px;
}

.check-button-container .form-check-label .checkmark img {
  transform: scale(1.6);
}

.checkbox-input,.radio-input {
  padding-left: 0;
  /* Hide the browser's default checkbox */
  /* Create a custom checkbox */
  /* Create the checkmark/indicator (hidden when not checked) */
  /* Show the checkmark when checked */
  /* Style the checkmark/indicator */
}

.checkbox-input.inline,.radio-input.inline {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px;
}

.checkbox-input.inline > label,.radio-input.inline > label {
  margin: 10px;
}

.checkbox-input.radio-inline label,.radio-input.radio-inline label {
  display: inline;
  margin-right: 10px;
}

.checkbox-input .checkbox-input-label,.radio-input .checkbox-input-label {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  font-size: 14px;
  line-height: 20px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.checkbox-input .checkbox-input-label input,.radio-input .checkbox-input-label input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

.checkbox-input .checkmark,.radio-input .checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
}

.checkbox-input .checkmark:after,.radio-input .checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

.checkbox-input .checkbox-input-label input:checked ~ .checkmark:after,.radio-input .checkbox-input-label input:checked ~ .checkmark:after {
  display: block;
}

.checkbox-input .checkbox-input-label .checkmark:after,.radio-input .checkbox-input-label .checkmark:after {
  left: 7px;
  top: 3px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.theme_vermillion .checkbox-input .checkbox-input-label input:checked ~ .checkmark,.theme_vermillion .radio-input .checkbox-input-label input:checked ~ .checkmark {
  background-color: #e84e0f;
}

.theme_vermillion .checkbox-input .checkmark,.theme_vermillion .radio-input .checkmark {
  border: 1px solid #e84e0f;
}

.theme_turquoise-blue .checkbox-input .checkbox-input-label input:checked ~ .checkmark,.theme_turquoise-blue .radio-input .checkbox-input-label input:checked ~ .checkmark {
  background-color: #00a8b0;
}

.theme_turquoise-blue .checkbox-input .checkmark,.theme_turquoise-blue .radio-input .checkmark {
  border: 1px solid #00a8b0;
}

.theme_white-two .checkbox-input .checkbox-input-label input:checked ~ .checkmark,.theme_white-two .radio-input .checkbox-input-label input:checked ~ .checkmark {
  background-color: #ffffff;
}

.theme_white-two .checkbox-input .checkmark,.theme_white-two .radio-input .checkmark {
  border: 1px solid #ffffff;
}

.theme_energia-luce .checkbox-input .checkbox-input-label input:checked ~ .checkmark,.theme_energia-luce .radio-input .checkbox-input-label input:checked ~ .checkmark {
  background-color: #FFDC13;
}

.theme_energia-luce .checkbox-input .checkmark,.theme_energia-luce .radio-input .checkmark {
  border: 1px solid #FFDC13;
}

.theme_energia-gas .checkbox-input .checkbox-input-label input:checked ~ .checkmark,.theme_energia-gas .radio-input .checkbox-input-label input:checked ~ .checkmark {
  background-color: #40ddff;
}

.theme_energia-gas .checkbox-input .checkmark,.theme_energia-gas .radio-input .checkmark {
  border: 1px solid #40ddff;
}

.theme_energia-dual .checkbox-input .checkbox-input-label input:checked ~ .checkmark,.theme_energia-dual .radio-input .checkbox-input-label input:checked ~ .checkmark {
  background-color: #ff9900;
}

.theme_energia-dual .checkbox-input .checkmark,.theme_energia-dual .radio-input .checkmark {
  border: 1px solid #ff9900;
}


@media only screen and (min-width: 768px) and (max-width: 1024px) {
  /* background-repeat: no-repeat;
    padding: 0 30px; */
}

@-webkit-keyframes fromleft {
  0% {
    width: 0;
  }

  100% {
    width: 25em;
  }
}

@keyframes fromleft {
  0% {
    width: 0;
  }

  100% {
    width: 25em;
  }
}

/* Datatables */

.component-datatables {
  position: relative;
  padding: 40px 0;
  min-height: 800px;
}

.component-datatables h4 {
  font-size: 20px !important;
}

.component-datatables .search-form {
  border: 1px #747678 solid;
  font-size: 18px;
  margin-bottom: 32px;
  display: inline-block;
  padding: 0 12px 0 22px;
  max-width: 100%;
}

.component-datatables .search-form input {
  border: 0;
  line-height: 52px;
  width: 340px;
  max-width: calc(100% - 60px);
}

.component-datatables .dataTables_info {
  font-size: 12px;
}

.component-datatables .dataTables_empty {
  font-size: 22px;
  text-align: center;
  padding: 120px 0 !important;
}

.component-datatables .dataTables_empty a {
  text-decoration: underline;
  color: #000000;
}

/* Round tip presente nell'hero */

/* Tip rettangolare presente in trova e risolvi */

@media only screen and (min-width: 768px) {
  /* Usare per nascondere nel mobile */
}

/* Varianti di colore */

/* -------- COLOR VARIANTS --------- */

/* TEXT */

/* uno per ogni colore definito in main */

.text_white {
  color: #eeeeee;
}

a > .text_white:hover,a > .text_white:active,a > .text_white:focus {
  color: #eeeeee;
  text-decoration: underline;
}

.text_white-two {
  color: #ffffff;
}

a > .text_white-two:hover,a > .text_white-two:active,a > .text_white-two:focus {
  color: #ffffff;
  text-decoration: underline;
}

.text_black {
  color: #373737;
}

a > .text_black:hover,a > .text_black:active,a > .text_black:focus {
  color: #373737;
  text-decoration: underline;
}

.text_turquoise-blue {
  color: #00a8b0;
}

a > .text_turquoise-blue:hover,a > .text_turquoise-blue:active,a > .text_turquoise-blue:focus {
  color: #00a8b0;
  text-decoration: underline;
}

.text_vermillion {
  color: #e84e0f;
}

a > .text_vermillion:hover,a > .text_vermillion:active,a > .text_vermillion:focus {
  color: #e84e0f;
  text-decoration: underline;
}

.text_vermillion-two {
  color: #E84E0F;
}

a > .text_vermillion-two:hover,a > .text_vermillion-two:active,a > .text_vermillion-two:focus {
  color: #E84E0F;
  text-decoration: underline;
}

.text_blue {
  color: #4A90E2;
}

a > .text_blue:hover,a > .text_blue:active,a > .text_blue:focus {
  color: #4A90E2;
  text-decoration: underline;
}

.text_energia-luce {
  color: #FFDC13;
}

a > .text_energia-luce:hover,a > .text_energia-luce:active,a > .text_energia-luce:focus {
  color: #FFDC13;
  text-decoration: underline;
}

.text_energia-gas {
  color: #40ddff;
}

a > .text_energia-gas:hover,a > .text_energia-gas:active,a > .text_energia-gas:focus {
  color: #40ddff;
  text-decoration: underline;
}

.text_energia-dual {
  color: #ff9900;
}

a > .text_energia-dual:hover,a > .text_energia-dual:active,a > .text_energia-dual:focus {
  color: #ff9900;
  text-decoration: underline;
}

/* -------- END COLOR VARIANTS --------- */

/* Generico hover sui bottoni dello slider */

/* Scroll slider */

/* width */

::-webkit-scrollbar {
  width: 10px;
}

/* Track */

::-webkit-scrollbar-track {
  background: #f1f1f1;
}

/* Handle */

::-webkit-scrollbar-thumb {
  background: #888;
}

/* Handle on hover */

::-webkit-scrollbar-thumb:hover {
  background: #555;
}

.dialog::-webkit-scrollbar {
  width: 1px;
}

.eco-button {
  color: #397C23;
  border-radius: 16px;
  font-size: 14px;
  font-weight: bold;
  height: 30px;
  padding: 0 12px 0 32px;
  line-height: 31px;
  display: inline-block;
}

.commodity_label {
  display: inline-block;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 16px;
  padding: 4px 16px;
  border-radius: 100px;
  background-color: #ffffff;
}

.theme_vermillion.commodity_label,.theme_vermillion .commodity_label {
  color: #e84e0f;
}

.theme_turquoise-blue.commodity_label,.theme_turquoise-blue .commodity_label {
  color: #00a8b0;
}

.theme_white-two.commodity_label,.theme_white-two .commodity_label {
  color: #ffffff;
}

.theme_energia-luce.commodity_label,.theme_energia-luce .commodity_label {
  color: #e84e0f;
}

.theme_energia-gas.commodity_label,.theme_energia-gas .commodity_label {
  color: #005CA9;
}

.theme_energia-dual.commodity_label,.theme_energia-dual .commodity_label {
  color: #e84e0f;
}

.check-button-container.ncp_variant .form-check-label .checkmark,.radio-button-container.ncp_variant .form-check-label .checkmark {
  border-width: 1px;
  border-radius: 50%;
  transition-duration: 500ms;
}

.check-button-container.ncp_variant input:checked ~ .checkmark,.check-button-container.ncp_variant input:checked ~ .checkmark,.radio-button-container.ncp_variant input:checked ~ .checkmark,.radio-button-container.ncp_variant input:checked ~ .checkmark {
  box-shadow: 0 4px 10px rgba(86, 185, 73, 0.2);
  background: #DCF1DA;
  border: 0;
  text-align: center;
  position: relative;
}

.check-button-container.ncp_variant input:checked ~ .checkmark:after,.check-button-container.ncp_variant input:checked ~ .checkmark:after,.radio-button-container.ncp_variant input:checked ~ .checkmark:after,.radio-button-container.ncp_variant input:checked ~ .checkmark:after {
  content: ' ';
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #56B949 url("../assets/images/check-white.svg") no-repeat center center;
  background-size: 22px;
  position: absolute;
  left: 10px;
  top: 10px;
}

.check-button-container.ncp_variant.large .form-check-label .checkmark,.radio-button-container.ncp_variant.large .form-check-label .checkmark {
  width: 30px;
  height: 30px;
}

.check-button-container.ncp_variant.large input:checked ~ .checkmark:after,.check-button-container.ncp_variant.large input:checked ~ .checkmark:after,.radio-button-container.ncp_variant.large input:checked ~ .checkmark:after,.radio-button-container.ncp_variant.large input:checked ~ .checkmark:after {
  left: 13px;
  top: 13px;
}

.checkbox_toggler {
  display: inline-block;
}

.checkbox_toggler input {
  display: none;
}

.checkbox_toggler div {
  display: inline-block;
  width: 43px;
  height: 22px;
  border-radius: 12px;
  background: #dbdbdb;
  position: relative;
  transition-duration: 300ms;
}

.cart input {
  cursor: default !important
}

.checkbox_toggler div:after {
  transition-duration: 300ms;
  content: ' ';
  background: #ffffff;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  position: absolute;
  left: 2px;
  top: 2px;
  box-shadow: 0px 2px 4px rgba(55, 55, 55, 0.25);
}

.checkbox_toggler input:checked ~ div:after {
  left: calc(100% - 20px);
}

.theme_vermillion .checkbox_toggler input:checked ~ div {
  background: #e84e0f;
}

.theme_turquoise-blue .checkbox_toggler input:checked ~ div {
  background: #00a8b0;
}

.theme_white-two .checkbox_toggler input:checked ~ div {
  background: #ffffff;
}

.theme_energia-luce .checkbox_toggler input:checked ~ div {
  background: #e84e0f;
}

.theme_energia-gas .checkbox_toggler input:checked ~ div {
  background: #005CA9;
}

.theme_energia-dual .checkbox_toggler input:checked ~ div {
  background: #e84e0f;
}

.component-ncp_product {
  max-width: 1920px;
  margin: 0 auto;
  overflow: hidden;
}

.component-ncp_product--content {
  max-width: 1200px;
  margin: 0 auto;
}

.component-ncp_product .swiper-container {
  margin-top: 20px;
  overflow: visible;
  height: 434px;
}

@media only screen and (max-width: 1024px) {
  .component-ncp_product .swiper-container {
    height: 391px;
  }
}

.component-ascensore {
  z-index: 1000;
  position: absolute;
  top: 0;
  width: 100%;
}

.component-ascensore > .container {
  position: relative;
}

.component-ascensore > .container > .floating_element {
  height: 595px;
  width: 360px;
  position: absolute;
  top: 150px;
  right: 0;
}

.component-ascensore > .container > .floating_element:after {
  content: ' ';
  background: #fdfdfd;
  position: absolute;
  left: 0;
  top: 25px;
  height: 50px;
  width: 50px;
}

.component-ascensore hr {
  border: 0;
  border-bottom: 1px solid #dbdbdb;
  width: 100%;
  height: 0px;
  margin: 14px 0;
}

.component-ascensore hr.light {
  border: 0;
  border-bottom: 1px solid #F5F7F7;
  width: 100%;
  height: 0px;
  margin: 14px 0;
}

.component-ascensore .separator {
  border-top: 1px solid #dbdbdb;
}

.component-ascensore .main {
  background: #ffffff;
  border-radius: 30px 30px 0 30px;
  padding: 16px 15px 0 15px;
  position: relative;
  z-index: 2;
  box-shadow: 0px 2px 30px rgba(48, 70, 89, 0.15);
  /*height: 564px;*/
}

.component-ascensore .main header {
  box-shadow: 0px 30px 50px -20px rgba(48, 70, 89, 0.15);
  width: 104%;
}

.component-ascensore .main header .title {
  font-size: 25px;
  font-weight: bold;
  margin-right: 36.6%;
  letter-spacing: -1px;
}

.component-ascensore .main header .eco-button {
  position: absolute;
  top: 16px;
  right: 15px;
}

.component-ascensore .main header .tabs-header {
  margin: 0 -15px 0 -13px;
}

.component-ascensore .main header .tabs-header div button {
  margin: 0;
  width: calc(33.2% - 2px);
}

.component-ascensore .main .footer {
  padding: 1px 15px 15px;
  /*position: absolute;
  bottom: 0;
  left: 0;*/
  width: 100%;
}

.component-ascensore .main .footer .cta .btn {
  width: 100%;
}

.component-ascensore .main .elem {
  font-weight: normal;
  font-size: 18px;
  margin: 9px 0 10px;
  position: relative;
}

.component-ascensore .main .elem .header {
  font-weight: bold;
  text-transform: uppercase;
  padding-top: 5px;
}

.component-ascensore .main .elem_title {
  line-height: 25px;
  letter-spacing: -1px;
}

.component-ascensore .main .elem_title img {
  width: 18px;
  transform: translate(4px, -1px);
}

.component-ascensore .main .elem_subtitle {
  font-size: 14px;
  color: #8e8e8e;
}

.component-ascensore .main .elem_action {
  text-align: right;
  position: absolute;
  right: 0;
  top: 0px;
  white-space: nowrap;
}

.component-ascensore .main .elem_action .hilighted {
  font-weight: bold;
  letter-spacing: -1px;
}

.component-ascensore .main .elem_action img.check {
  width: 14px;
  margin-left: 5px;
  transform: translateY(-3px);
}

.component-ascensore .main .elem .header ~ .elem_action {
  top: 28px;
}

.component-ascensore .main .check-button-container.ncp_variant,.component-ascensore .main .radio-button-container.ncp_variant {
  margin: 22px 0;
}

.component-ascensore .main .check-button-container.ncp_variant .form-check,.component-ascensore .main .radio-button-container.ncp_variant .form-check {
  display: block;
}

.component-ascensore .main .check-button-container.ncp_variant label.form-check-label,.component-ascensore .main .radio-button-container.ncp_variant label.form-check-label {
  padding: 0;
  width: 100%;
}

.component-ascensore .main .check-button-container.ncp_variant label.form-check-label .text,.component-ascensore .main .radio-button-container.ncp_variant label.form-check-label .text {
  font-size: 18px;
  font-weight: normal;
}

.component-ascensore .main .check-button-container.ncp_variant label.form-check-label input:checked ~ .text,.component-ascensore .main .radio-button-container.ncp_variant label.form-check-label input:checked ~ .text {
  font-weight: bold;
}

.component-ascensore .main .check-button-container.ncp_variant label.form-check-label input:checked ~ .checkmark,.component-ascensore .main .radio-button-container.ncp_variant label.form-check-label input:checked ~ .checkmark {
  transform: scale(1.17);
}

.component-ascensore .main .check-button-container.ncp_variant label.form-check-label input:checked ~ .checkmark:after,.component-ascensore .main .radio-button-container.ncp_variant label.form-check-label input:checked ~ .checkmark:after {
  width: 16px;
  height: 16px;
  top: 11px;
  left: 11px;
}

.component-ascensore .main .check-button-container.ncp_variant label.form-check-label .checkmark,.component-ascensore .main .radio-button-container.ncp_variant label.form-check-label .checkmark {
  position: absolute;
  right: 0;
  top: 0;
}

.component-ascensore .main .selettore_fascia {
  position: relative;
  margin-top: 10px;
}

.component-ascensore .main .selettore_fascia .toggle,.component-ascensore .main .selettore_fascia .toggle_underlayer {
  cursor: pointer;
  position: absolute;
  top: 10px;
  left: 0;
  width: 30px;
  height: 30px;
  border-radius: 6px;
}

.component-ascensore .main .selettore_fascia .toggle img,.component-ascensore .main .selettore_fascia .toggle_underlayer img {
  padding: 6px;
}

.component-ascensore .main .selettore_fascia .toggle_underlayer {
  width: 60px;
}

.component-ascensore .main .selettore_fascia input {
  display: none;
}

.component-ascensore .main .selettore_fascia .opt1,.component-ascensore .main .selettore_fascia .opt2 {
  display: block;
}

.component-ascensore .main .selettore_fascia .opt2 .toggle {
  transform: translateX(30px);
}

.component-ascensore .main .selettore_fascia .active {
  display: none;
}

.component-ascensore .main .selettore_fascia .info {
  display: none;
  margin-left: 78px;
  font-size: 14px;
  line-height: 18px;
  font-weight: normal;
}

.component-ascensore .main .selettore_fascia .info .title {
  font-weight: bold;
  padding: 1em;
  color: #373737;
}

.component-ascensore .main .selettore_fascia .info .desc {
  color: #8e8e8e;
}

.component-ascensore .main .selettore_fascia .extra {
  display: none;
  margin-top: 16px;
}

.component-ascensore .main .selettore_fascia input:checked ~ .toggle .active {
  display: block;
}

.component-ascensore .main .selettore_fascia input:checked ~ .toggle .inactive {
  display: none;
}

.component-ascensore .main .selettore_fascia input:checked ~ .info,.component-ascensore .main .selettore_fascia input:checked ~ .extra {
  display: block;
}

.component-ascensore .main .fascia {
  font-weight: normal;
  position: relative;
  margin-top: 2px;
}

.component-ascensore .main .fascia_title {
  font-weight: bold;
  font-size: 18px;
  letter-spacing: -1px;
  line-height: 24px;
}

.component-ascensore .main .fascia_title img {
  width: 16px;
  transform: translate(4px, -3px);
}

.component-ascensore .main .fascia_info {
  position: absolute;
  right: 0;
  top: -4px;
  white-space: nowrap;
}

.component-ascensore .main .fascia_info .discount {
  font-size: 14px;
  line-height: 18px;
}

.component-ascensore .main .fascia_info .old {
  font-size: 14px;
  line-height: 18px;
  position: relative;
  padding: 0 2px;
}

.old {
  padding: 0px !important;
}

.component-ascensore .main .fascia_info .old:after {
  content: ' ';
  position: absolute;
  top: 48%;
  left: 0;
  border-bottom: 1px #373737 solid;
  height: 1px;
  width: 100%;
}

.component-ascensore .main .fascia_info .price {
  font-size: 24px;
  line-height: 28px;
  font-weight: bold;
}

.component-ascensore .main .fascia_info .price sub {
  bottom: 0;
  margin-left: -5px;
  font-size: 70%;
  font-weight: normal;
}

.component-ascensore .main .fascia_info .price sup {
  font-weight: normal;
  font-size: 14px;
  top: auto;
}

.component-ascensore .main .offer_steps button[role="tab"],.component-ascensore .main header .tabs-header button[role="tab"] {
  background: #ffffff;
  font-size: 14px;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-weight: bold;
  width: 33.3%;
  display: inline-block;
  border: 0;
  margin: 0 -2px;
  border-bottom: 2px #ffffff solid;
  padding: 6px 0;
}

.component-ascensore .main .offer_steps button[role="tab"][aria-selected="true"],.component-ascensore .main header .tabs-header button[role="tab"][aria-selected="true"] {
  border-bottom: 2px #373737 solid;
}

.component-ascensore .main .comp_block {
  margin: 15px 0;
}

.component-ascensore .main .comp_block_title {
  font-weight: bold;
  font-size: 16px;
  line-height: 19px;
  display: inline-block;
  padding-right: 12px;
}

.component-ascensore .main .comp_block_subtitle {
  color: #8e8e8e;
  font-size: 14px;
  line-height: 18px;
  margin-bottom: 10px;
}

.component-ascensore .main .total {
  padding: 15px 0;
  font-size: 16px;
}

.component-ascensore .main .total var {
  float: right;
  font-style: normal;
  font-size: 24px;
  font-weight: bold;
  margin-top: -8px;
}

.component-ascensore .main .total var sub {
  bottom: 0;
  margin-left: 0px;
  font-size: 70%;
  font-weight: normal;
}

.component-ascensore .main .products_and_services .empty {
  text-align: center;
  padding-top: 125px;
}

.component-ascensore .main .products_and_services .empty .title {
  font-size: 18px;
  line-height: 21px;
  font-weight: bold;
  text-transform: uppercase;
}

.component-ascensore .main .products_and_services .empty .text {
  line-height: 25px;
  letter-spacing: -1px;
  margin-top: 15px;
}

.component-ascensore .commodity-tabs {
  background: #F5F7F7;
  letter-spacing: -1px;
  height: 31px;
  border-radius: 20px 20px 0 0;
  display: inline-block;
  font-size: 18px;
  position: relative;
  z-index: 3;
}

.component-ascensore .commodity-tabs .tab {
  line-height: 31px;
  display: inline-block;
  border-right: 1px #dbdbdb solid;
  padding: 0 19px;
}

.component-ascensore .commodity-tabs .tab:focus {
  color: #373737;
  text-decoration: none;
  font-weight: normal;
}

.component-ascensore .commodity-tabs .tab:first-child {
  border-radius: 20px 0 0 0;
  border: 0;
  padding-left: 21px;
}

.component-ascensore .commodity-tabs .tab:last-child {
  border-radius: 0 20px 0 0;
  border: 0;
  padding-right: 21px;
}

.component-ascensore .commodity-tabs.first .tab:nth-child(1) {
  background: #ffffff;
  border: 0;
  border-bottom: 1px #ffffff solid;
}

.component-ascensore .commodity-tabs.first ~ .main {
  border-radius: 0 30px 0 30px;
}

.component-ascensore .commodity-tabs.second .tab:nth-child(1) {
  border: 0;
}

.component-ascensore .commodity-tabs.second .tab:nth-child(2) {
  background: #ffffff;
  border: 0;
  border-bottom: 1px #ffffff solid;
}

.component-ascensore .commodity-tabs.third .tab:nth-child(2) {
  border: 0;
}

.component-ascensore .commodity-tabs.third .tab:nth-child(3) {
  background: #ffffff;
  border: 0;
  border-bottom: 1px #ffffff solid;
}

.component-ascensore.theme_vermillion .main .offer_steps button[aria-selected="true"],.component-ascensore.theme_vermillion .main header .tabs-header button[aria-selected="true"],.component-ascensore .theme_vermillion .main .offer_steps button[aria-selected="true"],.component-ascensore .theme_vermillion .main header .tabs-header button[aria-selected="true"] {
  border-bottom: 2px #e84e0f solid;
  color: #e84e0f;
}

.component-ascensore.theme_vermillion .main .elem .header,.component-ascensore .theme_vermillion .main .elem .header {
  color: #e84e0f;
}

.component-ascensore.theme_vermillion .main .selettore_fascia .toggle_underlayer,.component-ascensore .theme_vermillion .main .selettore_fascia .toggle_underlayer {
  background: rgba(232, 78, 15, 0.06);
}

.component-ascensore.theme_vermillion .main .selettore_fascia input:checked ~ .toggle,.component-ascensore .theme_vermillion .main .selettore_fascia input:checked ~ .toggle {
  background: #e84e0f;
  box-shadow: 0px 4px 10px rgba(232, 78, 15, 0.03);
}

.component-ascensore.theme_vermillion .main .fascia_info .discount,.component-ascensore .theme_vermillion .main .fascia_info .discount {
  color: #e84e0f;
}

.component-ascensore.theme_vermillion .main .fascia_info .old:after,.component-ascensore .theme_vermillion .main .fascia_info .old:after {
  border-color: #e84e0f;
}

.component-ascensore.theme_vermillion .main .comp_block_title,.component-ascensore .theme_vermillion .main .comp_block_title {
  background: url("../assets/images/icons/vermillion/chevron-light-r.svg") no-repeat right 5px;
  color: #e84e0f;
}

.component-ascensore.theme_vermillion .products_and_services .title,.component-ascensore .theme_vermillion .products_and_services .title {
  color: #e84e0f;
}

.component-ascensore.theme_turquoise-blue .main .offer_steps button[aria-selected="true"],.component-ascensore.theme_turquoise-blue .main header .tabs-header button[aria-selected="true"],.component-ascensore .theme_turquoise-blue .main .offer_steps button[aria-selected="true"],.component-ascensore .theme_turquoise-blue .main header .tabs-header button[aria-selected="true"] {
  border-bottom: 2px #00a8b0 solid;
  color: #00a8b0;
}

.component-ascensore.theme_turquoise-blue .main .elem .header,.component-ascensore .theme_turquoise-blue .main .elem .header {
  color: #00a8b0;
}

.component-ascensore.theme_turquoise-blue .main .selettore_fascia .toggle_underlayer,.component-ascensore .theme_turquoise-blue .main .selettore_fascia .toggle_underlayer {
  background: rgba(0, 168, 176, 0.06);
}

.component-ascensore.theme_turquoise-blue .main .selettore_fascia input:checked ~ .toggle,.component-ascensore .theme_turquoise-blue .main .selettore_fascia input:checked ~ .toggle {
  background: #00a8b0;
  box-shadow: 0px 4px 10px rgba(0, 168, 176, 0.03);
}

.component-ascensore.theme_turquoise-blue .main .fascia_info .discount,.component-ascensore .theme_turquoise-blue .main .fascia_info .discount {
  color: #00a8b0;
}

.component-ascensore.theme_turquoise-blue .main .fascia_info .old:after,.component-ascensore .theme_turquoise-blue .main .fascia_info .old:after {
  border-color: #00a8b0;
}

.component-ascensore.theme_turquoise-blue .main .comp_block_title,.component-ascensore .theme_turquoise-blue .main .comp_block_title {
  background: url("../assets/images/icons/turquoise-blue/chevron-light-r.svg") no-repeat right 5px;
  color: #00a8b0;
}

.component-ascensore.theme_turquoise-blue .products_and_services .title,.component-ascensore .theme_turquoise-blue .products_and_services .title {
  color: #00a8b0;
}

.component-ascensore.theme_white-two .main .offer_steps button[aria-selected="true"],.component-ascensore.theme_white-two .main header .tabs-header button[aria-selected="true"],.component-ascensore .theme_white-two .main .offer_steps button[aria-selected="true"],.component-ascensore .theme_white-two .main header .tabs-header button[aria-selected="true"] {
  border-bottom: 2px #ffffff solid;
  color: #ffffff;
}

.component-ascensore.theme_white-two .main .elem .header,.component-ascensore .theme_white-two .main .elem .header {
  color: #ffffff;
}

.component-ascensore.theme_white-two .main .selettore_fascia .toggle_underlayer,.component-ascensore .theme_white-two .main .selettore_fascia .toggle_underlayer {
  background: rgba(255, 255, 255, 0.06);
}

.component-ascensore.theme_white-two .main .selettore_fascia input:checked ~ .toggle,.component-ascensore .theme_white-two .main .selettore_fascia input:checked ~ .toggle {
  background: #ffffff;
  box-shadow: 0px 4px 10px rgba(255, 255, 255, 0.03);
}

.component-ascensore.theme_white-two .main .fascia_info .discount,.component-ascensore .theme_white-two .main .fascia_info .discount {
  color: #ffffff;
}

.component-ascensore.theme_white-two .main .fascia_info .old:after,.component-ascensore .theme_white-two .main .fascia_info .old:after {
  border-color: #ffffff;
}

.component-ascensore.theme_white-two .main .comp_block_title,.component-ascensore .theme_white-two .main .comp_block_title {
  background: url("../assets/images/icons/white-two/chevron-light-r.svg") no-repeat right 5px;
  color: #ffffff;
}

.component-ascensore.theme_white-two .products_and_services .title,.component-ascensore .theme_white-two .products_and_services .title {
  color: #ffffff;
}

.component-ascensore.theme_energia-luce .main .offer_steps button[aria-selected="true"],.component-ascensore.theme_energia-luce .main header .tabs-header button[aria-selected="true"],.component-ascensore .theme_energia-luce .main .offer_steps button[aria-selected="true"],.component-ascensore .theme_energia-luce .main header .tabs-header button[aria-selected="true"] {
  border-bottom: 2px #e84e0f solid;
  color: #e84e0f;
}

.component-ascensore.theme_energia-luce .main .elem .header,.component-ascensore .theme_energia-luce .main .elem .header {
  color: #e84e0f;
}

.component-ascensore.theme_energia-luce .main .selettore_fascia .toggle_underlayer,.component-ascensore .theme_energia-luce .main .selettore_fascia .toggle_underlayer {
  background: rgba(232, 78, 15, 0.06);
}

.component-ascensore.theme_energia-luce .main .selettore_fascia input:checked ~ .toggle,.component-ascensore .theme_energia-luce .main .selettore_fascia input:checked ~ .toggle {
  background: #e84e0f;
  box-shadow: 0px 4px 10px rgba(232, 78, 15, 0.03);
}

.component-ascensore.theme_energia-luce .main .fascia_info .discount,.component-ascensore .theme_energia-luce .main .fascia_info .discount {
  color: #e84e0f;
}

.component-ascensore.theme_energia-luce .main .fascia_info .old:after,.component-ascensore .theme_energia-luce .main .fascia_info .old:after {
  border-color: #e84e0f;
}

.component-ascensore.theme_energia-luce .main .comp_block_title,.component-ascensore .theme_energia-luce .main .comp_block_title {
  background: url("../assets/images/icons/vermillion/chevron-light-r.svg") no-repeat right 5px;
  color: #e84e0f;
}

.component-ascensore.theme_energia-luce .products_and_services .title,.component-ascensore .theme_energia-luce .products_and_services .title {
  color: #e84e0f;
}

.component-ascensore.theme_energia-gas .main .offer_steps button[aria-selected="true"],.component-ascensore.theme_energia-gas .main header .tabs-header button[aria-selected="true"],.component-ascensore .theme_energia-gas .main .offer_steps button[aria-selected="true"],.component-ascensore .theme_energia-gas .main header .tabs-header button[aria-selected="true"] {
  border-bottom: 2px #005CA9 solid;
  color: #005CA9;
}

.component-ascensore.theme_energia-gas .main .elem .header,.component-ascensore .theme_energia-gas .main .elem .header {
  color: #005CA9;
}

.component-ascensore.theme_energia-gas .main .selettore_fascia .toggle_underlayer,.component-ascensore .theme_energia-gas .main .selettore_fascia .toggle_underlayer {
  background: rgba(0, 92, 169, 0.06);
}

.component-ascensore.theme_energia-gas .main .selettore_fascia input:checked ~ .toggle,.component-ascensore .theme_energia-gas .main .selettore_fascia input:checked ~ .toggle {
  background: #005CA9;
  box-shadow: 0px 4px 10px rgba(0, 92, 169, 0.03);
}

.component-ascensore.theme_energia-gas .main .fascia_info .discount,.component-ascensore .theme_energia-gas .main .fascia_info .discount {
  color: #005CA9;
}

.component-ascensore.theme_energia-gas .main .fascia_info .old:after,.component-ascensore .theme_energia-gas .main .fascia_info .old:after {
  border-color: #005CA9;
}

.component-ascensore.theme_energia-gas .main .comp_block_title,.component-ascensore .theme_energia-gas .main .comp_block_title {
  background: url("../assets/images/icons/energia_gas_variant2/chevron-light-r.svg") no-repeat right 5px;
  color: #005CA9;
}

.component-ascensore.theme_energia-gas .products_and_services .title,.component-ascensore .theme_energia-gas .products_and_services .title {
  color: #005CA9;
}

.component-ascensore.theme_energia-dual .main .offer_steps button[aria-selected="true"],.component-ascensore.theme_energia-dual .main header .tabs-header button[aria-selected="true"],.component-ascensore .theme_energia-dual .main .offer_steps button[aria-selected="true"],.component-ascensore .theme_energia-dual .main header .tabs-header button[aria-selected="true"] {
  border-bottom: 2px #e84e0f solid;
  color: #e84e0f;
}

.component-ascensore.theme_energia-dual .main .elem .header,.component-ascensore .theme_energia-dual .main .elem .header {
  color: #e84e0f;
}

.component-ascensore.theme_energia-dual .main .selettore_fascia .toggle_underlayer,.component-ascensore .theme_energia-dual .main .selettore_fascia .toggle_underlayer {
  background: rgba(232, 78, 15, 0.06);
}

.component-ascensore.theme_energia-dual .main .selettore_fascia input:checked ~ .toggle,.component-ascensore .theme_energia-dual .main .selettore_fascia input:checked ~ .toggle {
  background: #e84e0f;
  box-shadow: 0px 4px 10px rgba(232, 78, 15, 0.03);
}

.component-ascensore.theme_energia-dual .main .fascia_info .discount,.component-ascensore .theme_energia-dual .main .fascia_info .discount {
  color: #e84e0f;
}

.component-ascensore.theme_energia-dual .main .fascia_info .old:after,.component-ascensore .theme_energia-dual .main .fascia_info .old:after {
  border-color: #e84e0f;
}

.component-ascensore.theme_energia-dual .main .comp_block_title,.component-ascensore .theme_energia-dual .main .comp_block_title {
  background: url("../assets/images/icons/vermillion/chevron-light-r.svg") no-repeat right 5px;
  color: #e84e0f;
}

.component-ascensore.theme_energia-dual .products_and_services .title,.component-ascensore .theme_energia-dual .products_and_services .title {
  color: #e84e0f;
}

#component_ascensore_too_many_items_modal .modal-dialog {
  width: 658px;
}

#component_ascensore_too_many_items_modal .modal-header {
  border: 0;
}

#component_ascensore_too_many_items_modal .modal-header h2 {
  font-size: 25px;
}

#component_ascensore_too_many_items_modal .modal-body .title {
  font-size: 22px;
  letter-spacing: -1px;
}

#component_ascensore_too_many_items_modal .modal-body .price {
  font-size: 22px;
  font-weight: bold;
  letter-spacing: -1px;
}

.price-text {
  color: #393939 !important;
}

#component_ascensore_too_many_items_modal .modal-body .product {
  display: inline-block;
  width: 265px;
  height: 132px;
  border-radius: 14px;
  box-shadow: 0px 2px 30px rgba(48, 70, 89, 0.15);
  margin: 0 20px 20px 0;
}

#component_ascensore_too_many_items_modal .modal-body .product label {
  font-size: 18px;
  font-weight: normal;
}

#component_ascensore_too_many_items_modal .modal-footer {
  border: 0;
}

.container-block .text p {
  font-size: 18px;
  font-weight: normal;
  line-height: 1.39;
  letter-spacing: -1px;
  color: #373737;
}

.text h2 {
  font-size: 24px;
  letter-spacing: -1.3px;
  color: #373737;
  font-weight: normal;
}

@media only screen and (min-width: 769px) {
  .text h2 {
    font-size: 32px;
    line-height: normal;
    letter-spacing: -1.8px;
    margin-top: 30px;
  }
}

.component-text-block h2 {
  font-size: 24px;
  letter-spacing: -1.3px;
  /* color: $black; */
  font-weight: normal;
}

.component-text-block p {
  font-size: 18px;
  font-weight: normal;
  line-height: 1.39;
  letter-spacing: -1px;
  color: #373737;
}

@media only screen and (min-width: 769px) {
  .component-text-block h2 {
    font-size: 32px;
    line-height: normal;
    letter-spacing: -1.8px;
  }
}

.component-menu-mobile .menu div[class*="list-menu-"] {
  position: absolute;
  transition: 0.5s;
  left: -148%;
  top: 70px;
  background-color: #ffffff;
  visibility: hidden;
  width: 100%;
}

.text_turquoise-blue b {
  overflow-wrap: break-word !important;
}

@media only screen and (min-width: 769px) {
  .header-cta-mobile {
    display: none !important;
  }
}
.open-cart {
  background: #e84e0f;
  border-radius: 20px;
}

.cross-selling {
  padding: 20px 30px;
  background: #ffffff;
  border-radius: 30px 30px 0 30px;
  padding: 16px 15px 0 15px;
  position: relative;
  z-index: 2;
  box-shadow: 0px 2px 30px rgb(48 70 89 / 15%);
  height: 230px;
  width: 500px;
}

.cross-selling-ele {
  padding: 20px 30px;
  background: #ffffff;
  border-radius: 30px 30px 0 30px;
  padding: 16px 15px 0 15px;
  position: relative;
  z-index: 2;
  box-shadow: 0px 2px 30px rgb(48 70 89 / 15%);
}

.cross-selling .panel-heading {
  box-shadow: 0px 30px 50px -12px rgb(48 70 89 / 15%);
  text-align: center;
  text-transform: uppercase;
}

.cross-selling .panel-title {
  color: #045fac;
  font-size: 20px;
  font-weight: bold;
}

.pill {
  background: #e6eff6;
  border-radius: 20px;
  color: #045fac;
  padding: 10px 20px;
  text-transform: uppercase;
  font-weight: bold;
}

.pill-luce {
  background: #fff9ea;
  border-radius: 20px;
  color: #fdc131;
  padding: 10px 20px;
  text-transform: uppercase;
  font-weight: bold;
}

.luce-mono {
  padding-left: 0;
  height: 50px;
}

.luce-bioraria {
  padding-left: 0;
  height: 50px;
}

.cross-selected {
  border-bottom: solid 3px #e84e0f;
  color: #e84e0f;
}

.comp_block_title_gas {
  color: #045fac !important;
}

#ul {
  padding-bottom: 30px;
}

.scrollable-menu {
  height: auto;
  max-height: 400px;
  overflow-x: hidden;
}

@media only screen and (max-width: 1200px) {
  .component-ascensore .main {
    box-shadow: none;
  }
}

/* Phone */
@media screen and (max-width: 576px) {
  .top-modal {
    top: 0px !important;
    right: 0px !important;
    position: absolute !important;
    max-width: 100% !important;
    width: 100% !important;
    height: 99% !important;
    margin-top: 3% !important;
  }

  .title-responsive {
    font-size: 21px;
  }

  #callMeBackResponse {
    position: fixed !important;
    top: 30% !important;
    font-weight: bold; 
    text-align: center;
  }

  #preferenzaContattoErr {
    width: 100% !important;
  }

  .back-color-responsive {
    background-color: #eeeeee !important;
  }

  .vpn-title-dv {
    background-color: #ffffff;
    border-bottom: 1px;
  }

  .modal-position-mobile {
    position: fixed !important;
    z-index: 9998 !important;
    left: -3% !important;
    top: -2% !important;
    right: 0 !important;
    width: 103% !important;
    height: 104% !important;
    overflow: overlay !important;
  }

  .vpn-doc-title {
    font-weight: bold !important; 
    color: #373737 !important;
  }

  .vpn-img-title {
    height: 90px;
    padding-bottom: 4%;
    padding-top: 20px;
  }

  .vpn-content-mobile {
    background-color: #ffffff;
    box-shadow: 0px 6px 8px rgb(50 50 50 / 8%);
    border-radius: 12px;
    margin: 30px;
    padding: 10px;
  }

  .footer-modal-doc-mobile {
    padding: 15px !important;
    padding: 7% !important;
    padding-top: 0% !important;
    border-top: 0px !important;
  }
}

  /* Tablet */
  @media screen and (min-width: 576px) and (max-width: 1200px){
    .back-color-responsive {
      background-color: #eeeeee !important;
    }

    .top-modal {
      top: 0px !important;
      right: 0px !important;
      position: absolute !important;
      max-width: 100% !important;
      width: 100% !important;
      height: 99% !important;
      margin-top: 2% !important;
    }

    .align-content {
      margin-left: -1px !important;
      margin-right: -1px !important;
    }

    .title {
      margin-left: 14px !important;
    }

    .sub-title {
      margin-left: 2px;
    }
}

.btn-torna-navigare {
  border-radius: 25px 25px 0 25px !important; 
  display: inline-block;
  text-align: center;
  margin-top: 0px !important; 
  width: 14em;
  margin-left: auto;
  margin-right: auto;
  color: white !important;
  border: 1px solid #e84e0f;
  background-color: #e84e0f;
  font-size: 16px;
  padding-top: 6px;
  height: 42px;
}

/* Scroll bar modal call me back for mobile */
@media screen and (orientation: landscape) and (max-height: 500px) {
  .horizontal-scroll {
    overflow: auto !important;
  }

  .landscape-btn {
    bottom: -53% !important;
  }
}

@media screen and (orientation: landscape) and (min-height: 300px) and (max-height: 350px) {
  .landscape-btn-responsive {
    bottom: -72% !important;
  }
}

.popupBackground{
  background-color:black;
  opacity: 0.35;
  filter: alpha(opacity = 20);
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 9998;
  }

/* CSS PER CONSULTA LA DOCUMENTAZIONE DESKTOP - START */
#dvRiepilogo{
  width: 100%;
  padding-bottom: 38px;
  padding-left: 20px;
}

#dvBoxes {
  width: 33.33%;
  display: inline-block;
  vertical-align: top;
  margin-right: -4px;
}

@media only screen and (min-width: 1024px){
  #dvDocBoxes {
      width: 93%;
  }
  #dvDocBoxes {
      width: 283px;
      padding: 26px 23px;
  }
}

#dvDocBoxes {
  align-items: center;
  margin: auto 0;
  padding: 33px 30px;
  width: 283px;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 8px 14px 0 rgb(0 0 0 / 5%);
  transition: all .4s;
  margin-bottom: 40px;
  position: relative;
}

#dvBoxDesc {
  max-width: 300px;
  display: inline-block;
  font-family: Karla;
}

#pBoxTitle {
  font-size: 18px !important;
  line-height: 22px !important;
  letter-spacing: -1px !important;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  margin: 0;
}

#aBoxDescription{
  background-color: transparent;
  text-decoration: none;
  font-size: 16px;
  line-height: 1.25;
  letter-spacing: -1.1px;
  color: #8e8e8e;
}

#imgBox{
  width: 27px;
  height: 27px;
  vertical-align: middle;
  border: 0;
}

#dvBoxImg{
  position: absolute;
  right: 30px;
  top: 44px;
  box-sizing: border-box;
}
/* CSS PER CONSULTA LA DOCUMENTAZIONE DESKTOP - END */

.radioChecked{
  background-color: #e84e0f;
  border: 2px solid #e84e0f;
  box-shadow: 0px 2px 5px 0px #b4b4b4;
  background-image: url({!$Resource.checkwhite});
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 120%;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: inline-block;
  position: relative;
  top: 8px;
  margin-right: 8px;
  transition: all .1s;
  }