.fh-plans{

    display:grid;

    grid-template-columns:repeat(4, 1fr);

    gap:20px;

    margin-top:25px;

    width:100%;

}

.fh-plan-card{

    background:#1a1a1a;

    border:1px solid #2a2a2a;

    border-radius:16px;

    padding:20px;

    color:#fff;

    display:flex;

    flex-direction:column;

    gap:12px;

    min-height:220px;

}

.fh-plan-card h3{

    margin:0;

    font-size:16px;

    font-weight:700;

}

.fh-plan-price{

    font-size:28px;

    font-weight:900;

    color:#f2c230;

}

.fh-plan-card ul{

    list-style:none;

    padding:0;

    margin:0;

    color:#bbb;

    font-size:14px;

    display:flex;

    flex-direction:column;

    gap:6px;

}

.fh-plan-btn{

    margin-top:auto;

    background:#f2c230;

    color:#111;

    text-align:center;

    padding:12px;

    border-radius:10px;

    font-weight:700;

    text-decoration:none;

}

.fh-plans-header{
    text-align:center;
    margin:40px 0 20px;
}

.fh-plans-header h2{
    color:#fff;
    font-size:26px;
    margin-bottom:10px;
}

.fh-plans-header p{
    color:#aaa;
    font-size:14px;
}

.fh-plans-grid{

    display:grid;

    grid-template-columns:repeat(4, 1fr);

    gap:20px;

    align-items:start;

}

.fh-plan{
    background:#141414;
    border-radius:18px;
    padding:0 5px 12px 5px !important;
    border:1px solid #2a2a2a;
    display:flex;
    flex-direction:column;
    gap:0px;
}

.fh-plan-title{
    font-size:18px;
    font-weight:800;
}

.fh-plan img{
    width:100%;
    border-radius:10px;
}

.fh-plan ul{
    list-style:none;
    padding:0;
    color:#ccc;
    font-size:13px;
}

.fh-plan-gift{
    background:#1f1f1f;
    padding:8px;
    border-radius:8px;
    font-size:12px;
    color:#aaa;
}

.fh-plan-price{
    font-size:28px;
    font-weight:900;
    color:#fff;
}

.fh-plan-price span{
    font-size:12px;
    color:#888;
}

.fh-plan-btn{
    padding:12px;
    border-radius:10px;
    text-align:center;
    font-weight:800;
    color:#111;
    text-decoration:none;
}

.fh-plan-btn.red{ background:#e53935; }
.fh-plan-btn.yellow{ background:#f2c230; }
.fh-plan-btn.blue{ background:#2f80ed; }
.fh-plan-btn.green{ background:#27ae60; }

.fh-plans-subtitle{
    color:#d6a72b !important;
    font-weight:800 !important;
    text-align:center;
    font-size:14px;
    margin-top:8px;
}

.fh-plan{
    padding:0 5px 12px 5px !important;
}

.fh-plan-title{
    margin:0 !important;
    padding:0 !important;
}

.fh-plan img {

    display:block;

    margin-top:0 !important;

}

.fh-plan ul{
    text-align:center;
}

.fh-plan ul li{
    text-align:center;
}

.fh-plan-gift{
    text-align:center;
}

.fh-plan-price{
    text-align:center;
}

.fh-plan-gift{

    background:#2a2a2a;

    color:#d6a72b;

    padding:8px 10px;

    border-radius:10px;

    font-weight:700;

    font-size:12px;

    display:flex;

    align-items:center;

    gap:6px;

    white-space:nowrap;   /* 👈 QUESTO BLOCCA L’ACAPO */

}

.fh-plan ul li:first-child,
.fh-plan ul li:last-child{

    color:#d6a72b;

    font-weight:800;

}


.fh-plan{
    gap:4px !important;
}

/* immagine → lista */
.fh-plan-cover{
    margin-bottom:4px !important;
}

/* lista */
.fh-plan ul{
    margin:0 !important;
    padding:0 !important;
}

/* ogni riga lista più compatta */
.fh-plan ul li{
    margin:0 !important;
    line-height:1.15;
}

/* lista → gift */
.fh-plan-gift{
    margin:4px 0 !important;
    padding:6px 8px !important;
}

/* gift → prezzo */
.fh-plan-price{
    margin:4px 0 !important;
    line-height:1.1;
}

/* prezzo → bottone */
.fh-plan-btn{
    margin-top:6px !important;
}



.fh-plan-price{
    display:flex;
    justify-content:center;
    align-items:baseline;
    gap:8px;
    font-size:0; /* 👈 IMPORTANTISSIMO: elimina ereditarietà font-size */
}

/* PREZZO */
.fh-plan-price .fh-price-value{
    color:#d6a72b !important;
    font-weight:900 !important;
    font-size:28px !important;
    line-height:1 !important;
}

/* / stagione */
.fh-plan-price .fh-price-period{
    color:#ffffff !important;
    font-weight:700 !important;
    font-size:14px !important;
    line-height:1 !important;
}


.fh-license-input-wrapper{
    margin:15px 0;
}

.fh-license-input{

    width:100%;

    padding:12px 14px;

    border-radius:10px;

    border:1px solid #333;

    background:#ffffff;

    color:#111;

    font-size:14px;

    outline:none;

}

.fh-license-input:focus{
    border-color:#d6a72b;
    box-shadow:0 0 0 2px rgba(214,167,43,0.2);
}

.fh-license-input:focus{
    border-color:#d6a72b;
    box-shadow:0 0 0 2px rgba(214,167,43,0.25);
}
@media (max-width: 1100px){
    .fh-plans,
    .fh-plans-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px){
    .fh-plans,
    .fh-plans-grid{
        grid-template-columns:1fr;
    }

    .fh-plans-header h2{
        font-size:clamp(24px, 7vw, 32px);
    }

    .fh-plan ul li{
        white-space:normal;
    }
}
