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

.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: .5em;
    width: 100%;
    
    font-size: 1em;
}


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


body.with-cmsconsentbanner-open .cmsconsentbanner-main{
    z-index: 9;
    
        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;
    width: 100%;
}


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


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

.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{
        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"] {
    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-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;
}

/* ps */

/* ps uniform prevent to hide the checked flag on the disabled always checked necessary cookie option */
.cb-consent-flags > label > .checker.disabled > span.checked{
    background-position: -15px -257px;
    background-position-x: -15px;
    background-position-y: -257px;
}

.consentbanner-settings .cb-consent-flags label{
    color: #FFFFFF;
}

/* hide scrolltop if banner is open, avoid overlap */
body.with-cmsconsentbanner-open #topcontrol{
    display: none;
}


/* cookie page */
#cookie-accordions-groups-list #headingOne,
#cookie-accordions-groups-list #headingTwo,
#cookie-accordions-groups-list #headingThree
{
    padding: 0;
}
#cookie-accordions-groups-list #headingOne button,
#cookie-accordions-groups-list #headingTwo button,
#cookie-accordions-groups-list #headingThree button
{
    text-align: left;
}
