.internal.article.appfidelity h1,
.internal.article.appfidelity h2,
.internal.article.appfidelity h3,
.internal.article.appfidelity p {
    background: none;
    background-clip: border-box;
    -webkit-background-clip: border-box;
    -webkit-text-fill-color: currentColor;
}

.internal.article.appfidelity header.testata {
    position: relative;
    min-height: 520px !important;
    height: auto !important;
    padding: 64px 0 0;
    overflow: hidden;
    border-radius: 0 !important;
    box-shadow: none !important;
    background-color: #38ac78 !important;
    background-image: linear-gradient(100deg, #38ac78 0%, #31a191 38%, #2e9c9e 62%, #2490c0 100%) !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    color: #fff;
}

.internal.article.appfidelity header.testata .container,
.internal.article.appfidelity header.testata .row,
.internal.article.appfidelity header.testata [class*="col-"] {
    position: static;
}

.internal.article.appfidelity header.testata .row {
    align-items: center !important;
}

.internal.article.appfidelity .testata__eyebrow {
    display: inline-block;
    margin: 0 0 18px;
    padding: 7px 14px;
    background: #fff;
    border-radius: 999px;
    color: #1c61a0;
    font-family: TrendaBold, sans-serif;
    font-size: 1.35rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    line-height: 1.2;
    text-transform: uppercase;
}

.internal.article.appfidelity .testata__title {
    margin: 0 0 4px;
    color: #fff;
    font-family: TrendaBlack, sans-serif;
    font-size: clamp(3.8rem, 4.6vw, 5.4rem);
    font-weight: 900;
    letter-spacing: 0;
    line-height: 0.95;
    text-align: left;
}

.internal.article.appfidelity .testata__claim {
    margin: 0 0 16px;
    color: #fff;
    font-family: TrendaBlack, sans-serif;
    font-size: clamp(3.2rem, 3.8vw, 4.5rem);
    font-weight: 900;
    line-height: 1.05;
}

.internal.article.appfidelity .testata__text {
    max-width: 540px;
    margin: 0;
    color: #fff;
    font-family: TrendaRegular, sans-serif;
    font-size: 1.9rem;
    font-weight: 400;
    line-height: 1.45;
}

.internal.article.appfidelity header.testata .testata__phones {
    position: relative;
    width: 100%;
    margin: 0;
    pointer-events: none;
}

.internal.article.appfidelity header.testata .testata__image {
    display: block;
    width: 100%;
    height: auto;
    max-width: none;
}

.internal.article.appfidelity .partecipare {
    padding: 72px 0 36px;
    background: #fff;
}

.internal.article.appfidelity .partecipare__title,
.internal.article.appfidelity .download__title,
.internal.article.appfidelity .faq__title {
    margin: 0 0 36px;
    color: #1c61a0;
    font-family: TrendaBlack, sans-serif;
    font-size: clamp(3rem, 3.6vw, 4.4rem);
    font-weight: 900;
    line-height: 1.15;
    text-align: center;
}
.internal.article.appfidelity .partecipare__card {
    height: 100%;
    overflow: hidden;
    background: #fff;
    border: 1.5px solid #7eb4dc;
    border-radius: 30px;
    box-shadow: 0 10px 18px rgba(55, 110, 160, 0.14);
    text-align: left;
}

.internal.article.appfidelity .partecipare__top {
    position: relative;
    height: 130px;
    padding: 22px 0 0 26px;
    background: url("../images/app-fidelity/baffo-small.png") center top / 100% 100% no-repeat;
}

.internal.article.appfidelity .partecipare__icon,
.internal.article.appfidelity .invita__icon,
.internal.article.appfidelity .download__app {
    position: relative;
    z-index: 1;
    display: block;
    object-fit: contain;
}

.internal.article.appfidelity .partecipare__icon {
    position: relative;
    z-index: 1;
    width: 50px;
    height: 50px;
}

.internal.article.appfidelity .invita__icon {
    width: 64px;
    height: 64px;
    border-radius: 50%;
}

.internal.article.appfidelity .partecipare__heading {
    position: relative;
    z-index: 2;
    margin: 3px 26px 10px;
    color: #1c61a0;
    text-align: left;
    font-family: TrendaBlack, sans-serif;
    font-size: 2.55rem;
    font-weight: 900;
    line-height: 1.1;
    text-transform: uppercase;
}

.internal.article.appfidelity .partecipare__text {
    position: relative;
    z-index: 2;
    margin: 0 26px 28px;
    color: #6d6d6d;
    font-family: TrendaRegular, sans-serif;
    font-size: 1.85rem;
    font-weight: 400;
    line-height: 1.35;
    text-align: left;
}

.internal.article.appfidelity .vetrina {
    padding: 36px 0 36px;
    background: #fff;
}

.internal.article.appfidelity .vetrina__stage {
    position: relative;
    max-width: 980px;
    margin: 0 auto;
    padding: 24px 0 8px;
}

.internal.article.appfidelity .vetrina__wave {
    position: absolute;
    left: 50%;
    top: 46%;
    width: 100vw;
    height: auto;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.internal.article.appfidelity .vetrina__phones {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.internal.article.appfidelity .vetrina__phone {
    position: relative;
    z-index: 1;
    width: 30%;
    height: auto;
    filter: drop-shadow(0 18px 24px rgba(20, 60, 90, 0.18));
}

.internal.article.appfidelity .vetrina__phone--center {
    z-index: 2;
    width: 80%;
    margin: 0 -5% -8px;
}

.internal.article.appfidelity .download {
    padding: 28px 0 36px;
    background: #fff;
    text-align: center;
}

.internal.article.appfidelity .download__title {
    margin-bottom: 8px;
}

.internal.article.appfidelity .download__subtitle {
    margin: 0 0 34px;
    color: #1c61a0;
    font-family: TrendaBlack, sans-serif;
    font-size: clamp(3rem, 3.6vw, 4.4rem);
    font-weight: 900;
    line-height: 1.15;
    text-align: center;
}

.internal.article.appfidelity .download__stores {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 18px;
}

.internal.article.appfidelity .download__app {
    width: 84px;
    height: 84px;
    flex: 0 0 84px;
    margin-top: 2px;
}

.internal.article.appfidelity .download__meta {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
}

.internal.article.appfidelity .download__badges {
    display: flex;
    align-items: center;
    gap: 14px;
}

.internal.article.appfidelity .download__note {
    margin: 0;
    color: #8d8d8d;
    font-family: TrendaRegular, sans-serif;
    font-size: 2rem;
    font-weight: 400;
    text-align: left;
}

.internal.article.appfidelity .download__store {
    display: block;
}

.internal.article.appfidelity .download__store{
    img {
        display: block;
        width: auto;
        height: 47px;
        
    }
    &:last-of-type {
        img {
            height:41px;
        }
    }
}

.internal.article.appfidelity .invita {
    padding: 48px 0 78px;
    background: #fff;
}

.internal.article.appfidelity .invita__card {
    overflow: hidden;
    max-width: 1080px;
    margin: 0 auto;
    background: #fff;
    border: 1.5px solid #7eb4dc;
    border-radius: 50px;
    box-shadow: 0 12px 22px rgba(55, 110, 160, 0.16);
}

.internal.article.appfidelity .invita__head {
    position: relative;
    display: flex;
    align-items: center;
    gap: 22px;
    min-height: 210px;
    padding: 0px 42px 72px;
    background: url("../images/app-fidelity/baffo-big.png") center top / 100% 100% no-repeat;
}

.internal.article.appfidelity .invita__icon {
    width: 85px;
    height: auto;
    flex: 0 0 auto;
    border-radius: 0;
}

.internal.article.appfidelity .invita__title {
    position: relative;
    z-index: 1;
    min-width: 0;
    flex: 1 1 auto;
    margin: 0;
    color: #fff;
    font-family: TrendaBlack, sans-serif;
    font-size: clamp(2.15rem, 2.4vw, 4rem);
    white-space: nowrap;
    font-weight: 900;
    line-height: 1.15;
    text-align: left;
}

.internal.article.appfidelity .invita__text {
    max-width: 820px;
    margin: 0;
    padding: 8px 24px 48px 150px;
    color: #1c61a0;
    font-family: TrendaSemibold, TrendaBold, sans-serif;
    font-size: 2.25rem;
    font-weight: 600;
    line-height: 1.35;
    text-align: left;
    margin-top: -30px;
}

.internal.article.appfidelity .offerte {
    padding: 64px 0 64px;
    background: #1c61a0;
    color: #fff;
}

.internal.article.appfidelity .offerte__title {
    margin: 0 0 12px;
    color: #fff;
    font-family: TrendaBlack, sans-serif;
    font-size: clamp(3rem, 3.5vw, 4.2rem);
    font-weight: 900;
    line-height: 1.1;
    text-align: left;
}

.internal.article.appfidelity .offerte__text {
    max-width: 920px;
    margin: 0 0 28px;
    color: #fff;
    font-family: TrendaRegular, sans-serif;
    font-size: 2rem;
    font-weight: 400;
    line-height: 1.45;
}

.internal.article.appfidelity .offerte__card {
    height: 100%;
    padding: 26px 28px 20px;
    background: #fff;
    border-radius: 18px;
}

.internal.article.appfidelity .offerte__kicker,
.internal.article.appfidelity .offerte__heading,
.internal.article.appfidelity .offerte__button {
    margin: 0;
    text-align: left;
}

.internal.article.appfidelity .offerte__kicker {
    font-family: TrendaBlack, sans-serif;
    font-size: 2.15rem;
    font-weight: 900;
    line-height: 1.15;
}

.internal.article.appfidelity .offerte__heading {
    margin-bottom: 36px;
    font-family: TrendaBlack, sans-serif;
    font-size: 2.75rem;
    font-weight: 900;
    line-height: 1.05;
    text-transform: uppercase;
}

.internal.article.appfidelity .offerte__card--luce .offerte__kicker,
.internal.article.appfidelity .offerte__card--luce .offerte__heading,
.internal.article.appfidelity .offerte__card--luce .offerte__button {
    color: #1c61a0;
}

.internal.article.appfidelity .offerte__card--gas .offerte__kicker,
.internal.article.appfidelity .offerte__card--gas .offerte__heading,
.internal.article.appfidelity .offerte__card--gas .offerte__button {
    color: #009454;
}

.internal.article.appfidelity .offerte__button {
    display: block;
    font-family: TrendaRegular, sans-serif;
    font-size: 1.65rem;
    font-weight: 400;
    text-align: right;
    text-decoration: none;
}

.internal.article.appfidelity .offerte__button:hover {
    opacity: 0.8;
}

.internal.article.appfidelity .offerte__servizi {
    display: inline-block;
    margin: 34px 0 0;
    color: #fff;
    font-family: TrendaBlack, sans-serif;
    font-size: clamp(2.7rem, 3.2vw, 3.8rem);
    font-weight: 900;
    line-height: 1.15;
    text-decoration: underline;
    text-decoration-thickness: 3px;
    text-underline-offset: 7px;
}

.internal.article.appfidelity .faq {
    padding: 64px 0 80px;
    background: #fff;
}

.internal.article.appfidelity .faq__question {
    display: block;
    width: 100%;
    margin: 0 0 14px;
    padding: 18px 52px 18px 28px;
    background: #dfeaf4;
    border: 0;
    border-radius: 16px;
    color: #1c61a0;
    font-family: TrendaSemibold, TrendaBold, sans-serif;
    font-size: 2.15rem;
    line-height: 1.3;
    text-align: left;
    cursor: pointer;
    position: relative;
}

.internal.article.appfidelity .faq__question:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 26px;
    width: 10px;
    height: 10px;
    border-right: 2px solid #1c61a0;
    border-bottom: 2px solid #1c61a0;
    transform: translateY(-70%) rotate(45deg);
}

.internal.article.appfidelity .faq__question.active:after {
    transform: translateY(-20%) rotate(225deg);
}

.internal.article.appfidelity .faq__answer {
    max-height: 0;
    margin: 0 12px;
    overflow: hidden;
    color: #4d4d4d;
    font-size: 1.6rem;
    line-height: 1.45;
}

.internal.article.appfidelity .faq__legal {
    margin: 28px 0 0;
    color: #6b6b6b;
    font-size: 1.6rem;
    line-height: 1.5;
    text-align: center;
}

.internal.article.appfidelity .faq__legal a {
    color: #4d4d4d;
    font-weight: 700;
    text-decoration: underline;
}

@media (max-width: 1199.98px) {
    .internal.article.appfidelity header.testata {
        min-height: 0 !important;
        padding: 48px 0 0;
    }

    .internal.article.appfidelity header.testata .row {
        align-items: stretch !important;
    }

    .internal.article.appfidelity header.testata .col-lg-6:first-child {
        display: flex !important;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
    }

    .internal.article.appfidelity .testata__title {
        font-size: clamp(2.6rem, 4vw, 4rem);
    }

    .internal.article.appfidelity .testata__claim {
        font-size: clamp(2rem, 3.2vw, 3rem);
    }

    .internal.article.appfidelity .testata__text {
        font-size: 1.55rem;
    }
}

@media (max-width: 991px) {
    .internal.article.appfidelity header.testata {
        padding: 56px 0 0;
        min-height: 0 !important;
    }

    .internal.article.appfidelity header.testata .container,
    .internal.article.appfidelity header.testata .row,
    .internal.article.appfidelity header.testata [class*="col-"] {
        position: relative;
    }

    .internal.article.appfidelity header.testata .col-lg-6:first-child {
        display: block !important;
    }

    .internal.article.appfidelity header.testata .testata__phones {
        position: relative;
        right: auto;
        bottom: auto;
        width: min(100%, 480px);
        max-height: 340px;
        margin: 28px auto 0;
        overflow: hidden;
        pointer-events: auto;
    }

    .internal.article.appfidelity .invita__text {
        padding-right: 24px;
        padding-left: 24px;
    }
}

@media (max-width: 767px) {
    .internal.article.appfidelity header.testata .testata__phones {
        width: min(100%, 360px);
        max-height: 280px;
    }

    .internal.article.appfidelity .download__stores {
        flex-direction: column;
    }

    .internal.article.appfidelity .download__meta,
    .internal.article.appfidelity .download__badges {
        align-items: center;
    }

    .internal.article.appfidelity .download__note {
        text-align: center;
    }

    .internal.article.appfidelity .invita__head {
        align-items: center;
        padding-right: 22px;
        padding-left: 22px;
    }

    .internal.article.appfidelity .invita__title {
        font-size: 1.9rem;
        white-space: normal;
    }

    .internal.article.appfidelity .offerte__button {
        text-align: left;
    }
}
