.consent-overlay {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.2);
  z-index: 999999;
  color: #000;
  font-family: "DINNextPro"; }
  .consent-overlay a {
    color: #9A9A9A; }
    .consent-overlay a:hover {
      color: #000000; }
  .consent-overlay .btn {
    margin-top: 1rem;
    margin-bottom: 1rem;
    padding: 10px 13px 8px;
    font-size: 1.8rem;
    color: #000;
    border-color: #000; }
    .consent-overlay .btn + .btn {
      margin-left: 2rem; }
  .consent-overlay .btn--primary {
    border: 0.1rem solid #000;
    color: #fff;
    background: #000; }
    .consent-overlay .btn--primary:hover {
      color: #fff;
      background: #000; }
  .consent-overlay .btn--secondary {
    border: 0.1rem solid #000; }
    .consent-overlay .btn--secondary:hover {
      background: #fff;
      color: #000; }
  .consent-overlay .inner--default {
    padding: 0 2rem;
    margin: 0 auto;
    max-width: 1175px;
    box-sizing: border-box; }
  .consent-overlay .inner--custom {
    margin: 0 auto;
    padding: 0 3rem;
    max-width: 110rem;
    box-sizing: border-box; }

.consent-content {
  padding: 3rem 0;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: #fff;
  display: none;
  box-shadow: 10px -2px 30px rgba(0, 0, 0, 0.2);
  max-height: 100%;
  overflow: auto; }
  .consent-content.is-visible {
    display: block; }
  .consent-content .consent-content__title {
    margin: 0 0 3rem;
    font-weight: 700; }
  .consent-content .consent-content__text {
    margin-bottom: 2rem; }
    .consent-content .consent-content__text p:first-child {
      margin-top: 0; }
    .consent-content .consent-content__text p:last-child {
      margin-bottom: 0; }
  .consent-content .btn-wrap {
    padding: 3rem 0 0;
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap; }

.consent-settings {
  padding: 3rem 0;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: #fff;
  z-index: 2;
  display: none;
  box-shadow: 10px -2px 30px rgba(0, 0, 0, 0.2);
  max-height: 100%;
  overflow: auto; }
  .consent-settings.is-visible {
    display: block; }
  .consent-settings__title {
    margin: 0 0 3rem;
    font-weight: 700; }
  .consent-settings__text {
    margin-bottom: 2rem; }
    .consent-settings__text p:first-child {
      margin-top: 0; }
    .consent-settings__text p:last-child {
      margin-bottom: 0; }
  .consent-settings .btn-wrap {
    padding: 3rem 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end; }

.consent-settings-list {
  margin-top: 3rem; }

.consent-settings-list-item {
  padding: 2rem;
  background: #f6f6f6;
  border-radius: 0.3rem; }
  .consent-settings-list-item + .consent-settings-list-item {
    margin-top: 1rem; }
  .consent-settings-list-item__header {
    display: flex;
    align-items: center;
    user-select: none;
    cursor: pointer; }
    .consent-settings-list-item__header__arrow {
      padding-right: 2rem; }
      .consent-settings-list-item__header__arrow svg {
        display: block;
        transition: transform 0.15s ease; }
    .consent-settings-list-item__header__title {
      padding-right: 1rem;
      flex-grow: 1;
      font-size: 1.6rem;
      font-weight: 700; }
    .consent-settings-list-item__header__option__label {
      font-weight: 600; }
  .consent-settings-list-item__body {
    padding: 2rem 3.6rem 0;
    font-size: 1.4rem;
    display: none; }
  .consent-settings-list-item.is-open .consent-settings-list-item__header__arrow svg {
    transform: rotate(180deg); }
  .consent-settings-list-item.is-open .consent-settings-list-item__body {
    display: block; }

.consent-settings-switch {
  width: 6rem;
  height: 2.8rem;
  position: relative;
  display: block;
  user-select: none;
  cursor: pointer; }
  .consent-settings-switch__bg {
    border-radius: 2.8rem;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #888888;
    z-index: 1;
    transition: all 0.3s ease; }
    .consent-settings-switch__bg::before {
      content: '';
      height: 2rem;
      width: 2rem;
      display: block;
      border-radius: 50%;
      background: #fff;
      position: absolute;
      left: 0.4rem;
      top: 0.4rem;
      z-index: 3;
      transition: transform 0.3s ease; }
  .consent-settings-switch input[type="checkbox"] {
    margin: -1px;
    width: 1px;
    height: 1px;
    border: 0;
    padding: 0;
    position: absolute;
    clip: rect(0 0 0 0);
    overflow: hidden; }
    .consent-settings-switch input[type="checkbox"]:checked + .consent-settings-switch__bg {
      background: #333333; }
      .consent-settings-switch input[type="checkbox"]:checked + .consent-settings-switch__bg::before {
        transform: translateX(3.1rem); }