/* ============================================================
   OneTrust — override cosmetici per allineare banner e pulsante
   di riapertura alla brand del sito (cobalt / pumpkin).
   La configurazione strutturale del banner rimane gestita dal
   pannello OneTrust; qui interveniamo solo su colori, tipografia
   e forma dei controlli.
   ============================================================ */

/* --- Pulsante "Impostazioni cookie" nel footer ------------- */
/* Il subFooter del sito ha sfondo cobalt, quindi il pulsante lavora in
   negativo: contorno e testo bianchi, hover in pumpkin pieno per
   coerenza con le CTA principali. */
#ot-sdk-btn.ot-sdk-show-settings {
    display: inline-block;
    padding: 0.55rem 1.4rem;
    font-family: inherit;
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.2;
    color: #ffffff !important;
    background: transparent !important;
    border: 2px solid #ffffff !important;
    border-radius: 5rem;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
    text-transform: none;
    white-space: nowrap;
    text-decoration: none;
}

#ot-sdk-btn.ot-sdk-show-settings:hover,
#ot-sdk-btn.ot-sdk-show-settings:focus {
    background: var(--pumpkin) !important;
    border-color: var(--pumpkin) !important;
    color: #ffffff !important;
    outline: none;
}

/* --- Banner principale ------------------------------------- */
#onetrust-banner-sdk {
    font-family: inherit !important;
    color: var(--cobalt) !important;
    border-top: 4px solid var(--pumpkin) !important;
    box-shadow: 0 -6px 24px rgba(0, 56, 131, 0.12) !important;
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    border-radius: 0 !important;
    transform: none !important;
}

#onetrust-consent-sdk #onetrust-banner-sdk.otFlat,
#onetrust-consent-sdk #onetrust-banner-sdk.ot-bnr-w-logo {
    inset: auto 0 0 0 !important;
}

#onetrust-banner-sdk #onetrust-policy-title,
#onetrust-banner-sdk #onetrust-policy-text {
    color: var(--cobalt) !important;
    font-family: inherit !important;
}

#onetrust-banner-sdk a,
#onetrust-banner-sdk a:visited {
    color: var(--pumpkin) !important;
    text-decoration: underline;
}

/* Bottoni banner (Accetta, Rifiuta, Preferenze) */
#onetrust-banner-sdk #onetrust-accept-btn-handler,
#onetrust-banner-sdk #onetrust-reject-all-handler,
#onetrust-banner-sdk #onetrust-pc-btn-handler {
    font-family: inherit !important;
    font-weight: 700 !important;
    border-radius: 5rem !important;
    padding: 0.7rem 1.6rem !important;
    letter-spacing: 0 !important;
    transition: background-color 0.2s ease, color 0.2s ease !important;
    border-width: 2px !important;
    border-style: solid !important;
}

#onetrust-banner-sdk #onetrust-accept-btn-handler {
    background: var(--pumpkin) !important;
    border-color: var(--pumpkin) !important;
    color: #ffffff !important;
}
#onetrust-banner-sdk #onetrust-accept-btn-handler:hover {
    background: #d76c05 !important;
    border-color: #d76c05 !important;
}

#onetrust-banner-sdk #onetrust-reject-all-handler,
#onetrust-banner-sdk #onetrust-pc-btn-handler {
    background: transparent !important;
    border-color: var(--cobalt) !important;
    color: var(--cobalt) !important;
}
#onetrust-banner-sdk #onetrust-reject-all-handler:hover,
#onetrust-banner-sdk #onetrust-pc-btn-handler:hover {
    background: var(--cobalt) !important;
    color: #ffffff !important;
}

/* --- Preferences Center (pannello modale) ------------------ */
#onetrust-pc-sdk {
    font-family: inherit !important;
    color: var(--cobalt) !important;
}
#onetrust-pc-sdk .ot-pc-header,
#onetrust-pc-sdk h2,
#onetrust-pc-sdk h3,
#onetrust-pc-sdk h4 {
    color: var(--cobalt) !important;
    font-family: inherit !important;
}
#onetrust-pc-sdk a {
    color: var(--pumpkin) !important;
}
#onetrust-pc-sdk .save-preference-btn-handler,
#onetrust-pc-sdk #accept-recommended-btn-handler {
    background: var(--pumpkin) !important;
    border: 2px solid var(--pumpkin) !important;
    color: #ffffff !important;
    border-radius: 5rem !important;
    font-weight: 700 !important;
    padding: 0.7rem 1.4rem !important;
    font-family: inherit !important;
}
#onetrust-pc-sdk .save-preference-btn-handler:hover,
#onetrust-pc-sdk #accept-recommended-btn-handler:hover {
    background: #d76c05 !important;
    border-color: #d76c05 !important;
}

/* Interruttore switch (categorie) — colore attivo brand */
#onetrust-pc-sdk .ot-tgl input:checked + .ot-switch .ot-switch-nob {
    background-color: var(--pumpkin) !important;
    border-color: var(--pumpkin) !important;
}

/* --- Cookie list nella Cookie Policy ----------------------- */
.cookie-policy-list {
    margin-top: 2.5rem;
    padding-top: 2rem;
    border-top: 1px solid rgba(0, 56, 131, 0.12);
}

#ot-sdk-cookie-policy {
    font-family: inherit !important;
    color: #2b3352 !important;
    font-size: 1rem;
    line-height: 1.7;
}

#ot-sdk-cookie-policy .ot-sdk-cookie-policy-title,
#ot-sdk-cookie-policy #cookie-policy-title,
#ot-sdk-cookie-policy h3,
#ot-sdk-cookie-policy h4,
#ot-sdk-cookie-policy h5 {
    color: var(--cobalt) !important;
    font-family: inherit !important;
    font-weight: 700 !important;
    margin-top: 2rem !important;
    margin-bottom: 0.75rem !important;
}

#ot-sdk-cookie-policy h3 {
    font-size: 1.35rem !important;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid var(--pumpkin);
}

#ot-sdk-cookie-policy h4 {
    font-size: 1.1rem !important;
}

#ot-sdk-cookie-policy .ot-sdk-cookie-policy-group-desc,
#ot-sdk-cookie-policy p {
    font-family: inherit !important;
    color: #2b3352 !important;
    line-height: 1.7 !important;
    margin-bottom: 1rem !important;
}

#ot-sdk-cookie-policy a,
#ot-sdk-cookie-policy a:visited {
    color: var(--pumpkin) !important;
    text-decoration: underline;
}

/* Tabella cookie */
#ot-sdk-cookie-policy table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 1rem 0 2rem !important;
    background: #fafbff !important;
    border: 1px solid rgba(0, 56, 131, 0.15) !important;
    font-size: 0.9rem !important;
}

#ot-sdk-cookie-policy th,
#ot-sdk-cookie-policy td {
    padding: 0.75rem 1rem !important;
    text-align: left !important;
    vertical-align: top !important;
    border-bottom: 1px solid rgba(0, 56, 131, 0.1) !important;
    color: #2b3352 !important;
    font-family: inherit !important;
}

#ot-sdk-cookie-policy th {
    background: #eef1fb !important;
    color: var(--cobalt) !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    font-size: 0.78rem !important;
    letter-spacing: 0.02em;
}

#ot-sdk-cookie-policy tr:last-child td {
    border-bottom: none !important;
}

#ot-sdk-cookie-policy tbody tr:hover {
    background: rgba(238, 125, 17, 0.04) !important;
}

@media (max-width: 767px) {
    #ot-sdk-cookie-policy {
        font-size: 0.95rem;
    }
    #ot-sdk-cookie-policy table {
        display: block;
        overflow-x: auto;
    }
    #ot-sdk-cookie-policy th,
    #ot-sdk-cookie-policy td {
        padding: 0.6rem 0.75rem !important;
    }
}
