@charset "UTF-8";
html, body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset, img {
  border: 0;
}

address, caption, cite, code, dfn, th, var {
  font-style: normal;
  font-weight: normal;
}

ol, ul {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before, q:after {
  content: '';
}

abbr, acronym {
  border: 0;
}

table, td, tr {
  vertical-align: top;
}

@font-face {
  font-family: 'texty';
  font-stretch: normal;
  font-weight: normal;
  font-style: normal;
  src: url(/css/open_sans/opensans-light-webfont.eot);
  src: url(/css/open_sans/opensans-light-webfont.eot?#iefix) format('embedded-opentype'),url(/css/open_sans/opensans-light-webfont.woff2) format('woff2'),url(/css/open_sans/opensans-light-webfont.woff) format('woff'),url(/css/open_sans/opensans-light-webfont.ttf) format('truetype');
}

@font-face {
  font-family: 'texty';
  font-stretch: normal;
  font-weight: 600;
  font-style: normal;
  src: url(/css/open_sans/opensans-semibold-webfont.eot);
  src: url(/css/open_sans/opensans-semibold-webfont.eot?#iefix) format('embedded-opentype'),url(/css/open_sans/opensans-semibold-webfont.woff2) format('woff2'),url(/css/open_sans/opensans-semibold-webfont.woff) format('woff'),url(/css/open_sans/opensans-semibold-webfont.ttf) format('truetype');
}

@font-face {
  font-family: 'texty';
  font-stretch: normal;
  font-weight: bold;
  font-style: normal;
  src: url(/css/open_sans/opensans-bold-webfont.eot);
  src: url(/css/open_sans/opensans-bold-webfont.eot?#iefix) format('embedded-opentype'),url(/css/open_sans/opensans-bold-webfont.woff2) format('woff2'),url(/css/open_sans/opensans-bold-webfont.woff) format('woff'),url(/css/open_sans/opensans-bold-webfont.ttf) format('truetype');
}

html {
  font-family: texty,Helvetica,Arial,sans-serif;
  font-size: 22px;
  line-height: 1.2;
  color: white;
}

.nowrap {
  white-space: nowrap;
}

.uc {
  text-transform: uppercase;
}

a {
  color: inherit;
  text-decoration: underline;
}

body {
  background: #6C7CA4 url(/img/w/bg-pattern-blue-noise@2x.png);
  -webkit-background-size: 83px 48px;
  background-size: 83px 48px;
}

#logo {
  width: 16.545454545455em;
  margin-bottom: 2.6em;
}

#maze h1 {
  font-size: 2.8181818181818em;
  margin-bottom: .35483870967742em;
  text-transform: uppercase;
  line-height: 1.132;
}

#maze h2 {
  font-size: 1.3em;
  color: #1C1D21;
  font-weight: bold;
  margin-bottom: .3em;
}

#maze h2:not(:first-child) {
  margin-top: .25em;
}

#maze h3 {
  color: #1C1D21;
}

#maze h3.offi {
  margin-top: .5em;
}

.program tr + tr td {
  padding-top: .85em;
}

.program .slot p + p {
  margin-top: .6em;
}

.program .slot td:first-child {
  padding-right: 1.5em;
  white-space: nowrap;
}

.b-row {
  text-align: center;
}

.b-reg {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: .2vw solid white;
  border-radius: 5px;
  cursor: pointer;
  font-size: 1em;
  font-weight: 600;
  text-transform: uppercase;
  padding: .8em 4em;
  background: none;
  color: white;
  -webkit-transition: color .15s ease-in-out,background-color .15s ease-in-out;
  -moz-transition: color .15s ease-in-out,background-color .15s ease-in-out;
  transition: color .15s ease-in-out,background-color .15s ease-in-out;
  -webkit-backface-visibility: hidden;
}

@media not all and (min-width: 800px) {
.b-reg {
  border-width: .5vw;
}

}

@media only all and (min-aspect-ratio: 5/2) and (max-height: 999.95px) {
.b-reg {
  border-width: .5px;
  border-width: .1vh;
}

}

@media only all and (min-aspect-ratio: 5/2) and (min-height: 1000px) {
.b-reg {
  border-width: 1px;
}

}

.b-reg:hover {
  background: white;
  color: #1C1D21;
}

.legal {
  max-width: 800px;
  margin: 4em auto;
  line-height: 2;
}

.legal header {
  text-align: center;
}

.legal h1 {
  font-weight: bold;
  text-transform: uppercase;
  font-size: 1.2em;
  letter-spacing: .05em;
}

.legal p {
  text-align: justify;
}

.bgclip {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background: left top / 100% auto no-repeat;
  -webkit-mask: left top / 100% auto no-repeat;
  mask: left top / 100% auto no-repeat;
  background-image: url(/img/w/bg-img@w1384.jpg);
  -webkit-mask-image: url(/img/w/w-crop.svg);
  mask-image: url(/img/w/w-crop.svg);
}

#lang-selector {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: .2vw solid white;
  border-radius: 5px;
  color: #1C1D21;
  border-color: #1C1D21;
  z-index: 2;
  position: absolute;
  top: 0;
  right: 4vw;
  padding: 0 .2em;
  font-size: 1em;
  font-weight: 600;
}

@media not all and (min-width: 800px) {
#lang-selector {
  border-width: .5vw;
}

}

@media only all and (min-aspect-ratio: 5/2) and (max-height: 999.95px) {
#lang-selector {
  border-width: .5px;
  border-width: .1vh;
}

}

@media only all and (min-aspect-ratio: 5/2) and (min-height: 1000px) {
#lang-selector {
  border-width: 1px;
}

}

#lang-selector a {
  display: inline-block;
  text-decoration: none;
  text-transform: uppercase;
  padding: .3em .5em;
  -webkit-transition: color .15s ease-in-out;
  -moz-transition: color .15s ease-in-out;
  transition: color .15s ease-in-out;
  -webkit-backface-visibility: hidden;
}

#lang-selector a.cur {
  color: white;
  cursor: auto;
}

#lang-selector a:hover {
  color: white;
}

#lang-selector .bar {
  display: inline-block;
  background: currentcolor;
  width: .1em;
  height: 1.3ex;
}

#maze {
  position: relative;
}

#maze:after {
  content: '';
  display: block;
  clear: both;
}

#maze .-bottom {
  float: left;
}

@media only all and (min-width: 800px) {
#maze {
  width: 100%;
  min-height: 100%;
  font-size: 1.1458333333333vw;
}

#maze .bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

#maze .bgclip {
  padding-bottom: 64.737242955065%;
  left: 6.8229166666667%;
  margin-top: 4.4791666666667%;
}

#maze .contents-outer-area {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
}

#maze .contents-inner-area {
  position: absolute;
  left: 6.8229166666667%;
  top: 7.962962962963%;
  right: 9.21875%;
  bottom: 9.8148148148148%;
}

#maze .lead-area {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 50%;
  height: 40.315315315315%;
}

#maze .lead-area #logo {
  margin-top: .9em;
}

#maze .info-and-prog {
  position: absolute;
  left: 19.168734491315%;
  top: 40.315315315315%;
  width: 80.831265508685%;
}

#maze .info-area {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 38.142747505756%;
  padding-left: calc(-50px + 6.25vw);
  padding-right: calc(-78.571428571429px + 9.8214285714286vw);
}

#maze .prog-area {
  position: absolute;
  bottom: 0;
  right: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 38.219493476592%;
  padding-left: calc(-28.571428571429px + 3.5714285714286vw);
  padding-right: calc(-7.1428571428571px + .89285714285714vw);
}

}

@media not all and (min-width: 800px) {
#maze {
  margin-left: 7.8222222222222%;
  margin-top: 10.133333333333%;
  margin-bottom: 10vw;
  font-size: 2.75vw;
}

#maze:before {
  content: '';
  display: table;
}

#maze .bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 0;
  padding-bottom: 61%;
}

#maze .bgclip {
  width: 100%;
  -webkit-background-size: 253.23047251688% auto;
  background-size: 253.23047251688% auto;
  -webkit-mask-size: 253.23047251688% auto;
  mask-size: 253.23047251688% auto;
  padding-bottom: 163.93442622951%;
}

#maze .contents-outer-area {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 163.93442622951%;
}

#maze .contents-inner-area .lead-area {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: 0;
  padding-bottom: 47.155255544841%;
}

#maze .contents-inner-area .info-and-prog {
  width: 100%;
  height: 0;
  padding-bottom: 116.77917068467%;
}

#maze .contents-inner-area .info-area {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 59.402121504339%;
  height: 0;
  padding-bottom: 116.77917068467%;
  margin-left: auto;
  padding-left: calc(-17.826086956522px + 8.695652173913vw);
  padding-right: calc(-16.863354037267px + 6.832298136646vw);
}

}

#popup-layer {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9;
}

#popup-layer:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(28,29,33,.85);
}

.popup {
  position: absolute;
  bottom: 50%;
  right: 50%;
  -webkit-transform: translate(50%,50%);
  -moz-transform: translate(50%,50%);
  -ms-transform: translate(50%,50%);
  transform: translate(50%,50%);
  -webkit-box-shadow: 0 0 2vw black;
  box-shadow: 0 0 2vw black;
  background: #6C7CA4 url(/img/w/bg-pattern-blue-noise@2x.png);
  -webkit-background-size: 83px 48px;
  background-size: 83px 48px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 25px;
  font-size: 2.7vmin;
}

.popup,
.popup .content {
  max-height: 90vh;
  width: intrinsic;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  max-width: 90vw;
}

.popup .content {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  overflow-x: hidden;
  overflow-y: auto;
  overflow: auto;
  padding: 3.1em 4.2em 2.2em;
}

@media not all and (min-width: 1000px) {
.popup .content {
  padding: 35.882352941176px 42.5px 21.911764705882px;
  padding: calc(-8.2352941176471px + 8.8235294117647vw) calc(-20px + 12.5vw) calc(-11.176470588235px + 6.6176470588235vw);
}

}

@media only all and (min-width: 1000px) {
.popup .content {
  padding: 80px 105px 55px;
}

}

@media only all and (min-aspect-ratio: 9/5) and (max-height: 999.95px) {
.popup .content {
  padding: 1em 3em 1em;
}

}

@media only all and (min-aspect-ratio: 9/5) and (min-height: 1000px) {
.popup .content {
  padding: 1em 3em 1em;
}

}

.popup .-close {
  font: inherit;
  color: inherit;
  font-size: 2.5em;
  position: absolute;
  top: -.3em;
  right: -.3em;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 1em;
  height: 1em;
  line-height: 1.45ex;
  background: #1C1D21;
  padding: 0;
  border: none;
  border-radius: 5px;
  font-weight: bold;
  text-align: center;
  cursor: pointer;
  -webkit-transition: color .15s ease-in-out,background-color .15s ease-in-out;
  -moz-transition: color .15s ease-in-out,background-color .15s ease-in-out;
  transition: color .15s ease-in-out,background-color .15s ease-in-out;
  -webkit-backface-visibility: hidden;
}

.popup .-close:before {
  content: 'x';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.popup .-close:hover {
  background: white;
  color: #1C1D21;
}

.popup h1 {
  font-size: 1.92em;
  font-weight: bold;
  color: #1C1D21;
}

.popup .send {
  font-size: 1.2em;
}

.popup .thanks {
  font-size: 2.52em;
  font-weight: bold;
  text-align: center;
}

@media not all and (min-width: 1000px) {
.popup .thanks {
  font-size: 38.735294117647px;
  font-size: calc(14.470588235294px + 4.8529411764706vw);
}

}

.popup .soon {
  text-align: center;
  margin-top: 2em;
}

.popup#popup-thanks {
  padding-top: 2em;
  padding-bottom: 2em;
}

.popup .b-submit {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: .2vw solid white;
  border-radius: 5px;
  cursor: pointer;
  background: none;
  font: inherit;
  padding: .8em 2em;
  font-weight: bold;
  text-transform: uppercase;
  color: #1C1D21;
  background: white;
  -webkit-transition: border .15s ease-in-out,background .15s ease-in-out,color .15s ease-in-out;
  -moz-transition: border .15s ease-in-out,background .15s ease-in-out,color .15s ease-in-out;
  transition: border .15s ease-in-out,background .15s ease-in-out,color .15s ease-in-out;
  -webkit-backface-visibility: hidden;
}

@media not all and (min-width: 800px) {
.popup .b-submit {
  border-width: .5vw;
}

}

@media only all and (min-aspect-ratio: 5/2) and (max-height: 999.95px) {
.popup .b-submit {
  border-width: .5px;
  border-width: .1vh;
}

}

@media only all and (min-aspect-ratio: 5/2) and (min-height: 1000px) {
.popup .b-submit {
  border-width: 1px;
}

}

.popup .b-submit:not(.-disabled):hover {
  color: white;
  border-color: #1C1D21;
  background-color: #1C1D21;
  outline: none;
}

.popup .b-submit.-disabled {
  color: white;
  border-color: #F00;
  background-color: #F00;
  outline: none;
}

.popup .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: start;
  box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
}

.popup .row + .row {
  margin-top: 1em;
}

.popup .row.nogap {
  margin-top: 0;
  padding-left: 2em;
  font-size: .8em;
}

.popup .row.-submit {
  text-align: right;
}

.popup .row.-no-opt-prog {
  display: none;
  background: white;
  color: #1C1D21;
  text-align: center;
  font-weight: bold;
  padding: .5em 1em;
}

.popup .last-right :last-child {
  margin-left: auto;
  line-height: 1.5;
}

.popup input[type=text],
.popup input[type=email],
.popup input[type=tel] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: .2vw solid white;
  border-radius: 5px;
  background: none;
  font: inherit;
  color: inherit;
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding: .5em .5em;
  -webkit-transition: border-color .15s ease-in-out,background .15s ease-in-out;
  -moz-transition: border-color .15s ease-in-out,background .15s ease-in-out;
  transition: border-color .15s ease-in-out,background .15s ease-in-out;
  -webkit-backface-visibility: hidden;
}

@media not all and (min-width: 800px) {
.popup input[type=text],
.popup input[type=email],
.popup input[type=tel] {
  border-width: .5vw;
}

}

@media only all and (min-aspect-ratio: 5/2) and (max-height: 999.95px) {
.popup input[type=text],
.popup input[type=email],
.popup input[type=tel] {
  border-width: .5px;
  border-width: .1vh;
}

}

@media only all and (min-aspect-ratio: 5/2) and (min-height: 1000px) {
.popup input[type=text],
.popup input[type=email],
.popup input[type=tel] {
  border-width: 1px;
}

}

.popup input[type=text]::placeholder,
.popup input[type=email]::placeholder,
.popup input[type=tel]::placeholder {
  color: white;
  opacity: .6;
}

.popup input[type=text]:focus,
.popup input[type=email]:focus,
.popup input[type=tel]:focus {
  outline: none;
  border-color: #1C1D21;
}

.popup .error {
  overflow: hidden;
  -webkit-transition: width .15s ease-in-out;
  -moz-transition: width .15s ease-in-out;
  transition: width .15s ease-in-out;
  -webkit-backface-visibility: hidden;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  align-self: center;
  width: 0;
  -webkit-flex: none;
  -ms-flex: none;
  flex: none;
}

.popup .error:after {
  font-size: 2em;
  content: '!';
  display: block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: white;
  color: #F00;
  font-weight: bold;
  text-align: center;
  width: calc(100% - 5px);
  height: 100%;
  border-radius: 5px;
  margin-left: auto;
}

.popup .content:focus-within input:invalid:not(:focus) {
  background: red;
}

.popup .content:focus-within input:invalid:not(:focus) ~ .error {
  width: 2em;
}

.popup .content:focus-within .row:focus-within ~ .row input:invalid {
  background: transparent;
}

.popup .content:focus-within .row:focus-within ~ .row input:invalid ~ .error {
  width: 0;
}

.popup label {
  cursor: pointer;
  -webkit-transition: opacity .15s ease-in-out;
  -moz-transition: opacity .15s ease-in-out;
  transition: opacity .15s ease-in-out;
  -webkit-backface-visibility: hidden;
}

.popup label.-disabled {
  cursor: auto;
  opacity: .3;
}

.popup label.-chk {
  -webkit-transition: color .15s ease-in-out,background-color .15s ease-in-out;
  -moz-transition: color .15s ease-in-out,background-color .15s ease-in-out;
  transition: color .15s ease-in-out,background-color .15s ease-in-out;
  -webkit-backface-visibility: hidden;
}

.popup label.-chk:not(.-disabled):hover,
.popup label.-chk:not(.-disabled):focus-within {
  color: #1C1D21;
}

.popup label.-chk:not(.-disabled):hover input[type="checkbox"] + span,
.popup label.-chk:not(.-disabled):focus-within input[type="checkbox"] + span {
  border-color: #1C1D21;
}

.popup label.-chk .label {
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  align-self: center;
}

.popup input[type="checkbox"] {
  position: absolute;
  border: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  clip: rect(0 0 0 0);
}

.popup input[type="checkbox"] + span {
  display: block;
  font-size: 1.5em;
  width: 1em;
  height: 1em;
  line-height: 0px;
  margin-right: .2em;
  -webkit-flex: none;
  -ms-flex: none;
  flex: none;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  align-self: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: .2vw solid white;
  border-radius: 5px;
  position: relative;
  -webkit-transition: border .15s ease-in-out,color .15s ease-in-out;
  -moz-transition: border .15s ease-in-out,color .15s ease-in-out;
  transition: border .15s ease-in-out,color .15s ease-in-out;
  -webkit-backface-visibility: hidden;
}

@media not all and (min-width: 800px) {
.popup input[type="checkbox"] + span {
  border-width: .5vw;
}

}

@media only all and (min-aspect-ratio: 5/2) and (max-height: 999.95px) {
.popup input[type="checkbox"] + span {
  border-width: .5px;
  border-width: .1vh;
}

}

@media only all and (min-aspect-ratio: 5/2) and (min-height: 1000px) {
.popup input[type="checkbox"] + span {
  border-width: 1px;
}

}

.popup input[type="checkbox"]:focus + span {
  border-color: #1C1D21;
}

.popup input[type="checkbox"] + span:before {
  display: block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  padding: 10%;
  content: url(/img/check-white.svg);
  opacity: 0;
  -webkit-transform: rotate(15deg);
  -moz-transform: rotate(15deg);
  -ms-transform: rotate(15deg);
  transform: rotate(15deg);
  -webkit-transition: opacity .15s ease-in-out,transform .15s ease-in-out;
  -moz-transition: opacity .15s ease-in-out,transform .15s ease-in-out;
  transition: opacity .15s ease-in-out,transform .15s ease-in-out;
  -webkit-backface-visibility: hidden;
}

.popup input[type="checkbox"]:checked + span:before {
  opacity: 1;
  -webkit-transform: none;
  -moz-transform: none;
  -ms-transform: none;
  transform: none;
}

.popup select {
  width: 100%;
  height: 1.6em;
  background: transparent;
  color: inherit;
  font: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: .2vw solid white;
  border-radius: 5px;
  cursor: pointer;
  text-align: center;
  padding-right: 1em;
}

@media not all and (min-width: 800px) {
.popup select {
  border-width: .5vw;
}

}

@media only all and (min-aspect-ratio: 5/2) and (max-height: 999.95px) {
.popup select {
  border-width: .5px;
  border-width: .1vh;
}

}

@media only all and (min-aspect-ratio: 5/2) and (min-height: 1000px) {
.popup select {
  border-width: 1px;
}

}

.popup select option {
  background: white;
  color: #1C1D21;
}

.popup select option:disabled {
  color: rgba(0,0,0,.2);
}

.popup label.-sel {
  display: inline-block;
  position: relative;
  margin-left: 1em;
  width: 5em;
}

.popup label.-sel:after {
  content: '';
  position: absolute;
  top: .6em;
  right: .6em;
  width: .3em;
  height: .3em;
  border-bottom: .1em solid currentcolor;
  border-left: .1em solid currentcolor;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: transform .15s ease-in-out;
  -moz-transition: transform .15s ease-in-out;
  transition: transform .15s ease-in-out;
  -webkit-backface-visibility: hidden;
}

.popup label.-sel:not(.-disabled):hover:after {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

#popup-layer.-open {
  opacity: 1 !important;
  visibility: visible !important;
  -webkit-transition: opacity .8s 0s,visibility 0s 0s;
  -moz-transition: opacity .8s 0s,visibility 0s 0s;
  transition: opacity .8s 0s,visibility 0s 0s;
}

#popup-layer {
  opacity: 0 !important;
  visibility: hidden !important;
  -webkit-transition: opacity .8s 0s,visibility 0s .8s;
  -moz-transition: opacity .8s 0s,visibility 0s .8s;
  transition: opacity .8s 0s,visibility 0s .8s;
}

.popup.-open {
  opacity: 1 !important;
  visibility: visible !important;
  -webkit-transition: opacity .8s 0s,visibility 0s 0s;
  -moz-transition: opacity .8s 0s,visibility 0s 0s;
  transition: opacity .8s 0s,visibility 0s 0s;
}

.popup {
  opacity: 0 !important;
  visibility: hidden !important;
  -webkit-transition: opacity .8s 0s,visibility 0s .8s;
  -moz-transition: opacity .8s 0s,visibility 0s .8s;
  transition: opacity .8s 0s,visibility 0s .8s;
}
