/* ANCHOR Elementi generici  */

a {
    text-decoration: none;
}

button {
    background: none;
    border: none;
}

ul {
    list-style: none;
}

html {
    overflow-x: hidden;
}

body {
    min-height: 100vh;
}

ion-icon,
.feather {
    pointer-events: none;
}

p strong {
    font-weight: 500;
}

img {
    max-width: 100%;
}

/* ANCHOR Margin */
.mart30 {
    margin-top: 30px;
}

/* SECTION Elementi Grid layout */

.content-grid {
    width: 100%;
    --padding-inline: 2rem;
    --content-max-width: 1400px;
    /* --breakout-max-width: 1600px; */
    --breakout-max-width: 95vw;
    --breakout-size: calc((var(--breakout-max-width) - var(--content-max-width)) / 2);
    display: grid;
    grid-template-columns: [full-width-start] minmax(var(--padding-inline), 1fr) [breakout-start] minmax(0, var(--breakout-size)) [content-start] min(100% - (var(--padding-inline) * 2),
            var(--content-max-width)) [content-end] minmax(0, var(--breakout-size)) [breakout-end] minmax(var(--padding-inline), 1fr) [full-width-end];
}

.content-grid> :not(.breakout, .full-width),
.full-width> :not(.breakout, .full-width) {
    grid-column: content;
}

.content-grid>.breakout {
    grid-column: breakout;
}

.content-grid>.full-width {
    grid-column: full-width;
    display: grid;
    grid-template-columns: inherit;
}

.grid {
    display: grid;
}

.auto_grid {
    grid-auto-flow: column;
}

.align_center {
    align-items: center;
}

.full_width {
    width: 100%;
}

.cut75 {
    max-width: 75%;

}

.cut50 {
    max-width: 50%;
}

.cut45 {
    max-width: 45%;
}

.cut35 {
    max-width: 35%;
}

.auto_center {
    margin-inline: auto;
}

/*ANCHOR - Hero */

.module_col .form_header {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 1rem;
}

.module_col .form_header h2 {
    font-size: var(--fs-550);
    color: var(--dark);
}

.module_col .form_header p {
    font-size: var(--fs-300);
    color: var(--maincolor);
}

.module_col .font p.req_fields_alert {
    max-width: initial;
    margin-inline: initial;
}

.module_col .form_container {
    border-radius: 1rem;
    background-color: var(--white);
    box-shadow: var(--maincolor) 0px 2px 8px 0px;
}

.module_col .form_body {
    align-items: initial;
    gap: 2rem;
}

.module_col .form_body .form_row .input_wrapper {
    width: 100%;
    height: 35px;
}

.module_col .form_body .form_row .input_wrapper.is_textarea {
    height: 100px;
}

.module_col .form_body .form_row .input_wrapper.is_checkbox {
    height: auto;
    display: flex;
    align-items: center;
}

.module_col .form_body .form_row .input_wrapper.is_submit button {
    background-color: var(--verdeCTA);
}

.module_col .form_body .form_row .input_wrapper.is_submit button:hover {
    background-color: var(--verdeCTAdark);
}

.module_col .form_body .form_row .input_wrapper.is_submit {
    margin-bottom: 0;
    height: initial;
    font-size: var(--fs-250);
}

/*ANCHOR - Bio/Chi Siamo */
.video_wrapper {
    width: 100%;
    /* leggero spazio ai lati */
    margin-inline: auto;
    /* centra il contenitore */
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    /* ombra mborbida per effetto rialzo */
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
}

/* Il video riempie tutta l’altezza della finestra mantenendo le proporzioni */
.video_wrapper video {
    height: auto;
    /* occupa tutta l’altezza della finestra */
    width: 100vw;
    /* mantiene l'aspect ratio */
    max-width: 100%;
    /* evita overflow orizzontale */
    display: block;
    object-fit: cover;
    /* evita spazi vuoti; puoi mettere contain se preferisci */
}

/*ANCHOR - Recensioni */

/*ANCHOR - Soluzioni */
/*ANCHOR - Soluzioni - Promo */
.promo_box {
    padding: 3rem;
    border-radius: 1.5rem;
}

.promo_disclaimer {
    padding: 1.5rem 2.5rem;
    border-radius: 10px;
    box-shadow: var(--grigiomedio) 0px 1px 4px;
}

.single_offer {
    /* border: 1px solid var(--grigiomedio); */
    padding: 2rem;
    border-radius: 0.6rem;
    background-color: var(--grigiochiaro);
    box-shadow: var(--grigiomedio) 0px 1px 4px;
}

.single_offer>* {
    text-align: center;
}


.single_offer .prefix_text {
    background-color: var(--maincolor);
    padding: 10px 15px;
    border-radius: 50px;
    line-height: 1.4;
}

.single_offer .prefix_text>p {
    text-transform: uppercase;
}

.single_offer .point_title_container h3 {
    color: var(--secondarycolor);
    line-height: 0.75;
}

.single_offer .point_descr_container {
    margin-top: 1rem;
    text-align: left;
    line-height: 1.5;
}

.single_offer .point_descr_container h3,
.single_offer .point_descr_container h4 {
    color: var(--dark);
    margin-bottom: 1rem;
}

.single_offer .point_descr_container h3:not(:first-of-type),
.single_offer .point_descr_container h4:not(:first-of-type) {
    margin-top: 1rem;
}

.single_offer .point_descr_container ul {
    margin-left: 1rem;
}

.promo_results_container{
    padding: 1.2rem 1rem;
    border-radius: 20px;
}

/*ANCHOR - Trasmissioni */
.tv7trasm-preview {
    padding: 15px;
    margin-bottom: 20px;
    box-shadow: var(--grigiomedio) 0px 1px 4px;
    transition: .4s;
    width: 100%;
    min-width: 300px;
    height: 100%;
    min-height: 300px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    justify-content: flex-end;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
}

.tv7trasm-preview:hover {
    box-shadow: var(--white) 0px 1px 4px;
    cursor: initial;
}

.tv7trasm-preview .logo_container {

    width: 100%;
    height: 100%;
    display: none;
}

.tv7trasm-preview .logo_container img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    /* margin-bottom: 10px; */
}

.tv7trasm-preview h2,
.tv7trasm-preview p {
    position: relative;
    z-index: 2;
    margin: 0;
    /* padding-bottom: 10px; */
}

/* Sfumatura bianca dietro al testo */
.tv7trasm-preview::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 17%;
    /* regola l’altezza della sfumatura */
    background: linear-gradient(to bottom,
            var(--white) 0%,
            var(--grigiochiaro) 100%);
    z-index: 1;
}

/*ANCHOR - Prefooter */
.banner_container {
    padding-left: 3rem;
    padding-right: 3rem;
    border-radius: 1.5rem;
    box-shadow: var(--maincolor) 0px 4px 12px;
}

/*ANCHOR - Footer */
.logo_mask {
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    transition: .4s;
}

.logo_mask:hover {
    background-color: var(--secondarycolor);
}

.devs_logo.logo_mask {
    width: 200px;
    height: 25px;
}

.social.on_footer.logo_mask {
    width: 25px;
    height: 25px;
}

.main_cta_bottom {
    transition: 300ms;
    bottom: 3rem;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    left: 50%;
    translate: -50% 50px;
    border-radius: 150px;
    padding: 1.25rem 2.5rem;
    overflow: hidden;
    z-index: 9999;
    box-shadow: rgba(0, 0, 0, 0.25) 0px 25px 50px -12px;
    transition: 300ms;
    opacity: 0;
    pointer-events: none;
}

.main_cta_bottom.show_cta {
    translate: -50% 0;
    opacity: 1;
    pointer-events: auto;
}

.main_cta_bottom svg {
    color: var(--white);
}

.cta::after,
.main_cta_bottom::after {
    content: '';
    position: absolute;
    pointer-events: none;
    background-color: var(--white);
    width: 20px;
    height: 100%;
    transform: skewX(-10deg);
    right: 25%;
    top: 0;
    opacity: .15;
    translate: -150px 0;
    transition: 300ms;
}

.cta::after,
.main_cta_bottom::after {
    content: '';
    position: absolute;
    pointer-events: none;
    background-color: var(--white);
    width: 20px;
    height: 100%;
    transform: skewX(-10deg);
    right: 25%;
    top: 0;
    opacity: .15;
    translate: -150px 0;
    transition: 300ms;
}

.main_cta_bottom:hover::after {
    translate: 0 0;
}


/* SECTION Privacy Policy  */

.wt-cli-manage-consent-link {
    cursor: pointer;
}

.policy h3 {
    /* font-size: 2vw; */
    margin-bottom: 20px;
    font-size: 1.5vw;
}

.policy h4 {
    margin-bottom: 10px;
    font-size: 18px;
}

.policy h5 {
    margin: 10px 0;
    font-size: 17px;
}

.policy p {
    line-height: 1.5;
    font-size: 15px;
    margin-bottom: 10px;
    text-align: justify;
}

.policy p strong {
    letter-spacing: 1px;
    line-height: 2;
}

.policy ul {
    list-style: lower-latin;
    margin-left: 25px;
    padding: 15px 0;
    /* line-height: 1.6; */
}

.policy ul li {
    line-height: 1.6;
}

/* !SECTION  */

/* SECTION Pagina di ringraziamento */
body.page-template-ringraziamento {
    height: 100%;
    margin: 0;
}

body.page-template-ringraziamento header {
    flex-shrink: 0;
}

#ringraziamento {
    display: flex;
    justify-content: center;
    text-align: center;
    background: var(--white);
    padding: 20px;
}

#ringraziamento .wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 30px;
}

#ringraziamento h2 {
    text-transform: uppercase;
    font-size: 28px;
    padding-bottom: 20px;
    color: var(--maincolor);
    border-bottom: 1px solid var(--secondarycolor);
}

#ringraziamento p {
    margin: 30px 0;
    font-size: 20px;
}

body.page-template-ringraziamento footer {
    flex-shrink: 0;
    margin: 0;
    /* IMPORTANTISSIMO */
}

.page-id-141 .header_container,
.page-id-3 .header_container {
    justify-content: center;
}

/* !SECTION  */

/*!SECTION */
/* SECTION Per pagina test */
#test_zone {
    margin: 100px 0;
}

.barred-price {
    text-decoration: line-through;
}

/* LINK Media */
/*SECTION - 1480px*/
@media only screen and (max-width: 1350px) {
    .promo_disclaimer {
        flex-direction: column;
        padding: 1.5rem 1rem;

    }

    .promo_disclaimer .promo_disclaimer_content__cta {
        font-size: var(--fs-300);
    }

    .promo_disclaimer .promo_disclaimer_content * {
        text-align: center;
    }

    .promo_disclaimer_content__cta,
    .hcc_ctas .cta {
        line-height: 1.3;
    }

    .promo_disclaimer .promo_disclaimer_content h3 {
        margin-bottom: 10px;
    }

    .single_offer .point_descr_container h3,
    .single_offer .point_descr_container h4,
    .single_offer .point_descr_container p {
        text-align: center;
    }
}

/* !SECTION */

/*SECTION - 900px*/
@media only screen and (max-width: 900px) {

    .grid_2_cols,
    .grid_3_cols,
    .grid_4_cols,
    .grid_5_cols,
    .grid_1_2_cols,
    .grid_2_1_cols,
    .grid_3_2_cols,
    .grid_2_1_1_cols {
        grid-template-columns: 1fr;
    }

    .wrapper,
    .major_wrapper {
        width: 100%;
        padding-left: 25px;
        padding-right: 25px;
    }

    .link-container.cut35 {
        max-width: 100%;
    }
	
	.form_row .input_wrapper.is_checkbox label {
    width: 30%;
}

    .promo_disclaimer_content__cta::after {
        right: 0;
    }


    footer .flex:not(.foot-socials) {
        flex-direction: column;
        gap: 20px;

    }

    footer .footer_element.copyright_container {
        text-align: center;
        line-height: 1.5;
    }
}

/* !SECTION */