﻿#page-intro picture::after{background: rgba(0, 0, 0, .4);}  
.elenco-offerte{display: grid;grid-auto-rows:1fr;gap: 2.4rem;width: 100%;padding:4.4rem 0}

.card-offerta{display:flex;text-decoration:none;background: #fff;display:flex;flex-direction:column;border-radius:1.6rem;overflow:hidden;box-shadow:0 2px 8px rgba(0, 0, 0, 0.05)}
.card-offerta__cover{width:100%;height:auto;object-fit:cover;object-position:center;border-radius: 0 0 .8rem .8rem;}
.card-offerta__info{display: flex;flex-direction: column;width: 100%;flex-grow:1;padding:1.6rem;align-items:center}

.card-offerta .periodo-offerta{font-size:1.3rem;line-height:1.3;text-align:center;width:100%;margin:.8rem 0 }
.card-offerta .card-title{font-size: 2.4rem;line-height: 1.2;flex-grow:1;display: flex;align-items: center;flex-direction:column;gap:.8rem;align-items:center;text-align:center;width:100%;margin-bottom: .8rem;margin-top:0}
.card-offerta .card-subtitle{font-size: 1.6rem;text-transform: uppercase;font-family: var(--ff-default);font-weight: 700;border-bottom: 1px solid var(--primary-color);color: var(--primary-color);}
.card-offerta__icon{align-self:end;border: .1rem solid var(--primary-color);width: 35px;height: 35px;display: flex;place-content: center;align-items: center;border-radius: 50%;color: var(--primary-color);flex-shrink: 0;margin-top:.8rem}
.card-offerta hr{border: 0;border-top: 1px solid #eee;width: 100%;margin:.8rem 0}
.card-offerta .pappaloop-wrapper{    background: #fff;padding: .8rem;border-radius: 50%;display: flex;width: 4.5rem;height: 4.5rem;place-content: center;align-items: center;margin-top:-3.85rem}
.card-offerta .pappaloop{width: 4rem;height: auto;}

@media(min-width:600px){
    .elenco-offerte{grid-template-columns: repeat(2, 1fr);gap:1.6rem}

    /* se c'è solo 1 card */
    .elenco-offerte:has(> .card-offerta:first-child):not(:has(> .card-offerta:nth-child(2))) {transform: translateX(calc((100% / 3))); /* sposta di una colonna intera */}
}

@media(min-width:992px){
    .elenco-offerte{grid-template-columns: repeat(3, 1fr);gap:2.4rem}

    /* se c'è solo 1 card */
    .elenco-offerte:has(> .card-offerta:first-child):not(:has(> .card-offerta:nth-child(2))) {transform: translateX(calc((100% / 3)));}

    /* se ci sono 2 card */
    .elenco-offerte:has(> .card-offerta:nth-child(2):nth-last-child(1)) {transform: translateX(calc((100% / 3) / 2));}
}

@media(min-width:1280px){
    .card-offerta__info{padding:1.6rem 2.4rem}
    .elenco-offerte{grid-template-columns: repeat(3, 1fr);gap:2.4rem;padding:8.8rem 0}
}

@media(min-width:1440px){
    .card-offerta .card-title{font-size:3.2rem}
    .card-offerta .periodo-offerta{font-size:1.6rem}
}

@media(min-width:1920px){
    .elenco-offerte{width: calc(((100% - (12 - 1) * 2.4rem) / 12) * 9 + (9 - 1) * 2.4rem);margin:0 auto}
}
