/*=========================================================
-----       ** 05. demon cc cookieconsent **         -----
=========================================================*/

.cc-window {
  opacity: 1;
  -webkit-transition: opacity 1s ease;
  -moz-transition: opacity 1s ease;
  -ms-transition: opacity 1s ease;
  -o-transition: opacity 1s ease;
  transition: opacity 1s ease;
  &.cc-invisible {
    opacity: 0;
  }
}

/* only animate ifhas class 'cc-animate' */

.cc-animate.cc-revoke {
  -webkit-transition: transform 1s ease;
  -moz-transition: transform 1s ease;
  -ms-transition: transform 1s ease;
  -o-transition: transform 1s ease;
  transition: transform 1s ease;
  &.cc-top {
    transform: translateY(-2em);
  }
  &.cc-bottom {
    transform: translateY(2em);
  }
  &.cc-active {
    &.cc-top, &.cc-bottom {
      transform: translateY(0);
    }
  }
}

.cc-revoke:hover {
  transform: translateY(0);
}

.cc-grower {
  /* Initially we don't want any height, and we want the contents to be hidden */
  max-height: 0;
  overflow: hidden;
  /* Set our transitions up. */
  -webkit-transition: max-height 1s;
  -moz-transition: max-height 1s;
  -ms-transition: max-height 1s;
  -o-transition: max-height 1s;
  transition: max-height 1s;
}

/* the popup window */

.cc-window, .cc-revoke {
  position: fixed;
  overflow: hidden;
  box-sizing: border-box;
  /* exclude padding when dealing with width */
  font-family: Helvetica, Calibri, Arial, sans-serif;
  font-size: 16px;
  /* by setting the base font here, we can size the rest of the popup using CSS `em` */
  line-height: 1.5em;
  display: flex;
  flex-wrap: nowrap;
  /* the following are random unjustified styles - just because - should probably be removed */
  z-index: 9999;
}

.cc-window {
  &.cc-static {
    position: static;
  }
  &.cc-floating {
    padding: 2em;
    max-width: 24em;
    /* 1em == 16px therefore 24em == 384px */
    flex-direction: column;
  }
  &.cc-banner {
    padding: 1em 1.8em;
    width: 100%;
    flex-direction: row;
  }
}

/* 2 basic types of window - floating / banner */

.cc-revoke {
  padding: .5em;
  &:hover {
    text-decoration: none;
  }
}

.cc-header {
  font-size: 18px;
  font-weight: 700;
}

/* clickable things */

.cc-btn, .cc-link, .cc-close, .cc-revoke {
  cursor: pointer;
}

.cc-link {
  color: #2196f3 !important;
  opacity: .8;
  display: inline-block;
  padding: .2em;
  text-decoration: none;
  &:hover {
    opacity: 1;
  }
  &:active, &:visited {
    color: initial;
  }
}

.cc-btn {
  color: #1976d2;
  display: block;
  padding: .4em .8em;
  font-size: .9em;
  font-weight: 700;
  border-width: 2px;
  border-style: solid;
  text-align: center;
  white-space: nowrap;
  &:hover, &:active, &:focus {
    box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15);
    outline: 0;
  }
}

.cc-banner .cc-btn:last-child {
  min-width: 125px;
}

.cc-highlight .cc-btn:first-child {
  background-color: transparent;
  border-color: transparent;
  &:hover, &:focus {
    background-color: transparent;
    text-decoration: underline;
  }
}

.cc-close {
  display: block;
  position: absolute;
  top: .5em;
  right: .5em;
  font-size: 1.6em;
  opacity: .9;
  /* seeing as this contains text and not an image, the element taller than it is wide (because it is text) */
  /*  - we want it to be a square, because it's acting as an icon */
  /*  - setting the line height normalises the height */
  line-height: .75;
  &:hover, &:focus {
    opacity: 1;
  }
}

/* This file should contain CSS that modifies the popup layout. */
/* By layout, we mean the physical position of the elements on the popup window, and the margin / padding around those elements. */

.cc-revoke {
  &.cc-top {
    top: 0;
    left: 3em;
    border-bottom-left-radius: .5em;
    border-bottom-right-radius: .5em;
  }
  &.cc-bottom {
    bottom: 0;
    left: 3em;
    border-top-left-radius: .5em;
    border-top-right-radius: .5em;
  }
  &.cc-left {
    left: 3em;
    right: unset;
  }
  &.cc-right {
    right: 3em;
    left: unset;
  }
}

/**************************************** FLOATING ****************************************/
/* these classes position the floating element */

.cc-top {
  top: 1em;
}

.cc-left {
  left: 1em;
}

.cc-right {
  right: 1em;
}

.cc-bottom {
  bottom: 1em;
}

/* links that are direct decendants should be displayed as block */

.cc-floating {
  > .cc-link {
    margin-bottom: 1em;
  }
  .cc-message {
    display: block;
    margin-bottom: 1em;
  }
}

.cc-window {
  &.cc-floating .cc-compliance {
    -ms-flex: 1;
    flex: 1;
  }
  &.cc-banner {
    align-items: center;
  }
}

/**************************************** BANNER ****************************************/

.cc-banner {
  color: #fff;
  background-color: #252e39;
  &.cc-top {
    left: 0;
    right: 0;
    top: 0;
  }
  &.cc-bottom {
    left: 0;
    right: 0;
    bottom: 0;
  }
  .cc-message {
    flex: 1;
  }
}

#cookieconsent\3a desc:before {
  content: "\f05a";
  font-family: FontAwesome5;
  font-weight: 400;
  margin-right: 8px;
  color: #29b6f6;
}

.cc-link:after {
  content: "\f0a4";
  font-family: FontAwesome5;
  /*   vertical-align: middle; */
  margin-left: 5px;
}

/* COMPLIANCE BOX */

.cc-compliance {
  display: flex;
  align-items: center;
  align-content: space-between;
  > .cc-btn {
    flex: 1;
  }
}

.cc-btn + .cc-btn {
  margin-left: .5em;
}

@media print {
  .cc-window, .cc-revoke {
    display: none;
  }
}

@media screen and (max-width: 900px) {
  .cc-btn {
    white-space: normal;
  }
}

/* dimensions for 'iPhone6 Plus' and lower */
@media screen and (max-width: 414px) and (orientation: portrait), screen and (max-width: 736px) and (orientation: landscape) {
  .cc-window {
    &.cc-top {
      top: 0;
    }
    &.cc-bottom {
      bottom: 0;
    }
    &.cc-banner, &.cc-right, &.cc-left {
      left: 0;
      right: 0;
    }
    &.cc-banner {
      flex-direction: column;
      .cc-compliance {
        flex: 1;
      }
    }
    &.cc-floating {
      max-width: none;
    }
    .cc-message {
      margin-bottom: 1em;
    }
    &.cc-banner {
      align-items: unset;
    }
  }
}

/* iPhone 6 */
/* iPhone 6 plus */
/* iPhone 5 & 5S */
/* iPhone 2G - 4S */
/* Classic */

.cc-floating {
  &.cc-theme-classic {
    padding: 1.2em;
    border-radius: 5px;
  }
  &.cc-type-info.cc-theme-classic .cc-compliance {
    text-align: center;
    display: inline;
    flex: none;
  }
}

.cc-theme-classic .cc-btn {
  border-radius: 5px;
  &:last-child {
    min-width: 125px;
  }
}

.cc-floating.cc-type-info.cc-theme-classic .cc-btn {
  display: inline-block;
}
