article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
  display: block;
}

audio,
canvas,
video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
}

html {
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

a:focus {
  outline: none;
}

a:hover,
a:active {
  outline: none;
}

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
  -ms-interpolation-mode: bicubic;
}

form {
  margin: 0;
  padding: 0;
}

button,
input,
select,
textarea {
  margin: 0;
  font-size: 100%;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
}

button,
input {
  line-height: normal;
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer;
}

label,
select,
button,
input[type=button],
input[type=reset],
input[type=submit],
input[type=radio],
input[type=checkbox] {
  cursor: pointer;
}

fieldset {
  padding: 0;
  margin: 0;
  border: 0;
}

textarea {
  overflow: auto;
  vertical-align: top;
}

input::-ms-clear {
  display: none;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: "";
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir=rtl] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

@font-face {
  font-family: "Dela Gothic One";
  src: url("fonts/subset-DelaGothicOne-Regular.woff2") format("woff2"), url("fonts/subset-DelaGothicOne-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Montserrat";
  src: url("fonts/Montserrat-Bold.woff2") format("woff2"), url("fonts/Montserrat-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Montserrat";
  src: url("fonts/Montserrat-ExtraBold.woff2") format("woff2"), url("fonts/Montserrat-ExtraBold.woff") format("woff");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Montserrat";
  src: url("fonts/Montserrat-Medium.woff2") format("woff2"), url("fonts/Montserrat-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
body, html {
  height: 100%;
  min-height: 100%;
  min-width: 320px;
}

body {
  padding: 0px;
  margin: 0px;
  color: #fff;
  line-height: 1.3;
  font-size: 18px;
  font-family: "Montserrat", Arial, Helvetica, sans-serif;
  font-weight: 400;
  background: #303030;
}

img {
  display: block;
  max-width: 100%;
  border-style: none;
}

*,
*:before,
*:after {
  box-sizing: border-box;
  touch-action: manipulation;
}

*:hover,
*:focus,
*:active {
  outline: none;
}

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

a:hover {
  text-decoration: none;
}

ul, ol {
  margin: 0;
  padding: 0;
  list-style: none outside;
}

b {
  font-weight: 700;
}

p {
  margin: 0 0 0.5em;
}

p:last-child {
  margin-bottom: 0;
}

.center {
  text-align: center;
}

.nowrap {
  white-space: nowrap;
}

.hidden {
  display: none !important;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
  overflow: hidden;
}

.wrapper {
  width: 100%;
  overflow: hidden;
  position: relative;
  min-height: 100vh;
  min-height: 100dvh;
  background: url(img/bg-dark.png) repeat 0 0 #2e2e2e;
}

.default,
.thanks {
  text-align: center;
  font-size: clamp(0.7px, 0.1vh, 1px);
  display: flex;
  flex-flow: column nowrap;
}
.default > *,
.thanks > * {
  width: 100%;
}
.default .logo,
.thanks .logo {
  display: block;
  width: 109em;
  margin: 0 auto 37em;
}
.default .logo img,
.thanks .logo img {
  width: 100%;
}

.default__content {
  padding-top: 60em;
  padding-bottom: 710em;
  flex: 1 1 auto;
  position: relative;
}

.default__h1 {
  width: 10em;
  font-family: "Dela Gothic One", Arial, Helvetica, sans-serif;
  font-size: 80em;
  font-weight: 400;
  line-height: 1.05;
  text-transform: uppercase;
  margin: 0 auto;
}

.bus {
  position: absolute;
  top: 385em;
  left: 50%;
  width: 0;
  height: 0;
}

@media (min-height: 1000px) and (min-width: 1080px) {
  .bus {
    top: calc(50% - 80em);
  }
}
@keyframes tiger {
  to {
    transform: translateY(-25em);
  }
}
.tiger {
  width: 801em;
  height: 373em;
  position: relative;
  left: -428em;
  z-index: 10;
  transform: translateY(0em);
  --animDur: 0.47s;
  animation: tiger var(--animDur) ease-out infinite alternate;
}

.tiger__body {
  position: relative;
  height: 100%;
  background: url(img/default/tiger-body.png) no-repeat 0 0/contain transparent;
}

@keyframes tail {
  to {
    transform: rotate(4deg);
  }
}
.tiger__tail {
  position: absolute;
  width: 328em;
  height: 158em;
  background: url(img/default/tiger-tail.png) no-repeat 0 0/contain transparent;
  top: 170em;
  left: 680em;
  transform: rotate(0deg);
  transform-origin: bottom left;
  animation: tail var(--animDur) linear infinite calc(var(--animDur) / 2) alternate-reverse;
}

@keyframes headLights {
  0%, 80% {
    opacity: 1;
  }
  80.1%, 82% {
    opacity: 0.25;
  }
  82.1%, 84% {
    opacity: 1;
  }
  84.1%, 86% {
    opacity: 0.7;
  }
  86.1%, 100% {
    opacity: 1;
  }
}
.tiger__light {
  position: absolute;
  width: 158em;
  height: 80em;
  background: url(img/default/tiger-light.png) no-repeat 0 0/contain transparent;
  top: 175em;
  left: -85em;
  animation: headLights 5s infinite;
}

@keyframes leg1 {
  from {
    transform: rotate(54deg);
  }
  to {
    transform: rotate(-25deg);
  }
}
@keyframes leg2 {
  from {
    transform: rotate(47deg);
  }
  to {
    transform: rotate(-27deg);
  }
}
@keyframes leg3 {
  from {
    transform: rotate(45deg);
  }
  to {
    transform: rotate(-8deg);
  }
}
@keyframes leg4 {
  from {
    transform: rotate(-43deg);
  }
  to {
    transform: rotate(5deg);
  }
}
@keyframes leg5 {
  from {
    transform: rotate(-47deg);
  }
  to {
    transform: rotate(14deg);
  }
}
@keyframes leg6 {
  from {
    transform: rotate(-39deg);
  }
  to {
    transform: rotate(26deg);
  }
}
.tiger__leg {
  position: absolute;
  width: 111em;
  height: 274em;
  background: url(img/default/tiger-leg.png) no-repeat 0 0/contain transparent;
  transform-origin: 50em 60em;
}
.tiger__leg--1 {
  top: 254em;
  left: 148em;
  transform: rotate(54deg);
  animation: leg1 var(--animDur) linear calc(var(--animDur) * -1) infinite alternate;
}
.tiger__leg--2 {
  top: 274em;
  left: 257em;
  transform: rotate(33deg);
  animation: leg2 var(--animDur) linear calc(var(--animDur) * -1 + var(--animDur) / 6) infinite alternate;
}
.tiger__leg--3 {
  top: 272em;
  left: 364em;
  transform: rotate(22deg);
  animation: leg3 var(--animDur) linear calc(var(--animDur) * -1 + 2 * var(--animDur) / 6) infinite alternate;
}
.tiger__leg--4 {
  top: 262em;
  left: 461em;
  transform: rotate(10deg);
  animation: leg4 var(--animDur) linear calc(var(--animDur) * -1 + 3 * var(--animDur) / 6) infinite alternate;
}
.tiger__leg--5 {
  top: 258em;
  left: 558em;
  transform: rotate(3deg);
  animation: leg5 var(--animDur) linear calc(var(--animDur) * -1 + 4 * var(--animDur) / 6) infinite alternate;
}
.tiger__leg--6 {
  width: 145em;
  height: 289em;
  background: url(img/default/tiger-backleg.png) no-repeat 0 0/contain transparent;
  top: 218em;
  left: 632em;
  transform-origin: 62em 53em;
  transform: rotate(-14deg);
  animation: leg6 var(--animDur) linear calc(var(--animDur) * -1 + 5 * var(--animDur) / 6) infinite alternate;
}

@keyframes road {
  to {
    transform: rotate(1turn);
  }
}
.bus__road {
  width: 1474em;
  height: 1474em;
  border-radius: 50%;
  background: #303030;
  transform-origin: 50% 50%;
  animation: road 15s linear infinite;
  position: absolute;
  top: 372em;
  left: -737em;
  overflow: hidden;
}
.bus__road:before {
  content: "";
  width: 963em;
  height: 963em;
  border-radius: 50%;
  background: #2E2E2E;
  position: absolute;
  top: calc(50% - 481.5em);
  left: calc(50% - 481.5em);
}
.bus__road:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  background: url(img/default/road-bg.png) repeat 0 0 transparent;
}

.bus__roadmark {
  width: 1260em;
  height: 1260em;
  position: absolute;
  top: calc(50% - 620em);
  left: calc(50% - 620em);
  z-index: 5;
  background: url(img/default/road-mark.svg) repeat center center/1260em 1260em transparent;
}

@media (max-width: 1079.9px) {
  .default {
    font-size: 0.33px;
  }
  .default .logo {
    position: absolute;
    top: 20px;
    left: 0;
    right: 0;
    width: 100px;
    margin-bottom: 0;
  }
  .default__h1 {
    font-size: min(40px, 9vw);
  }
  .default__content {
    padding: 95px 0 280px;
  }
  .bus {
    top: auto;
    bottom: 240px;
  }
}
/* footer */
.footer {
  background: #303030;
  padding: 40em 20px 160em;
  position: relative;
  z-index: 100;
  line-height: 1.5;
  flex: 0 0 auto;
}

.footer-subscribe {
  max-width: 860em;
  margin: 0 auto;
}
.footer-subscribe input[type=text] {
  display: block;
  box-sizing: border-box;
  width: 100%;
  background: transparent;
  padding: 0.6em 7em 0.6em 2em;
  font-size: 20em;
  line-height: 1.8;
  height: 6em;
  font-family: "Montserrat", Arial, Helvetica, sans-serif;
  font-weight: 500;
  color: #fff;
  margin: 0;
  border: 0.15em solid #FFFFFF;
  border-radius: 0;
  background: transparent;
}
.footer-subscribe input[type=text]::-webkit-input-placeholder {
  color: #666666;
}
.footer-subscribe input[type=text]:-moz-placeholder, .footer-subscribe input[type=text]::-moz-placeholder {
  color: #666666;
  opacity: 1;
}
.footer-subscribe input[type=text]:-ms-input-placeholder {
  color: #666666;
}
.footer-subscribe button {
  display: block;
  font-size: 1em;
  line-height: 0;
  color: transparent;
  padding: 0;
  width: 120em;
  height: 120em;
  box-sizing: border-box;
  border: 3em solid #fff;
  margin: 0;
  background: url(img/button-arrow.svg) no-repeat 50% 50%/57em 55em #FF2963;
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
  transition: background-position 0.15s ease;
}
.footer-subscribe button:hover {
  background-position: calc(50% + 5em) 50%;
}
.footer-subscribe button[disabled] {
  opacity: 0.5;
  cursor: default;
  pointer-events: none;
}
.footer-subscribe label.error {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  padding-top: 0.25em;
  text-align: left;
  font-weight: 500;
  font-size: 20em;
  line-height: 1.3;
  color: #F00;
}

.footer-subscribe form,
.footer-subscribe__input {
  position: relative;
}

.footer-subscribe__text {
  font-size: 24em;
  font-weight: 700;
  margin: 0 auto 1.5em;
  text-transform: uppercase;
  color: #fff;
}
.footer-subscribe__text a,
.footer-subscribe__text a:hover {
  color: #FF2963;
}

.footer-subscribe__checkboxes {
  text-align: left;
  margin-top: 40em;
}

/* ----- checkboxes for all ----- */
.all-checkbox-outer + .all-checkbox-outer {
  margin-top: 20em;
}

.all-checkbox {
  display: inline-flex;
  vertical-align: top;
  align-items: flex-start;
  justify-content: flex-start;
  position: relative;
  font-family: "Montserrat", Arial, Helvetica, sans-serif;
  font-size: 14em;
  line-height: 1.3;
  font-weight: 500;
  cursor: pointer;
  text-align: left;
}

.all-checkbox__icon {
  flex: 0 0 2em;
  width: 2em;
  height: 2em;
  border: 0.2em solid #fff;
  background: #303030;
  margin-right: 0.75em;
}

.all-checkbox input:checked + .all-checkbox__icon {
  background: url("data:image/svg+xml,%3Csvg width='29' height='22' viewBox='0 0 29 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.5 10L10 19.5L27 2' stroke='white' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center center #FF2963;
  background-size: 1.45em 1.1em;
  border-color: #FF2963;
}

.all-checkbox__text {
  flex: 0 1 auto;
  align-self: center;
}

.all-checkbox__text a {
  color: #FF2963;
  text-decoration: none;
}

.all-checkbox input.error + .all-checkbox__icon {
  border-color: #F00;
  box-shadow: 0 0 0.4em #F00;
}

.all-checkbox label.error {
  display: none !important;
}

@media (max-width: 1079.9px) {
  .footer {
    font-size: 0.57px;
    padding-bottom: 90em;
  }
  .all-checkbox {
    font-size: 13px;
  }
}
.thanks__content {
  padding-top: 60em;
  padding-bottom: 70em;
  flex: 1 1 auto;
  position: relative;
}

.thanks__title {
  font-size: 80em;
  line-height: 1.05;
  font-weight: 400;
  font-family: "Dela Gothic One", Arial, Helvetica, sans-serif;
  margin: 1.2em auto 0.75em;
}

.thanks__text {
  margin: 0 auto;
  max-width: 32em;
  font-size: 30em;
  line-height: 1.66;
}

.thanks__button {
  display: inline-flex;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: center;
  vertical-align: top;
  font-size: 20em;
  text-decoration: none;
  padding: 0.5em 0.75em;
  line-height: 1;
  height: 4em;
  text-align: center;
  border: 0 none;
  margin: 3em 0 0;
  font-family: "Dela Gothic One", Arial, Helvetica, sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  position: relative;
  width: 15em;
  max-width: 100%;
  white-space: nowrap;
  color: #fff;
  background: #FF2963;
  transition: background-position 0.1s ease-in-out;
}

@media (max-width: 1079.9px) {
  .thanks {
    font-size: 0.5px;
    padding: 0 20px;
  }
  .thanks .logo {
    position: absolute;
    top: 20px;
    left: 0;
    right: 0;
    width: 100px;
    margin-bottom: 0;
  }
  .thanks__title {
    font-size: min(40px, 9vw);
  }
  .thanks__content {
    padding: 95px 0 80px;
  }
  .thanks__button {
    font-size: 25em;
  }
}