/* [SECTION] Fold */

.fold {
    width: 100%;

    display: flex;
    flex-direction: column;

    /* padding: 0 var(--space-m) var(--space-m) var(--space-m); */

    position: relative;
}

/* Fold -> Slider */

.fold__media-slider-wrapper {
    width: 100%;
    height: 100%;

    position: absolute;

    top: 0;
    left: 0;
}

.fold__media-slider {
    max-width: 100%;
    height: 100%;
}

.fold__media-slider::after {
    content: "";

    width: 100%;
    height: 100%;

    background-color: rgba(0, 0, 0, 0.28);

    position: absolute;

    top: 0;
    left: 0;

    z-index: 2;
}

.fold__media-slider > .swiper-wrapper {
    width: 100%;
    height: 100%;
}

.fold__media-wrapper {
    width: 100%;
    height: 100%;

    display: flex;
}

.fold__media {
    width: 100%;
    height: 100%;

    object-fit: cover;
}

.fold__media-slider-progress-wrapper {
    width: 100%;

    margin-bottom: calc(var(--space-xxxl) - var(--space-xl));

    overflow-x: hidden;
}

.fold__media-slider-progress {
    width: 100%;
    height: 1px;

    background-color: var(--color-03);

    transform: translateX(-100%);
    -webkit-transform: translateX(-100%);

    will-change: transform;
}

/* Fold -> Body */

.fold__body-wrapper {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--space-xl);

    padding: var(--space-xxxl) var(--space-m);

    position: relative;

    z-index: 1;
}

.fold__body {
    grid-column: 2 / span 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--space-m);
}

/* [SECTION] Story */

.story {
    width: 100%;

    display: flex;
    flex-direction: column;
    gap: var(--space-xl);

    padding: var(--space-xxxl) var(--space-m);
}

.story__main {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--space-xl);
}

.story__body {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--space-m);
}

.story__texts {
    display: flex;
    flex-direction: column;
    gap: var(--space-m);
}

.story__media-wrapper {
    display: flex;
    
    overflow: hidden;
}

.story__media {
    width: 100%;
}

/* [SECTION] Timeline */

.timeline {
    width: 100%;

    padding: var(--space-xxxl) var(--space-m);
}

.timeline__wrapper {
    background-color: var(--color-09);

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--space-xxxl);

    padding: var(--space-xl);

    position: relative;
}

/* Timeline -> Bar */

.timeline__bar-outer-wrapper {
    width: 100%;
    height: 100%;

    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: var(--space-xl);

    padding: 0 var(--space-xl);

    position: absolute;

    top: 0;
    left: 0;

    pointer-events: none;
}

.timeline__bar-inner-wrapper {
    grid-column: 3;
    display: flex;
    align-items: center;
    justify-content: center;
}

.timeline__bar {
    width: 1px;
    height: 100%;

    background-color: var(--color-03);
}

/* Timeline -> Events */

.timeline__event {
    display: flex;
    flex-direction: column;
    gap: var(--space-xs);
}

.timeline__event-header {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: var(--space-xl);
}

.timeline__event-date {
    text-align: right;

    grid-column: span 2;
}

.timeline__event-date--mobile {
    display: none;
}

.timeline__event-point-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
}

.timeline__event-point {
    width: 12px;
    height: 12px;

    background-color: var(--color-03);
}

.timeline__event-title {
    grid-column: span 5;
}

.timeline__event-message-wrapper {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: var(--space-xl);
}

.timeline__event-message {
    grid-column: 4 / span 5;
}

/* [SECTION] Founder */

.founder {
    width: 100%;

    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: var(--space-xl);

    padding: var(--space-xxxl) var(--space-m);
}

.founder__wrapper {
    grid-column: 2 / span 6;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--space-xl);
}

.founder__profile-media {
    width: 80px;

    border-radius: 50%;
}

/* [SECTION] Benefits */

.benefits {
    width: 100%;

    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-xl);

    padding: var(--space-xxxl) var(--space-m);
}

.benefit {
    background-color: var(--color-03);

    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-xxxl);

    padding: var(--space-m);
}

.benefit__icon-wrapper {
    width: 64px;
    height: 64px;

    border-radius: var(--radius-xxl);

    background-color: var(--color-02);

    display: flex;
    align-items: center;
    justify-content: center;
}

.benefit__icon {
    height: 24px;
}

.benefit__body {
    display: flex;
    flex-direction: column;
    gap: var(--space-xs);
}

/* [SECTION] Frequently Asked Questions */

.faq {
    width: 100%;

    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--space-xl);

    padding: var(--space-xxxl) var(--space-m);
}

/* FAQ -> Header */

.faq__header {
    display: flex;
    flex-direction: column;
    gap: var(--space-m);
}

/* FAQ -> Body */

.faq__body {
    display: flex;
    flex-direction: column;
    gap: var(--space-xl);
}

.faq__block {
    display: flex;
    flex-direction: column;

    cursor: pointer;
}

.faq__question-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-xxxl);
}

.faq__toggle-btn {
    height: 16px;

    transition: var(--transition-01);
    -webkit-transition: var(--transition-01);
}

.faq__block._active > .faq__question-wrapper > .faq__toggle-btn {
    transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
}

.faq__toggle-btn-icon {
    height: 100%;
}

.faq__answer {
    display: none;

    margin-top: var(--space-m);
}

.faq__block:first-child > .faq__answer {
    display: flex;
}

/* [SECTION] CTA */

.cta {
    width: 100%;
    min-height: 100%;

    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: stretch;
    /* gap: var(--space-xl); */

    padding: var(--space-xxxl) var(--space-m);
}

.cta__body {
    height: 100%;

    background-color: var(--color-09);

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--space-xl);

    padding: var(--space-xl);
}

.cta__top {
    display: flex;
    flex-direction: column;
    gap: var(--space-m);
}

.cta__header {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--space-xl);
}

.cta__media-outer-wrapper {
    height: 100%;
    max-height: 100%;

    position: relative;

    overflow: hidden;

    contain: size layout;
}

.cta__media-inner-wrapper {
    height: 100%;

    position: absolute;
    
    inset: 0;
}

.cta__media {
    width: 100%;
    height: 100%;

    object-fit: cover;
}

/* [SECTION] Testimonials */

.testimonials {
    width: 100%;

    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: var(--space-xl);

    padding: var(--space-xxxl) var(--space-m);
}

.testimonials__wrapper {
    grid-column: 2 / span 6;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--space-xl);
}

/* [SECTION] Testimonials -> Slider */

.testimonials__slider-wrapper {
    width: 100%;

    display: flex;
    flex-direction: column;
    gap: var(--space-xl);

    position: relative;
}

.testimonials__slider {
    width: 100%;
}

.testimonials__slider > .swiper-wrapper {
    width: 100%;
}

.testimonial__wrapper {
    display: flex;
}

.testimonial {
    width: 100%;

    background-color: var(--color-03);

    display: flex;
    flex-direction: column;
    gap: var(--space-xl);

    margin: unset;

    padding: var(--space-xl);
}

.testimonial__message {
    margin: unset;
}

.testimonial__bottom {
    width: 100%;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-m);
}

.author__name {
    text-transform: uppercase;
}

.testimonial__source {
    font-style: unset;

    display: flex;
}

.testimonial__source-wrapper {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: var(--space-m);
}

.testimonial__source-icon {
    height: 18px;
}

.testimonials__slider-progress-wrapper {
    width: 100%;

    overflow-x: hidden;
}

.testimonials__slider-progress {
    width: 100%;
    height: 1px;

    background-color: var(--color-01);

    transform: translateX(-100%);
    -webkit-transform: translateX(-100%);
}

/* [SECTION] Partners */

.partners {
    width: 100%;

    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-xl);

    padding: var(--space-xxxl) var(--space-m);
}

.partners__main {
    width: 100%;

    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: var(--space-xl);
}

.partner {
    display: flex;
    align-items: center;
    justify-content: center;
}

.partner__logo-wrapper {
    height: 32px;
}

.partner__logo {
    height: 100%;
}

@media (max-width: 1280px) {
    
}

@media (max-width: 1024px) {
    /* [SECTION] Fold */

    .fold__body-wrapper {
        display: flex;
    }

    .fold__body {
        width: 100%;
    }

    /* [SECTION] Story */

    .story__main {
        display: flex;
        flex-direction: column-reverse;
    }

    .story__media-wrapper {
        display: none;
    }

    /* [SECTION] Timeline */

    /* Timeline -> Bar */

    .timeline__bar-outer-wrapper {
        display: none;
    }

    /* Timeline -> Events */

    .timeline__event-header {
        display: flex;
    }

    .timeline__event-date {
        text-align: unset;
    }

    .timeline__event-point-wrapper {
        display: none;
    }

    .timeline__event-message-wrapper {
        display: flex;
    }

    /* [SECTION] Benefits */

    .benefits {
        display: flex;
        flex-direction: column;
    }

    /* [SECTION] Frequently Asked Questions */

    .faq {
        display: flex;
        flex-direction: column;
    }

    /* [SECTION] CTA */

    .cta {
        min-height: unset;

        display: flex;
    }

    .cta__body {
        height: unset;
    }

    /* [SECTION] Partners */

    .partners__main {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    /* [SECTION] Story */

    .story__media-wrapper {
        display: flex;
    }

    /* [SECTION] Founder */

    .founder {
        display: flex;
    }

    /* [SECTION] Timeline */

    /* Timeline -> Events */

    .timeline__event-header {
        flex-direction: column;
        gap: var(--space-xs);
    }

    /* [SECTION] Frequently Asked Questions */

    /* FAQ -> Body */

    .faq__question-wrapper {
        flex-direction: column-reverse;
        align-items: flex-start;
        gap: var(--space-m);
    }

    /* [SECTION] Testimonials */

    .testimonials {
        display: flex;
    }

    .testimonials__wrapper {
        width: 100%;
    }

    /* [SECTION] Partners */

    .partners__main {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    /* [SECTION] Fold */

    .fold__media-slider::after {
        background-color: rgba(0, 0, 0, 0.4);
    }

    /* [SECTION] CTA */

    .cta {
        flex-direction: column;
    }

    .cta__media-outer-wrapper {
        height: unset;
        max-height: unset;
        width: 100%;

        display: flex;

        contain: unset;
    }

    .cta__media-inner-wrapper {
        height: unset;

        aspect-ratio: 1 / 1;

        position: unset;

        inset: unset;
    }

    /* [SECTION] Partners */

    .partner__logo-wrapper {
        height: 24px;
    }
}