
<style id="no-selectboxit">
    #selProvSelectBoxItContainer {
        display:none !important;
    }
.bg-blue {
background-color: #d3135a;
}
</style>
<style id="custom-header">

.htm-visual__row {
display: flex;
flex-wrap: wrap;
padding-top: 30px
}

.htm-visual__col {
max-width: 100%;
flex: 0 0 auto;
width: 100%
}

@media (min-width:768px) {
.htm-visual__col {
    width: 50%
}
}

.htm-visual__claim {
padding-top: 20px
}

@media (min-width:768px) {
.htm-visual__claim {
    padding-top: 40px
}
}

.htm-visual__img {
max-width: 100%;
height: auto;
display: block;
margin-left: auto
}

@media screen and (max-width:767px) {
.htm-visual__img {
    margin-top: 0
}
}

.cards,
ol,
ul {
list-style: none
}

:root {
--color-cards: #26543f;
--color-orange: #d3135a
}

#hml-header #countdown h4,
body,
html {
margin: 0;
padding: 0
}

body,
button {
font-family: RoobertENEL, serif
}

html {
scroll-behavior: smooth;
/* font-size: 10px; */
}

body,
html {
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
outline: 0;
text-rendering: optimizeLegibility;
-moz-font-smoothing: antialiased;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale
}

body h1,
body h2,
body h3,
body h4,
html h1,
html h2,
html h3,
html h4 {
cursor: default;
margin-bottom: .5rem;
font-weight: 900;
line-height: 1.1;
font-family: inherit
}

body {
position: relative;
/* font-size: 2.6rem; */
font-weight: 400;
line-height: 1.3;
color: #323232;
text-align: left;
letter-spacing: .02rem;
}

body .htm-container {
width: 90%;
max-width: 1110px;
margin: auto;
z-index: 9999;
position: relative
}

.text-color span,
p {
font-weight: 300
}

#htm-call-to-action span,
#htm-content .htm-content-sconto h3 strong,
.bold-text,
.card_text span,
.countdown {
font-weight: 700
}

* {
-webkit-tap-highlight-color: rgba(255, 255, 255, 0);
-webkit-tap-highlight-color: transparent
}

ol,
ul {
padding-left: 0
}

.lightbox-overlay :focus,
a,
a:active,
a:focus,
a:hover {
outline: 0
}

input::-moz-focus-inner {
border: 0
}

.htm-btn {
cursor: pointer;
background-color: transparent;
border: 1px solid transparent;
transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
-webkit-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out
}

#htm-visual,
.countdown {
background-color: #d3135a
}

#htm-content,
#htm-tabs-container {
transition: background-color .3s ease-in-out
}

.htm-btn span {
vertical-align: middle
}

.htm-btn img {
margin-left: 20px;
vertical-align: middle
}

.cmlead .error,
.cmlead .hide,
.cmleadResultKo,
.cmleadResultOk,
.cmlead_col .error.hidden,
.d_desktop,
.htm-btn .arrow_hover,
.htm-btn-submit .arrow_hover,
.htm-btn-submit:hover .arrow,
.htm-btn:hover .arrow,
.htm-none,
.htm-xl-none,
.notMatch.hidden,
.show-mob,
.slide,
.slide .desktop {
display: none
}

.htm-btn-submit:hover .arrow_hover,
.htm-btn:hover .arrow_hover {
display: inline-block
}

#htm-visual {
position: relative;
overflow: hidden;
z-index: 1;
color: #fff
}

#htm-visual .htm-container .header {
position: relative;
z-index: 999;
margin: 30px auto 0;
display: flex
}

#htm-visual .htm-container .header .htm-visual-content {
height: 35px
}

#htm-visual .htm-container .header .htm-visual-content img {
width: auto
}

#htm-tabs-container .htm-container,
#htm-visual .htm-container .col {
width: 100%
}

#header-campain-logo {
width: 100%;
height: auto;
padding-top: 0;
padding-bottom: 0;
margin-top: -60px
}

#header-campain-logo img {
width: 100%;
margin-inline: auto
}

.col.countdown-component,
.col:has(.countdown) {
display: flex;
justify-content: flex-end
}

.countdown {
border-radius: 50px;
border: 1px solid #fff;
height: 33px;
display: flex;
justify-content: center;
align-items: center;
padding: 0 20px;
font-size: 15px;
max-width: 250px;
display: flex
}

@media screen and (min-width:768px) {
#htm-visual .htm-container .header .htm-visual-content {
    height: 50px
}

.countdown {
    height: 48px;
    padding: 0 30px
}

.cmlead_outro>div .blocco-loghetto {
    margin-right: 21px
}

.cmlead_outro {
    padding: 10px
}

.cmlead_outro>div {
    max-width: 1110px;
    margin-left: auto;
    margin-right: auto
}

.cmlead_outro>div .blocco-testo {
    padding-right: 90px;
    font-size: 18px
}

.blocco-privacy {
    width: 100%
}

#form-lead-a-caldo .cmlead_col:not(:first-child) {
    margin-left: 30px
}
}

@media screen and (min-width:992px) {
.countdown {
    padding-top: 50px
}
}

#htm-visual .htm-container .col img {
height: 100%
}

#htm-visual .logo-enel {
position: relative;
width: 13%;
max-width: 150px;
min-width: 100px;
height: auto;
z-index: 999
}

#htm-visual .logo-richiamo {
position: absolute;
top: 25px;
width: 321px;
height: 86px;
right: 0
}

#htm-visual h3 {
font-size: 22px;
text-align: center;
font-weight: 400;
letter-spacing: -.04rem;
margin-bottom: 10px;
margin-top: 58px
}

#htm-visual h1 {
font-weight: 900;
width: auto;
margin: 0;
color: #fff;
font-size: 11vw
}

@media (max-width:576px) {
.htm-visual__claim-subtitle {
    font-size: 5vw
}
}

@media (min-width:576px) {
html {
    /* font-size: 9px; */
}

.htm-sm-none {
    display: none
}

.htm-sm-block {
    display: block
}

#htm-visual h1 {
    font-size: 11.5vw
}

#htm-visual h3 {
    font-size: 25px
}
}

@media (min-width:768px) {
.htm-md-none {
    display: none
}

.htm-md-block {
    display: block
}

#htm-visual .htm-container .col.htm-visual-content {
    padding-right: 10px
}

#htm-visual .htm-container .col {
    width: 50%
}

#htm-visual .htm-container .col.countdown-component {
    display: flex;
    justify-content: flex-end
}

#htm-visual h1 {
    font-size: 55px
}

#htm-visual h3 {
    font-size: 25px
}
}

#htm-visual .htm-btn-richiesta {
display: inline-block;
/* font-size: 1.6rem; */
padding: 1rem 2.2rem;
text-decoration: none;
font-weight: 900;
position: relative;
color: #d3135a;
border: 1px solid #fff;
background-color: #fff;
margin-top: 30px;
margin-bottom: 30px
}

#htm-visual .htm-btn-richiesta:hover {
color: #fff;
border: 1px solid #fff;
background: #d3135a
}

#htm-content section .htm-box .htm-btn-richiesta span,
#htm-content section .htm-box .htm-btn-richiesta2 span,
#htm-visual .htm-btn-richiesta span {
display: inline-block;
position: relative;
z-index: 1
}

@media (min-width:768px) {
#htm-visual .htm-btn-richiesta {
    /* font-size: 1.9rem; */
    /* padding: 1.45rem 2.2rem; */
}
}

#htm-visual .htm-visual-bg {
position: relative
}

@media all and (-ms-high-contrast:none) {
#htm-visual .logo {
    top: 55px
}

#htm-visual .logo,
* ::-ms-backdrop {
    top: 55px
}
}

#htm-content {
padding-bottom: 0;
position: relative
}

#htm-content .viewmaggiortutela {
display: none;
margin-top: auto
}

#htm-content .viewmercatolibero {
margin-top: auto
}

#htm-content .htm-container {
padding-top: 55px;
max-width: 1140px
}

#htm-content .htm-content-sconto {
min-height: 90px;
padding-top: 40px;
color: #fff
}

.disclaimer.t12 {
font-size: 12px;
padding-top: 0;
padding-bottom: 16px
}

.disclaimer.t12.mobile {
padding-top: 15px
}

#htm-content .htm-content-sconto h3,
#htm-content .htm-content-sconto p {
font-weight: 300;
text-align: center;
margin-left: auto;
margin-right: auto
}

#htm-content .htm-content-sconto p {
margin-top: 5px;
margin-bottom: 5px;
font-size: 1.5rem;
font-weight: 300;
width: 85%
}

#htm-content .htm-carosuel-info p strong,
#htm-content .htm-content-sconto p strong {
font-weight: 500
}

#htm-content .htm-content-sconto h3 {
margin-top: 5px;
font-size: 36px
}

#htm-content .htm-carosuel-info {
padding-top: 17px;
margin-bottom: 27px;
color: #fff
}

#htm-content .htm-carosuel-info p {
font-weight: 300;
text-align: center;
margin: 5px auto;
font-size: 1.5rem;
width: 85%
}

#htm-offerta,
.hide-mob,
.htm-xl-block,
.slide.showing {
display: block
}

#htm-content #anchor-content {
position: absolute;
top: 0
}

#htm-claim {
background-color: #fff;
font-size: 20px;
padding-top: 40px;
padding-bottom: 40px;
font-weight: 300;
text-align: center
}

.htm-claim-txt {
font-size: 1.65rem
}

.htm-claim-carousel {
font-size: 1.5rem
}

#htm-claim .htm-container {
max-width: 1116px
}

#htm-claim span,
#htm-claim strong,
.htm-claim-txt span {
color: #d3135a;
font-weight: 700
}

.htm-claim-carousel.htm-claim-txt span {
font-weight: 400;
color: #222
}

#lightbox-pod {
position: fixed !important;
z-index: 1000;
top: 0 !important;
left: 0 !important;
bottom: 0 !important;
right: 0 !important;
transition: opacity .1s ease-in;
opacity: 0;
display: none
}

#lightbox-pod.show {
display: inline-block;
z-index: 1010;
transition: opacity .1s ease-in;
opacity: 1;
visibility: visible
}

.lightbox-overlay-wrapper {
display: block;
height: 0;
max-height: 100%;
max-width: 100%;
min-height: 100%;
min-width: 100%;
width: 0;
margin: auto
}

.lightbox-overlay {
background-color: rgba(0, 0, 0, .3);
width: 100%;
height: 100%
}

.lightbox-overlay .lightbox-content {
background-color: #fff;
position: absolute;
width: 74%;
margin: auto;
padding: 40px 7% 60px;
top: 0;
bottom: 0;
left: 0;
right: 0;
height: 60%;
max-height: 588px;
max-width: 954px;
min-height: 420px;
text-align: center
}

.lightbox-overlay .lightbox-content .btn-close {
position: absolute;
top: 20px;
right: 7%;
border: none;
background: 0 0;
cursor: pointer
}

.lightbox-overlay .lightbox-content h4 {
text-align: center;
font-weight: 500;
margin-top: 0;
margin-bottom: 30px;
font-size: 26px
}

.lightbox-overlay .lightbox-content li,
.lightbox-overlay .lightbox-content p,
.lightbox-overlay .lightbox-content ul {
font-size: 21px
}

@media (max-width:320px) {
.lightbox-overlay .lightbox-content h4 {
    font-size: 24px;
    margin-bottom: 15px
}

.lightbox-overlay .lightbox-content p {
    font-size: 18px
}

.lightbox-overlay .lightbox-content img {
    max-width: 95px;
    max-height: 125px
}
}

@media (max-width:576px) {
.lightbox-overlay .lightbox-content img {
    max-width: 135px;
    max-height: 180px
}

htm-claim-1 {
    font-size: 1.4rem
}

.re-desk {
    display: none !important
}

.re-mob {
    display: block !important
}
}

@media (min-width:768px) {
#htm-content #anchor-content {
    top: -150px
}

#htm-claim {
    font-size: 32px
}

.htm-claim-txt {
    font-size: 2.6rem
}

.htm-claim-carousel {
    font-size: 2.1rem
}

#htm-claim p {
    margin: 0
}

#htm-claim p.htm-claim-1 {
    margin-bottom: 40px;
    margin-top: 20px
}

.lightbox-overlay .lightbox-content {
    width: 85%;
    padding: 40px 50px 60px
}

.lightbox-overlay .lightbox-content .btn-close {
    top: 25px;
    right: 25px
}

.lightbox-overlay .lightbox-content img {
    max-width: unset;
    max-height: unset
}

.lightbox-overlay .lightbox-content h4 {
    font-size: 35px
}

.lightbox-overlay .lightbox-content p {
    font-size: 29px
}

#htm-tabs-container .htm-container {
    width: 90%
}

.cmlead_outro p {
    width: 75%;
    font-size: 32px;
    margin: 3rem auto 3rem 0;
    font-weight: 500;
    text-align: left
}
}

@media (max-height:790px) and (min-width:576px) {
.lightbox-overlay .lightbox-content img {
    max-width: 165px;
    max-height: 220px
}
}

#htm-tabs-container {
padding-top: 2rem;
padding-bottom: 0;
background-color: #d3135a
}

#htm-tabs-container .htm-container .infoLink {
margin-bottom: 35px;
text-align: center;
color: #fff
}

#htm-tabs-container .htm-container .infoLink h3 {
font-weight: 400;
font-size: 28px
}

#htm-tabs-container .htm-container .infoLink h4 {
margin: 0;
font-size: 15px;
font-weight: 300
}

#htm-tabs-container .htm-container .infoLink h4 a {
font-size: inherit;
font-weight: inherit;
transition: color .3s ease-out;
-webkit-transition: color .3s ease-out;
text-decoration: underline;
cursor: pointer
}

#htm-tabs-container .htm-tabs {
font-size: 1.2rem;
display: flex;
flex-wrap: wrap;
justify-content: center;
text-align: center
}

#htm-tabs-container .htm-tabs .htm-tabs-toggle {
display: block;
height: 60px;
width: 90%;
max-width: 348px;
padding: 3px;
border: 2px solid #666;
border-radius: 80px;
position: relative;
background-color: #fff
}

#htm-tabs-container .htm-tabs .htm-tabs-toggle .htm-tabs-toggle-switch {
position: absolute;
z-index: 0;
display: block;
border-radius: 80px;
width: calc(50% - 6px);
height: calc(100% - 6px);
background-color: #d3135a;
top: 3px;
left: 3px;
transition: .3s ease-in-out
}

#htm-bg-overlay {
height: 0;
opacity: 0;
transition: opacity .3s ease-in-out .2s
}

#htm-bg-overlay button {
opacity: 0;
width: 100%;
height: 100%;
border: none
}

#htm-bg-overlay.open {
position: absolute;
background-color: rgba(0, 0, 0, .5);
width: 100%;
height: 100%;
z-index: 8;
opacity: 1
}

#htm-box-form {
position: relative;
width: 100%;
background-color: #f5f5f5;
padding-top: 40px;
padding-bottom: 20px
}

#htm-box-form .htm-form {
padding: 0 5%;
width: 90%;
position: relative;
margin: auto;
box-sizing: initial
}

#htm-box-form .htm-form .htm-btn-close {
margin-left: -10%;
margin-top: 10px;
border: none;
background-color: #fff;
padding: 10px 5%
}

#htm-box-form .htm-form h2 {
font-size: 1.8rem;
font-weight: 500;
margin-top: 5px
}

#htm-box-form .htm-form input,
#htm-box-form .htm-form select {
border: 1px solid #696969;
padding: 0 10px 0 20px;
width: calc(94% - 2px);
min-height: 48px;
font-size: 14px
}

#htm-box-form .htm-form select {
min-height: 50px;
background-image: url(assets/img/ico/select.png);
background-repeat: no-repeat;
background-position: center right 15px;
background-size: auto 20%;
min-width: calc(100% - 0px)
}

@media screen and (min-width:768px) and (max-width:890px) {

#htm-box-form .htm-form input,
#htm-box-form .htm-form select {
    padding: 0 10px
}

#htm-box-form .htm-form select {
    background-position: center right 5px
}
}

.max200 {
max-width: 200px !important
}

#htm-box-form .htm-form .htm-btn-submit {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
background-color: var(--color-cards);
color: #fff;
height: 50px;
padding: 0 15px;
width: 100%;
border: 1px solid transparent;
cursor: pointer;
position: relative;
display: flex;
align-items: center;
justify-content: space-around
}

@media screen and (max-width:768px) {
#htm-box-form .htm-form .htm-btn-submit {
    justify-content: center
}
}

#htm-box-form .htm-form .htm-btn-submit a,
#htm-box-form .htm-form .htm-btn-submit span {
display: inline-block;
font-family: RoobertENEL, serif;
font-size: 1.5rem;
font-weight: 700;
position: relative;
z-index: 1;
text-decoration: none;
vertical-align: middle
}

#htm-box-form .htm-form .htm-btn-submit a {
color: #fff;
display: block;
text-align: center
}

#htm-box-form .htm-form .htm-btn-submit img {
vertical-align: middle;
margin-left: 20px
}

@media (max-width:768px) {
#htm-box-form .htm-form .htm-btn-submit img {
    vertical-align: middle;
    margin-left: 5px
}
}

#htm-box-form .htm-form .htm-btn-submit:hover {
color: #0b563d;
border: 1px solid var(--color-cards);
background-color: #fff
}

#htm-box-form .htm-form .htm-btn-submit:hover a {
color: #0b563d;
display: block
}

#htm-box-form .htm-form .htm-btn-submit:disabled {
opacity: .4;
pointer-events: none
}

#htm-box-form .htm-form #ctaLead {
color: #222;
font-size: 1.5rem;
transition: color .3s ease-out;
-webkit-transition: color .3s ease-out
}

#htm-box-form .htm-form #ctaLead:hover {
color: var(--color-cards)
}

#htm-box-form fieldset {
border: 0;
padding: 0;
margin: 0;
display: flex
}

#htm-box-form fieldset .selection-field {
display: flex;
align-items: center;
min-width: 135px;
flex-wrap: wrap;
margin-right: 40px;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none
}

#htm-box-form fieldset .selection-field input {
padding: 0;
margin: 0;
height: 25px;
width: 25px;
border: 0
}

#htm-box-form fieldset .selection-field input:checked~.checkmark,
#htm-btn-form-mobile:hover {
background-color: var(--color-cards)
}

#htm-box-form fieldset .selection-field label {
margin-left: 14px;
line-height: 1.2;
font-size: 16px;
outline: 0;
text-align: left
}

#htm-box-form fieldset .selection-field input[type=radio] {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
background-color: #fff;
display: flex;
border: 3px solid #696969;
cursor: pointer;
font: inherit;
border-radius: 15px;
width: 30px;
height: 30px;
min-height: 30px;
margin: 10px 0
}

#htm-box-form fieldset .selection-field input[type=radio]:before {
content: "";
display: block;
border-radius: 50%;
box-shadow: inset 20px 20px var(--color-cards);
width: 10px;
height: 10px;
margin: auto;
transform: scale(0);
transition: 150ms ease-in-out
}

#htm-box-form fieldset .selection-field input[type=radio]:checked:before {
transform: scale(1)
}

#validator_row {
display: flex;
flex-direction: row
}

@media (max-width:991px) {
#validator_row {
    flex-direction: column
}

#validator_row>.form-group,
#validator_row>.form-radio-selector {
    width: 100% !important
}
}

#validator_row .form-group {
width: 100%;
text-align: center
}

#validator_row .form-group #validator_container {
display: inline-flex;
flex-direction: column;
align-items: start
}

#validator_row .form-group #validator_container label {
font-size: 16px;
padding-bottom: 10px
}

#validator_row .form-group #rcaptcha_form_lead_a_caldo {
display: inline-flex;
justify-content: center
}

#validator_row .form-radio-selector {
width: 50%;
justify-content: center
}

#validator_row .form-radio-selector .selection-field {
flex-wrap: nowrap !important;
margin-top: 38.8px
}

#validator_row .form-radio-selector .selection-field:last-of-type {
margin-right: 0 !important
}

#htm-footer .htm-disclaimer h4,
#htm-footer .htm-disclaimer p strong {
font-weight: 500;
text-transform: uppercase
}

#htm-btn-form-mobile {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
border: none;
background-color: #d3135a;
position: fixed;
width: 50px;
height: 50px;
z-index: 100;
top: 2rem;
right: 1.5rem;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 0 7px 0 rgba(0, 0, 0, .35);
cursor: pointer;
opacity: 0;
visibility: hidden
}

.radio-selector {
display: flex;
flex-direction: row;
margin-top: 25px;
margin-bottom: 37px
}

.radio-selector [option] {
display: flex;
align-items: center;
outline: 0;
font-size: 16px;
line-height: 24px;
margin-right: 14px
}

.radio-selector [option]:before {
transition: background .25s ease-in-out;
content: "";
display: inline-block;
width: 24px;
height: 24px;
margin: var(--space-1);
border-radius: 100%;
background-color: #fff;
border: 2px solid grey;
margin-right: 8px
}

.radio-selector [option][selected] {
cursor: auto;
outline: 0
}

.radio-selector [option][selected]:before {
text-align: center;
content: " •";
color: #0b563d;
background-color: #fff;
border: 2px solid grey;
font-size: 40px;
line-height: 18px
}

#htm-footer {
background: #fff;
margin-bottom: 100px
}

#htm-footer .content-client {
opacity: 0;
height: 0;
transition: .5s;
overflow: hidden
}

#htm-footer.new-client .content-client.content-new-client {
opacity: 1;
height: auto
}

#htm-footer .htm-disclaimer {
font-weight: 500;
font-size: 9px;
color: #010101;
padding: 15px 0;
text-align: justify
}

#htm-footer .htm-disclaimer h4 {
margin-bottom: 1.5rem;
font-size: 9px
}

#htm-footer .htm-disclaimer h5 {
font-size: 11px;
color: #222
}

#htm-footer .htm-disclaimer p {
font-size: 8px
}

#htm-footer .htm-disclaimer a {
color: #010101;
font-weight: 400
}

#htm-footer .htm-disclaimer .no_uppercase {
text-transform: none
}

.blocco-privacy {
height: 100px;
overflow-y: scroll;
line-height: 15px;
border: 1px solid #696969;
padding: 15px 22px
}

.blocco-privacy h4 {
margin-top: 0;
font-size: 15px;
color: #222
}

.blocco-privacy span {
font-size: 12px;
line-height: 14px;
color: #666
}

.cmlead_row {
padding: 5px 0;
display: flex;
width: 100%
}

.cmlead_form .ui-widget,
.social-media-wrapper {
display: flex
}

.cmlead_col label,
.cmlead_col p {
margin: 10px 0;
font-size: 15px
}

.ui-menu .ui-menu-item {
margin: 0;
width: 100%
}

.ui-menu .ui-menu-item a {
font-weight: 400;
line-height: 18px;
min-height: 60px;
display: flex;
align-items: center;
text-decoration: none;
padding: 0 4px 0 10px
}

.ui-menu .ui-menu-item a.ui-state-active,
.ui-menu .ui-menu-item a.ui-state-focus {
font-weight: 400;
background: #eee;
cursor: pointer
}

.ui-autocomplete::-webkit-scrollbar-thumb {
background: #666;
border-radius: 5px
}

.ui-autocomplete::-webkit-scrollbar {
width: 7px
}

.ui-autocomplete::-webkit-scrollbar-track {
background: #fff
}

.notMatch {
margin: 0;
background: #f7f6f6;
padding: 0 3%;
box-shadow: 2px 2px 10px silver;
position: absolute;
width: 94%;
z-index: 99;
height: 50px;
line-height: 42px
}

.card_image,
.spacer {
height: 70px
}

.cmlead_col .notMatch p {
font-size: 13px;
line-height: 17px;
padding: 8px 0;
margin: 0;
display: inline-block
}

.ui-menu .ui-state-disabled a {
cursor: default
}

.cmlead_col label {
-webkit-font-smoothing: auto
}

input::-moz-placeholder {
color: #696969;
font-family: inherit;
font-size: 14px !important
}

input::placeholder {
color: #696969;
font-family: inherit;
font-size: 14px !important
}

.cmlead_col.col-6 {
width: 35%;
position: relative
}

.cmlead_col.col-4 {
width: 23%;
position: relative
}

.cmlead_col.col-2 {
width: 12%;
position: relative
}

.cmlead_col input.inputError {
border: 2px solid #ff0f64
}

.cmlead_col .error {
color: #ff0f64;
font-size: 12px
}

.cmlead .form-control {
width: 100%;
border: 2px solid rgba(0, 0, 0, .15);
border-radius: 0;
color: #000;
background: #fff;
z-index: 2;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
transition: .1s linear
}

.slide .button,
.slide .cta-htm-new {
color: var(--color-orange);
background-color: #fff
}

.cmlead .screen-reader-text {
font-size: 0
}

.cmlead .autocomplete-list {
background: #eee;
box-shadow: 0 0 10px #c4c4c4;
z-index: 1;
max-height: 100px;
overflow: auto;
position: absolute;
width: 100%
}

.cmlead .autocomplete-list li {
margin-bottom: 5px;
padding: 10px;
cursor: pointer
}

.cmlead .autocomplete-list li:hover {
background: #ddd
}

.cmlead .autocomplete-list li.disabled:hover {
background: 0 0;
cursor: auto
}

@media screen and (min-width:813px) and (max-width:1024px) {
.cmlead_row {
    padding: 10px 0 5px;
    display: flex;
    width: 100%
}

.cmlead_col {
    max-width: 613px
}
}

@media screen and (min-width:768px) and (max-width:812px) {
.cmlead_row {
    padding: 10px 0 0
}

.cmlead_col {
    max-width: 391px
}
}

@media screen and (max-width:767px) {

.cmlead,
.cmlead_col {
    margin-bottom: 30px
}

.cmlead_inner {
    padding-bottom: 10px;
    text-align: center
}

.cmlead_row {
    padding: 10px 0 5px;
    display: block;
    width: 100%
}

.cmleadResult_row p,
.cmlead_col .notMatch p {
    font-size: 15px
}

.cmlead .form-control {
    height: 49px;
    font-size: 15px
}

.cmlead_col p {
    font-size: 13px
}

.cmlead_col label {
    font-size: 13px;
    -webkit-font-smoothing: auto
}

.cmleadResult {
    font-size: 28px
}

.cmleadResult_row h3 {
    font-size: 22px
}

input::-moz-placeholder {
    font-size: 15px !important
}

input::placeholder {
    font-size: 15px !important
}

.cmlead_col {
    margin-left: 0
}

#form-lead-a-caldo .col-1,
#form-lead-a-caldo .col-2,
#form-lead-a-caldo .col-4,
#form-lead-a-caldo .col-6,
.cmlead_col.col-1,
.cmlead_col.col-2,
.cmlead_col.col-4,
.cmlead_col.col-6 {
    width: 100%
}
}

.cmleadResult_row {
padding: 0;
display: block;
width: 100%
}

.cmleadResult {
font-weight: 700;
font-size: 48px;
margin-bottom: 40px;
margin-left: 0
}

.cmleadResult_row h3 {
font-size: 30px;
margin-bottom: 10px
}

.cmleadResult_row p {
font-size: 18px
}

.inline {
display: inline-block;
width: 100%
}

.cmleadResult_row.twocta {
padding: 25px 25px 0 0;
float: left;
display: contents
}

.twocta a:hover {
text-decoration: none
}

#ctaLead span.link {
text-transform: unset;
text-decoration: underline
}

.wa {
position: absolute;
z-index: 999999;
top: 10px;
right: -2px;
cursor: pointer
}

#htm-call-to-action {
position: fixed;
z-index: 99999;
left: 0;
right: 0;
bottom: 0;
display: block;
text-align: center;
text-decoration: none;
border: none;
background-color: #d3135a;
color: #fff;
width: 100%;
padding: 18px 0;
font-size: 20px;
-webkit-text-decoration: noneopacity .4s ease-in-out;
text-decoration: noneopacity .4s ease-in-out;
transition: opacity .4s ease-in-out
}

.hideme {
opacity: 0 !important;
display: none !important;
}

.htm-box .action-link {
margin-top: auto;
margin-bottom: 2rem
}

.htm-cont-prezzo {
border-top: 1px solid #cdcdcd;
margin: 0 auto 25px;
width: 92%;
max-width: 275px
}

.htm-cont-prezzo h4 {
margin: 0;
color: #666;
text-align: center;
font-size: 1.7rem;
font-weight: 700
}

.htm-cont-prezzo h5 {
margin: 0;
color: #666;
font-weight: 600;
font-family: inherit;
font-size: 1.1rem
}

.htm-box-content ul {
padding: 0 0 0 20px;
text-align: left;
list-style: outside
}

.htm-box-content ul li {
white-space: normal;
font-size: 1.6rem;
font-weight: 300;
width: 90%;
max-width: 300px;
margin-left: auto;
margin-right: auto;
margin-bottom: 0;
color: #666;
letter-spacing: -.04em;
list-style-position: outside
}

.htm-box-content .infoLink {
max-width: 90%;
min-height: 50px;
display: flex;
align-items: center;
font-size: 1.6rem;
font-weight: 300;
text-align: center;
justify-content: center;
margin: 0 auto
}

.infoLink a {
font-size: 1.5rem;
font-weight: 500;
text-align: center;
margin: auto;
color: #222;
transition: color .3s ease-out;
-webkit-transition: color .3s ease-out;
text-decoration: underline;
cursor: pointer
}

.infoLink a:hover {
color: #d3135a
}

@media (min-width:1110px) {
#carousel-container {
    padding-bottom: 0
}
}

.cmlead_outro>div {
flex-wrap: wrap;
justify-content: center;
margin: 3rem auto
}

.cmlead_outro p {
width: 95%;
font-size: 32px;
margin: 3rem auto;
font-weight: 500;
text-align: center
}

.cmlead_outro a {
text-align: center;
text-decoration: none;
font-weight: 900;
position: relative;
color: #d3135a;
background: #fff;
border: 1px solid transparent;
width: 80%;
height: 40px;
line-height: 40px;
max-width: 200px;
margin: 0 auto;
display: block;
font-size: 1.6rem
}

.cmlead_outro a span {
font-size: inherit;
font-weight: 900
}

.cmlead_outro a:hover {
color: #fff;
background-color: #d3135a;
border: 1px solid #fff
}

#blackoverlay {
background: bottom right/cover #000;
position: absolute !important;
opacity: .5;
width: 100vw;
height: 20px !important;
z-index: 9
}

.htm-form select:focus,
.logo-richiamo:focus,
:focus,
a span:focus,
a#htm-call-to-action:focus,
a.htm-btn-contact.htm-btn:focus,
a.htm-btn-richiesta.htm-btn.re-desk:focus,
a:focus,
button:focus,
input#acconsento:focus,
input#cognome:focus,
input#nome:focus,
input#nonacconsento:focus,
input#telefonoCellulare:focus,
input:focus {
outline: #ccc solid 3px !important
}

#openpower {
font-size: 14px;
font-weight: 700;
color: #c6c6c6;
display: block;
line-height: 1;
margin-bottom: 10px
}

:where(svg:not([fill])) {
fill: currentColor
}

.htm-social-icons {
font-size: 21px;
--theme-gutter-x: 10px;
--theme-gutter-y: 0;
display: flex;
flex-direction: column
}

@media (min-width:768px) {
#htm-box-form .htm-form select {
    min-width: calc(100% + 20px)
}

#htm-box-form fieldset .selection-field label {
    margin-left: 15px;
    font-size: 18px
}

#htm-box-form {
    top: 100%;
    overflow: visible;
    max-width: 100%;
    min-height: 160px;
    left: 0;
    right: 0;
    z-index: 1000;
    width: 100%
}

#htm-box-form .htm-form {
    margin: auto;
    width: 80%;
    max-width: 1110px;
    padding: 0 5% 20px;
    box-sizing: initial
}

#htm-box-form .htm-form h2 {
    font-weight: 300;
    font-size: 2.1rem
}

#htm-box-form .htm-form .htm-btn-submit {
    padding: 0 5px
}

#htm-box-form .htm-form .htm-btn-submit span {
    font-size: 1.5rem
}

#htm-box-form .htm-form .htm-btn-submit img {
    margin-left: 10px
}

#htm-box-form,
.observer-box-form {
    position: relative
}

.radio-selector [option] {
    margin-right: 42px;
    font-size: 18px
}

.radio-selector [option]:before {
    margin-right: 24px
}

.htm-cont-prezzo h4 {
    font-size: 2.5rem
}

.htm-cont-prezzo h5 {
    font-size: 1.55rem
}

.cmlead_outro a {
    font-size: 2.4rem;
    height: 45px;
    line-height: 45px;
    max-width: 265px
}

#openpower {
    font-size: 16px
}
}

@media (min-width:992px) {

.cmlead_outro__text br,
.htm-lg-block {
    display: block
}

.htm-lg-none {
    display: none
}

#hml-header {
    height: 74px
}

#hml-header .htm-page-logo {
    font-size: 38px
}

#hml-header #countdown {
    font-size: 30px
}

#htm-visual .logo-enel {
    position: absolute;
    top: 0
}

#htm-visual h1 {
    font-size: 70px;
}

#htm-visual h3 {
    margin-top: 0;
    font-size: 25px;
    text-align: left
}

#htm-visual .htm-btn-richiesta {
    /* font-size: 2.2rem; */
}

#validator_row .form-group {
    width: auto;
    text-align: left
}

#htm-box-form .htm-form .htm-btn-submit {
    padding: 0 5px;
    max-width: 300px
}

#htm-box-form .htm-form .htm-btn-submit span {
    font-size: 2rem
}

#htm-box-form .htm-form .htm-btn-submit img {
    margin-left: 20px
}

.htm-box .action-link {
    margin-bottom: 0
}

.cmlead_outro>div {
    display: flex;
    align-items: center
}

.cmlead_outro p {
    width: 75%;
    font-size: 33px;
    margin: 3rem auto 3rem 0;
    font-weight: 500;
    text-align: left
}

.cmlead_outro a {
    margin: 0 0 0 auto
}

#htm-box-form .htm-form h2,
.htm-btn-richiesta {
    /* font-size: 2.2rem; */
}

#htm-claim {
    font-size: 32px;
    line-height: 1.2;
    max-width: 1040px;
    margin-inline: auto
}

#htm-claim .htm-steps {
    padding-bottom: 64px
}

#htm-claim .htm-steps .htm-step-col {
    width: 33%
}

#openpower {
    font-size: 19px
}

.htm-social-icons {
    font-size: 25px;
    --theme-gutter-x: 22px
}
}

.htm-social-icons .htm-social-icon {
flex: 0 0 auto;
width: auto;
max-width: 100%;
padding-right: calc(var(--theme-gutter-x) * .5);
margin-top: var(--theme-gutter-y)
}

.svg-w-facebook {
width: 1em;
color: #1877f2
}

.svg-w-instagram {
width: 1em
}

.svg-w-linkedin {
width: .875em;
color: #006fb0
}

.svg-w-twitter {
width: 1em;
color: #55acee
}

.svg-w-youtube {
width: 1.125em;
color: red
}

.htm-loghi-social {
flex: 0 0 auto;
width: 100%;
display: flex;
flex-direction: column;
margin-bottom: 0
}

@media (min-width:576px) {
#htm-content .htm-content-sconto {
    min-height: 114px
}

#htm-content .htm-content-sconto p {
    margin-top: 0;
    margin-bottom: 0;
    width: 100%;
    font-size: 1.8rem
}

#htm-content .htm-carosuel-info p strong,
#htm-content .htm-content-sconto p strong {
    font-weight: 500
}

#htm-content .htm-content-sconto h3 {
    margin-top: 0;
    font-size: 49px
}

#htm-content .htm-content-sconto h3 strong {
    font-weight: 700
}

#htm-content .htm-carosuel-info p {
    margin-top: 0;
    margin-bottom: 0;
    width: 100%;
    font-size: 1.85rem
}

#htm-claim {
    font-size: 32px
}

#htm-tabs-container .htm-container .infoLink h3 {
    font-size: 48px
}

#htm-tabs-container .htm-container .infoLink h4 {
    font-size: 26px
}

.re-desk {
    display: block !important
}

.re-mob {
    display: none !important
}

#htm-call-to-action {
    position: relative
}

#htm-footer {
    padding-bottom: 2.8rem
}

.htm-loghi-social {
    width: auto;
    text-align: left;
    margin-bottom: 0
}
}

.card,
.card_content,
.t-center,
h1.multiline {
text-align: center
}

#htm-footer .htm-loghi {
display: flex;
justify-content: space-between;
flex-wrap: nowrap;
align-items: center
}

.cards {
display: flex;
flex-wrap: wrap;
margin: 0
}

.cards_item {
display: flex;
padding: 1rem
}

@media (min-width:764px) {
.cards {
    display: flex;
    justify-items: center;
    flex-wrap: nowrap;
    list-style: none;
    margin: 0;
    padding: 0
}

.cards_item {
    width: 33.3333%
}
}

@media (min-width:764) {
.cards_item {
    width: 33.3333%
}
}

.card_content {
padding: 1rem
}

.card_content h5 {
font-size: 14px;
margin: 0;
color: #d3135a
}

.card_title {
color: #d3135a;
font-size: 27.17px;
font-weight: 500;
letter-spacing: 1px;
text-transform: capitalize;
margin: 0;
padding-top: 20px
}

.card_text {
color: #2e2e2e;
font-size: 14px;
line-height: 1.5;
margin-bottom: 1.25rem;
font-weight: 400
}

.icon-gratis {
position: absolute;
right: 0;
top: -18px
}

.giro-15 {
display: flex;
box-sizing: border-box;
flex-wrap: wrap;
width: 100%;
box-shadow: 0 0 19px 7px rgba(194, 194, 194, .75);
-webkit-box-shadow: 0 0 19px 7px rgba(194, 194, 194, .75);
-moz-box-shadow: 0 0 19px 7px rgba(194, 194, 194, .75)
}

.text-color {
color: #d3135a;
margin: 0;
font-size: 20px;
font-weight: 700
}

.bloc-energy-component {
flex: 1 0 100%;
text-align: center;
padding: 30px 20px;
box-sizing: border-box
}

.bloc-energy-component h1 {
padding: 10px 0 50px;
margin: 0;
font-size: 30px;
text-transform: uppercase
}

.bloc-energy-component-price {
flex: 1 0 100%;
padding: 20px;
text-align: center;
box-sizing: border-box;
background: #f5f5f5
}

@media (min-width:768px) {
.text-color {
    font-size: 30px
}

.bloc-energy-component h1 {
    font-size: 38px
}

.bloc-energy-component-price p {
    font-size: 14px
}
}

.bloc-energy-component-price p {
font-size: 16px;
margin: 5px 0;
color: #2e2e2e
}

.bloc-energy-component-price h1 {
font-size: 34px
}

@media (min-width:768px) {
.bloc-energy-component-price h1 {
    font-size: 36px
}
}

.bloc-energy-component-price span {
font-size: 15px;
color: #2e2e2e;
font-weight: 300
}

.free-energy-component {
align-items: center;
margin-bottom: 30px
}

.free-energy-component img {
margin-bottom: 2rem;
padding-right: 19px
}

@media (min-width:1024px) {
.bloc-energy-component {
    flex: 1 0 65%;
    text-align: left;
    padding: 30px 45px
}

.bloc-energy-component-price {
    flex: 1 0 35%;
    padding: 20px;
    text-align: left
}

.free-energy-component {
    display: flex
}

.free-energy-component img {
    margin-bottom: 0
}
}

.free-energy-component2 img {
padding-right: 27px
}

.w-80 {
width: 80%
}

.w-20 {
width: 20%
}

.htm-loghi aside {
display: flex;
width: 50%;
justify-content: flex-end
}

@media (min-width:880px) {
.htm-loghi aside {
    padding-left: 40px
}
}

@media (max-width:768px) {

.w-20,
.w-80 {
    width: 100%
}

::-moz-placeholder {
    text-align: center
}

::placeholder {
    text-align: center
}

.show-mob {
    display: block;
    width: 115%
}

.hide-mob {
    display: none
}

.icon-gratis {
    max-width: 95px !important;
    right: -15px;
    padding-top: 50px
}

.htm-visual-image {
    display: flex;
    justify-content: center;
    margin-top: 10px
}
}

.notina {
position: absolute !important;
bottom: 0
}

@media screen and (max-width:767px) {
.htm-social-icon .youtube {
    max-width: 27px
}

.notina {
    display: none
}
}

.arrownavigation {
position: absolute;
top: 50%;
width: 98%;
left: 1%;
z-index: 9999;
right: 1%
}

.arrownavigation .arrownav {
position: absolute;
top: 50%;
background-color: #a4a4a4;
height: 30px;
width: 30px;
border-radius: 50%;
cursor: pointer;
display: flex;
justify-content: center;
align-items: center
}

#leftarrow {
left: 0
}

#leftarrow:before {
transform: rotate(135deg);
-webkit-transform: rotate(135deg)
}

#rightarrow:before {
transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
margin-left: 0
}

#rightarrow {
right: 0
}

.arrownav:before {
content: "";
border: solid #fff;
border-width: 0 3px 3px 0;
display: inline-block;
padding: 5px
}

#htm-content .arrownavigation {
display: block;
opacity: 1;
animation: 1.5s fadein
}

#htm-content:hover .arrownavigation {
display: block;
opacity: 1
}

@media (min-width:1140px) {

#htm-content .arrownavigation,
#htm-content:hover .arrownavigation {
    display: none
}
}

@keyframes fadein {
from {
    opacity: 0
}

to {
    opacity: 1
}
}

h1.big-overline {
font-size: 44px;
text-decoration: line-through
}

@media screen and (min-width:768px) {
h1.multiline {
    text-align: left
}
}

.cta-htm-new {
text-align: center;
text-decoration: none;
border: none;
border-radius: 8px;
background-color: #d3135a;
color: #fff;
width: 100%;
padding: 5px 0;
font-size: 23px;
font-weight: 400;
position: relative;
display: block
}

.cta-htm-new.mob-fixed {
width: 100%;
display: block;
position: fixed;
bottom: 0;
left: 0;
z-index: 999999
}

.cta-htm-new span {
position: relative;
margin-left: -20px
}

.cta-htm-new span:after {
content: "";
background-image: url(assets/img/ico/arrow_white.png);
background-repeat: no-repeat;
background-size: contain;
display: block;
position: absolute;
right: -50px;
top: 4px;
height: 20px;
width: 20px
}

.spacer {
display: block;
width: 100%
}

aside {
height: 34px;
overflow: hidden;
margin-top: 0
}

aside img {
height: 100% !important;
width: auto !important;
margin-left: 1rem;
max-width: auto !important
}

aside img:first-child {
margin-left: 0 !important
}

@media screen and (min-width:880px) {
aside {
    margin-top: 0;
    height: 60px
}
}

#htm-offerta .offerta-wrapper {
width: 100%;
box-sizing: border-box;
max-width: 450px;
border-radius: 30px;
overflow: hidden;
box-shadow: 0 0 19px 7px rgba(194, 194, 194, .75);
-webkit-box-shadow: 0 0 19px 7px rgba(194, 194, 194, .75);
-moz-box-shadow: 0 0 19px 7px rgba(194, 194, 194, .75);
margin-bottom: 50px;
margin-left: auto;
margin-right: auto
}

#htm-offerta .content-card-wrapper {
padding: 0 20px
}

#htm-offerta .offerta-card {
width: 100%;
box-sizing: border-box;
margin-bottom: 30px
}

#htm-offerta .offerta-card .offerta-head {
background-color: #d3135a;
padding: 0 20px
}

#htm-offerta .offerta-card .offerta-header {
color: #fff;
display: flex;
justify-content: flex-start;
align-items: center;
padding-top: 25px;
padding-bottom: 25px
}

#htm-offerta .offerta-card .offerta-header img {
height: 55px;
width: auto;
margin-right: 10px
}

#htm-offerta .offerta-card .offerta-header .title {
font-size: 34px;
font-weight: regular;
line-height: 1
}

@media screen and (min-width:600px) {
#htm-offerta .offerta-card .offerta-header .title {
    font-size: 43px
}
}

#htm-offerta .disclaimer .cornice {
padding: 8px;
border-radius: 15px;
border: 3px solid var(--color-cards);
color: var(--color-cards);
font-weight: 600;
font-size: 11px;
display: flex;
justify-content: center;
align-items: center;
margin-top: -20px;
background-color: #fff;
overflow: hidden
}

#htm-offerta .detail .description {
font-size: 14px;
font-weight: light;
color: #2e2e2e;
margin-top: 20px
}

#htm-offerta .detail .description.mt-10 {
margin-top: 10px !important
}

#htm-offerta .detail h2 {
font-size: 40px;
font-weight: 700;
color: #d3135a;
line-height: 1.2;
margin-top: 0;
margin-bottom: 0
}

#htm-offerta .detail h3 {
font-size: 30px;
font-weight: 700;
color: #d3135a;
line-height: 1.2;
margin-top: 0;
margin-bottom: 0
}

#htm-offerta .detail h1 {
font-size: 38px;
font-weight: 400;
color: #d3135a;
line-height: 1.2;
margin-top: 0;
margin-bottom: 0
}

@media screen and (min-width:450px) {
#htm-offerta .disclaimer .cornice {
    font-size: 17px
}

#htm-offerta .detail .description {
    font-size: 19px
}

#htm-offerta .detail h2 {
    font-size: 50px
}

#htm-offerta .detail h3 {
    font-size: 36px
}

#htm-offerta .detail h1 {
    font-size: 48px
}
}

#htm-offerta .wrapper {
width: 100%;
max-width: 350px;
margin-left: auto;
margin-right: auto
}

#htm-offerta .cta-htm-new {
margin-top: 15px
}

#htm-box-form .cmlead_intro h3 {
margin-top: 0;
color: var(--color-cards);
font-size: 38px;
font-weight: 400
}

#htm-box-form .cmlead_intro h4 {
margin-top: 15px;
color: #222;
font-size: 20px;
font-weight: 300;
padding-bottom: 40px
}

#htm-box-form .blocco-privacy h4,
.slide .button {
font-weight: 400
}

#htm-box-form .cmlead_intro h4 a {
color: #222;
font-weight: 700
}

#htm-box-form .blocco-privacy {
text-align: left
}

#htm-box-form .blocco-privacy a {
color: inherit
}

.slide .cta-htm-new {
padding: 10px 0;
border-radius: 0;
font-size: 19px;
max-width: 200px;
margin-top: 15px
}

.slide .button strong,
.slide .cta-htm-new span {
font-weight: 600
}

.slide .cta-htm-new span:after {
background-image: url(assets/img/ico/arrow_orange.png);
right: -30px;
top: 3px;
height: 18px;
width: 18px
}

.slide .button {
position: absolute;
top: -38px;
right: 0;
height: 45px;
display: flex;
border-radius: 21.5px;
padding-left: 20px;
padding-right: 0;
align-items: center;
font-size: 20px;
text-transform: uppercase
}

@media screen and (min-width:1024px) {
#htm-visual .htm-container .header .htm-visual-content {
    height: 55px
}

.countdown {
    height: 53px;
    padding: 0 40px;
    font-size: 2.6rem;
    display: flex
}

#htm-footer {
    margin-bottom: 0
}

.d_desktop,
.slide .desktop {
    display: block
}

.cta-htm-new {
    font-size: 23px;
    display: block
}

.cta-htm-new.mob-fixed,
.slide .button,
.slide .mobile {
    display: none
}

.cta-htm-new span {
    margin-left: -25px
}

#htm-offerta {
    display: flex;
    justify-content: space-around
}
}

.slide .button img {
width: 30px;
height: auto
}

#header-campain-logo .button {
min-width: 180px
}

#header-campain-logo .button img {
width: 40px;
height: auto
}

@media screen and (max-width:1024px) {
#header-campain-logo {
    margin-top: 30px
}
}

#htm-btn-phone-mobile-big {
position: fixed;
z-index: 99999;
top: auto;
bottom: 0;
opacity: 1;
-moz-transition: opacity .4s ease-in-out;
-ms-transition: opacity .4s ease-in-out;
-o-transition: opacity .4s ease-in-out;
transition: opacity .4s ease-in-out
}

.htm-btn-phone {
appearance: none;
border: none;
position: relative;
left: 0;
right: 0;
bottom: 0;
background-color: #d3135a;
color: #fff;
width: 100%;
height: 70px;
padding: 0 15px;
z-index: 5
}

.htm-btn-phone span {
display: inline-block;
vertical-align: middle;
font-family: RoobertENEL, serif;
font-size: 22px;
font-weight: 700;
position: absolute;
z-index: 1;
left: 0;
right: 0;
bottom: 14px;
border: 2px solid transparent;
width: 260px;
margin: auto;
padding: 4px 2px
}

.pb-4, .py-4 {
padding-bottom: 2.5rem !important;
padding-top: 1.5rem !important;

@media (max-width: 450px) {
    padding-bottom: 6.5rem !important;
}
}
</style>

<style id="custom-storeLocator">
/* Header */
@media (min-width: 1224px) {
.htm-visual__col:first-child {
   width: 60%;
}
.htm-visual__col:nth-child(2) {
   width: 40%;
}
}
#htm-visual {
min-height: 500px;
}

.htm-visual__row {
align-items: center;
}

.htm-visual__col:first-child {
display: flex;
flex-direction: column;
justify-content: flex-start;
align-items: flex-start;
height: 100%;
min-height: 500px;
padding-right: 20px;
}

.htm-visual__col:nth-child(2) {
display: flex;
justify-content: center;
align-items: center;
margin: 0 0 30px 0;
max-height: 425px;
max-width: 455px;
height: 425px;
}

.htm-visual__claim {
width: 100%;
}

#htm-visual h1 {
font-size: 64px;
margin-bottom: 15px;
line-height: 1;
}

#htm-visual .htm-visual__claim-subtitle {
font-family: 'RoobertENEL-Light';
font-size: 42px;
line-height: 1.05;
font-weight: 300;
margin-bottom: 50px;
max-width: 330px;
}

#htm-visual .htm-visual__claim-title {
    margin-top: 20px;
    @media (max-width: 767px) {
        margin-bottom: 20px;
        margin-top: 0px;
    }
}

.desktop-new-line {
    @media (max-width: 450px) {
        display: none;
    }
}

@media (max-width: 767px) {
    #htm-visual h1 {
        font-size: 37px !important;
    }
}

#htm-visual .htm-btn-richiesta {
margin-top: 30px;
margin-bottom: 30px;
font-size: 16px;
padding: 20px 30px;
}

#htm-visual .htm-btn-richiesta span svg {
margin-bottom: -4px !important;
}

.htm-visual__img {
border-radius: 50px;
object-fit: cover;
width: 100%;
height: 100%;
}

@media (max-width: 767px) {
#htm-visual {
 min-height: unset
}
.htm-visual__row {
  height: 100%;
  justify-content: space-between;
}
.htm-visual__col:first-child {
  min-height: unset;
  padding-right: 0;
}
.htm-visual__col:nth-child(2) {
 max-width: 100%;
 padding-bottom: 30px;
 max-height: 300px;
}
  #htm-visual h1 {
  font-size:40px;
  margin-bottom: 10px;
}

#htm-visual .htm-visual__claim-subtitle {
font-family: 'RoobertENEL-Light';
font-size: 26px;
line-height: 1.1;
margin-bottom: 15px;
max-width: 100%;
}

.htm-visual__claim-cta.htm-none.htm-md-block {
display: block;
}

#htm-visual .htm-btn-richiesta {
font-size: 16px;
padding: 20px 30px;
width: 100%;
text-align: center;
display: block;
position: fixed;
left: 0;
bottom: 0;
margin: 0;
color: #fff;
border: 1px solid #d3135a;
background-color: #d3135a;
}

#htm-visual .htm-btn-richiesta:hover {
color: #d3135a;
border: 1px solid #d3135a;
background-color: #fff;
}
.htm-visual__img {
  width: 100%;
  margin: 0;
}
}
/* end Header */


/* storeLocator */
section#storeLocator {
background-color: #f3f3f3;
}

section#storeLocator h4 {
color: #333;
margin-bottom: 1.5rem !important;
}

section#storeLocator a[id*="dealer"],
section#storeLocator a[id*="dealer"] b,
section#storeLocator a[id*="dealer"] strong,
section#storeLocator .dealers_list.scrollable,
section#storeLocator .dealers_list.scrollable hr {
color: #555;
}

section#storeLocator .dealers_list.scrollable hr {
background-color: #dcdcdc;
}

section#storeLocator #selProv,
section#storeLocator #selProv:focus,
section#storeLocator #selProv:focus-visible{
width: 100%;
background: none;
color: #222;
border: none;
padding: 15px;
-webkit-appearance: none;
appearance: auto;
border: 1px solid #acacac !important;
outline: unset !important;
font-family: "RoobertENEL-Bold", sans-serif;
font-weight: 400;
outline: unset !important;
}

section#storeLocator #map {
border: 1px solid #dcdcdc !important;
}

section#storeLocator .dealers_list.scrollable {
max-height: 320px
}

#storeLocator .closest-label {
color: #222;
}

#storeLocator .btn-viewall {
color: #222;
}

#storeLocator .btn-viewall span {
color: #222;
}

#storeLocator .closest-label {
border-bottom: 1px solid #dcdcdc;
}

.leaflet-popup-content a {
color: #d3135a;
}


/* Intestazione esterna */
.py-4 {
padding-bottom: 3.5rem !important;
padding-top: 2.5rem !important;
}
section#storeLocator .row.d-flex > h4 {
width: 100%;
text-align: center;
margin-bottom: 2.5rem !important;
font-size: 1.6rem;
color: #333;
display: block !important;

@media (max-width: 450px) {
    padding: 0 16px;
}
}
section#storeLocator h3.font-light.d-md-none.font-white.mb-4.text-center {
display: none;
}
section#storeLocator #selProv,
section#storeLocator #selProv:focus,
section#storeLocator #selProv:focus-visible{
margin: 0px auto;
position: absolute;
bottom: 0;
width: calc(100% - 30px);
-webkit-appearance: none;
-moz-appearance: none;
background: transparent;
background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 1024 1024'%3E%3Cpath d='M1011.93 357.954l-471.345 470.711q-12.069 12.069-28.585 12.069t-28.585-12.069l-471.345-470.711q-12.069-12.069-12.069-28.903t12.069-28.903l105.449-104.814q12.069-12.069 28.585-12.069t28.585 12.069l337.311 337.311 337.311-337.311q12.069-12.069 28.585-12.069t28.585 12.069l105.449 104.814q12.069 12.069 12.069 28.903t-12.069 28.903z'%3E%3C/path%3E%3C/svg%3E%0A");
background-repeat: no-repeat;
background-position-x: calc(100% - 15px);
background-position-y: 50%;
background-size: 13px;
}

#storeLocator a.btn-viewall {
position: relative;
color: #222;
text-decoration: none;
padding-left: 30px;
@media (max-width: 767px) {
  padding-left: 26px;
}
}
#storeLocator a.btn-viewall:hover span {
text-decoration: none
}

#storeLocator a.btn-viewall img {
display: none;
}

#storeLocator a.btn-viewall:before {
content: '';
position: absolute;
top: 50%;
left: 0;
transform: translateY(-50%);
width: 24px;
height:24px;
background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 1024 1024'%3E%3Cpath d='M512 1024c-9.984 0-19.584-4.032-26.496-11.328-15.36-16.064-375.808-396.16-375.808-610.368 0-221.824 180.48-402.304 402.304-402.304 20.16 0 36.544 16.384 36.544 36.544v186.56c83.392 17.024 146.304 90.88 146.304 179.2 0 100.864-82.048 182.848-182.848 182.848-100.864 0-182.848-82.048-182.848-182.848 0-50.752 21.312-99.648 58.624-134.144l49.728 53.632c-22.656 20.992-35.2 49.6-35.2 80.512 0 60.48 49.216 109.696 109.696 109.696s109.696-49.216 109.696-109.696-49.216-109.696-109.696-109.696c-20.16 0-36.544-16.384-36.544-36.608v-180.8c-164.352 18.24-292.608 158.016-292.608 327.104 0 141.312 217.408 408.96 329.152 531.52 111.744-122.56 329.152-390.208 329.152-531.52 0-145.152-93.056-271.552-231.552-314.432l21.632-69.888c169.344 52.48 283.136 206.912 283.136 384.32 0 214.208-360.512 594.304-375.872 610.368-6.912 7.296-16.512 11.328-26.496 11.328z'%3E%3C/path%3E%3C/svg%3E%0A");
background-color: transparent;
background-size: 100%;
background-repeat: no-repeat;
margin-top: 0;
margin-right: 0;
z-index: 1;
@media (max-width: 767px) {
  width: 20px;
  height:20px;
}
}

@media (min-width: 992px) and (max-width: 1999px) {
section#storeLocator .dealers_list.scrollable {
  max-height: 300px;
}
}

@media (min-width: 768px) and (max-width: 991px) {
section#storeLocator .dealers_list.scrollable {
  max-height: 165px;
}
}

@media (max-width: 767px) {
section#storeLocator .dealers_list.scrollable {
  max-height: 250px;
}
section#storeLocator #selProv, 
section#storeLocator #selProv:focus, 
section#storeLocator #selProv:focus-visible {
  position: relative;
  width: 100%;
}
}
/* end Intestazione esterna */
/* end storeLocator */
option:hover {
background: #dedede;
}
</style>
<style>
.htm-visual__col:nth-child(2) {
    border: 5px solid #fff;
    border-radius: 50px;
    padding-bottom: 0 !important;
background-color: #969696;
}
.htm-visual__img {
    object-fit: contain;
}
</style>
