/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

.CaseStudiesIntro {
    --bg: #F0DBA5;
    --text: #151515;
    --yellow: var(--e-global-color-d49ac81);
    --red: #EB6666;
    --green: #f59415;


    display: -webkit-box;


    display: -ms-flexbox;


    display: flex;
    padding: 150px 0;
    text-align: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    overflow: hidden;
    gap: 90px;

    background: white;

}

.CaseStudiesIntro--Scroll {
    height: 90px;
    width: 1px;
    overflow: hidden;
    position: relative;
    z-index: 2;

    &::before {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background-color: black;
    }

    &::before {
        -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        transform: translateY(-100%);
        -webkit-animation: firstLineAnimation 2s ease-in-out infinite;
        animation: firstLineAnimation 2s ease-in-out infinite;
    }
}

.CaseStudiesIntro--ScrollText {
    text-transform: uppercase;
    z-index: 2;
    font-size: 12px;
    font-weight: bold;
    letter-spacing: 2px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-transition: 0.5s all cubic-bezier(0.19, 1, 0.22, 1);
    -o-transition: 0.5s all cubic-bezier(0.19, 1, 0.22, 1);
    transition: 0.5s all cubic-bezier(0.19, 1, 0.22, 1);

    &:hover::after {
        -webkit-transform: scaleX(1);
        -ms-transform: scaleX(1);
        transform: scaleX(1);
    }

    &:hover {
        letter-spacing: 0;
    }

    &::after {
        content: '';
        position: absolute;
        height: 2px;
        width: 100%;
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
        background-color: var(--e-global-color-d49ac81);
        -webkit-transform: scaleX(0);
        -ms-transform: scaleX(0);
        transform: scaleX(0);
        will-change: transform;
        -webkit-transition: 0.3s -webkit-transform cubic-bezier(0.19, 1, 0.22, 1);
        transition: 0.3s -webkit-transform cubic-bezier(0.19, 1, 0.22, 1);
        -o-transition: 0.3s transform cubic-bezier(0.19, 1, 0.22, 1);
        transition: 0.3s transform cubic-bezier(0.19, 1, 0.22, 1);
        transition: 0.3s transform cubic-bezier(0.19, 1, 0.22, 1), 0.3s -webkit-transform cubic-bezier(0.19, 1, 0.22, 1);
    }
}

@-webkit-keyframes firstLineAnimation {
    0% {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
    }

    50% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
    }
}

@keyframes firstLineAnimation {
    0% {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
    }

    50% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
    }
}

@-webkit-keyframes SecondLineAnimation {
    0% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes SecondLineAnimation {
    0% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

.CaseStudiesIntro--text {
    padding: 0 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    max-width: 691px;
    gap: 20px;
    position: relative;
    z-index: 2;

    & h2 {
        font-size: 50px;
        line-height: 1;
        margin: 0;
    }
}

/* Blobs */
.blob-cont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 500px;
    width: 500px;
    position: absolute;
    bottom: 15%;
}

@media (max-width: 500px) {
    .blob-cont {
        display: none;
    }
}

.blob {
    border-radius: 100px;
    -webkit-filter: blur(60px);
    filter: blur(60px);
}

.yellow {
    background-color: var(--yellow);
    position: absolute;
    top: 200px;
    left: 100px;
    height: 200px;
    width: 200px;

    -webkit-animation: yellow 8s infinite ease;

    animation: yellow 8s infinite ease;
}

.green {
    background-color: var(--green);
    position: absolute;
    top: 80px;
    right: -20px;
    height: 200px;
    width: 250px;

    -webkit-animation: green 8s infinite ease;

    animation: green 8s infinite ease;
}

.red {
    background-color: var(--red);
    position: absolute;
    right: 0;
    top: 300px;
    height: 250px;
    width: 200px;

    -webkit-animation: red 8s infinite linear;

    animation: red 8s infinite linear;
}

@-webkit-keyframes yellow {
    0% {
        top: 200px;
        left: 100px;
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    30% {
        top: 300px;
        left: 150px;
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
    }

    60% {
        top: 100px;
        left: 200px;
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
    }

    100% {
        top: 200px;
        left: 100px;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes yellow {
    0% {
        top: 200px;
        left: 100px;
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    30% {
        top: 300px;
        left: 150px;
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
    }

    60% {
        top: 100px;
        left: 200px;
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
    }

    100% {
        top: 200px;
        left: 100px;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@-webkit-keyframes green {
    0% {
        top: 80px;
        right: -20px;
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
    }

    30% {
        top: 300px;
        right: -20px;
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    60% {
        top: 200px;
        right: 100px;
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    100% {
        top: 80px;
        right: -20px;
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
    }
}

@keyframes green {
    0% {
        top: 80px;
        right: -20px;
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
    }

    30% {
        top: 300px;
        right: -20px;
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    60% {
        top: 200px;
        right: 100px;
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    100% {
        top: 80px;
        right: -20px;
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
    }
}

@-webkit-keyframes red {
    0% {
        top: 250px;
        right: 0px;
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    30% {
        top: 150px;
        right: 150px;
        -webkit-transform: scale(1.4);
        transform: scale(1.4);
    }

    60% {
        top: 250px;
        right: 100px;
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    100% {
        top: 250px;
        right: 0px;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes red {
    0% {
        top: 250px;
        right: 0px;
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    30% {
        top: 150px;
        right: 150px;
        -webkit-transform: scale(1.4);
        transform: scale(1.4);
    }

    60% {
        top: 250px;
        right: 100px;
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    100% {
        top: 250px;
        right: 0px;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

/* Marquee */
.marquee-container {
    width: 100%;
    height: 500px;
    position: relative;
    z-index: 2;
}

.CaseStudiesIntro--Overlay {
    position: absolute;
    top: -28%;
    width: 9%;
    height: 164%;
    z-index: 2;
}

.CaseStudiesIntro--Overlay.Left {
    left: 0;
    background: linear-gradient(90deg, #ffffff, transparent);
}

.CaseStudiesIntro--Overlay.Right {
    right: 0;
    background: -webkit-gradient(linear, left top, right top, from(rgb(255 255 255 / 0%)), color-stop(rgb(255 255 255 / 20%)), to(rgb(255 255 255 / 95%)));
    background: -o-linear-gradient(left, rgb(255 255 255 / 0%), rgb(255 255 255 / 20%), rgb(255 255 255 / 95%));
    background: linear-gradient(-90deg, #ffffff, transparent);
    z-index: 2;
}

.marquee-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100%;
    position: absolute;
    -webkit-animation: scroll 80s linear infinite;
    animation: scroll 80s linear infinite;
    /* expo animation ease */
    height: 450px;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.marquee-item {
    margin: 0 20px;
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    -o-transition: transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
    /* filter: brightness(0.8) contrast(1.1); */
    -ms-flex-negative: 0;
    flex-shrink: 0;
    position: relative;
}

.marquee-item img {
    width: 40vw;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 15px;
    -webkit-box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border: 1px solid #DFDFDF;
    position: relative;
    z-index: 3;
}

@media (max-width: 500px) {
    .marquee-item img {
        width: 110vw;
    }
}

.marquee-item .border {
    background-color: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    position: absolute;
    inset: 0;
}

@-webkit-keyframes scroll {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }
}

@keyframes scroll {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }
}

.controls {
    position: fixed;
    top: 20px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
    z-index: 1000;
}

.btn {
    padding: 10px 20px;
    background: rgba(255, 255, 255, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 25px;
    color: white;
    font-weight: bold;
    cursor: pointer;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.btn:hover {
    background: rgba(255, 255, 255, 0.3);
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
}

.speed-indicator {
    position: fixed;
    top: 80px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    color: white;
    font-weight: bold;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}


/* Label */
.AdvxLabel {
    font-family: 'Helvetica Now Display' !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    border: 1px solid var(--e-global-color-d49ac81);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 5px;
    height: 30px;
    border-radius: 500px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    background-color: #fff;
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
    padding: 0 10px;
    position: relative;
    overflow: hidden;
    -webkit-transition: 0.3s color ease;
    -o-transition: 0.3s color ease;
    transition: 0.3s color ease;
    margin: 0;
    word-spacing: 2px;
    letter-spacing: 1px !important;
    text-transform: uppercase;



    & .AdvxLabel__bg {
        position: absolute;
        width: 100%;
        height: 100%;
        bottom: -20%;
        left: 0;
        z-index: 1;
        will-change: transform;
        -webkit-transform: scale(0) translateY(-20%);
        -ms-transform: scale(0) translateY(-20%);
        transform: scale(0) translateY(-20%);
        -webkit-transform-origin: bottom;
        -ms-transform-origin: bottom;
        transform-origin: bottom;
        border-radius: 500px;
        background-color: var(--e-global-color-d49ac81);
        /* snappy exponential transition */
        -webkit-transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
        -o-transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
        transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    }

    &:hover .AdvxLabel__bg {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        border-radius: 0;
        bottom: 0;
    }

    &:hover::before {
        background-color: #fff;
    }

    &:hover {
        color: #fff;
    }

    & .AdvxLabel__text {
        position: relative;
        z-index: 2;
    }

    &::before {
        content: '';
        z-index: 2;
        width: 10px;
        -webkit-transition: 0.3s background-color ease;
        -o-transition: 0.3s background-color ease;
        transition: 0.3s background-color ease;
        height: 10px;
        border-radius: 50%;
        background-color: var(--e-global-color-d49ac81);
    }
}