
.cmsconsentbanner-main
{
  position: fixed;
  bottom: 0; 
  right: 0;
  width: 100%;
    max-width: 526px;
    
  height: 0;
  
  z-index: 0;
  
  font-size: 12px;
  
}

/*
.cmsconsentbanner-main::before{
    content: '';
    position: absolute;
    bottom: 0; 
    left: 0;
    width: 100%;
    height: 100%;
    
    background: rgba(0,0,0,.7);
    opacity: 0;
    
    transition: all 800ms ease;
    -moz-transition: all 800ms ease;
    -webkit-transition: all 800ms ease;
    -o-transition: all 800ms ease;
}
*/

.cmsconsentbanner-main .consentbanner-inner{
    position: absolute;
    bottom: 0; left: 0;
    background: white;
    width: 100%;
    /*height: 100%;*/
    padding: 0;

    transition: all 800ms ease;
    -moz-transition: all 800ms ease;
    -webkit-transition: all 800ms ease;
    -o-transition: all 800ms ease;
}


.cmsconsentbanner-main .consentbanner-closer{
    text-align: right;
}
.cmsconsentbanner-main .consentbanner-closer > a{
    text-decoration: none;
    color: #FFFFFF;
    padding: .5em;
    font-weight: bold;
    font-size: 2em;
}

/* per entrambi i pannelli */


/* bottoni nel loro contenitore. Bottoni visualizzati in verticale nell'area a destra */
.cmsconsentbanner-main .cb-buttons-container{
    display: flex;
    justify-content: flex-end;
}
.cmsconsentbanner-main .cb-buttons-container .cb-buttons{
    display: flex;
    flex-direction: row;
    width: 100%;
}

.cmsconsentbanner-main .cb-buttons-container .cb-buttons > button{
    display: block;
    /*margin-bottom: 1em;*/
    margin: .5em;
    width: 100%;
    color: #222 !important;
}


/* pannello settings nascosto di default */
.cmsconsentbanner-main .consentbanner-inner .consentbanner-settings{
    display: none;
}


body.with-cmsconsentbanner-open .cmsconsentbanner-main{
    z-index: 1;
    
        min-height: 244px;
    right: 1em;
    bottom: 1em;
}

@media all and (max-width: 768px) {
    body.with-cmsconsentbanner-open .cmsconsentbanner-main{
        right: 0; bottom: 0;
        max-width: 100%;
        z-index: 9999;
    }
    
    .cmsconsentbanner-main .cb-buttons-container .cb-buttons{
        flex-direction: column;
    }
}


/* pannello primario del banner visibile con testo e bottoni */
body.with-cmsconsentbanner-open .cmsconsentbanner-main .consentbanner-primary{
    display: flex;
    width: 100%;
    /*padding: 2em;*/
        padding: .5em 1.5em;
    justify-content: space-between;
}

.cmsconsentbanner-main .consentbanner-primary .cb-message{
    font-size: 12px;
}

.cmsconsentbanner-main .consentbanner-primary .cb-message > a{
    margin-left: 1em;
}


body.with-cmsconsentbanner-open .cmsconsentbanner-main .consentbanner-primary .cb-message{
    text-align: justify;
    /*width: 85%;*/
    width: 100%;
    /*margin-bottom: 2em;*/
    margin-bottom: 1em;
}


/* pannello impostazioni */

.cmsconsentbanner-main .consentbanner-settings{
    display: flex; 
    flex-direction: column;
    /*padding: 1.5em;*/
    padding: .5em 1.5em;
}

.cmsconsentbanner-main .consentbanner-settings .cb-consent-infos-box{
    display: flex;
    /*overflow-y: scroll;*/
    width: 100%;
}

/*
.cmsconsentbanner-main .consentbanner-settings .cb-consent-infos-box > ul{
    list-style: none;
    padding: 0;
}
.cmsconsentbanner-main .consentbanner-settings .cb-consent-infos-box > ul > li > a{
    padding: .5em 1em;
    display: block;
    text-decoration: none;
}
.cmsconsentbanner-main .consentbanner-settings .cb-consent-infos-box > ul > li.active a{
    text-decoration: underline;
}
*/

.cmsconsentbanner-main .consentbanner-settings .cb-consent-infos-box > div{
    width: 100%;
}


.cmsconsentbanner-main .cb-consent-single-desc{
    padding: .5em 1em;
    /*display: none;*/
    
}

.cmsconsentbanner-main .cb-consent-single-desc .cb-consent-desc{
    display: none;
}

.cmsconsentbanner-main .cb-consent-single-desc.expanded .cb-consent-desc{
    display: block;
    text-align: justify;
}

@media all and (max-width: 768px) {
    .cmsconsentbanner-main .cb-consent-single-desc{
/*        height: 40vh;
        overflow-y: scroll;*/
        margin-bottom: 1em;
    }
    
    .cmsconsentbanner-main .cb-buttons-container .cb-buttons{
        width: 100%;
    }
}


.cmsconsentbanner-main .cb-consent-single-desc:first-child{
    display: block;
}

.cmsconsentbanner-main .cb-consent-single-desc .cb-consent-title{
    font-weight: bold;
    margin-bottom: .5em;
}

.cmsconsentbanner-main .cb-consent-single-desc .cb-consent-title a{
    display: inline-block;
    width: 85%;
    
    color: #FFFFFF;
}

.cmsconsentbanner-main .cb-consent-single-desc .cb-consent-title > input[type="checkbox"] {
    /*margin-right: 1em;*/
    cursor: pointer;
}

.cmsconsentbanner-main .cb-consent-single-desc .cb-consent-title label.cb-lbl-with-checkbox {
    padding: .5em;
    padding-right: 1.5em;
    margin: 0;
}


/*
.cmsconsentbanner-main .cb-consent-flags{
    display: block; width: 100%;
    text-align: center;
}
.cmsconsentbanner-main .cb-consent-flags label{
    margin-right: 1em;
}
.cmsconsentbanner-main .cb-consent-flags label > input{
    margin-right: .2em;
}
*/

.cmsconsentbanner-main .cb-consent-details .details-contents,
.cmsconsentbanner-main .cb-consent-details.empty{
    display: none;
}

.cmsconsentbanner-main .cb-consent-details.expanded .details-contents{
    display: block;
    padding-top: 1em;
    width: 100%;
    height: auto;
}


.cmsconsentbanner-main .cb-bottom-links-container{
    text-align: center;
    padding: 1em;
}
.cmsconsentbanner-main .cb-bottom-links-container a{
    margin-right: 1em;
    color: #FFFFFF;
}
.cmsconsentbanner-main .cb-bottom-links-container a:last-child{
    margin-right: 0;
}





/* banner presente e "chiuso". Visualizza etichetta per poter revocare le scelte */

body.with-cmsconsentbanner-closed .cmsconsentbanner-main:not(.revokable){
    display: none;
}

body.with-cmsconsentbanner-closed .consentbanner-primary,
body.with-cmsconsentbanner-closed .consentbanner-settings,
body.with-cmsconsentbanner-closed .cb-bottom-links-container
{
    display: none;
}

body.with-cmsconsentbanner-closed .cmsconsentbanner-main.revokable{
    z-index: 1;
    width: auto;
    height: auto;
}

.cmsconsentbanner-main .revokable-lbl a{
    text-decoration: none;
    font-size: .8em;
    padding: .5em;
    
    font-size: 12px;
}

body.with-cmsconsentbanner-closed .cmsconsentbanner-main.revokable .consentbanner-inner{
    position: relative;
    padding: 0;
}















/* ############ THEME ################ */
.cmsconsentbanner-main .consentbanner-inner{
    background-color: #000000;
    color: #FFFFFF;
}
.cmsconsentbanner-main .cb-consent-infos-box ul li a{
  color: white;
}

.cmsconsentbanner-main .cb-message a{
    color: #FFFFFF;
    opacity: .8;
}

.cmsconsentbanner-main .revokable-lbl{
    background-color: #FFFFFF;
}
.cmsconsentbanner-main .revokable-lbl a{
    color: #000000;
}

.cmsconsentbanner-main .btn-primary{
    background-color: rgb(241, 214, 0);
}

.cmsconsentbanner-main .btn-primary{
    background-color: rgb(241, 214, 0);
    border-color: #222;
    color: #222;
}
.cmsconsentbanner-main .btn-primary:hover, .cmsconsentbanner-main .btn-primary:active, .cmsconsentbanner-main .btn-primary:focus,
.cmsconsentbanner-main .btn-primary:focus:active
{
    background-color: rgb(241, 214, 0);
    border-color: #222;
    color: #222;
}

.cmsconsentbanner-main .cb-button-expand-details{
    color: #FFFFFF;
    opacity: .8;
}

.cmsconsentbanner-main .details-contents table{
    background-color: #FFFFFF;
}

.cmsconsentbanner-main .cb-buttons-container .cb-buttons .btn.btn-secondary{
    color: #FFFFFF !important;
}