:root {
    --caseBg: #161e2e;
}
body,
p {
    font-weight: 400;
}
h3 {
    margin-block: 1.5rem !important;
}
.mfp-iframe-holder .mfp-content {
    max-width: 78vw !important;
}
.crisp-megamenu,
.megamenu-holder {
    background-color: var(--caseBg) !important;
    z-index: 9999 !important;
}

/* Hero Section */
.case-hero-section {
    position: relative;
    padding-block: 8.75rem 5rem;
    background: var(--caseBg);
}
.case-hero-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 3rem;
    align-items: center;
}
.case-content {
    margin-block: 2rem;
}
.case-hero-grid h1 {
    font-size: 2.5rem;
    font-weight: 500;
    color: var(--whiteColor);
    margin-block: 1rem;
    line-height: 1.3;
}
.case-hero-grid p {
    font-size: 1rem;
    color: var(--whiteColor);
    margin-block: 1rem;
}
.case-statistics-list {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}
.case-hero-content .case-statistics-list {
    flex-wrap: nowrap;
}
.case-statistics-item {
    flex: 1;
}
.case-statistics-item span {
    font-size: 2.5rem;
    color: var(--primaryColor);
    font-weight: 500;
    line-height: 1;
}
.case-statistics-item p {
    font-size: 1rem;
    color: var(--whiteColor);
    font-weight: 600;
    margin-block-start: 0.25rem;
    line-height: 1.2;
}
.case-hero-video {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 66%;
}
.case-hero-video img.btn-play {
    border-radius: 0;
    height: 6rem;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 6rem;
    z-index: 9;
}
.case-hero-video img.video-thumb {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Case Project Overview */
.case-project-overview-section {
    padding-block: 5rem;
    background: var(--secondaryColor);
    position: relative;
    z-index: 99;
}
.case-project-overview-grid {
    display: grid;
    grid-template-columns: 17.5rem 3fr;
    gap: 5rem;
}
.case-project-content h2 {
    font-size: 3rem;
    font-weight: 500;
    color: var(--whiteColor);
    line-height: 1.2;
}
.case-project-content h3 {
    font-size: 2rem;
    font-weight: 500;
    color: var(--whiteColor);
}
.case-project-content p {
    color: var(--whiteColor);
}
.case-project-description {
    margin-block: 3rem 2rem;
}
.case-project-description .case-challenges-testimonial {
    margin-block-end: 1.5rem;
    background-color: var(--caseBg);
}
.case-project-description .case-challenges-testimonial p.author,
.case-project-description .case-challenges-testimonial p.position {
    color: var(--whiteColor);
}

/* Floating Box */
.auto-box {
    height: 0;
}
.floating-box {
    background-color: var(--caseBg);
    border: 0.0625rem solid #303c53;
    padding: 1.75rem;
    position: relative;
    z-index: 999;
}
.floating-box-content {
    display: flex;
    flex-direction: column;
    gap: 1.75rem;
    border-top: 0.0625rem solid #303c53;
    margin-block-start: 1.75rem;
    padding-block-start: 1.75rem;
}
.floating-box-content p {
    font-size: 1rem;
    font-weight: 400;
    color: var(--whiteColor);
    margin-block: 0;
    line-height: 1.3;
}
.floating-box-content strong {
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--whiteColor);
    text-transform: uppercase;
    margin-block-end: 0.4rem;
    display: block;
}
.floating-box-content span {
    display: block;
    margin-block-start: 0.125rem;
}

/* Case Challanegs */
.case-challenges-section {
    padding-block: 5rem;
}
.case-challenges-grid {
    display: grid;
    grid-template-columns: 17.5rem 3fr;
    gap: 5rem;
    position: relative;
    z-index: 9;
}
.case-challenges-content {
    grid-column: 2/3;
}
.case-challenges-content h2 {
    font-size: 3rem;
    font-weight: 500;
    line-height: 1.2;
}
.case-challenges-description img {
    width: 20rem;
    float: right;
    margin: 0 0 1.5rem 1.5rem;
}
.case-challenges-testimonial {
    background-color: #f5f5f5;
    border-left: 0.125rem solid var(--primaryColor);
    padding: 5rem 2.5rem 2.5rem;
    margin-block-start: 1.5rem;
    position: relative;
}
.case-challenges-testimonial::before {
    content: "";
    position: absolute;
    top: 2.5rem;
    left: 2.5rem;
    width: 1.875rem;
    height: 1.5rem;
    background: url("../img/careers-quote.svg") no-repeat center center;
    background-size: 1.875rem;
}
.case-challenges-testimonial p {
    line-height: 1.5;
    margin-block-end: 1rem;
}
.case-challenges-testimonial p span {
    display: block;
    font-size: 1.5rem;
    font-weight: 500;
    margin-block-end: 0.5rem;
}
.case-challenges-testimonial p.author,
.case-challenges-testimonial p.position {
    font-size: 0.75rem;
    font-weight: 700;
    color: #1f293c;
    margin-block: 0.5rem 0;
    text-transform: uppercase;
}
.case-challenges-testimonial p.position {
    text-transform: none;
    padding-inline-start: 0.55rem;
    font-weight: 500;
    margin: 0;
}

/* CTA Section */
.case-cta-section {
    padding-block: 5.5rem;
    background: var(--primaryColor) url("../img/crisp-overlays.svg") no-repeat
        right center;
    background-size: contain;
}
.case-cta-grid {
    display: grid;
    grid-template-columns: 17.5rem 3fr;
    gap: 5rem;
}
.case-cta-content {
    grid-column: 2/3;
}
.case-cta-description {
    margin-block-end: 1.5rem;
}
.case-cta-description h2 {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.2;
    color: var(--whiteColor);
    margin-block: 1.7rem 1rem;
}
.case-cta-description p {
    color: var(--whiteColor);
}
.case-cta-content a.btn-casestudy-dark {
    display: inline-block;
    color: var(--whiteColor);
    font-weight: 600;
    font-size: 0.9375rem;
    text-transform: uppercase;
    text-align: center;
    letter-spacing: 0.0625rem;
    padding: 0.375rem 1.5rem;
    background: var(--caseBg);
    border-radius: 5.625rem;
    white-space: nowrap;
    transition: color 0.25s, background 0.25s;
}

/* Case Strategy */
.case-strategy-section {
    padding-block: 5rem;
    background-color: #f5f5f5;
}
.case-strategy-grid {
    display: grid;
    grid-template-columns: 17.5rem 3fr;
    gap: 5rem;
}
.case-strategy-content {
    grid-column: 2/3;
}
.case-strategy-content h2 {
    font-size: 3rem;
    font-weight: 500;
    line-height: 1.2;
}
.case-strategy-description img {
    display: block;
    max-width: 100%;
    height: auto;
}
.case-strategy-description .wistia_responsive_padding {
    margin-block-end: 1.5rem;
}
.case-strategy-description ul,
.case-impact-description ul {
    margin-inline-start: 1.25rem;
    margin-block: 1.5rem;
}
.case-strategy-description ul li,
.case-impact-description ul li {
    font-size: 1.2rem;
    line-height: 1.875rem;
    margin-block-start: 0.25rem;
}
.case-strategy-video-image-grid {
    display: grid;
    gap: 1rem;
    margin-block-start: 3rem;
    align-items: center;
}
.strategy-video-image-grid {
    grid-template-columns: repeat(2, 1fr);
}
.case-strategy-video-image-grid .case-challenges-testimonial {
    background-color: #ffffff;
    margin-block-start: 0;
    padding: 3rem 1.5rem 1.5rem;
}
.case-strategy-video-image-grid .case-challenges-testimonial::before {
    content: "";
    position: absolute;
    top: 1rem;
    left: 1.5rem;
    width: 1rem;
    background: url("../img/careers-quote.svg") no-repeat center center;
    background-size: 1rem;
}

/* Impact */
.case-impact-section {
    padding-block: 5rem;
}
.case-impact-grid {
    display: grid;
    grid-template-columns: 17.5rem 3fr;
    gap: 5rem;
}
.case-impact-content {
    grid-column: 2/3;
}
.case-impact-content h2 {
    font-size: 3rem;
    font-weight: 500;
    line-height: 1.2;
}
.case-impact-content .case-statistics-item p {
    color: var(--blackColor);
}
.case-impact-description {
    margin-block: 0 3rem;
}
.case-impact-images-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    margin-block-start: 3rem;
}
.case-impact-image {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
}
.case-impact-image img {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Case Testimonials */
.case-testimonial-section {
    padding-block: 5rem;
    background-color: var(--primaryColor);
}
.case-testimonial-grid {
    display: grid;
    grid-template-columns: 17.5rem 3fr;
    gap: 5rem;
}
.case-testimonial-grid {
    grid-column: 2/3;
}
.case-testimonial-content {
    grid-column: 2/3;
}
.case-testimonial-video .wistia_responsive_padding {
    margin-block-end: 0;
}
.case-testimonial-description {
    position: relative;
    padding-block-start: 4rem;
}
.case-testimonial-description p span {
    font-size: 3rem;
    font-weight: 500;
    margin-block-end: 0.75rem;
    display: block;
    line-height: 1;
}
.case-testimonial-description::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 4.5rem;
    height: 4rem;
    background: url("../img/careers-quote-white.svg") no-repeat center center;
    background-size: 4rem;
}
.case-testimonial-description p {
    color: var(--whiteColor);
    font-size: 2rem;
    font-weight: 400;
    line-height: 1.3;
    margin-block: 1.5rem;
}
.case-testimonial-author p.author {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--whiteColor);
    text-transform: uppercase;
    margin-block: 1.5rem 0;
}
.case-testimonial-author p.position {
    font-weight: 500;
    text-transform: none;
    padding-inline-start: 0.8rem;
    margin: 0;
    font-size: 1.25rem;
}
.case-testimonial-description-grid {
    margin-block-end: 4rem;
}

/* Case Action Section */
.case-action-section {
    padding-block: 5rem;
    background-color: var(--caseBg);
}
.case-action-section h2 {
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.2;
    color: var(--whiteColor);
}
.case-action-section p {
    font-size: 1.25rem;
    color: var(--whiteColor);
    margin-block: 1.5rem;
}
.case-action-section a.btn-action-casestudy {
    display: inline-block;
    color: var(--whiteColor);
    font-size: 1rem;
    min-width: 15rem;
    margin: 1.5rem auto 0;
    background: linear-gradient(
        95.63deg,
        #7755ff 20%,
        #484eff 40%,
        #7755ff 80%
    );
    background-size: 200% 100%;
    border-radius: 50rem;
    border: none;
    text-transform: uppercase;
    font-weight: 700;
    padding: 1rem 1.2rem;
    transition: background 0.25s;
    text-align: center;
}
.case-action-section a.btn-action-casestudy:hover {
    background-position: 100% 0 !important;
}

@media (max-width: 1199px) {
    .case-hero-grid h1 {
        font-size: 2.25rem;
    }
    .case-statistics-item span,
    .case-testimonial-description p span {
        font-size: 2rem;
    }
    .case-statistics-item p {
        font-size: 0.875rem;
    }
    .case-project-content h2,
    .case-challenges-content h2,
    .case-strategy-content h2,
    .case-impact-content h2,
    .case-action-section h2 {
        font-size: 2.5rem;
    }
    .case-project-content h3 {
        font-size: 1.75rem;
    }
    .case-challenges-description img {
        width: 15rem;
    }
    .strategy-video-image-grid {
        grid-template-columns: 1fr;
    }
    .case-testimonial-description p {
        font-size: 1.5rem;
    }
    .case-action-section p {
        font-size: 1.125rem;
    }
}
@media (max-width: 991px) {
    .case-hero-grid,
    .case-project-overview-grid,
    .case-challenges-grid,
    .case-cta-grid,
    .case-strategy-grid,
    .case-impact-grid,
    .case-testimonial-grid {
        grid-template-columns: 1fr;
        gap: 3rem;
    }
    .case-challenges-content,
    .case-cta-content,
    .case-strategy-content,
    .case-impact-content,
    .case-testimonial-content {
        grid-column: 1/2;
    }
    .auto-box {
        height: auto;
    }
}
@media (max-width: 767px) {
    .case-impact-images-grid {
        grid-template-columns: 1fr;
    }
    .case-project-description {
        margin-block-end: 0;
    }
    .case-strategy-video .wistia_responsive_padding {
        margin-block-end: 0.5rem;
    }
    .case-action-section {
        padding-block: 4.5rem;
    }
}
