.preload * {
-webkit-transition: none !important;
transition: none !important;
-webkit-animation: none !important;
animation: none !important;
opacity: 0;
}

html,
body {
position: relative;
width: 100%;
height: 100%;
margin: 0;
padding: 0;
background: #000000;
overflow: hidden;
}

body {
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
-webkit-tap-highlight-color: transparent;
}

::-moz-focus-inner {
border: 0;
}

:focus {
outline: none;
}

html div,
html img,
body div,
body img {
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}

html ::-moz-focus-inner,
body ::-moz-focus-inner {
border: 0;
}

html :focus,
body :focus {
outline: none;
}

div {
background-size: contain;
background-repeat: no-repeat;
background-position: center;
will-change: opacity;
-webkit-transition: opacity 1.4s ease-in-out;
transition: opacity 1.4s ease-in-out;
}

.alphanull {
opacity: 0;
}

.container {
position: relative;
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
width: 100%;
min-width: 1000px;
height: 100%;
min-height: 450px;
background-size: cover;
background-image: url("../img/bg.svg");
cursor: pointer;
opacity: 0;
transition-duration: 1.8s;
}

#al, #ar {
position: absolute;
width: 100%;
height: 12px;
top: 3px;
letter-spacing: 0.3px;
font-family: Arial, sans-serif;
font-weight: 300;
font-size: 11px;
color: rgba(255, 255, 255, 0.5);
}

#al {
padding-left: 3px;
text-align: left;
}

#ar {
margin-left: -3px;
text-align: right;
}

.svl,
.svr {
position: absolute;
width: calc(50% - (1000px / 2));
height: 100%;
min-height: 600px;
background-size: cover;
background-position: center;
opacity: 0;
}

.svl {
background-image: url("../img/l.webp");
}

.svr {
right: 0;
background-image: url("../img/r.webp");
}

.scrolled .svr,
.scrolled .svl {
opacity: 1;
}

#char {
position: absolute;
width: 800px;
height: 133%;
top: -5%;
left: 50%;
-webkit-transform: translateX(calc(-50% + 38px)) scale(1);
transform: translateX(calc(-50% + 38px)) scale(1);
opacity: 0;
}

#char.animate {
-webkit-animation: charZoom 0.7s ease-out forwards;
animation: charZoom 0.7s ease-out forwards;
}

@keyframes charZoom {
0% {
opacity: 0;
transform: translateX(calc(-50% + 38px)) scale(0.75);
}
50% {
opacity: 1;
transform: translateX(calc(-50% + 38px)) scale(1.1);
}
100% {
opacity: 1;
transform: translateX(calc(-50% + 38px)) scale(1);
}
}

@-webkit-keyframes charZoom {
0% {
opacity: 0;
-webkit-transform: translateX(calc(-50% + 38px)) scale(0.75);
}
50% {
opacity: 1;
-webkit-transform: translateX(calc(-50% + 38px)) scale(1.1);
}
100% {
opacity: 1;
-webkit-transform: translateX(calc(-50% + 38px)) scale(1);
}
}

.safezone-title {
position: absolute;
left: -7.55%;
top: 40.03%;
width: 104.15%;
height: 21.14%;
pointer-events: none;
}

.info {
position: absolute;
top: 0;
width: 100%;
height: 100%;
background-position: bottom;
opacity: 0;
}

.info-top {
background-position: top;
}

#info-l {
background-image: url("../img/l-info.webp");
}

#info-r {
background-image: url("../img/r-info.webp");
}

#info-l-top {
background-image: url("../img/l-info-top.webp");
}

#info-r-top {
background-image: url("../img/r-info-top.webp");
}

.scrolled #char {
opacity: 0 !important;
}

.scrolled .info {
transition-delay: 0.5s;
opacity: 1 !important;
}

.smartphone {
position: absolute;
top: 0;
width: 100%;
height: 100%;
background-position: bottom;
background-size: contain;
background-repeat: no-repeat;
opacity: 0;
z-index: 10;
animation: floating 3s ease-in-out infinite;
}

#smartphone-r {
background-image: url("../img/r-smartphone.webp");
}

@keyframes floating {
0%, 100% {
transform: translateY(0px);
}
50% {
transform: translateY(-15px);
}
}

.scrolled .smartphone {
transition-delay: 0.5s;
transition-duration: 0.4s;
opacity: 1 !important;
}

#action {
width: 100%;
height: 100%;
}

.safezone {
position: absolute;
width: 100%;
min-width: 1000px;
height: 88%;
opacity: 0;
}

.scrolled .safezone {
opacity: 0 !important;
}

.active .safezone {
opacity: 0;
visibility: hidden;
}

.banner {
position: absolute;
left: 50%;
top: 0;
width: 1000px;
height: auto;
aspect-ratio: 1994 / 516;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
background-image: url("../img/banner.webp");
background-position: center top;
background-size: contain;
background-repeat: no-repeat;
opacity: 0;
-webkit-transition: opacity 0.6s ease-out;
transition: opacity 0.6s ease-out;
}

.banner.animate {
opacity: 1;
}

.buttons {
position: absolute;
left: 50%;
top: calc(100% - 100px);
width: 1000px;
height: 100px;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
font-size: 0;
text-align: center;
opacity: 0;
}

.buttons.animate {
opacity: 1;
}

.buttons .button:first-child {
margin-right: 1%;
}

.buttons .button:last-child {
margin-left: 0%;
}

.buttons .button:hover {
-webkit-filter: brightness(1.2);
filter: url('data:image/svg+xml;charset=utf-8,#filter');
filter: brightness(1.2);
}

.video {
position: absolute;
top: 44%;
left: 50%;
min-width: 0;
min-height: 0;
max-width: 70vw;
max-height: 80vh;
aspect-ratio:16/9;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
opacity: 0;
visibility: hidden;
}

.active .video {
opacity: 1;
visibility: visible;
}

.maximize {
position: absolute !important;
top: 20px !important;
right: 10px !important;
width: 50px;
height: 50px;
border-radius: 50%;
cursor: pointer;
z-index: 9999;
opacity: 0;
background: url("../img/maximize-btn.png") no-repeat center/73%;
background-color: rgba(0, 0, 0, 0);
}

.maximize.animate {
-webkit-animation: fadeIn 0.6s ease-out forwards;
animation: fadeIn 0.6s ease-out forwards;
animation-delay: 1.6s;
}

.maximize:hover {
opacity: 1 !important;
}

.scrolled .maximize {
opacity: 0 !important;
visibility: hidden;
}

.active .maximize {
opacity: 0 !important;
visibility: hidden;
}

.close {
position: absolute !important;
top: 20px !important;
right: 10px !important;
width: 50px;
height: 50px;
border-radius: 50%;
cursor: pointer;
z-index: 9999;
opacity: 0;
visibility: hidden;
}

@keyframes fadeIn {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}

@-webkit-keyframes fadeIn {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}

.close.dark {
background: url("../img/close-dark.svg") no-repeat center/73%;
background-color: rgba(255, 255, 255, 0.5);
}

.close.light {
background: url("../img/close-btn.png") no-repeat center/73%;
background-color: rgba(255, 255, 255, 0.5);
}

.scrolled .close {
opacity: 0 !important;
visibility: hidden;
}

.active .close {
opacity: 0.6 !important;
visibility: visible;
}

.close:hover {
opacity: 1 !important;
}

.darken {
position: absolute;
inset: 0;
margin: auto;
opacity: 0;
visibility: hidden;
background: #000;
-webkit-transition: 0.5s;
transition: 0.5s;
}

.active .darken {
opacity: 0.8;
visibility: visible;
}

.site {
position: absolute;
left: 50%;
bottom: 0;
width: 1000px;
height: 12%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
background: rgba(222, 222, 222, 1);
}

video::-webkit-media-controls-fullscreen-button {
display: none !important;
}

video::-internal-media-controls-overflow-menu-list {
display: none !important;
}
