
.tia-premium,
.tia-premium *,
.tia-premium-mobile,
.tia-premium-mobile *{box-sizing:border-box}

.tia-premium{
    --tia-navy:#071b4f;
    --tia-navy-2:#0b2c73;
    --tia-blue:#2d66e5;
    --tia-blue-soft:#edf5ff;
    --tia-blue-soft-2:#f6f9ff;
    --tia-ink:#091a42;
    --tia-muted:#596883;
    --tia-border:#d8e4f4;
    --tia-white:#fff;
    --tia-shadow:0 22px 58px rgba(7,27,79,.12);
    position:relative;
    width:min(1014px,calc(100% - 32px));
    margin:26px auto;
    color:var(--tia-ink);
    font-family:inherit;
    line-height:1.45;
}

.tia-premium__shell{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(275px,.92fr);
    min-height:255px;
    overflow:hidden;
    border:1px solid rgba(120,154,205,.28);
    border-radius:22px;
    background:
        radial-gradient(circle at 78% 18%,rgba(255,255,255,.98) 0 18%,rgba(255,255,255,0) 45%),
        linear-gradient(115deg,#e9f3ff 0%,#f6f9ff 47%,#eef4fb 100%);
    box-shadow:var(--tia-shadow);
    isolation:isolate;
}

.tia-premium__shell:before{
    content:"";
    position:absolute;
    left:-80px;
    bottom:-135px;
    width:360px;
    height:360px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(56,112,231,.15),rgba(56,112,231,0) 70%);
    z-index:-1;
}

.tia-premium__content{
    position:relative;
    z-index:3;
    align-self:center;
    padding:34px 18px 32px 40px;
}

.tia-premium__kicker{
    margin:0 0 10px;
    color:var(--tia-navy-2);
    font-size:11px;
    font-weight:850;
    letter-spacing:.095em;
    text-transform:uppercase;
}

.tia-premium__title{
    max-width:620px;
    margin:0 0 6px!important;
    color:var(--tia-navy)!important;
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:clamp(30px,3.15vw,47px)!important;
    font-weight:700!important;
    line-height:1.02!important;
    letter-spacing:-.035em!important;
}

.tia-premium__subtitle{
    margin:0 0 8px;
    color:var(--tia-navy);
    font-family:Georgia,"Times New Roman",serif;
    font-size:20px;
    font-weight:700;
    line-height:1.15;
}

.tia-premium__text{
    max-width:570px;
    margin:0 0 20px!important;
    color:#40526f!important;
    font-size:15.5px!important;
    line-height:1.55!important;
}

.tia-premium__cta{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    gap:11px;
    min-height:50px;
    padding:0 22px;
    border:0!important;
    border-radius:13px;
    background:linear-gradient(135deg,var(--tia-navy) 0%,var(--tia-navy-2) 100%)!important;
    box-shadow:0 12px 26px rgba(7,27,79,.20);
    color:#fff!important;
    font-size:15px!important;
    font-weight:800!important;
    text-decoration:none!important;
    transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}

.tia-premium__cta:hover,
.tia-premium__cta:focus{
    color:#fff!important;
    transform:translateY(-2px);
    box-shadow:0 15px 31px rgba(7,27,79,.26);
}

.tia-premium__cta span{font-size:18px;line-height:1}

.tia-premium__visual{
    position:relative;
    z-index:2;
    min-height:255px;
    overflow:hidden;
}

.tia-premium__visual:before{
    content:"";
    position:absolute;
    inset:0;
    z-index:2;
    background:linear-gradient(90deg,#f2f7ff 0%,rgba(242,247,255,.30) 23%,rgba(242,247,255,0) 58%);
    pointer-events:none;
}

.tia-premium__visual img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    display:block;
    transform:scale(1.02);
}

.tia-premium__glow{
    position:absolute;
    right:-45px;
    top:-45px;
    z-index:3;
    width:160px;
    height:160px;
    border-radius:50%;
    background:rgba(255,255,255,.34);
    filter:blur(8px);
    pointer-events:none;
}

.tia-premium__preview{
    position:absolute;
    top:13px;
    right:14px;
    z-index:10;
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:0 8px;
    border:1px solid #efd072;
    border-radius:999px;
    background:#fff7d8;
    color:#6e5600;
    font:800 9px/1 inherit;
    letter-spacing:.055em;
}

.tia-premium__features{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:0;
    margin-top:-1px;
    overflow:hidden;
    border:1px solid rgba(120,154,205,.28);
    border-top:0;
    border-radius:0 0 22px 22px;
    background:#fff;
    box-shadow:0 18px 45px rgba(7,27,79,.07);
}

.tia-premium__features>div{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    min-height:70px;
    padding:12px 18px;
    border-right:1px solid #edf1f7;
}

.tia-premium__features>div:last-child{border-right:0}

.tia-premium__features svg{
    width:24px;
    height:24px;
    flex:0 0 24px;
    fill:none;
    stroke:var(--tia-navy);
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.tia-premium__features span{display:flex;flex-direction:column}
.tia-premium__features strong{color:var(--tia-navy);font-size:12.5px;line-height:1.2}
.tia-premium__features small{margin-top:3px;color:#71809a;font-size:10.5px}

/* RESULTS: standalone horizontal card, never squeezed into an RSA card */
.tia-premium--results{
    width:100%;
    max-width:none;
    margin:20px 0;
}
.tia-premium--results .tia-premium__shell{
    grid-template-columns:minmax(0,1.18fr) minmax(230px,.82fr);
    min-height:225px;
    border-radius:20px;
}
.tia-premium--results .tia-premium__content{padding:27px 24px 26px 30px}
.tia-premium--results .tia-premium__title{font-size:32px!important;max-width:520px}
.tia-premium--results .tia-premium__subtitle{font-size:17px}
.tia-premium--results .tia-premium__text{font-size:14.5px!important;max-width:500px}
.tia-premium--results .tia-premium__visual{min-height:225px}

/* STRUCTURE: luxury sidebar card */
.tia-premium--structure{
    width:100%;
    margin:0 0 20px;
}
.tia-premium--structure .tia-premium__shell{
    display:flex;
    flex-direction:column;
    min-height:0;
    border-radius:20px;
    background:linear-gradient(155deg,#f8fbff 0%,#edf5ff 100%);
}
.tia-premium--structure .tia-premium__content{
    order:1;
    padding:22px 20px 17px;
}
.tia-premium--structure .tia-premium__title{
    font-size:26px!important;
    line-height:1.03!important;
}
.tia-premium--structure .tia-premium__subtitle{font-size:17px}
.tia-premium--structure .tia-premium__text{font-size:13.5px!important;margin-bottom:16px!important}
.tia-premium--structure .tia-premium__visual{
    order:2;
    min-height:205px;
    margin:0 12px;
    border-radius:15px;
}
.tia-premium--structure .tia-premium__visual:before{
    background:linear-gradient(180deg,rgba(242,247,255,.18),rgba(242,247,255,0));
}
.tia-premium--structure .tia-premium__cta{
    width:100%;
    min-height:48px;
}
.tia-premium--structure.tia-premium--main-fallback{
    width:min(970px,calc(100% - 32px));
    margin:22px auto;
}
.tia-premium--structure.tia-premium--main-fallback .tia-premium__shell{
    display:grid;
    grid-template-columns:minmax(0,1fr) 320px;
}
.tia-premium--structure.tia-premium--main-fallback .tia-premium__visual{
    order:initial;
    margin:0;
    min-height:260px;
}

/* BLOG: behaves like a premium editorial card in the grid */
.tia-premium--blog_archive{
    width:100%;
    margin:0;
    align-self:stretch;
}
.tia-premium--blog_archive .tia-premium__shell{
    display:flex;
    height:100%;
    min-height:100%;
    flex-direction:column;
    border-radius:22px;
    background:#fff;
    box-shadow:0 14px 34px rgba(7,27,79,.08);
}
.tia-premium--blog_archive .tia-premium__visual{
    order:1;
    min-height:190px;
    border-radius:21px 21px 0 0;
}
.tia-premium--blog_archive .tia-premium__visual:before{
    background:linear-gradient(180deg,rgba(7,27,79,0) 55%,rgba(7,27,79,.07) 100%);
}
.tia-premium--blog_archive .tia-premium__content{
    order:2;
    display:flex;
    flex:1;
    flex-direction:column;
    align-items:flex-start;
    padding:22px 20px 21px;
}
.tia-premium--blog_archive .tia-premium__title{
    font-family:inherit!important;
    font-size:24px!important;
    line-height:1.08!important;
    letter-spacing:-.025em!important;
}
.tia-premium--blog_archive .tia-premium__text{font-size:14px!important}
.tia-premium--blog_archive .tia-premium__cta{
    width:100%;
    margin-top:auto;
}

/* ARTICLE / PAGE: editorial recommendation */
.tia-premium--article,
.tia-premium--page{
    width:100%;
    margin:34px 0;
}
.tia-premium--article .tia-premium__shell,
.tia-premium--page .tia-premium__shell{
    grid-template-columns:minmax(0,1.18fr) minmax(250px,.82fr);
    min-height:300px;
}
.tia-premium--article .tia-premium__content,
.tia-premium--page .tia-premium__content{padding:31px 24px 30px 32px}
.tia-premium--article .tia-premium__title,
.tia-premium--page .tia-premium__title{font-size:31px!important}
.tia-premium--article .tia-premium__visual,
.tia-premium--page .tia-premium__visual{min-height:300px}

.tia-premium__list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px 14px;
    margin:0 0 20px!important;
    padding:0!important;
    list-style:none!important;
}
.tia-premium__list li{
    display:flex;
    align-items:center;
    gap:7px;
    margin:0!important;
    color:#24395d;
    font-size:12.5px;
}
.tia-premium__list svg{
    width:17px;
    height:17px;
    flex:0 0 17px;
    fill:none;
    stroke:#1c4b9c;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
}

/* MOBILE STICKY */
.tia-premium-mobile{display:none}

@media(max-width:900px){
    .tia-premium__title{font-size:35px!important}
    .tia-premium__shell{grid-template-columns:minmax(0,1fr) 310px}
}

@media(max-width:767px){
    .tia-premium{
        width:calc(100% - 24px)!important;
        margin:18px auto!important;
    }

    .tia-premium__shell,
    .tia-premium--results .tia-premium__shell,
    .tia-premium--article .tia-premium__shell,
    .tia-premium--page .tia-premium__shell,
    .tia-premium--structure.tia-premium--main-fallback .tia-premium__shell{
        display:flex!important;
        flex-direction:column!important;
        min-height:0!important;
        border-radius:20px!important;
    }

    .tia-premium__visual,
    .tia-premium--results .tia-premium__visual,
    .tia-premium--article .tia-premium__visual,
    .tia-premium--page .tia-premium__visual{
        order:1!important;
        width:100%;
        min-height:225px!important;
        margin:0!important;
        border-radius:19px 19px 0 0!important;
    }

    .tia-premium__visual:before{
        background:linear-gradient(180deg,rgba(242,247,255,0) 55%,rgba(242,247,255,.78) 100%)!important;
    }

    .tia-premium__content,
    .tia-premium--results .tia-premium__content,
    .tia-premium--article .tia-premium__content,
    .tia-premium--page .tia-premium__content{
        order:2!important;
        padding:22px 20px 21px!important;
    }

    .tia-premium__title,
    .tia-premium--results .tia-premium__title,
    .tia-premium--article .tia-premium__title,
    .tia-premium--page .tia-premium__title{
        font-size:30px!important;
        line-height:1.02!important;
    }

    .tia-premium__subtitle{font-size:17px}
    .tia-premium__text{font-size:14.5px!important;margin-bottom:17px!important}
    .tia-premium__cta{width:100%;min-height:52px}

    .tia-premium__features{
        grid-template-columns:1fr;
        border-radius:0 0 20px 20px;
    }
    .tia-premium__features>div{
        justify-content:flex-start;
        min-height:53px;
        padding:10px 20px;
        border-right:0;
        border-bottom:1px solid #edf1f7;
    }
    .tia-premium__features>div:last-child{border-bottom:0}

    .tia-premium--structure .tia-premium__visual{
        order:1!important;
        min-height:205px!important;
        margin:0!important;
        border-radius:19px 19px 0 0!important;
    }
    .tia-premium--structure .tia-premium__content{order:2!important}
    .tia-premium--structure .tia-premium__title{font-size:28px!important}

    .tia-premium--blog_archive .tia-premium__visual{min-height:205px!important}
    .tia-premium--blog_archive .tia-premium__title{
        font-family:inherit!important;
        font-size:23px!important;
    }

    .tia-premium__list{grid-template-columns:1fr}

    body.tia-shop-promo-has-sticky{padding-bottom:88px!important}

    .tia-premium-mobile{
        position:fixed;
        left:10px;
        right:10px;
        bottom:max(10px,env(safe-area-inset-bottom));
        z-index:2147482000;
        display:grid;
        grid-template-columns:52px minmax(0,1fr) auto;
        align-items:center;
        gap:10px;
        min-height:70px;
        padding:8px;
        border:1px solid #d7e2f2;
        border-radius:18px;
        background:rgba(255,255,255,.97);
        box-shadow:0 12px 34px rgba(7,27,79,.22);
        backdrop-filter:blur(14px);
        font-family:inherit;
    }

    .tia-premium-mobile__thumb{
        width:52px;
        height:52px;
        border-radius:13px;
        object-fit:cover;
        object-position:center;
        display:block;
    }

    .tia-premium-mobile__copy{min-width:0}
    .tia-premium-mobile__copy strong,
    .tia-premium-mobile__copy span{
        display:block;
        overflow:hidden;
        text-overflow:ellipsis;
        white-space:nowrap;
    }
    .tia-premium-mobile__copy strong{
        color:#071b4f;
        font-size:13.5px;
        line-height:1.15;
    }
    .tia-premium-mobile__copy span{
        margin-top:3px;
        color:#6b7890;
        font-size:10.5px;
        line-height:1.1;
    }

    .tia-premium-mobile a{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        gap:6px;
        min-height:48px;
        padding:0 14px;
        border-radius:13px;
        background:linear-gradient(135deg,#071b4f,#0b2c73);
        color:#fff!important;
        text-decoration:none!important;
        font-size:12.5px;
        font-weight:800;
        white-space:nowrap;
    }
}

@media(max-width:390px){
    .tia-premium-mobile{
        grid-template-columns:46px minmax(0,1fr) auto;
        gap:8px;
    }
    .tia-premium-mobile__thumb{width:46px;height:46px}
    .tia-premium-mobile a{padding:0 11px;font-size:11.5px}
    .tia-premium-mobile__copy span{font-size:9.8px}
}


/* 0.3.1 — FIX PAGINE RISULTATI/REGIONI
   Il contenitore risultati del tema è una griglia: la promo deve occupare
   l'intera riga, non una singola colonna interna. */
.tia-premium--results{
    grid-column:1 / -1 !important;
    grid-row:auto !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    justify-self:stretch !important;
    align-self:stretch !important;
    flex:0 0 100% !important;
}
.tia-premium--results .tia-premium__shell{
    width:100% !important;
    max-width:none !important;
}
