.cookiebar_wrapper{
position: fixed; left: 0; top: 0;
width: 100%; height: 100%;
background-color: rgba(0,0,0,.5);
z-index: 2000;
opacity: 0; visibility: hidden;
pointer-events:none;
-webkit-transition: all .25s ease;
-moz-transition: all .25s ease;
-ms-transition: all .25s ease;
-o-transition: all .25s ease;
transition: all .25s ease;
}
.cookiebar_wrapper *{
-webkit-user-select: none; 
-moz-user-select: none; 
-ms-user-select: none; 
user-select: none;    
}
.cookiebar_wrapper.active{
opacity: 1; visibility: visible;
pointer-events:all;
}
.cookiebar_wrapper .cookiebar_container{
position: absolute; left: 1.9375rem; right: 1.9375rem; top: 50%;
padding: .9375rem  0; background-color: #FFFFFF; width: auto;;
color: #0A0A0A; border-radius: .9375rem; max-width: 30rem;
text-align: center; margin: 0 auto;
-webkit-transform: translateY(-50%);
-moz-transform: translateY(-50%);
-ms-transform: translateY(-50%);
-o-transform: translateY(-50%);
transform: translateY(-50%); 
}
.cookiebar_wrapper .cookiebar{
height: 100%; max-height: 30rem;
overflow-x: hidden; overflow-y: auto;
}
.cookiebar_wrapper .cookiebar_inner{
height: 100%; padding: 0 1.875rem; position: relative;
}
.cookiebar_wrapper .cookiebar_inner .close{
position: absolute; top: 0; right: 1rem; cursor: pointer;
width: 1.5rem; height: 1.5rem; display: block; opacity: .5;
}
.cookiebar_wrapper .cookiebar_inner .close:before,
.cookiebar_wrapper .cookiebar_inner .close:after{
width: 1rem; height: 2px; background-color: currentColor;
content: ''; display: block; position: absolute; left: 50%; top: 50%;
-webkit-transform: translate(-50%,-50%) rotate(45deg);
-wms-transform: translate(-50%,-50%) rotate(45deg);
-ms-transform: translate(-50%,-50%) rotate(45deg);
-o-transform: translate(-50%,-50%) rotate(45deg);
transform: translate(-50%,-50%) rotate(45deg);
}
.cookiebar_wrapper .cookiebar_inner .close:after{
-webkit-transform: translate(-50%,-50%) rotate(-45deg);
-wms-transform: translate(-50%,-50%) rotate(-45deg);
-ms-transform: translate(-50%,-50%) rotate(-45deg);
-o-transform: translate(-50%,-50%) rotate(-45deg);
transform: translate(-50%,-50%) rotate(-45deg);
} .cookiebar_wrapper .cookiebar h2{
font-size: 1.5rem; margin: 0 0 1rem; font-weight: 300;
padding: 0 1rem;
}
.cookiebar_wrapper .cookiebar .cookiebar_description{
text-align: center; font-weight: 300; font-size: .875rem;
} .cookiebar_wrapper .button-group .button{ 
font-size: .875rem;
margin: .25rem;
text-transform: none;
}
.cookiebar_wrapper .button.show_options{ display: block; }
.cookiebar_wrapper .button.hide_options{ display: none; }
.cookiebar_wrapper .button.accept_all{ display: block; }
.cookiebar_wrapper .button.save{ display: none; }
.cookiebar_wrapper.options_visible .button.show_options{ display: none; }
.cookiebar_wrapper.options_visible .button.accept_none{ display: none; }
.cookiebar_wrapper.options_visible .button.hide_options{ display: block; }
.cookiebar_wrapper.options_visible .button.accept_all{ display: none; }
.cookiebar_wrapper.options_visible .button.save{ display: block; } .cookiebar_wrapper .cookiebar_options{
margin: 0 auto; max-height: 0; overflow: hidden;
padding: 0;
}
.cookiebar_wrapper.options_visible .cookiebar_options{
margin: 0 auto 1rem; max-height: none;
padding: 1rem 0 0;
}
.cookiebar_wrapper .cookiebar_option{
position: relative; text-align: left;
width: 100%; font-size: .875rem; margin-bottom: 1.5rem;
}
.cookiebar_wrapper .cookiebar_option:last-child{
margin-bottom: 0;
}
.cookiebar_wrapper .cookiebar_option_inner{
position: relative;
}
.cookiebar_wrapper .cookiebar_option_inner:after{
position: absolute; left: 0; right: 0; bottom: 0;
border-bottom: 1px dotted currentColor; opacity: 0;
content: ''; display: block;
-webkit-transition: .25s ease;
-moz-transition: .25s ease;
-ms-transition: .25s ease;
-o-transition: .25s ease;
transition: .25s ease;
}
.cookiebar_wrapper .cookiebar_option_inner:focus:after,
.cookiebar_wrapper .cookiebar_option_inner:hover:after{
opacity: .5;
}
.cookiebar_wrapper .cookiebar_option p{
margin-bottom: .5rem;
}
.cookiebar_wrapper .cookiebar_option input{
margin: 0; width: 1.25rem; height: 1.25rem; z-index: 10;
position: absolute; right: .125rem; top: .25rem;
visibility: visible; opacity: 0;
cursor: pointer; 
}
.cookiebar_wrapper .cookiebar_option label{
font-weight: 300; line-height: 1; font-size: .875rem;
position: relative; margin: 0; display: block;
padding: 0.5rem 2.9375rem .5rem 0; z-index: 0; 
}
.cookiebar_wrapper .cookiebar_option > label{
font-weight: 700; margin-bottom: .5rem;
border-bottom: 1px dotted currentColor;
}
.cookiebar_wrapper .cookiebar_option input + label:before,
.cookiebar_wrapper .cookiebar_option input + label:after{
position: absolute; right:.125rem; top: .25rem; z-index: 10;
width: 1.25rem; height: 1.25rem; content: ''; font-weight: 900;
font-family: 'FontAwesome', 'Font Awesome 5 Free'; vertical-align: middle;
pointer-events:none;  text-align: center;
line-height: 1.25rem; font-size: .875rem;
-webkit-transition: all .25s ease;
-moz-transition: all .25s ease;
-ms-transition: all .25s ease;
-o-transition: all .25s ease;
transition: all .25s ease;
}
.cookiebar_wrapper .cookiebar_option input + label:before{
border: 1px solid currentColor;
background-color: #FFFFFF;
border-radius: 2px;
}
.cookiebar_wrapper .cookiebar_option > input + label:before{
border: 2px solid currentColor;
}
.cookiebar_wrapper .cookiebar_option input + label:after{
opacity: 0; visibility: hidden; content: '\f00c';
}
.cookiebar_wrapper .cookiebar_option input:checked + label:before{
opacity: .5;
}
.cookiebar_wrapper .cookiebar_option input:checked + label:after{
opacity: 1; visibility: visible;
} .cookiebar_wrapper .cookiebar .menu{
text-align: center; justify-content:center;
margin: 0 auto; padding: .5rem 0 0;
font-size: .875rem;
}
.cookiebar_wrapper .cookiebar .menu li{
padding: .5rem; width: auto; flex: 0 1 auto; display: inline-block;
}
.cookiebar_wrapper .cookiebar .menu li a{
padding: 0;
}
@media screen and (min-width:40em){
.cookiebar_wrapper .cookiebar_container{
-webkit-transform: translateY(-50%) translateX(-50%);
-moz-transform: translateY(-50%) translateX(-50%);
-ms-transform: translateY(-50%) translateX(-50%);
-o-transform: translateY(-50%) translateX(-50%);
transform: translateY(-50%) translateX(-50%);
left: 50%; right: auto; min-width: 25rem;
}
}