﻿/* Inter + Outfit (Latin, variable) — localized from Google Fonts, served from ./fonts/ */
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/inter-latin.woff2) format('woff2');}
@font-face{font-family:'Outfit';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/outfit-latin.woff2) format('woff2');}

* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

:focus {
  outline: 0
}

img {
  border: none;
  display: block
}

ol,
ul {
  list-style: none;
  padding: 0;
  margin: 0
}

a {
  text-decoration: none;
  cursor: pointer !important
}

body,
html {
  width: 100%;
  height: 100%;
  min-height: 100%
}

body {
  font-family: 'Inter', sans-serif !important;
  color: #fff !important;
  background: #000
}

#particles-js {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: -2;
  top: 0;
  left: 0
}

video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: fixed;
  left: 0;
  top: 0;
  z-index: -3;
  transition: all .5s ease
}

.de_txt {
  font-size: 55px;
  line-height: 40px;
}

@media all and (-ms-high-contrast: none),
(-ms-high-contrast: active) {
  video {
    object-fit: none;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: auto;
    width: 100%
  }

  .wrapper {
    margin-top: 100px
  }
}

.overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  background: rgba(0, 0, 0, .3)
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
  .blur {
    filter: blur(6px);
    -webkit-filter: blur(6px);
    -moz-filter: blur(6px);
    -o-filter: blur(6px);
    -ms-filter: blur(6px);
    filter: progid:DXImageTransform.Microsoft.Blur(PixelRadius='6px');
    transition: filter .3s ease;
    -webkit-transition: filter .3s ease;
    -moz-transition: filter .3s ease
  }
}

@media all and (-ms-high-contrast: none),
(-ms-high-contrast: active) {
  .blur {
    filter: blur(6px);
    -webkit-filter: blur(6px);
    -moz-filter: blur(6px);
    -o-filter: blur(6px);
    -ms-filter: blur(6px);
    filter: progid:DXImageTransform.Microsoft.Blur(PixelRadius='6px');
    transition: filter .3s ease;
    -webkit-transition: filter .3s ease;
    -moz-transition: filter .3s ease
  }
}

iframe {
  margin-top: 20px!important;
}

.wrapper {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 100%;
  grid-template-columns: 100%;
  -ms-grid-row: 100%;
  grid-template-rows: 100%;
  width: 100%;
  height: auto;
  min-height: 100%
}

.step-item {
  width: 94%;
  max-width: 700px;
  height: auto;
  margin: 0 auto;
  -ms-grid-column: 1 / 1;
  grid-column: 1 / 1;
  -ms-grid-row: 1 / 1;
  grid-row: 1 / 1;
  transition: transform 1.2s ease;
  text-align: center;
  -ms-grid-row-align: center;
  align-self: center
}

.step-item[data-effect="turn"] {
  -webkit-transform: rotate3d(0, 1, 0, -90deg);
  transform: rotate3d(0, 1, 0, 90deg)
}

.step-item[step="1"] {
  transform: none
}

.block {
  position: relative;
  background: #0f0c29;
  background: -webkit-linear-gradient(to right, #24243e, #302b63, #0f0c29);
  background: linear-gradient(to right, #24243e, #302b63, #0f0c29);
  padding: 40px 20px;
  border-radius: 20px
}

.block:before,
.block:after {
  content: '';
  position: absolute;
  left: -2px;
  top: -2px;
  background: linear-gradient(45deg, #fb0094, #00f0ff, #141E30, #ff0, red, #fb0094, #00f0ff, #141E30, #ff0, red);
  background-size: 400%;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  z-index: -1;
  animation: steam 20s linear infinite;
  border-radius: 20px
}

@keyframes steam {
  0% {
    background-position: 0 0
  }

  50% {
    background-position: 400% 0
  }

  100% {
    background-position: 0 0
  }
}

.block:after {
  -webkit-filter: blur(50px);
  filter: blur(50px)
}

.btn_wrp {
  display: block;
  margin-top: 40px
}

.btn {
  width: 75%;
  margin: 1%;
  display: inline-block;
  color: #fff;
  font-size: 1.75rem;
  font-weight: 700;
  text-transform: uppercase;
  padding: 10px 15px 10px 0;
  cursor: pointer;
  letter-spacing: -1px;
  position: relative;
  z-index: 0;
  overflow: visible
}

.btn_final {
  width: 75%;
  margin: 1%;
  display: inline-block;
  color: #fff;
  font-size: 1.75rem;
  font-weight: 700;
  text-transform: uppercase;
  padding: 10px 15px 10px 0;
  cursor: pointer;
  letter-spacing: -1px;
  position: relative;
  z-index: 0;
  overflow: visible
}

.btn::before {
  content: "";
  width: 100%;
  background-size: 20px auto;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  z-index: -1;
  -webkit-transform: skewX(-15deg);
  -ms-transform: skewX(-15deg);
  transform: skewX(-15deg);
  transition: background .2s ease;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.75);
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.75)
}

.btn_final::before {
  content: "";
  width: 100%;
  background-size: 20px auto;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  z-index: -1;
  -webkit-transform: skewX(-15deg);
  -ms-transform: skewX(-15deg);
  transform: skewX(-15deg);
  transition: background .2s ease;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.75);
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.75)
}

.btn:hover::before {
  background-size: 20px auto
}

.btn_final:hover::before {
  background-size: 20px auto
}

.act::before {
  background-size: 20px auto
}

[step="1"] .btn,
[step="6"] .btn,
[step="7"] .btn,
[step="9"] .btn {
  width: 70%
}

h1 {
  color: #fff;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: -1px;
  display: block;
  margin-bottom: 10px;
  line-height: 2rem;
  font-style: italic;
  text-shadow: 0 1px 14px rgba(0, 0, 0, 0.88)
}

h1 span {
  display: block;
  font-size: 1.5rem
}

h1 span strong {
  font-weight: 700;
  font-size: 2.5rem;
  position: relative;
  top: 15px;
  color: #ffffff;
  text-transform: uppercase;
  letter-spacing: -3px;
  line-height: 2.5rem;
}
h1 .question1 strong {
  font-weight: 700;
  font-size: 4rem;
  position: relative;
  top: 15px;
  color: #ffffff;
  text-transform: uppercase;
  letter-spacing: -2px
}

h3 {
  color: #fff;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 10px;
  display: block;
  margin-bottom: 10px;
  text-transform: uppercase;
  line-height: 2.75rem;
  font-style: italic
}

h2 {
  font-size: 1.5rem;
  font-weight: 400;
  margin-bottom: 40px
}

[step="11"] h4 {
  width: 90%;
  max-width: 420px;
  min-height: 24px;
  text-align: left;
  font-size: 1rem;
  font-weight: 300;
  margin: 5px auto;
  text-shadow: 0 1px 14px rgba(0, 0, 0, 0.88);
  padding: 0 0 0 30px;
  display: none;
  transition: background .2s ease
}

h4.blue {

}

h4.green {

}

.parental {
  position: fixed;
  bottom: 20px;
  left: 20px;
  max-width: 150px;
  -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.75);
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.75)
}

.parental img {
  width: 100%
}

.mute-button {
  width: 40px;
  height: 40px;
  text-align: center;
  border: 1px solid #000;
  cursor: pointer;
  box-shadow: 0 1px 2px #000;
  z-index: 9999;
  border-radius: 50%;
  background: #000;
  position: fixed;
  top: 30px;
  right: 30px;
  display: none
}

.mute-button:hover {
  background: #ff2361
}

.mute-button img {
  width: 60%;
  position: relative;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: none
}

.active #icon-not-muted {
  display: block !important
}

.inactive #icon-muted {
  display: block !important
}

.trnsIn {
  -webkit-transform: none !important;
  display: block !important
}

.trns {
  -webkit-transform: none !important;
  display: none !important
}

[step="10"] .btn {
  width: 90%
}

.wrapper {
  grid-template-rows: 1fr
}

footer {
  text-align: center;
  font-size: 10px;
  padding: 10px
}

footer a {
  color: #fff;
  text-decoration: underline
}

.step-item[step="11"],
.step-item[step="12"] {
  padding-top: 10px
}

.step-item[step="12"] {
  padding-top: 10px;
  padding: 0;
  width: 100%;
}

@media only screen and (max-width:1024px) {
  .mute-button:hover {
    background: #000
  }
}

@media (max-width:480px) {
  .parental {
    bottom: 10px;
    left: 10px;
    max-width: 75px
  }

  h1 {
    font-size: 1.5rem;
    line-height: 1.5rem
  }

  h1 span {
    font-size: 3rem
  }

  h1 span strong {
    font-size: 2.5rem;
    position: relative;
    top: 10px;
	  line-height: 2.5rem;
  }
  h1 .question1 strong {
    font-size: 2rem;
    position: relative;
    top: 5px
  }

  .btn {
    font-size: 1.5rem
  }
  .btn_final {
    font-size: 1.5rem
  }

  [step="1"] .btn {
    width: 90%;
  }

  [step="6"] .btn,
  [step="7"] .btn,
  [step="9"] .btn {
    width: 70%;
  }

  .mute-button {
    top: 10px;
    right: 10px
  }

  .es_bat {
    font-size: 16px;
    line-height: 40px;
  }

  .fr_bat {
    font-size: 20px;
    line-height: 40px;
  }

  .it_bat {
    font-size: 18px;
    line-height: 40px;
  }

  .de_bat {
    font-size: 18px;
    line-height: 40px;
  }

  .de_bat_2 {
    font-size: 30px;
    line-height: 40px;
  }
}

@media (max-width:420px) {
  [step="12"] .block {
    padding: 10px
  }
}

@media (max-width:360px) {
  h3 {
    margin-bottom: 0
  }

  h2 {
    font-size: 1.5rem;
    line-height: 1.125rem;
    font-weight: 400
  }

  .btn_wrp {
    margin-top: 20px
  }

  .btn {
    width: 90%;
    font-size: 1.25rem
  }

  .btn_final {
    width: 90%;
    font-size: 1.25rem
  }

  .btn::before {
    background-size: 12px auto
  }
  .btn_final::before {
    background-size: 12px auto
  }

  .act::before {
    background-size: 12px auto
  }

  .loader {
    margin: 40px auto 30px !important
  }
}

@media (max-width:320px) {
  h1 {
    font-size: 1.5rem;
    line-height: 2rem
  }

  h1 span {
    font-size: 2.4rem
  }

  h1 span strong {
    font-size: 2.4rem;
    top: 10px;
    line-height: 2.4rem;
  }
  h1 .question1 strong {
    font-size: 2rem;
    top: 5px
  }

  h3 {
    font-size: 1.5rem;
    line-height: 2rem
  }

  .parental {
    display: none
  }

  [step="11"] h4 {
    font-size: .75rem
  }
}

@media (max-height: 728px) and (orientation: landscape) {
  iframe {
    
  }

  .overlay {
    position: fixed
  }

  .parental {
    max-width: 75px
  }
}

@media (max-height: 720px) and (max-width: 767px) and (orientation: landscape) {
  .parental {
    display: none
  }

  .wrapper {
    padding: 15px 0
  }
}

@media only screen and (min-device-width: 320px) and (max-device-width: 812px) and (orientation: landscape) {
  iframe {
    
  }
}

@media (max-height: 1080px) and (orientation: landscape) {
  iframe {
    
  }
}

.loader {
  color: #fff;
  font-size: 40px;
  text-indent: -9999em;
  overflow: hidden;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  margin: 70px auto 30px;
  position: relative;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load6 1.7s infinite ease, round 1.7s infinite ease;
  animation: load6 1.7s infinite ease, round 1.7s infinite ease
}

@-webkit-keyframes load6 {
  0% {
    box-shadow: 0 -.83em 0 -0.4em, 0 -.83em 0 -0.42em, 0 -.83em 0 -0.44em, 0 -.83em 0 -0.46em, 0 -.83em 0 -.477em
  }

  5%,
  95% {
    box-shadow: 0 -.83em 0 -0.4em, 0 -.83em 0 -0.42em, 0 -.83em 0 -0.44em, 0 -.83em 0 -0.46em, 0 -.83em 0 -.477em
  }

  10%,
  59% {
    box-shadow: 0 -.83em 0 -0.4em, -.087em -.825em 0 -0.42em, -.173em -.812em 0 -0.44em, -.256em -.789em 0 -0.46em, -.297em -.775em 0 -.477em
  }

  20% {
    box-shadow: 0 -.83em 0 -0.4em, -.338em -.758em 0 -0.42em, -.555em -.617em 0 -0.44em, -.671em -.488em 0 -0.46em, -.749em -.34em 0 -.477em
  }

  38% {
    box-shadow: 0 -.83em 0 -0.4em, -.377em -.74em 0 -0.42em, -.645em -.522em 0 -0.44em, -.775em -.297em 0 -0.46em, -.82em -.09em 0 -.477em
  }

  100% {
    box-shadow: 0 -.83em 0 -0.4em, 0 -.83em 0 -0.42em, 0 -.83em 0 -0.44em, 0 -.83em 0 -0.46em, 0 -.83em 0 -.477em
  }
}

@keyframes load6 {
  0% {
    box-shadow: 0 -.83em 0 -0.4em, 0 -.83em 0 -0.42em, 0 -.83em 0 -0.44em, 0 -.83em 0 -0.46em, 0 -.83em 0 -.477em
  }

  5%,
  95% {
    box-shadow: 0 -.83em 0 -0.4em, 0 -.83em 0 -0.42em, 0 -.83em 0 -0.44em, 0 -.83em 0 -0.46em, 0 -.83em 0 -.477em
  }

  10%,
  59% {
    box-shadow: 0 -.83em 0 -0.4em, -.087em -.825em 0 -0.42em, -.173em -.812em 0 -0.44em, -.256em -.789em 0 -0.46em, -.297em -.775em 0 -.477em
  }

  20% {
    box-shadow: 0 -.83em 0 -0.4em, -.338em -.758em 0 -0.42em, -.555em -.617em 0 -0.44em, -.671em -.488em 0 -0.46em, -.749em -.34em 0 -.477em
  }

  38% {
    box-shadow: 0 -.83em 0 -0.4em, -.377em -.74em 0 -0.42em, -.645em -.522em 0 -0.44em, -.775em -.297em 0 -0.46em, -.82em -.09em 0 -.477em
  }

  100% {
    box-shadow: 0 -.83em 0 -0.4em, 0 -.83em 0 -0.42em, 0 -.83em 0 -0.44em, 0 -.83em 0 -0.46em, 0 -.83em 0 -.477em
  }
}

@-webkit-keyframes round {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg)
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}

@keyframes round {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg)
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}

.trnsIn {
  -webkit-transform: none !important;
  display: block !important
}

.trns {
  -webkit-transform: none !important;
  display: none !important
}

[step="10"] .btn {
  width: 90%
}

.wrapper {
  grid-template-rows: 1fr
}

footer {
  text-align: center;
  font-size: 10px;
  padding: 10px
}

footer a {
  color: #fff;
  text-decoration: underline
}

.step-item[step="11"],
.step-item[step="12"] {
  padding-top: 10px
}

.step-item[step="12"] {
  padding-top: 10px;
  padding: 0;
  width: 100%;
}

@media only screen and (max-width:1024px) {
  .mute-button:hover {
    background: #000
  }
}

@media (max-width:480px) {
  .parental {
    bottom: 10px;
    left: 10px;
    max-width: 75px
  }

  h1 {
    font-size: 1.5rem;
    line-height: 2rem
  }

  h1 span {
    font-size: 3rem
  }

  h1 span strong {
    font-size: 2.5rem;
    position: relative;
    top: 10px;
	  line-height: 2.5rem;
  }
  h1 .question1 strong {
    font-size: 2rem;
    position: relative;
    top: 5px
  }

  .btn {
    font-size: 1.5rem
  }
  .btn_final {
    font-size: 1.5rem
  }

  [step="1"] .btn {
    width: 90%;
  }

  [step="6"] .btn,
  [step="7"] .btn,
  [step="9"] .btn {
    width: 70%;
  }

  .mute-button {
    top: 10px;
    right: 10px
  }

  .es_bat {
    font-size: 16px;
    line-height: 40px;
  }

  .fr_bat {
    font-size: 20px;
    line-height: 40px;
  }

  .it_bat {
    font-size: 18px;
    line-height: 40px;
  }

  .de_bat {
    font-size: 18px;
    line-height: 40px;
  }

  .de_bat_2 {
    font-size: 30px;
    line-height: 40px;
  }
}

@media (max-width:420px) {
  [step="12"] .block {
    padding: 10px
  }
}

@media (max-width:360px) {
  h3 {
    margin-bottom: 0
  }

  h2 {
    font-size: 1.5rem;
    line-height: 1.5rem;
    font-weight: 400
  }

  .btn_wrp {
    margin-top: 20px
  }

  .btn {
    width: 90%;
    font-size: 1.5rem
  }
  .btn_final {
    width: 90%;
    font-size: 1.5rem
  }

  .btn::before {
    background-size: 12px auto
  }
  .btn_final::before {
    background-size: 12px auto
  }

  .act::before {
    background-size: 12px auto
  }

  .loader {
    margin: 40px auto 30px !important
  }
}

@media (max-width:320px) {
  h1 {
    font-size: 1.5rem;
    line-height: 1.5rem;
  }

  h1 span {
    font-size: 2.4rem
  }

  h1 span strong {
    font-size: 2.4rem;
    top: 10px;
    line-height: 2.4rem;
  }
  h1 .question1 strong {
    font-size: 2rem;
    top: 5px
  }

  h3 {
    font-size: 1.5rem;
    line-height: 2rem
  }

  .parental {
    display: none
  }

  [step="11"] h4 {
    font-size: .75rem
  }
}

@media (max-height: 728px) and (orientation: landscape) {
  iframe {
    
  }

  .overlay {
    position: fixed
  }

  .parental {
    max-width: 75px
  }
}

@media (max-height: 720px) and (max-width: 767px) and (orientation: landscape) {
  .parental {
    display: none
  }

  .wrapper {
    padding: 15px 0
  }
}

@media only screen and (min-device-width: 320px) and (max-device-width: 812px) and (orientation: landscape) {
  iframe {
    
  }
}

@media (max-height: 1080px) and (orientation: landscape) {
  iframe {
    
  }
}

.loader {
  color: #fff;
  font-size: 40px;
  text-indent: -9999em;
  overflow: hidden;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  margin: 70px auto 30px;
  position: relative;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load6 1.7s infinite ease, round 1.7s infinite ease;
  animation: load6 1.7s infinite ease, round 1.7s infinite ease
}

@-webkit-keyframes load6 {
  0% {
    box-shadow: 0 -.83em 0 -0.4em, 0 -.83em 0 -0.42em, 0 -.83em 0 -0.44em, 0 -.83em 0 -0.46em, 0 -.83em 0 -.477em
  }

  5%,
  95% {
    box-shadow: 0 -.83em 0 -0.4em, 0 -.83em 0 -0.42em, 0 -.83em 0 -0.44em, 0 -.83em 0 -0.46em, 0 -.83em 0 -.477em
  }

  10%,
  59% {
    box-shadow: 0 -.83em 0 -0.4em, -.087em -.825em 0 -0.42em, -.173em -.812em 0 -0.44em, -.256em -.789em 0 -0.46em, -.297em -.775em 0 -.477em
  }

  20% {
    box-shadow: 0 -.83em 0 -0.4em, -.338em -.758em 0 -0.42em, -.555em -.617em 0 -0.44em, -.671em -.488em 0 -0.46em, -.749em -.34em 0 -.477em
  }

  38% {
    box-shadow: 0 -.83em 0 -0.4em, -.377em -.74em 0 -0.42em, -.645em -.522em 0 -0.44em, -.775em -.297em 0 -0.46em, -.82em -.09em 0 -.477em
  }

  100% {
    box-shadow: 0 -.83em 0 -0.4em, 0 -.83em 0 -0.42em, 0 -.83em 0 -0.44em, 0 -.83em 0 -0.46em, 0 -.83em 0 -.477em
  }
}

@keyframes load6 {
  0% {
    box-shadow: 0 -.83em 0 -0.4em, 0 -.83em 0 -0.42em, 0 -.83em 0 -0.44em, 0 -.83em 0 -0.46em, 0 -.83em 0 -.477em
  }

  5%,
  95% {
    box-shadow: 0 -.83em 0 -0.4em, 0 -.83em 0 -0.42em, 0 -.83em 0 -0.44em, 0 -.83em 0 -0.46em, 0 -.83em 0 -.477em
  }

  10%,
  59% {
    box-shadow: 0 -.83em 0 -0.4em, -.087em -.825em 0 -0.42em, -.173em -.812em 0 -0.44em, -.256em -.789em 0 -0.46em, -.297em -.775em 0 -.477em
  }

  20% {
    box-shadow: 0 -.83em 0 -0.4em, -.338em -.758em 0 -0.42em, -.555em -.617em 0 -0.44em, -.671em -.488em 0 -0.46em, -.749em -.34em 0 -.477em
  }

  38% {
    box-shadow: 0 -.83em 0 -0.4em, -.377em -.74em 0 -0.42em, -.645em -.522em 0 -0.44em, -.775em -.297em 0 -0.46em, -.82em -.09em 0 -.477em
  }

  100% {
    box-shadow: 0 -.83em 0 -0.4em, 0 -.83em 0 -0.42em, 0 -.83em 0 -0.44em, 0 -.83em 0 -0.46em, 0 -.83em 0 -.477em
  }
}

@-webkit-keyframes round {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg)
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}

@keyframes round {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg)
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}

.trnsIn {
  transform: none !important;
  display: block !important
}

.trns {
  transform: none !important;
  display: none !important
}

.block {
  border: 1px solid rgba(255, 255, 255, 0.4);
  background: linear-gradient(to right, rgba(36, 36, 62, 0.4), rgba(48, 43, 99, 0.4), rgba(15, 12, 41, 0.4));
  background: linear-gradient(to right, rgba(36, 36, 62, 0.4), rgba(48, 43, 99, 0.4), rgba(15, 12, 41, 0.4));
}

.block:before,
.block:after {
  display: none;
}

.bgvideo {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  z-index: -100;
}

.bgvideo video.desktop {
  width: 100%;
  height: auto;
  object-fit: fill;
}

@media handheld,
only screen and (orientation: landscape) {
  .bgvideo video.desktop {
    display: block !important;
  }

  .bgvideo video.mobile {
    display: none !important;
  }
}

@media handheld,
only screen and (orientation: portrait) {
  .bgvideo video.desktop {
    display: none !important;
  }

  .bgvideo video.mobile {
    display: block !important;
  }
}

input[type="submit"] {
  width: 70% !important;
  margin: 1% !important;
  display: inline-block !important;
  color: #fff !important;
  font-size: 1.5rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  padding: 10px 15px 10px 0 !important;
  cursor: pointer !important;
  letter-spacing: -1px !important;
  position: relative !important;
  z-index: 0 !important;
  overflow: visible !important;
  -webkit-transform: skewX(-15deg) !important;
  -ms-transform: skewX(-15deg) !important;
  transform: skewX(-15deg) !important;
  -webkit-border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  border-radius: 0 !important;
  border: none !important;
  background: #00f0ff !important;
  font-style: normal !important;
}

input[type="submit"]::before {
  content: "" !important;
  width: 100% !important;
  background-size: 20px auto !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  height: 100% !important;
  z-index: -1 !important;
  -webkit-transform: skewX(-15deg) !important;
  -ms-transform: skewX(-15deg) !important;
  transform: skewX(-15deg) !important;
  transition: background .2s ease !important;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.75) !important;
  -moz-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.75) !important;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.75) !important;
}

input[type="submit"]:hover::before {
  background-size: 20px auto !important;
}

input[type="submit"]::before {
  background-size: 20px auto !important;
}

.text-margin-top{
	margin-top: 1rem;
}

/* =====================================================================
   DESIGN REFRESH — glass UI · pink→violet palette · Outfit + Inter
   ===================================================================== */
:root{
  --ink:#f7f4ff;
  --muted:rgba(247,244,255,.72);
  --card-bg:rgba(16,12,32,.40);
  --card-brd:rgba(255,255,255,.16);
  --card-hi:rgba(255,255,255,.26);
  --grad-primary:linear-gradient(135deg,#ff4d8d 0%,#a24bff 100%);
  --grad-act:linear-gradient(135deg,#ff9a5b 0%,#ff4d8d 100%);
  --chev:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 5l7 7-7 7'/%3E%3C/svg%3E");
}

body{
  font-family:'Inter',system-ui,-apple-system,"Segoe UI",sans-serif !important;
  color:var(--ink) !important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* richer overlay so text stays legible over the video */
.overlay{
  background:radial-gradient(130% 100% at 50% 0%,rgba(10,6,24,.22) 0%,rgba(6,3,16,.60) 100%) !important;
}

/* ---------- Glass card ---------- */
.block{
  position:relative;
  background:var(--card-bg) !important;
  -webkit-backdrop-filter:blur(3px) saturate(140%);
  backdrop-filter:blur(3px) saturate(140%);
  border:1px solid var(--card-brd) !important;
  border-radius:26px !important;
  padding:46px 30px !important;
  box-shadow:0 28px 80px rgba(0,0,0,.48),inset 0 1px 0 var(--card-hi) !important;
}
.block:before,.block:after{ display:none !important; }

/* ---------- Typography ---------- */
h1,h2,h3,h4{ font-style:normal !important; }
h1{
  font-family:'Inter',sans-serif !important;
  font-weight:500 !important;
  font-size:1.42rem !important;
  line-height:1.5 !important;
  letter-spacing:-.01em !important;
  color:var(--ink) !important;
  margin-bottom:.4rem !important;
  text-shadow:0 2px 18px rgba(0,0,0,.5) !important;
}
h1 span{ display:block; }
h1 span strong{
  font-family:'Outfit',sans-serif !important;
  display:inline-block;
  font-weight:800 !important;
  font-size:2.9rem !important;
  letter-spacing:-.015em !important;
  line-height:1.05 !important;
  text-transform:uppercase;
  top:0 !important;
  margin:.15rem 0 .5rem !important;
  background:linear-gradient(90deg,#ff8fb8 0%,#c79bff 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
  color:#ff8fb8;
}
h3{
  font-family:'Outfit',sans-serif !important;
  font-weight:600 !important;
  letter-spacing:.26em !important;
  color:var(--muted) !important;
}
[step="11"] h4{
  font-family:'Inter',sans-serif !important;
  color:var(--muted) !important;
}

/* ---------- Buttons ---------- */
.btn,.btn_final{
  font-family:'Outfit',sans-serif !important;
  font-weight:700 !important;
  font-size:1.3rem !important;
  letter-spacing:.005em !important;
  text-transform:uppercase;
  color:#fff !important;
  margin:8px auto !important;
  padding:16px 48px 16px 24px !important;
  border-radius:16px !important;
  background:var(--grad-primary) !important;
  box-shadow:0 12px 28px rgba(162,75,255,.32),inset 0 1px 0 rgba(255,255,255,.28) !important;
  -webkit-transform:none !important;
  -ms-transform:none !important;
  transform:none !important;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease !important;
  overflow:visible;
}
.btn.act,.btn_final.act,.act{
  background:var(--grad-act) !important;
  box-shadow:0 12px 28px rgba(255,77,141,.32),inset 0 1px 0 rgba(255,255,255,.28) !important;
}
.btn:hover,.btn_final:hover,.act:hover{
  -webkit-transform:translateY(-2px) !important;
  transform:translateY(-2px) !important;
  filter:brightness(1.06);
  box-shadow:0 18px 38px rgba(162,75,255,.42),inset 0 1px 0 rgba(255,255,255,.32) !important;
}
.btn:active,.btn_final:active,.act:active{
  -webkit-transform:translateY(0) !important;
  transform:translateY(0) !important;
}
/* crisp vector chevron, vertically centered */
.btn::before,.btn_final::before,.act::before{
  content:"" !important;
  position:absolute !important;
  top:50% !important; right:18px !important; left:auto !important;
  width:22px !important; height:22px !important;
  background:var(--chev) center/22px 22px no-repeat !important;
  -webkit-transform:translateY(-50%) !important;
  transform:translateY(-50%) !important;
  box-shadow:none !important;
  opacity:.95;
  transition:right .18s ease;
}
.btn:hover::before,.btn_final:hover::before,.act:hover::before{ right:13px !important; }

/* ---------- Loader spinner tint ---------- */
.loader{ color:#ff6aa0 !important; }
