#cc-main .cm {
  background: var(--cc-bg);
  border-radius: var(--cc-modal-border-radius);
  box-shadow: 0 .625em 1.875em rgba(0,0,2,.3);
  display: flex;
  flex-direction: column;
  max-width: 24rem;
  opacity: 0;
  overflow: hidden;
  position: fixed;
  transform: translateY(1.6em);
  visibility: hidden;
  z-index: 1;
}

#cc-main .cm--top {
  top: var(--cc-modal-margin);
}

#cc-main .cm--middle {
  top: 50%;
  transform: translateY(calc(-50% + 1.6em));
}

#cc-main .cm--bottom {
  bottom: var(--cc-modal-margin);
}

#cc-main .cm--center {
  left: var(--cc-modal-margin);
  margin: 0 auto;
  right: var(--cc-modal-margin);
  width: unset;
}

#cc-main .cm--left {
  left: var(--cc-modal-margin);
  margin-right: var(--cc-modal-margin);
}

#cc-main .cm--right {
  margin-left: var(--cc-modal-margin);
  right: var(--cc-modal-margin);
}

#cc-main .cm__body {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
}

#cc-main .cm__btns, #cc-main .cm__links {
  padding: 1rem 1.3rem;
  width: unset;
}

#cc-main .cm__texts {
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: center;
  padding: 1rem 0 0;
}

#cc-main .cm__desc, #cc-main .cm__title {
  padding: 0 1.3rem;
}

#cc-main .cm__title {
  font-size: 1.05em;
}

#cc-main .cm__title + .cm__desc {
  margin-top: 1.1em;
}

#cc-main .cm__desc {
  color: var(--cc-secondary-color);
  font-size: .9em;
  line-height: 1.5;
  max-height: 40vh;
  overflow-x: visible;
  overflow-y: auto;
  padding-bottom: 1em;
}

#cc-main .cm__btns {
  border-top: 1px solid var(--cc-separator-border-color);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

#cc-main .cm__btn-group {
  display: grid;
  grid-auto-columns: minmax(0,1fr);
}

#cc-main .cm__btn + .cm__btn, #cc-main .cm__btn-group + .cm__btn-group {
  margin-top: .375rem;
}

#cc-main .cm--flip .cm__btn + .cm__btn, #cc-main .cm--flip .cm__btn-group + .cm__btn-group {
  margin-bottom: .375rem;
  margin-top: 0;
}

#cc-main .cm--inline .cm__btn + .cm__btn {
  margin-left: .375rem;
  margin-top: 0;
}

#cc-main .cm--inline.cm--flip .cm__btn + .cm__btn {
  margin-bottom: 0;
  margin-left: 0;
  margin-right: .375rem;
}

#cc-main .cm--inline.cm--flip .cm__btn-group + .cm__btn-group {
  margin-bottom: .375rem;
  margin-right: 0;
}

#cc-main .cm--wide .cm__btn + .cm__btn, #cc-main .cm--wide .cm__btn-group + .cm__btn-group {
  margin-left: .375rem;
  margin-top: 0;
}

#cc-main .cm--wide.cm--flip .cm__btn + .cm__btn, #cc-main .cm--wide.cm--flip .cm__btn-group + .cm__btn-group {
  margin-bottom: 0;
  margin-right: .375rem;
}

#cc-main .cm--bar:not(.cm--inline) .cm__btn-group--uneven, #cc-main .cm--wide .cm__btn-group--uneven {
  display: flex;
  flex: 1;
  justify-content: space-between;
}

#cc-main .cm--bar:not(.cm--inline).cm--flip .cm__btn-group--uneven, #cc-main .cm--wide.cm--flip .cm__btn-group--uneven {
  flex-direction: row-reverse;
}

#cc-main .cm__btn {
  background: var(--cc-btn-primary-bg);
  border: 1px solid var(--cc-btn-primary-border-color);
  border-radius: var(--cc-btn-border-radius);
  color: var(--cc-btn-primary-color);
  font-size: .82em;
  font-weight: 600;
  min-height: 42px;
  padding: .5em 1em;
  text-align: center;
}

#cc-main .cm__btn:hover {
  background: var(--cc-btn-primary-hover-bg);
  border-color: var(--cc-btn-primary-hover-border-color);
  color: var(--cc-btn-primary-hover-color);
}

#cc-main .cm__btn--secondary {
  background: var(--cc-btn-secondary-bg);
  border-color: var(--cc-btn-secondary-border-color);
  color: var(--cc-btn-secondary-color);
}

#cc-main .cm__btn--secondary:hover {
  background: var(--cc-btn-secondary-hover-bg);
  border-color: var(--cc-btn-secondary-hover-border-color);
  color: var(--cc-btn-secondary-hover-color);
}

#cc-main .cm__btn--close {
  border-radius: 0;
  border-bottom-left-radius: var(--cc-btn-border-radius);
  border-right: none;
  border-top: none;
  display: none;
  font-size: 1em;
  height: 42px;
  min-width: auto!important;
  overflow: hidden;
  padding: 0!important;
  position: absolute;
  right: 0;
  top: 0;
  width: 42px;
}

#cc-main .cm__btn--close svg {
  stroke: var(--cc-btn-primary-color);
  transform: scale(.5);
  transition: stroke .15s ease;
}

#cc-main .cm__btn--close:hover svg {
  stroke: var(--cc-btn-primary-hover-color);
}

#cc-main .cm__btn--close.cm__btn--secondary svg {
  stroke: var(--cc-btn-secondary-color);
}

#cc-main .cm__btn--close.cm__btn--secondary:hover svg {
  stroke: var(--cc-btn-secondary-hover-color);
}

#cc-main .cm__btn--close + .cm__texts .cm__title {
  padding-right: 3rem;
}

#cc-main .cm--inline .cm__btn-group {
  grid-auto-flow: column;
}

#cc-main .cm__footer {
  background: var(--cc-footer-bg);
  border-top: 1px solid var(--cc-footer-border-color);
  color: var(--cc-footer-color);
  padding: .4em 0 .5em;
}

#cc-main .cm__links {
  display: flex;
  flex-direction: row;
  padding-bottom: 0;
  padding-top: 0;
}

#cc-main .cm__link-group {
  display: flex;
  flex-direction: row;
  font-size: .8em;
  width: 100%;
}

#cc-main .cm__link-group > * + * {
  margin-left: 1.3rem;
}

#cc-main .cm--flip .cm__btn:last-child {
  grid-row: 1;
}

#cc-main .cm--inline.cm--flip .cm__btn:last-child {
  grid-column: 1;
}

#cc-main .cm--box .cm__btn--close {
  display: block;
}

#cc-main .cm--box.cm--flip .cm__btns {
  flex-direction: column-reverse;
}

#cc-main .cm--box.cm--wide {
  max-width: 36em;
}

#cc-main .cm--box.cm--wide .cm__btns {
  flex-direction: row;
  justify-content: space-between;
}

#cc-main .cm--box.cm--wide .cm__btn-group {
  grid-auto-flow: column;
}

#cc-main .cm--box.cm--wide .cm__btn {
  min-width: 120px;
  padding-left: 1.8em;
  padding-right: 1.8em;
}

#cc-main .cm--box.cm--wide.cm--flip .cm__btns {
  flex-direction: row-reverse;
}

#cc-main .cm--box.cm--wide.cm--flip .cm__btn:last-child {
  grid-column: 1;
}

#cc-main .cm--cloud {
  max-width: 54em;
  width: unset;
}

#cc-main .cm--cloud .cm__body {
  flex-direction: row;
}

#cc-main .cm--cloud .cm__texts {
  flex: 1;
}

#cc-main .cm--cloud .cm__desc {
  max-height: 9.4em;
}

#cc-main .cm--cloud .cm__btns {
  border-left: 1px solid var(--cc-separator-border-color);
  border-top: none;
  max-width: 23em;
}

#cc-main .cm--cloud .cm__btn-group {
  flex-direction: column;
}

#cc-main .cm--cloud .cm__btn {
  min-width: 19em;
}

#cc-main .cm--cloud.cm--flip .cm__btn-group, #cc-main .cm--cloud.cm--flip .cm__btns {
  flex-direction: column-reverse;
}

#cc-main .cm--cloud.cm--inline .cm__btn-group {
  flex-direction: row;
}

#cc-main .cm--cloud.cm--inline .cm__btn {
  min-width: 10em;
}

#cc-main .cm--cloud.cm--inline.cm--flip .cm__btn-group {
  flex-direction: row-reverse;
}

#cc-main .cm--bar {
  border-radius: 0;
  left: 0;
  margin: 0;
  max-width: unset;
  opacity: 1;
  right: 0;
  transform: translateY(0);
  width: 100vw;
  --cc-modal-transition-duration: .35s;
}

#cc-main .cm--bar.cm--top {
  top: 0;
  transform: translateY(-100%);
}

#cc-main .cm--bar.cm--bottom {
  bottom: 0;
  transform: translateY(100%);
}

#cc-main .cm--bar .cm__body, #cc-main .cm--bar .cm__links {
  margin: 0 auto;
  max-width: 55em;
  width: 100%;
}

#cc-main .cm--bar .cm__body {
  padding: .5em 0 .9em;
}

#cc-main .cm--bar .cm__btns {
  border-top: none;
  flex-direction: row;
  justify-content: space-between;
}

#cc-main .cm--bar .cm__btn-group {
  grid-auto-flow: column;
}

#cc-main .cm--bar:not(.cm--inline) .cm__btn + .cm__btn, #cc-main .cm--bar:not(.cm--inline) .cm__btn-group + .cm__btn-group {
  margin-left: .375rem;
  margin-top: 0;
}

#cc-main .cm--bar .cm__btn {
  min-width: 120px;
  padding-left: 2em;
  padding-right: 2em;
}

#cc-main .cm--bar.cm--flip:not(.cm--inline) .cm__btn + .cm__btn, #cc-main .cm--bar.cm--flip:not(.cm--inline) .cm__btn-group + .cm__btn-group {
  margin-bottom: 0;
  margin-left: 0;
  margin-right: .375rem;
}

#cc-main .cm--bar.cm--flip .cm__btns {
  flex-direction: row-reverse;
}

#cc-main .cm--bar.cm--flip .cm__btn:last-child {
  grid-column: 1;
}

#cc-main .cm--bar.cm--inline .cm__body, #cc-main .cm--bar.cm--inline .cm__links {
  max-width: 74em;
}

#cc-main .cm--bar.cm--inline .cm__body {
  flex-direction: row;
  padding: 0;
}

#cc-main .cm--bar.cm--inline .cm__btns {
  flex-direction: column;
  justify-content: center;
  max-width: 23em;
}

#cc-main .cm--bar.cm--inline.cm--flip .cm__btns {
  flex-direction: column-reverse;
}

#cc-main .cc--anim .cm, #cc-main .cc--anim.cm-wrapper:before {
  transition: opacity var(--cc-modal-transition-duration) ease,visibility var(--cc-modal-transition-duration) ease,transform var(--cc-modal-transition-duration) ease;
}

#cc-main .cc--anim .cm__btn, #cc-main .cc--anim .cm__close {
  transition: background-color .15s ease,border-color .15s ease,color .15s ease;
}

.disable--interaction #cc-main .cm-wrapper:before {
  background: var(--cc-overlay-bg);
  bottom: 0;
  content: "";
  left: 0;
  opacity: 0;
  position: fixed;
  right: 0;
  top: 0;
  visibility: hidden;
  z-index: 0;
}

.show--consent #cc-main .cc--anim .cm {
  opacity: 1;
  transform: translateY(0);
  visibility: visible!important;
}

.show--consent #cc-main .cc--anim .cm--middle {
  transform: translateY(-50%);
}

.show--consent #cc-main .cc--anim .cm--bar {
  transform: translateY(0);
}

.show--consent #cc-main .cc--anim.cm-wrapper:before {
  opacity: 1;
  visibility: visible;
}

#cc-main.cc--rtl .cm__btn--close {
  border-bottom-left-radius: unset;
  border-bottom-right-radius: var(--cc-btn-border-radius);
  left: 0;
  right: unset;
}

#cc-main.cc--rtl .cm__btn--close + .cm__texts .cm__title {
  padding-left: 3rem!important;
  padding-right: 1.3rem;
}

#cc-main.cc--rtl .cm--inline .cm__btn + .cm__btn {
  margin-left: 0;
  margin-right: .375rem;
}

#cc-main.cc--rtl .cm--inline.cm--flip .cm__btn + .cm__btn {
  margin-left: .375rem;
  margin-right: 0;
}

#cc-main.cc--rtl .cm:not(.cm--inline).cm--bar .cm__btn + .cm__btn, #cc-main.cc--rtl .cm:not(.cm--inline).cm--bar .cm__btn-group + .cm__btn-group, #cc-main.cc--rtl .cm:not(.cm--inline).cm--wide .cm__btn + .cm__btn, #cc-main.cc--rtl .cm:not(.cm--inline).cm--wide .cm__btn-group + .cm__btn-group {
  margin-left: 0;
  margin-right: .375rem;
}

#cc-main.cc--rtl .cm:not(.cm--inline).cm--bar.cm--flip .cm__btn + .cm__btn, #cc-main.cc--rtl .cm:not(.cm--inline).cm--wide.cm--flip .cm__btn + .cm__btn {
  margin-left: .375rem;
  margin-right: 0;
}

#cc-main.cc--rtl .cm__link-group > * + * {
  margin-left: 0;
  margin-right: 1.3rem;
}

@media screen and (max-width:640px) {
  #cc-main {
    --cc-modal-margin: .5em;
  }
}

@media screen and (max-width:640px) {
  #cc-main .cm {
    max-width: none!important;
    width: auto!important;
  }
}

@media screen and (max-width:640px) {
  #cc-main .cm__body {
    flex-direction: column!important;
    padding: 0!important;
  }
}

@media screen and (max-width:640px) {
  #cc-main .cm__btns, #cc-main .cm__desc, #cc-main .cm__links, #cc-main .cm__title {
    padding-left: 1.1rem!important;
    padding-right: 1.1rem!important;
  }
}

@media screen and (max-width:640px) {
  #cc-main .cm__btns {
    border-left: none!important;
    border-top: 1px solid var(--cc-separator-border-color)!important;
    flex-direction: column!important;
    max-width: none!important;
    min-width: auto!important;
  }
}

@media screen and (max-width:640px) {
  #cc-main .cm__btn + .cm__btn, #cc-main .cm__btn-group + .cm__btn-group {
    margin: .375rem 0 0!important;
  }
}

@media screen and (max-width:640px) {
  #cc-main .cm--flip .cm__btn + .cm__btn, #cc-main .cm--flip .cm__btn-group + .cm__btn-group {
    margin-bottom: .375rem!important;
    margin-top: 0!important;
  }
}

@media screen and (max-width:640px) {
  #cc-main .cm__btn-group {
    display: flex!important;
    flex-direction: column!important;
    min-width: auto!important;
  }
}

@media screen and (max-width:640px) {
  #cc-main .cm__btn {
    flex: auto!important;
  }
}

@media screen and (max-width:640px) {
  #cc-main .cm__link-group {
    justify-content: center!important;
  }
}

@media screen and (max-width:640px) {
  #cc-main .cm--flip .cm__btn-group, #cc-main .cm--flip .cm__btns {
    flex-direction: column-reverse!important;
  }
}

