body {
    margin-top:0;
    padding-top:0;
}

.navbar {
    margin-bottom:0;
}

.dB {
    display:block!important;
}

.dN {
    display:none!important;
}

.addon-radio .theAddOffer {
    width:24px;
    height:24px;
    background-image:url(/img/radio_off.png);
    background-size:contain;
    -webkit-box-shadow:none;
    box-shadow:none;
    background-repeat:no-repeat;
    padding:6px;
}

.addon-radio .theAddOffer.active {
    width:24px;
    height:24px;
    background-image:url(/img/radio_on.png);
    padding:6px;
}

.scheda-prod-mobile {
    padding-top:30px;
}

.address,.address-scheda-cb {
    text-align:center;
    font-size:20px;
    padding:26px 0;
}

.address span,.address-scheda-cb span {
    font-weight:500;
    text-transform:capitalize;
}

.address span i,.address-scheda-cb span i {
    font-style:normal;
    text-transform:lowercase;
}

.promo-desc span {
    font-size:17px;
    text-transform:uppercase;
    font-weight:500;
    background:#FFBA00;
    padding:5px 20px;
}

.name-prod {
    width:100%;
    margin-top: 20px;
}

.name-prod h1 {
    font-size:36px;
    font-weight:700;
    float:left;
    margin:0 0 20px;
}

.name-prod h1::after {
    background-size:38px 38px;
    display:inline-block;
    width:38px;
    height:38px;
    content:"";
    margin-left:10px;
    margin-bottom:-5px;
    background-position-y:3px;
    cursor: pointer;
}

.box_trasloco {
    margin-top:8px;
    color:#333;
    font-size:14px;
    letter-spacing:0;
    line-height:18px;
    background-color:#F2F2F2;
    padding:20px 25px;
}

/*.fibra h1::after,.fibra-25g-ftth h1::after,.fibra-25g h1::after {*/
/*    background-image:url(/img/dev/F_FIBRA.png);*/
/*}*/

/*.fibra-rame h1::after,.fibra-radio h1::after {*/
/*    background-image:url(/img/dev/FR_FIBRA-RADIO.png);*/
/*}*/

/*.rame h1::after {*/
/*    background-image:url(/img/dev/R_RAME.png);*/
/*}*/
/*.mobile-5g-1g h1::after{*/
/*    background-image: url('/img/dev/mobile-5g-1g.svg');*/
/*}*/
/*.mobile-5g-2g h1::after{*/
/*    background-image: url('/img/dev/mobile-5g-2g.svg');*/
/*}*/

/* doppio bollino*/
.ball-box{
    padding:0 !important;
}
.ball{
    width: 42px;
    height: 42px;
    float: left;
    margin-left: 5px;
    background-size: contain;
    cursor:pointer;
}
.ball.fibra,.ball.fibra-25g-ftth,.ball.fibra-25g{
    background-image: url('/static/img/F_FIBRA.svg');
}
.ball.fibra-rame,.ball.fibra-radio{
    background-image: url('/static/img/FR_FIBRA_RADIO.svg');
}
.ball.rame{
    background-image: url('/static/img/R_RAME.svg');
}
.ball.mobile-5g-1g{
    background-image: url('/static/img/mobile-5g-1g.svg');
}
.ball.mobile-5g-2g{
    background-image: url('/static/img/mobile-5g-2g.svg');
}


.vantaggi {
    margin-top:10px;
    float:left;
}

.vantaggi ul {
    margin:0;
    padding:0;
}

.vantaggi ul li {
    font-size:20px;
    list-style-type:none;
    line-height:25px;
    margin-left:36px;
    margin-bottom:20px;
}

.vantaggi ul li:before {
    background-image:url(/img/dev/li-v-green.png);
    background-size:20px 16px;
    background-repeat:no-repeat;
    display:inline-block;
    width:20px;
    height:20px;
    content:"";
    position:absolute;
    left:15px;
    background-position:0 4px;
}

.prezzo-label {
    font-size:15px;
}

.prezzo-box {
    font-size:70px;
    font-weight:500;
    margin-top:25px;
    padding-right:0;
}

.prezzo-int {
    float:left;
    line-height:70px;
    margin-right:5px;
}

.plus {
    font-size:60px;
    margin-top:20px;
    margin-right:0;
    padding:0 10px;
}

.prezzo-sup {
    font-size:25px;
    float:left;
    width:55px;
    margin-top:1px;
}

.prezzo-des {
    font-size:13px;
    line-height:13px;
    text-transform:uppercase;
    display:none;
}

.prezzo-des-selfcare {
    display:block;
}

.prezzo-des-tc {
    font-size:13px;
}

.scadenza-box {
    margin-top:0;
    float:left;
}

.scadenza {
    font-size:16px;
    font-weight:500!important;
    color:#bf1a2f;
    text-transform:uppercase;
    text-align:center;
    width:328px;
    margin-top:20px!important;
}

.counter {
    width:360px;
    height:60px;
    margin:0 auto;
}

.counter-text {
    float:left;
    padding:14px 20px 33px 10px;
}

.time-numbers {
    font-size:36px;
    font-weight:500;
    padding-top:6px;
    line-height:36px;
    margin-bottom:0;
}

ul.time-numbers li {
    display:inline-block;
    margin-right:-7px;
    list-style:none;
}

.time-desc div {
    float:left;
    font-size:12px;
}

.time-desc div:nth-child(2) {
    padding:0 27px;
}

.time-desc div:nth-child(3) {
    padding:0 5px;
}

.time-desc div:nth-child(4) {
    padding:0 25px;
}

.no-countdown .scadenza {
    margin-top:46px;
}

.btn-scheda {
    width:229px;
    text-align:center;
    font-size:18px;
    font-weight:500;
    background:#FFBA00;
    border-radius:10px;
    cursor:pointer;
    border:0;
    padding:12px 0;
}

.action-tools {
    margin-top:15px;
}

.action-tools-mobile {
    background:#fff;
    border-top:1px solid #cdcdcd;
}

.btn-help {
    width:171px;
    color:#5F57A1;
    text-align:center;
    font-size:18px;
    font-weight:500;
    border:1px solid #3a3a3a;
    border-radius:10px;
    cursor:pointer;
    padding:11px 0;
}

.btn-help img {
    margin-top:-4px;
    margin-left:8px;
}

.disabled {
    background-color:#eee!important;
    cursor:not-allowed;
}

.promo-code,.add-text-link {
    font-size:18px;
    font-weight:500;
    color:#5F57A1;
    text-decoration:underline;
    margin-top:10px;
}

.disclaimer-text {
    font-size:16px;
    margin-top:15px;
}

.name-prod-mobile {
    font-size:16px;
    margin-top:10px;
}

.prezzo-mobile {
    font-size:16px;
    margin-bottom:10px;
    display:none;
}

.action-tools-mobile .btn-scheda {
    width:100%;
    text-align:center;
    padding:10px 0;
}

.action-tools-mobile .promo-code {
    font-size:16px;
    margin:8px;
}

.action-tools-mobile .btn-help {
    width:100%;
    text-align:center;
    padding:9px 0;
}

.action-tools-mobile .pleft {
    padding-right:7px;
}

.action-tools-mobile .pright {
    padding-left:7px;
}

.action-tools-mobile .ptop {
    padding-top:10px;
    padding-bottom:10px;
}

.action-tools-mobile .time-numbers {
    font-size:22px;
    letter-spacing:2px;
    line-height:24px;
    padding-top:8px;
    padding-left:3px;
    margin-bottom:-3px;
}

.action-tools-mobile .time-desc div:nth-child(2) {
    padding:0 13px;
}

.action-tools-mobile .time-desc div:nth-child(3) {
    padding:0 6px;
}

.action-tools-mobile .time-desc div:nth-child(4) {
    padding:0 15px;
}

.action-tools-mobile .scadenza {
    font-size:16px;
    line-height:22px;
    font-weight:500;
    margin-top:10px!important;
    width:50%;
}

.stripe-schede {
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center;
    height:225px;
    margin-top:40px;
}

.stripe-schede img {
    float:left;
    margin:0 50px 0 70px;
}

.stripe-titolo {
    font-size:25px;
    line-height:28px;
    font-weight:500;
    padding-top:44px;
    padding-right:60px;
    text-transform:uppercase;
    color:#fff;
}

.stripe-testo {
    font-size:16px;
    line-height:20px;
    color:#fff;
    padding-right:60px;
    margin-top:20px;
}

.card-schede-titsez h2 {
    font-size:22px;
    font-weight:500;
    margin-top:55px;
    margin-bottom:30px;
    color:#3a3a3a;
    text-align:center;
    text-transform:uppercase;
}

.card-box {
    border-radius:10px;
    box-shadow:0 0 20px 0 rgba(0,0,0,0.3);
    margin-bottom:30px;
}

.card-img {
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center;
    height:192px;
    border-radius:10px 10px 0 0;
}

.card-title {
    font-size:25px;
    font-weight:500;
    padding:40px 30px 0;
}

.card-text {
    font-size:16px;
    padding:10px 30px 40px;
}

.addon-schede {
    margin:10px 20px 0 10px;
}

.addon-schede-titsez h2 {
    font-size:22px;
    font-weight:500;
    padding-bottom:30px;
    color:#3a3a3a;
    text-align:center;
    text-transform:uppercase;
}

.addon-box {
    background:#f2f2f2;
    padding:10px 67px;
}

.addon-border {
    min-height:105px;
    border-bottom:1px solid #cdcdcd;
    display:flex;
    padding-bottom:30px;
}

.addon-border-last {
    border-bottom:none;
}

.smartdevice {
    min-height:260px;
}

.addon-radio {
    width:10%;
    float:left;
    margin-top:38px;
}

.addon-desc-radio {
    width:90%;
    float:left;
    margin-top:30px;
    padding:0 10px;
}

.addon-select {
    width:40%;
    float:left;
}

.addon-select select {
    margin-top:20px;
    border-radius:8px;
    padding:5px 20px 5px 10px;
}

.addon-desc-select {
    margin-top:26px;
    padding-left:5px;
    width:60%;
    float:left;
}

.addon-price {
    font-size:16px;
    line-height:25px;
    margin-top:3px;
    text-align:center;
    align-self:flex-end;
}

.addon-desc {
    align-self:flex-end;
    padding-left:0;
}

.addon-img {
    padding-bottom:20px;
}

.addon-title {
    font-size:20px;
    line-height:20px;
    font-weight:500;
}

.addon-text {
    font-size:16px;
    line-height:25px;
    margin-top:5px;
}

.addon-button {
    padding-left:0;
    padding-right:0;
    align-self:flex-end;
}

.btn-addon {
    width:137px;
    text-align:center;
    font-size:18px;
    line-height:18px;
    font-weight:500;
    border:1px solid #979797;
    border-radius:10px;
    margin-top:10px;
    cursor:pointer;
    padding:15px 0;
}

.add {
    color:#338A20;
}

.rem {
    color:#5F57A1;
}

.addon-schede>.addon-box:last-child>.addon-border {
    border:none;
}

.caratteristiche-schede-titsez h2 {
    font-size:16px;
    letter-spacing:.14px;
    line-height:28px;
    text-align:center;
    font-weight:500;
    margin-top:55px;
    margin-bottom:30px;
    color:#3a3a3a;
    text-transform:uppercase;
}

.separatore {
    border-bottom:1px solid #979797;
    padding-left:0;
    padding-right:0;
}

.title-caratteristiche {
    font-size:14px;
    font-weight:500;
    color:#5F57A1;
    cursor:pointer;
    position:relative;
    padding:30px 0;
}

.img-caratteristiche {
    cursor:pointer;
    padding:37px 0;
}

.action-caratteristiche {
    position:absolute;
    right:0;
    top:30px;
}

.text-caratteristiche {
    font-size:14px;
    line-height:20px;
    padding-bottom:30px;
}

.cont-scontrino {
    width:360px;
    background:#fff;
    z-index:1;
}

.loading-scontrino {
    margin:40px 118px 15px;
}

.scontrino {
    border-radius:10px;
    box-shadow:0 0 20px 0 rgba(0,0,0,0.3);
    width:360px;
    min-height:200px;
    font-size:14px;
    float:left;
    z-index:1;
    padding:30px;
}

.scontrino-callback {
    margin-bottom:30px;
}

.riepilogo {
    margin-bottom:10px;
}

.totali {
    margin-top:10px;
}

.scontrino .prod div {
    font-size:16px;
    width:100%;
    font-weight:500;
    line-height:20px;
}

.scontrino .sect_tit {
    margin-top:0;
    text-transform:capitalize;
}

.scontrino.scontrinoMobile .sect_tit {
    margin-top:0;
}

.scontrino .font-bold {
    /*text-transform:capitalize;*/
}

.separatore_scheda {
    margin:10px 0;
}

.costi {
    text-align:left;
    margin-top:15px;
    font-weight:500;
    font-size:16px;
}

.riga .halfrow {
    width:70%;
    float:left;
}

.dx {
    font-weight:500;
    width:30%!important;
    text-align:right;
}

.totale {
    font-size:16px;
    font-weight:500;
}

.totale .halfrow {
    margin-top:-5px;
}

.totale .dx {
    font-size:18px;
}

.totale .allrow {
    float:left;
    width:100%!important;
    font-size:12px;
    font-weight:400;
    margin-top:5px;
}

.scontrino .btn-scheda {
    width:100%;
    text-align:center;
    margin-bottom:25px;
    padding:10px 0;
}

#modal-ookla {
    margin-top:60px;
}

#modal-ookla .modal-dialog {
    width:895px;
}

#modal-ookla .close-bar {
    text-align:right;
    font-size:20px;
    color:#fff;
    cursor:pointer;
}

#modal-ookla .close-bar img {
    width:12px;
    margin-left:10px;
}

#modal-ookla .cont-modal {
    height:718px;
    border-radius:8px;
    background:#fff;
    padding:0 260px 0 130px;
}

#modal-ookla .modal-tit {
    font-size:25px;
    margin-top:22px;
    margin-bottom:70px;
}

#modal-ookla .modal-text {
    padding-right:0;
}

#modal-ookla .modal-text h1 {
    font-size:25px;
    font-weight:500;
    margin:0 0 12px;
}

#modal-ookla .modal-text h2 {
    font-size:25px;
    color:#5757A1;
    font-weight:300;
    margin:0;
}

#modal-ookla .modal-text>div {
    margin-top:20px;
    padding-right:0;
}

.modal-text > div:nth-child(4),.modal-text > div:nth-child(7) {
    text-align:center;
}

#modal-ookla .table>tbody>tr>td,#modal-ookla .table>thead>tr>th {
    padding:8px 0;
}

#modal-ookla .table>tbody>tr>td:nth-child(even),#modal-ookla .table>thead>tr>th:nth-child(even) {
    text-align:right;
}

#modal-ookla caption {
    font-size:12px;
    text-align:right;
    padding:5px 0 0;
}

.theForm {
    height:100%;
    display:table;
    width:100%;
}

.prodForm {
    border-radius:10px;
    border:1px solid #e3e3e3;
    margin-top:20px;
    background-color:#e5e5e5;
    padding:10px;
}

.theForm label {
    float:left;
    width:13%;
    font-size:.8em;
    margin-bottom:0;
    font-weight:300;
    text-align:right;
}

.theForm input {
    float:left;
    width:85%;
    height:20px;
    font-size:13px;
    margin:0 0 2px 10px;
}

#loading,#loading1,#loading2,#loading3 {
    display:none;
    position:absolute;
    top:35%;
    left:0;
    opacity:1;
    z-index:2;
    text-align:center!important;
    width:100%;
    font-size:30px;
}

#modal-serve-aiuto .help-prospect,#modal-serve-aiuto .help-body {
    box-shadow:none;
}

pre {
    margin-top:80px;
}

.tooltip>.tooltip-inner {
    background-color:#fff;
    color:#4d4d4d;
    font-size:11px;
    border:1px solid #ccc;
    text-align:left;
    -webkit-border-radius:4px;
    -moz-border-radius:4px;
    border-radius:4px;
    -webkit-box-shadow:2px 2px 7px 0 rgba(50,50,50,0.75);
    -moz-box-shadow:2px 2px 7px 0 rgba(50,50,50,0.75);
    box-shadow:2px 2px 7px 0 rgba(50,50,50,0.75);
    padding:10px;
}

.tooltip>.tooltip-inner>h4 {
    font-size:14px;
    font-weight:700;
}

.tooltip.in {
    opacity:1;
}

.tooltip-inner {
    max-width:550px;
    width:550px!important;
}

.tooltip>.tooltip-inner li {
    list-style:none;
}

.callback_schede h2 {
    font-size:24px;
    text-align:center;
    margin-bottom:40px;
}

.callback_schede label {
    color:#84828F;
}

.callback_schede .info-privacy {
    font-size:11px;
}

.debugSelfcare {
    border-radius:10px;
    border:1px solid #A9A9A9;
    font-size:.9em;
    background-color:#f2f2f2;
    margin:20px auto 0;
    padding:20px;
}

.debugSelfcare input[type=text] {
    width:100%;
    border-radius:3px;
    border:1px solid #dfddec;
}

.debugSelfcare .col-md-3,.debugSelfcare .col-md-9 {
    text-align:right;
    padding:5px 0;
}

.debugSelfcare .col-md-3 {
    padding:8px 5px 5px 0;
}

.debugSelfcare label {
    text-transform:uppercase;
}

.pointer,#stripe {
    cursor:pointer;
}

.return,.addon-radio .theAddOffer input,.time-numbers,.time-desc,.no-countdown .counter,.tooltip>.tooltip-arrow {
    display:none;
}

.prezzo,#modal-ookla .body-m,#modal-ookla .modal-img {
    float:left;
}

.scadenza span,.font-bold {
    font-weight:500;
}

.prezzo-mobile span,.addon-price span {
    font-size:20px;
    font-weight:500;
}

.addon-box-last,.callback_schede .input-container {
    margin-bottom:20px;
}

.section_scontrino,.riga,.riga .allrow,.riga .separatore_scheda {
    width:100%;
    float:left;
}

@media only screen and (max-width:1280px) {
    .btn-scheda {
        width:186px;
    }

    .counter {
        width:328px;
    }

    .time-numbers {
        font-size:30px;
    }

    .time-desc div {
        font-size:10px;
    }

    .time-desc div:nth-child(2) {
        padding:0 19px;
    }

    .time-desc div:nth-child(4) {
        padding:0 20px;
    }

    #modal-ookla .cont-modal {
        height:540px;
    }

    #modal-ookla .modal-tit,#modal-ookla .modal-text h1,#modal-ookla .modal-text h2 {
        font-size:18px;
        line-height:18px;
    }

    #modal-ookla .modal-tit {
        margin-bottom:30px;
    }

    #modal-ookla .modal-text>div {
        margin-top:10px;
    }

    #modal-ookla .table>tbody>tr>td,#modal-ookla .table>thead>tr>th {
        padding:5px 0;
    }

    .scadenza,#modal-ookla {
        font-size:14px;
    }
}

@media only screen and (max-width: 1200px) {
    .name-prod h1 {
        font-size:32px;
    }

    .vantaggi ul li {
        font-size:16px;
        line-height:20px;
        margin-bottom:18px;
    }

    .prezzo-box {
        margin-top:0;
    }

    .counter-text {
        padding-left:13px;
    }

    .stripe-titolo {
        font-size:18px;
    }

    .card-title {
        font-size:20px;
    }

    .addon-radio {
        width:15%;
        margin-top:16px;
    }

    .addon-desc-radio {
        width:85%;
        margin-top:10px;
        padding:0 10px;
    }

    .addon-img img {
        height:120px;
    }

    .addon-select select {
        padding:5px;
    }

    .addon-price {
        padding-top:1px;
    }

    .addon-title {
        font-size:16px;
    }

    .addon-text {
        line-height:20px;
    }

    .btn-addon {
        width:120px;
        font-size:16px;
        padding:10px 0;
    }

    .cont-scontrino,.scontrino,.counter {
        width:293px;
    }

    .scontrino {
        font-size:12px;
        padding:20px;
    }

    .separatore_scheda {
        margin:10px 0;
    }

    body,.stripe-testo,.card-text,.addon-price,.addon-text,.text-caratteristiche,.title-caratteristiche,.scontrino .prod div {
        font-size:14px;
    }
}

@media only screen and (max-width: 768px) {
    #modal-ookla .modal-dialog {
        width:708px;
    }

    #modal-ookla .cont-modal {
        padding:0 60px;
    }

    #modal-ookla .modal-text {
        padding-right:15px;
    }

    #modal-ookla .modal-img {
        width:135px;
    }
}

@media only screen and (max-width: 820px) {
    .scontrino-callback {
        width:100%;
        border-radius:unset;
        box-shadow:none;
    }
}

@media only screen and (max-device-width: 455px) {
    .name-prod {
        height:45px;
        margin-bottom:25px;
    }

    .name-prod h1 {
        font-size:32px;
        font-weight:500;
        margin:15px 0 10px;
    }

    .name-prod h1::after {
        top:37px;
    }

    .vantaggi {
        margin-top:20px;
        padding-right:0;
    }

    .vantaggi ul li {
        font-size:16px;
        line-height:22px;
        margin-bottom:15px;
    }

    .address,.address-scheda-cb {
        font-size:16px;
        padding:12px 5px 20px;
    }

    .promo-desc span {
        font-size:16px;
        padding:2px 20px;
    }

    .scadenza {
        text-align:center;
        margin-bottom:8px;
        height:50px;
    }

    .scadenza-box {
        margin-top:10px;
    }

    .counter {
        height:70px;
        width:50%;
        margin:10px auto 0;
    }

    .stripe-schede {
        height:256px;
        margin:20px -15px 0;
    }

    .stripe-schede img {
        height:148px;
        padding:0 40px 0 22px;
    }

    .stripe-titolo-xs {
        height:108px;
        color:#fff;
        font-size:20px;
        font-weight:500;
        text-transform:uppercase;
        line-height:25px;
        padding:25px 100px 0 22px;
    }

    .stripe-testo {
        margin-top:0;
        padding-right:30px;
    }

    .addon-schede-titsez {
        padding-bottom:0;
    }

    .addon {
        background:#F2F2F2;
    }

    .addon-box {
        padding:34px 34px 0;
    }

    .addon-border {
        height:170px;
        display:block;
    }

    .smartdevice {
        min-height:400px;
        font-size:16px;
    }

    .addon-button .addon-price {
        width:127px;
        font-size:16px;
        line-height:25px;
        margin-top:3px;
        text-align:center;
        align-self:flex-end;
    }

    .addon-button .addon-price span {
        font-size:20px;
        font-weight:500;
    }

    .addon-title {
        font-size:20px;
        line-height:25px;
    }

    .addon-text {
        font-size:16px;
    }

    .addon-select {
        width:45%;
        margin-bottom:10px;
    }

    .addon-desc-select {
        width:55%;
        margin:25px 0;
    }

    .addon-select select {
        padding:5px 25px 5px 10px;
    }

    .addon-radio {
        margin-top:38px;
        width:10%;
    }

    .addon-desc-radio {
        margin-top:30px;
        width:90%;
    }

    .addon-img img {
        float:left;
    }

    .addon-price {
        padding-right:0;
    }

    .btn-addon {
        width:127px;
        margin-top:20px;
        padding:15px 0;
    }

    .footer {
        margin-bottom:250px;
    }

    #modal-ookla {
        font-size:18px;
        margin:0;
        padding:0;
    }

    #modal-ookla .modal-dialog {
        width:auto;
    }

    #modal-ookla .cont-modal {
        height:100%;
        border-radius:0;
        padding:0 15px;
    }

    #modal-ookla .modal-tit,#modal-ookla .modal-text h1,#modal-ookla .modal-text h2 {
        font-size:22px;
        line-height:22px;
    }

    #modal-ookla .modal-text>div {
        margin-top:20px;
    }

    .modal-text > div:nth-child(4) {
        font-size:14px;
    }

    .modal-text > div:nth-child(6) {
        text-align:center;
        font-size:14px;
    }

    #modal-ookla .close-img {
        float:right;
        width:20px;
        margin-top:10px;
        margin-right:-5px;
    }

    #modal-ookla .tit-img {
        margin-left:-15px;
    }

    .tooltip-inner {
        max-width:96%;
        width:96%!important;
        margin:0 auto;
    }
}

@media screen and (max-width: 1280px),screen and (max-height: 768px) {
    .cont-scontrino {
        position:fixed;
        top:30px;
    }

    .address {
        text-align:left;
        padding:20px 15px;
    }

    .address-scheda-cb {
        text-align:center;
        padding:20px 15px;
    }

    .return {
        display:inline;
    }

    .vantaggi {
        padding-right:0;
        width:100%;
    }

    .vantaggi ul li {
        margin-bottom:10px;
    }

    .separatore_scheda {
        margin:10px 0;
    }
}