/*=========================================================
    Prodotti - stili aggiuntivi (sezione home + pagine prodotto)
    Nessuna modifica a style.min.css: questo file si carica dopo.
==========================================================*/

/*---------- Sezione Prodotti in homepage ----------*/
.products-section { background-color: #ffffff; }
.products-intro { color: #6f6f6f; }

.product-card {
    background-color: #ffffff;
    border: 1px solid #e0e1e7;
    border-radius: 8px;
    overflow: hidden;
    height: 100%;
    transition: all .3s ease-out 0s;
}
.product-card:hover { box-shadow: 0 20px 40px rgba(17, 100, 218, .14); transform: translateY(-6px); }
.product-card > a { display: block; }
.product-card img { width: 100%; display: block; }
.product-card-body { padding: 35px 30px 40px; }
.product-card-body h3 { font-size: 24px; font-weight: 700; margin-bottom: 8px; }
.product-card-body h3 a { color: #1e1e1e; }
.product-card-body h3 a:hover { color: #1164da; }
.product-card-body .product-card-claim { color: #1164da; font-weight: 500; margin-bottom: 15px; }
.product-card-body p { color: #6f6f6f; }

/*---------- Pulsante ----------*/
.ai-btn {
    display: inline-block;
    background-color: #1164da;
    color: #ffffff;
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    padding: 14px 32px;
    border-radius: 4px;
    transition: all .3s ease-out 0s;
}
.ai-btn:hover { background-color: #0b2a5b; color: #ffffff; }
.ai-btn-light { background-color: #ffffff; color: #1164da; }
.ai-btn-light:hover { background-color: #edf1fa; color: #0b2a5b; }

/*---------- Selettore lingua ----------*/
.lang-switch {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .5px;
    white-space: nowrap;
}
.lang-switch a {
    color: #9aa7b5;
    padding: 4px 6px;
    border-radius: 3px;
    transition: all .3s ease-out 0s;
}
.lang-switch a:hover { color: #1164da; }
.lang-switch a.is-current { color: #1164da; background-color: #edf1fa; }
.lang-switch span { color: #c8d3e4; }

/* sulle pagine con hero scuro il selettore deve restare leggibile */
.product-page .lang-switch a { color: rgba(255, 255, 255, .7); }
.product-page .lang-switch a:hover { color: #ffffff; }
.product-page .lang-switch a.is-current { color: #ffffff; background-color: rgba(255, 255, 255, .18); }
.product-page .lang-switch span { color: rgba(255, 255, 255, .35); }

@media only screen and (max-width: 991px) {
    .product-page .lang-switch a { color: #9aa7b5; }
    .product-page .lang-switch a:hover { color: #1164da; }
    .product-page .lang-switch a.is-current { color: #1164da; background-color: #edf1fa; }
    .product-page .lang-switch span { color: #c8d3e4; }
}

/*---------- Header sulle pagine prodotto ----------*/
.product-page header .nav .main-mneu ul li a { color: rgba(255, 255, 255, .82); }
.product-page header .nav .main-mneu ul li a:hover,
.product-page header .nav .main-mneu ul li.active a { color: #ffffff; }

/*---------- Hero pagina prodotto ----------*/
.product-hero {
    background: linear-gradient(120deg, #0b2a5b 0%, #1164da 100%);
    padding: 175px 0 90px;
    color: #ffffff;
}
.product-hero .product-eyebrow {
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #ffffff;
    background-color: rgba(255, 255, 255, .16);
    padding: 7px 16px;
    border-radius: 4px;
    margin-bottom: 22px;
}
.product-hero h1 {
    color: #ffffff;
    font-size: 46px;
    line-height: 1.15;
    font-weight: 800;
    text-transform: uppercase;
    margin-bottom: 22px;
}
.product-hero .product-lead { color: #d7e4fb; font-size: 19px; line-height: 1.6; margin-bottom: 32px; }
.product-hero img { width: 100%; border-radius: 12px; }

/*---------- Sezioni pagina prodotto ----------*/
.product-section { padding: 90px 0; }
.product-section.is-light { background-color: #f6f8fd; }
.product-section h2 { font-size: 38px; font-weight: 800; text-transform: uppercase; margin-bottom: 20px; }
.product-section h3 { font-size: 22px; font-weight: 700; margin-bottom: 12px; }
.product-section p { color: #6f6f6f; }
.product-claim { font-size: 20px; font-weight: 500; color: #1164da; margin-bottom: 28px; }

.feature-card {
    background-color: #ffffff;
    border: 1px solid #e0e1e7;
    border-top: 4px solid #1164da;
    border-radius: 6px;
    padding: 30px 28px;
    height: 100%;
    transition: all .3s ease-out 0s;
}
.feature-card:hover { box-shadow: 0 16px 34px rgba(17, 100, 218, .12); }
.feature-card h3 { font-size: 19px; color: #1e1e1e; }
.feature-card p { margin-bottom: 0; }
.feature-card.is-green { border-top-color: #16ad44; }

.audience-card {
    background-color: #ffffff;
    border: 1px solid #e0e1e7;
    border-radius: 6px;
    padding: 30px 28px;
    height: 100%;
}
.audience-card i { font-size: 30px; color: #1164da; margin-bottom: 18px; display: block; }
.audience-card h3 { font-size: 19px; }
.audience-card p:last-child { margin-bottom: 0; }

.esg-band {
    background-color: #eef8f1;
    border-left: 5px solid #16ad44;
    border-radius: 6px;
    padding: 35px 35px 30px;
}
.esg-band h3 { color: #0f7a31; }
.esg-band p:last-child { margin-bottom: 0; }

.product-figure { width: 100%; border-radius: 10px; }

/*---------- Richiamo finale ----------*/
.product-cta { background: linear-gradient(120deg, #0b2a5b 0%, #1164da 100%); padding: 70px 0; }
.product-cta h2 { color: #ffffff; font-size: 34px; font-weight: 800; text-transform: uppercase; margin-bottom: 12px; }
.product-cta p { color: #d7e4fb; margin-bottom: 0; }

/*---------- Responsive ----------*/
@media only screen and (max-width: 991px) {
    /* su mobile il logo del menu e piu alto: serve piu spazio sopra il titolo */
    .product-hero { padding: 175px 0 70px; }
    .product-hero h1 { font-size: 34px; }
    .product-hero .product-lead { font-size: 17px; }
    .product-section { padding: 65px 0; }
    .product-section h2 { font-size: 30px; }
    .product-page header .nav .main-mneu ul li a { color: #6f7c8c; }
}
@media only screen and (max-width: 767px) {
    .product-hero h1 { font-size: 28px; }
    .product-cta h2 { font-size: 26px; }
    .product-card-body { padding: 28px 22px 32px; }
}
