@font-face {
    src: url("../fonts/ClashDisplay-Variable.woff2") format("woff2"), url("../fonts/ClashDisplay-Variable.woff") format("woff"), url("../fonts/ClashDisplay-Variable.ttf") format("truetype");
    font-weight: 200 700;
    font-display: swap;
    font-style: normal;
}

@font-face {
    font-family: "Clash Display";
    src: url("../fonts/ClashDisplay-Extralight.woff2") format("woff2"), url("../fonts/ClashDisplay-Extralight.woff") format("woff"), url("../fonts/ClashDisplay-Extralight.ttf") format("truetype");
    font-weight: 200;
    font-display: swap;
    font-style: normal;
}

@font-face {
    font-family: "Clash Display";
    src: url("../fonts/ClashDisplay-Light.woff2") format("woff2"), url("../fonts/ClashDisplay-Light.woff") format("woff"), url("../fonts/ClashDisplay-Light.ttf") format("truetype");
    font-weight: 300;
    font-display: swap;
    font-style: normal;
}

@font-face {
    font-family: "Clash Display";
    src: url("../fonts/ClashDisplay-Regular.woff2") format("woff2"), url("../fonts/ClashDisplay-Regular.woff") format("woff"), url("../fonts/ClashDisplay-Regular.ttf") format("truetype");
    font-weight: 400;
    font-display: swap;
    font-style: normal;
}

@font-face {
    font-family: "Clash Display";
    src: url("../fonts/ClashDisplay-Medium.woff2") format("woff2"), url("../fonts/ClashDisplay-Medium.woff") format("woff"), url("../fonts/ClashDisplay-Medium.ttf") format("truetype");
    font-weight: 500;
    font-display: swap;
    font-style: normal;
}

@font-face {
    font-family: "Clash Display";
    src: url("../fonts/ClashDisplay-Semibold.woff2") format("woff2"), url("../fonts/ClashDisplay-Semibold.woff") format("woff"), url("../fonts/ClashDisplay-Semibold.ttf") format("truetype");
    font-weight: 600;
    font-display: swap;
    font-style: normal;
}

@font-face {
    font-family: "Clash Display";
    src: url("../fonts/ClashDisplay-Bold.woff2") format("woff2"), url("../fonts/ClashDisplay-Bold.woff") format("woff"), url("../fonts/ClashDisplay-Bold.ttf") format("truetype");
    font-weight: 700;
    font-display: swap;
    font-style: normal;
}

:root {
    --brand: #2ed2a6;
    --brand_light: #FFD98E;
    --neutral_0: #FFFFFF;
    --neutral_10: #EFE3CD;
    --neutral_20: #DCD1BD;
    --neutral_90: #2C2C2C;
    --neutral_100: #000000;
    --links: #3F83AE;
    --opacity_2: rgba(0, 0, 0, 0.02);
    --opacity_10: rgba(0, 0, 0, 0.1);
    --opacity_20: rgba(0, 0, 0, 0.2);
}

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
figure,
footer,
header,
hgroup,
nav,
section,
menu,
time,
mark,
audio,
video,
canvas {
    margin: 0px;
    padding: 0px;
    border: 0px;
    outline: none;
}

html,
body {
    min-height: 100%;
    text-size-adjust: 100%;
    outline: none;
}

body,
input,
textarea,
button {
    font: 400 1rem "Clash Display";
    -webkit-font-smoothing: antialiased;
    color: var(--neutral_90);
}

body {
    overflow-x: hidden;
    background-color: var(--neutral_10);
}

a {
    text-decoration: none;
}

ul,
ol,
dl {
    list-style: none;
}

button {
    padding: 0px;
    border: 0px;
    background: rgba(0, 0, 0, 0);
}

img {
    display: block;
}

em {
    font-style: normal;
}

::selection {
    background: var(--brand);
    color: var(--neutral_100);
    text-shadow: none;
}

::-webkit-input-placeholder {
    color: var(--brand);
}

::-webkit-scrollbar {
    width: 0.75rem;
    background-color: rgba(0, 0, 0, 0);
}

::-webkit-scrollbar-track {
    border-radius: 0.25rem;
}

::-webkit-scrollbar-thumb {
    border-radius: 0.5rem;
    background-color: var(--neutral_90);
    border-right: solid .25rem var(--neutral_10);
    background-clip: content-box;
}

::-webkit-scrollbar-button:start,
::-webkit-scrollbar-button:end {
    height: 1.5rem;
}

.app {
    width: 100%;
    height: inherit;
    max-width: 123.75rem;
    margin: 0px auto;
    padding-bottom: 10rem;
    background: url("../img/footer-ground.svg") center 101% / min(95vw, 1900px) no-repeat;
    overflow-x: hidden;
}

@media (max-width: 64rem) and (orientation: portrait) {
    .app {
        background-size: 220vw;
    }
}

@media (max-width: 40rem) {
    .app {
        background-size: 400vw;
    }
}

.main {
    width: 100%;
    position: relative;
}

.iframe_checkout>p button,
.about footer button {
    width: 2.5rem;
    height: 2.5rem;
    background-image: ;
    background-position-x: ;
    background-position-y: ;
    background-repeat: ;
    background-attachment: ;
    background-origin: ;
    background-clip: ;
    background-color: ;
    background-size: 2rem;
    border-radius: 100%;
    transition: transform 0.3s cubic-bezier(0.5, 0, 0, 1);
    position: relative;
}

.iframe_checkout>p button:hover,
.about footer button:hover {
    transform: scale(1.05);
}

.iframe_checkout>p button:hover em,
.about footer button:hover em {
    opacity: 1;
    visibility: visible;
}

.iframe_checkout>p button em,
.about footer button em {
    width: 30rem;
    background-color: var(--brand_light);
    border: solid .625rem var(--neutral_10);
    outline: solid .375rem var(--neutral_100);
    border-radius: 1.25rem;
    padding: 0px 1.25rem;
    font-size: 1.75rem;
    line-height: 2.5rem;
    color: var(--neutral_100);
    text-align: left;
    font-family: "Clash Display";
    font-weight: 600;
    position: absolute;
    bottom: 3rem;
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s cubic-bezier(0.5, 0, 0, 1);
}

* {}

#magicPointer {
    mix-blend-mode: difference;
    z-index: 999;
}

.hover-this>span {
    display: inline-block;
    transition: transform 0.1s linear;
}

.preloader {
    width: calc(-3rem + 100vw);
    max-width: calc(1980px - 3rem);
    height: calc(-3rem + 100dvh);
    min-height: 780px;
    background-color: var(--neutral_90);
    border-radius: 4rem;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(1.1);
    z-index: 10;
    overflow: hidden;
}

.preloader::after {
    content: "";
    width: 0px;
    height: 100%;
    border-left: dashed 1px var(--neutral_10);
    position: absolute;
    top: 0px;
    left: 50%;
    opacity: 0.3;
}

.preloader .v {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 15rem;
    z-index: 1;
}

.preloader .v path {
    fill: var(--neutral_10);
    stroke: var(--neutral_90);
}

.preloader .v::before,
.preloader .v::after {
    content: "";
    width: 0px;
    height: 125rem;
    border-left: dashed 1px var(--neutral_10);
    position: absolute;
    top: -58.1rem;
    left: 50%;
    opacity: 0.3;
}

.preloader .v::before {
    transform: rotate(60deg);
}

.preloader .v::after {
    transform: rotate(-60deg);
}

.preloader .v svg {
    width: 100%;
    height: auto;
    position: relative;
    z-index: 1;
}

.preloader .ellipse {
    z-index: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.5);
}

.preloader .ellipse path {
    stroke-width: 1;
    stroke-dasharray: 6;
    stroke: var(--neutral_10);
    opacity: 0.3;
}

.preloader .ellipse .ball1_intro {
    fill: var(--neutral_10);
}

.preloader #progress-bar-container {
    width: 80%;
    border: dashed 1px var(--neutral_20);
    position: absolute;
    bottom: 20%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    text-align: center;
    box-sizing: border-box;
    padding: 0.5rem;
    border-radius: 0.5rem;
}

.preloader #progress-bar-container #progress-bar {
    width: 0px;
    height: 0.5rem;
    border-radius: 1rem;
    margin: 0px auto;
    background-color: var(--brand);
    line-height: 6rem;
    color: var(--neutral_10);
    font-size: 3rem;
}

body {
    overflow-y: hidden;
}

body.loaded {
    overflow-y: auto;
}

body.loaded .preloader {
    transition: opacity 0.5s cubic-bezier(0.5, 0, 0, 1), z-index 0.1s 0.5s;
    opacity: 0;
    z-index: -10;
}

body.loaded .cover {
    transform: scale(1);
    background-position: center 56%, center 0px, center 101%;
    transition: transform 1s cubic-bezier(0.5, 0, 0, 1), background-position 1.8s cubic-bezier(0.5, 0, 0, 1) 0.4s;
}

body.loaded .cover .v {
    transform: translate(-50%, -110%);
    transition: transform 2s cubic-bezier(0.5, 0, 0, 1) 0.3s;
}

body.loaded .cover h1 {
    transform: translateY(0px);
    opacity: 1;
    transition: transform 1.7s cubic-bezier(0.5, 0, 0, 1) 0.8s, opacity 1.7s cubic-bezier(0.5, 0, 0, 1) 0.8s;
}

body.loaded .cover p {
    transform: translateY(0px);
    opacity: 1;
    transition: transform 1.5s cubic-bezier(0.5, 0, 0, 1) 1.1s, opacity 1.5s cubic-bezier(0.5, 0, 0, 1) 1.1s;
}

body.loaded .cover .radial {
    transform: scale(1);
    opacity: 1;
    transition: transform 1s cubic-bezier(0.5, 0, 0, 1) 1s, opacity 1s cubic-bezier(0.5, 0, 0, 1) 1s;
}

body.loaded .access {
    transition: outline 0.1s, opacity 1s cubic-bezier(0.5, 0, 0, 1) 1.5s;
    opacity: 1;
}

@media (max-width: 64rem) and (orientation: portrait) {
    body.loaded .cover .v {
        transform: translate(-50%, -160%) scale(1.5);
    }
}

@media (max-width: 48rem) {
    body.loaded .cover .v {
        transform: translate(-50%, -130%) scale(1.1);
    }
}

@media (max-width: 40rem) {
    .preloader {
        width: calc(-0.5rem + 100vw);
        height: calc(-0.5rem + 100dvh);
    }

    body.loaded .cover {
        width: calc(-0.5rem + 100vw);
        height: calc(-0.5rem + 100dvh);
        background-position: center 50%, center 0px, center 100%;
    }

    body.loaded .cover .radial {
        transform: scale(0.7);
    }

    body.loaded .cover .v {
        transform: translate(-50%, -110%) scale(0.8);
    }
}

.header {
    position: fixed;
    top: 3rem;
    left: 3rem;
    display: flex;
    align-items: center;
    background-color: var(--neutral_10);
    border-radius: 4rem;
    z-index: 5;
    outline: solid .25rem var(--neutral_90);
}

.header .logo {
    width: 0px;
    height: auto;
    margin: 0px;
    opacity: 0;
    transition: width 0.3s cubic-bezier(0.5, 0, 0, 1), margin 0.3s, opacity 0.3s cubic-bezier(0.5, 0, 0, 1);
}

.header .logo.visible {
    width: 3.5rem;
    height: auto;
    margin: 0px 0.5rem 0px 1rem;
    opacity: 1;
    transition: width 0.6s cubic-bezier(0.5, 0, 0, 1), margin 0.6s, opacity 1.3s cubic-bezier(0.5, 0, 0, 1);
}

.header .bt_menu {
    width: 5.25rem;
    height: 5.25rem;
    background-color: var(--neutral_10);
    border-radius: 100%;
    padding: 0.375rem;
    box-sizing: border-box;
    transition: transform 0.2s cubic-bezier(0.5, 0, 0, 1);
}

.header .bt_menu:hover {
    transition: transform 0.5s cubic-bezier(0.5, 0, 0, 1);
    transform: scale(0.9);
}

.header .bt_menu svg {
    border: solid .375rem var(--neutral_90);
    background-color: var(--brand);
    border-radius: 100%;
    transition: transform 0.4s cubic-bezier(0.5, 0, 0, 1);
}

.header .bt_menu rect {
    transition: width 0.6s, transform 0.3s cubic-bezier(0.5, 0, 0, 1);
}

.header .bt_menu.active svg {
    transform: rotate(180deg);
}

.header .bt_menu.active rect:first-of-type {
    transform: rotate(45deg) translate(0.75rem, -1.5rem);
}

.header .bt_menu.active rect:nth-of-type(2) {
    width: 1.75rem;
    transform: rotate(-45deg) translate(-2rem, 0.4rem);
}

.header .signup {
    position: absolute;
    top: 50%;
    left: 110%;
    transform: translateY(-50%);
    padding: 0.3rem;
    background-color: var(--neutral_10);
    border-radius: 3rem;
    font-size: 1.1rem;
    font-weight: 700;
    display: inline-block;
    transition: opacity 0.3s cubic-bezier(0.5, 0, 0, 1);
    opacity: 0;
    visibility: hidden;
}

.header .signup span {
    width: max-content;
    height: 2rem;
    border-radius: 2rem;
    line-height: 2rem;
    display: block;
    padding: 0px 1.25rem;
    border: solid .3rem var(--neutral_90);
    color: var(--neutral_90);
    transition: background 0.4s cubic-bezier(0.5, 0, 0, 1), padding 0.3s cubic-bezier(0.5, 0, 0, 1);
    background-image: url("../img/icons/arrow.svg");
    background-repeat: no-repeat;
    background-position: 140% 50%;
    background-size: auto 50%;
}

.header .signup:hover span {
    background-color: var(--brand);
    background-position: 95% 50%;
    padding: 0px 2.25rem 0px 1.25rem;
}

.header .signup.visible {
    opacity: 1;
    visibility: visible;
}

.menu {
    position: fixed;
    top: 1.25rem;
    left: -50%;
    width: 24rem;
    height: calc(-3rem + 100vh);
    min-height: 780px;
    box-sizing: border-box;
    padding: 8rem 3.5rem 0px;
    z-index: 4;
}

.menu::before {
    content: "";
    width: 60rem;
    height: 141rem;
    background: url("../img/menu_meteor.webp") 0px 0px / contain no-repeat;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -120%);
}

.menu.active {
    left: 11rem;
    transition: left 1.4s cubic-bezier(0.5, 0, 0, 1);
}

.menu.active::before {
    transition: transform 1.4s cubic-bezier(0.5, 0, 0, 1);
    transform: translate(-50%, -50%);
}

.menu>* {
    z-index: 1;
}

.menu .lang {
    position: relative;
    display: inline-block;
}

.menu .lang::after {
    content: "";
    width: 1px;
    height: 100%;
    background-color: var(--neutral_10);
    opacity: 0.5;
    position: absolute;
    top: 0px;
    left: 50%;
}

.menu .lang a {
    color: var(--neutral_10);
    font-weight: 600;
    font-size: 1.25rem;
    opacity: 0.5;
}

.menu .lang a:hover {
    opacity: 1;
}

.menu .lang a:first-child {
    margin-right: 1.5rem;
}

.menu .lang a.current {
    opacity: 1;
}

.menu ul {
    margin: 1rem 0px;
    position: relative;
}

.menu ul a {
    font-size: 2rem;
    line-height: 3.5rem;
    font-weight: 200;
    color: var(--neutral_10);
}

.menu ul a:hover {
    color: var(--brand);
}

.menu .log {
    position: relative;
}

.menu .log small {
    display: block;
    color: var(--neutral_10);
    font-weight: 600;
    font-size: 1rem;
    text-transform: uppercase;
    margin-bottom: 2rem;
    opacity: 0.5;
}

.menu .log a {
    display: flex;
    align-items: center;
    justify-content: space-around;
    gap: 0.75rem;
    border: dashed 1px var(--neutral_20);
    border-radius: 0.75rem;
    text-align: center;
    color: var(--neutral_10);
    background-color: var(--neutral_90);
    font-weight: 500;
    height: 2.5rem;
    font-size: 1.25rem;
}

.menu .log a i {
    background-color: var(--neutral_10);
    width: 1rem;
    height: 1rem;
    mask-image: url("../img/icons/arrow.svg");
    mask-size: 1rem 1rem;
}

.menu .log a:hover {
    opacity: 0.7;
}

.menu .log a:first-of-type {
    margin-bottom: 0.5rem;
    border: dashed 1px var(--brand);
    color: var(--brand);
}

.menu .log a:first-of-type i {
    background-color: var(--brand);
}

.menu .sign {
    position: relative;
    margin-top: 2rem;
}

.menu .sign small {
    display: block;
    color: var(--neutral_10);
    font-weight: 600;
    font-size: 1rem;
    text-transform: uppercase;
    margin-bottom: 2rem;
    opacity: 0.5;
}

.menu .sign a {
    padding: 0.3rem;
    background-color: var(--neutral_10);
    border-radius: 3rem;
    font-size: 1.1rem;
    font-weight: 700;
    display: block;
    transition: transform 0.2s cubic-bezier(0.5, 0, 0, 1);
}

.menu .sign a:hover {
    transform: scale(1.05);
}

.menu .sign a span {
    height: 2.5rem;
    border-radius: 2.5rem;
    line-height: 2.5rem;
    display: block;
    text-align: center;
    padding: 0px 1.25rem;
    border: solid .3rem var(--neutral_90);
    background-color: var(--brand);
    color: var(--neutral_90);
    transition: background-color 0.2s cubic-bezier(0.5, 0, 0, 1);
}

.menu .sign a:last-of-type {
    background-color: rgba(0, 0, 0, 0);
}

.menu .sign a:last-of-type span {
    color: var(--neutral_10);
    background-color: rgba(0, 0, 0, 0);
    border: solid .15rem var(--neutral_20);
    margin-top: 0.5rem;
}

@media (max-width: 1280px) {
    .menu {
        transform: scale(0.9);
    }

    .menu.active {
        left: 7rem;
    }

    .menu.active::before {
        transform: translate(-60%, -60%);
    }
}

@media (max-width: 64rem) and (orientation: portrait) {
    .menu {
        left: -100%;
        top: 20rem;
        transform: scale(1.5);
    }

    .menu.active::before {
        transform: translate(-56%, -68%) scale(0.8);
    }
}

@media (max-width: 48rem) {
    .menu {
        left: -100%;
        top: 2rem;
        transform: scale(1);
    }

    .menu.active {
        left: 3rem;
    }

    .menu.active::before {
        transform: translate(-56%, -58%) scale(0.8);
    }
}

@media (max-width: 40rem) {
    .menu {
        left: -120%;
        top: 0px;
        padding: 40vw 3.5rem 0px;
    }

    .menu.active {
        left: 0px;
    }

    .menu.active::before {
        transform: translate(-52%, -58%) scale(1);
    }

    .menu .lang a {
        font-size: 6vw;
    }

    .menu ul {
        margin: 6vw 0px;
    }

    .menu ul a {
        font-size: 7vw;
        line-height: 10vw;
    }

    .menu .log small {
        margin-bottom: 6vw;
    }

    .menu .sign {
        margin-top: 6vw;
    }
}

.cover {
    width: calc(-3rem + 100vw);
    max-width: 100rem;
    height: calc(-3rem + 100dvh);
    min-height: 40rem;
    background-color: var(--neutral_90);
    background-repeat: no-repeat;
    background-image: url("../img/mountains.svg"), url("../img/galaxy-cover.svg"), url("../img/rocks.svg");
    background-position: center 120%, center -50%, center 200%;
    background-attachment: scroll, scroll, scroll;
    border-radius: 4rem;
    margin: 1.5rem auto;
    color: var(--neutral_10);
    position: relative;
    display: flex;
    flex-flow: column wrap;
    justify-content: flex-end;
    align-items: center;
    padding-bottom: 3rem;
    box-sizing: border-box;
    transform: scale(1.1);
}

.cover::after {
    content: "";
    width: 0px;
    height: 100%;
    border-left: dashed 1px var(--neutral_10);
    position: absolute;
    top: 0px;
    left: 50%;
}

.cover .login {
    position: absolute;
    top: 2.25rem;
    right: 13rem;
    height: 3rem;
    color: var(--neutral_10);
    display: flex;
    align-items: center;
    font-size: 1.2rem;
    font-weight: 500;
    transition: opacity 0.3s cubic-bezier(0.5, 0, 0, 1);
}

.cover .login:hover {
    opacity: 0.7;
}

.cover .login i {
    background: url("../img/icons/login.svg") center center / contain no-repeat;
    width: 1.5rem;
    height: 1.5rem;
    margin: 0px 0.75rem;
}

.cover .lang {
    position: absolute;
    top: 3rem;
    right: 3.5rem;
}

.cover .lang::after {
    content: "";
    width: 1px;
    height: 100%;
    background-color: var(--neutral_10);
    opacity: 0.5;
    position: absolute;
    top: 0px;
    left: 50%;
}

.cover .lang a {
    color: var(--neutral_10);
    font-weight: 600;
    font-size: 1.25rem;
    opacity: 0.5;
}

.cover .lang a:hover {
    opacity: 1;
}

.cover .lang a:first-child {
    margin-right: 1.5rem;
}

.cover .lang a.current {
    opacity: 1;
}

.cover hgroup {
    text-align: center;
    padding-bottom: 2rem;
    position: relative;
    z-index: 1;
}

.cover h1 {
    font-size: min(10vw, 10rem);
    font-weight: 700;
    transform: translateY(90%);
    opacity: 0;
    -webkit-text-stroke: 1px var(--neutral_90);
}

.cover p {
    font-size: min(2.2vw, 2.2rem);
    font-weight: 200;
    transform: translateY(400%);
    opacity: 0;
}

.cover p em {
    font-weight: 500;
}

.cover .v {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 15rem;
    z-index: 1;
}

.cover .v::before,
.cover .v::after {
    content: "";
    width: 0px;
    height: 125rem;
    border-left: dashed 1px var(--neutral_10);
    position: absolute;
    top: -58.1rem;
    left: 50%;
}

.cover .v::before {
    transform: rotate(60deg);
}

.cover .v::after {
    transform: rotate(-60deg);
}

.cover .v:hover svg {
    transform: scale(1.5);
    filter: blur(0.25rem);
    opacity: 0.8;
}

.cover .v span {
    position: relative;
    z-index: 1;
}

.cover .v svg {
    width: 100%;
    height: auto;
    position: relative;
    z-index: 1;
    transition: transform 0.4s cubic-bezier(0.5, 0, 0, 1), filter 0.4s cubic-bezier(0.5, 0, 0, 1), opacity 1s cubic-bezier(0.5, 0, 0, 1);
}

.cover .radial {
    width: 12rem;
    height: 12rem;
    position: absolute;
    top: 16%;
    right: 8%;
    animation: 30s linear 0s infinite normal none running spin;
    transform: scale(1.5);
    opacity: 0;
}

.cover .radial::before {
    content: "";
    width: 70%;
    height: 70%;
    border: solid 1px var(--neutral_10);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 100%;
}

.cover .radial path {
    fill: rgba(0, 0, 0, 0);
}

.cover .radial text {
    fill: var(--neutral_10);
    font-size: 0.45rem;
    text-transform: uppercase;
    letter-spacing: 4px;
    font-style: normal;
}

@keyframes spin {
    100% {
        rotate: -360deg;
    }
}

.cover .log {
    position: absolute;
    top: 4rem;
    right: -110vw;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 2rem;
    transition: right 1.5s cubic-bezier(0.5, 0, 0, 1);
}

.cover .log::before {
    content: "";
    width: 60rem;
    height: 141rem;
    background: url("../img/menu_meteor.webp") 0px 0px / contain no-repeat;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-40%, -49.3%) scale(0.3) rotate(108deg);
}

.cover .log.active {
    right: 5rem;
}

.cover .log a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    text-align: center;
    color: var(--neutral_10);
    font-weight: 400;
    position: relative;
    z-index: 1;
    height: 2.5rem;
    font-size: 1.25rem;
}

.cover .log a i {
    background-color: var(--neutral_10);
    width: 1rem;
    height: 1rem;
    mask-image: url("../img/icons/arrow.svg");
    mask-size: 1rem 1rem;
}

.cover .log a span {
    width: 7rem;
}

.cover .log a:hover {
    opacity: 0.7;
}

.cover .log a:first-of-type {
    padding-right: 2rem;
    border-right: solid 1px var(--neutral_20);
}

.access {
    background-color: var(--neutral_10);
    border-radius: 3rem;
    outline: solid .2rem var(--brand);
    border: solid .375rem var(--neutral_90);
    display: flex;
    align-items: center;
    gap: 0.25rem;
    position: relative;
    padding-right: 0.4rem;
    opacity: 0;
    z-index: 2;
}

.access:hover {
    outline: solid .4rem var(--brand);
}

.access label {
    position: absolute;
    left: 2.5rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.2rem;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    width: 65%;
    transition: width 0.4s cubic-bezier(0.5, 0, 0, 1);
    color: var(--neutral_90);
    z-index: 2;
}

.access input {
    width: 19rem;
    background-color: rgba(239, 227, 205, 0.01);
    background-image: url("../img/icons/email.svg");
    background-repeat: no-repeat;
    background-position: 1.3rem center;
    padding: 1rem 0px 1rem 4.5rem;
    border: 0px;
    outline: none;
    position: relative;
    z-index: 1;
    font-size: 1.2rem;
    border-radius: 2rem;
    transition: width 0.4s cubic-bezier(0.5, 0, 0, 1), padding 0.4s;
    padding-left: 20px;
}

.access input:not(:placeholder-shown)+label {
    opacity: 0;
}

.access input:placeholder-shown:focus+label {
    opacity: 0.3;
}

.access button {
    width: 5rem;
    height: 3rem;
    background: url("/img/arrow.svg") no-repeat 50% 50% var(--brand);
    border-radius: 3rem;
    border: solid .313rem var(--neutral_10);
}

.access button:hover {
    animation-name: go;
    animation-duration: 0.8s;
    animation-iteration-count: 1;
    animation-timing-function: cubic-bezier(0.5, 0, 0, 1);
}

@keyframes go {
    0% {
        background-position: 50% 50%;
    }

    30% {
        background-position: 180% 50%;
    }

    30.1% {
        background-position: -90% 50%;
    }

    100% {
        background-position: 50% 50%;
    }
}

@media (max-width: 64rem) and (orientation: portrait) {
    .cover {
        padding-bottom: 10rem;
        background-size: 90%, 120%, auto;
    }

    .cover .lang a {
        font-size: 1.4rem;
    }

    .cover .radial {
        transform: scale(1.2);
        right: 5%;
    }

    .cover p {
        font-size: 4vw;
        padding: 0px 8vw;
    }

    .cover .login {
        font-size: 1.8rem;
    }
}

@media (max-width: 48rem) {
    .cover {
        padding-bottom: 6rem;
    }

    .cover .lang a {
        font-size: 1.2rem;
    }

    .cover .radial {
        transform: scale(1);
        right: 2%;
        top: 18%;
    }

    .cover p {
        font-size: 4vw;
        padding: 0px 8vw;
    }

    .cover .login {
        font-size: 1.4rem;
    }
}

@media (max-width: 40rem) {
    .header {
        transform: scale(0.8);
        top: 1.5rem;
        left: 1.5rem;
    }

    .cover {
        width: calc(-1.25rem + 100vw);
        height: calc(-1.25rem + 100dvh);
        padding-bottom: 5rem;
        margin: 0.25rem auto;
        background-size: 90%, 180%, 250%;
    }

    .cover .lang {
        display: none;
    }

    .cover .login {
        display: none;
    }

    .cover .radial {
        top: 0px;
        right: 0px;
    }

    .cover h1 {
        font-size: 15vw;
        line-height: 16vw;
    }

    .cover p {
        font-size: 4vw;
        padding: 0px 8vw;
    }

    .cover .log {
        right: -150vw;
    }

    .access {
        width: 90%;
        box-sizing: border-box;
    }

    .access input {
        width: 100%;
        background-image: none;
        padding: 1rem 0px 1rem 1rem;
    }

    .access label {
        left: 1rem;
        width: 75%;
        font-size: 1rem;
    }
}

.checkout_slides {
    width: 100vw;
    box-sizing: border-box;
    overflow-x: hidden;
}

.checkout_slides ul {
    display: flex;
    gap: 1.25rem;
}

.checkout_slides ul:first-child {
    margin-bottom: 1.25rem;
    transform: translateX(50vw);
}

.checkout_slides ul:last-child {
    transform: translateX(-120%);
}

.checkout_slides li {
    flex: 0 0 46.25rem;
    height: 30rem;
    background-color: rgb(209, 195, 170);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: auto 100%;
    border-radius: 1.25rem;
}

.checkout_slides li.electronic {
    background-image: url("/land/banner/americanas.jpeg");
}

.checkout_slides li.moka {
    background-image: url("/land/banner/mercadolivre.jpeg");
}

.checkout_slides li.next {
    background-image: url("/land/banner/amazon.jpeg");
}

.checkout_slides li.gameover {
    background-image: url("/land/banner/shopee.jpeg");
}

.checkout_slides li.imagine {
    background-image: url("/land/banner/casasbahia.jpeg");
}

.checkout_slides li.bycicle {
    background-image: url("/land/banner/magalu.jpeg");
}

@media (max-width: 1280px) {
    .checkout_slides li {
        flex: 0 0 38rem;
        height: 25rem;
    }
}

@media (max-width: 48rem) {
    .checkout_slides li {
        flex: 0 0 30.25rem;
        height: 20rem;
    }
}

@media (max-width: 40rem) {
    .checkout_slides ul:first-child {
        transform: translateX(100vw);
    }

    .checkout_slides ul:last-child {
        transform: translateX(-320%);
    }

    .checkout_slides li {
        flex: 0 0 27.5rem;
        height: 18rem;
    }
}

.audience {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.audience::after {
    content: "";
    width: 23.75rem;
    height: 17.5rem;
    background: url("../img/asteroid.svg") center center / contain no-repeat;
    position: absolute;
    top: 40%;
    right: 0px;
    z-index: -1;
    animation: 20s linear 0s infinite normal none running asteroid;
}

@keyframes asteroid {
    100% {
        transform: rotate(-359deg);
    }
}

.audience ul {
    width: 100%;
    display: flex;
    gap: 2.5rem;
    justify-content: center;
    padding: 12.5rem 0px;
}

.audience li {
    width: 12%;
    height: 42.5rem;
    outline: solid .35rem var(--neutral_90);
    border-radius: 1.75rem;
    box-sizing: border-box;
    padding: 0.5rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    background-color: var(--neutral_10);
    position: relative;
    transition: width 0.5s cubic-bezier(0.5, 0, 0, 1);
}

.audience li.active {
    width: 40%;
}

.audience li.active h2 {
    opacity: 1;
}

.audience li.active figure::after {
    opacity: 0;
}

.audience li:first-child {
    z-index: 2;
}

.audience li:first-child figure {
    background-image: url("../img/produtos-fisicos.svg");
}

.audience li:nth-child(2) {
    z-index: 2;
}

.audience li:nth-child(2) figure {
    background-image: url("../img/produtos-digitais.svg");
}

.audience li:nth-child(3) {
    z-index: 2;
}

.audience li:nth-child(3) figure {
    background-image: url("../img/dropshipping.svg");
}

.audience h2 {
    font-size: min(2rem, 2vw);
    font-weight: 500;
    width: 100%;
    line-height: 3.5rem;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    padding: 0px 1.5rem;
    box-sizing: border-box;
    opacity: 0;
    transition: opacity 0.5s cubic-bezier(0.5, 0, 0, 1);
}

.audience b {
    font-weight: 700;
}

.audience figure {
    display: block;
    width: 100%;
    flex: 1 1 auto;
    border-radius: 1.5rem;
    position: relative;
    background-repeat: no-repeat;
    background-size: cover;
    background-color: var(--brand_light);
    background-position: center center;
}

.audience figure::after {
    content: "";
    width: 4.5rem;
    height: 4.5rem;
    border-radius: 4.5rem;
    background-image: ;
    background-position-x: ;
    background-position-y: ;
    background-repeat: ;
    background-attachment: ;
    background-origin: ;
    background-clip: ;
    background-color: ;
    background-size: 70%;
    outline: solid .4rem var(--neutral_10);
    position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    transition: opacity 0.2s cubic-bezier(0.5, 0, 0, 1);
}

.audience .ellipse {
    z-index: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.9);
}

@media (max-width: 1280px) {
    .audience li {
        height: 36rem;
    }

    .audience .ellipse {
        transform: translate(-50%, -50%) scale(0.8);
    }
}

@media (max-width: 64rem) and (orientation: portrait) {
    .audience ul {
        gap: 1.5rem;
    }

    .audience li {
        height: 42.5rem;
    }

    .audience li.active {
        width: 60%;
    }

    .audience h2 {
        font-size: 3.2vw;
    }

    .audience .ellipse {
        transform: translate(-50%, -50%) scale(0.9);
    }
}

@media (max-width: 48rem) {
    .audience li {
        height: 34rem;
    }

    .audience .ellipse {
        transform: translate(-50%, -50%) scale(0.7);
    }
}

@media (max-width: 40rem) {
    .audience ul {
        flex-wrap: wrap;
        padding: 8.5rem 1rem;
        box-sizing: border-box;
    }

    .audience li {
        width: 100%;
        height: 30rem;
        max-height: 4.5rem;
        overflow: hidden;
        justify-content: center;
        gap: 0px;
        transition: max-height 0.5s cubic-bezier(0.5, 0, 0, 1);
    }

    .audience li.active {
        width: 100%;
        max-height: 30rem;
        gap: 0.5rem;
    }

    .audience li.active figure {
        flex: 1 1 auto;
    }

    .audience h2 {
        font-size: 5vw;
    }

    .audience figure {
        flex: 1 1 60rem;
    }

    .audience figure::after {
        width: 4rem;
        height: 4rem;
        top: 50%;
    }
}

.about {
    position: relative;
}

.about>p {
    color: var(--neutral_20);
    font-weight: 500;
    font-size: min(3.5vw, 4.5rem);
    margin-left: 6rem;
    margin-right: 6rem;
    line-height: 1.5;
    transition: color 0.5s cubic-bezier(0.5, 0, 0, 1);
}

.about>p:nth-of-type(2) {
    margin-bottom: 3rem;
}

.about>p.active {
    color: var(--neutral_90);
}

.about .planet {
    width: 16.25rem;
    height: 16.25rem;
    background: url("../img/planet.svg") 0% 0% / contain no-repeat;
    position: absolute;
    top: -20%;
    left: 10%;
    z-index: -1;
}

.about .cometa {
    width: 30.625rem;
    height: 5rem;
    background: url("../img/cometa.svg") 0% 0% / contain no-repeat;
    position: absolute;
    top: -50%;
    right: -80%;
    transform: rotate(-15deg);
    z-index: -1;
}

.about footer {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 0.75rem;
    padding: 0px 6rem 6rem;
}

.about footer span {
    display: block;
    border: solid .188rem var(--neutral_90);
    border-radius: 0.75rem;
    height: 5rem;
    background-repeat: no-repeat;
    background-position: center center;
}

.about footer span:first-of-type {
    width: 12.5rem;
    background-image: url("../img/apps/shopify.svg");
    background-size: 85%;
}

.about footer span:last-of-type {
    width: 10rem;
    background-image: url("../img/apps/woo.svg");
    background-size: auto 80%;
}

@media (max-width: 64rem) and (orientation: portrait) {
    .about {
        padding: 0px 4rem;
    }

    .about>p {
        font-size: 6vw;
        display: inline;
        margin-left: 0px;
        margin-right: 0px;
    }

    .about footer {
        padding: 4rem 0px;
        justify-content: flex-start;
    }

    .about footer button em {
        width: 70vw;
        font-size: 4vw;
        line-height: 4.5vw;
        bottom: 0px;
        left: 0px;
        transform: initial;
    }
}

@media (max-width: 40rem) {
    .about {
        padding: 0px 2rem;
    }

    .about>p {
        font-size: 7.5vw;
    }

    .about .cometa {
        top: 30%;
        right: -120%;
    }

    .about footer span {
        height: 3rem;
    }

    .about footer button em {
        width: 60vw;
        font-size: 5.5vw;
        line-height: 6.5vw;
    }
}

.iframe_checkout {
    width: 100%;
    padding: 0px 1.5rem;
    box-sizing: border-box;
    position: relative;
}

.iframe_checkout iframe {
    border-radius: 2rem;
    overflow: hidden;
    outline: solid .25rem var(--neutral_90);
    background-color: var(--neutral_20);
}

.iframe_checkout.desk iframe {
    width: 100%;
    height: min(56vw, 56rem);
    transform: scale(0.9);
}

.iframe_checkout.mobile iframe {
    width: 25rem;
    height: 53.25rem;
    transform: scale(1);
    margin: 0px auto 2rem;
    display: block;
}

.iframe_checkout.full {
    height: 100vh;
    max-height: 1080px;
}

.iframe_checkout.full iframe {
    width: 100%;
    height: 100%;
    transform: scale(0.98) translateY(-1rem);
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 15;
}

.iframe_checkout .controls {
    width: 13rem;
    display: flex;
    align-items: center;
    outline: solid .4rem var(--neutral_90);
    border-radius: 3rem;
    background-color: var(--neutral_90);
    position: relative;
    z-index: 2;
    margin: 0px auto 3rem;
}

.iframe_checkout .controls button {
    width: 4rem;
    height: 2.5rem;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 3rem;
}

.iframe_checkout .controls button i {
    mask-repeat: no-repeat;
    mask-size: contain;
    width: 1.5rem;
    height: 1.5rem;
    background-color: var(--neutral_90);
}

.iframe_checkout .controls button.bt_desk i {
    mask-image: url("../img/icons/monitor.svg");
}

.iframe_checkout .controls button.bt_mobile i {
    mask-image: url("../img/icons/phone.svg");
}

.iframe_checkout .controls button.bt_full i {
    mask-image: url("../img/icons/full.svg");
    background-color: var(--neutral_10);
}

.iframe_checkout .controls button:hover {
    opacity: 0.5;
}

.iframe_checkout .controls ul {
    display: flex;
    background-color: var(--neutral_10);
    border-radius: 3rem;
}

.iframe_checkout .controls li {
    padding: 0.25rem;
}

.iframe_checkout .controls li button.active {
    background-color: var(--neutral_90);
}

.iframe_checkout .controls li button.active:hover {
    opacity: initial;
}

.iframe_checkout .controls li button.active i {
    background-color: var(--neutral_10);
}

.iframe_checkout>p {
    margin: 0px 6rem 6rem;
    text-align: center;
    font-size: 2.25rem;
    font-weight: 600;
    position: relative;
    z-index: 3;
}

.iframe_checkout>p button {
    display: inline-block;
    vertical-align: middle;
}

.iframe_checkout>p button em {
    transform: translateX(-100%);
}

.iframe_checkout mark {
    background-color: rgba(0, 0, 0, 0);
    text-decoration: underline;
}

.iframe_checkout .bt_minimize {
    width: 2.5rem;
    height: 2.5rem;
    background-image: ;
    background-position-x: ;
    background-position-y: ;
    background-repeat: ;
    background-attachment: ;
    background-origin: ;
    background-clip: ;
    background-color: ;
    background-size: 1.5rem;
    border-radius: 0.75rem;
    position: absolute;
    top: 2rem;
    right: 2rem;
    z-index: 20;
    outline: solid .3rem var(--neutral_90);
    display: none;
}

.iframe_checkout .bt_minimize:hover {
    background-color: var(--neutral_10);
}

.iframe_checkout .bt_minimize.active {
    display: block;
}

@media (max-width: 1280px) {
    .iframe_checkout.desk iframe {
        width: 100%;
        height: 60vw;
        transform: scale(0.8);
        margin-bottom: -2rem;
    }
}

@media (max-width: 64rem) and (orientation: portrait) {
    .iframe_checkout.desk iframe {
        width: 170%;
        height: 60rem;
        transform: scale(0.55) translate(-37%, -30%);
        margin-bottom: -20rem;
    }

    .iframe_checkout.full iframe {
        transform: scale(0.96) translateY(-1rem);
        height: 98vh;
    }

    .iframe_checkout>p button em {
        width: 70vw;
        font-size: 4vw;
        line-height: 4.5vw;
        bottom: 0px;
        left: 0px;
        transform: translateX(-50vw);
    }
}

@media (max-width: 48rem) {
    .iframe_checkout.desk iframe {
        width: 200%;
        height: 60rem;
        transform: scale(0.5) translate(-50%, -30%);
        margin-bottom: -22rem;
    }

    .iframe_checkout.full iframe {
        transform: scale(0.94) translateY(-1rem);
        height: 98vh;
    }
}

@media (max-width: 40rem) {
    .iframe_checkout.desk iframe {
        width: 100%;
        height: 180vw;
        transform: scale(1) translate(0px, 0px);
        margin-bottom: 0px;
    }

    .iframe_checkout .controls {
        display: none;
    }

    .iframe_checkout>p {
        margin: 2rem 0px 6rem;
        font-size: 6vw;
    }

    .iframe_checkout>p button em {
        width: 60vw;
        font-size: 5.5vw;
        line-height: 6.5vw;
        transform: translateX(-50vw);
    }
}

.checkout_itens {
    padding: 0px 1.25rem;
    position: relative;
}

.checkout_itens h2 {
    position: absolute;
    font-size: 4.5rem;
    line-height: 4rem;
    width: 37.5rem;
    top: 0.5rem;
    left: 6rem;
    font-weight: 300;
}

.checkout_itens li {
    height: 4rem;
    padding-right: 6rem;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 2.4rem;
    box-sizing: border-box;
    position: relative;
}

.checkout_itens li:not(:last-child) {
    border-bottom: solid 2px var(--neutral_100);
}

.checkout_itens li::before {
    content: "";
    width: 100%;
    min-height: 0px;
    background-color: var(--neutral_100);
    position: absolute;
    top: 0px;
    left: 0px;
    transition: min-height 0.3s cubic-bezier(0.5, 0, 0, 1);
}

.checkout_itens li:hover {
    color: var(--neutral_10);
}

.checkout_itens li:hover i {
    background-color: var(--neutral_10);
    opacity: 1;
}

.checkout_itens li:hover::before {
    min-height: 4rem;
}

.checkout_itens h3 {
    line-height: 4rem;
    font-size: 1.75rem;
    font-weight: 600;
    text-align: right;
    position: relative;
    z-index: 1;
    transition: color 0.5s cubic-bezier(0.5, 0, 0, 1);
}

.checkout_itens i {
    width: 2.5rem;
    height: 2.5rem;
    mask-image: url("../img/icons/info.svg");
    mask-size: 2rem;
    mask-position: center center;
    mask-repeat: no-repeat;
    background-color: var(--neutral_100);
    opacity: 0.1;
    position: relative;
    z-index: 1;
    transition: opacity 0.5s cubic-bezier(0.5, 0, 0, 1);
}

.checkout_itens .popup {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: var(--neutral_10);
    border-radius: 1.75rem;
    outline: solid 2px var(--neutral_90);
    padding: 0.75rem;
    z-index: 3;
    display: none;
}

.checkout_itens .popup small {
    display: block;
    font-size: 1.25rem;
    line-height: 2rem;
    padding: 0px 1.25rem;
    font-weight: 700;
}

.checkout_itens .popup p {
    font-size: 2rem;
    line-height: 3.5rem;
    padding: 0px 1.25rem;
    font-weight: 400;
}

.checkout_itens .popup span {
    display: block;
    border-radius: 1.5rem;
    transition: width 0.4s cubic-bezier(0.5, 0, 0, 1), min-height 0.2s cubic-bezier(0.5, 0, 0, 1);
    min-height: 0px;
    margin: 0px auto;
    background-repeat: no-repeat;
    background-position: center center;
    background-color: var(--neutral_20);
}

.checkout_itens .popup span[data-img="img_1"] {
    background-image: url("../img/checkout-itens/upsell.webp");
    width: 26.625rem;
    min-height: 32.125rem;
}

.checkout_itens .popup span[data-img="img_2"] {
    background-image: url("../img/checkout-itens/order-bump.webp");
    width: 31.25rem;
    min-height: 34rem;
}

.checkout_itens .popup span[data-img="img_3"] {
    background-image: url("../img/checkout-itens/variante-produto.webp");
    width: 33.75rem;
    min-height: 33.5rem;
}

.checkout_itens .popup span[data-img="img_4"] {
    background-image: url("../img/checkout-itens/controle-estoque.webp");
    width: 32.75rem;
    min-height: 18.375rem;
}

.checkout_itens .popup span[data-img="img_5"] {
    background-image: url("../img/checkout-itens/banner.gif");
    width: 29.375rem;
    min-height: 20.75rem;
}

.checkout_itens .popup span[data-img="img_6"] {
    background-image: url("../img/checkout-itens/cupom.webp");
    width: 33.75rem;
    min-height: 17.5rem;
}

.checkout_itens .popup span[data-img="img_7"] {
    background-image: url("../img/checkout-itens/letreiro.gif");
    width: 19rem;
    min-height: 28.125rem;
}

.checkout_itens .popup span[data-img="img_8"] {
    background-image: url("../img/checkout-itens/contador.webp");
    width: 29.875rem;
    min-height: 14.5rem;
}

.checkout_itens .popup span[data-img="img_9"] {
    background-image: url("../img/checkout-itens/prova-social.webp");
    width: 35rem;
    min-height: 23.875rem;
}

.checkout_itens .popup span[data-img="img_10"] {
    background-image: url("../img/checkout-itens/2-cartoes.webp");
    width: 34rem;
    min-height: 11.188rem;
}

.checkout_itens .popup span[data-img="img_11"] {
    background-image: url("../img/checkout-itens/cronometro.webp");
    width: 36.875rem;
    min-height: 27.5rem;
}

@media (max-width: 64rem) and (orientation: portrait) {
    .checkout_itens {
        padding: 0px;
    }

    .checkout_itens h2 {
        position: relative;
        top: initial;
        left: initial;
        font-size: 5vw;
        line-height: 5.5vw;
        text-align: center;
        width: 100%;
        padding: 0px 5vw;
        box-sizing: border-box;
        margin-bottom: 3rem;
    }

    .checkout_itens ul {
        overflow-x: auto;
        width: 100%;
        display: flex;
        gap: 1rem;
        padding: 0.75rem 1.25rem;
        box-sizing: border-box;
        background-color: var(--neutral_20);
    }

    .checkout_itens ul::-webkit-scrollbar-thumb {
        border-radius: 1rem;
        border-right: 0px;
        border-bottom: solid .25rem var(--neutral_20);
    }

    .checkout_itens li {
        flex: 0 0 auto;
        height: 8rem;
        border-radius: 1rem;
        outline: solid 2px var(--neutral_90);
        padding: 1rem;
        flex-direction: column;
        gap: 0px;
        background-color: var(--neutral_10);
        overflow: hidden;
    }

    .checkout_itens li:hover::before {
        min-height: 8rem;
    }

    .checkout_itens h3 {
        font-size: 2rem;
    }

    .checkout_itens .popup {
        top: 110%;
        transform: translate(-50%, 0px);
    }

    .checkout_itens .popup small {
        font-size: 3.5vw;
    }

    .checkout_itens .popup p {
        font-size: 4vw;
        line-height: 4vw;
        padding: 1rem 1.25rem;
    }

    .checkout_itens .popup span[data-img="img_5"] {
        width: 70vw;
        min-height: 49.5vw;
        background-size: 70vw;
    }
}

@media (max-width: 48rem) {
    .checkout_itens li {
        height: 6rem;
    }

    .checkout_itens h3 {
        font-size: 3vw;
    }
}

@media (max-width: 40rem) {
    .checkout_itens h2 {
        font-size: 8vw;
        line-height: 8.5vw;
    }

    .checkout_itens h3 {
        font-size: 4.5vw;
    }

    .checkout_itens .popup small {
        font-size: 5vw;
    }

    .checkout_itens .popup p {
        font-size: 6vw;
        line-height: 6vw;
    }

    .checkout_itens .popup span {
        background-size: 100%;
    }

    .checkout_itens .popup span[data-img="img_1"] {
        width: 85vw;
        min-height: 98vw;
    }

    .checkout_itens .popup span[data-img="img_2"] {
        width: 85vw;
        min-height: 24rem;
    }

    .checkout_itens .popup span[data-img="img_3"] {
        width: 85vw;
        min-height: 84vw;
    }

    .checkout_itens .popup span[data-img="img_4"] {
        width: 85vw;
        min-height: 45vw;
    }

    .checkout_itens .popup span[data-img="img_5"] {
        width: 85vw;
        min-height: 60vw;
        background-size: 100%;
    }

    .checkout_itens .popup span[data-img="img_6"] {
        width: 85vw;
        min-height: 44vw;
    }

    .checkout_itens .popup span[data-img="img_7"] {
        width: 85vw;
        min-height: 83vw;
    }

    .checkout_itens .popup span[data-img="img_8"] {
        width: 85vw;
        min-height: 35vw;
    }

    .checkout_itens .popup span[data-img="img_9"] {
        width: 85vw;
        min-height: 58vw;
    }

    .checkout_itens .popup span[data-img="img_10"] {
        width: 85vw;
        min-height: 25vw;
    }

    .checkout_itens .popup span[data-img="img_11"] {
        width: 85vw;
        min-height: 62vw;
    }
}

.recover {
    padding: 37rem 1.25rem 0px;
    margin-top: 9rem;
    background-image: url("../img/recover_galaxy.svg");
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100%;
    position: relative;
}

.recover::before {
    content: "";
    width: 36rem;
    height: 36rem;
    background: url("../img/recover_shape.svg") center center / contain no-repeat;
    position: absolute;
    top: 10%;
    left: 10%;
    opacity: 0.5;
}

.recover::after {
    content: "";
    width: 26rem;
    height: 26rem;
    background: url("../img/recover_cart.svg") center center / contain no-repeat;
    position: absolute;
    top: 16%;
    left: 12%;
}

.recover .recover_fly {
    position: absolute;
    top: -2.5rem;
    left: 20%;
    width: 65rem;
    height: auto;
    z-index: 1;
}

.recover .flypath {
    stroke: var(--neutral_90);
    stroke-width: 2;
    stroke-dasharray: 10, 10;
}

.recover .marquee {
    height: 13.75rem;
    border-top: dashed 1px var(--neutral_100);
    border-bottom: dashed 1px var(--neutral_100);
    overflow: hidden;
    position: relative;
    z-index: 1;
}

.recover .marquee h2 {
    width: max-content;
    font-size: 5rem;
    line-height: 13.75rem;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 0.25rem;
}

.recover .marquee span {
    padding: 0px 2rem;
    display: inline-block;
}

.recover hgroup {
    text-align: center;
    position: relative;
    z-index: 1;
}

.recover h3 {
    font-size: 3.5rem;
    font-weight: 300;
    margin: 0.75rem 0px;
}

.recover b {
    font-weight: 500;
}

.recover p {
    font-size: 2rem;
    font-weight: 300;
}

.recover footer {
    display: flex;
    gap: 0.75rem;
    justify-content: center;
    padding-top: 1.5rem;
    position: relative;
}

.recover footer::before {
    content: "";
    width: 32rem;
    height: 32rem;
    background: url("../img/recover_orbit.svg") center center / contain no-repeat;
    position: absolute;
    top: -35rem;
    right: 4rem;
    animation-name: recover_orbit;
    animation-duration: 12s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

@keyframes recover_orbit {
    100% {
        transform: rotate(359deg);
    }
}

.recover footer em {
    height: 3rem;
    border-radius: 3.5rem;
    padding: 0px 1.5rem;
    border: solid .35rem var(--neutral_100);
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 2.5rem;
    box-sizing: border-box;
}

@media (max-width: 64rem) and (orientation: portrait) {
    .recover::before {
        top: 5%;
        left: 0%;
    }

    .recover::after {
        transform: scale(0.8);
        top: 12%;
        left: 5%;
    }

    .recover .recover_fly {
        top: 0px;
        left: 16%;
        width: 80vw;
    }

    .recover footer::before {
        opacity: 0.5;
    }
}

@media (max-width: 48rem) {
    .recover .recover_fly {
        left: 20%;
        width: 110vw;
    }
}

@media (max-width: 40rem) {
    .recover {
        margin-top: 6rem;
        padding: 24rem 0.5rem 0px;
    }

    .recover::before {
        transform: scale(0.7);
        top: -4%;
        left: -15%;
    }

    .recover::after {
        left: 30vw;
        transform: translateX(-50%);
        width: 50vw;
        height: 50vw;
    }

    .recover .recover_fly {
        left: 18%;
        width: 140vw;
    }

    .recover .marquee {
        height: 8rem;
    }

    .recover .marquee h2 {
        line-height: 8rem;
        font-size: 2.5rem;
        font-weight: 400;
    }

    .recover hgroup {
        margin: 4rem 0px 2rem;
    }

    .recover h3 {
        font-size: 12vw;
    }

    .recover p {
        font-size: 7vw;
    }

    .recover footer {
        flex-wrap: wrap;
    }
}

.ab_test {
    max-width: 100rem;
    box-sizing: border-box;
    padding: 0px 1.25rem;
    margin: 8rem auto 0px;
    position: relative;
    display: flex;
    gap: 0.25rem;
}

.ab_test.active em {
    opacity: 0.2;
}

.ab_test.active h2 {
    color: var(--neutral_20);
    letter-spacing: 0px;
}

.ab_test::after {
    content: "";
    width: 23.75rem;
    height: 17.5rem;
    background: url("../img/asteroid.svg") center center / contain no-repeat;
    position: absolute;
    bottom: -20%;
    left: 20%;
    z-index: -1;
    animation: 10s linear 0s infinite normal none running asteroid;
}

@keyframes asteroid {
    100% {
        transform: rotate(359deg);
    }
}

.ab_test em {
    position: absolute;
    top: 20%;
    left: 50%;
    transform: translateX(-50%);
    padding: 0.5rem 0rem 0.3rem 1rem;
    border-radius: 0.5rem;
    font-size: min(2vw, 2rem);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1rem;
    color: var(--neutral_90);
    background: linear-gradient(90deg, rgb(51, 51, 51) 50%, transparent 0px) 0px 0px / 0.375rem 0.188rem repeat-x, linear-gradient(90deg, rgb(51, 51, 51) 50%, transparent 0px) 0px 100% / 0.375rem 0.188rem repeat-x, linear-gradient(0deg, rgb(51, 51, 51) 50%, transparent 0px) 0px 0px / 0.188rem 0.375rem repeat-y, linear-gradient(0deg, rgb(51, 51, 51) 50%, transparent 0px) 100% 0px / 0.188rem 0.375rem repeat-y;
    animation: 0.3s linear 0s infinite normal none running dashed;
    z-index: 1;
    transition: opacity 0.5s cubic-bezier(0.5, 0, 0, 1) 0.2s;
}

.ab_test em::before {
    content: "";
    width: 104%;
    height: 124%;
    outline: solid 2px var(--brand);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: -1;
    border-radius: 0.75rem;
}

@keyframes dashed {
    100% {
        background-position: 0.375rem 0px, -0.375rem 100%, 0px -0.375rem, 100% center;
    }
}

.ab_test h2 {
    font-size: min(10vw, 10rem);
    font-weight: 600;
    text-align: center;
    position: absolute;
    top: 50%;
    left: 0px;
    width: 100%;
    transform: translateY(-50%);
    color: var(--neutral_90);
    letter-spacing: 0.5rem;
    transition: color 0.5s cubic-bezier(0.5, 0, 0, 1), letter-spacing 0.5s cubic-bezier(0.5, 0, 0, 1);
}

.ab_test article {
    flex: 0 1 33.3%;
    height: 34rem;
    border-radius: 4rem;
    background-color: var(--neutral_90);
    padding: 0.5rem;
    overflow: hidden;
    color: var(--neutral_10);
    position: relative;
    z-index: 1;
}

.ab_test article:hover p {
    max-height: 99rem;
    padding-bottom: 3rem;
}

.ab_test article:first-of-type {
    transform: translateX(100vw);
}

.ab_test article:first-of-type span {
    background-image: url("../img/a-b-gateways.webp");
}

.ab_test article:nth-of-type(2) {
    transform: translateX(140vw);
}

.ab_test article:nth-of-type(2) span {
    background-image: url("../img/a-b-pix.webp");
}

.ab_test article:nth-of-type(3) {
    transform: translateX(180vw);
}

.ab_test article:nth-of-type(3) span {
    background-image: url("../img/a-b-checkout.webp");
}

.ab_test span {
    display: block;
    height: 24rem;
    border-radius: 3.5rem;
    background-color: var(--neutral_10);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: left top;
}

.ab_test footer {
    padding: 0px 2.5rem;
    position: absolute;
    bottom: 0px;
    left: 0px;
    background-color: var(--neutral_90);
}

.ab_test small {
    display: inline-block;
    background-color: var(--neutral_90);
    border: solid .188rem var(--neutral_10);
    border-radius: 0.75rem;
    outline: solid .3rem var(--neutral_90);
    height: 2rem;
    line-height: 2rem;
    padding: 0px 1.2rem;
    font-size: 1rem;
    font-weight: 600;
    text-transform: uppercase;
    position: absolute;
    top: -1.2rem;
    left: 2.5rem;
}

.ab_test h3 {
    font-size: min(3vw, 3.5rem);
    font-weight: 500;
    line-height: 4rem;
    padding: 2.5rem 0px 4rem;
    text-transform: uppercase;
    position: relative;
}

.ab_test h3::after {
    content: "";
    width: 1.6rem;
    height: 1.6rem;
    mask-image: url("../img/icons/info.svg");
    background-color: var(--neutral_10);
    position: absolute;
    bottom: 2.5rem;
    left: 0px;
    mask-size: contain;
}

.ab_test p {
    font-size: 1.8rem;
    font-weight: 400;
    padding-bottom: 0px;
    overflow: hidden;
    max-height: 0px;
    transition: max-height 0.4s cubic-bezier(0.5, 0, 0, 1), padding-bottom 0.4s;
}

.ab_test b {
    font-weight: 500;
    color: var(--brand);
}

.features {
    max-width: 100rem;
    padding: 0.25rem 1.25rem 0px;
    box-sizing: border-box;
    margin: 0px auto;
    display: flex;
    gap: 0.25rem;
    position: relative;
}

.features article {
    height: 40rem;
    border-radius: 4rem;
    color: var(--neutral_10);
    text-align: center;
    position: relative;
    background-repeat: no-repeat;
    background-color: var(--neutral_90);
}

.features article:first-of-type {
    background-image: url("../img/chart.svg"), url("../img/galaxy-cover.svg");
    background-position: center 10%, center 20%;
    background-size: 70%, 90%;
}

.features article:last-of-type {
    background-image: url("../img/pc.svg"), url("../img/galaxy-cover.svg");
    background-position: center 10%, center 20%;
    background-size: 35%, 90%;
    transform: translateY(20rem);
}

.features hgroup {
    padding: 18rem 4rem 2rem;
}

.features h2 {
    font-size: min(3vw, 3.5rem);
    line-height: min(3vw, 3.5rem);
    font-weight: 500;
    padding: 2.5rem 0px;
    text-transform: uppercase;
    position: relative;
}

.features p {
    font-size: min(2vw, 1.5rem);
    font-weight: 400;
    padding: 0px max(4vw, 3rem);
}

.features b {
    font-weight: 600;
}

.report_screen {
    height: 45rem;
    margin: 0.25rem 1.25rem 0px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 4rem;
    position: relative;
    padding-bottom: 20rem;
    background: url("../img/star.svg") center 0px / auto 100% no-repeat;
    z-index: 1;
}

.report_screen::after {
    content: "";
    width: 15rem;
    height: 15rem;
    background: url("../img/satelite.svg") center center / contain no-repeat;
    position: absolute;
    bottom: 5rem;
    right: 10rem;
    animation: 2s ease-in-out 0s infinite alternate none running satelite;
}

@keyframes satelite {
    0% {
        transform: translateY(0px);
    }

    100% {
        transform: translateY(3rem);
    }
}

.report_screen iframe {
    width: 980px;
    height: 636px;
    border-radius: 2rem;
    border: dashed .1rem var(--brand);
}

@media (max-width: 64rem) and (orientation: portrait) {
    .ab_test article {
        height: 24rem;
    }

    .ab_test span {
        height: 14rem;
        border-radius: 3.5rem 3.5rem 1rem 1rem;
    }

    .ab_test p {
        font-size: 1.2rem;
    }

    .features article {
        height: 33rem;
    }

    .features hgroup {
        padding: 14rem 2rem 2rem;
    }

    .features h2 {
        font-size: 3.4vw;
        line-height: 4vw;
        padding: 2.5rem 0px 1rem;
    }

    .features p {
        font-size: 2vw;
    }

    .report_screen {
        margin: 0.25rem 0px 0px;
        padding: 0px 1.25rem 18rem;
    }
}

@media (max-width: 48rem) {
    .ab_test article {
        height: 17rem;
        border-radius: 2rem;
    }

    .ab_test span {
        height: 10rem;
        border-radius: 1.5rem;
    }

    .ab_test h3 {
        padding: 1.5rem 0px 2rem;
    }

    .ab_test h3::after {
        bottom: 1.5rem;
    }

    .ab_test p {
        font-size: 0.8rem;
    }

    .ab_test small {
        left: 1.5rem;
    }

    .ab_test footer {
        padding: 0px 1.5rem;
    }

    .features article {
        border-radius: 2rem;
    }

    .features article {
        height: auto;
    }

    .features article:last-of-type {
        background-size: 45%, 90%;
    }

    .features h2 {
        padding: 1rem 0px;
    }

    .features p {
        padding: 0px;
    }

    .report_screen iframe {
        width: 100%;
        height: 30rem;
    }
}

@media (max-width: 40rem) {
    .ab_test {
        display: block;
        padding: 0px 0.5rem;
    }

    .ab_test::after {
        bottom: initial;
        top: 20%;
        left: 0px;
    }

    .ab_test em {
        font-size: 7vw;
        top: 10%;
    }

    .ab_test h2 {
        font-size: 12vw;
        top: 20%;
    }

    .ab_test article {
        height: 20rem;
        border-radius: 3.5rem;
    }

    .ab_test article:nth-of-type(2) {
        margin: 0.25rem;
    }

    .ab_test span {
        border-radius: 3rem 3rem 1rem 1rem;
        height: 13rem;
    }

    .ab_test h3 {
        font-size: 6vw;
    }

    .ab_test p {
        font-size: 1.2rem;
    }

    .ab_test small {
        left: 2.5rem;
    }

    .ab_test footer {
        padding: 0px 2.5rem;
    }

    .features {
        padding: 0.25rem 0.5rem 0px;
        display: block;
        z-index: 2;
    }

    .features article {
        margin: 0px 0px 0.25rem;
        border-radius: 3rem;
    }

    .features h2 {
        font-size: 6.5vw;
        line-height: 7vw;
    }

    .features p {
        font-size: 4vw;
    }

    .report_screen {
        height: 10rem;
    }

    .report_screen iframe {
        display: none;
    }
}

.rewards {
    margin: 0px 1.25rem;
}

.rewards>div {
    max-width: 100rem;
    height: max(60vw, 42.5rem);
    box-sizing: border-box;
    margin: 0.25rem auto 0px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 4rem;
    background-color: var(--neutral_90);
    position: relative;
    overflow: hidden;
}

.rewards>div::before {
    content: "";
    width: 100%;
    height: 4rem;
    background: url("../img/badges.svg") center center / 50% no-repeat;
    position: absolute;
    top: 1rem;
    left: 0px;
    z-index: 1;
}

.rewards video {
    width: 100%;
    min-height: 680px;
}

.rewards footer {
    width: 100%;
    position: absolute;
    bottom: 0px;
    left: 0px;
    background: linear-gradient(0deg, rgba(44, 44, 44, 0.7) 0%, rgba(0, 0, 0, 0) 100%);
    padding: 4rem 1.5rem;
    text-align: center;
    box-sizing: border-box;
    z-index: 1;
}

.rewards p {
    font-weight: 600;
    max-width: 50rem;
    color: var(--neutral_10);
    font-size: 2.5rem;
    margin: 0px auto;
}

@media (max-width: 48rem) {
    .rewards>div {
        height: 80vh;
    }

    .rewards>div::before {
        background-size: 80%;
    }

    .rewards p {
        font-weight: 500;
        font-size: 4vw;
    }
}

@media (max-width: 40rem) {
    .rewards>div {
        height: 85vh;
    }

    .rewards footer {
        padding: 2rem 1.5rem;
    }

    .rewards p {
        font-size: 6vw;
    }
}

.plans {
    margin: 0px 1.25rem 10rem;
    position: relative;
}

.plans h2 {
    color: var(--neutral_90);
    font-weight: 500;
    font-size: 4vw;
    margin: 0px 6rem;
    position: relative;
    z-index: 1;
}

.plans .plan_tabs {
    display: flex;
    gap: 0.24rem;
    background-color: var(--neutral_90);
    border-radius: 3rem;
    outline: solid .35rem var(--neutral_90);
    position: absolute;
    top: 0.75rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
}

.plans .plan_tabs button {
    height: 2.5rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    border-radius: 3rem;
    font-size: 1.2rem;
    padding: 0px 1.5rem;
    font-weight: 600;
    color: var(--neutral_10);
}

.plans .plan_tabs button.active {
    background-color: var(--neutral_10);
    color: var(--neutral_90);
}

.plans .plan_tabs button:hover {
    opacity: initial;
}

.plans .plan_tabs button em {
    font-size: 0.9rem;
    color: var(--neutral_90);
    background-color: rgb(253, 230, 138);
    height: 1.2rem;
    line-height: 1.2rem;
    padding: 0px 0.35rem;
    border-radius: 0.25rem;
    outline: solid .15rem var(--neutral_90);
}

.plans .cards {
    max-width: 100rem;
    box-sizing: border-box;
    background-color: var(--neutral_20);
    background-image: url("../img/station.svg");
    background-repeat: no-repeat;
    background-position: 3rem bottom;
    background-size: 85%;
    border-radius: 2.5rem;
    padding: 0.75rem 3.5rem;
    display: flex;
    gap: min(2.5vw, 2.5rem);
    flex-wrap: wrap;
    align-items: flex-start;
    margin: 2rem auto 0px;
    position: relative;
}

.plans .cards.month h3 em {
    display: none;
}

.plans .cards.month .m {
    display: block;
}

.plans .cards.month .a {
    display: none;
}

.plans .cards.year h3 em {
    display: initial;
}

.plans .cards.year .m {
    display: none;
}

.plans .cards.year .a {
    display: block;
}

.plans .cards::after {
    content: "";
    width: 13rem;
    height: 13rem;
    background: url("../img/antena.svg") center bottom / contain no-repeat;
    position: absolute;
    top: -13rem;
    right: 8rem;
}

.plans .plan_card {
    flex: 1 1 0px;
    background-color: var(--neutral_10);
    border-radius: 3rem;
    outline: dashed 1px var(--neutral_90);
    padding: 0.5rem;
    position: relative;
}

.plans .plan_card div {
    border-radius: 2.5rem;
    padding: 2rem;
    border: solid 1px var(--neutral_90);
    overflow: hidden;
    max-height: 7.5rem;
    transition: max-height 0.2s cubic-bezier(0.5, 0, 0, 1) 0.2s, background-color 0.4s cubic-bezier(0.5, 0, 0, 1) 0.1s, color 0.4s cubic-bezier(0.5, 0, 0, 1) 0.1s;
}

.plans .plan_card div footer {
    margin: 2rem 0px 0px;
    position: relative;
}

.plans .plan_card div footer::after {
    content: "";
    width: 1.5rem;
    height: 1.5rem;
    mask-image: url("../img/icons/arrow.svg");
    mask-size: contain;
    background-color: var(--neutral_10);
    position: absolute;
    top: 50%;
    right: 1rem;
    transform: translateY(-50%);
}

.plans .plan_card div a {
    padding: 0.3rem;
    background-color: var(--neutral_10);
    border-radius: 3rem;
    font-size: 1.1rem;
    font-weight: 700;
    display: inline-block;
    transition: transform 0.2s cubic-bezier(0.5, 0, 0, 1);
}

.plans .plan_card div a:hover {
    transform: scale(1.05);
}

.plans .plan_card div a:hover span {
    background-color: var(--brand);
}

.plans .plan_card div a span {
    height: 2.5rem;
    border-radius: 2.5rem;
    line-height: 2.5rem;
    display: inline-block;
    padding: 0px 1.25rem;
    border: solid .3rem var(--neutral_90);
    color: var(--neutral_90);
    transition: background-color 0.2s cubic-bezier(0.5, 0, 0, 1);
}

.plans .plan_card::before,
.plans .plan_card::after {
    content: "";
    width: 7.5rem;
    height: 7.5rem;
    position: absolute;
    top: 4rem;
    right: 1rem;
    mask-repeat: no-repeat;
    mask-position: center center;
    background-color: var(--neutral_90);
    z-index: 1;
}

.plans .plan_card::before {
    mask-image: url("../img/splash.svg");
    mask-size: contain;
    animation-name: splash;
    animation-duration: 10s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

.plans .plan_card::after {
    mask-image: url("../img/icons/hand-pointer.svg");
    mask-size: 4rem;
}

.plans .plan_card.active {
    outline: solid .3rem var(--neutral_90);
}

.plans .plan_card.active::before,
.plans .plan_card.active::after {
    background-color: var(--neutral_10);
    animation: auto ease 0s 1 normal none running none;
}

.plans .plan_card.active div {
    background-color: var(--neutral_90);
    color: var(--neutral_10);
    max-height: 30rem;
    transition: max-height 0.2s ease-in, background-color 0.4s cubic-bezier(0.5, 0, 0, 1), color 0.4s cubic-bezier(0.5, 0, 0, 1);
}

@keyframes splash {
    100% {
        transform: rotate(359deg);
    }
}

.plans h3 {
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 2.5rem;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
    padding: 0px 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.plans h3 em {
    font-size: 1.1rem;
    color: var(--neutral_10);
    background-color: var(--neutral_90);
    height: 1.5rem;
    line-height: 1.5rem;
    padding: 0px 0.5rem;
    border-radius: 0.5rem;
}

.plans h4 {
    height: 3rem;
    font-size: 2.5rem;
    font-weight: 600;
    line-height: 3rem;
}

.plans h4 small {
    font-size: 1rem;
}

.plans h5 {
    font-size: 1.5rem;
    font-weight: 400;
}

.plans h6 {
    font-size: 1.25rem;
    font-weight: 400;
    margin: 1.25rem 0px;
}

.plans h6 em {
    font-size: 1.75rem;
    font-weight: 600;
}

.plans li {
    font-size: 1.1rem;
    line-height: 1.25rem;
    padding-left: 2.4rem;
    margin-bottom: 0.75rem;
    background: url("../img/icons/fire.svg") 0px center no-repeat;
}

.plans .personal {
    flex: 0 0 100%;
    background-color: rgba(239, 227, 205, 0.75);
    border-radius: 4rem;
    outline: dashed 1px var(--neutral_90);
    padding: 0px 0.75rem 0px 2.5rem;
    height: 4rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-sizing: border-box;
}

.plans .personal p {
    font-size: 1.1rem;
}

.plans .personal b {
    font-weight: 600;
}

.plans .personal button {
    font-weight: 600;
    height: 2.75rem;
    border: solid .3rem var(--neutral_90);
    border-radius: 3rem;
    line-height: 2.25rem;
    padding: 0px 1.25rem;
    opacity: 0.3;
    transition: opacity 0.4s cubic-bezier(0.5, 0, 0, 1);
    overflow: hidden;
}

.plans .personal button:hover {
    background-color: var(--neutral_90);
    color: var(--neutral_10);
}

.plans .personal:hover button {
    opacity: 1;
}

@media (max-width: 64rem) and (orientation: portrait) {
    .plans .cards {
        padding: 0.75rem;
        border-radius: 3.5rem 3.5rem 2.5rem 2.5rem;
        gap: 0.75rem;
    }

    .plans .plan_card div {
        padding: 1rem;
    }

    .plans h3 {
        padding: 0px 1rem;
        font-size: 2.2vw;
    }

    .plans h4 {
        font-size: 3.5vw;
    }

    .plans h5 {
        font-size: 2.2vw;
    }

    .plans h6 {
        font-size: 1.8vw;
    }

    .plans li {
        font-size: 1.8vw;
    }
}

@media (max-width: 48rem) {
    .plans h2 {
        margin: 0px 5rem 0rem;
    }

    .plans .plan_tabs {
        top: 0px;
        left: initial;
        transform: initial;
        right: 5vw;
    }

    .plans .cards {
        padding: 0.75rem 5vw;
        margin: 2rem auto 0px;
    }

    .plans .plan_card {
        box-sizing: border-box;
        flex: 0 0 100%;
    }

    .plans .plan_card div {
        padding: 1rem 2rem;
    }

    .plans h3 {
        padding: 0px 2rem;
        font-size: 1.5rem;
    }

    .plans h4 {
        font-size: 2.2rem;
    }

    .plans h5 {
        font-size: 1.5rem;
    }

    .plans h6 {
        margin: 0.8rem 0px 1.25rem;
        font-size: 1.5rem;
    }

    .plans li {
        font-size: 1.1rem;
    }
}

@media (max-width: 40rem) {
    .plans {
        margin: 0px 0.5rem 2rem;
    }

    .plans h2 {
        text-align: center;
        font-size: 12vw;
    }

    .plans .plan_tabs {
        position: relative;
        margin: 1rem auto 0px;
        top: initial;
        right: initial;
        width: 85vw;
    }

    .plans .plan_tabs button {
        padding: 0px;
        flex: 1 1 0px;
        justify-content: center;
    }

    .plans .cards {
        padding: 0.75rem;
        background-position: 65% bottom;
        background-size: 290%;
    }

    .plans .plan_card div {
        padding: 1rem 6vw;
    }

    .plans h3 {
        padding: 0px 6vw;
    }

    .plans h6 {
        font-size: 4.5vw;
    }

    .plans .personal {
        height: 6rem;
        border-radius: 2rem;
        padding: 0px 0.75rem 0px 6vw;
    }

    .plans .personal p {
        font-size: 4vw;
    }
}

.integrations {
    padding: 15rem 1.25rem;
    position: relative;
    background: url("../img/shine.svg") center center / auto 100% no-repeat;
    margin-top: -14rem;
}

.integrations h2 {
    color: var(--neutral_90);
    font-weight: 500;
    font-size: 4vw;
    margin: 0px 6rem 3rem;
}

.integrations article {
    border-bottom: solid 1px var(--neutral_90);
    max-height: 8rem;
    overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0.5, 0, 0, 1);
    background-color: var(--neutral_10);
}

.integrations article:first-of-type {
    border-top: solid 1px var(--neutral_90);
}

.integrations article.active {
    max-height: 26.75rem;
}

.integrations article.active hgroup::after {
    animation: 0.2s linear 0s infinite normal none running blink;
}

.integrations hgroup {
    height: 8rem;
    padding: 0px 4.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}

.integrations hgroup::before {
    content: "";
    width: 2.5rem;
    height: 2.5rem;
    background: url("../img/icons/focus.svg") right center / contain no-repeat;
    position: absolute;
    top: 50%;
    right: 4.5rem;
    transform: translateY(-50%);
}

.integrations hgroup::after {
    content: "";
    width: 0.9rem;
    height: 0.9rem;
    background-color: var(--brand);
    border-radius: 100%;
    position: absolute;
    top: 50%;
    right: 5.3rem;
    transform: translateY(-50%);
    opacity: 0;
}

@keyframes blink {
    0% {
        opacity: 0;
    }

    50% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.integrations hgroup:hover::after {
    opacity: 1;
    transition: opacity 0.3s cubic-bezier(0.5, 0, 0, 1);
}

.integrations h3 {
    font-weight: 500;
    font-size: 2.5vw;
    text-transform: uppercase;
    letter-spacing: 0.25rem;
}

.integrations p {
    font-weight: 400;
    font-size: 1.5vw;
    margin-right: 5rem;
}

.integrations .wrapper {
    height: 18.75rem;
    width: 100%;
    position: relative;
    display: flex;
    align-items: center;
    overflow-x: auto;
}

.integrations .wrapper::-webkit-scrollbar-thumb {
    border-right: none;
    border-bottom: solid .25rem var(--neutral_10);
    background-color: var(--neutral_20);
}

.integrations .box {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 18.75rem;
    margin: 0px;
    padding: 0px;
    position: relative;
    flex-shrink: 0;
    color: rgb(0, 0, 0);
    font-size: 21px;
}

.integrations .box::after {
    content: "";
    width: 1px;
    height: 70%;
    background-color: var(--neutral_90);
    position: absolute;
    top: 50%;
    right: 0px;
    transform: translateY(-50%);
}

.integrations .box::before {
    content: "";
    width: 65%;
    height: 35%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50% 50%;
    background-color: var(--neutral_10);
    background-blend-mode: darken;
}

.integrations .aplicativos .shopify::before {
    background-image: url("../img/integracoes/apps/shopify.webp");
}

.integrations .aplicativos .woo::before {
    background-image: url("../img/integracoes/apps/woo.webp");
}

.integrations .aplicativos .activecampaign::before {
    background-image: url("../img/integracoes/apps/activecampaign.webp");
}

.integrations .aplicativos .notazz::before {
    background-image: url("../img/integracoes/apps/notazz.webp");
}

.integrations .aplicativos .astron::before {
    background-image: url("../img/integracoes/apps/astron.webp");
}

.integrations .aplicativos .hotzapp::before {
    background-image: url("../img/integracoes/apps/hotzapp.webp");
}

.integrations .gateways .appmax::before {
    background-image: url("../img/integracoes/gateways/appmax.webp");
}

.integrations .gateways .getnet::before {
    background-image: url("../img/integracoes/gateways/getnet.webp");
}

.integrations .gateways .iugu::before {
    background-image: url("../img/integracoes/gateways/iugu.webp");
}

.integrations .gateways .asaas::before {
    background-image: url("../img/integracoes/gateways/asaas.webp");
}

.integrations .gateways .mercado_pago::before {
    background-image: url("../img/integracoes/gateways/mercado_pago.webp");
}

.integrations .gateways .pagarme::before {
    background-image: url("../img/integracoes/gateways/pagarme.webp");
}

.integrations .gateways .abmex::before {
    background-image: url("../img/integracoes/gateways/abmex.webp");
}

.integrations .gateways .zoutipay::before {
    background-image: url("../img/integracoes/gateways/zoutipay.webp");
}

.integrations .gateways .melldin::before {
    background-image: url("../img/integracoes/gateways/melldin.webp");
}

.integrations .gateways .aktapay::before {
    background-image: url("../img/integracoes/gateways/aktapay.webp");
}

.integrations .gateways .arkama::before {
    background-image: url("../img/integracoes/gateways/arkama.webp");
}

.integrations .gateways .ativopay::before {
    background-image: url("../img/integracoes/gateways/ativopay.webp");
}

.integrations .gateways .avizz::before {
    background-image: url("../img/integracoes/gateways/avizz.webp");
}

.integrations .gateways .beehive::before {
    background-image: url("../img/integracoes/gateways/beehive.webp");
}

.integrations .gateways .cashtime::before {
    background-image: url("../img/integracoes/gateways/cashtime.webp");
}

.integrations .gateways .cielo::before {
    background-image: url("../img/integracoes/gateways/cielo.webp");
}

.integrations .gateways .dompagamentos::before {
    background-image: url("../img/integracoes/gateways/dompagamentos.webp");
}

.integrations .gateways .fastpay::before {
    background-image: url("../img/integracoes/gateways/fastpay.webp");
}

.integrations .gateways .fenyxpay::before {
    background-image: url("../img/integracoes/gateways/fenyxpay.webp");
}

.integrations .gateways .horizonbank::before {
    background-image: url("../img/integracoes/gateways/horizonbank.webp");
}

.integrations .gateways .nextionpay::before {
    background-image: url("../img/integracoes/gateways/nextionpay.webp");
}

.integrations .gateways .skypayments::before {
    background-image: url("../img/integracoes/gateways/skypayments.webp");
}

.integrations .gateways .vibecash::before {
    background-image: url("../img/integracoes/gateways/vibecash.webp");
}

.integrations .gateways .eskypay::before {
    background-image: url("../img/integracoes/gateways/eskypay.webp");
}

.integrations .gateways .simplles::before {
    background-image: url("../img/integracoes/gateways/simplles.webp");
}

.integrations .gateways .bs-pay::before {
    background-image: url("../img/integracoes/gateways/bs-pay.webp");
}

.integrations .gateways .villetpay::before {
    background-image: url("../img/integracoes/gateways/villetpay.webp");
}

.integrations .gateways .sttarpay::before {
    background-image: url("../img/integracoes/gateways/sttarpay.webp");
}

.integrations .pixel .facebook::before {
    background-image: url("../img/integracoes/pixel/facebook.webp");
}

.integrations .pixel .google::before {
    background-image: url("../img/integracoes/pixel/google.webp");
}

.integrations .pixel .analytics::before {
    background-image: url("../img/integracoes/pixel/analytics.webp");
}

.integrations .pixel .tiktok::before {
    background-image: url("../img/integracoes/pixel/tiktok.webp");
}

.integrations .pixel .pinterest::before {
    background-image: url("../img/integracoes/pixel/pinterest.webp");
}

.integrations .pixel .kwai::before {
    background-image: url("../img/integracoes/pixel/kwai.webp");
}

.integrations .pixel .taboola::before {
    background-image: url("../img/integracoes/pixel/taboola.webp");
}

.integrations .pixel .uol_ads::before {
    background-image: url("../img/integracoes/pixel/uol_ads.webp");
}

.integrations .pixel .outbrain::before {
    background-image: url("../img/integracoes/pixel/outbrain.webp");
}

@media (max-width: 48rem) {
    .integrations {
        padding: 15rem 0.5rem;
    }

    .integrations h2 {
        margin: 0px 0px 3rem 4rem;
    }
}

@media (max-width: 40rem) {
    .integrations {
        padding: 15rem 0.5rem;
    }

    .integrations h2 {
        font-size: 8vw;
        margin: 0px 0px 2rem;
        text-align: center;
    }

    .integrations hgroup {
        padding: 0px 1.5rem;
        height: 5rem;
    }

    .integrations hgroup::before {
        width: 1.5rem;
        height: 1.5rem;
        right: 1.5rem;
    }

    .integrations hgroup::after {
        right: 1.8rem;
    }

    .integrations article {
        max-height: 5rem;
    }

    .integrations h3 {
        font-size: 4vw;
    }

    .integrations p {
        font-size: 2.5vw;
        margin-right: 2rem;
        text-align: right;
    }

    .integrations .wrapper {
        height: 10rem;
    }

    .integrations .box {
        width: 8rem;
    }
}

.footer {
    margin: 0px 1.25rem;
    padding: 20rem 0px 28rem;
    box-sizing: border-box;
    position: relative;
}

@keyframes footer-orbit {
    0% {
        transform: translate(-50%, -50%) rotate(0deg);
    }

    100% {
        transform: translate(-50%, -50%) rotate(359deg);
    }
}

.footer h2 {
    text-transform: uppercase;
    text-align: center;
    font-size: min(10vw, 10rem);
    position: relative;
    z-index: 1;
}

.footer>div {
    max-width: 100rem;
    margin: 0px auto;
    display: flex;
    gap: min(2.5vw, 2.5rem);
    position: relative;
    z-index: 0;
}

.footer>div::before {
    content: "";
    width: 65rem;
    height: 65rem;
    background-image: url("../img/footer-gradient.svg");
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.footer>div::after {
    content: "";
    width: 70rem;
    height: 70rem;
    background-image: url("../img/footer-orbit.svg");
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    left: 50%;
    animation: 10s linear 0s infinite normal none running footer-orbit;
}

.footer>div>address {
    max-width: 24rem;
    position: relative;
    z-index: 1;
}

.footer>div>address::before {
    content: "";
    width: min(4.2vw, 4.2rem);
    height: min(4.2vw, 4.2rem);
    background-image: url("../img/icons/whatsapp.svg");
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 1.8rem;
    right: 2rem;
    z-index: 1;
}

.footer address {
    flex: 1 1 0px;
    background-color: var(--neutral_10);
    border-radius: 3rem;
    outline: dashed 1px var(--neutral_90);
    padding: 0.5rem;
    font-style: normal;
    text-align: center;
}

.footer address>div {
    border-radius: 2.5rem;
    padding: min(2vw, 2rem);
    border: solid 1px var(--neutral_90);
}

.footer address a {
    font-size: 1rem;
    font-weight: 700;
    color: var(--neutral_90);
    display: inline-block;
    margin: 1.5rem auto;
    border: solid .25rem var(--neutral_90);
    padding: 0.25rem 0.75rem;
    border-radius: 3rem;
}

.footer address a:hover {
    background-color: var(--neutral_90);
    color: var(--neutral_10);
}

.footer address i {
    width: min(10vw, 11.25rem);
    height: min(10vw, 11.25rem);
    display: block;
    margin: 0px auto 1.5rem;
    border: solid 1px var(--neutral_90);
    background-size: contain;
}

.footer address:first-of-type i {
    background-image: url("../img/qr-suporte.svg");
}

.footer address:nth-of-type(2) i {
    background-image: url("../img/qr-atendimento.svg");
}

.footer strong {
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 2.5rem;
    margin-bottom: 0.5rem;
    padding: 0px 2rem;
    text-align: left;
}

.footer em {
    font-size: min(1.75vw, 1.75rem);
    font-weight: 600;
}

.footer hr {
    display: inline-block;
    width: 0.6rem;
    border: none;
}

.footer p {
    font-size: 1.15rem;
}

.footer aside {
    flex: 1 0 0px;
    display: flex;
    flex-flow: column wrap;
    gap: min(2.5vw, 2.5rem);
    position: relative;
    z-index: 1;
}

.footer aside address {
    text-align: left;
}

.footer aside address a {
    margin-bottom: 0px;
}

.footer aside .social_container {
    flex: 1 0 0px;
    background-color: var(--neutral_90);
    border-radius: 3rem;
    padding: 0px min(2.5vw, 2.5rem);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.footer aside ul {
    display: flex;
    gap: 0.75rem;
}

.footer aside li {
    width: min(4.2vw, 4.2rem);
    height: min(4.2vw, 4.2rem);
}

.footer aside li a {
    height: 100%;
    display: block;
    background-size: contain;
    background-repeat: no-repeat;
    transition: transform 0.3s cubic-bezier(0.5, 0, 0, 1);
}

.footer aside li a.instagram {
    background-image: url("../img/icons/instagram.svg");
}

.footer aside li a.youtube {
    background-image: url("../img/icons/youtube.svg");
}

.footer aside li a.facebook {
    background-image: url("../img/icons/facebook.svg");
}

.footer aside li a:hover {
    transform: scale(0.93);
}

.footer aside small {
    color: var(--neutral_10);
    text-align: right;
    font-size: min(1.5vw, 1.5rem);
    font-weight: 600;
}

.footer>a {
    position: absolute;
    bottom: 6rem;
    left: 50%;
    border-radius: 3rem;
    border: solid .25rem var(--neutral_90);
    background-color: var(--brand);
    transform: translateX(-50%) rotate(-90deg);
    z-index: 1;
    transition: transform 0.3s cubic-bezier(0.5, 0, 0, 1);
}

.footer>a:hover {
    transform: translateX(-50%) rotate(-90deg) scale(0.9);
}

.footer>a i {
    width: 5rem;
    height: 3rem;
    display: block;
    background: url("../img/icons/arrow.svg") 50% 50% no-repeat;
}

@media (max-width: 1280px) {
    .footer {
        padding: 20rem 0px 30rem;
    }
}

@media (max-width: 64rem) and (orientation: portrait) {
    .footer {
        padding: 20rem 0px 18rem;
    }

    .footer>div {
        flex-wrap: wrap;
    }

    .footer>div::before {
        width: 55rem;
        height: 55rem;
    }

    .footer>div::after {
        width: 60rem;
        height: 60rem;
    }

    .footer>div>address {
        max-width: initial;
    }

    .footer address {
        flex: 1 1 0px;
        max-width: initial;
    }

    .footer address::before {
        width: 6vw;
        height: 6vw;
    }

    .footer address i {
        width: 18vw;
        height: 18vw;
    }

    .footer aside {
        flex-flow: initial;
    }

    .footer aside address {
        flex: 1 1 auto;
    }

    .footer aside .social_container {
        flex: 1 1 auto;
        justify-content: space-evenly;
        flex-flow: column;
    }

    .footer aside li {
        width: 6vw;
        height: 6vw;
    }

    .footer aside em {
        font-size: 3vw;
    }

    .footer aside small {
        font-size: 2.5vw;
        text-align: center;
        padding-bottom: 0.5rem;
    }

    .footer em {
        font-size: 4vw;
    }
}

@media (max-width: 40rem) {
    .footer {
        padding: 10rem 0px 18rem;
    }

    .footer h2 {
        margin-bottom: 2rem;
    }

    .footer em {
        font-size: 7vw;
    }

    .footer address i {
        width: 32vw;
        height: 32vw;
    }

    .footer address>div {
        padding: 1rem;
    }

    .footer>div::before {
        width: 310vw;
        height: 310vw;
    }

    .footer>div::after {
        width: 330vw;
        height: 330vw;
    }

    .footer>div address::before {
        width: 12vw;
        height: 12vw;
    }

    .footer aside {
        flex-flow: column wrap;
    }

    .footer aside em {
        font-size: 4.5vw;
        margin-bottom: 0.75rem;
    }

    .footer aside li {
        width: 12vw;
        height: 12vw;
    }

    .footer aside .social {
        padding: 1rem 1.5rem;
        flex-flow: initial;
        justify-content: space-between;
    }

    .footer aside small {
        font-size: 3.5vw;
    }
}

body #magicMouseCursor {
    position: fixed;
    width: 35px;
    height: 35px;
    border: 1px solid rgb(255, 255, 255);
    border-radius: 50%;
    z-index: 9999;
    left: 0px;
    top: 0px;
    transition: transform 0.07s, width 0.3s, height 0.3s;
    pointer-events: none;
}

body #magicMouseCursor.cursor-square {
    border-radius: 0px;
}

body #magicPointer {
    height: 5px;
    width: 5px;
    top: 0px;
    left: 0px;
    position: fixed;
    background: rgb(255, 255, 255);
    border-radius: 50%;
    pointer-events: none;
    transition: background 0.2s, width 0.2s, height 0.2s, box-shadow 0.2s;
}

body #magicPointer.pointer-blur {
    height: 50px;
    width: 50px;
    background: none;
    border: 1px solid rgb(255, 255, 255);
    box-shadow: rgb(255, 255, 255) 0px 0px 15px -5px;
}

body #magicPointer.pointer-overlay {
    height: 50px;
    width: 50px;
    mix-blend-mode: difference;
    box-shadow: rgb(255, 255, 255) 0px 0px 15px -5px;
}

body #magicPointer.is-hover {
    background: red;
}

body .magic-hover {}

body .magic-hover:hover {}