.gap-10 {gap: 10px;}
.gap-12 {gap: 12px;}
.gap-20{gap: 20px;}
.gap-23{gap: 23px;}
.gap-24 {gap: 24px;}
.gap-40 {gap: 40px;}
.mt-00{margin-top: 0px;}
.mt-8 {margin-top: 8px;}
.mt-12 {margin-top: 12px;}
.mt-13 {margin-top: 13px;}
.mt-14 {margin-top: 14px;}
.mt-16 {margin-top: 16px;}
.mt-18 {margin-top: 18px;}
.mt-20 {margin-top: 20px;}
.mt-21 {margin-top: 21px;}
.mt-24 {margin-top: 24px;}
.mt-25 {margin-top: 25px;}
.mt-27 {margin-top: 27px;}
.mt-29 {margin-top: 29px;}
.mt-30 {margin-top: 30px;}
.mt-32 {margin-top: 32px;}
.mt-50 {margin-top: 50px;}
.mt-51 {margin-top: 51px;}
.mt-40 {margin-top: 40px;}
.mt-46 {margin-top: 46px;}
.mt-59 {margin-top: 59px;}
.mt-60 {margin-top: 60px;}
.mt-61 {margin-top: 61px;}
.mt-62 {margin-top: 62px;}
.mt-68 {margin-top: 68px;}
.mt-70 {margin-top: 70px;}
.mt-102 {margin-top: 102px;}
.mb-6 {margin-bottom: 6px;}
.mb-8 {margin-bottom: 8px;}
.mb-10 {margin-bottom: 10px;}
.mb-12 {margin-bottom: 12px;}
.mb-16 {margin-bottom: 16px;}
.mb-20 {margin-bottom: 20px;}
.mb-23 {margin-bottom: 23px;}
.mb-24 {margin-bottom: 24px;}
.mb-32 {margin-bottom: 32px;}
.mb-40 {margin-bottom: 40px;}
.mb-59 {margin-bottom: 59px;}
.mb-60 {margin-bottom: 60px;}
.mb-69 {margin-bottom: 69px;}
.mb-82 {margin-bottom: 82px;}
.pt-7 {padding-top: 7px;}
.pt-8 {padding-top: 8px;}
.pt-12 {padding-top: 12px;}
.pt-16 {padding-top: 16px;}
.pt-20 {padding-top: 20px;}
.pt-24 {padding-top: 24px;}
.pt-30 {padding-top: 30px;}
.pt-31 {padding-top: 31px;}
.pt-32 {padding-top: 32px;}
.pt-40 {padding-top: 40px;}
.pt-60 {padding-top: 60px;}
.pt-69 {padding-top: 69px;}
.pt-85 {padding-top: 85px;}
.pb-23 {padding-bottom: 23px;}
.pb-24 {padding-bottom: 24px;}
.pb-25 {padding-bottom: 25px;}
.pb-30 {padding-bottom: 30px;}
.pb-35 {padding-bottom: 35px;}
.pb-40 {padding-bottom: 40px;}
.pb-42 {padding-bottom: 42px;}
.pb-49 {padding-bottom: 49px;}
.pb-60 {padding-bottom: 60px;}
.pb-80 {padding-bottom: 80px;}
.pl-20 {padding-left: 20px;}
.pad-32 {padding: 32px 0;}
.pad-40 {padding: 40px 0;}
.pad-60 {padding: 60px 0;}
.pad-80 {padding: 80px 0;}
.w-90 {width: 90%;}
.w-80 {width: 93%;}
.h-30 {height: 30px;}
.gap-8 {gap: 8px;}
.color-primary{
    color: var(--primary-color);
}
.bg-w{
    background-color: var(--primary-white);
}
.bg-gray{
    background-color: var(--color-gray)
}
.bg-gray-light{
    background-color: var(--color-light-gray)
}
.bg-b{
    background-color: var(--primary-black);
}
.bg-w-light{
    background-color: var(--color-light-gray);
    opacity: 0.5;
    border-radius: 5px;
}
.bg-blue-light{
    background-color: var(--second-color);
}
.transition-gral{
    transition: color .2s ease-in, background-color .2s ease-in, border-color .2s ease-in;
}
.btn-custom-gral {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--primary-white);
    background-color: transparent;
    border: 1px solid var(--primary-white);
    border-radius: 30px;
    cursor: pointer;
    height: 29px;
    transition: background-color 0.2s ease-in, color 0.2s ease-in, border-color 0.2s ease-in;
}
.btn-custom-gral.btn-small{
    padding: 6px 34px;
}
.btn-custom-gral.btn-md{
    padding: 6px 12px;
}
.btn-custom-gral.btn-lg{
    padding: 6px 44.5px;
}
.hover-underline {
    position: relative;
    text-decoration: none;
    width: fit-content;
}
.hover-underline::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 1px;
    background-color: currentColor;
    transition: width 0.3s ease;
}
.btn-color{
    background-color: var(--primary-color);
    color: var(--primary-black);
    border-color: var(--primary-color);
}
.outline-black{
    border-color: var(--primary-black);
    color: var(--primary-black);
}
.animate-on-scroll {
    opacity: 0;
    transform: translateX(-40px);
}
.animate-on-scroll.active {
    animation: slideInLeft 0.8s ease-out forwards;
}
.animate-on-scroll-seq > * {
    opacity: 0;
    transform: translateX(-40px);
}
.animate-on-scroll-seq.active > * {
    animation: slideInLeft 0.8s ease-out forwards;
}
.animate-on-scroll-seq.active > *:nth-child(1) { animation-delay: 0.3s; }
.animate-on-scroll-seq.active > *:nth-child(2) { animation-delay: 0.6s; }
.animate-on-scroll-seq.active > *:nth-child(3) { animation-delay: 0.9s; }
.animate-on-scroll-seq.active > *:nth-child(4) { animation-delay: 1.2s; }
.animate-on-scroll-seq.active > *:nth-child(5) { animation-delay: 1.5s; }
.animate-on-scroll-seq.active > *:nth-child(6) { animation-delay: 1.8s; }
.slide-in-left {
    opacity: 0;
    transform: translateX(-40px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}
.slide-in-left.active {
    opacity: 1;
    transform: translateX(0);
}
.slide-in-left-seq > * {
    opacity: 0;
    transform: translateX(-40px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}
.slide-in-left-seq.active > * {
    opacity: 1;
    transform: translateX(0);
}
.slide-in-left-seq.active > *:nth-child(1) { transition-delay: 0s; }
.slide-in-left-seq.active > *:nth-child(2) { transition-delay: 0.12s; }
.slide-in-left-seq.active > *:nth-child(3) { transition-delay: 0.24s; }
.slide-in-left-seq.active > *:nth-child(4) { transition-delay: 0.36s; }
.slide-in-left-seq.active > *:nth-child(5) { transition-delay: 0.48s; }
.slide-in-left-seq.active > *:nth-child(6) { transition-delay: 0.6s; }
.slide-in-left-seq.active > *:nth-child(7) { transition-delay: 0.72s; }
.slide-in-left-seq.active > *:nth-child(8) { transition-delay: 0.84s; }

.slide-in-left-seq-05 > * {
    opacity: 0;
    transform: translateX(-40px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}
.slide-in-left-seq-05.active > * {
    opacity: 1;
    transform: translateX(0);
}
.slide-in-left-seq-05.active > *:nth-child(1) { transition-delay: 0.5s; }
.slide-in-left-seq-05.active > *:nth-child(2) { transition-delay: 1.0s; }
.slide-in-left-seq-05.active > *:nth-child(3) { transition-delay: 1.5s; }
.slide-in-left-seq-05.active > *:nth-child(4) { transition-delay: 2.0s; }
.slide-in-left-seq-05.active > *:nth-child(5) { transition-delay: 2.5s; }
.slide-in-left-seq-05.active > *:nth-child(6) { transition-delay: 3.0s; }
.slide-in-left-seq-05.active > *:nth-child(7) { transition-delay: 3.5s; }
.slide-in-left-seq-05.active > *:nth-child(8) { transition-delay: 4.0s; }
.slide-in-left-seq-slider .swiper-slide {
    opacity: 0;
}
.slide-in-left-seq-slider.active .swiper-slide {
    animation: slideInLeftCard 0.5s ease-out forwards;
}
.slide-in-left-seq-slider.active .swiper-slide:nth-child(1) { animation-delay: 0s; }
.slide-in-left-seq-slider.active .swiper-slide:nth-child(2) { animation-delay: 0.15s; }
.slide-in-left-seq-slider.active .swiper-slide:nth-child(3) { animation-delay: 0.3s; }
.slide-in-left-seq-slider.active .swiper-slide:nth-child(4) { animation-delay: 0.45s; }
.slide-in-left-seq-slider.active .swiper-slide:nth-child(5) { animation-delay: 0.6s; }
.slide-in-left-seq-slider.active .swiper-slide:nth-child(6) { animation-delay: 0.75s; }

@keyframes slideInLeftCard {
    0% {
        opacity: 0;
        transform: translateX(-40px);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

.slide-delay-left {
    opacity: 0;
    transform: translateX(-40px);
    transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}
.slide-delay-left.active {
    opacity: 1;
    transform: translateX(0);
    transition-delay: 0.75s;
}
.slide-in-left.delay-05 {
    transition-delay: 0s;
}
.slide-in-left.delay-05.active {
    transition-delay: 0.5s;
}

.slide-in-left-seq.active > .delay-hero {
    transition-delay: 0.7s;
}

@keyframes slideInLeft {
    0% {
        opacity: 0;
        transform: translateX(-40px);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

.slide-in-bottom {
    opacity: 0;
    transform: translateY(40px);
}
.slide-in-bottom.active {
    animation: slideInBottom 0.8s ease-out forwards;
}
.slide-in-bottom-seq > * {
    opacity: 0;
    transform: translateY(40px);
}
.slide-in-bottom-seq.active > * {
    animation: slideInBottom 0.8s ease-out forwards;
}
.slide-in-bottom-seq.active > *:nth-child(1) { animation-delay: 0.3s; }
.slide-in-bottom-seq.active > *:nth-child(2) { animation-delay: 0.6s; }
.slide-in-bottom-seq.active > *:nth-child(3) { animation-delay: 0.9s; }
.slide-in-bottom-seq.active > *:nth-child(4) { animation-delay: 1.2s; }

@keyframes slideInBottom {
    0% {
        opacity: 0;
        transform: translateY(40px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-scale {
    opacity: 0;
    transform: scale(0.8);
}
.animate-scale.active {
    animation: scaleInCenter 0.6s ease-out forwards;
}
@keyframes scaleInCenter {
    0% {
        opacity: 0;
        transform: scale(0.8);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}
.scale-in-center {
    opacity: 0;
    transform: scale(0.8);
}
.scale-in-center.active {
    animation: scaleInCenter 0.6s ease-out forwards;
    animation-delay: 0.5s;
}

.slide-sequence-items .order-seq-1,
.slide-sequence-items .order-seq-2,
.slide-sequence-items .order-seq-3 {
    opacity: 0;
    transform: scale(0.8);
}
.slide-sequence-items.active .order-seq-1 {
    animation: scaleInCenter 0.6s ease-out forwards;
    animation-delay: 0.5s;
}
.slide-sequence-items.active .order-seq-2 {
    animation: scaleInCenter 0.6s ease-out forwards;
    animation-delay: 0.7s;
}
.slide-sequence-items.active .order-seq-3 {
    animation: scaleInCenter 0.6s ease-out forwards;
    animation-delay: 0.9s;
}

.scale-in-center-seq-05 > * {
    opacity: 0;
    transform: scale(0.8);
}
.scale-in-center-seq-05.active > *:nth-child(1) {
    animation: scaleInCenter 0.6s ease-out forwards;
    animation-delay: 0.5s;
}
.scale-in-center-seq-05.active > *:nth-child(2) {
    animation: scaleInCenter 0.6s ease-out forwards;
    animation-delay: 1.0s;
}
.scale-in-center-seq-05.active > *:nth-child(3) {
    animation: scaleInCenter 0.6s ease-out forwards;
    animation-delay: 1.5s;
}
.scale-in-center-seq-05.active > *:nth-child(4) {
    animation: scaleInCenter 0.6s ease-out forwards;
    animation-delay: 2.0s;
}
.scale-in-center-seq-05.active > *:nth-child(5) {
    animation: scaleInCenter 0.6s ease-out forwards;
    animation-delay: 2.5s;
}
.scale-in-center-seq-05.active > *:nth-child(6) {
    animation: scaleInCenter 0.6s ease-out forwards;
    animation-delay: 3.0s;
}
.scale-in-center-seq-05.active > *:nth-child(7) {
    animation: scaleInCenter 0.6s ease-out forwards;
    animation-delay: 3.5s;
}
.scale-in-center-seq-05.active > *:nth-child(8) {
    animation: scaleInCenter 0.6s ease-out forwards;
    animation-delay: 4.0s;
}