.to-herobanner__text.tl-col-12 .ta-heading {
    padding-right: 15% !important;
    padding-left: 15% !important;
    font-weight: 300 !important;
    font-size: 56px !important;
}

.to-herobanner--text .to-herobanner__content .ta-paragraph {
    padding-right: 15% !important;
    padding-left: 15% !important;
    font-weight: 300 !important;
}

.ta-button.-primary, .ta-button.-special, .ta-button.-secondary{
    border-radius: 8px !important;
}
/*
.ta-button.-primary:after {
    background: rgb(18,50,155) !important;
    background: linear-gradient(90deg, rgba(18,50,155,1) 0%, rgba(82,13,163,1) 51%, rgba(235,11,38,1) 100%) !important;
}
 */
.ta-button.-primary:after {
    background-color: transparent !important;
    background: linear-gradient(#ffffff, #ffffff) padding-box,
    linear-gradient(90deg, rgba(18,50,155,1) 0%, rgba(82,13,163,1) 46%, rgba(235,11,38,1) 100%) border-box;
    border-radius: 8px;
    border: 2px solid transparent;
}
.ta-button.-primary .ta-button__txt {
    color: #0033A1 !important;
}
.ta-button.-primary .ta-button__icon svg {
    fill: #0033A1 !important;
}
.ta-button.-primary .ta-button__nmb {
    color: #0033A1 !important;
}


.ta-button.-primary:hover:after {
    background-color: transparent !important;
    background: rgb(18,50,155);
    background: linear-gradient(90deg, rgba(18,50,155,1) 0%, rgba(82,13,163,1) 51%, rgba(235,11,38,1) 100%);
    border: none !important;
}
.ta-button.-primary:hover .ta-button__txt {
    color: #ffffff !important;
}
.ta-button.-primary:hover .ta-button__icon svg {
    fill: #ffffff !important;
}
.ta-button.-primary:hover .ta-button__nmb {
    color: #ffffff !important;
}


/*
.ta-button.-primary:after {
    background-color: transparent !important;
    background: linear-gradient(#ffffff, #ffffff) padding-box,
    linear-gradient(90deg, rgba(18,50,155,1) 0%, rgba(82,13,163,1) 46%, rgba(235,11,38,1) 100%) border-box;
    border-radius: 8px;
    border: 2px solid transparent;
}
.ta-button.-primary .ta-button__txt {
    color: #0033A1 !important;
}
.ta-button.-primary .ta-button__icon svg {
    fill: #0033A1 !important;
}

.ta-button.-primary:hover:after {
    background-color: transparent !important;
    background: rgb(18,50,155);
    background: linear-gradient(90deg, rgba(18,50,155,1) 0%, rgba(82,13,163,1) 51%, rgba(235,11,38,1) 100%);
    border: none !important;
}
.ta-button.-primary:hover .ta-button__txt {
    color: #ffffff !important;
}
.ta-button.-primary:hover .ta-button__icon svg {
    fill: #ffffff !important;
}
 */

.container-ric {
    text-align: center;
    position: relative;
    margin-top: 3%
}

input[type="number"] {
    -moz-appearance: textfield;
    -webkit-appearance: textfield;
    appearance: textfield;
    width: 75%;
    max-width: 310px;
    height: 46px;
    border: 1px solid #0033A1;
    border-radius: 8px;
    position: relative;
    margin: 10px;
    line-height: 46px;
    text-indent: 10px
}

input[type="number"]:focus {
    outline: 0;
    border-color: blue
}

input[type="number"]:focus::-webkit-input-placeholder {
    visibility: hidden;
    color: transparent
}

input[type="number"]:focus::-moz-placeholder {
    visibility: hidden;
    color: transparent
}

input[type="number"]:focus:-ms-input-placeholder {
    visibility: hidden;
    color: transparent
}

input[type="number"]:focus::-ms-input-placeholder {
    visibility: hidden;
    color: transparent
}

input[type="number"]:focus::placeholder {
    visibility: hidden;
    color: transparent
}

input[type="number"]:focus-visible + label {
    visibility: hidden;
    color: red
}

.input-icon {
    display: inline-block;
    width: 46px;
    height: 46px;
    background-repeat: no-repeat;
    background-size: contain
}

input[name="numero"]::-webkit-input-placeholder {
    font-size: 16px;
    text-indent: 10px
}

input[name="numero"]::-moz-placeholder {
    font-size: 16px;
    text-indent: 10px
}

input[name="numero"]:-ms-input-placeholder {
    font-size: 16px;
    text-indent: 10px
}

input[name="numero"]::-ms-input-placeholder {
    font-size: 16px;
    text-indent: 10px
}

input[name="numero"]::placeholder {
    font-size: 16px;
    text-indent: 10px
}

input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    appearance: none;
    margin: 0
}

input[name="numero"].valid {
    background-position-y: center;
    background-position-x: calc(100% - 6px);
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/PjxzdmcgaWQ9IkxheWVyXzEiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDUxMiA1MTI7IiB2ZXJzaW9uPSIxLjEiIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiB4bWw6c3BhY2U9InByZXNlcnZlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj48c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiMyQkI2NzM7fQoJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjMwO3N0cm9rZS1taXRlcmxpbWl0OjEwO30KPC9zdHlsZT48cGF0aCBjbGFzcz0ic3QwIiBkPSJNNDg5LDI1NS45YzAtMC4yLDAtMC41LDAtMC43YzAtMS42LDAtMy4yLTAuMS00LjdjMC0wLjktMC4xLTEuOC0wLjEtMi44YzAtMC45LTAuMS0xLjgtMC4xLTIuNyAgYy0wLjEtMS4xLTAuMS0yLjItMC4yLTMuM2MwLTAuNy0wLjEtMS40LTAuMS0yLjFjLTAuMS0xLjItMC4yLTIuNC0wLjMtMy42YzAtMC41LTAuMS0xLjEtMC4xLTEuNmMtMC4xLTEuMy0wLjMtMi42LTAuNC00ICBjMC0wLjMtMC4xLTAuNy0wLjEtMUM0NzQuMywxMTMuMiwzNzUuNywyMi45LDI1NiwyMi45UzM3LjcsMTEzLjIsMjQuNSwyMjkuNWMwLDAuMy0wLjEsMC43LTAuMSwxYy0wLjEsMS4zLTAuMywyLjYtMC40LDQgIGMtMC4xLDAuNS0wLjEsMS4xLTAuMSwxLjZjLTAuMSwxLjItMC4yLDIuNC0wLjMsMy42YzAsMC43LTAuMSwxLjQtMC4xLDIuMWMtMC4xLDEuMS0wLjEsMi4yLTAuMiwzLjNjMCwwLjktMC4xLDEuOC0wLjEsMi43ICBjMCwwLjktMC4xLDEuOC0wLjEsMi44YzAsMS42LTAuMSwzLjItMC4xLDQuN2MwLDAuMiwwLDAuNSwwLDAuN2MwLDAsMCwwLDAsMC4xczAsMCwwLDAuMWMwLDAuMiwwLDAuNSwwLDAuN2MwLDEuNiwwLDMuMiwwLjEsNC43ICBjMCwwLjksMC4xLDEuOCwwLjEsMi44YzAsMC45LDAuMSwxLjgsMC4xLDIuN2MwLjEsMS4xLDAuMSwyLjIsMC4yLDMuM2MwLDAuNywwLjEsMS40LDAuMSwyLjFjMC4xLDEuMiwwLjIsMi40LDAuMywzLjYgIGMwLDAuNSwwLjEsMS4xLDAuMSwxLjZjMC4xLDEuMywwLjMsMi42LDAuNCw0YzAsMC4zLDAuMSwwLjcsMC4xLDFDMzcuNywzOTguOCwxMzYuMyw0ODkuMSwyNTYsNDg5LjFzMjE4LjMtOTAuMywyMzEuNS0yMDYuNSAgYzAtMC4zLDAuMS0wLjcsMC4xLTFjMC4xLTEuMywwLjMtMi42LDAuNC00YzAuMS0wLjUsMC4xLTEuMSwwLjEtMS42YzAuMS0xLjIsMC4yLTIuNCwwLjMtMy42YzAtMC43LDAuMS0xLjQsMC4xLTIuMSAgYzAuMS0xLjEsMC4xLTIuMiwwLjItMy4zYzAtMC45LDAuMS0xLjgsMC4xLTIuN2MwLTAuOSwwLjEtMS44LDAuMS0yLjhjMC0xLjYsMC4xLTMuMiwwLjEtNC43YzAtMC4yLDAtMC41LDAtMC43ICBDNDg5LDI1Niw0ODksMjU2LDQ4OSwyNTUuOUM0ODksMjU2LDQ4OSwyNTYsNDg5LDI1NS45eiIgaWQ9IlhNTElEXzNfIi8+PGcgaWQ9IlhNTElEXzFfIj48bGluZSBjbGFzcz0ic3QxIiBpZD0iWE1MSURfMl8iIHgxPSIyMTMuNiIgeDI9IjM2OS43IiB5MT0iMzQ0LjIiIHkyPSIxODguMiIvPjxsaW5lIGNsYXNzPSJzdDEiIGlkPSJYTUxJRF80XyIgeDE9IjIzMy44IiB4Mj0iMTU0LjciIHkxPSIzNDUuMiIgeTI9IjI2Ni4xIi8+PC9nPjwvc3ZnPg==");
    background-size: 26px
}

input[name="numero"].invalid {
    border-color: red;
    background-image: none
}

.error-message {
    position: absolute;
    margin-left: -309px;
    margin-top: 55px;
    color: red;
    font-size: 1.2rem
}

@-webkit-keyframes fadeIn {

0
{
    opacity: 0
}
100
%
{
    opacity: 1
}
}
@keyframes fadeIn {

0
{
    opacity: 0
}
100
%
{
    opacity: 1
}
}
div#numero-error:focus > label {
    position: absolute;
    margin-left: 20px;
    margin-top: -1px;
    background-color: white;
    z-index: 1;
    color: blue
}

div#numero-error:not(:focus) > label {
    display: none
}

div#numero-error > label {
    font-size: 1.2rem;
    position: absolute;
    margin-left: 20px;
    margin-top: -1px;
    background-color: white;
    z-index: 1;
    color: blue;
    -webkit-animation: fadeIn .5s;
    animation: fadeIn .5s
}

label.invalid {
    position: absolute;
    margin-left: 20px;
    margin-top: -1px;
    background-color: white;
    z-index: 1;
    color: red
}

div#numero-error > label.error {
    position: absolute;
    margin-left: 20px;
    margin-top: -1px;
    background-color: white;
    z-index: 1;
    color: red;
    font-size: 1.2rem
}

.error.custom-error-class {
    position: absolute;
    color: red;
    right: 336px;
    height: 20px;
    padding-top: 70px
}

.box-container {
    margin-bottom: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.box {
    width: 6.2em;
    height: 87px;
    margin: 7px;
    border: 1px solid black;
    border-radius: 8px;
    text-align: center;
    cursor: pointer
}

.box.active {
    background-color: #0033A1;
    color: white
}

.tm-row-riduci__btn {
    margin-top: 1.6rem
}

@media (max-width: 767px) {
    div#widget-vedi {
        color: #0164f2;
        font-weight: 500;
        text-decoration: none
    }

    .box {
        width: 20%
    }
}

@media (min-width: 768px) {
    div#widget-vedi {
        display: none
    }
}

.add-icon-show-all {
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBVcGxvYWRlZCB0bzogU1ZHIFJlcG8sIHd3dy5zdmdyZXBvLmNvbSwgR2VuZXJhdG9yOiBTVkcgUmVwbyBNaXhlciBUb29scyAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIGZpbGw9IiMwMTY0ZjIiIHZlcnNpb249IjEuMSIgaWQ9IkNhcGFfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgDQoJIHdpZHRoPSI4MDBweCIgaGVpZ2h0PSI4MDBweCIgdmlld0JveD0iMCAwIDMxNi41MTMgMzE2LjUxMyINCgkgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+DQo8Zz4NCgk8cGF0aCBkPSJNMTU4LjI1MywwQzcxLDAsMC4wMTIsNzEuMDAxLDAuMDEyLDE1OC4yNjNjMCw4Ny4yNTYsNzAuOTg5LDE1OC4yNSwxNTguMjQxLDE1OC4yNQ0KCQljODcuMjU5LDAsMTU4LjI0OC03MC45OTQsMTU4LjI0OC0xNTguMjVDMzE2LjUwMSw3MS4wMDEsMjQ1LjUxOCwwLDE1OC4yNTMsMHogTTIzMC44OTEsMTc3Ljk4MmgtNTcuNzQ4djUyLjkxNA0KCQljMCw3LjQyOC00Ljg2NCwxMy40MzgtMTIuMzAxLDEzLjQzOGMtNy40MjIsMC0xMi4yOTgtNi4wMTctMTIuMjk4LTEzLjQzOHYtNTIuOTE0SDg1LjYzNGMtNy40NCwwLTEzLjQ1NC00Ljg2NC0xMy40NTQtMTIuMjk4DQoJCXM2LjAxNC0xMi4zMDEsMTMuNDU0LTEyLjMwMWg2Mi45MDlWODUuNjE2YzAtNy40MzQsNC44NzYtMTMuNDUzLDEyLjI5OC0xMy40NTNjNy40MzcsMCwxMi4zMDEsNi4wMiwxMi4zMDEsMTMuNDUzdjY3Ljc2OGg1Ny43NDgNCgkJYzcuNDM5LDAsMTMuNDU2LDQuODY3LDEzLjQ1NiwxMi4zMDFTMjM4LjMzLDE3Ny45ODIsMjMwLjg5MSwxNzcuOTgyeiIvPg0KPC9nPg0KPC9zdmc+");
    background-position: center right;
    background-repeat: no-repeat;
    padding-right: 25px;
    background-size: 20px 20px;
    padding-bottom: 1px;
    text-decoration: none
}

.add-icon-close-all {
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IS0tIFVwbG9hZGVkIHRvOiBTVkcgUmVwbywgd3d3LnN2Z3JlcG8uY29tLCBHZW5lcmF0b3I6IFNWRyBSZXBvIE1peGVyIFRvb2xzIC0tPg0KPHN2ZyBmaWxsPSIjMDE2NGYyIiB3aWR0aD0iODAwcHgiIGhlaWdodD0iODAwcHgiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTIsMkExMCwxMCwwLDEsMCwyMiwxMiwxMCwxMCwwLDAsMCwxMiwyWm0zLjcwNywxMi4yOTNhMSwxLDAsMSwxLTEuNDE0LDEuNDE0TDEyLDEzLjQxNCw5LjcwNywxNS43MDdhMSwxLDAsMCwxLTEuNDE0LTEuNDE0TDEwLjU4NiwxMiw4LjI5Myw5LjcwN0ExLDEsMCwwLDEsOS43MDcsOC4yOTNMMTIsMTAuNTg2bDIuMjkzLTIuMjkzYTEsMSwwLDAsMSwxLjQxNCwxLjQxNEwxMy40MTQsMTJaIi8+PC9zdmc+");
    background-position: center right;
    background-repeat: no-repeat;
    padding-right: 24px;
    background-size: 22px 22px;
    padding-bottom: 1px;
    text-decoration: none
}

.ta-heading.ta-heading--h1-small.position {
    margin-top: 2.6rem
}

.to-ricarica-box__metodo {
    max-width: 83rem;
    margin: 0 auto
}

@media (max-width: 767px) {
    #metodi-di-pagamento-ricarica {
        margin-left: 2rem;
        margin-right: 2rem
    }

    #submit-btn {
        margin-left: 2rem;
        margin-right: 2rem
    }
}

a#modale-condizioni-generali {
    cursor: pointer
}

#submit-btn .cmp-form-button {
    cursor: pointer;
    width: 250px;
    height: 46px;
    max-width: 20%;
    background-color: blue;
    color: white;
    padding: 10px 30px;
    font-size: 15px;
    text-align: center;
    text-transform: uppercase;
    border: 0
}

#submit-btn {
    margin-top: 20px;
    margin-bottom: 4rem;
    text-align: center
}

fieldset.ricr {
    border: 1px solid rgba(3, 3, 2, 0.008);
    color: #999;
    margin: auto;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    height: 2em;
    padding: 5px;
    margin-bottom: 10px
}

fieldset#field {
    border: 0
}

span.ta-button__nmb {
    font-family: 'TIMSans', sans-serif;
    font-weight: 600;
    font-style: normal;
    font-size: 1.6rem;
    pointer-events: none;
    letter-spacing: .05rem;
    display: inline-block;
    position: relative;
    white-space: nowrap;
    z-index: 2;
    padding: 1.3rem 0 1.1rem
}

.ta-paragraph.ta-paragraph--title {
    text-align: center;
    font-family: "TIMSans", "Roboto", sans-serif;
    font-weight: 300 !important;
    font-style: normal;
    font-size: 1.8rem;
    line-height: 2.1rem
}

.tm-contentAssistenza {
    margin-bottom: 3rem
}

div.tm-contentAssistenza__body {
    position: absolute;
    visibility: hidden
}

.margin__importo {
    margin-top: 4rem
}

.margin__tabs {
    width: auto;
    margin-bottom: 4.3rem
}

.margin__pag {
    margin-top: 2em
}

.to-ricarica-box__text {
    max-width: 63rem;
    text-align: center;
    margin: 4.8rem auto
}

.tm-opzioni-pagamento .tm-opzioni-pagamento__opt{
    border-radius: 8px;
}

.tm-opzioni-pagamento .tm-opzioni-pagamento__opt.checked{
    background-color: #EBEFFF;
}

.ta-radio-button__label input[type="radio"]:checked ~ .ta-radio-button__custom {
    background: #12329B;
    border-color: #12329B;
}
.ta-radio-button__label input[type="radio"]:checked ~ .ta-radio-button__custom:after {
    border: 3px solid #12329B;
}



.to-herobanner{
    /*
    background-image: url("../assets/bg-wave.png") !important;
    */
    background-image: url("/content/dam/timenterprise/rework022024/images/bg-wave.png") !important;
    background-position: 50% !important;
    background-size: 100% !important;
    background-repeat: no-repeat !important;
}



@charset "UTF-8";
.ta-heading--h3 {
    font-family: TIMSans, sans-serif;
    font-weight: 500;
    font-style: normal;
    line-height: 1.125em;
    font-size: 2.4rem
}

@media (min-width: 80em) {
    .ta-heading--h3 {
        font-size: 3.2rem
    }
}

h1, h2, h3 {
    margin: 0
}

.ta-paragraph--body, body {
    font-family: TIMSans, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 1.6rem;
    line-height: 1.3em
}

@media (min-width: 48em) {
    .ta-paragraph--body, body {
        font-size: 1.8rem
    }
}

.ta-paragraph--body-big {
    font-family: TIMSans, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 2rem;
    line-height: 1.3em
}

@media (min-width: 48em) {
    .ta-paragraph--body-big {
        font-size: 2.4rem
    }
}

.ta-paragraph--body-small {
    font-family: TIMSans, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 1.4rem;
    line-height: 1.3
}

.ta-link {
    text-decoration: none;
    display: inline
}

.ta-link.-breadcrumb {
    font-size: 1.2rem;
    font-family: TIMSans, sans-serif;
    font-weight: 400;
    font-style: normal
}

@media (min-width: 48em) {
    .ta-link.-breadcrumb {
        font-size: 1.4rem
    }
}

.ta-link.-breadcrumb .ta-icon-svg {
    width: 12px;
    height: 12px;
    fill: currentColor;
    vertical-align: middle
}

.ta-link.-breadcrumb .ta-link__label {
    display: inline-block
}

.ta-tag--txt-nero {
    color: #000
}

.ta-tag--bg-giallo {
    background: #dbf11e
}

.ta-notification {
    background: #ea0026;
    display: inline-block;
    width: 2rem;
    height: 2rem;
    border-radius: 100%;
    position: relative;
    border: 1px solid #000;
    box-shadow: 0 0 2px 2px #000
}

.ta-notification span {
    color: #fff;
    font-family: TIMSans, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 1rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.ta-do-heading {
    font-family: TIMSans, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 1.8rem;
    line-height: 1.36
}

.ta-do-tag {
    display: inline-block;
    color: #ff4972;
    border: 1px solid currentColor;
    padding: 4px 8px;
    font-size: 1.4rem;
    font-weight: 700
}

.ta-do-link {
    color: #0164f2;
    text-decoration: none;
    font-size: 1.4rem;
    font-weight: 700
}

.ta-do-link .ta-button__icon {
    display: inline-block;
    vertical-align: middle;
    margin-left: 0
}

.ta-do-link .ta-icon-svg {
    width: 14px;
    height: 14px
}

.tm-thumbs {
    border: 1px solid #000
}

.tm-thumbs__body {
    background: #fff;
    position: relative
}

.tm-thumbs__img {
    width: 100%
}

.tm-thumbs__img > div {
    padding-bottom: 55.55556%;
    position: relative
}

.tm-thumbs__img > div img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.tm-thumbs__content {
    padding: calc(100vw / 36)
}

.tm-thumbs__title {
    margin-bottom: .8rem
}

.tm-thumbs__text {
    margin-bottom: 1.6rem
}

.tm-thumbs__button {
    margin-top: 3.2rem
}

.tm-thumbs__button .ta-button {
    flex: 1 1 auto;
    margin: 0 .8rem;
    width: auto
}

@media (max-width: 48.0525em) {
    .tm-thumbs__button .ta-button {
        margin: .8rem 0
    }
}

.tm-thumbs--dark-theme {
    border: 1px solid #fff
}

.tm-thumbs--dark-theme .tm-thumbs__body {
    background: #0033a1;
    color: #fff
}

@media (max-width: 48.0525em) {
    .tm-thumbs--dark-theme .tm-thumbs__content {
        padding: 2.4rem calc(100vw / 36)
    }
}

.tm-thumbs--dark-theme .tm-thumbs__tags {
    margin-bottom: .8rem
}

.tm-thumbs--dark-theme .tm-thumbs__button {
    display: flex
}

@media (min-width: 80em) {
    .tm-thumbs--dark-theme .tm-thumbs__button .ta-button {
        margin: 0;
        margin-right: .8rem
    }
}

@media (max-width: 79.99em) {
    .tm-thumbs--dark-theme .tm-thumbs__button {
        margin-top: 2.4rem;
        flex-direction: column-reverse
    }

    .tm-thumbs--dark-theme .tm-thumbs__button .ta-button {
        width: 100%;
        margin: 0 0 .8rem 0
    }
}

.tm-breadcrumbs {
    display: none
}

@media (min-width: 80em) {
    .tm-breadcrumbs {
        display: flex
    }
}

.tm-breadcrumbs__item {
    margin-right: 1rem
}

.tm-breadcrumbs__item:last-of-type {
    margin: 0
}

.tm-module-bg {
    top: 0;
    left: 0;
    position: absolute;
    z-index: 0;
    height: 100%;
    width: 100%;
    display: none
}

@media (min-width: 48em) {
    .tm-module-bg {
        display: block
    }
}

.tm-module-bg img, .tm-module-bg picture {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center
}

.tm-dm-offerta {
    padding: .8rem .8rem .8rem 2.4rem;
}

.tm-dm-offerta:not (.-without-borders) {
    border-top: 1px solid #666
}

.tm-dm-offerta > :not (:last-child) {
    margin-bottom: .8rem
}

.tm-modal-overlay__overlay {
    position: fixed;
    left: 0;
    top: -100vh;
    z-index: 2000;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .4);
    opacity: 0
}

.tm-modal-overlay__container {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    padding: 3.2rem 1.6rem;
    transform: translate(-50%, -50%);
    background-color: #fff
}

@media (min-width: 48em) {
    .tm-modal-overlay__container {
        width: calc(100vw - 4.8rem * 2);
        height: auto;
        max-height: calc(100vh - 4.8rem * 2);
        padding: 4.8rem
    }
}

@media (min-width: 80em) {
    .tm-modal-overlay__container {
        width: calc(100% - 1 / 6 * 100vw);
        max-height: calc(100vh - 3.2rem * 4);
        padding: calc(1 / 12 * 100vh) calc(1 / 12 * 100vw)
    }
}

.tm-modal-overlay__overlay[class*=video] .tm-modal-overlay__container {
    background: 0 0
}

.tm-modal-overlay__close-button {
    position: absolute;
    top: 1.6rem;
    right: 1.6rem;
    z-index: 2;
    width: 2.4rem;
    height: 2.4rem
}

@media (min-width: 48em) {
    .tm-modal-overlay__close-button {
        top: 2.4rem;
        right: 2.4rem
    }
}

@media (min-width: 80em) {
    .tm-modal-overlay__close-button {
        top: 1.6rem;
        right: 1.6rem;
        width: 4.8rem;
        height: 4.8rem;
        padding: calc(2.4rem / 2)
    }
}

.tm-modal-overlay__close-button svg {
    width: 2.4rem;
    height: 2.4rem
}

.tm-modal-overlay__content {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
    z-index: 1
}

.tm-modal-overlay--modale-media-video-youtube .tm-modal-overlay__container {
    height: 0;
    padding: 0
}

.tm-modal-overlay--modale-media-video-youtube .tm-modal-overlay__close-button {
    right: 0;
    top: 0;
    background-color: #fff
}

.tm-modal-overlay--modale-media-video-youtube .tm-modal-overlay__content {
    display: block;
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    padding: 0;
    overflow: hidden
}

.tm-modal-overlay--modale-media-video-youtube .tm-modal-overlay__content .tm-modal-overlay__video-container-iframe, .tm-modal-overlay--modale-media-video-youtube .tm-modal-overlay__content .tm-modal-overlay__video-container-static {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    padding: 0
}

.tm-modal-overlay--modale-media-video-youtube .tm-modal-overlay__content .tm-modal-overlay__video-container-static {
    display: block;
    z-index: 1
}

.tm-modal-overlay--modale-media-video-youtube .tm-modal-overlay__content .tm-modal-overlay__video-container-static picture, .tm-modal-overlay--modale-media-video-youtube .tm-modal-overlay__content .tm-modal-overlay__video-container-static picture > img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.tm-modal-overlay--modale-media-video-youtube .tm-modal-overlay__content .tm-modal-overlay__video-container-static .icon-play {
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: 2;
    transform: translate(-50%, -50%);
    display: inline-block;
    width: 70px;
    height: 70px
}

.tm-modal-overlay--modale-media-video-youtube .tm-modal-overlay__content .tm-modal-overlay__video-container-iframe {
    display: none;
    z-index: 2
}

.to-dettaglioofferta {
    padding: 3.2rem;
    position: relative;
    background-color: #fff;
    width: 100%
}

.to-dettaglioofferta__body, .to-dettaglioofferta__header {
    z-index: 1
}

.to-dettaglioofferta .tm-dm-offerta {
    margin-bottom: 1.6rem
}

.to-dettaglioofferta .ta-heading {
    margin-bottom: .8rem
}

@media (min-width: 48em) {
    .to-dettaglioofferta__body {
        column-count: 2;
        column-gap: 1.6rem
    }

    .to-dettaglioofferta__body .tm-dm-offerta {
        display: inline-block;
        width: 100%
    }
}

@media (min-width: 80em) {
    .to-dettaglioofferta {
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        padding: 3.2rem calc(100% / 12);
        flex: 1 0 auto
    }
}

.to-dettaglioofferta.-to-grey-dettaglioofferta {
    background-color: #efefef
}

@media (max-width: 79.99em) {
    .to-dettaglioofferta .tm-module-bg {
        display: none
    }

    .to-dettaglioofferta .tl-col-3, .to-dettaglioofferta .tl-col-5 {
        width: 100%
    }

    .to-dettaglioofferta .tl-col-3 {
        margin-bottom: 3.2rem
    }
}

.to-herobanner {
    background: #0033a1;
    width: 100%
}

.to-herobanner .tm-breadcrumbs {
    padding-left: calc(100vw / 36);
    transform: translateY(calc(100% + 6px));
    height: 0;
    overflow: visible
}

.to-herobanner .tm-breadcrumbs .ta-link__label {
    color: #fff
}

.to-herobanner .tm-breadcrumbs .ta-icon-svg {
    fill: #fff
}

.to-herobanner__content {
    display: flex;
    flex-direction: column
}

@media (min-width: 48em) {
    .to-herobanner__content {
        flex-wrap: nowrap;
        flex-direction: row;
        min-height: 50vw;
        justify-content: flex-end;
        min-height: calc(100vw * 5 / 18)
    }
}

.to-herobanner--text {
    overflow: hidden;
    position: relative
}

.to-herobanner--text .to-herobanner__content .ta-paragraph {
    margin-bottom: 2.4rem
}

@media (min-width: 48em) {
    .to-herobanner--text .to-herobanner__content {
        display: block;
        min-height: auto
    }

    .to-herobanner--text .to-herobanner__content .ta-paragraph {
        margin-bottom: 4.8rem
    }
}

.to-herobanner--text .to-herobanner__content .to-herobanner__button {
    margin-bottom: calc(100vw / 36);
    text-align: center
}

.to-herobanner--text .to-herobanner__content .to-herobanner__button .ta-button {
    margin: 0 auto
}

@media (max-width: 47.99em) {
    .to-herobanner--text .to-herobanner__content .to-herobanner__button {
        margin-bottom: 2.4rem
    }

    .to-herobanner--text .to-herobanner__content .to-herobanner__button .ta-button {
        width: auto !important
    }
}

.to-herobanner--text .tm-module-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    bottom: 0
}

.to-herobanner--text .tm-module-bg * {
    object-fit: fill
}

@media (min-width: 48em) {
    .to-herobanner__text {
        flex-basis: 50%
    }
}

.to-herobanner__text {
    color: #fff;
    position: relative;
    z-index: 0;
    padding: 2.4rem 2.4rem 2.4rem 0
}

@media (max-width: 79.99em) {
    .to-herobanner__text {
        padding: 0 2.4rem
    }
}

@media (max-width: 47.99em) {
    .to-herobanner__text {
        padding: 0 1.6rem
    }
}

.to-herobanner__text .ta-heading {
    line-height: 1.2;
    margin-bottom: 1.6rem;
    margin-top: 1.6rem
}

@media (min-width: 48em) {
    .to-herobanner__text .ta-heading {
        margin-top: 2.4rem
    }
}

@media (min-width: 80em) {
    .to-herobanner__text .ta-heading {
        margin-top: 4.8rem
    }
}

.to-herobanner__text .ta-paragraph {
    line-height: 1.5;
    margin-bottom: 2.4rem
}

.to-herobanner__text.tl-col-12 {
    margin: 0 auto;
    max-width: 1198px;
    text-align: center;
    padding: 2.4rem 2.4rem 0 2.4rem
}

@media (min-width: 48em) {
    .to-herobanner__text.tl-col-12 {
        padding-bottom: 2.4rem
    }
}

.to-herobanner__text.tl-col-12 .ta-heading {
    margin-top: 4.8rem
}

@media (min-width: 48em) {
    .to-herobanner__text.tl-col-12 .ta-heading {
        margin-top: 9.6rem
    }
}

@media (min-width: 80em) {
    .to-herobanner__text.tl-col-12 .ta-heading {
        margin-top: 9.6rem
    }
}

.to-herobanner__text.tl-col-12::before {
    content: attr(data-title);
    position: absolute;
    font-weight: 900;
    white-space: nowrap;
    color: rgba(255, 255, 255, .06);
    z-index: 0;
    font-size: 14.6rem;
    text-align: center;
    left: 50%;
    top: 125px;
    transform: translate(-50%, 0)
}

.to-content-media picture, .to-content-media picture img {
    display: block;
    width: 100%
}

.to-content-media picture img {
    object-fit: cover
}

.to-blog-approfondimento-soluzioni-digitali__card {
    display: none
}

.to-blog-approfondimento-soluzioni-digitali__col-left .ta-carousel-arrows {
    display: none
}

@media (min-width: 80em) {
    .-hidden-desktop-from {
        display: none !important
    }
}
