.cta--button--container{
    position: relative;
    padding: 6px;
    border-radius: 30px;
}
.cta--button{
    border-radius: 30px;
    padding:10px 30px;
    color: #ffffff;
    background-color: #000000;
}
.text-white{
    color: #ffffff;
}
.text-black{
    color: #000000;
}


.d-inline-block{
    display: inline-block;
}

.inner-block-500 {
    max-width: 500px;
}

.inner-block-1120 {
    max-width: 1120px;
}


.inner-block-1000 {
    max-width: 1000px;
}

.accent--gradient {
    height: auto !important;
}

.btn--submit{
    background-color: #000000;
}

.my-3.cboxes .wpcf7-form-control-wrap {
    display: inline-block;
    margin-bottom: 10px;
}

.field-row {
    margin-bottom: 25px;
}
.field-row label {
    margin-bottom: 10px;
}
.form .form-field-container {
    padding: 2px !important;
}

.calendly-badge-content{
    opacity: 0 !important;
}

.ti-cursor{
    display: none !important;
}

.form-field-container textarea  {
    width: 100%;
    background-color: #000;
    color: #ffffff;
    padding: 10px;
}

@media (max-width: 767px) {


    .sso-section img {
        max-width: 36% !important;
    }

    .oxy-header-center {
        justify-content: end !important;
    }
    .oxy-header-container{
        width:100%;
        max-width: 100%;
    }


    #contact-form-section .accent--gradient--animated,
    #contact-form-section .accent--gradient--animated label,
    #contact-form-section .accent--gradient--animated label input
    {
        max-width: 100%;
    }

    #contact-form-section .ct-fancy-icon{
        display: none !important;
    }

    #tagline{
        position: absolute;
        left: 25px;
    }
}


@-webkit-keyframes pulse {
    0% { -webkit-transform: scale(0.9); opacity: 0.7; }
    50% { -webkit-transform: scale(1); opacity: 1; }
    100% { -webkit-transform: scale(0.9); opacity: 0.7; }
}

@keyframes pulse {
    0% { transform: scale(0.9); opacity: 0.7; }
    50% { transform: scale(1); opacity: 1; }
    100% { transform: scale(0.9); opacity: 0.7; }
}

.pulse-container img{
    -webkit-animation: pulse 2s infinite ease-in-out;
    -o-animation: pulse 2s infinite ease-in-out;
    -ms-animation: pulse 2s infinite ease-in-out;
    -moz-animation: pulse 2s infinite ease-in-out;
    animation: pulse 2s infinite ease-in-out;
}

.chklist{
    color: #fff;
    font-size: 1.2rem;
}
.chklist li{
    margin-bottom:20px;
}

.b-block {
    border-radius: 10px;
    padding: 10px !important;
    height: 100%;
    color: #aaaaaa;
    cursor: pointer;
}

.b-block {
    background: #ffffff;
    box-shadow: -10px -10px 15px rgba(255,255,255,0.5),
    10px 10px 15px rgba(70,70,70,0.12);
}

.shrink-bg {
    animation: shrink 15s infinite alternate;
}


@keyframes shrink {
    0% {
        background-size: 130% 130%;
    }
    100% {
        background-size: 100% 100%;
    }
}

#tagline {
    font-size: 12px;
    color: #fff;
    display: inline-block;
    position: relative;
    overflow: hidden;
    height: 1rem;
    width: 100%
}
.tagline-text {
    display: inline-block;
    position: absolute;
    transition: transform 0.5s cubic-bezier(0.7, 0, 0.3, 1);
    white-space: nowrap;
    left: 12px;
    font-weight: 600;
}
.dc-contact-form p {
    margin: 0;
}
.dc-contact-form input {
    border: 0;
}

.wpcf7-submit{
    border-radius: 30px;
    padding: 10px 30px;
    color: #ffffff;
    background-color: #000000;
}
#cf7-submit.is-submitting{
    opacity: 0.6;
    pointer-events: none;
    cursor: not-allowed;
}
.slick-track {
    display: flex;
    align-items: center;
}

.slick-track .slick-slide {
    display: flex;
    height: auto;
    align-items: center;
    justify-content: center;
}

#ndisp{
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    text-align: center;
    font-size: 4rem;
    font-weight: bold;
    transform: translate(-50%, -50%);
}

.slick-slide
{
    margin: 20px;
}


#customer_logo_section img{
    max-width: 180px;
    height: auto;
}

.iubenda-cs-brand-badge, .go4269172405{
    display: none !important;
}


.landing-btn:hover{
    color: #fff;
}


.page #iubenda-cs-banner .iubenda-cs-close-btn,
.page #iubenda-cs-banner .iubenda-cs-close-btn:hover {
    color: #fff !important;
    opacity: 0.1 !important;
}


#iubenda-cs-banner, .iubenda-tp-btn-container{
    display:none !important;
    height: 0 !important;
    opacity: 0 !important;
}
#vantaggi-section .row.gy-4:hover .text-secondary{
    opacity: 1;
}
.ps-progetti {
    --bg-dark: #ffffff;
    --bg-card: #f5f6fa;
    --bg-card-hover: #ffffff;
    --accent: #2b3a67;
    --accent-glow: rgba(43, 58, 103, 0.07);
    --text-primary: #1a1a2e;
    --text-secondary: #5c5c72;
    --border: rgba(0,0,0,0.07);
    --radius: 16px;
    background: var(--bg-dark);
    font-family: 'DM Sans', sans-serif;
    color: var(--text-primary);
    -webkit-font-smoothing: antialiased;
}
.ps-progetti .ps-container { max-width: 1100px; margin: 0 auto; padding: 20px; }
.ps-progetti .section-header { text-align: center; margin-bottom: 64px; }
.ps-progetti .section-tag { display: inline-block; font-family: 'Sora', sans-serif; font-size: 12px; font-weight: 600; letter-spacing: 2.5px; text-transform: uppercase; color: var(--accent); background: var(--accent-glow); padding: 6px 16px; border-radius: 100px; margin-bottom: 20px; }
.ps-progetti .section-title { font-family: 'Sora', sans-serif; font-size: clamp(28px, 4vw, 42px); font-weight: 700; line-height: 1.2; margin-bottom: 16px; }
.ps-progetti .section-title span { background: linear-gradient(135deg, #2b3a67, #4a6fa5); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.ps-progetti .section-subtitle { font-size: 17px; color: var(--text-secondary); max-width: 600px; margin: 0 auto; line-height: 1.6; }
.ps-progetti .ps-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.ps-progetti .ps-card { background: var(--bg-card); border: 1px solid var(--border); border-radius: var(--radius); padding: 36px 32px; position: relative; overflow: hidden; transition: all 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94); cursor: default; }
.ps-progetti .ps-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, #2b3a67, #4a6fa5); opacity: 0; transition: opacity 0.35s ease; }
.ps-progetti .ps-card:hover { background: var(--bg-card-hover); border-color: rgba(26, 26, 46, 0.12); transform: translateY(-4px); box-shadow: 0 12px 40px rgba(0,0,0,0.08), 0 0 0 1px rgba(26,26,46,0.08); }
.ps-progetti .ps-card:hover::before { opacity: 1; }
.ps-progetti .card-icon { width: 52px; height: 52px; border-radius: 12px; background: var(--accent-glow); display: flex; align-items: center; justify-content: center; margin-bottom: 24px; font-size: 24px; transition: transform 0.3s ease; }
.ps-progetti .ps-card:hover .card-icon { transform: scale(1.08); }
.ps-progetti .card-title { font-family: 'Sora', sans-serif; font-size: 19px; font-weight: 600; margin-bottom: 12px; color: var(--text-primary); }
.ps-progetti .card-desc { font-size: 15px; line-height: 1.65; color: var(--text-secondary); margin-bottom: 20px; }
.ps-progetti .card-tags { display: flex; flex-wrap: wrap; gap: 8px; }
.ps-progetti .tag { font-size: 12px; font-weight: 500; padding: 4px 12px; border-radius: 100px; background: rgba(0,0,0,0.03); border: 1px solid rgba(0,0,0,0.07); color: var(--text-secondary); transition: all 0.2s ease; }
.ps-progetti .ps-card:hover .tag { border-color: rgba(26,26,46,0.15); color: var(--text-primary); }
@media (max-width: 768px) { .ps-progetti .ps-grid { grid-template-columns: 1fr; } }

/* Hero phone */
.ps-hero-phone { color: #ffffff; font-family: 'DM Sans', sans-serif; font-size: 16px; margin-top: 16px; }
.ps-hero-phone i { margin-right: 6px; }

.single-post #dc-post-main-container table{
    margin: 25px 0;
}

.single-post #dc-post-main-container table td{
    margin: 25px 0;
    border: 1px solid #aaaaaa;
}

/* ---------------------------------------------------------------------------
   Header scuro — blocco Oxygen 9096, usato dalle pagine con hero nera
   (/soluzioni/software-rescue/ e sorelle).

   Il blocco porta la classe `bg-black`, che non e' una classe di Oxygen: il
   fondo nero arrivava per caso da bootstrap.min.css caricato da questo plugin.
   I link invece erano rimasti al colore di default di Breakdance (#111827),
   cioe' scuri su scuro. Qui si riallinea al mockup "Software Rescue":
   barra dello stesso nero della hero (nessuno stacco, sembra trasparente),
   filetto bianco al 13%, link bianchi, CTA a pillola bianca.

   I colori dei link stanno sotto min-width:1120px in su: sotto quella soglia
   il menu diventa il pannello a tendina di Breakdance, che ha fondo chiaro e
   quindi vuole i link scuri come sono gia'.
   --------------------------------------------------------------------------- */
.container-1.bg-black {
    background-color: #0B0B13 !important; /* stesso nero della hero */
    border-bottom: 1px solid rgba(255, 255, 255, .13);
    padding-top: 20px;
    padding-bottom: 20px;
}

/* Hamburger: sta sulla barra nera anche sotto i 1120px */
.container-1.bg-black .breakdance-menu-toggle-lines,
.container-1.bg-black .breakdance-menu-toggle-lines::before,
.container-1.bg-black .breakdance-menu-toggle-lines::after {
    background-color: #fff;
}

/* CTA: pillola bianca su testo scuro, come nel mockup */
.container-1.bg-black .bde-button__button {
    background-color: #fff;
    border-color: transparent;
    border-radius: 999px;
    color: #0C0C12;
    font-weight: 600;
}

@media (min-width: 1120px) {
    /* solo le voci di primo livello: le voci dentro il menu a tendina usano
       .breakdance-dropdown-link e restano scure sul loro pannello chiaro */
    .breakdance .container-1.bg-black .breakdance-menu-link,
    .breakdance .container-1.bg-black .breakdance-menu-link:hover,
    .breakdance .container-1.bg-black .breakdance-menu-link-arrow {
        color: #fff;
    }

    /* la freccetta del dropdown non e' testo: e' una maschera SVG colorata
       con background-color, che restava sul #111827 di default */
    .breakdance .container-1.bg-black .breakdance-menu-link-arrow::after {
        background-color: #fff;
    }

    /* La voce attiva resta con il viola del resto del sito: e' leggibile sul
       nero e non e' il bug segnalato. Il mockup la vorrebbe bianca in grassetto:
       se si preferisce quella, basta scommentare qui sotto.
    .breakdance .container-1.bg-black .breakdance-menu-item--active .breakdance-menu-link,
    .breakdance .container-1.bg-black .breakdance-menu-item--active:hover .breakdance-menu-link {
        -webkit-text-fill-color: #fff;
        color: #fff;
        font-weight: 700;
    }
    */
}
