.elementor-2156 .elementor-element.elementor-element-060e6ec{--display:flex;--min-height:120px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--margin-top:90px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2156 .elementor-element.elementor-element-060e6ec:not(.elementor-motion-effects-element-type-background), .elementor-2156 .elementor-element.elementor-element-060e6ec > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-heaven2 );}.elementor-2156 .elementor-element.elementor-element-d79e2f5 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:40px;font-weight:500;text-transform:uppercase;line-height:50px;}.elementor-2156 .elementor-element.elementor-element-747940a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-2156 .elementor-element.elementor-element-7e8553b .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:30px;font-weight:400;text-transform:uppercase;line-height:40px;}.elementor-2156 .elementor-element.elementor-element-b2ab914{text-align:start;font-family:"Nunito", Sans-serif;font-size:16px;font-weight:400;text-transform:none;font-style:italic;line-height:20px;}.elementor-2156 .elementor-element.elementor-element-4fe536c{margin:30px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2156 .elementor-element.elementor-element-4fe536c .elementor-heading-title{font-family:var( --e-global-typography-1fcc762-font-family ), Sans-serif;font-size:var( --e-global-typography-1fcc762-font-size );font-weight:var( --e-global-typography-1fcc762-font-weight );text-transform:var( --e-global-typography-1fcc762-text-transform );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-3d99e76{text-align:start;font-family:"Nunito", Sans-serif;font-size:16px;font-weight:400;text-transform:none;line-height:20px;}.elementor-2156 .elementor-element.elementor-element-8324297{margin:30px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2156 .elementor-element.elementor-element-8324297 .elementor-heading-title{font-family:var( --e-global-typography-1fcc762-font-family ), Sans-serif;font-size:var( --e-global-typography-1fcc762-font-size );font-weight:var( --e-global-typography-1fcc762-font-weight );text-transform:var( --e-global-typography-1fcc762-text-transform );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-797d521{text-align:start;font-family:"Nunito", Sans-serif;font-size:16px;font-weight:400;text-transform:none;line-height:25px;}.elementor-2156 .elementor-element.elementor-element-3397d8f{margin:30px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2156 .elementor-element.elementor-element-3397d8f .elementor-heading-title{font-family:var( --e-global-typography-1fcc762-font-family ), Sans-serif;font-size:var( --e-global-typography-1fcc762-font-size );font-weight:var( --e-global-typography-1fcc762-font-weight );text-transform:var( --e-global-typography-1fcc762-text-transform );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-a3b2ec4{text-align:start;font-family:"Nunito", Sans-serif;font-size:16px;font-weight:400;text-transform:none;line-height:20px;}.elementor-2156 .elementor-element.elementor-element-ecb3cca{width:var( --container-widget-width, 70% );max-width:70%;--container-widget-width:70%;--container-widget-flex-grow:0;}.elementor-2156 .elementor-element.elementor-element-ecb3cca.elementor-element{--align-self:flex-start;}.elementor-2156 .elementor-element.elementor-element-23df78f{margin:30px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2156 .elementor-element.elementor-element-23df78f .elementor-heading-title{font-family:var( --e-global-typography-1fcc762-font-family ), Sans-serif;font-size:var( --e-global-typography-1fcc762-font-size );font-weight:var( --e-global-typography-1fcc762-font-weight );text-transform:var( --e-global-typography-1fcc762-text-transform );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-e2288a5{margin:30px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2156 .elementor-element.elementor-element-e2288a5 .elementor-heading-title{font-family:var( --e-global-typography-1fcc762-font-family ), Sans-serif;font-size:var( --e-global-typography-1fcc762-font-size );font-weight:var( --e-global-typography-1fcc762-font-weight );text-transform:var( --e-global-typography-1fcc762-text-transform );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-44effd3{text-align:start;font-family:"Nunito", Sans-serif;font-size:16px;font-weight:400;text-transform:none;line-height:20px;}.elementor-2156 .elementor-element.elementor-element-af2e558.elementor-element{--align-self:flex-start;}.elementor-2156 .elementor-element.elementor-element-12cd197{text-align:start;font-family:"Nunito", Sans-serif;font-size:16px;font-weight:400;text-transform:none;line-height:20px;}.elementor-2156 .elementor-element.elementor-element-d972c20{margin:30px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2156 .elementor-element.elementor-element-d972c20 .elementor-heading-title{font-family:var( --e-global-typography-1fcc762-font-family ), Sans-serif;font-size:var( --e-global-typography-1fcc762-font-size );font-weight:var( --e-global-typography-1fcc762-font-weight );text-transform:var( --e-global-typography-1fcc762-text-transform );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-604fa26{text-align:start;font-family:"Nunito", Sans-serif;font-size:16px;font-weight:400;text-transform:none;line-height:20px;}.elementor-2156 .elementor-element.elementor-element-bbae52a{margin:30px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2156 .elementor-element.elementor-element-bbae52a .elementor-heading-title{font-family:var( --e-global-typography-1fcc762-font-family ), Sans-serif;font-size:var( --e-global-typography-1fcc762-font-size );font-weight:var( --e-global-typography-1fcc762-font-weight );text-transform:var( --e-global-typography-1fcc762-text-transform );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-0e66b88{text-align:start;font-family:"Nunito", Sans-serif;font-size:16px;font-weight:400;text-transform:none;line-height:20px;}.elementor-2156 .elementor-element.elementor-element-ff33318{margin:50px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:start;}.elementor-2156 .elementor-element.elementor-element-ff33318 .elementor-heading-title{font-family:"Nunito", Sans-serif;font-size:16px;font-weight:400;text-transform:none;font-style:italic;line-height:20px;}@media(max-width:1024px){.elementor-2156 .elementor-element.elementor-element-4fe536c .elementor-heading-title{font-size:var( --e-global-typography-1fcc762-font-size );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-8324297 .elementor-heading-title{font-size:var( --e-global-typography-1fcc762-font-size );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-3397d8f .elementor-heading-title{font-size:var( --e-global-typography-1fcc762-font-size );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-23df78f .elementor-heading-title{font-size:var( --e-global-typography-1fcc762-font-size );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-e2288a5 .elementor-heading-title{font-size:var( --e-global-typography-1fcc762-font-size );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-d972c20 .elementor-heading-title{font-size:var( --e-global-typography-1fcc762-font-size );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-bbae52a .elementor-heading-title{font-size:var( --e-global-typography-1fcc762-font-size );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}}@media(max-width:767px){.elementor-2156 .elementor-element.elementor-element-4fe536c .elementor-heading-title{font-size:var( --e-global-typography-1fcc762-font-size );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-8324297 .elementor-heading-title{font-size:var( --e-global-typography-1fcc762-font-size );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-3397d8f .elementor-heading-title{font-size:var( --e-global-typography-1fcc762-font-size );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-23df78f .elementor-heading-title{font-size:var( --e-global-typography-1fcc762-font-size );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-e2288a5 .elementor-heading-title{font-size:var( --e-global-typography-1fcc762-font-size );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-d972c20 .elementor-heading-title{font-size:var( --e-global-typography-1fcc762-font-size );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}.elementor-2156 .elementor-element.elementor-element-bbae52a .elementor-heading-title{font-size:var( --e-global-typography-1fcc762-font-size );letter-spacing:var( --e-global-typography-1fcc762-letter-spacing );}}/* Start custom CSS for shortcode, class: .elementor-element-ecb3cca *//* ===================================================
   1. CONTENITORE Dettagli (100% LARGHEZZA)
   =================================================== */

#cmplz-cookies-overview details.cmplz-dropdown {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 15px !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 4px !important;
    margin-bottom: 1px !important;
    background-color: #ffffff !important;
}

/* ===================================================
   2. INTESTAZIONE IN LINEA CON FRECCINA
   =================================================== */

/* Allinea freccina nativa, titolo e categoria sulla stessa riga */
#cmplz-cookies-overview summary.cmplz-service-header {
    display: flex !important;
    align-items: center !important;
    cursor: pointer !important;
    outline: none !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid #f0f0f0 !important;
    margin-bottom: 0px !important;
}

#cmplz-cookies-overview summary.cmplz-service-header > div {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    margin-left: 8px !important; /* Spazio tra freccina e testo */
}

#cmplz-cookies-overview summary.cmplz-service-header h3 {
    margin: 0 !important;
    font-size: 16px !important;
    font-weight: bold !important;
    text-transform: uppercase !important;
}

#cmplz-cookies-overview summary.cmplz-service-header p {
    margin: 0 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #666666 !important;
}

/* ===================================================
   3. STRUTTURA A 2 COLONNE PER UTILIZZO / CONDIVISIONE
   =================================================== */

/* Sfrutta Flexbox/Grid per affiancare i due blocchi al 100% di larghezza */
#cmplz-cookies-overview .cmplz-service-description,
#cmplz-cookies-overview .cmplz-sharing-data {
    display: inline-block !important;
    vertical-align: top !important;
    width: 48% !important;
    box-sizing: border-box !important;
    margin-bottom: 15px !important;
}

#cmplz-cookies-overview .cmplz-service-description {
    margin-right: 3% !important;
}

#cmplz-cookies-overview .cmplz-service-description h4,
#cmplz-cookies-overview .cmplz-sharing-data h4 {
    margin: 0 0 5px 0 !important;
    font-size: 14px !important;
    font-weight: bold !important;
    color: #333333 !important;
}

#cmplz-cookies-overview .cmplz-service-description p,
#cmplz-cookies-overview .cmplz-sharing-data p {
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: #555555 !important;
}

/* ===================================================
   4. TABELLA COOKIE A LARGHEZZA INTERA (100%)
   =================================================== */

#cmplz-cookies-overview .cookies-per-purpose {
    clear: both !important;
    display: grid !important;
    grid-template-columns: 30% 20% 50% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    gap: 0 !important;
    border: 1px solid #e0e0e0 !important;
    margin-top: 15px !important;
    background-color: #ffffff !important;
}

#cmplz-cookies-overview .cookies-per-purpose .purpose {
    grid-column: 1 / -1 !important;
    background-color: #f7f7f7 !important;
    padding: 8px 12px !important;
    border-bottom: 1px solid #e0e0e0 !important;
}

#cmplz-cookies-overview .cookies-per-purpose .purpose h4 {
    margin: 0 !important;
    font-size: 14px !important;
    font-weight: bold !important;
}

/* Nascondi header ripetuti */
#cmplz-cookies-overview .cookies-per-purpose .name-header,
#cmplz-cookies-overview .cookies-per-purpose .retention-header,
#cmplz-cookies-overview .cookies-per-purpose .function-header {
    display: none !important;
}

#cmplz-cookies-overview .cookies-per-purpose .name,
#cmplz-cookies-overview .cookies-per-purpose .retention,
#cmplz-cookies-overview .cookies-per-purpose .function {
    padding: 8px 12px !important;
    border-bottom: 1px solid #eeeeee !important;
    font-size: 13px !important;
    display: flex !important;
    align-items: center !important;
    word-break: break-word !important;
}

#cmplz-cookies-overview .cookies-per-purpose .name a {
    font-weight: 600 !important;
    color: #0274be !important;
    text-decoration: none !important;
}

/* ===================================================
   5. RESPONSIVE MOBILE
   =================================================== */
@media screen and (max-width: 768px) {
    #cmplz-cookies-overview .cmplz-service-description,
    #cmplz-cookies-overview .cmplz-sharing-data {
        width: 100% !important;
        margin-right: 0 !important;
    }
    
    #cmplz-cookies-overview .cookies-per-purpose {
        grid-template-columns: 1fr !important;
    }
    
    #cmplz-cookies-overview .cookies-per-purpose .name-header,
    #cmplz-cookies-overview .cookies-per-purpose .retention-header,
    #cmplz-cookies-overview .cookies-per-purpose .function-header {
        display: block !important;
        font-weight: bold !important;
        background-color: #f0f0f0 !important;
        padding: 4px 10px !important;
        font-size: 11px !important;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-af2e558 *//* Contenitore principale delle categorie */
/* Contenitore principale delle categorie - Allineato a sinistra */

.cmplz-categories {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
    max-width: 600px; /* Regola questo valore in base alla larghezza desiderata (es. 100% per tutta la larghezza) */
    margin: 0;        /* Rimuove margin: 0 auto che centrava il blocco */
    font-family: inherit;
}

/* Singola scheda categoria */
.cmplz-category {
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background-color: #ffffff;
    overflow: hidden;
    transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.cmplz-category:hover {
    border-color: #cbd5e1;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

/* Header della categoria (Titolo, Checkbox, Toggle) */
.cmplz-category-header {
    display: flex;
    align-items: left;
    justify-content: space-between;
    padding: 14px 18px;
    background-color: #f8fafc;
    gap: 12px;
}

/* Titolo della categoria */
.cmplz-category-title {
    font-size: 1rem;
    font-weight: 600;
    color: #1e293b;
    flex-grow: 1;
}

/* Contenitore Checkbox / Dicitura Sempre attivo */
.cmplz-banner-checkbox,
.cmplz-always-active {
    display: inline-flex;
    align-items: left;
    gap: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    color: #64748b;
}

/* Customizzazione Checkbox (Toggle switch style moderno) */
.cmplz-banner-checkbox input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 38px;
    height: 20px;
    background-color: #cbd5e1;
    border-radius: 20px;
    position: relative;
    outline: none;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.cmplz-banner-checkbox input[type="checkbox"]::before {
    content: "";
    position: absolute;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    top: 2px;
    left: 2px;
    background-color: #ffffff;
    transition: transform 0.2s ease;
}

.cmplz-banner-checkbox input[type="checkbox"]:checked {
    background-color: #2563eb; /* Colore attivo (sostituibile con il tuo primary color) */
}

.cmplz-banner-checkbox input[type="checkbox"]:checked::before {
    transform: translateX(18px);
}

.cmplz-banner-checkbox input[type="checkbox"]:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Pulsante Toggle / Freccia */
.cmplz-category-toggle {
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 4px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #64748b;
    transition: transform 0.3s ease, color 0.2s ease;
}

.cmplz-category-toggle:hover {
    color: #0f172a;
}

/* Rotazione della freccia SVG quando espanso */
.cmplz-category-toggle[aria-expanded="true"] .cmplz-icon {
    transform: rotate(180deg);
}

.cmplz-category-toggle .cmplz-icon {
    display: inline-flex;
    transition: transform 0.3s ease;
}

.cmplz-category-toggle svg {
    fill: currentColor;
    width: 14px;
    height: 14px;
}

/* Blocco descrizione */
.cmplz-description {
    padding: 14px 18px;
    font-size: 0.875rem;
    line-height: 1.5;
    color: #475569;
    border-top: 1px solid #f1f5f9;
    background-color: #ffffff;
}

/* Nasconde elementi con attributo hidden */
.cmplz-description[hidden] {
    display: none !important;
}/* End custom CSS */