﻿/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
button,hr,input{overflow:visible}progress,sub,sup{vertical-align:baseline}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}details,main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{padding:.35em .75em .625em}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}[hidden],template{display:none}

:root {
  --gap: clamp(.5rem, 2vh, 1.5rem);
  --box-min-height: 10rem;
  --box-max-height: 28.2rem;
  --box-height: max( calc((100vh - 10rem) / 2), var(--box-min-height));
}
@media screen and (orientation:landscape) {
  :root {
    --gap: clamp(.5rem, 2vh, 1.5rem);
    --box-min-height: 10rem;
  }
}

body {
  font-family: "Nunito Sans", serif;
  font-weight: bold;
  font-style: normal;
  font-size: 16px;
  background: #150F5C;
}
.has-modal {
  overflow: hidden;
}

.wrapper {
  position: relative;
}

.header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background: rgba(8, 22, 38, 0.6);
  backdrop-filter: blur(13.15px);
  z-index: 10;
}
.header .container {
  max-width: 80rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  padding: .75rem .75rem .75rem 0;
}

/* 672px */
@media (max-width: 42rem) {
  .header {
    background: none;
    backdrop-filter: none;
  }
}

.logo .img {
  max-height: 2.5rem;
}

.header .buttons {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: .5rem;
}

.button {
  display: inline-block;
  background: #149E33;
  border-radius: .75rem;
  text-decoration: none;
}
.button-text {
  display: inline-block;
  font-weight: 800;
  font-size: .875rem;
  line-height: 2.5rem;
  color: #fff;
  padding: 0 1.5rem;
}
.button:hover {
  background: #0b7c24;
}
.button:hover .button-text {
  color: #fff;
}

.button-inverted {
  background: rgba(255,255,255, .1);
}
.button-inverted .button-text {
  color: rgba(255,255,255, .75);
}
.button-inverted:hover {
  background: rgba(255,255,255, .2);
}
.button-inverted:hover .button-text {
  color: #fff;
}

.content {
  position: relative;
  overflow: hidden;
}
.content .container {
  position: relative;
  min-height: 90vh;
  display: flex;
  flex-direction: column;
  z-index: 2;
}

/* 1440px */
@media (max-width: 90rem) {
  .content .container {
    min-height: 100vh;
  }
}

.banner {
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 5rem 0 1rem 0;

}
.banner .inner {
  position: relative;
  max-width: 80rem;
  display: flex;
  flex-direction: column;
  gap: var(--gap);
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  flex: 1;
  z-index: 2;
}

.bg,
.bg-left,
.bg-right,
.bg-center {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('../image/bg-bottom-left.webp');
  background-repeat: no-repeat;
  z-index: 1;
}
.bg-left {
  background-position: bottom left;
  background-size: calc(100vw - 85%);
}
.bg-right {
  background-image: url('../image/bg-top-right.webp');
  background-position: top 5rem right 0;
  background-size: calc(100vw - 85%);
}
.bg-center {
  display: none;
  background-image: url('../image/bg-bottom.webp');
  background-position: bottom -3rem center;
  background-size: 100%;
}
.bg {
  background: radial-gradient(42.03% 42.03% at 50% 22.69%, #1F11C7 0%, #150F5D 100%);
}

/* 1440px */
@media (max-width: 90rem) {
  .bg-left {
    background-size: calc(100vw - 80%);
  }
  .bg-right {
    background-size: calc(100vw - 80%);
  }
  .bg {
    background: radial-gradient(39.42% 30.13% at 50% 22.69%, #1F11C7 0%, #150F5D 100%);
  }
}
/* 672px */
@media (max-width: 42rem) {
  .bg-left,
  .bg-right {
    display: none;
  }
  .bg-center {
    display: inline-block;
  }
  .bg {
    background: radial-gradient(118.09% 31.96% at 50% 22.69%, #1F11C7 0%, #150F5D 100%);
  }
  .button-text {
    padding: 0 .5rem;
  }
}

.visuals {
  position: relative;
  text-align: center;
  max-height: var(--box-height);
}

.art {
  position: relative;
  max-width: 100%;
  max-height: min( var(--box-height), var(--box-max-height));
  z-index: 5;
}

.visual {
  position: absolute;
  display: inline-block;
  z-index: 6;
}

.slot {
  top: 33%;
  left: 34%;
  max-width: 41%;
}

.card-left {
  bottom: 11.5%;
  left: 1%;
  max-width: 20%;
  animation: card-left 5s ease-in-out infinite;
  animation-delay: 1.5s;
}
@keyframes card-left {
  5%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-1rem) rotate(5deg);
  }
}

.card-right {
  bottom: 34%;
  right: 1%;
  max-width: 16%;
  animation: card-right 4.5s ease-in-out infinite;
}
@keyframes card-right {
  5%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-.5rem) rotate(-3deg);
  }
}

.btc {
  top: 3%;
  left: 45%;
  max-width: 14%;
  animation: btc 4.5s ease-in-out infinite;
  animation-delay: 1s;
}
@keyframes btc {
  5%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(1rem) rotate(7deg);
  }
}

.ltc {
  top: 51%;
  left: 26%;
  max-width: 8%;
  animation: ltc 4.5s ease-in-out infinite;
  animation-delay: .5s;
}
@keyframes ltc {
  5%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-.5rem) rotate(-3deg);
  }
}

.eth {
  bottom: 17.5%;
  right: 18%;
  max-width: 10%;
  animation: eth 6s ease-in-out infinite;
  animation-delay: .75s;
}
@keyframes eth {
  5%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-1rem) rotate(5deg);
  }
}

.texts {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--gap);
  max-height: var(--box-height);
  text-align: center;
  padding: 0 1rem;
  z-index: 5;
  width: 100%;
}

.texts .text-heading {
  font-weight: 600;
  font-size: min( clamp(1rem, 3.2vh, 2.2rem), 4vw);
  line-height: min( clamp(1.5rem, 3.5vh, 3rem), 4.3vw);
  color: #fff;
}
.texts .text {
  font-weight: 800;
  font-size: min( clamp(2rem, 5vh, 3.5rem), 7vw);
  line-height: min( clamp(2.2rem, 5.5vh, 3.7rem), 7.3vw);
  color: #fff;
}
.texts .text span {
  color: #FFCB44;
}
.texts .text-extra {
  font-weight: 600;
  font-size: min( clamp(1rem, 2.8vh, 1.8rem), 3.5vw);
  line-height: min( clamp(1.5rem, 3.3vh, 2.2rem), 3.8vw);
  color: #FFCB44;
}
@media screen and (orientation:landscape) {

}

.banner .buttons{
  padding-top: 1rem;
}
.banner .button  {
  border-radius: 2rem;
}
.banner .button-text {
  font-weight: bold;
  font-size: 1.1875rem;
  line-height: 2.5rem;
  padding: .5rem 2rem;
}
.banner .button:hover {
  background: #0b7c24;
}
.banner .button-text:hover {
  color: #fff;
}

/* 672px */
@media (max-width: 42rem) {
  .banner .buttons, .terms .buttons {
    padding: 0;
  }
}


.terms .buttons{
  padding-top: 1rem;
}
.terms .button  {
  border-radius: 2rem;
}
.terms .button-text {
  font-weight: bold;
  font-size: 1.1875rem;
  line-height: 2.5rem;
  padding: .5rem 2rem;
}
.terms .button:hover {
  background: #0b7c24;
}
.terms .button-text:hover {
  color: #fff;
}

/* 672px */
@media (max-width: 42rem) {
  .terms .buttons, .terms .buttons {
    padding: 0;
  }
}


.terms li {
  margin-bottom: 16px;
}

.points {
  background: #081626;
  border-bottom: 1px solid rgba(33,40,63, .5);
}
.points .inner {
  max-width: 60rem;
  display: flex;
  margin: 0 auto;
}
.points-item {
  display: flex;
  gap: 1rem;
  justify-content: center;
  align-items: center;
  flex: 1;
  flex-flow: nowrap;
  padding: .5rem .25rem;
}
.points-item + .points-item {
  border-left: 1px solid rgba(33,40,63, .5);
}
.points .img {
  max-height: 4rem;
}
.points .text {
  font-size: 1rem;
  line-height: 1rem;
  color: #fff;
}

/* 672px */
@media (max-width: 42rem) {
  .points .inner {
    padding: 1rem 0;
  }
  .points-item {
    gap: .5rem;
    padding: 0 .25rem;
  }
  .points .img {
    max-height: 2.5rem;
  }
  .points .text {
    width: 100%;
    height: 100%;
    text-align: center;
    font-size: .875rem;
  }
}

/* 1024px */
@media (max-width: 64rem) {
  .points .text {
    width: 100%;
    height: 100%;
    text-align: center;
    font-size: .875rem;
  }
  .points-item {
    flex-flow: wrap;
  }
}

.footer {
  background: #081626;
  padding-top: 2.5rem;
}
.footer .container {
  max-width: 60rem;
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  padding: 0 1.5rem;
  margin: 0 auto;
}

.achievements {
  display: flex;
  gap: 1.5rem;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
.achievements .img {
  max-height: 2.5rem;
}

.description .text {
  font-size: .75rem;
  line-height: 1.5rem;
  text-align: center;
  color: rgba(196,198,209, .5);
}

.copyright {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.copyright .text {
  font-size: .75rem;
  line-height: 1.5rem;
  text-align: center;
  color: rgba(196,198,209, .5);
}

.responsibility {
  display: flex;
  gap: .5rem;
  justify-content: center;
  align-items: center;
}
.responsibility .text {
  font-size: .75rem;
  line-height: 2rem;
  color: rgba(255,255,255, .8);
}
.responsibility .img {
  max-height: 2.5rem;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 100vh;
  background: rgba(4,17,31, .8);
  opacity: 1;
  z-index: 100;
}
.modal.hidden {
  display: none;
  opacity: 0;
  transition: opacity 1.5s ease-in-out;
}
.modal .inner {
  max-width: 30rem;
  padding: 1.5rem;
  margin: 0 auto;
  background: #162637;
  border-radius: 1rem;
}

/* 672px */
@media (max-width: 42rem) {
  .modal .inner {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 3rem);
    border-radius: 0;
  }
  .achievements .img {
  max-height: 2rem;
  }
  .footer {
  padding-top: 1rem;
  }
  .banner .button-text {
  font-size: 1rem;
  line-height: 1rem;
  padding: 1rem 1rem;
  }
  .terms .button-text {
  font-size: 1rem;
  line-height: 1rem;
  padding: 1rem 1rem;
  }
}

.modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 1.5rem;
}
.modal-title {
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 2rem;
  color: #fff;
  padding: 0 .25rem;
  margin: 0;
}
.modal-close {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 100%;
  background: rgba(255,255,255, .1);
  cursor: pointer;
}
.modal-close:hover {
  background: #0b7c24;
}
.modal-body {
  overflow-y: auto;
}