* {
    box-sizing: border-box;
    top: 0;
    left: 0;
    padding: 0;
    margin: 0;
    position: relative;
    user-select: none;
    -webkit-user-select: none
}

@font-face {
    font-family: HaasR;
    src: url(/fonts/NeueHaasGrotDispRound-55Roman-Web.woff2) format("woff2"), url(/fonts/NeueHaasGrotDispRound-55Roman-Web.woff) format("woff");
    font-style: normal;
    font-stretch: normal;
    font-display: swap
}

@font-face {
    font-family: HaasT;
    src: url(/fonts/NeueHaasGrotDispRound-35Thin-Web.woff2) format("woff2"), url(/fonts/NeueHaasGrotDispRound-35Thin-Web.woff) format("woff");
    font-style: normal;
    font-stretch: normal;
    font-display: swap
}

@font-face {
    font-family: PT Mono;
    src: url(/fonts/PTMono-Regular.ttf) format("truetype");
    font-display: swap
}

#aux {
    left: 12.5vw;
    width: 75vw;
    height: 100vh;
    opacity: 1;
    position: fixed;
    z-index: 99999;
    pointer-events: none;
    border-left: 1px solid cyan;
    border-right: 1px solid cyan
}

html,
body {
    width: 100vw;
    height: 100vh;
    color: #363636;
    font-family: HaasR;
    color: #000;
    -webkit-font-smoothing: antialiased
}

#preloader {
    padding: 1vw;
    width: 100vw;
    height: 100vh;
    background: linear-gradient(0deg, #dbdad9, #ffffff);
    z-index: 99999999;
    position: fixed;
    transition: 1s ease;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column
}

@media screen and (max-width:1024px) and (orientation:portrait) {
    #preloader {
        background: linear-gradient(180deg, #dbdad9, #ffffff)
    }
}

#preloader.ready {
    pointer-events: none;
    opacity: 0
}

#percent {
    font-size: 4vw;
    text-align: center;
    width: 36VW;
    line-height: .8
}

#aceptar {
    opacity: 0;
    position: fixed;
    text-transform: uppercase;
    width: 100vw;
    height: 100vh;
    z-index: 99;
    transition: opacity .5s ease;
    cursor: none;
    pointer-events: none
}

#aceptar div {
    transform: translate(-50%, -50%);
    border-radius: 20vw;
    width: 4vw;
    height: 4vw;
    border: 1px solid;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: var(--p5);
    cursor: none;
    text-align: center
}

#aceptar.ready.fonts {
    opacity: 1;
    pointer-events: initial
}

#aceptar.out {
    opacity: 0 !important;
    pointer-events: none !important
}

#superiorstart,
#superior {
    position: fixed;
    width: 20vw;
    text-align: center;
    left: 40vw;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: var(--p4);
    text-transform: uppercase;
    font-family: HaasR;
    z-index: 999;
    pointer-events: none;
    transition: height 1s ease;
    font-weight: lighter;
    color: var(--color)
}

#superior {
    height: calc(50vh - 13vw);
    z-index: 0;
    display: none
}

#superiormask,
#superiormask2 {
    height: 1vw;
    overflow: hidden;
    position: relative;
    display: flex
}

#superiormask div,
#superiormask2 div {
    display: flex;
    align-items: center;
    margin-left: .16vw;
    transform: translatey(1vw)
}

#superiormask2 div {
    transform: translatey(0)
}

#silenciostart,
#silencio {
    display: flex;
    align-items: center;
    position: relative;
    transform: translate(5vw);
    opacity: 0;
    transition: opacity .3s ease
}

#silencio {
    opacity: 1;
    transform: translate(0)
}

#silenciostart.ready {
    opacity: 1
}

#silenciostart span,
#silencio span {
    font-size: 160%;
    position: relative;
    top: .16vw;
    margin-left: .15vw
}

#superiorstart.out {
    display: none
}

#superior.ready {
    display: flex
}

#superiorstart.ready {
    height: calc(50vh - 13vw)
}

::-webkit-scrollbar {
    width: 0px
}

#content {
    position: fixed;
    height: auto
}

#content.fix {
    height: 100vh
}

#wrapper.ready #content {
    height: auto
}

#wrapper {
    color: var(--color)
}

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

:root {
    --p1: 9.8vw;
    --p2: 2.7vw;
    --p3: 1.5vw;
    --p4: .84vw;
    --p5: .6vw;
    --s1: .76vw;
    --color: #000
}

#largemov,
#movbar,
#titmov,
#clientstit,
.mySwiper,
#barcodeswiper,
.click,
#welcomemov {
    display: none
}

#root {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    overflow: hidden;
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    opacity: 1;
    z-index: 0;
    transform: translateZ(0);
    filter: blur(.1vw)
}

#root.arriba {
    z-index: 99999
}

section {
    width: 100vw;
    padding: 0vw;
    position: relative;
    height: auto
}

#ticket {
    transform: translateY(34vw);
    margin: .5vw .5vw 0;
    position: fixed;
    width: 11.6vw;
    top: auto;
    bottom: 0;
    left: auto;
    right: 0;
    z-index: 0;
    font-family: PT Mono;
    padding: .7vw;
    font-size: var(--s1);
    line-height: 1.2;
    transition: .7s;
    transition-timing-function: steps(6, end);
    background: white;
    --mask: conic-gradient(from 135deg at top, #0000, #000 1deg 89deg, #0000 90deg) 50%/.3vw 100%;
    -webkit-mask: var(--mask);
    mask: var(--mask)
}

#ticketbarcode {
    width: 100%;
    padding-top: .5vw
}

.cap {
    text-transform: uppercase;
    display: inline-block;
    margin-bottom: .3vw
}

#ticket.start {
    transform: translateY(29.2vw)
}

#date {
    position: absolute;
    right: .9vw;
    left: auto;
    top: .7vw
}

.referencia {
    margin-left: .5vw
}

#bg {
    position: fixed;
    background: linear-gradient(0deg, #dbdad9, #ffffff);
    width: 100vw;
    height: 100vh;
    z-index: -1;
    top: 0
}

h1,
h2 {
    font-size: var(--p1);
    text-transform: uppercase;
    font-family: HaasT;
    font-weight: lighter;
    line-height: .9
}

h3 {
    font-size: var(--p2);
    text-transform: uppercase;
    font-family: HaasR;
    font-weight: lighter;
    line-height: .9
}

h4,
p {
    font-size: var(--p4);
    text-transform: uppercase;
    line-height: 1;
    font-weight: lighter;
    font-family: HaasR
}

.ready #landing {
    opacity: 1
}

#landing {
    opacity: 0;
    height: 100vh;
    width: 100vw;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: -100vh
}

#middle {
    text-align: center;
    width: 100vw;
    justify-content: center;
    align-items: center;
    display: flex;
    flex-direction: column;
    margin-bottom: 1.5vw;
    position: relative
}

.tit {
    width: 60vw
}

#segundo {
    width: 60vw;
    height: 4vw;
    position: relative;
    overflow: hidden
}

#landing h3 {
    margin-top: 1.5vw;
    width: 100%;
    position: absolute;
    transform: translateY(2.4vw)
}

#landing h4 {
    margin-top: 1.5vw;
    width: 46vw
}

#inferior {
    position: relative;
    width: 54vw;
    left: 23vw;
    display: flex;
    justify-content: space-between;
    font-family: HaasR;
    margin-top: 2.8vw;
    text-transform: uppercase;
    font-size: var(--p4);
    overflow: hidden
}

#inferiorinner {
    display: flex;
    opacity: 1;
    visibility: inherit;
    width: 54vw;
    justify-content: space-between
}

#inferior div {
    opacity: 0
}

#inferior span {
    font-size: var(--p5);
    top: -.2vw;
    margin-left: .4vw;
    position: relative
}

#scroll {
    position: absolute;
    top: auto;
    bottom: 3.5vw;
    width: 50vw;
    left: 25vw;
    height: auto;
    justify-content: center;
    align-items: center;
    text-transform: uppercase;
    font-size: var(--p4);
    animation: parp 1s infinite linear;
    font-family: HaasR;
    display: none;
    z-index: -1
}

#scroll.ready {
    display: flex
}

@keyframes parp {
    0% {
        opacity: 0
    }

    50% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

#barcode1 {
    width: 7vw;
    position: absolute;
    left: auto;
    right: -1.7vw;
    transform: rotate(90deg);
    top: calc(50vh - .7vw);
    opacity: 0;
    transition: opacity .4s ease
}

#limited div {
    width: 28.5vw;
    animation: pass 10s linear infinite
}

@keyframes pass {
    0% {
        transform: translate(-2vw)
    }

    to {
        transform: translate(-15.1vw)
    }
}

#att {
    width: 2.4vw;
    margin-right: .7vw
}

#frag {
    width: .7vw;
    margin-right: .1vw
}

.char {
    overflow: hidden;
    position: relative
}

.charin {
    position: absolute;
    transform: translateY(12.2vw)
}

#segunda {
    width: 100vw;
    position: relative;
    padding-top: 5vw;
    padding-bottom: 15vw
}

.word {
    overflow: hidden;
    position: relative
}

.wordin {
    position: absolute;
    transform: translateY(1vw)
}

#limited {
    position: absolute;
    left: 0;
    text-align: center;
    top: 1.3vw;
    font-size: var(--p4);
    text-transform: uppercase;
    font-family: HaasR;
    transition: opacity .4s ease;
    width: 7vw;
    overflow: hidden;
    left: calc(50vh - 3.5vw);
    font-weight: lighter
}

#barcode1.ready,
#limited.ready {
    opacity: 1
}

#large {
    position: relative;
    width: 60vw;
    left: 20vw;
    margin-top: 12vw
}

#large1,
#large2,
#large3 {
    display: flex;
    justify-content: space-between
}

#intext {
    font-size: var(--p5);
    line-height: 1;
    width: 5vw;
    text-align: center;
    position: relative;
    top: .4vw
}

#recycle,
#recycle2 {
    width: 2.1vw;
    margin-left: -1.2vw;
    margin-right: -1.2vw
}

#reg {
    font-size: 4vw;
    line-height: var(--p2);
    position: relative;
    top: .3vw
}

#textos1 {
    position: relative;
    width: 60vw;
    left: 20vw;
    display: flex;
    top: 7vw
}

.text {
    width: 100%;
    text-align: justify
}

#tercera {
    justify-content: center;
    align-items: center;
    display: flex;
    flex-direction: column;
    margin-top: 20vw
}

#tercera p {
    margin-bottom: 1vw;
    padding: 0 3vw;
    z-index: -1
}

#primernum {
    width: 7vw;
    height: 7vw;
    border: 1px solid;
    display: block;
    border-radius: .5vw;
    font-size: var(--p4);
    padding: .5vw;
    margin-bottom: 12vw;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    z-index: -1;
    text-transform: uppercase
}

#primernum span {
    font-size: var(--p2)
}

#textos1 p {
    margin-bottom: 1vw;
    padding: 0 3vw
}

#tercera h2 {
    width: 63vw;
    text-align: center;
    z-index: -1
}

#tercera h3 {
    width: 46vw;
    position: relative;
    margin-top: 1.5vw
}

#tercera img {
    position: absolute;
    right: auto;
    left: -15vw;
    font-size: var(--p3);
    top: -1.4vw;
    width: 3vw
}

#tercera img.right {
    left: auto;
    right: -14vw;
    width: 7vw;
    top: .3vw
}

#textos2 {
    display: flex;
    width: 64vw;
    margin-top: 5vw;
    position: relative;
    z-index: -1
}

.line {
    overflow: hidden
}

.linein {
    display: flex !important;
    justify-content: space-between
}

.line:last-child .linein {
    display: block !important
}

.textos2in {
    width: 50%
}

.tit2 {
    position: relative;
    overflow: hidden
}

.tit2in {
    position: absolute;
    transform: translateY(8vw)
}

.tit3 {
    position: relative;
    overflow: hidden
}

.tit3in {
    position: absolute;
    transform: translateY(8vw)
}

.lightbeep {
    width: 8.5vw;
    height: 2px;
    background: red;
    position: absolute;
    top: 1vw;
    left: 0;
    filter: blur(1px);
    opacity: 0
}

.lightbeep.on {
    opacity: 1
}

#ticket.prod1 {
    transform: translateY(26vw)
}

#ticket.prod2 {
    transform: translateY(23.5vw)
}

.table th,
.table td {
    text-align: right;
    width: 2.5vw
}

.table th:first-child,
.table td:first-child {
    text-align: left;
    width: 5.5vw
}

.table {
    font-size: var(--p5);
    text-transform: uppercase;
    line-height: 1;
    font-family: HaasR
}

.table table {
    border-spacing: 0
}

.barcode_prod {
    width: 8.5vw;
    padding: .2vw;
    margin-bottom: .5vw
}

.numero {
    font-family: HaasR;
    font-size: var(--p2);
    position: absolute;
    top: 0;
    left: 0;
    line-height: .7;
    transform-origin: top left;
    width: 5vw;
    overflow: hidden;
    height: 2vw
}

.numeroin {
    display: flex
}

.numeroinner {
    margin-left: 1.2vw
}

.etiqueta {
    width: 100vw;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: -1
}

.etiqueta.dos {
    z-index: 9
}

#marco1 {
    min-width: 17vw;
    position: relative;
    height: 61vh;
    margin: .5vw
}

#border1,
#border2,
#border3,
#border4 {
    border: 1px solid;
    border-radius: .5vw;
    overflow: hidden
}

.abajoizq {
    position: absolute;
    bottom: 0;
    right: 0;
    top: auto
}

.lat {
    text-transform: uppercase;
    position: absolute;
    transform: rotate(90deg);
    font-size: var(--p5);
    left: -3.3vw;
    top: -5vw;
    font-family: HaasR
}

.abajodch {
    position: absolute;
    bottom: 0;
    left: auto;
    right: 0;
    top: auto;
    font-family: HAASR;
    font-size: var(--p5);
    width: 8vw;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 5.4vw;
    line-height: 1
}

.lat2 {
    position: absolute;
    top: 4.7vw;
    left: auto;
    right: -4.7vw;
    transform: rotate(90deg);
    font-family: HaasR;
    font-size: var(--p5);
    text-transform: uppercase
}

#cuadrado {
    width: 20vw;
    height: 20vw;
    background-color: red;
    top: auto;
    left: auto;
    position: relative
}

#aesthetics h2 {
    width: 76vw;
    left: 12vw;
    position: relative
}

.interactive {
    position: absolute;
    top: 5.6vw;
    width: 6vw;
    left: auto;
    right: 14.2vw;
    font-size: var(--p4);
    font-family: HAASR;
    opacity: 0;
    z-index: -1
}

#aesthetics p span,
#motion p span {
    font-size: var(--p5);
    top: -.2vw;
    position: relative;
    margin-left: .1vw
}

#aesthetics,
#motion,
#disruptive,
#clients {
    margin-top: 25vw
}

.hotspicy {
    position: absolute;
    width: 15vw;
    text-align: right;
    right: 12.5vw;
    left: auto;
    top: 41vw;
    z-index: -1
}

.numdos {
    margin-top: 3vw;
    width: 5.5vw;
    left: 49vw
}

#aesthetics-textos {
    width: 75vw;
    display: flex;
    left: 12.5vw;
    position: relative;
    margin-top: 5vw
}

#aesthetics-textos p {
    padding: 2vw
}

.experiment {
    width: 48vw;
    left: 39.5vw;
    position: relative;
    margin-top: 5vw;
    text-align: justify
}

.experiment div {
    position: absolute;
    font-size: var(--p5);
    text-align: center
}

#dry {
    top: 5.7vw;
    left: 15vw;
    width: 5vw
}

#oriented {
    top: 5.7vw;
    left: 38.5vw;
    width: 5vw
}

#border2 {
    transform: translate(34vh)
}

#marco2 {
    min-width: 27vw;
    position: relative;
    height: 70vh;
    margin: .5vw
}

#marco2 .lat {
    left: -6.3vw;
    top: -8vw
}

#motion {
    margin-top: -20vh
}

#motion h2 {
    width: 75vw;
    left: 12.5vw;
    position: relative;
    overflow: hidden;
    margin-top: 17vw;
    z-index: -1
}

#motioninner {
    width: 300vw;
    transform: translate(-100vw);
    animation: motion 20s linear infinite
}

@keyframes motion {
    0% {
        transform: translate(0)
    }

    to {
        transform: translate(-90.9vw)
    }
}

.websites {
    position: relative;
    left: 47.2vw;
    margin-top: 1.2vw;
    text-align: left;
    width: 6vw;
    opacity: 0;
    z-index: 9
}

.numtres {
    font-size: var(--p3);
    position: absolute;
    top: 17vw;
    left: 12.5vw
}

.numtres.dos {
    right: 12.5vw;
    left: auto
}

.cool {
    text-align: center;
    margin-top: 5vw
}

.cooltext {
    width: 60vw;
    margin-top: 5vw;
    position: relative;
    left: 20vw;
    display: flex;
    z-index: -1
}

.cooltext p {
    padding: 2vw
}

#motion h3 {
    width: 50vw;
    left: 25vw;
    position: relative;
    margin-top: 5vw;
    text-align: center;
    z-index: -1
}

#marco3 {
    min-width: 17vw;
    position: relative;
    height: 60vh;
    margin: .5vw
}

#marco3 .lat {
    left: -2.1vw;
    top: -4vw
}

#disruptive h2 {
    width: 75vw;
    left: 12.5vw;
    position: relative;
    text-align: right
}

#disruptive .izq {
    text-align: right
}

.communication {
    position: absolute;
    top: 5.8vw;
    left: 14.5vw;
    width: 6vw;
    opacity: 0
}

.numcuatro {
    font-size: var(--p3);
    position: absolute;
    top: 1vw;
    left: auto;
    right: 12.5vw
}

#disruptivetext {
    width: 30vw;
    position: relative;
    left: 42.5vw;
    z-index: -1
}

#disruptivetext p {
    padding: 1vw 0
}

#disruptive h3 {
    position: relative;
    left: 12.5vw;
    top: 6vw
}

#marco4 {
    min-width: 17vw;
    position: relative;
    height: 61vh;
    margin-right: 45vh
}

#marco4 .lat {
    left: -2.7vw;
    top: -4vw
}

.brave {
    position: relative;
    left: 14.7vw
}

#clients {
    background: var(--color);
    color: #dbdad9;
    border-radius: 3vw;
    padding: 5vw 0 15vw 0;
    margin-top: -120vh;
    z-index: 999;
    min-height: 100vh;
    position: relative
}

#clients h2 {
    position: relative;
    width: 76vw;
    left: 12vw;
    text-align: center
}

.unique {
    position: absolute;
    right: 45.9vw;
    left: auto;
    top: 5vw
}

.noboring {
    position: absolute;
    right: 15.2vw;
    left: auto;
    text-decoration: line-through;
    top: 5vw
}

#clienttext {
    display: flex;
    width: 62vw;
    position: relative;
    margin-top: 5vw;
    left: 19vw
}

#clienttext p {
    padding: 2vw
}

#specialprojects {
    font-family: HaasR;
    text-transform: uppercase;
    font-size: var(--p2);
    width: 200vw;
    animation: link 20s linear infinite
}

#link {
    width: 40vw;
    overflow: hidden;
    border-radius: 3vw;
    position: relative;
    left: 30vw;
    margin-top: 14vw;
    transition: .3s ease;
    background: var(--color);
    color: #dbdad9;
    border: 1px solid #dbdad9;
    transform: translateZ(0)
}

/* Стили для списка клиентов */
#ourclientslist {
    display: flex;
    width: 76vw;
    position: relative;
    margin-top: 40vw;
    left: 12vw;
    gap: 10vw;
    justify-content: space-around;
}

#ourclientslist_col_1 {
    list-style: none;
    padding: 0;
    margin: 0;
    flex: 1;
}

#ourclientslist_col_2 {
    list-style: none;
    padding: 0;
    margin: 0;
    flex: 1;
}

#ourclientslist_col_1 li,
#ourclientslist_col_2 li {
    font-size: var(--p2.5);
    text-transform: none;
    line-height: 1.5;
    margin-bottom: 1vw;
    font-family: HaasR;
    color: #dbdad9;
}

#ourclientslist_col_1_title,
#ourclientslist_col_2_title {
    font-size: var(--p4);
    text-transform: uppercase;
    font-family: HaasR;
    color: #dbdad9;
    margin-bottom: 2vw;
    font-weight: lighter;
}

@keyframes link {
    0% {
        transform: translate(0)
    }

    to {
        transform: translate(-33.2vw)
    }
}

.flecha {
    display: inline-block;
    width: 2vw;
    height: 2vw;
    border-top: 2px solid;
    border-right: 2px solid;
    margin: 0 1.5vw;
    position: relative
}

.flecha div {
    width: 2.3vw;
    height: 2px;
    background: #dbdad9;
    position: absolute;
    top: .65vw;
    transform: rotate(-45deg);
    transition: .3s ease
}

#link:hover {
    background: #dbdad9;
    color: var(--color);
    border: 1px solid #dbdad9
}

#link:hover .flecha div {
    background: var(--color)
}

.progressbar,
.purchased {
    position: absolute;
    top: -2.5vw;
    border: 1px solid;
    width: 1.5vw;
    height: 1.5vw;
    border-radius: 3vw
}

.progressbar.off {
    opacity: 0
}

.purchased {
    color: red;
    opacity: 1;
    width: 6.3vw;
    text-transform: uppercase;
    font-size: var(--p4);
    padding: .29vw;
    text-align: center;
    opacity: 0
}

.purchased.on {
    opacity: 1
}

.progressbar div {
    opacity: 1;
    position: absolute;
    padding: .29vw .6vw;
    text-transform: uppercase;
    font-size: var(--p4);
    opacity: 0
}

#ticket.prod3 {
    transform: translateY(20.5vw)
}

#aesthetics {
    margin-top: calc(-50vh - 4.5vw)
}

#marco2 .numeroin {
    display: flex;
    flex-direction: column-reverse;
    transform: translateY(-3vw)
}

#marco2 .numeroinner {
    margin-bottom: 1.1vw;
    margin-left: 0
}

#marco3 .numeroin {
    flex-direction: row-reverse
}

#marco3 .numeroinner {
    margin-right: 1.1vw;
    margin-left: 0
}

#disruptive {
    margin-top: calc(-50vh - 4.5vw)
}

#marco4 {
    min-width: 17vw;
    position: relative;
    height: 60vh;
    margin: .5vw
}

#border4 {
    transform: translate(-23vh)
}

#ticket.prod4 {
    transform: translateY(18vw)
}

#ticket.final {
    transform: translateY(0);
    transition-timing-function: steps(12, end);
    transition-duration: 2.2s
}

#final {
    height: 3vw;
    margin-top: -100vh;
    z-index: 0;
    position: relative;
    z-index: -1
}

#final2 {
    height: 100vh;
    margin-top: -3vw
}

#final h2 {
    width: 75vw;
    left: 12.5vw;
    position: relative;
    text-align: center;
    padding-top: 3vw;
    z-index: -1
}

#final2 button {
    font-size: var(--p1);
    font-family: HaasT;
    text-transform: uppercase;
    position: absolute;
    bottom: 0;
    top: auto;
    width: 60vw;
    text-align: center;
    border-radius: 9vw;
    border: 1px solid;
    background: transparent;
    margin-left: 20vw;
    margin-bottom: 1vw;
    z-index: 9;
    transition: .3s ease;
    background: #dededd
}

#final2 button:hover {
    border: 1px solid var(--color);
    background: var(--color);
    color: #dbdad9
}

#final2 button:hover a {
    color: #dbdad9
}

#backtop {
    position: absolute;
    top: 4vw;
    font-family: HaasR;
    text-transform: uppercase;
    font-size: var(--p2);
    left: auto;
    line-height: 1;
    right: 0;
    width: 11.5vw;
    opacity: 0;
    cursor: pointer
}

#backtop div {
    font-size: var(--p2);
    margin-top: 1vw
}

#open24 {
    font-family: HaasR;
    position: absolute;
    width: 54.8vw;
    left: 22.5vw;
    display: flex;
    text-transform: uppercase;
    top: 1vw;
    justify-content: space-between;
    font-size: var(--p4)
}

#links ul {
    list-style: none;
    display: flex;
    width: 11.8vw;
    justify-content: space-between
}

#lateral {
    width: 100vh;
    transform-origin: 50% 50%;
    transform: rotate(-90deg);
    height: 4vw;
    font-family: HaasR;
    font-size: var(--p2);
    text-transform: uppercase;
    position: fixed;
    left: calc(-50vh + 2vw);
    top: calc(50vh - 2vw);
    line-height: 1.4;
    color: var(--color);
    opacity: 0;
    transition: opacity .5s ease;
    z-index: 99
}

#lateral.ready {
    opacity: 1
}

#lateralinner {
    width: 3000vw;
    display: flex;
    padding-left: 100vh
}

#lat1,
#lat3,
#lat5,
#lat6,
#lat7 {
    margin-right: 10vw
}

#lat2 {
    font-size: var(--p3);
    margin-top: .4vw;
    margin-right: 10vw
}

#lat8 {
    font-size: var(--p3);
    width: 100vh;
    display: flex;
    justify-content: space-between;
    padding: 1vw;
    line-height: 1
}

#lat4 {
    margin-right: 2vw
}

#lat42 {
    font-size: var(--p4);
    margin-top: .9vw;
    margin-right: 10vw;
    line-height: 1.2
}

#lat5 img,
#lat6 img {
    display: inline;
    width: 2.5vw;
    top: .1vw;
    margin: 0 1vw
}

#lat7 img {
    display: inline;
    width: 3vw;
    top: .1vw;
    margin: 0 1vw
}

#latcopyright {
    font-size: var(--p5)
}

#latmail {
    display: flex;
    line-height: 1.1
}

#copymail {
    width: 1.8vw;
    height: 1.8vw;
    border-radius: 100%;
    border: 1px solid;
    margin-left: 1.2vw;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: .4s ease;
    cursor: pointer
}

#copymail:hover {
    background: var(--color)
}

#copymail:hover img {
    filter: invert(1)
}

#copymail img {
    position: absolute;
    transition: .4s ease;
    transform: rotate(90deg)
}

#copied {
    position: absolute;
    font-size: var(--p5);
    top: 1.7vw;
    right: 3vw;
    left: auto;
    display: inline-flex;
    opacity: 0;
    transition: .4s ease
}

#copied.on {
    opacity: 1
}

#barcodelat {
    width: 9.4vw;
    margin-top: 0vw;
    margin-right: 8vw
}

#fixworks {
    position: fixed;
    font-family: HaasR;
    font-size: var(--p4);
    text-transform: uppercase;
    margin: .5vw;
    border-radius: 3vw;
    right: 0;
    left: auto;
    width: 11vw;
    z-index: 99;
    border: 1px solid var(--color);
    width: 1.8vw;
    height: 1.8vw;
    overflow: hidden;
    transition: .5s ease;
    background: transparent;
    opacity: 0;
    cursor: pointer
}

#fixworks.ready {
    opacity: 1
}

#fixworks img {
    top: .1vw;
    width: 1.5vw;
    height: 1.5vw;
    position: absolute;
    right: .075vw;
    left: auto;
    transition: .5s ease
}

#fixworks.open {
    width: 11.6vw
}

#fixworks.open:hover {
    color: #fff;
    background-color: var(--color);
    border: 1px solid var(--color)
}

#fixworks:hover {
    width: 11.6vw
}

#fixworks:hover #selected {
    opacity: 1 !important
}

#fixworks.open:hover img {
    filter: invert(1)
}

#selected {
    position: absolute;
    top: .4vw;
    right: auto;
    left: .8vw;
    width: 7.8vw;
    opacity: 0
}

.open #selected {
    opacity: 1
}

#eco {
    position: absolute;
    width: 8vw;
    top: 9vw;
    text-transform: uppercase;
    font-size: var(--p5);
    display: flex;
    border: 1px solid;
    border-radius: .5vw;
    padding-top: .3vw;
    left: auto;
    right: 0
}

#eco img {
    width: 2vw;
    display: block;
    top: -.2vw;
    margin-right: .5vw
}

#termo {
    position: absolute;
    width: 2.5vw;
    top: 32.5vw;
    left: 22vw;
    right: auto
}

#boring {
    position: absolute;
    width: 7vw;
    left: 30vw;
    top: 35vw;
    z-index: -1
}

#imginside {
    display: inline-block;
    position: relative;
    width: 4.9vw;
    height: 7vw;
    margin: 0 2vw;
    border-radius: .5vw;
    left: 0;
    top: 0;
    background: url(/img/lata_abriendo.jpg) center center / cover
}

#imginside3 {
    display: inline-block;
    width: 8vw;
    height: 7vw;
    background: url(/img/bolsa_estanteria.jpg) center center / cover;
    border-radius: .5vw;
    margin-right: 2vw;
    top: 0;
    left: .5vw
}

#imginside4 {
    display: inline-block;
    width: 7vw;
    height: 9.5vw;
    background: url(/img/bolsa_mano.jpg) center center / cover;
    border-radius: .5vw;
    margin-right: 2vw;
    top: 1.2vw;
    left: -11vw
}

.imginside5 {
    display: inline-block;
    width: 9vw;
    height: 7vw;
    background: url(/img/banco_batidobolsa.jpg) center center / cover;
    border-radius: .5vw;
    margin: 0 2vw
}

.imginside6 {
    display: inline-block;
    width: 9vw;
    height: 7vw;
    background: url(/img/latabarrita_escaleras.jpg) center center / cover;
    border-radius: .5vw;
    margin: 0 2vw
}

#imginside7 {
    position: absolute;
    top: 15.6vw;
    left: 17vw;
    width: 12vw;
    height: 16vw;
    background: url(/img/grupo_encajaregistradora.jpg) center center / cover;
    border-radius: .5vw;
    margin: 0 2vw;
    z-index: 9
}

#imginside8 {
    position: absolute;
    top: 15.6vw;
    left: 67vw;
    width: 12vw;
    height: 16vw;
    background: url(/img/bolsaplastico_mano.jpg) center center / cover;
    border-radius: .5vw;
    margin: 0 2vw;
    z-index: 9
}

#imginside9 {
    position: absolute;
    top: 46.6vw;
    left: 59vw;
    width: 16vw;
    height: 22vw;
    background: url(/img/carrito_productos.jpg) center center / cover;
    border-radius: .5vw;
    margin: 0 2vw;
    z-index: 0
}

#imginside10 {
    position: absolute;
    top: 54vw;
    left: 10vw;
    width: 16vw;
    height: 22vw;
    background: url(/img/manos_productos.jpg) center center / cover;
    border-radius: .5vw;
    margin: 0 2vw;
    z-index: 0
}

#imginside11 {
    position: absolute;
    top: 72vw;
    left: 36vw;
    width: 12vw;
    height: 16vw;
    background: url(/img/lata_escanear.jpg) center center / cover;
    border-radius: .5vw;
    margin: 0 2vw;
    z-index: 0
}

#imginside12 {
    position: absolute;
    top: 79vw;
    left: 64vw;
    width: 12vw;
    height: 16vw;
    background: url(/img/latas_estanteriaarriba-2.jpg) center center / cover;
    border-radius: .5vw;
    margin: 0 2vw;
    z-index: 0
}

@media screen and (max-width:1024px) and (orientation:portrait) {

    #superiorstart,
    #superior,
    #scroll,
    #aceptar,
    .tit,
    .movno,
    #imginside3,
    #imginside7,
    #imginside8,
    #imginside9,
    #imginside10,
    #imginside11,
    #imginside12,
    #clients h2 {
        display: none
    }

    :root {
        --p1: 17vw;
        --p2: 5.9vw;
        --p4: 12px;
        --p5: 2vw
    }

    #root {
        filter: blur(0);
        z-index: -999
    }

    #titmov {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100vw;
        overflow: hidden;
        height: 21vw
    }

    #titmov h1 {
        width: 400vw;
        position: absolute;
        left: 0;
        top: 0;
        transform: translate(-55vw);
        animation: mover 15s infinite linear;
        font-size: 25vw
    }

    @keyframes mover {
        0% {
            transform: translate(-50vw)
        }

        to {
            transform: translate(-265vw)
        }
    }

    #ticket {
        display: none
    }

    #landing h4 {
        width: 80vw;
        left: 10vw;
        top: 70.5vh;
        position: absolute
    }

    #wrapper {
        position: absolute;
        top: 0
    }

    #content {
        height: auto;
        width: 100vw;
        overflow: hidden;
        position: absolute
    }

    #segundo {
        width: 100vw;
        height: 8vw;
        position: absolute;
        top: 23vw
    }

    #landing {
        margin-top: 0
    }

    #landing h3 {
        transform: translateY(6.4vw)
    }

    #barcode1 {
        width: 28vw;
        right: -8.7vw;
        top: 43vh
    }

    #bg {
        z-index: -99;
        background: linear-gradient(180deg, #dbdad9, #ffffff)
    }

    #middle {
        position: initial;
        height: 75vh;
        justify-content: flex-end
    }

    #att {
        display: none
    }

    #scroll {
        bottom: 25vh;
        z-index: 99
    }

    #final {
        margin-top: 0
    }

    .charin {
        transform: translateY(16.2vw)
    }

    #large {
        display: none
    }

    #largemov {
        display: flex;
        flex-direction: column;
        font-size: var(--p2);
        text-transform: uppercase;
        padding: 2vw
    }

    .largemovin {
        display: block;
        text-align: center
    }

    .largemovin span {
        top: 1.7vw;
        left: 0;
        position: relative;
        font-size: 8vw
    }

    #textos1 {
        position: relative;
        width: 100vw;
        left: 0;
        top: 13vw;
        flex-direction: column
    }

    #textos1 p {
        margin-bottom: 4vw;
        padding: 0 2vw
    }

    #eco {
        position: relative;
        width: 23vw;
        top: 3vw;
        padding: 1vw;
        left: 74vw
    }

    #eco img {
        width: 5vw;
        top: 0;
        margin-right: 1.5vw
    }

    #primernum {
        border: none;
        width: 30vw;
        left: 2vw;
        height: 5vw;
        flex-direction: row;
        margin-bottom: 32vw
    }

    #primernum span {
        display: none
    }

    #imginside {
        display: inline;
        opacity: 0
    }

    #tercera h2 {
        width: 100vw
    }

    #tercera {
        justify-content: center;
        align-items: center;
        display: flex;
        margin-top: 50vw
    }

    #tercera h3 {
        width: 70vw;
        text-align: center;
        margin-top: 7.5vw
    }

    .tit3 {
        text-align: center !important
    }

    #textos2 {
        display: flex;
        flex-direction: column;
        width: 100vw;
        margin-top: 20vw
    }

    .textos2in {
        width: 100%
    }

    #tercera p {
        margin-bottom: 2vw
    }

    #tercera img.right {
        left: -20vw;
        right: auto;
        width: 20vw;
        top: -98.9vw;
        transform: rotate(90deg)
    }

    #tercera img {
        right: auto;
        left: 73vw;
        top: -75vw;
        width: 8.5vw
    }

    #aesthetics {
        margin-top: 40vw
    }

    #border1,
    #border2,
    #border3,
    #border4 {
        border-radius: 3vw
    }

    #marco1 {
        min-width: 60vw;
        height: 57vh;
        margin: 2vw
    }

    .numero {
        width: 11vw;
        height: 6vw
    }

    .numeroinner {
        margin-left: 2vw
    }

    .lat2 {
        top: 15.7vw;
        right: -15.7vw
    }

    .lat {
        left: -11.3vw;
        top: -17vw
    }

    .abajodch {
        width: 28vw;
        height: 22.4vw
    }

    .barcode_prod {
        width: 26vw;
        padding: .2vw;
        margin-bottom: 2vw
    }

    .progressbar,
    .purchased {
        top: -8.5vw;
        width: 5.5vw;
        height: 5.5vw
    }

    #movbar {
        display: flex;
        position: fixed;
        bottom: 0;
        margin: 2vw;
        width: 96vw;
        top: auto;
        height: 7vw;
        z-index: 99999;
        flex-direction: row;
        font-size: var(--p4)
    }

    #pantalla {
        display: block;
        bottom: 0;
        width: 59vw;
        border-radius: 5vw;
        background: var(--color);
        overflow: hidden
    }

    #infosmov,
    #worksmov {
        display: block;
        border: 1px solid;
        padding: 1.4vw 4vw;
        margin-left: 2vw;
        border-radius: 5vw;
        text-transform: uppercase;
        background: #fff;
        height: 6.5vw;
        line-height: 3.5vw;
    }

    #aesthetics h2 {
        width: 96vw;
        left: 2vw
    }

    .interactive {
        width: 40vw;
        right: auto;
        top: -40vw;
        left: 33vw;
        opacity: 1
    }

    .hotspicy {
        width: 50vw;
        right: 2vw;
        left: auto;
        top: 88vw;
        z-index: 9
    }

    .hotspicy .tit3 {
        text-align: right !important
    }

    #aesthetics-textos {
        width: 100vw;
        display: flex;
        left: 0;
        position: relative;
        margin-top: 31vw;
        flex-direction: column
    }

    .experiment {
        width: 96vw;
        left: 2vw;
        position: relative;
        text-align: justify
    }

    #dry,
    #oriented {
        display: none
    }

    .numdos {
        margin-top: 3vw;
        width: 13.5vw;
        left: 84vw;
        position: absolute;
        top: 67vw
    }

    #border2 {
        transform: translate(0)
    }

    #motion {
        margin-top: 60vw
    }

    #marco2 {
        min-width: 68vw;
        margin: 2vw
    }

    #marco2 .numeroin {
        display: flex;
        flex-direction: column-reverse;
        transform: translateY(-4.5vw);
        margin-left: .5vw
    }

    #marco2 .lat {
        left: -21.3vw;
        top: -29vw
    }

    #motion h2 {
        width: 96vw;
        left: 2vw;
        margin-top: 5vw
    }

    #motioninner {
        width: 500vw
    }

    .cooltext {
        width: 96vw;
        flex-direction: column;
        left: 2vw
    }

    #motion h3 {
        width: 96vw;
        left: 2vw
    }

    .imginside5 {
        width: 16vw;
        height: 12vw
    }

    #disruptive {
        margin-top: 40vw
    }

    #marco3 {
        min-width: 58vw;
        margin: 2vw
    }

    .progressbar,
    .purchased {
        top: -8.7vw
    }

    .purchased {
        width: 22.5vw;
        line-height: 1.5
    }

    #marco3 .lat {
        left: -7.1vw;
        top: -14vw
    }

    #clients {
        margin-top: 0
    }

    #disruptivetext {
        width: 96vw;
        position: relative;
        left: 2vw;
        top: 8vw
    }

    #disruptive h3 {
        left: auto;
        right: 2vw;
        top: 4vw;
        text-align: right
    }

    #disruptive h2 {
        width: 96vw;
        left: 2vw
    }

    .imginside6 {
        position: absolute;
        top: 34vw;
        width: 20vw;
        height: 10vw;
        right: 0;
        left: auto;
        margin: 0
    }

    #border4 {
        transform: translate(0)
    }

    #marco4 {
        min-width: 60vw;
        position: relative;
        height: 60vh;
        margin: 2vw
    }

    #marco4 .lat {
        left: -9.2vw;
        top: -14vw
    }

    #final2 button {
        width: 96vw;
        margin-left: 0
    }

    #final2 button {
        width: 96vw;
        margin-left: 2vw;
        bottom: 15vw;
        background: white;
        border: 1px solid var(--color)
    }

    #final2 button a {
        color: var(--color)
    }

    #final {
        margin-top: 20vw
    }

    #final2 {
        height: calc(100vh - 20vw);
        margin-top: -3vw
    }

    #open24 {
        top: -12vw;
        width: 96vw;
        left: 2vw
    }

    #links ul {
        width: 38.8vw
    }

    #final h2 {
        width: 96vw;
        left: 2vw
    }

    .pantallas {
        color: #fff;
        font-family: PT MONO;
        line-height: 7.5vw;
        left: 4vw;
        display: none;
        text-transform: uppercase
    }

    #pant0 {
        opacity: 1;
        width: 414vw;
        animation: pantalla0 10s linear infinite
    }

    @keyframes pantalla0 {
        0% {
            transform: translate(-4vw)
        }

        to {
            transform: translate(-66.3vw)
        }
    }

    .lightbeep {
        width: 25.5vw;
        top: 2.5vw;
        left: -1vw;
        filter: none
    }

    #canvasmov {
        width: 100vw;
        height: 100vh;
        position: fixed;
        z-index: -1
    }

    .numtres {
        display: none
    }

    #termo {
        width: 6vw;
        top: -2.5vw;
        left: 5vw
    }

    .imginside5,
    .imginside6 {
        display: none
    }

    #boring {
        width: 19vw;
        left: 2vw;
        top: 27vw
    }

    #clientstit {
        position: relative;
        width: 96vw !important;
        left: 3vw !important;
        text-align: left !important;
        display: block !important
    }

    .brave {
        position: absolute;
        transform: rotate(90deg);
        left: 80.7vw;
        width: 30vw;
        top: 19vw
    }

    .unique {
        position: absolute;
        transform: rotate(90deg);
        left: 80.7vw;
        width: 30vw;
        top: 102vw
    }

    #clienttext {
        flex-direction: column;
        width: 81vw;
        left: 2vw
    }

    .noboring {
        position: absolute;
        transform: rotate(90deg);
        left: 80.7vw;
        width: 30vw;
        top: 128vw
    }

    #specialprojects {
        width: 320vw
    }

    #link {
        width: 90vw;
        overflow: hidden;
        border-radius: 5vw;
        position: relative;
        left: 5vw;
        margin-top: 3vw;
        top: 0
    }

    .flecha {
        width: 4vw;
        height: 4vw
    }

    .flecha div {
        width: 4.2vw;
        top: 1vw
    }

    .swiper-slide {
        width: 60vw !important;
        margin: 5vw;
        background: pink;
        border-radius: 3vw;
        height: 80vw !important
    }

    #clients {
        height: auto;
        min-height: 265vw;
        border-radius: 5vw;
        padding-bottom: 15vw
    }

    /* Мобильные стили для списка клиентов */
    #ourclientslist {
        display: flex;
        width: 96vw;
        position: relative;
        margin-top: 40vw;
        left: 2vw;
        gap: 5vw;
        justify-content: space-around;
    }

    #ourclientslist_col_1,
    #ourclientslist_col_2 {
        list-style: none;
        padding: 0;
        margin: 0;
        width: 100%;
    }

    #ourclientslist_col_1 li,
    #ourclientslist_col_2 li {
        font-size: var(--p2.5);
        text-transform: none;
        line-height: 1.5;
        margin-bottom: 2vw;
        font-family: HaasR;
        color: #dbdad9;
    }

    #ourclientslist_col_1_title,
    #ourclientslist_col_2_title {
        font-size: var(--p4);
        text-transform: uppercase;
        font-family: HaasR;
        color: #dbdad9;
        margin-bottom: 3vw;
        font-weight: lighter;
    }

    .swiper {
        height: 106vw;
        margin-top: 14vw
    }

    #barcodeswiper {
        position: absolute;
        width: 26vw;
        transform: rotate(90deg);
        left: -8vw;
        top: 17vw;
        display: block
    }

    #ticket {
        display: block;
        width: 58.5vw;
        font-size: 3.3vw;
        padding: 7vw 7vw 15vw;
        left: 1vw;
        bottom: 0;
        z-index: 9999;
        margin: 0;
        transform: translateY(161vw);
        transition: 1s ease;
        --mask: conic-gradient(from 135deg at top, #0000, #000 1deg 89deg, #0000 90deg) 50%/2vw 100%;
        -webkit-mask: var(--mask);
        mask: var(--mask)
    }

    #infosmov.on {
        background: var(--color);
        color: #fff;
        border: 1px solid var(--color)
    }

    #ticket.up {
        transform: translateY(0);
        transition-timing-function: steps(16, end);
        transition-duration: 2.3s
    }

    #date {
        right: 8.9vw;
        top: 6.9vw
    }

    .imginside6 {
        display: inline-block;
        position: relative;
        width: 3vw;
        opacity: 0
    }

    .etiqueta {
        z-index: 99
    }

    .swiper-slide.uno {
        background: url(/img/bolsaplastico_mano.jpg) center center / cover
    }

    .swiper-slide.dos {
        background: url(/img/grupo_encajaregistradora.jpg) center center / cover
    }

    .swiper-slide.tres {
        background: url(/img/carrito_productos.jpg) center center / cover
    }

    .swiper-slide.cuatro {
        background: url(/img/manos_productos.jpg) center center / cover
    }

    .swiper-slide.cinco {
        background: url(/img/lata_escanear.jpg) center center / cover
    }

    .swiper-slide.seis {
        background: url(/img/latas_estanteriaarriba-2.jpg) center center / cover
    }

    .pantallas.on {
        display: block
    }

    table th,
    .table td {
        text-align: right;
        width: 9.5vw
    }

    .click {
        top: -8.7vw;
        width: 24.5vw;
        height: 5.5vw;
        background: black;
        line-height: 1.7;
        padding: 0 1.5vw;
        color: #f0efef;
        border-radius: 5vw;
        text-transform: uppercase;
        font-size: 2.7vw;
        border: 2px solid black;
        left: 0;
        position: absolute;
        display: block;
        text-align: center
    }

    .click.on {
        display: none
    }

    .websites {
        left: 32.2vw;
        width: 40vw;
        opacity: 1;
        top: -40vw
    }

    .communication {
        position: absolute;
        top: -40vw;
        left: 34.5vw;
        opacity: 1;
        width: 30vw
    }

    #welcomemov {
        display: block;
        font-size: var(--p4);
        text-transform: uppercase;
        width: 43vw;
        position: absolute;
        top: 47.3vh;
        left: -18vw;
        transform: rotate(-90deg);
        text-align: right
    }

    #landing,
    .etiqueta,
    #canvasmov {
        height: 220vw
    }
}

/* Дополнительные медиа-запросы для разных размеров экранов */
@media screen and (max-width: 768px) and (orientation: portrait) {
    #clients {
        min-height: 300vw;
        padding-bottom: 15vw
    }

    #ourclientslist {
        margin-top: 40vw;
        gap: 8vw;
        justify-content: space-around;
    }

    #link {
        margin-top: 5vw
    }
}

@media screen and (max-width: 480px) and (orientation: portrait) {
    #clients {
        min-height: 350vw;
        padding-bottom: 15vw
    }

    #ourclientslist {
        margin-top: 40vw;
        gap: 10vw;
        justify-content: space-around;
    }

    #link {
        margin-top: 7vw
    }
}

@media screen and (max-width: 360px) and (orientation: portrait) {
    #clients {
        min-height: 400vw;
        padding-bottom: 15vw
    }

    #ourclientslist {
        margin-top: 40vw;
        gap: 12vw;
        justify-content: space-around;
    }

    #link {
        margin-top: 10vw
    }
}

@font-face {
    font-family: swiper-icons;
    src: url(data:application/font-woff;charset=utf-8;base64,\ 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);
    font-weight: 400;
    font-style: normal
}

:root {
    --swiper-theme-color: #007aff
}

.swiper,
swiper-container {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
    display: block
}

.swiper-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    box-sizing: content-box
}

.swiper-android .swiper-slide,
.swiper-wrapper {
    transform: translateZ(0)
}

.swiper-horizontal {
    touch-action: pan-y
}

.swiper-vertical {
    touch-action: pan-x
}

.swiper-slide,
swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform;
    display: block
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-backface-hidden .swiper-slide {
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px
}

.swiper-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-3d {
    perspective: 1200px
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
    transform-style: preserve-3d
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, .15)
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-horizontal.swiper-css-mode>.swiper-wrapper {
    scroll-snap-type: x mandatory
}

.swiper-vertical.swiper-css-mode>.swiper-wrapper {
    scroll-snap-type: y mandatory
}

.swiper-centered>.swiper-wrapper:before {
    content: "";
    flex-shrink: 0;
    order: 9999
}

.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always
}

.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-horizontal>.swiper-wrapper:before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after)
}

.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-vertical>.swiper-wrapper:before {
    width: 100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after)
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: transparent
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
swiper-container:not(.swiper-watch-progress) .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s infinite linear
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000
}

@keyframes swiper-preloader-spin {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(360deg)
    }
}