﻿/*-===== Homepage style start here =======*/

/*-- Parallax Hero start --*/

.home-hero-parallax-wrap {
    position: relative;
}

.home-hero-content-parallax {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1;
    background: transparent !important;
}

.home-hero-parallax-wrap .hero-media,
.home-hero-media-parallax,
.ome-hero-media-parallax {
    position: relative;
    z-index: 2;
    overflow: hidden;
}

/*-- Parallax Hero end ---*/


/*-- Hero Banner start --*/

.hero-banner {
    display: flex;
    align-items: flex-end;
    background: var(--color-white);
    padding-top: calc(var(--site-header-height) + 236px);
    padding-bottom: 32px;
}

.hero-banner-with-bg {
    align-items: flex-end;
    min-height: 420px;
    padding-top: calc(var(--site-header-height) + 236px);
    padding-bottom: 38px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.hero-banner-with-bg .hero-banner__content {
    padding: 0;
    width: 100%;
}

.hero-banner-with-bg .hero-banner__title {
    margin-bottom: 0;
    font-size: 44px;
    line-height: 50px;
}

@media (min-width: 768px) {
    .hero-banner-with-bg {
        min-height: 520px;
        padding-bottom: 48px;
    }
}

@media (min-width: 992px) {
    .hero-banner-with-bg {
        min-height: 640px;
    }
}

@media (min-width: 1200px) {
    .hero-banner-with-bg .hero-banner__title {
        font-size: var(--fontsize-64);
        line-height: 72px;
    }
}

.hero-banner__content {
    padding: 0;
}

.hero-banner__title {
    max-width: 100%;
    color: var(--grey-90);
}

.hero-banner__title strong {
    display: contents;
}

@media (max-width: 991px) {
    .hero-banner__title br {
        display: block;
    }
}

.home-hero-content-parallax .hero-banner__title,
.home-hero-content-parallax .hero-banner__title strong {
    color: var(--color-black) !important;
}

/* Homepage hero (Figma 66:3325 desktop / 66:5607 mobile) */
.home-hero-content-parallax {
    padding-top: calc(var(--site-header-height) + 136px);
    padding-bottom: 32px;
}

.home-hero-content-parallax .hero-banner__title {
    font-size: 36px;
    line-height: 40px;
    font-weight: 400;
}

.home-hero-content-parallax .hero-banner__title strong {
    font-weight: 500;
}

@media (max-width: 767.98px) {
    .home-hero-content-parallax {
        padding-top: calc(var(--site-header-height) + 88px);
        padding-bottom: 32px;
    }
}

@media (min-width: 768px) {
    .home-hero-content-parallax {
        padding-bottom: 48px;
    }

    .home-hero-content-parallax .hero-banner__title {
        font-size: 40px;
        line-height: 48px;
    }
}

.white-banne-title .hero-banner__title{
    color: var(--color-white);
}

@media (min-width: 768px) {
    .hero-banner {
        padding-bottom: 48px;
    }
}

/*-- Hero Banner end ---*/


/*-- Hero Media start --*/

.hero-media {
    position: relative;
    line-height: 0;
    overflow: hidden;
    width: 100%;
    min-height: 567px;
    max-height: 567px;
}

/* Black top edge — matches Figma video still / linework weight */
.hero-media::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: var(--color-black);
    z-index: 1;
    pointer-events: none;
}

.hero-media__inner {
    width: 100%;
    height: 100%;
}

.hero-media__image,
.hero-media__embed,
.hero-media__video {
    display: block;
    width: 100%;
    min-height: 567px;
    max-height: 567px;
}

.hero-media__image,
.hero-media__video {
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.hero-media__video--desktop {
    display: none;
}

@media (min-width: 768px) {
    .hero-media {
        /* Grow with viewport so wide screens crop less top/bottom (video is 1440×640) */
        min-height: 644px;
        max-height: none;
        height: clamp(644px, calc(100vw * 640 / 1440), 1080px);
    }

    .hero-media__image,
    .hero-media__embed,
    .hero-media__video {
        min-height: 100%;
        max-height: none;
        height: 100%;
    }

    .hero-media__video--desktop {
        display: block;
    }

    .hero-media__video--mobile {
        display: none;
    }
}

.hero-media__embed {
    position: relative;
    width: 100%;
    aspect-ratio: 1440 / 644;
    min-height: inherit;
}

.hero-media--youtube,
.hero-media--vimeo {
    display: block;
}

.hero-media--youtube .hero-media__embed,
.hero-media--vimeo .hero-media__embed {
    height: auto;
}

@media (min-width: 1200px) {
    .hero-media--youtube .hero-media__embed,
    .hero-media--vimeo .hero-media__embed {
        height: 100%;
    }
}

.hero-media__iframe {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100vw;
    height: 56.25vw;
    min-width: 177.78vh;
    min-height: 100%;
    border: 0;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

@media (min-width: 1200px) {
    .hero-media__embed {
        aspect-ratio: auto;
    }
}

/*-- Hero Media end ---*/


/*-- Trusted By start --*/

.trusted-by {
    position: relative;
    z-index: 3;
    background: #222222;
    overflow: hidden;
}

.trusted-by.white-bg {
    background-color: #fff;
}

.trusted-by.white-bg .trusted-by__title {
    color: #000;
}

.trusted-by.bg-gray {
    background-color: var(--grey-10);
}

.trusted-by.bg-gray .trusted-by__title {
    color: #000;
}

.trusted-by__title {
    font-size: 26px;
    line-height: 34px;
    font-weight: 400;
    text-align: left;
    margin-bottom: 10px;
    color: #bdbdbd;
}

.trusted-by__logos {
    margin-top: 10px;
}

.trusted-by__logos:not(.slick-initialized) {
    display: flex;
    align-items: center;
    gap: 32px;
}

.trusted-by__logo {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 232px;
    width: 232px;
    height: 157px;
}

.trusted-by__logos img {
    display: block !important;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.trusted-by__logos.slick-slider {
    margin-bottom: 0;
}

.trusted-by__logos.slick-slider .slick-track {
    display: flex;
    align-items: center;
}

.trusted-by__logos.slick-slider .slick-slide {
    height: 157px;
    width: 232px;
    margin-right: 32px;
    text-align: center;
}

.trusted-by__logos.slick-slider.slick-initialized .slick-list {
    overflow: hidden;
}

.trusted-by__logos .slick-slide > div {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 157px;
}

@media (min-width: 1200px) {
    .trusted-by.section-padding {
        padding-bottom: 70px;
    }

    .trusted-by__title {
        font-size: 32px;
        line-height: 40px;
        margin-bottom: 0;
    }

    .trusted-by__logos {
        margin-top: 10px;
        margin-left: -56px;
        width: calc(100% + 112px);
    }
}

/*-- Trusted By end ---*/


/*-- Intro Block start --*/

.intro-block {
    background: var(--grey-10);
}

.intro-block__row {
    gap: 48px;
}

.intro-block__heading-col {
    max-width: 100%;
}

.intro-block__body-col {
    max-width: 100%;
}

.intro-block__heading {
    margin-bottom: 0;
    max-width: 527px;
}

.intro-block__body {
    font-size: var(--fontsize-18);
    line-height: 26px;
    color: var(--grey-90);
}

.intro-block__body p + p {
    margin-top: 25px;
}

.intro-block .intro-block__body p + ul {
    margin-top: 25px;
}

.intro-block .intro-block__body ul {
    list-style-type: square;
    padding-left: 1.5em;
}

.intro-block .intro-block__body li + li {
    margin-top: 8px;
}

.intro-block__body p + a {
    margin-top: 48px;
}

@media (min-width: 1200px) {
    .intro-block__row {
        gap: 16px;
    }

    .intro-block__heading-col {
        flex: 1 1 0;
        min-width: 0;
    }

    .intro-block__body-col {
        flex: 1 1 0;
        min-width: 0;
    }
}

/*-- Intro Block end ---*/


/*-- Scroll Block start --*/

.scroll-block {
    background: var(--grey-10);
    border-top: 1px solid var(--grey-40);
    border-bottom: 1px solid var(--grey-40);
    position: relative;
    z-index: 1;
}

.scroll-block__inner {
    display: flex;
    flex-direction: column;
}

.scroll-block__media {
    display: none;
}

.scroll-block__media-inner {
    width: 100%;
}

.scroll-block__item-media {
    margin-bottom: 32px;
}

.scroll-block__item-media-stack {
    position: relative;
    width: 100%;
    aspect-ratio: 600 / 560;
    overflow: hidden;
}

.scroll-block__item-media-stack img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.scroll-block__media-stack {
    position: relative;
    width: 100%;
    aspect-ratio: 600 / 560;
    overflow: hidden;
}

.scroll-block__media-layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    pointer-events: none;
}

.scroll-block__media-layer.is-active {
    z-index: 2;
}

.scroll-block__media-layer.is-revealed {
    z-index: 1;
}

.scroll-block__media-mask {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    will-change: transform;
}

.scroll-block__media-parallax {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    will-change: transform;
}

.scroll-block__media-parallax-inner {
    position: absolute;
    top: -7.5%;
    left: 0;
    width: 100%;
    height: 115%;
    will-change: transform;
}

.scroll-block__media-img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    opacity: 1;
}

.scroll-block__content-wrap {
    width: 100%;
}

.scroll-block__content {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 64px 0;
}

.scroll-block__item:not(:last-child) {
    padding-bottom: 80px;
    margin-bottom: 80px;
    border-bottom: 1px solid var(--color-border);
}

.scroll-block__item-media img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 600 / 560;
    object-fit: cover;
    object-position: center;
}

.scroll-block__item-media-stack img {
    height: 100%;
    aspect-ratio: auto;
}

.scroll-block__item-heading {
    font-size: var(--fontsize-32);
    line-height: 40px;
    font-weight: 500;
    color: var(--grey-90);
    margin-bottom: 6px;
}

.scroll-block__item-subheading {
    font-size: var(--fontsize-32);
    line-height: 40px;
    font-weight: 400;
    color: var(--grey-90);
    margin-bottom: 32px;
}

.scroll-block__item-body {
    color: var(--grey-90);
}

.scroll-block__item-body:has(+ .btn) {
    margin-bottom: 56px;
}

@media (max-width: 991.98px) {
    .scroll-block__item:not(:last-child) {
        padding-bottom: 64px;
        margin-bottom: 64px;
    }

    /* Figma 66:5618 (mobile): 6px title gap, 32px to body, 64px to button, 24px blank line */
    .scroll-block__item-heading {
        font-size: 26px;
        line-height: 34px;
        margin-bottom: 6px;
    }

    .scroll-block__item-subheading {
        font-size: 26px;
        line-height: 34px;
        margin-bottom: 32px;
    }

    .scroll-block__item-body:has(+ .btn) {
        margin-bottom: 64px;
    }
}

@media (min-width: 992px) {
    .scroll-block__item-body:has(+ .btn) {
        margin-bottom: 64px;
    }
}

.scroll-block__item-body p + p,
.scroll-block__item-body p + ul,
.scroll-block__item-body ul + p {
    margin-top: 24px;
}

.scroll-block__item-body ul {
    list-style-type: square;
    padding-left: 1.5em;
}

.scroll-block__item-body li + li {
    margin-top: 8px;
}

/* Service list (Figma 66:3339): 56px icon + label, 24px gap */
.scroll-block__item-body .service-list {
    max-width: 345px;
    margin-top: 32px;
    padding-left: 0;
    list-style: none;
}

.scroll-block__item-body .service-list__item {
    display: flex;
    align-items: center;
    gap: 24px;
}

.scroll-block__item-body .service-list__item + .service-list__item {
    margin-top: 0;
}

.service-list__icon {
    display: block;
    flex: 0 0 56px;
    width: 56px;
    height: 56px;
}

.service-list__label {
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 500;
    color: var(--color-black);
}

@media (min-width: 768px) {
    .scroll-block__item-body p + .service-list {
        margin-top: 32px;
    }
}

@media (min-width: 768px) {
    .scroll-block__content {
        padding: 60px 0 80px;
    }

    .scroll-block__item-body p + p,
    .scroll-block__item-body p + ul,
    .scroll-block__item-body ul + p {
        margin-top: 25px;
    }
}

@media (min-width: 992px) {
    .scroll-block__inner {
        flex-direction: row;
        align-items: stretch;
    }

    .scroll-block__inner > .pin-spacer,
    .scroll-block__inner > .scroll-block__media {
        flex: 0 0 50%;
        max-width: 50%;
        min-width: 0;
        box-sizing: border-box;
    }

    .scroll-block__inner > .pin-spacer {
        flex-basis: 50% !important;
        width: 50% !important;
        max-width: 50%;
    }

    .scroll-block__media {
        display: block;
        width: 100%;
        max-width: 100%;
        padding: 60px 60px 60px 0;
        align-self: flex-start;
        box-sizing: border-box;
    }

    .scroll-block__media-inner {
        width: 100%;
    }

    .scroll-block__item-media {
        display: none;
    }

    .scroll-block__content-wrap {
        flex: 0 0 50%;
        max-width: 50%;
        min-width: 0;
        border-left: 1px solid var(--grey-40);
        box-sizing: border-box;
    }

    .scroll-block__content {
        gap: 40px;
        padding: 120px 0 80px 60px;
    }

    .scroll-block__item:not(:last-child) {
        padding-bottom: 0;
        margin-bottom: 0;
        border-bottom: none;
    }
}

@media (min-width: 1200px) {
    .scroll-block__content {
        padding: 220px 0 120px 60px;
    }
}

/* Homepage What we offer: equal image top/bottom space, shrink only if needed */
@media (min-width: 992px) {
    .scroll-block:not(.scroll-block--has-calibration) .scroll-block__media {
        height: calc(100vh - var(--site-header-height, 80px));
        padding: 60px 60px 60px 0;
        display: flex;
        align-items: center;
        box-sizing: border-box;
    }

    .scroll-block:not(.scroll-block--has-calibration) .scroll-block__media-inner {
        width: 100%;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .scroll-block:not(.scroll-block--has-calibration) .scroll-block__media-stack {
        width: min(100%, calc((100vh - var(--site-header-height, 80px) - 120px) * 600 / 560));
        max-width: 100%;
        height: auto;
        max-height: 100%;
        aspect-ratio: 600 / 560;
    }
}

@media (min-width: 1200px) and (max-height: 900px) {
    .scroll-block:not(.scroll-block--has-calibration) .scroll-block__content {
        padding: 120px 0 80px 60px;
    }
}

@media (min-width: 992px) {
    .scroll-block:not(.scroll-block--has-calibration) .scroll-block__content {
        padding-bottom: 0;
    }

    .scroll-block:not(.scroll-block--has-calibration) .scroll-block__item {
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-height: calc(100vh - var(--site-header-height, 80px));
        box-sizing: border-box;
    }

    .scroll-block:not(.scroll-block--has-calibration) .scroll-block__item .btn {
        align-self: flex-start;
        width: auto;
    }
}

@media (prefers-reduced-motion: reduce) {
    .scroll-block__media-layer {
        opacity: 0;
    }

    .scroll-block__media-layer.is-active {
        opacity: 1;
    }

    .scroll-block__media-parallax-inner {
        top: 0;
        height: 100%;
    }
}

/*-- Scroll block + calibration timeline layout --*/

.scroll-block--has-calibration {
    border: 0;
}

.scroll-block--has-calibration .scroll-block__content-wrap {
    width: 100%;
}

.calibration-timeline {
    display: none;
}

.scroll-block--has-calibration .scroll-block__item-body {
    margin-bottom: 0;
}

.scroll-block--has-calibration .scroll-block__item-heading-row {
    position: relative;
}

.scroll-block--has-calibration .scroll-block__item-heading-row .scroll-block__item-heading {
    margin-bottom: 24px;
}

.calibration-timeline__mark {
    display: none;
    flex-shrink: 0;
}

.calibration-timeline__mark--elongated {
    width: 24px;
    height: 2px;
    background: var(--grey-40);
}

@media (min-width: 992px) {
    .scroll-block--has-calibration .scroll-block__content-wrap {
        display: grid;
        grid-template-columns: 24px 34px minmax(0, 1fr);
        align-items: stretch;
        border-left: 0;
    }

    .scroll-block--has-calibration .calibration-timeline {
        display: block;
        grid-column: 1;
        grid-row: 1;
        align-self: stretch;
        padding: 0;
    }

    .scroll-block--has-calibration .scroll-block__content {
        grid-column: 3;
        grid-row: 1;
        flex: none;
        min-width: 0;
        padding-left: 0;
        gap: 350px;
    }

    .calibration-timeline__rail {
        width: 24px;
        height: 100%;
        min-height: 100%;
        background-image: repeating-linear-gradient(
            to bottom,
            var(--grey-40) 0,
            var(--grey-40) 2px,
            transparent 2px,
            transparent 22px
        );
        background-size: 5px 22px;
        background-repeat: repeat-y;
        background-position: 0 0;
    }

    .scroll-block--has-calibration .calibration-timeline__mark--elongated {
        display: block;
        position: absolute;
        left: calc(-34px - 24px);
        top: 22px;
        z-index: 1;
    }
}

@media (max-width: 991.98px) {
    .scroll-block--has-calibration .scroll-block__item-heading-row .scroll-block__item-heading {
        margin-bottom: 8px;
    }
}

/*-- Scroll Block end ---*/


/*-- CTA Bar start --*/

.cta-bar {
    background: var(--grey-10);
    border-top: 1px solid var(--grey-40);
    padding: 40px 0;
    position: relative;
    z-index: 2;
}

.cta-bar.remove-top-border{
    border-top: none;
}

.cta-bar__inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
}

.cta-bar__title {
    font-size: var(--fontsize-32);
    line-height: 40px;
    font-weight: 400;
    margin-bottom: 0;
}

.cta-bar__action {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 24px;
    color: var(--grey-90);
    -webkit-transition: opacity 0.3s ease-in-out;
    -ms-transition: opacity 0.3s ease-in-out;
    -o-transition: opacity 0.3s ease-in-out;
    -moz-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out;
}

.cta-bar__action::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
}

.cta-bar__link {
    font-size: var(--fontsize-32);
    line-height: 40px;
    font-weight: 500;
    color: var(--grey-90);
}



.cta-bar__arrow {
    width: 32px;
    height: 32px;
    flex-shrink: 0;
}

.cta-bar__arrow svg,
.cta-bar__arrow img {
    display: block;
    width: 32px;
    height: 32px;
}

.cta-bar__action:hover {
    opacity: 0.85;
}

@media (min-width: 768px) {
    .cta-bar__inner {
        gap: 24px;
    }

    .cta-bar__arrow {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 48px;
        height: 48px;
        flex-shrink: 0;
        -webkit-transition: opacity 0.3s ease-in-out;
        -ms-transition: opacity 0.3s ease-in-out;
        -o-transition: opacity 0.3s ease-in-out;
        -moz-transition: opacity 0.3s ease-in-out;
        transition: opacity 0.3s ease-in-out;
    }

    .cta-bar__arrow svg,
    .cta-bar__arrow img {
        width: 48px;
        height: 48px;
    }
}

@media (min-width: 1200px) {
    .cta-bar {
        padding: 65px 0;
    }

    .cta-bar__inner {
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        gap: 40px;
    }

    .cta-bar__title,
    .cta-bar__action {
        flex: 0 0 calc(50% - 20px);
        max-width: calc(50% - 20px);
        width: calc(50% - 20px);
    }

    .cta-bar__action {
        gap: 30px;
    }
}

/*-- CTA Bar end ---*/


/*-- Icon Grid start --*/

.icon-grid {
    background: var(--grey-90);
    color: var(--color-white);
}

/* .icon-grid .intro-block__heading {
    font-weight: 500;
} */

/* .icon-grid .intro-block__heading strong {
    font-weight: 400;
} */

.icon-grid .intro-block__body {
    font-weight: 400;
}

.icon-grid h2,
.icon-grid h3,
.icon-grid .intro-block__heading,
.icon-grid .intro-block__body {
    color: var(--color-white);
}

.icon-grid .overline {
    color: var(--grey-40);
}

.icon-grid .intro-block__row.text-center {
    text-align: center;
}

.icon-grid__cards {
    flex-direction: column;
    margin-top: 80px;
    gap: 88px;
    align-items: stretch;
}

.icon-grid__card {
    max-width: 100%;
    min-width: 0;
}

.icon-grid__icon {
    width: 58px;
    height: 58px;
    margin-bottom: 24px;
}

.icon-grid__icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.icon-grid__card-title {
    font-size: var(--fontsize-16);
    font-weight: 500;
    line-height: 24px;
    color: var(--color-white);
    margin-bottom: 8px;
}

.icon-grid__card-body p {
    font-size: var(--fontsize-16);
    line-height: 24px;
    color: var(--grey-10);
}

.icon-grid__cta-wrap {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
}

@media (max-width: 767.98px) {
    .icon-grid__cta-wrap {
        align-items: flex-start;
    }
}

@media (min-width: 768px) {
    .icon-grid__cards {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 80px 40px;
        margin-top: 112px;
    }

    .icon-grid__icon {
        margin-bottom: 32px;
    }

    .icon-grid__card,
    .icon-grid__cta-wrap {
        flex: none;
        max-width: none;
        width: auto;
    }
}

@media (min-width: 1200px) {
    .icon-grid .intro-block__row {
        gap: 16px;
    }

    .icon-grid__cards {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 80px 40px;
    }
}

/*-- Icon Grid end ---*/


/*-- Impact Cards start --*/

.impact-section {
    background: var(--grey-10);
}

.impact-section .intro-block__heading {
    color: var(--grey-90);
}

.impact-section .overline {
    color: var(--grey-80);
}

.impact-section .intro-block__body,
.impact-section .intro-block__body p {
    color: var(--grey-90);
}

.impact-cards {
    margin-top: 80px;
    gap: 56px;
    align-items: stretch;
}

.impact-card {
    display: flex;
    flex-direction: column;
}

.impact-card__media {
    overflow: hidden;
    margin-bottom: 24px;
    aspect-ratio: 437 / 437;
    line-height: 0;
}

.impact-card__image {
    display: block;
    width: 100%;
    height: 100%;
    aspect-ratio: 437 / 437;
    object-fit: cover;
    -webkit-transition: transform 0.45s ease-in-out;
    -ms-transition: transform 0.45s ease-in-out;
    -o-transition: transform 0.45s ease-in-out;
    -moz-transition: transform 0.45s ease-in-out;
    transition: transform 0.45s ease-in-out;
}

.impact-card .text-link__icon {
    -webkit-transition: transform 0.35s ease-in-out;
    -ms-transition: transform 0.35s ease-in-out;
    -o-transition: transform 0.35s ease-in-out;
    -moz-transition: transform 0.35s ease-in-out;
    transition: transform 0.35s ease-in-out;
}

.impact-card:hover .impact-card__image {
    transform: scale(1.06);
}

.impact-card:hover .text-link__icon {
    transform: translateX(4px) scale(1.1);
}

.impact-card__link {
    margin-top: auto;
}

.impact-cards__col {
    flex: 1 1 100%;
    max-width: 100%;
    min-width: 0;
}

@media (min-width: 768px) {
    .impact-cards {
        margin-top: 80px;
        gap: 24px;
    }
    .impact-cards__col {
        flex: 0 0 calc(50% - 12px);
        max-width: calc(50% - 12px);
    }
    .impact-card__media,
    .impact-card__image {
        aspect-ratio: 414 / 437;
    }
}

@media (min-width: 992px) {
    .impact-cards__col {
        flex: 0 0 calc(33.333% - 16px);
        max-width: calc(33.333% - 16px);
    }
}

@media (min-width: 1200px) {
    .impact-cards {
        gap: 39px;
    }

    .impact-cards__col {
        flex: 0 0 calc(33.333% - 26px);
        max-width: calc(33.333% - 26px);
    }
}

/*-- Impact Cards end ---*/


/*-- Purpose Section start --*/

.purpose-section {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    color: var(--color-white);
    background-color: var(--color-black);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 480px;
}

.purpose-section::before {
    content: '';
    position: absolute;
    inset: 0;
    background: var(--overlay-purpose);
    pointer-events: none;
}

.purpose-section .container {
    position: relative;
    z-index: 1;
    width: 100%;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.purpose-section__inner {
    max-width: 510px;
}

.purpose-section__title {
    color: var(--color-white);
    margin-bottom: 146px;
}

.purpose-section__title-accent {
    font-weight: 500;
}

.purpose-section__content {
    width: 100%;
}

.purpose-section__body {
    margin-bottom: 40px;
}

.purpose-section .btn--white {
    gap: 8px;
}

.purpose-section__body p br{
    display: block;
}

.purpose-section__body p {
    font-size: var(--fontsize-18);
    line-height: 26px;
    color: var(--color-white);
}

.purpose-section__body p + p {
    margin-top: 33px;
}

.purpose-section__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

@media (min-width: 768px) {
    .purpose-section {
        min-height: 560px;
    }

    .purpose-section__title {
        margin-bottom: 115px;
    }

    .purpose-section__body {
        margin-bottom: 40px;
    }

    .purpose-section__body p {
        font-size: var(--fontsize-18);
        line-height: 26px;
    }
}

@media (min-width: 1200px) {
    .purpose-section {
        min-height: 709px;
    }

    .purpose-section__inner {
        max-width: 510px;
    }

    .purpose-section__title {
        margin-bottom: 115px;
    }

    .purpose-section__body {
        margin-bottom: 48px;
    }

    .purpose-section__body p {
        font-size: var(--fontsize-18);
        line-height: 26px;
    }
}

/*-- Purpose Section end ---*/


/*-- CTA Block start --*/

.cta-block {
    position: relative;
    color: var(--color-white);
    background-color: var(--color-black);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 400px;
    display: flex;
    align-items: center;
}

.cta-block .container {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.cta-block__content {
    max-width: 866px;
    margin: 0 auto;
    text-align: center;
}

.cta-block__title {
    font-weight: 500;
    color: var(--color-white);
    margin-bottom: 32px;
}

.cta-block__subtitle {
    font-size: var(--fontsize-18);
    line-height: 26px;
    color: var(--color-white);
    margin-bottom: 64px;
}

.cta-block.font-black {
    color: #000;
}

.cta-block.font-black .cta-block__title,
.cta-block.font-black .cta-block__subtitle,
.cta-block.font-black .cta-block__subtitle p {
    color: #000;
}

.cta-block.font-black .btn,
.cta-block.font-black .btn--white {
    color: #000;
    border-color: #000;
}

.cta-block.font-black .btn:hover,
.cta-block.font-black .btn--white:hover {
    background: #000;
    color: #fff;
    border-color: #000;
}

@media (min-width: 768px) {
    .cta-block {
        min-height: 480px;
    }
}

@media (min-width: 1200px) {
    .cta-block {
        min-height: 600px;
    }

    .cta-block__subtitle {
        font-size: var(--fontsize-18);
        line-height: 26px;
    }
}

/*-- CTA Block end ---*/


/*-- Site Footer start --*/

.site-footer {
    background: var(--color-black);
    color: var(--color-white);
    padding-top: 80px;
    padding-bottom: 16px;
}

.site-footer a {
    color: var(--color-white);
}

.site-footer a:hover {
    opacity: 0.75;
}

.footer-grid {
    padding-bottom: 60px;
    gap: 64px;
}

.footer-grid .footer-col {
    width: 100%;
}

.footer-grid .footer-col:first-child > ul li:last-child a {
    font-weight: 400;
}

@media (min-width: 768px) {
    .footer-grid .footer-col {
        width: calc(50% - 16px);
    }
}

@media (min-width: 1200px) {
    .footer-grid {
        gap: 40px;
    }

    .footer-grid .footer-col {
        width: calc(25% - 30px);
    }
}

.footer-col__label {
    display: block;
    font-size: var(--fontsize-12);
    line-height: 20px;
    color: var(--grey-40);
    text-transform: uppercase;
    margin-bottom: 16px;
}

.footer-col__list, .footer-grid .footer-col > ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.footer-col__list li + li, .footer-grid .footer-col > ul li + li {
    margin-top: 12px;
}

.footer-col__list a, .footer-grid .footer-col > ul a,
.footer-col__text {
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 500;
}

.footer-col__list--social a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.footer-col__social-icon {
    display: block;
    width: 17px;
    height: 17px;
    flex-shrink: 0;
}

.footer-subscribe__hint {
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 400;
    margin-bottom: 12px;
}

.footer-subscribe__form {
    display: flex;
    align-items: center;
    gap: 12px;
    /* border-bottom: 1px solid var(--grey-40);
    padding-bottom: 4px; */
    margin-top: 19px;
}

.footer-subscribe__form form > p {
    position: relative;
}

.footer-subscribe__form form > p input[type="email"] {
    color: var(--color-white);
    border-bottom: 1px solid var(--grey-40) !important;
}

.footer-subscribe__form form > p .wpcf7-not-valid-tip {
    position: absolute;
    margin-top: 8px;
}

.footer-subscribe__form input {
    flex: 1;
    color: var(--color-white);
    border-bottom: 0 !important;
    padding: 0;
    padding-bottom: 4px;
}

.footer-subscribe__form input::placeholder {
    color: var(--grey-80);
}

.footer-subscribe__form button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    padding: 0;
    background: transparent;
    border: none;
    cursor: pointer;
    color: var(--color-white);
    position: absolute;
    right: 0;
    bottom: 4px;
}

.footer-brand {
    position: relative;
    display: grid;
    padding-bottom: 25px;
}

.footer-brand__dashes,
.footer-brand > .container {
    grid-area: 1 / 1;
}

.footer-brand__dashes {
    width: 100%;
    line-height: 0;
    pointer-events: none;
    min-height: 226px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.footer-brand__dashes img {
    display: block;
    width: 100%;
    height: auto;
}

.footer-brand > .container {
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    padding-bottom: 48px;
}

.footer-brand__logo {
    position: absolute;
    bottom: 10px;
}

.footer-brand__logo img {
    width: auto;
}

.footer-bottom {
    display: flex;
    /* flex-direction: column; */
    /* align-items: flex-start; */
    gap: 12px;
    padding-top: 70px;
    justify-content: space-between;
}

.footer-bottom__links {
    display: flex;
    flex-wrap: wrap;
    gap: 16px 24px;
}

.footer-bottom__links a,
.footer-bottom__copy {
    font-size: var(--fontsize-12);
    line-height: 20px;
    color: var(--grey-40);
}

@media (min-width: 768px) {
    .footer-grid {
        padding-bottom: 60px;
        gap: 40px;
    }

    .footer-bottom {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        padding-top: 30px;
    }
}

@media (min-width: 1200px) {
    .site-footer {
        padding-top: 180px;
    }
}

@media (max-width: 767px) {
    /* .footer-brand__logo{left: 0; right: 0;;} */
    .footer-brand__logo img{
        margin: 0 auto;
    }
}

/*-- Site Footer end ---*/


/*-- Mobile homepage (Figma 215-6340, â‰¤767px) --*/

@media (max-width: 767.98px) {
    .hero-banner__title {
        font-size: 44px;
        line-height: 50px;
        display: inline-grid;
    }

    /* Figma 66:5611: 88px top, 60px bottom */
    .trusted-by.section-padding {
        padding-bottom: 60px;
    }

    .trusted-by__title {
        font-size: 26px;
        line-height: 34px;
        max-width: none;
        margin: 0 0 10px;
        padding-left: 0;
        padding-right: 0;
        text-align: left;
    }

    .cta-bar__title-punct {
        display: none;
    }

    /* Logo row 95px tall → section = 88 + 34 + 20 + 95 + 60 = 297px (Figma) */
    .trusted-by__logo,
    .trusted-by__logos.slick-slider .slick-slide,
    .trusted-by__logos.slick-slider .slick-slide > div {
        width: 142px;
        height: 95px;
    }

    .trusted-by__logo {
        flex-basis: 142px;
    }

    .trusted-by__logos.slick-slider .slick-slide {
        margin-right: 20px;
    }

    .scroll-block__item-heading,
    .scroll-block__item-subheading {
        font-size: 26px;
        line-height: 34px;
    }

    .cta-bar__title,
    .cta-bar__link {
        font-size: 26px;
        line-height: 34px;
    }

    .cta-bar__action {
        align-items: center;
    }

    .cta-bar__arrow {
        width: 32px;
        height: 32px;
    }

    .cta-bar__arrow svg,
    .cta-bar__arrow img {
        width: 32px;
        height: 32px;
    }
}

/*======= Homepage style end =======*/
/* Animate.css compatibility */
.animated {
    opacity: 0;
}

.animated.fadeIn,
.animated.fadeInUp,
.animated.fadeInDown,
.animated.fadeInLeft,
.animated.fadeInRight {
    animation-duration: 0.8s;
    animation-fill-mode: both;
}

.animated.fadeIn {
    animation-name: fadeIn;
}

.animated.fadeInUp {
    animation-name: fadeInUp;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translate3d(0, 30px, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}


/*======= Case Studies Page start =======*/

.case-studies {
    background: var(--color-white);
    color: var(--color-black);
}

/*-- Case Studies Toolbar (filters + sort) --*/

.case-studies-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 42px;
}

.case-studies-filters {
    flex: 1 1 auto;
    min-width: 0;
    margin-bottom: 0;
}

/*-- Case Studies Filters --*/

.case-studies-filters__desktop {
    display: none;
    flex-wrap: wrap;
    gap: 24px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100%;
    padding: 0 12px;
    border-bottom: 1px solid var(--grey-40);
}

.case-studies-filters__item {
    position: relative;
    display: inline-block;
    padding: 4px 12px;
    margin-bottom: -1px;
    font-family: var(--font-body);
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 400;
    color: var(--grey-90);
    background: none;
    border: none;
    border-bottom: 1px solid transparent;
    cursor: pointer;
    -webkit-transition: color 0.3s ease-in-out, border-color 0.3s ease-in-out;
    -ms-transition: color 0.3s ease-in-out, border-color 0.3s ease-in-out;
    -o-transition: color 0.3s ease-in-out, border-color 0.3s ease-in-out;
    -moz-transition: color 0.3s ease-in-out, border-color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out, border-color 0.3s ease-in-out;
}

.case-studies-filters__item:hover,
.case-studies-filters__item:focus-visible {
    color: var(--color-black);
}

.case-studies-filters__item.is-active {
    color: var(--grey-90);
    font-weight: 500;
    border-bottom-color: var(--grey-80);
}

/*-- Case Studies Sort --*/

.case-studies-sort {
    position: relative;
    flex: 0 0 auto;
}

.case-studies-sort__toggle {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 0;
    font-family: var(--font-body);
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 500;
    color: var(--grey-90);
    background: none;
    border: none;
    cursor: pointer;
}

.case-studies-sort__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    color: var(--grey-90);
    -webkit-transition: transform 0.3s ease-in-out;
    -ms-transition: transform 0.3s ease-in-out;
    -o-transition: transform 0.3s ease-in-out;
    -moz-transition: transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out;
}

.case-studies-sort__icon svg {
    display: block;
    width: 12px;
    height: 12px;
}

.case-studies-sort.is-open .case-studies-sort__icon {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}

.case-studies-sort__panel {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    z-index: 32;
    min-width: 180px;
    padding: 8px 0;
    background: var(--color-white);
    border: 1px solid var(--color-border);
}

.case-studies-sort__panel[hidden] {
    display: none;
}

.case-studies-sort__option {
    display: block;
    width: 100%;
    padding: 12px 16px;
    font-family: var(--font-body);
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 400;
    color: var(--grey-90);
    text-align: left;
    background: none;
    border: none;
    cursor: pointer;
    -webkit-transition: color 0.3s ease-in-out;
    -ms-transition: color 0.3s ease-in-out;
    -o-transition: color 0.3s ease-in-out;
    -moz-transition: color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out;
}

.case-studies-sort__option:hover,
.case-studies-sort__option:focus-visible {
    color: var(--color-black);
}

.case-studies-sort__option.is-active {
    font-weight: 500;
    color: var(--color-black);
}

.case-studies-filters__mobile {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    padding: 0 0 8px;
    font-family: var(--font-body);
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 500;
    color: var(--grey-90);
    background: none;
    border: none;
    cursor: pointer;
}

.case-studies-filters__mobile-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    color: var(--grey-90);
    -webkit-transition: transform 0.3s ease-in-out;
    -ms-transition: transform 0.3s ease-in-out;
    -o-transition: transform 0.3s ease-in-out;
    -moz-transition: transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out;
}

.case-studies-filters__mobile-icon svg {
    display: block;
    width: 12px;
    height: 12px;
}

.case-studies-filters.is-open .case-studies-filters__mobile-icon {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}

.case-studies-filters__mobile-wrap {
    width: 100%;
}

.case-studies-filters__panel {
    background: var(--color-white);
}

.case-studies-filters__panel[hidden] {
    display: none;
}

.case-studies-filters__panel-item {
    display: block;
    width: 100%;
    padding: 16px 0;
    font-family: var(--font-body);
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 400;
    color: var(--grey-60);
    text-align: left;
    background: none;
    border: none;
    border-bottom: 1px solid var(--color-border);
    cursor: pointer;
    -webkit-transition: color 0.3s ease-in-out;
    -ms-transition: color 0.3s ease-in-out;
    -o-transition: color 0.3s ease-in-out;
    -moz-transition: color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out;
}

.case-studies-filters__panel-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.case-studies-filters__panel-item:hover,
.case-studies-filters__panel-item:focus-visible {
    color: var(--color-black);
}

.case-studies-filters__panel-item.is-active {
    color: var(--color-black);
    font-weight: 500;
}

/*-- Case Studies Grid --*/

.case-studies-grid__inner {
    display: flex;
    flex-wrap: wrap;
    gap: 48px 0;
}

.case-study-card {
    display: flex;
    flex-direction: column;
    flex: 0 0 100%;
    max-width: 100%;
    min-width: 0;
}

.case-study-card__media {
    overflow: hidden;
    margin-bottom: 24px;
    aspect-ratio: 413 / 412;
    line-height: 0;
}

.case-study-card__image {
    display: block;
    width: 100%;
    height: 100%;
    aspect-ratio: 413 / 412;
    object-fit: cover;
    -webkit-transition: transform 0.45s ease-in-out;
    -ms-transition: transform 0.45s ease-in-out;
    -o-transition: transform 0.45s ease-in-out;
    -moz-transition: transform 0.45s ease-in-out;
    transition: transform 0.45s ease-in-out;
}

.case-study-card .text-link__icon {
    -webkit-transition: transform 0.35s ease-in-out;
    -ms-transition: transform 0.35s ease-in-out;
    -o-transition: transform 0.35s ease-in-out;
    -moz-transition: transform 0.35s ease-in-out;
    transition: transform 0.35s ease-in-out;
}

.case-study-card:hover .case-study-card__image {
    transform: scale(1.06);
}

.case-study-card:hover .text-link__icon {
    transform: translateX(4px) scale(1.1);
}

.case-study-card__label {
    display: block;
    font-size: var(--fontsize-12);
    line-height: 20px;
    font-weight: 400;
    text-transform: uppercase;
    color: var(--grey-80);
    margin-bottom: 8px;
}

.case-study-card__title {
    font-size: 20px;
    line-height: 28px;
    font-weight: 500;
    color: var(--grey-90);
    margin-bottom: 24px;
}

.case-study-card__body {
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 400;
    color: var(--grey-90);
    margin-bottom: 50px;
}

.case-study-card__body p {
    margin-bottom: 0;
}

.case-study-card__link {
    margin-top: auto;
}

.case-study-card.is-hidden {
    display: none;
}

/*-- Case Studies Pagination --*/

.case-studies-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    /* gap: 16px; */
    margin-top: 80px;
}

.case-studies-pagination__arrow,
.case-studies-pagination__page {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 400;
    color: var(--grey-60);
    -webkit-transition: color 0.3s ease-in-out;
    -ms-transition: color 0.3s ease-in-out;
    -o-transition: color 0.3s ease-in-out;
    -moz-transition: color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out;
}

.case-studies-pagination__arrow:hover,
.case-studies-pagination__page:hover {
    color: var(--color-black);
}

.case-studies-pagination__page.is-active {
    color: var(--color-black);
    font-weight: 500;
    pointer-events: none;
}

.case-studies-pagination__arrow svg {
    display: block;
    width: 24px;
    height: 24px;
}

.case-studies-pagination__arrow,
.case-studies-pagination__page {
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
    font-family: 'PP Neue Montreal';
}

.case-studies-pagination__arrow.is-disabled,
.case-studies-pagination__arrow:disabled {
    opacity: 0.35;
    pointer-events: none;
    cursor: default;
}

.case-studies.is-loading .case-studies-grid__inner,
.case-studies.is-loading .case-studies-pagination-wrap {
    opacity: 0.5;
    pointer-events: none;
}

.case-studies-empty {
    width: 100%;
    margin: 0;
    color: var(--grey-60);
}

@media (min-width: 768px) {
    .case-studies-toolbar {
        margin-bottom: 24px;
    }

    .case-studies-filters__desktop {
        display: inline-flex;
    }

    .case-studies-filters__mobile {
        display: none;
    }

    .case-studies-grid__inner {
        gap: 60px 24px;
    }

    .case-study-card {
        flex: 0 0 calc(50% - 12px);
        max-width: calc(50% - 12px);
    }

    .case-studies-pagination {
        margin-top: 60px;
        /* gap: 24px; */
    }
}

@media (min-width: 1024px) {
    .case-studies-toolbar {
        /* margin-bottom: 80px; */
    }

    .case-studies-grid__inner {
        gap: 80px 39px;
    }

    .case-study-card {
        flex: 0 0 calc(33.333% - 26px);
        max-width: calc(33.333% - 26px);
    }

    .case-studies-pagination {
        margin-top: 117px;
    }
}

@media (max-width: 767.98px) {
    .case-studies-toolbar {
        margin-bottom: 32px;
    }

    .case-studies .case-studies-sort {
        display: none;
    }

    .case-studies-filters {
        overflow: visible;
    }

    .case-studies-filters.is-open {
        position: relative;
        z-index: 30;
    }

    .case-studies-filters__mobile-wrap {
        position: relative;
        border-bottom: 1px solid var(--grey-80);
    }

    .case-studies-filters.is-open .case-studies-filters__mobile-wrap {
        border-bottom: none;
    }

    .case-studies-filters.is-open .case-studies-filters__mobile {
        border-bottom: 1px solid var(--grey-80);
    }

    .case-studies-filters__panel {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        z-index: 31;
        border: 1px solid var(--color-border);
        border-top: none;
    }

    .case-studies-filters.is-open .case-studies-filters__panel-item {
        padding: 15px;
    }

    .case-studies-grid__inner {
        gap: 56px;
    }

    .case-study-card__media,
    .case-study-card__image {
        aspect-ratio: 1 / 1;
    }

    .case-study-card__title {
        margin-bottom: 8px;
    }

    .case-study-card__body {
        margin-bottom: 42px;
    }
}

/*======= Case Studies Page end =======*/


/*======= Marketing Procurement Page start =======*/
/* Typography: Figma 94:3029 desktop / 181:8178 mobile */

/*-- Hero Banner --*/

.mp-hero {
    align-items: flex-end;
    min-height: 420px;
    padding-top: calc(var(--site-header-height) + 236px);
    padding-bottom: 38px;
}

.mp-hero .hero-banner__content {
    padding: 0;
    width: 100%;
}

.mp-hero .hero-banner__title {
    margin-bottom: 0;
    font-size: 44px;
    line-height: 50px;
    color: var(--color-white);
}

@media (min-width: 768px) {
    .mp-hero {
        min-height: 520px;
        padding-bottom: 48px;
    }
}

@media (min-width: 992px) {
    .mp-hero {
        min-height: 640px;
        padding-top: calc(var(--site-header-height) + 236px);
    }
}

@media (min-width: 1200px) {
    .mp-hero .hero-banner__title {
        font-size: var(--fontsize-64);
        line-height: 72px;
    }
}

/*-- Intro accordion (marketing procurement) --*/

.intro-block__accordion {
    margin-top: 48px;
    max-width: 100%;
}

.mp-accordion__item {
    border-top: 1px solid var(--color-border);
}

.mp-accordion__item:last-child {
    border-bottom: 1px solid var(--color-border);
}

.mp-accordion__title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    padding: 24px 12px;
    font-size: var(--fontsize-18);
    line-height: 26px;
    font-weight: 500;
    text-align: left;
    color: var(--grey-90);
    background: transparent;
    border: 0;
    cursor: pointer;
}

.mp-accordion__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    flex-shrink: 0;
}

.mp-accordion__icon-plus,
.mp-accordion__icon-minus {
    display: block;
    flex-shrink: 0;
}

.mp-accordion__icon-minus {
    display: none;
}

.mp-accordion__title.active .mp-accordion__icon-plus {
    display: none;
}

.mp-accordion__title.active .mp-accordion__icon-minus {
    display: block;
}

.mp-accordion__content {
    display: none;
    padding: 0 8px 24px;
    color: var(--grey-90);
}

.mp-accordion__content p + p {
    margin-top: 24px;
}

@media (min-width: 1200px) {
    .intro-block__accordion {
        /* margin-left: auto;
        max-width: 640px; */
    }
}

/*-- Audited Network --*/

.audited-network {
    background: var(--grey-90);
    color: var(--color-white);
}

.audited-network__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
    margin-bottom: 80px;
    padding: 0;
}

.audited-network__heading {
    color: var(--color-white);
    margin-bottom: 0;
}

.audited-network__body {
    font-size: var(--fontsize-18);
    line-height: 26px;
}

.audited-network__body p + p {
    margin-top: 25px;
}

.audited-network__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 88px 30px;
    padding: 0;
}

.audited-network__card {
    min-width: 0;
}

.audited-network__icon {
    width: 58px;
    height: 58px;
    margin-bottom: 40px;
}

.audited-network__icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.audited-network__card-title {
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 500;
    color: var(--color-white);
    margin-bottom: 0;
}

@media (min-width: 768px) {
    .audited-network__header {
        grid-template-columns: repeat(2, 1fr);
        gap: 40px;
        margin-bottom: 80px;
    }

    .audited-network__grid {
        gap: 88px 40px;
        padding: 0;
    }

    .audited-network__icon {
        margin-bottom: 24px;
    }
}

@media (min-width: 1200px) {
    .audited-network__header {
        margin-bottom: 120px;
    }

    .audited-network__grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 88px 40px;
        /* padding: 0 32px; */
    }
}

/*-- Network Gallery --*/

.network-gallery {
    position: relative;
    background: var(--color-white);
    overflow: hidden;
}

.network-gallery__inner {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
    min-width: 0;
}

.network-gallery__media {
    width: 100%;
    min-width: 0;
}

.network-gallery__media-inner {
    display: flex;
    align-items: stretch;
    width: 100%;
    min-width: 0;
    overflow: hidden;
}

.network-gallery__prev {
    display: none;
    flex: 0 0 40px;
    width: 40px;
    min-width: 40px;
    max-width: 40px;
    overflow: hidden;
    line-height: 0;
}

.network-gallery__prev-image {
    display: block;
    width: 40px;
    max-width: 40px;
    height: 100%;
    min-width: 0;
    object-fit: cover;
    object-position: 100% center;
}

.network-gallery__slider {
    line-height: 0;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
}

.network-gallery__slider .slick-list {
    overflow: hidden;
}

.network-gallery__slider .slick-slide > div,
.network-gallery__slider .slick-slide img {
    width: 100%;
}

.network-gallery__slide img {
    display: block;
    width: 100%;
    aspect-ratio: 360 / 208;
    object-fit: cover;
}

.network-gallery__panel {
    display: flex;
    flex-direction: column;
    min-height: auto;
}

.network-gallery__panel-content {
    min-width: 0;
}

.network-gallery__panel > .overline {
    flex-shrink: 0;
}

.network-gallery__panel .overline {
    margin-bottom: 56px;
}

.network-gallery__title {
    font-size: 26px;
    line-height: 34px;
    font-weight: 500;
    color: var(--grey-90);
    margin-bottom: 32px;
}

.network-gallery__description {
    margin-bottom: 0;
    color: var(--color-black);
}

.network-gallery__panel .overline {
    color: var(--grey-80);
}

.network-gallery__footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    margin-top: 56px;
}

.network-gallery__counter {
    font-size: var(--fontsize-12);
    line-height: 16.8px;
    color: var(--grey-80);
}

.network-gallery__arrows {
    display: flex;
    align-items: center;
    gap: 14px;
}

.network-gallery__arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 3px solid var(--grey-90);
    border-radius: 50%;
    background: transparent;
    color: var(--grey-90);
    cursor: pointer;
    -webkit-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.network-gallery__arrow:hover {
    border-color: var(--grey-90);
}

.network-gallery__arrow svg {
    display: block;
    width: 23px;
    height: 23px;
}

.network-gallery__arrow--prev svg {
    transform: scaleX(-1);
}

@media (min-width: 992px) {
    .network-gallery__inner {
        flex-direction: row;
        align-items: stretch;
        gap: 40px;
    }

    .network-gallery__media {
        --network-gallery-peek: 40px;
        flex: 1 1 auto;
        width: auto;
        max-width: 927px;
        min-width: 0;
        margin-left: calc(-1 * var(--network-gallery-peek));
    }

    .network-gallery__media-inner {
        gap: calc(var(--network-gallery-peek) - 40px);
    }

    .network-gallery__prev {
        display: block;
        align-self: stretch;
        flex-shrink: 0;
    }

    .network-gallery__prev-image {
        width: 40px;
        max-width: 40px;
        height: 100%;
        min-height: 100%;
    }

    .network-gallery__slider {
        flex: 1 1 auto;
        min-width: 0;
        max-width: 867px;
    }

    .network-gallery__slide img {
        aspect-ratio: 867 / 576;
    }

    .network-gallery__panel {
        flex: 0 1 453px;
        width: auto;
        max-width: 453px;
        min-width: 280px;
        min-height: 0;
        padding-top: 32px;
        padding-bottom: 32px;
    }

    .network-gallery__panel > .overline {
        margin-bottom: 0;
    }

    .network-gallery__panel-content {
        flex: 1 1 auto;
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-height: 0;
    }

    .network-gallery__panel .overline {
        margin-bottom: 16px;
    }

    .network-gallery__title {
        font-size: var(--fontsize-32);
        line-height: 40px;
        margin-bottom: 16px;
    }

    .network-gallery__description {
        margin-bottom: 0;
        color: var(--grey-90);
    }

    .network-gallery__footer {
        flex-shrink: 0;
        margin-top: 0;
        padding-top: 40px;
    }

    .network-gallery__counter {
        font-size: var(--fontsize-12);
        line-height: 20px;
    }

    .network-gallery__arrow {
        width: 48px;
        height: 48px;
    }
}

@media (min-width: 1400px) {
    .network-gallery__media {
        --network-gallery-peek: 60px;
    }
}

/*-- Proven Impact --*/

.proven-impact {
    position: relative;
    color: var(--color-white);
    background-color: var(--color-black);
    background-image: url('../images/proven-impact-mob-background.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.proven-impact .container {
    position: relative;
    z-index: 1;
}

.proven-impact__heading {
    margin-bottom: 80px;
}

.proven-impact__heading h2 {
    color: var(--color-white);
    text-align: left;
    margin-bottom: 24px;
}

.proven-impact__heading p {
    max-width: 866px;
    margin: 0;
    font-size: var(--fontsize-18);
    line-height: 26px;
    font-weight: 400;
    color: var(--color-white);
    text-align: left;
}

.proven-impact__stats {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    gap: 80px;
}

.proven-impact__stat {
    min-width: 0;
    padding: 0 8px;
    border-left: none;
}

.proven-impact__number {
    display: block;
    font-size: 72px;
    line-height: 86px;
    font-weight: 500;
    margin-bottom: 24px;
}

.proven-impact__label {
    font-size: var(--fontsize-18);
    line-height: 26px;
}

@media (min-width: 768px) {
    .proven-impact {
        background-image: url('../images/proven-impact-bg.jpg');
    }

    .proven-impact__heading {
        margin-bottom: 60px;
    }

    .proven-impact__heading h2 {
        font-weight: 500;
        text-align: center;
    }

    .proven-impact__heading p {
        margin-left: auto;
        margin-right: auto;
        text-align: center;
    }

    .proven-impact__stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 40px;
    }

    .proven-impact__stat {
        padding: 0;
    }

    .proven-impact__number {
        font-size: 64px;
        line-height: 72px;
        margin-bottom: 24px;
    }
}

@media (min-width: 1200px) {
    .proven-impact__heading {
        margin-bottom: 120px;
    }

    .proven-impact__heading h2 {
        margin-bottom: 24px;
    }

    .proven-impact__stats {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 40px;
    }

    .proven-impact__stat {
        padding: 0;
        border-left: none;
    }

    .proven-impact__number {
        font-size: 80px;
        line-height: 96px;
        margin-bottom: 24px;
    }

    .proven-impact__label {
        font-weight: 500;
    }
}

/*-- Testimonial Quote --*/

.mp-quote {
    background: var(--grey-90);
    color: var(--color-white);
}

.mp-quote__inner {
    max-width: 875px;
    margin: 0 auto;
    text-align: left;
}

.mp-quote__inner cite {
    font-style: normal;
}

.mp-quote__text {
    font-size: 36px;
    line-height: 39px;
    margin-bottom: 56px;
}

.mp-quote__text h2 {
    margin: 0;
    font: inherit;
    color: inherit;
}

.mp-quote__name {
    display: block;
    font-size: var(--fontsize-16);
    line-height: 22px;
    font-weight: 500;
    margin-bottom: 4px;
}

.mp-quote__role {
    display: block;
    font-size: var(--fontsize-16);
    line-height: 22px;
    max-width: 240px;
}

.text-black{color: var(--grey-90) !important;}
.text-black .mp-quote__role{color: var(--grey-80) !important;}

@media (min-width: 768px) {
    .mp-quote__name,
    .mp-quote__role {
        line-height: 24px;
    }

    .mp-quote__role {
        color: var(--grey-10);
        max-width: 100%;
    }
}

@media (min-width: 1200px) {
    .mp-quote__text {
        font-size: 48px;
        line-height: 56px;
        font-weight: 500;
        margin-bottom: 80px;
    }
}

/*-- Case Study Feature --*/

.mp-case-study {
    background: var(--color-white);
}

.mp-case-study__header {
    margin-bottom: 38px;
    text-align: center;
}

.mp-case-study__header .overline {
    margin-bottom: 8px;
    color: var(--grey-90);
}

@media (min-width: 768px) {
    .mp-case-study__header .overline {
        margin-bottom: 16px;
        color: var(--grey-80);
    }
}

.mp-case-study__heading {
    margin-bottom: 24px;
}

.mp-case-study__intro {
    max-width: 866px;
    margin: 0 auto;
    font-size: var(--fontsize-18);
    line-height: 26px;
    color: var(--grey-90);
}

.mp-case-study__image {
    display: block;
    width: 100%;
    aspect-ratio: 360 / 220;
    object-fit: cover;
    margin-bottom: 32px;
}

.mp-case-study__footer {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 56px;
    margin-top: 0;
}

.mp-case-study__content {
    display: flex;
    flex-direction: column;
    gap: 32px;
    width: 100%;
}

.mp-case-study__description {
    color: var(--grey-90);
}

.mp-case-study__description p {
    margin: 0;
    font-size: var(--fontsize-16);
    line-height: 24px;
}

.mp-case-study__modules-row {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
    width: 100%;
}

.mp-case-study__modules-label {
    flex-shrink: 0;
    font-size: var(--fontsize-14);
    line-height: 17px;
    letter-spacing: 0.84px;
    text-transform: uppercase;
    color: var(--grey-80);
}

.mp-case-study__modules-list {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    row-gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.mp-case-study__modules-list li {
    position: relative;
    padding-top: 10px;
    font-size: var(--fontsize-14);
    line-height: 17px;
    letter-spacing: 0.84px;
    text-transform: uppercase;
    color: var(--grey-90);
}

/* .mp-case-study__modules-list li:first-child {
    margin-left: 14px;
}

.mp-case-study__modules-list li:first-child::before {
    content: "";
    position: absolute;
    top: 0;
    left: -8px;
    width: 1px;
    height: 10px;
    background-color: var(--grey-90);
} */

.mp-case-study__modules-list li + li {
    margin-left: 14px;
}

.mp-case-study__modules-list li + li::before {
    content: "";
    position: absolute;
    top: 0;
    left: -8px;
    width: 1px;
    height: 10px;
    background-color: var(--grey-90);
}

.mp-case-study__action {
    flex-shrink: 0;
}

.mp-case-study__action .btn {
    gap: 8px;
    color: var(--grey-90);
}

.mp-case-study__action .btn:hover {
    background-color: var(--color-black);
    color: var(--color-white);
    border-color: var(--color-black);
}

@media (min-width: 768px) {
    .mp-case-study__header {
        margin-bottom: 64px;
    }

    .mp-case-study__image {
        aspect-ratio: 1320 / 576;
        margin-bottom: 24px;
    }

    .mp-case-study__footer {
        /* align-items: flex-end; */
        justify-content: space-between;
        gap: 40px;
        margin-top: 0;
    }

    .mp-case-study__content {
        flex: 1 1 0;
        min-width: 0;
        max-width: 753px;
    }

    .mp-case-study__description {
        color: var(--color-black);
    }

    .mp-case-study__modules-row {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 4px;
        width: auto;
    }

    .mp-case-study__modules-label {
        padding-top: 10px;
    }

    .mp-case-study__modules-list {
        row-gap: 0;
    }

    .mp-case-study__modules-list li:first-child {
        margin-left: 7px;
    }

    .mp-case-study__modules-list li:first-child::before {
        content: none;
    }
}

@media (min-width: 1025px) {
    .mp-case-study__footer {
        flex-direction: row;
    }
}

/*-- Talk to Specialist CTA --*/

.mp-cta {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 600px;
    padding: 120px 0px;
    color: var(--grey-90);
    background-color: var(--color-white);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.mp-cta .container {
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: center;
    width: 100%;
}

.mp-cta__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 866px;
    margin: 0 auto;
    text-align: center;
}

.mp-cta__title {
    margin-bottom: 24px;
}

.mp-cta__subtitle {
    font-size: var(--fontsize-18);
    line-height: 26px;
    color: var(--grey-90);
    margin-bottom: 60px;
}

.mp-cta__subtitle p {
    margin: 0;
}

.mp-cta__btn {
    gap: 8px;
    background: transparent;
    border-color: var(--grey-90);
    color: var(--grey-90);
}

.mp-cta__btn:hover {
    background: var(--grey-90);
    border-color: var(--grey-90);
    color: var(--color-white);
}

@media (min-width: 768px) {
    .mp-cta {
        padding: 0 60px;
    }

    .mp-cta__subtitle {
        margin-bottom: 64px;
    }
}

/*-- Related offers (reuses offer-panels) --*/

.offer-panels__grid--related {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
}

.offer-panels--related .offer-panel--intro {
    justify-content: flex-start;
    min-height: auto;
    padding: 40px 28px;
}

.offer-panels--related .offer-panel__section-heading {
    margin-bottom: 0;
}

.offer-panels--related .offer-panels__tiles {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    min-width: 0;
}

@media (min-width: 768px) {
    .offer-panels--related .offer-panel--intro {
        padding: 48px 40px;
    }

    .offer-panels--related .offer-panels__tiles {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .offer-panels--related .offer-panels__tiles .offer-panel {
        border-bottom: none;
        border-right: 1px solid var(--color-border);
    }

    .offer-panels--related .offer-panels__tiles .offer-panel:last-child {
        border-right: none;
    }

    .offer-panels--related .offer-panels__grid--related {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (min-width: 1200px) {
    .offer-panels--related .offer-panels__grid--related {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: stretch;
    }

    .offer-panels--related .offer-panel--intro {
        min-height: 535px;
        padding: 32px 36px;
        border-bottom: none;
        border-right: 1px solid var(--color-border);
    }
}

@media (prefers-reduced-motion: reduce) {
    .network-gallery__arrow {
        -webkit-transition: none;
        -ms-transition: none;
        -o-transition: none;
        -moz-transition: none;
        transition: none;
    }
}

/*-- Marketing Procurement mobile layout --*/

@media (max-width: 767.98px) {
    .site-main:has(.mp-hero) {
        display: flex;
        flex-direction: column;
    }

    /* .mp-hero {
        order: 1;
    }

    .mp-intro {
        order: 2;
    }

    .audited-network {
        order: 3;
    }

    .network-gallery {
        order: 4;
    }

    .mp-quote {
        order: 5;
    }

    .proven-impact {
        order: 6;
    }

    .mp-case-study {
        order: 7;
    }

    .mp-cta {
        order: 8;
    }

    .offer-panels--related {
        order: 9;
    } */

    .mp-intro .intro-block__heading {
        line-height: 39px;
    }
}

/*======= Marketing Procurement Page end =======*/


/*======= What We Offer Page start =======*/

/*-- Hero banner (Figma 3:915 desktop / 4:4941 mobile) --*/

#primary-content > .hero-banner .hero-banner__title {
    font-size: 44px;
    line-height: 50px;
    color: var(--color-white);
}

/*-- Offer panels: mobile 4:4941, desktop 3:915 â€” shared 20/28 headings, 16/24 body --*/

/*-- Offer Panels --*/

.offer-panels {
    width: 100%;
    background: var(--color-white);
    border-top: 1px solid var(--color-border);
}

.offer-panels__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    margin: 0;
    padding: 0;
}

.offer-panel {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 450px;
    padding: 32px 28px;
    color: var(--grey-90);
    background: var(--color-white);
    border-bottom: 1px solid var(--color-border);
    overflow: hidden;
}

.offer-panel:last-child {
    border-bottom: none;
}

.offer-panel--interactive {
    padding: 0;
    cursor: pointer;
}

.offer-panel--interactive .offer-panel__inner {
    padding: 32px 28px;
}

.offer-panel--hover::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: opacity 0.45s ease;
    -ms-transition: opacity 0.45s ease;
    -o-transition: opacity 0.45s ease;
    -moz-transition: opacity 0.45s ease;
    transition: opacity 0.45s ease;
}

.offer-panel--hover:hover::before {
    opacity: 1;
}

.offer-panel--hover-grey-1::before {
    background-image: url('../images/grey-panel-hover.png');
}

.offer-panel--hover-grey-2::before {
    background-image: url('../images/grey-panel-hover2.png');
}

.offer-panel--hover-grey-3::before {
    background-image: url('../images/grey-panel-hover3.png');
}

.offer-panel--hover-grey-4::before {
    background-image: url('../images/grey-panel-hover4.png');
}

.offer-panel--hover-grey-5::before {
    background-image: url('../images/grey-panel-hover5.png');
}

.offer-panel--hover-grey-6::before {
    background-image: url('../images/grey-panel-hover6.png');
}

.offer-panel--hover-grey-7::before {
    background-image: url('../images/grey-panel-hover7.png');
}

.offer-panel--hover-grey-8::before {
    background-image: url('../images/grey-panel-hover8.png');
}

.offer-panel--hover-grey-9::before {
    background-image: url('../images/grey-panel-hover9.png');
}

.offer-panel--hover-grey-10::before {
    background-image: url('../images/grey-panel-hover10.png');
}

.offer-panel--hover-yellow::before {
    background-image: url('../images/yellow-panel-hover.png');
}

.offer-panel__action .text-link {
    position: relative;
    z-index: 3;
    color: #000;
}

.offer-panel--interactive .offer-panel__action .text-link {
    position: static;
}

.offer-panel--interactive .offer-panel__action .text-link::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 3;
}

.offer-panel__action .text-link__icon {
    -webkit-transition: transform 0.45s ease;
    -ms-transition: transform 0.45s ease;
    -o-transition: transform 0.45s ease;
    -moz-transition: transform 0.45s ease;
    transition: transform 0.45s ease;
}

.offer-panel--hover:hover .offer-panel__action .text-link__icon {
    transform: translateX(4px) scale(1.1);
}

.offer-panel__heading {
    font-size: 20px;
    line-height: 28px;
    font-weight: 500;
    color: var(--grey-90);
    margin-bottom: 0;
}

.offer-panel__subheading {
    font-size: 20px;
    line-height: 28px;
    margin-top: 2px;
    margin-bottom: 0;
    color: var(--grey-90);
}

.offer-panel--testimonial {
    background: var(--grey-10);
}

.offer-panel__inner {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex: 1 1 auto;
    width: 100%;
    min-height: 100%;
}

.offer-panel__top {
    flex-shrink: 0;
    margin-bottom: 30px;
}

.offer-panel__bottom {
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
}

.offer-panel__index,
.offer-panel__label {
    display: block;
    font-size: var(--fontsize-12);
    line-height: 20px;
    color: var(--grey-80);
    margin-bottom: 4px;
}

.offer-panel__label {
    color: var(--grey-80);
    text-transform: uppercase;
}

.offer-panel__body {
    max-width: 100%;
}

.offer-panel__body p + p {
    margin-top: 16px;
}

.offer-panel__action {
    margin-top: 32px;
    padding-top: 0;
}

.offer-panel--testimonial .offer-panel__inner {
    justify-content: flex-start;
}

.offer-panel--testimonial .offer-panel__top {
    margin-bottom: 8px;
}

.offer-panel--testimonial .offer-panel__bottom {
    flex: 1 1 auto;
    gap: 24px;
}

.offer-panel__quote {
    font-size: var(--fontsize-20);
    line-height: 28px;
    max-width: 100%;
}

.offer-panel--testimonial .offer-panel__attribution {
    margin-top: auto;
}

.offer-panel__name {
    display: block;
    font-size: var(--fontsize-16);
    line-height: 22px;
    font-weight: 500;
    color: var(--grey-90);
    margin-bottom: 4px;
}

.offer-panel__role {
    display: block;
    font-size: var(--fontsize-16);
    line-height: 22px;
    color: var(--grey-90);
}

@media (min-width: 768px) {
    .offer-panels__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: stretch;
    }

    .offer-panel {
        min-height: 535px;
        padding: 32px 28px;
        border-bottom: 1px solid var(--color-border);
        border-right: 1px solid var(--color-border);
    }

    .offer-panel--interactive {
        padding: 0;
    }

    .offer-panel--interactive .offer-panel__inner {
        padding: 32px 28px;
    }

    .offer-panel:nth-child(2n) {
        border-right: none;
    }

    .offer-panel:nth-last-child(-n+2) {
        border-bottom: none;
    }

    .offer-panel__index,
    .offer-panel__label {
        /* margin-bottom: 8px; */
    }

    .offer-panel__label {
        margin-bottom: 0;
    }

    .offer-panel__body {
        max-width: 289px;
    }

    .offer-panel__quote {
        max-width: 289px;
    }
}

@media (min-width: 992px) {
    .offer-panel {
        padding: 32px 24px;
    }

    .offer-panel--interactive {
        padding: 0;
    }

    .offer-panel--interactive .offer-panel__inner {
        padding: 32px 24px;
    }
}

@media (min-width: 1024px) {
    .offer-panels__grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .offer-panels__grid--offers-1 .offer-panel--testimonial {
        grid-column: span 3;
    }

    .offer-panels__grid--offers-2 .offer-panel--testimonial {
        grid-column: span 2;
    }

    .offer-panels__grid--offers-1 .offer-panel--testimonial .offer-panel__quote,
    .offer-panels__grid--offers-2 .offer-panel--testimonial .offer-panel__quote {
        max-width: 100%;
    }

    .offer-panel {
        border-bottom: none;
        border-right: 1px solid var(--color-border);
    }

    .offer-panel:nth-child(2n) {
        border-right: 1px solid var(--color-border);
    }

    .offer-panel:nth-last-child(-n+2) {
        border-bottom: none;
    }

    .offer-panel:last-child {
        border-right: none;
    }
}

@media (min-width: 1024px) {
    .offer-panels--related .offer-panels__grid--related {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .offer-panels--related .offer-panel--intro {
        border-bottom: none;
        border-right: 1px solid var(--color-border);
    }
}

@media (min-width: 1200px) {
    #primary-content > .hero-banner .hero-banner__title {
        font-size: var(--fontsize-64);
        line-height: 72px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .offer-panel--hover::before,
    .offer-panel__action .text-link__icon {
        -webkit-transition: none;
        -ms-transition: none;
        -o-transition: none;
        -moz-transition: none;
        transition: none;
    }
}

/*======= What We Offer Page end =======*/


/*======= Sustainable Performance Page start =======*/

.sp-sticky-block.sustainable-performance {
    --sp-sticky-gap: 60px;
    --sp-color-callout-light: #E5FCE1;
    --sp-color-callout-dark: #265C1F;
    overflow: visible;
}

.site-main:has(.sp-sticky-block.sustainable-performance),
.site-main:has(.sp-sticky-block.sustainable-performance) .container,
.site-main:has(.sp-sticky-block.sustainable-performance) .sp-sticky-block__body,
.site-main:has(.sp-sticky-block.sustainable-performance) .sp-sticky-block__inner {
    overflow: visible;
}

/*-- Hero Banner --*/

.sp-hero {
    align-items: flex-end;
    min-height: 420px;
    padding-top: calc(var(--site-header-height) + 236px);
    padding-bottom: 48px;
}

.sp-hero .hero-banner__content {
    padding: 0;
    width: 100%;
}

.sp-hero .hero-banner__title {
    margin-bottom: 0;
    font-size: 44px;
    line-height: 50px;
    color: var(--color-white);
}

@media (min-width: 768px) {
    .sp-hero {
        min-height: 520px;
    }
}

@media (min-width: 992px) {
    .sp-hero {
        min-height: 640px;
        padding-top: calc(var(--site-header-height) + 236px);
    }
}

@media (min-width: 1200px) {
    .sp-hero .hero-banner__title {
        font-size: var(--fontsize-64);
        line-height: 72px;
    }
}

/*-- Media sections --*/

.sp-media {
    padding: 80px 0 0;
    background: var(--color-white);
}

.sp-media__img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1320 / 500;
    object-fit: cover;
}

/*-- Sticky scroll blocks --*/

.sp-sticky-block {
    background: var(--color-white);
    padding: 60px 0 88px;
    overflow: visible;
}

.sp-sticky-block__body {
    overflow: visible;
}

.sp-sticky-block__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 48px;
    overflow: visible;
    align-items: stretch;
}

.sp-sticky-block__sidebar {
    min-width: 0;
    align-self: stretch;
    position: relative;
}

.sp-sticky-block__sidebar-inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 64px;
    width: 100%;
}

.sp-sticky-block__nav-group {
    display: flex;
    flex-direction: column;
    gap: 64px;
    width: 100%;
}

.sp-sticky-block__title {
    margin: 0;
    font-size: 36px;
    line-height: 40px;
    /* font-weight: 500; */
    color: var(--grey-90);
}

@media (min-width: 768px) {
    .sp-sticky-block__title {
        font-size: 40px;
        line-height: 48px;
    }
}

.sp-sticky-block__nav {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
}

.sp-sticky-block__nav h3 {
    display: contents;
    margin: 0;
    padding: 0;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    color: inherit;
}

.sp-sticky-block__nav-link {
    display: block;
    font-size: 26px;
    line-height: 34px;
    font-weight: 500;
    color: var(--grey-60);
    text-decoration: none;
    transition: color 0.35s ease, opacity 0.35s ease;
}

.sp-sticky-block__nav-link:focus{
    color: var(--grey-60);
}

.sp-sticky-block__nav-link:hover {
    color: var(--grey-90);
}

.sp-sticky-block__nav-link.is-active {
    color: var(--grey-90);
}

.sp-sticky-block__skip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 500;
    color: var(--grey-90);
    text-decoration: none;
}

.sp-sticky-block__skip-icon {
    flex-shrink: 0;
    -webkit-transition: transform 0.35s ease-in-out;
    -ms-transition: transform 0.35s ease-in-out;
    -o-transition: transform 0.35s ease-in-out;
    -moz-transition: transform 0.35s ease-in-out;
    transition: transform 0.35s ease-in-out;
}

.sp-sticky-block__skip:hover .sp-sticky-block__skip-icon {
    transform: translateY(4px) scale(1.1);
}

.sp-sticky-block__content {
    display: flex;
    flex-direction: column;
    gap: 80px;
    min-width: 0;
}

.sp-sticky-block__section {
    min-width: 0;
}

.sp-sticky-block__section-heading {
    display: none;
    margin: 0 0 24px;
    font-size: 26px;
    line-height: 34px;
    font-weight: 400;
    color: var(--grey-90);
}

.sp-sticky-block__body-text {
    font-size: var(--fontsize-16);
    line-height: 24px;
    color: var(--grey-90);
}

.sp-sticky-block__block + .sp-sticky-block__block {
    margin-top: 64px;
}

#sp-people-first-nations .sp-sticky-block__block + .sp-sticky-block__block,
#sp-people-community .sp-sticky-block__block + .sp-sticky-block__block {
    margin-top: 56px;
}

.sp-sticky-block__block > :first-child {
    margin-top: 0;
}

.sp-sticky-block__block > :last-child {
    margin-bottom: 0;
}

#sp-people-workplace .sp-sticky-block__body-text > p:first-child {
    font-size: var(--fontsize-16);
    line-height: 24px;
}

@media (min-width: 992px) {
    #sp-people-workplace .sp-sticky-block__body-text > p:first-child {
        font-size: var(--fontsize-18);
        line-height: 26px;
    }
}

.sp-sticky-block__block p + p,
.sp-sticky-block__block ul + p,
.sp-sticky-block__block p + ul,
.sp-sticky-block__body-text > p + p,
.sp-sticky-block__body-text > ul + p,
.sp-sticky-block__body-text > p + ul {
    margin-top: 24px;
}

.sp-sticky-block__body-text ul,
.sp-sticky-block__list {
    padding-left: 24px;
    list-style-type: square;
}

.sp-sticky-block__body-text ul li + li,
.sp-sticky-block__list li + li {
    margin-top: 8px;
}

.sp-sticky-block__body-text strong,
.sp-sticky-block__list strong {
    font-weight: 500;
}

.sp-callout {
    margin-top: 32px;
    padding: 40px;
}

.sp-callout p + p,
.sp-callout ul + p,
.sp-callout p + ul {
    margin-top: 16px;
}

.sp-callout ul {
    padding-left: 24px;
    list-style-type: square;
}

.sp-callout ul li + li {
    margin-top: 8px;
}

.sp-callout--light,
.sp-callout--dark {
    background: var(--sp-color-callout-light);
    color: var(--sp-color-callout-dark);
}

.sp-callout strong {
    font-weight: 500;
}

.sp-org-list {
    list-style: none;
    padding: 0;
    padding-left: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 56px;
}

.sp-sticky-block__body-text .sp-org-list {
    padding-left: 0;
    list-style: none;
}

.sp-org-list__item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
    min-height: 0;
    padding: 0;
}

.sp-org-list__logo {
    display: block;
    width: auto;
    max-width: 130px;
    height: auto;
    object-fit: contain;
}

.sp-org-list__divider {
    display: none;
}

.sp-org-list__item p {
    margin: 0;
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 400;
    color: var(--grey-90);
}

.sp-sticky-block__body-text .sp-org-list li + li {
    margin-top: 0;
}

.sp-logo-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0;
    padding: 0;
}

.sp-logo-row--trace {
    gap: 16px 24px;
}

.sp-logo-row--trace .sp-logo-row__badge {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 102px;
    object-fit: contain;
}

.sp-logo-row--partners {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 88px;
    row-gap: 32px;
    align-items: center;
    justify-items: center;
}

.sp-logo-row--partners .sp-logo-row__logo {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 72px;
    object-fit: contain;
}

@media (min-width: 768px) {
    .sp-org-list__item {
        display: grid;
        grid-template-columns: 130px 1px minmax(0, 1fr);
        gap: 32px;
        align-items: center;
        min-height: 56px;
    }

    .sp-org-list__logo {
        width: 100%;
    }

    .sp-org-list__divider {
        display: block;
        align-self: stretch;
        width: 1px;
        background: var(--color-border);
    }
}

@media (min-width: 992px) {
    .sp-logo-row--partners {
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        align-items: center;
        gap: 24px 32px;
    }

    .sp-logo-row--partners .sp-logo-row__logo {
        max-width: 130px;
        max-height: 72px;
        flex: 0 1 auto;
    }
}

/*-- Designing impact --*/

.sp-designing-impact__header {
    max-width: 866px;
    margin: 0 auto 80px;
    text-align: center;
}

.sp-designing-impact__heading {
    margin: 0 0 24px;
    font-weight: 400;
    color: var(--grey-90);
}

.sp-designing-impact__heading strong {
    font-weight: 500;
}

.sp-designing-impact__header p {
    margin: 0 auto;
    font-size: var(--fontsize-18);
    line-height: 26px;
    font-weight: 400;
    color: var(--grey-90);
}

.sp-designing-impact__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 40px;
}

.sp-designing-impact__grid .c-col {
    flex: none;
    max-width: none;
    width: auto;
    min-width: 0;
}

.sp-designing-impact__card {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.sp-designing-impact__media {
    overflow: hidden;
    margin-bottom: 24px;
    height: 360px;
    line-height: 0;
}

.sp-designing-impact__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -webkit-transition: transform 0.45s ease-in-out;
    -ms-transition: transform 0.45s ease-in-out;
    -o-transition: transform 0.45s ease-in-out;
    -moz-transition: transform 0.45s ease-in-out;
    transition: transform 0.45s ease-in-out;
}

.sp-designing-impact__card:hover .sp-designing-impact__image {
    transform: scale(1.06);
}

@media (min-width: 768px) {
    .sp-designing-impact__media {
        height: 413px;
    }
}

.sp-designing-impact__card-title {
    margin: 0 0 8px;
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 500;
    color: var(--color-black);
}

.sp-designing-impact__card-subtitle {
    margin: 0;
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 400;
    color: var(--color-black);
}

@media (max-width: 991.98px) {
    .intro-block .intro-block__heading {
        font-weight: 400;
        color: var(--grey-90);
    }

    .intro-block .intro-block__body,
    .intro-block .intro-block__body p {
        font-size: var(--fontsize-18);
        line-height: 26px;
        color: var(--grey-90);
    }

    .intro-block .mp-accordion__title {
        font-size: var(--fontsize-18);
        line-height: 26px;
        font-weight: 500;
        color: var(--grey-90);
    }

    .intro-block .mp-accordion__content,
    .intro-block .mp-accordion__content p {
        font-size: var(--fontsize-16);
        line-height: 24px;
        font-weight: 400;
        color: var(--grey-90);
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__title {
        /* font-weight: 500; */
        color: var(--grey-90);
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__section-heading {
        font-size: 26px;
        line-height: 34px;
        font-weight: 400;
        color: var(--grey-90);
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__body-text,
    .sp-sticky-block.sustainable-performance .sp-sticky-block__body-text p,
    .sp-sticky-block.sustainable-performance .sp-sticky-block__body-text li {
        font-size: var(--fontsize-16);
        line-height: 24px;
        font-weight: 400;
        color: var(--grey-90);
    }

    .sp-sticky-block.sustainable-performance .sp-org-list__item p {
        color: var(--grey-90);
    }

    .sp-sticky-block.sustainable-performance .sp-callout,
    .sp-sticky-block.sustainable-performance .sp-callout p,
    .sp-sticky-block.sustainable-performance .sp-callout li {
        font-size: var(--fontsize-16);
        line-height: 24px;
        font-weight: 400;
        color: var(--sp-color-callout-dark);
    }

    .sp-sticky-block.sustainable-performance .sp-callout strong {
        font-weight: 500;
        color: var(--sp-color-callout-dark);
    }

    .intro-block .intro-block__row {
        gap: 48px;
    }

    .intro-block .intro-block__accordion {
        margin-top: 56px;
    }

    .sp-media {
        padding-top: 0px;
        padding-bottom: 0;
    }

    .intro-block + .sp-media {
        padding-top: 88px;
    }

    .sp-media__img {
        aspect-ratio: 360 / 220;
    }

    .sp-media + .sp-sticky-block.sustainable-performance {
        padding-top: 32px;
    }

    .sp-sticky-block.sustainable-performance {
        /* padding-top: 0; */
        /* padding-bottom: 0; */
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__inner {
        gap: 56px;
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__nav,
    .sp-sticky-block.sustainable-performance .sp-sticky-block__skip {
        display: none;
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__nav-group,
    .sp-sticky-block.sustainable-performance .sp-sticky-block__sidebar-inner {
        gap: 0;
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__section-heading {
        display: block;
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__content {
        gap: 80px;
        padding-top: 0;
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__block + .sp-sticky-block__block {
        margin-top: 56px;
    }

    .sp-sticky-block.sustainable-performance .sp-org-list__item {
        gap: 20px;
    }

    .sp-sticky-block.sustainable-performance .sp-callout {
        padding: 32px 16px;
    }

    .sp-designing-impact__heading strong {
        font-weight: 500;
        color: var(--grey-90);
    }

    .sp-designing-impact__header p {
        font-size: var(--fontsize-18);
        line-height: 26px;
        color: var(--grey-90);
    }

    .sp-designing-impact__card-title {
        font-size: var(--fontsize-20);
        line-height: 24px;
        font-weight: 500;
        color: var(--grey-90);
    }

    .sp-designing-impact__card-subtitle {
        font-size: var(--fontsize-16);
        line-height: 24px;
        font-weight: 400;
        color: var(--grey-90);
    }

    .sp-designing-impact__header {
        margin-bottom: 64px;
    }

    .sp-designing-impact__grid {
        gap: 56px;
    }
}

@media (min-width: 768px) {
    .sp-designing-impact__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sp-sticky-block__nav-link {
        font-size: 32px;
        line-height: 40px;
    }
}

@media (min-width: 992px) {
    .sp-media {
        padding: 60px 0 0;
    }

    .intro-block + .sp-media {
        padding-top: 60px;
    }

    .sp-sticky-block.sustainable-performance {
        padding: 60px 0 60px;
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__inner {
        display: grid;
        grid-template-columns: minmax(0, 451fr) minmax(0, 549fr);
        justify-content: space-between;
        gap: clamp(24px, 3vw, 60px);
        align-items: stretch;
        overflow: visible;
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__sidebar {
        width: auto;
        max-width: 527px;
        min-width: 0;
        align-self: start;
        height: calc(100vh - var(--site-header-height, 80px));
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding-top: 0;
        box-sizing: border-box;
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__content {
        width: auto;
        max-width: 641px;
        min-width: 0;
        gap: 40px;
        padding-top: 0;
        padding-bottom: 0;
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__section {
        display: flex;
        flex-direction: column;
        /* centre the body text like the sidebar, then let the page scroll on */
        justify-content: center;
        min-height: calc(100vh - var(--site-header-height, 80px));
        box-sizing: border-box;
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__section:first-child {
        justify-content: flex-start;
        padding-top: calc((100vh - var(--site-header-height, 80px)) / 2);
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__section:last-child {
        min-height: calc(100vh - var(--site-header-height, 80px));
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__sidebar-inner {
        position: relative;
        top: auto;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        align-self: flex-start;
        z-index: 2;
    }

    .sp-sticky-block__nav-link {
        font-size: 32px;
        line-height: 40px;
    }

    .sp-sticky-block.rothfield-difference {
        padding: 120px 0;
    }

    .sp-sticky-block.rothfield-difference .sp-sticky-block__inner {
        display: grid;
        grid-template-columns: minmax(0, 451fr) minmax(0, 549fr);
        justify-content: space-between;
        gap: clamp(24px, 3vw, 60px);
        align-items: stretch;
        overflow: visible;
    }

    .sp-sticky-block.rothfield-difference .sp-sticky-block__sidebar {
        width: auto;
        max-width: 527px;
        min-width: 0;
        align-self: stretch;
    }

    .sp-sticky-block.rothfield-difference .sp-sticky-block__content {
        width: auto;
        max-width: 641px;
        min-width: 0;
        gap: 280px;
        padding-bottom: 0;
    }

    .sp-sticky-block.rothfield-difference .sp-sticky-block__sidebar-inner {
        position: -webkit-sticky;
        position: sticky;
        top: calc(var(--site-header-height, 80px) + var(--sp-sticky-gap, 60px));
        align-self: flex-start;
        z-index: 2;
    }

    .sp-designing-impact__grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (min-width: 1200px) {
    .sp-sticky-block.sustainable-performance .sp-sticky-block__inner,
    .sp-sticky-block.rothfield-difference .sp-sticky-block__inner {
        grid-template-columns: 527px 641px;
        gap: 0;
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__sidebar,
    .sp-sticky-block.rothfield-difference .sp-sticky-block__sidebar {
        width: 527px;
        max-width: 527px;
    }

    .sp-sticky-block.sustainable-performance .sp-sticky-block__content,
    .sp-sticky-block.rothfield-difference .sp-sticky-block__content {
        width: 641px;
        max-width: 641px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sp-sticky-block__nav-link {
        transition: none;
    }
}

/*======= Sustainable Performance Page end =======*/


/*======= Get in Touch Page start =======*/

.git-contact {
    background: var(--color-white);
    padding-top: calc(var(--site-header-height) + 282px);
    /* padding-bottom: 80px; */
}

.git-contact__row {
    align-items: flex-start;
    gap: 80px;
}

.git-contact__intro,
.git-contact__form-col {
    width: 100%;
    min-width: 0;
}

.git-contact__title {
    margin-bottom: 24px;
    color: var(--grey-90);
}

.git-contact__intro-body {
    font-size: var(--fontsize-18);
    line-height: 26px;
    color: var(--grey-90);
}

.git-contact__intro-body p {
    margin-bottom: 0;
}

/*-- Get in Touch Form (CF7) --*/

.git-contact-form .wpcf7-form {
    margin: 0;
}

.git-contact-form .wpcf7-form br {
    display: none;
}

.git-contact-form .wpcf7-form > p {
    margin: 0 0 80px;
}

.git-contact-form .wpcf7-form > .git-contact-form__row {
    margin: 0 0 80px;
}

.git-contact-form label {
    display: block;
    margin-bottom: 4px;
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 400;
    color: var(--grey-90);
    font-weight: 500;
}

.git-contact-form .wpcf7-form > p:has(.wpcf7-select) label {
    margin-bottom: 12px;
}

.git-contact-form .wpcf7-form-control-wrap {
    display: block;
}

.git-contact-form .wpcf7-form-control.wpcf7-text,
.git-contact-form .wpcf7-form-control.wpcf7-email,
.git-contact-form .wpcf7-form-control.wpcf7-tel,
.git-contact-form .wpcf7-form-control.wpcf7-select,
.git-contact-form .wpcf7-form-control.wpcf7-textarea {
    display: block;
    width: 100%;
}

.git-contact-form input.wpcf7-text,
.git-contact-form input.wpcf7-email,
.git-contact-form input.wpcf7-tel,
.git-contact-form select.wpcf7-select,
.git-contact-form textarea.wpcf7-textarea {
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 400;
    color: var(--grey-90);
    background: transparent;
    border: none;
    border-bottom: 1px solid var(--grey-40);
    border-radius: 0;
    padding: 0 0 8px;
    outline: none;
    -webkit-transition: border-color 0.3s ease-in-out;
    -ms-transition: border-color 0.3s ease-in-out;
    -o-transition: border-color 0.3s ease-in-out;
    -moz-transition: border-color 0.3s ease-in-out;
    transition: border-color 0.3s ease-in-out;
}

.git-contact-form input.wpcf7-text:focus,
.git-contact-form input.wpcf7-email:focus,
.git-contact-form input.wpcf7-tel:focus,
.git-contact-form select.wpcf7-select:focus,
.git-contact-form textarea.wpcf7-textarea:focus {
    border-bottom-color: var(--grey-90);
}

.git-contact-form select.wpcf7-select {
    cursor: pointer;
    color: var(--grey-80);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%231A1A1A' stroke-width='1.5'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0 center;
    padding-right: 24px;
}

.git-contact-form select.wpcf7-select:focus,
.git-contact-form select.wpcf7-select:valid {
    color: var(--grey-90);
}

.git-contact-form textarea.wpcf7-textarea {
    min-height: 120px;
    resize: none;
    padding-bottom: 8px;
}

.git-contact-form__hint {
    display: block;
    margin-top: 8px;
    font-size: var(--fontsize-12);
    line-height: 20px;
    color: var(--grey-80);
}

.git-contact-form__row--2 {
    display: flex;
    flex-direction: column;
    gap: 80px;
}

.git-contact-form__row--2 > p {
    margin-bottom: 0;
}

.git-contact-form__acceptance {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 12px !important;
    font-size: var(--fontsize-16);
    line-height: 24px;
    color: var(--grey-90);
    font-weight: 500;
}

.git-contact-form__acceptance .wpcf7-form-control-wrap,
.git-contact-form__acceptance .wpcf7-form-control.wpcf7-acceptance,
.git-contact-form__acceptance .wpcf7-list-item {
    display: inline-flex;
    width: auto;
    margin: 0;
}

.git-contact-form__acceptance label {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 0;
    cursor: pointer;
}

.git-contact-form__acceptance input[type="checkbox"] {
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    margin: 4px 0 0;
    accent-color: var(--grey-90);
}

.git-contact-form__acceptance .wpcf7-list-item {
    margin: 0;
}

.git-contact-form__acceptance .wpcf7-list-item-label {
    font-size: var(--fontsize-16);
    line-height: 24px;
    color: var(--grey-90);
}

.git-contact-form__privacy {
    margin-bottom: 80px;
}

.git-contact-form__privacy p {
    margin: 0;
    font-size: var(--fontsize-16);
    line-height: 24px;
    color: var(--grey-90);
}

.git-contact-form__privacy a {
    color: var(--grey-90);
    text-decoration: underline;
    text-underline-offset: 2px;
    font-weight: 500;
}

.git-contact-form__privacy a:hover {
    color: var(--color-black);
}

.git-contact-form__submit {
    margin-bottom: 0 !important;
}

.git-contact-form__submit-btn {
    display: inline-flex;
    width: auto;
    max-width: none;
    min-width: 0;
    padding-right: 44px;
    background-color: transparent;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M10.9125 5.83875L11.4412 6.3675L11.97 6.89625L7.19625 11.67L6.135 10.6088L10.1588 6.585H0V5.085H10.1588L6.135 1.06125L7.19625 0L11.97 4.77375L10.9088 5.835L10.9125 5.83875Z' fill='%231A1A1A'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 20px center;
    -webkit-transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out, border-color 0.3s ease-in-out;
    -ms-transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out, border-color 0.3s ease-in-out;
    -o-transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out, border-color 0.3s ease-in-out;
    -moz-transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out, border-color 0.3s ease-in-out;
    transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out, border-color 0.3s ease-in-out;
}

.git-contact-form__submit-btn:hover,
.btn.git-contact-form__submit-btn:hover {
    background-color: var(--color-black);
    color: var(--color-white);
    border-color: var(--color-black);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M10.9125 5.83875L11.4412 6.3675L11.97 6.89625L7.19625 11.67L6.135 10.6088L10.1588 6.585H0V5.085H10.1588L6.135 1.06125L7.19625 0L11.97 4.77375L10.9088 5.835L10.9125 5.83875Z' fill='%23ffffff'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 20px center;
}

.git-contact-form .wpcf7-not-valid-tip {
    margin-top: 8px;
    font-size: var(--fontsize-12);
    line-height: 20px;
    color: red;
}

.git-contact-form .wpcf7-response-output {
    margin: 24px 0 0;
    padding: 0;
    border: none;
    font-size: var(--fontsize-16);
    line-height: 24px;
    color: var(--grey-90);
}

.git-contact-form .wpcf7-form-control-wrap .wpcf7-not-valid-tip:first-of-type {
    display: block !important;
}
.git-contact-form .wpcf7-form-control-wrap .wpcf7-not-valid-tip:not(:first-child) {
    display: none;
}

@media (min-width: 768px) {
    .git-contact-form__row--2 {
        flex-direction: row;
        gap: 40px;
    }

    .git-contact-form__row--2 > p {
        flex: 1 1 0;
        min-width: 0;
    }
}

@media (min-width: 992px) {
    .git-contact {
        padding-top: calc(var(--site-header-height) + 200px);
    }

    .git-contact__row {
        gap: 100px;
    }

    .git-contact__intro,
    .git-contact__form-col {
        flex: 0 0 calc(50% - 50px);
        max-width: calc(50% - 50px);
    }

    .git-contact-form .wpcf7-form > p,
    .git-contact-form .wpcf7-form > .git-contact-form__row {
        margin-bottom: 56px;
    }

    .git-contact-form__row--2 {
        gap: 40px;
    }

    .git-contact-form__privacy {
        margin-bottom: 56px;
    }
}

@media (min-width: 1200px) {
    .git-contact {
        /* padding-bottom: 120px; */
    }

    .git-contact__title,
    .git-contact__intro-body {
        max-width: 527px;
    }

    .git-contact-form {
        max-width: 640px;
    }
}

/*======= Get in Touch Page end =======*/

/*======= Amplified Ambition Page start =======*/

.page-amplified-ambition .aa-hero {
    align-items: flex-end;
    min-height: auto;
    padding-top: calc(var(--site-header-height) + 236px);
    padding-bottom: 56px;
}

.page-amplified-ambition .aa-hero .hero-banner__content {
    padding: 0;
    width: 100%;
}

.page-amplified-ambition .aa-hero .hero-banner__title {
    margin-bottom: 0;
    font-size: 44px;
    line-height: 50px;
    color: var(--grey-90);
}

.aa-listing {
    background: var(--color-white);
    color: var(--color-black);
}

.aa-listing__toolbar {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-bottom: 24px;
}

.aa-listing__sort-wrap {
    flex: 0 0 auto;
}

.aa-grid__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 48px;
}

.aa-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.aa-card__media {
    overflow: hidden;
    margin-bottom: 24px;
    aspect-ratio: 413 / 412;
    line-height: 0;
}

.aa-card__image {
    display: block;
    width: 100%;
    height: 100%;
    aspect-ratio: 413 / 412;
    object-fit: cover;
    -webkit-transition: transform 0.45s ease-in-out;
    -ms-transition: transform 0.45s ease-in-out;
    -o-transition: transform 0.45s ease-in-out;
    -moz-transition: transform 0.45s ease-in-out;
    transition: transform 0.45s ease-in-out;
}

.aa-card:hover .aa-card__image {
    transform: scale(1.06);
}

.aa-card__content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: space-between;
    gap: 64px;
    min-height: 0;
}

.aa-card__text {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.aa-card__heading {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.aa-card__overline {
    display: none;
    margin-bottom: 0;
}

.aa-card__title {
    font-size: 20px;
    line-height: 28px;
    font-weight: 500;
    color: var(--grey-90);
    margin-bottom: 0;
}

.aa-card__body {
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 400;
    color: var(--grey-90);
}

.aa-card__body p {
    margin-bottom: 0;
}

.aa-card__meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.aa-card__speaker,
.aa-card__details {
    margin-bottom: 0;
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 400;
    color: var(--grey-90);
}

@media (max-width: 767.98px) {
    .page-amplified-ambition .aa-hero {
        padding-top: calc(var(--site-header-height) + 236px);
        padding-bottom: 48px;
    }

    .page-amplified-ambition .aa-hero .hero-banner__title {
        font-size: 44px;
        line-height: 50px;
    }

    .page-amplified-ambition .aa-intro .intro-block__row {
        gap: 56px;
    }

    .aa-listing__toolbar {
        margin-bottom: 32px;
    }

    .aa-listing__sort-wrap {
        position: relative;
        width: 100%;
        border-bottom: 1px solid var(--grey-80);
    }

    .aa-listing .case-studies-sort {
        position: relative;
        width: 100%;
    }

    .aa-listing .case-studies-sort.is-open {
        z-index: 31;
    }

    .aa-listing .case-studies-sort__toggle {
        width: 100%;
        justify-content: space-between;
        padding: 0 0 8px;
    }

    .aa-listing .case-studies-sort.is-open .case-studies-sort__toggle {
        border-bottom: 1px solid var(--grey-80);
    }

    .aa-listing .case-studies-sort.is-open .aa-listing__sort-wrap {
        border-bottom: none;
    }

    .aa-listing .case-studies-sort__panel {
        left: 0;
        right: 0;
        top: 100%;
        min-width: 0;
        border: 1px solid var(--color-border);
        border-top: none;
    }

    .aa-listing .case-studies-sort.is-open .case-studies-sort__option {
        padding: 15px 16px;
    }

    .aa-grid__inner {
        gap: 56px;
    }

    .aa-card__media,
    .aa-card__image {
        aspect-ratio: 1 / 1;
    }

    .aa-card__text {
        gap: 16px;
    }

    .aa-card__overline {
        display: block;
    }

    .aa-card__content {
        gap: 64px;
    }
}

@media (min-width: 768px) {
    .aa-grid__inner {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 60px 24px;
    }
}

@media (min-width: 992px) {
    .page-amplified-ambition .aa-hero {
        padding-top: calc(var(--site-header-height) + 236px);
        padding-bottom: 80px;
    }
}

@media (min-width: 1024px) {
    .aa-grid__inner {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 80px 40px;
    }
}

@media (min-width: 1200px) {
    .page-amplified-ambition .aa-hero .hero-banner__title {
        font-size: var(--fontsize-64);
        line-height: 72px;
    }
}

/*======= Amplified Ambition Page end =======*/


/*======= Rothfield Difference Page start =======*/

.sp-sticky-block.rothfield-difference {
    --sp-sticky-gap: 60px;
    overflow: visible;
}

.site-main:has(.sp-sticky-block.rothfield-difference),
.site-main:has(.sp-sticky-block.rothfield-difference) .container,
.site-main:has(.sp-sticky-block.rothfield-difference) .sp-sticky-block__body,
.site-main:has(.sp-sticky-block.rothfield-difference) .sp-sticky-block__inner {
    overflow: visible;
}

.rd-hero {
    align-items: flex-end;
    min-height: 420px;
    padding-top: calc(var(--site-header-height) + 236px);
    padding-bottom: 48px;
}

.rd-hero .hero-banner__content {
    padding: 0;
    width: 100%;
}

.rd-hero .hero-banner__title {
    margin-bottom: 0;
    font-size: 44px;
    line-height: 50px;
    color: var(--color-white);
}

.rd-sticky-block__media {
    margin-bottom: 32px;
}

@media (min-width: 768px) {
    .rd-sticky-block__media {
        margin-bottom: 56px;
    }
}

.rd-sticky-block__img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 641 / 400;
    object-fit: cover;
}

.sp-sticky-block.rothfield-difference .sp-sticky-block__title {
    font-weight: 400;
}

.sp-sticky-block.rothfield-difference .sp-sticky-block__title strong {
    font-weight: 500;
}

.sp-sticky-block.rothfield-difference .sp-sticky-block__section-heading {
    display: none;
    margin: 0 0 24px;
    font-size: 32px;
    line-height: 40px;
    font-weight: 500;
    color: var(--grey-90);
}

@media (min-width: 768px) {
    .rd-hero {
        min-height: 520px;
    }
}

@media (min-width: 992px) {
    .rd-hero {
        min-height: 640px;
        padding-top: calc(var(--site-header-height) + 236px);
    }
}

@media (min-width: 1200px) {
    .rd-hero .hero-banner__title {
        font-size: var(--fontsize-64);
        line-height: 72px;
    }
}

@media (max-width: 991.98px) {
    .sp-sticky-block.rothfield-difference {
        padding-top: 80px;
        padding-bottom: 80px;
    }

    .sp-sticky-block.rothfield-difference .sp-sticky-block__nav,
    .sp-sticky-block.rothfield-difference .sp-sticky-block__skip {
        display: none;
    }

    .sp-sticky-block.rothfield-difference .sp-sticky-block__nav-group,
    .sp-sticky-block.rothfield-difference .sp-sticky-block__sidebar-inner {
        gap: 0;
    }

    .sp-sticky-block.rothfield-difference .sp-sticky-block__title {
        margin-bottom: 56px;
    }

    .sp-sticky-block.rothfield-difference .sp-sticky-block__inner {
        gap: 0;
    }

    .sp-sticky-block.rothfield-difference .sp-sticky-block__content {
        gap: 80px;
    }

    .sp-sticky-block.rothfield-difference .sp-sticky-block__section-heading {
        display: block;
        font-size: 26px;
        line-height: 34px;
        margin-top: 0;
        margin-bottom: 24px;
    }

    .sp-sticky-block.rothfield-difference .rd-sticky-block__img {
        aspect-ratio: 360 / 220;
    }

    .sp-sticky-block.rothfield-difference .sp-sticky-block__body-text,
    .sp-sticky-block.rothfield-difference .sp-sticky-block__body-text p {
        font-size: var(--fontsize-16);
        line-height: 24px;
    }
}

/*======= Rothfield Difference Page end =======*/


/*======= Rothfield Story Page start =======*/

.rs-scroll-block {
    border: 0;
    background: var(--color-white);
    padding-top: 80px;
    overflow: visible;
}

.site-main:has(.rs-scroll-block),
.site-main:has(.rs-scroll-block) .container,
.site-main:has(.rs-scroll-block) .scroll-block__inner {
    overflow: visible;
}

.rs-hero {
    align-items: flex-end;
    min-height: 420px;
    padding-top: calc(var(--site-header-height) + 236px);
    padding-bottom: 48px;
}

.rs-hero .hero-banner__content {
    padding: 0;
    width: 100%;
}

.rs-hero .hero-banner__title {
    margin-bottom: 0;
    font-size: 44px;
    line-height: 50px;
    color: var(--color-white);
}

.rs-intro {
    background: var(--grey-10);
}

.rs-scroll-block .rs-how-it-began__header {
    max-width: 866px;
    margin: 0 auto 80px;
    text-align: left;
}

@media (min-width: 768px) {
    .rs-scroll-block .rs-how-it-began__header {
        text-align: center;
    }
}

.rs-scroll-block .rs-how-it-began__heading {
    margin: 0 0 16px;
}

.rs-scroll-block .rs-how-it-began__heading strong {
    font-weight: 500;
}

.rs-scroll-block .rs-how-it-began__header p {
    margin: 0;
    font-size: 18px;
    line-height: 26px;
    color: var(--grey-90);
}

.rs-scroll-block .scroll-block__item-heading {
    font-weight: 400;
}

.rs-scroll-block .scroll-block__item-heading strong {
    font-weight: 500;
}

@media (min-width: 768px) {
    .rs-hero {
        min-height: 520px;
    }
}

@media (min-width: 992px) {
    .rs-hero {
        min-height: 640px;
        padding-top: calc(var(--site-header-height) + 236px);
    }

    .rs-scroll-block {
        padding-top: 120px;
        padding-bottom: 80px;
    }

    .rs-scroll-block .scroll-block__media {
        height: calc(100vh - var(--site-header-height, 80px));
        padding: 60px 60px 60px 0;
        display: flex;
        align-items: center;
        box-sizing: border-box;
    }

    .rs-scroll-block .scroll-block__media-inner {
        width: 100%;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .rs-scroll-block .scroll-block__media-stack {
        width: min(100%, calc((100vh - var(--site-header-height, 80px) - 120px) * 600 / 560));
        max-width: 100%;
        height: auto;
        max-height: 100%;
        aspect-ratio: 600 / 560;
    }

    .rs-scroll-block .scroll-block__content {
        padding: 0;
        gap: 0;
    }

    .rs-scroll-block .scroll-block__item {
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-height: calc(100vh - var(--site-header-height, 80px));
        box-sizing: border-box;
    }

    .rs-scroll-block .scroll-block__item-heading {
        font-size: var(--fontsize-32);
        line-height: 40px;
    }
}

@media (min-width: 1200px) {
    .rs-hero .hero-banner__title {
        font-size: var(--fontsize-64);
        line-height: 72px;
    }
}

@media (max-width: 991.98px) {
    .rs-scroll-block .scroll-block__content {
        padding: 0 0 64px;
    }

    .rs-scroll-block .scroll-block__item-media {
        margin-bottom: 32px;
    }

    .rs-scroll-block .scroll-block__item:not(:last-child) {
        padding-bottom: 64px;
        margin-bottom: 64px;
    }

    .rs-scroll-block .scroll-block__item-heading {
        font-size: 26px;
        line-height: 34px;
    }
}

/*======= Rothfield Story Page end =======*/


/* ========404 page css start======== */
.error-404-content{
    text-align: center;
    max-width: 400px;
    margin: 0 auto;
    gap: 17px;
    display: flex;
    flex-direction: column;
    background: var(--grey-10);
    padding: 40px;
    border-radius: 10px
}

.error-404{
    padding: 110px 0;
    min-height: 100vh;
    align-items: center;
    display: flex;

}

.error-404 .error-404-content a.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: center;
    gap: 10px;
    padding: 10px 12px 10px 20px;
    font-size: var(--fontsize-16);
    font-weight: 500;
    line-height: 24px;
    border-radius: 25px;
    border: 1px solid var(--grey-90);
    background: transparent;
    color: var(--color-black);
    text-decoration: none;
    cursor: pointer;
    -webkit-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.error-404 .error-404-content a.button svg {
    display: none;
}

.error-404 .error-404-content a.button::after {
    content: "";
    display: block;
    width: 24px;
    height: 12px;
    flex-shrink: 0;
    background-color: currentColor;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M10.9125 5.83875L11.4412 6.3675L11.97 6.89625L7.19625 11.67L6.135 10.6088L10.1588 6.585H0V5.085H10.1588L6.135 1.06125L7.19625 0L11.97 4.77375L10.9088 5.835L10.9125 5.83875Z' fill='black'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M10.9125 5.83875L11.4412 6.3675L11.97 6.89625L7.19625 11.67L6.135 10.6088L10.1588 6.585H0V5.085H10.1588L6.135 1.06125L7.19625 0L11.97 4.77375L10.9088 5.835L10.9125 5.83875Z' fill='black'/%3E%3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-transition: transform 0.35s ease-in-out;
    -ms-transition: transform 0.35s ease-in-out;
    -o-transition: transform 0.35s ease-in-out;
    -moz-transition: transform 0.35s ease-in-out;
    transition: transform 0.35s ease-in-out;
}

.error-404 .error-404-content a.button:hover {
    background: var(--color-black);
    color: var(--color-white);
    border-color: var(--color-black);
}

.error-404 .error-404-content a.button:hover::after {
    transform: translateX(4px) scale(1.1);
}

.error404 header.site-header, .error404 footer.site-footer{display: none !important;}

@media (max-width: 767.98px) {
    .error-404{padding: 88px 0;}
}


/*======= Default page (Terms, Privacy, etc.) =======*/

.page-template-default .defaut-page {
    padding-top: calc(var(--site-header-height, 80px) + 88px);
    padding-bottom: 88px;
    color: var(--grey-90);
}

.page-template-default .defaut-page .entry-header {
    margin-bottom: 40px;
}

.page-template-default .defaut-page .entry-header .entry-title,
.page-template-default .defaut-page .entry-content > h1:first-child {
    margin: 0 0 40px;
    color: var(--grey-90);
}

.page-template-default .defaut-page .entry-content {
    max-width: 866px;
}

.page-template-default .defaut-page .entry-content > * + * {
    margin-top: 24px;
}

.page-template-default .defaut-page .entry-content h2,
.page-template-default .defaut-page .entry-content h3,
.page-template-default .defaut-page .entry-content h4,
.page-template-default .defaut-page .entry-content h5,
.page-template-default .defaut-page .entry-content h6 {
    margin: 24px 0 0;
    color: var(--grey-90);
}

.page-template-default .defaut-page .entry-content h2:first-child,
.page-template-default .defaut-page .entry-content h3:first-child,
.page-template-default .defaut-page .entry-content h4:first-child,
.page-template-default .defaut-page .entry-content h5:first-child,
.page-template-default .defaut-page .entry-content h6:first-child {
    margin-top: 0;
}

.page-template-default .defaut-page .entry-content p,
.page-template-default .defaut-page .entry-content ul,
.page-template-default .defaut-page .entry-content ol {
    margin: 0;
    font-size: var(--fontsize-16);
    line-height: 26px;
    color: var(--grey-90);
}

.page-template-default .defaut-page .entry-content p + p,
.page-template-default .defaut-page .entry-content p + ul,
.page-template-default .defaut-page .entry-content p + ol,
.page-template-default .defaut-page .entry-content ul + p,
.page-template-default .defaut-page .entry-content ol + p,
.page-template-default .defaut-page .entry-content ul + ul,
.page-template-default .defaut-page .entry-content ol + ol,
.page-template-default .defaut-page .entry-content h2 + p,
.page-template-default .defaut-page .entry-content h3 + p,
.page-template-default .defaut-page .entry-content h4 + p,
.page-template-default .defaut-page .entry-content h5 + p,
.page-template-default .defaut-page .entry-content h6 + p,
.page-template-default .defaut-page .entry-content h2 + ul,
.page-template-default .defaut-page .entry-content h3 + ul,
.page-template-default .defaut-page .entry-content h4 + ul,
.page-template-default .defaut-page .entry-content h5 + ul,
.page-template-default .defaut-page .entry-content h6 + ul,
.page-template-default .defaut-page .entry-content h2 + ol,
.page-template-default .defaut-page .entry-content h3 + ol,
.page-template-default .defaut-page .entry-content h4 + ol,
.page-template-default .defaut-page .entry-content h5 + ol,
.page-template-default .defaut-page .entry-content h6 + ol {
    margin-top: 24px;
}

.page-template-default .defaut-page .entry-content ul,
.page-template-default .defaut-page .entry-content ol {
    padding-left: 24px;
}

.page-template-default .defaut-page .entry-content ul {
    list-style-type: square;
}

.page-template-default .defaut-page .entry-content li + li {
    margin-top: 12px;
}

.page-template-default .defaut-page .entry-content a {
    color: var(--grey-90);
    text-decoration: underline;
}

.page-template-default .defaut-page .entry-content a:hover {
    color: var(--color-black);
}

.page-template-default .defaut-page .entry-content strong {
    font-weight: 500;
}

@media (min-width: 768px) {
    .page-template-default .defaut-page {
        padding-top: calc(var(--site-header-height, 80px) + 100px);
        padding-bottom: 100px;
    }

    .page-template-default .defaut-page .entry-header {
        margin-bottom: 48px;
    }

    .page-template-default .defaut-page .entry-header .entry-title,
    .page-template-default .defaut-page .entry-content > h1:first-child {
        margin-bottom: 48px;
    }

    .page-template-default .defaut-page .entry-content > * + * {
        margin-top: 32px;
    }

    .page-template-default .defaut-page .entry-content h2,
    .page-template-default .defaut-page .entry-content h3,
    .page-template-default .defaut-page .entry-content h4,
    .page-template-default .defaut-page .entry-content h5,
    .page-template-default .defaut-page .entry-content h6 {
        margin-top: 32px;
    }

    .page-template-default .defaut-page .entry-content p + p,
    .page-template-default .defaut-page .entry-content p + ul,
    .page-template-default .defaut-page .entry-content p + ol,
    .page-template-default .defaut-page .entry-content ul + p,
    .page-template-default .defaut-page .entry-content ol + p,
    .page-template-default .defaut-page .entry-content ul + ul,
    .page-template-default .defaut-page .entry-content ol + ol,
    .page-template-default .defaut-page .entry-content h2 + p,
    .page-template-default .defaut-page .entry-content h3 + p,
    .page-template-default .defaut-page .entry-content h4 + p,
    .page-template-default .defaut-page .entry-content h5 + p,
    .page-template-default .defaut-page .entry-content h6 + p,
    .page-template-default .defaut-page .entry-content h2 + ul,
    .page-template-default .defaut-page .entry-content h3 + ul,
    .page-template-default .defaut-page .entry-content h4 + ul,
    .page-template-default .defaut-page .entry-content h5 + ul,
    .page-template-default .defaut-page .entry-content h6 + ul,
    .page-template-default .defaut-page .entry-content h2 + ol,
    .page-template-default .defaut-page .entry-content h3 + ol,
    .page-template-default .defaut-page .entry-content h4 + ol,
    .page-template-default .defaut-page .entry-content h5 + ol,
    .page-template-default .defaut-page .entry-content h6 + ol {
        margin-top: 32px;
    }
}

@media (min-width: 1200px) {
    .page-template-default .defaut-page {
        padding-top: calc(var(--site-header-height, 80px) + 120px);
        padding-bottom: 120px;
    }
}

/*======= Default page end =======*/

/*======= Rothfield Connect start =======*/

.rc-intro {
    background: var(--grey-10);
}

.rc-features {
    background: var(--grey-90);
    color: var(--color-white);
}

.rc-features .intro-block__heading,
.rc-features .intro-block__body,
.rc-features .intro-block__body p {
    color: var(--color-white);
}

.rc-features .intro-block__body,
.rc-features .intro-block__body p {
    font-size: 16px;
}

.rc-features .intro-block__heading {
    margin-bottom: 24px;
    max-width: none;
}

.rc-features .intro-block__row{align-items: center;}

.rc-features .intro-block__heading-col {
    order: -1;
}

.rc-features__img {
    display: block;
    width: 100%;
    max-width: 568px;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.rc-features .mp-accordion__item {
    border-color: var(--grey-80);
}

.rc-features .mp-accordion__title {
    color: var(--color-white);
    padding-left: 0;
    padding-right: 0;
}

.rc-features .mp-accordion__icon {
    color: var(--color-white);
}

.rc-features .mp-accordion__content {
    max-width: 576px;
    color: var(--color-white);
    padding-left: 0;
    padding-right: 0;
}

.rc-features .mp-accordion__content p {
    color: var(--color-white);
}

@media (min-width: 1200px) {
    .rc-features.section-padding {
        padding-top: 110px;
        padding-bottom: 110px;
    }

    .rc-features .intro-block__heading-col {
        order: 0;
    }
}

.rc-flexibility {
    background: var(--grey-90);
    color: var(--color-white);
    text-align: center;
}

.rc-flexibility__inner {
    max-width: 866px;
    margin: 0 auto;
}

.rc-flexibility__inner span {
    display: block;
    font-size: var(--fontsize-12);
    line-height: 20px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--grey-40);
    margin-bottom: 16px;
}

.rc-flexibility__inner h2 {
    color: var(--color-white);
    margin-bottom: 16px;
}

.rc-flexibility__inner h2 strong {
    font-weight: 500;
}

.rc-flexibility__inner h3 {
    margin: 0;
    font-size: var(--fontsize-32);
    line-height: 40px;
    color: var(--color-accent);
}

.rc-modules {
    background: var(--grey-90);
    color: var(--color-white);
    padding: 0;
}

.rc-modules__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    width: 100%;
}

.rc-modules__col {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 64px;
    min-width: 0;
    min-height: 535px;
    padding: 32px 24px;
    border-bottom: 1px solid var(--grey-80);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-transition: color 0.45s ease;
    -ms-transition: color 0.45s ease;
    -o-transition: color 0.45s ease;
    -moz-transition: color 0.45s ease;
    transition: color 0.45s ease;
}

.rc-modules__col.offer-panel--hover {
    position: relative;
    overflow: hidden;
}

.rc-modules__col.offer-panel--hover > * {
    position: relative;
    z-index: 1;
}

.rc-modules__col:first-child {
    border-top: 1px solid var(--grey-80);
}

.rc-modules__top {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.rc-modules__top h5 {
    font-size: var(--fontsize-20);
    line-height: 28px;
    font-weight: 500;
    color: var(--color-white);
    margin-bottom: 4px;
}

.rc-modules__top p {
    font-size: var(--fontsize-20);
    line-height: 28px;
    color: var(--color-white);
    margin-bottom: 0;
}

.rc-modules__bottom {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 64px;
}

.rc-modules__features {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 28px;
    width: 100%;
}

.rc-modules__features li {
    display: flex;
    align-items: center;
    gap: 16px;
    color: var(--color-white);
}

.rc-modules__icon {
    display: block;
    width: 32px;
    height: 32px;
    flex-shrink: 0;
    margin-top: 2px;
}

.rc-modules__feature-text {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.rc-modules__feature-text h6 {
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 500;
    color: var(--color-white);
    margin-bottom: 0;
}

.rc-modules__feature-text span {
    font-size: var(--fontsize-16);
    line-height: 24px;
    color: var(--color-white);
}

.rc-modules__col .btn {
    align-self: center;
    position: static;
}

.rc-modules__col .btn::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 3;
}

.rc-modules__col.offer-panel--hover > .rc-modules__bottom {
    position: static;
}

.rc-modules__col .rc-modules__features {
    position: relative;
    z-index: 1;
}

@media (min-width: 768px) {
    .rc-modules__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        border-top: 1px solid var(--grey-80);
        border-bottom: 1px solid var(--grey-80);
    }

    .rc-modules__col {
        border-top: 0;
        border-bottom: 0;
        border-right: 1px solid var(--grey-80);
    }

    .rc-modules__col:first-child {
        border-top: 0;
    }

    .rc-modules__col:nth-child(2n) {
        border-right: 0;
    }

    .rc-modules__col:nth-child(n + 3) {
        border-top: 1px solid var(--grey-80);
    }
}

@media (min-width: 1200px) {
    .rc-modules__grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .rc-modules__col {
        border-top: 0;
        border-bottom: 0;
        border-right: 1px solid var(--grey-80);
    }

    .rc-modules__col:nth-child(2n) {
        border-right: 1px solid var(--grey-80);
    }

    .rc-modules__col:nth-child(n + 3) {
        border-top: 0;
    }

    .rc-modules__col:last-child {
        border-right: 0;
    }
}

.cta-bar--dark {
    background: var(--grey-90);
    border-top: 1px solid var(--grey-80);
    color: var(--color-white);
}

.cta-bar--dark .cta-bar__title,
.cta-bar--dark .cta-bar__link {
    color: var(--color-white);
}

.cta-bar--dark .cta-bar__action {
    color: var(--color-accent);
}

.cta-bar--dark .cta-bar__arrow {
    color: var(--color-accent);
}

.cta-bar--dark .cta-bar__link {
    color: var(--color-accent);
}

@media (max-width: 767.98px) {
    .rc-how-it-works .mp-case-study__header {
        text-align: left;
    }

    /* What you get */
    .rc-features .intro-block__row {
        gap: 32px;
    }

    .rc-features .intro-block__heading {
        font-size: 26px;
        line-height: 34px;
        margin-bottom: 32px;
    }

    .rc-features .intro-block__body,
    .rc-features .intro-block__body p {
        font-size: var(--fontsize-16);
        line-height: 24px;
    }

    .rc-features .intro-block__accordion {
        margin-top: 56px;
    }

    .rc-features .mp-accordion__title {
        padding: 24px 8px;
    }

    .rc-features .mp-accordion__content {
        padding: 0 8px 24px;
        font-size: var(--fontsize-16);
        line-height: 24px;
    }

    /* Flexibility */
    .rc-flexibility.section-padding {
        padding-top: 80px;
        padding-bottom: 80px;
    }

    .rc-flexibility__inner span {
        margin-bottom: 12px;
    }

    .rc-flexibility__inner h2 {
        margin-bottom: 24px;
    }

    .rc-flexibility__inner h3 {
        font-size: 26px;
        line-height: 34px;
    }

    /* Modules */
    .rc-modules__col {
        min-height: 500px;
        padding: 32px 28px;
        gap: 114px;
    }

    .rc-modules__top h5,
    .rc-modules__top p {
        font-size: var(--fontsize-20);
        line-height: 28px;
    }

    .rc-modules__top h5 {
        margin-bottom: 4px;
    }

    .rc-modules__bottom {
        gap: 64px;
        width: 100%;
    }

    .rc-modules__features {
        gap: 28px;
    }

    .rc-modules__feature-text h6,
    .rc-modules__feature-text span {
        font-size: var(--fontsize-16);
        line-height: 24px;
    }

    .rc-modules__col .btn {
        align-self: center;
        justify-content: center;
    }
}

.mp-cta--light {
    color: var(--color-white);
}

.mp-cta--light .mp-cta__title,
.mp-cta--light .mp-cta__subtitle,
.mp-cta--light .mp-cta__subtitle p {
    color: var(--color-white);
}

.mp-cta--light .mp-cta__btn {
    border-color: var(--color-white);
    color: var(--color-white);
}

.mp-cta--light .mp-cta__btn:hover {
    background: var(--color-white);
    border-color: var(--color-white);
    color: var(--grey-90);
}

.rc-intro .intro-block__body a + p {
    margin-top: 25px;
}

/*======= Rothfield Connect end =======*/


/*======= Create Modules Page start =======*/

/*-- Intro (white variant) start --*/

.cm-intro {
    background: var(--color-white);
}

.cm-intro .intro-block__body,
.cm-intro .intro-block__body p {
    color: var(--grey-80);
}

/*-- Intro (white variant) end ---*/


/*-- Module Link Cards start --*/

.cm-module-links {
    background: var(--color-white);
    border-top: 1px solid #F2F2F2;
    border-bottom: 1px solid #F2F2F2;
}

.cm-module-links__grid {
    gap: 0;
}

.cm-module-link {
    width: 100%;
    padding: 40px 0;
    border-bottom: 1px solid #F2F2F2;
}

.cm-module-link:last-child {
    border-bottom: none;
}

.cm-module-link__icon {
    margin-bottom: 48px;
}

.cm-module-link__icon img {
    display: block;
    width: 48px;
    height: auto;
}

.cm-module-link__title {
    font-size: var(--fontsize-32);
    line-height: 40px;
    font-weight: 400;
    color: var(--grey-90);
    margin-bottom: 16px;
}

.cm-module-link__body p {
    font-size: var(--fontsize-16);
    line-height: 24px;
    color: var(--grey-80);
}

.cm-module-link__action {
    margin-top: 32px;
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 500;
    gap: 8px;
}

.cm-module-link__arrow {
    width: 16px;
    height: 16px;
    -webkit-transition: transform 0.3s ease-in-out;
    -ms-transition: transform 0.3s ease-in-out;
    -o-transition: transform 0.3s ease-in-out;
    -moz-transition: transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out;
}

.cm-module-link__action:hover .cm-module-link__arrow {
    transform: translateY(4px);
}

@media (min-width: 768px) {
    .cm-module-links {
        border-top-color: var(--grey-40);
        border-bottom-color: var(--grey-40);
    }

    .cm-module-link {
        width: 50%;
        padding: 48px 60px;
        border-bottom: none;
        border-right: 1px solid var(--grey-40);
    }

    .cm-module-link:first-child {
        padding-left: 0;
    }

    .cm-module-link:last-child {
        padding-right: 0;
        border-right: none;
    }

    .cm-module-link__icon {
        margin-bottom: 80px;
    }

    .cm-module-link__title {
        font-size: var(--fontsize-32);
        line-height: 40px;
        font-weight: 500;
        color: var(--color-black);
    }

    .cm-module-link__body p {
        color: var(--color-black);
    }

    .cm-module-link__action {
        color: var(--grey-90);
    }
}

@media (min-width: 1200px) {
    .cm-module-link__icon {
        margin-bottom: 80px;
    }
}

/*-- Module Link Cards end ---*/


/*-- Create Modules sticky nav start --*/

.cm-sticky-nav {
    position: fixed;
    top: var(--site-header-height, 80px);
    left: 0;
    right: 0;
    z-index: 40;
    background: var(--color-menu-bg);
    color: var(--color-white);
    border-top: 1px solid var(--grey-80);
    border-bottom: 1px solid var(--grey-80);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    -webkit-transform: translateY(-6px);
    -ms-transform: translateY(-6px);
    transform: translateY(-6px);
    -webkit-transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
    transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
}

.cm-sticky-nav.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.cm-sticky-nav__grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    min-height: 48px;
}

.cm-sticky-nav__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    gap: 12px;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 50%;
    flex: 1 1 50%;
    width: 50%;
    min-height: 48px;
    padding: 12px 0;
    color: var(--color-white);
    text-decoration: none;
    text-align: left;
    border-right: 1px solid var(--grey-80);
    -webkit-transition: background-color 0.2s ease, color 0.2s ease;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.cm-sticky-nav__link:last-child {
    border-right: none;
    padding-left: 20px;
}

/* .cm-sticky-nav__link:hover,
.cm-sticky-nav__link:focus-visible {
    color: var(--color-white);
    background: rgba(255, 255, 255, 0.06);
} */

.cm-sticky-nav__icon {
    display: block;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 24px;
    height: 24px;
}

.cm-sticky-nav__icon img {
    display: block;
    width: 100%;
    height: 100%;
    -webkit-filter: brightness(0) saturate(100%) invert(78%) sepia(38%) saturate(1181%) hue-rotate(332deg) brightness(102%) contrast(101%);
    filter: brightness(0) saturate(100%) invert(78%) sepia(38%) saturate(1181%) hue-rotate(332deg) brightness(102%) contrast(101%);
}

.cm-sticky-nav__label {
    font-size: var(--fontsize-14, 14px);
    line-height: 20px;
    font-weight: 500;
}

#asset-cloud,
#template-studio {
    scroll-margin-top: calc(var(--site-header-height, 80px) + 48px);
}

@media (min-width: 768px) {
    .cm-sticky-nav__link {
        padding: 12px 0;
    }

    .cm-sticky-nav__link:last-child {
        padding-left: 40px;
    }

    .cm-sticky-nav__label {
        font-size: var(--fontsize-16);
        line-height: 24px;
    }
}

/*-- Create Modules sticky nav end ---*/


/*-- Module Detail Block start --*/

.cm-module {
    position: relative;
    width: 100%;
    max-width: 1440px;
    margin: 0 auto 24px;
    padding-left: 20px;
    padding-right: 20px;
    background: var(--grey-90);
    background-clip: content-box;
    color: var(--color-white);
    overflow: hidden;
}

.cm-module + .cm-module {
    margin-top: 0;
}

.cm-module::before {
    content: '';
    position: absolute;
    top: 0;
    left: 20px;
    width: 4px;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    /* above the nested .cta-bar, which sets z-index: 2 */
    z-index: 3;
}

.cm-module--gradient1::before {
    background-image: url('../images/grey-panel-hover.png');
}

.cm-module--gradient2::before {
    background-image: url('../images/grey-panel-hover2.png');
}

.cm-module--gradient3::before {
    background-image: url('../images/grey-panel-hover3.png');
}

.cm-module--gradient4::before {
    background-image: url('../images/grey-panel-hover4.png');
}

.cm-module--gradient5::before {
    background-image: url('../images/grey-panel-hover5.png');
}

.cm-module--gradient6::before {
    background-image: url('../images/grey-panel-hover6.png');
}

.cm-module--gradient7::before {
    background-image: url('../images/grey-panel-hover7.png');
}

.cm-module--gradient8::before {
    background-image: url('../images/grey-panel-hover8.png');
}

.cm-module--gradient9::before {
    background-image: url('../images/grey-panel-hover9.png');
}

.cm-module--gradient10::before {
    background-image: url('../images/grey-panel-hover10.png');
}

.cm-module--gradient-yellow::before {
    background-image: url('../images/yellow-panel-hover.png');
}

.cm-module__intro {
    background: var(--grey-90);
    border-bottom: 1px solid #353535;
}

.cm-module__intro-row {
    gap: 0;
}

.cm-module__intro-col {
    width: 100%;
    padding: 48px 0;
}

.cm-module__icon {
    margin-bottom: 24px;
}

.cm-module__icon img {
    display: block;
    width: 48px;
    height: auto;
    /* Source SVGs are --grey-90; tint to accent for the dark block */
    -webkit-filter: brightness(0) saturate(100%) invert(78%) sepia(38%) saturate(1181%) hue-rotate(332deg) brightness(102%) contrast(101%);
    filter: brightness(0) saturate(100%) invert(78%) sepia(38%) saturate(1181%) hue-rotate(332deg) brightness(102%) contrast(101%);
}

.cm-module__title {
    font-weight: 400;
    color: var(--color-white);
    margin-bottom: 24px;
}

.cm-module__body p {
    font-size: 18px;
    line-height: 24px;
    color: #fff;
}

.cm-module__body p + p {
    margin-top: 24px;
}

.cm-module__graphic-col {
    width: 100%;
    padding: 0 0 48px;
}

.cm-module__graphic {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 200px;
    height: 100%;
}

.cm-module__graphic-img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}

.cm-module__features {
    background: var(--grey-90);
    padding: 48px 20px;
}

.cm-module__features > .container {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

.cm-module__features-header {
    gap: 24px;
    margin-bottom: 40px;
}

.cm-module__features-title-col,
.cm-module__features-intro-col {
    width: 100%;
}

.cm-module__features-title {
    font-weight: 400;
    color: var(--color-white);
}

.cm-module__features-intro p {
    font-size: 18px;
    line-height: 24px;
    color: #fff;
}

.cm-module__features-intro p + p {
    margin-top: 24px;
}

.cm-module__features-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 40px;
}

.cm-feature__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    margin-bottom: 24px;
    background: #505050;
    border-radius: 8px;
}

.cm-feature__icon img {
    display: block;
    width: 40px;
    height: auto;
}

.cm-feature__title {
    font-size: 18px;
    line-height: 24px;
    font-weight: 500;
    color: var(--color-white);
    margin-bottom: 8px;
}

.cm-feature__body p {
    font-size: 18px;
    line-height: 24px;
    color: #fff;
}

/* Nested dark CTA matches Figma divider + type */
.cm-module .cta-bar--dark {
    border-top-color: #353535;
    padding-left: 0;
    padding-right: 0;
}

.cm-module .cta-bar > .container {
    max-width: none;
    padding-left: 20px;
    padding-right: 20px;
}

@media (min-width: 768px) {
    .cm-module {
        padding-left: 40px;
        padding-right: 40px;
    }

    .cm-module::before {
        left: 40px;
    }

    .cm-module .cta-bar > .container {
        padding-left: 40px;
        padding-right: 40px;
    }

    .cm-module__features-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cm-module__features-header {
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: flex-start;
        gap: 0;
    }

    .cm-module__features-title-col,
    .cm-module__features-intro-col {
        width: 50%;
        justify-content: flex-start;
    }
}

@media (min-width: 992px) {
    .cm-module {
        margin-bottom: 40px;
    }

    /* row spans the full block so the graphic can reach the block edge */
    .cm-module__intro > .container {
        max-width: none;
        padding-left: 0;
        padding-right: 0;
    }

    .cm-module__intro {
        border-bottom-color: var(--grey-80);
    }

    .cm-module__intro-row {
        flex-wrap: nowrap;
    }

    .cm-module__intro-col {
        width: 50%;
        height: 635px;
        justify-content: center;
        padding: 120px 60px;
        border-right: 1px solid var(--grey-80);
    }

    .cm-module__title {
        font-size: var(--fontsize-40);
        line-height: 48px;
        font-weight: 500;
    }

    .cm-module__body p {
        line-height: 26px;
    }

    .cm-module__graphic-col {
        position: relative;
        width: 50%;
        padding: 0;
    }

    /* fills the column edge to edge, top to bottom */
    .cm-module__graphic {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        min-height: 0;
    }

    .cm-module__graphic-img {
        height: 100%;
    }

    .cm-module__features {
        padding: 80px 40px;
    }

    .cm-module__features-header {
        gap: 83px;
    }

    .cm-module__features-title {
        font-size: var(--fontsize-32);
        line-height: 40px;
    }

    .cm-module__features-title strong {
        font-weight: 500;
    }

    .cm-module__features-intro p {
        line-height: 26px;
    }

    .cm-module__features-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        column-gap: 40px;
        row-gap: 88px;
    }

    .cm-feature__title {
        font-size: var(--fontsize-16);
        line-height: 24px;
        color: var(--color-white);
    }

    .cm-feature__body p {
        font-size: var(--fontsize-16);
        line-height: 24px;
        color: var(--grey-10);
    }

}

@media (min-width: 1200px) {
    .cm-module::before {
        width: 10px;
    }

    .cm-module__features {
        padding: 120px 60px;
    }

    .cm-module__features-header {
        margin-bottom: 112px;
    }

    .cm-module .cta-bar > .container {
        padding-left: 60px;
        padding-right: 60px;
    }

    .cm-module .cta-bar--dark {
        border-top-color: var(--grey-80);
        padding-top: 45px;
        padding-bottom: 45px;
    }

    .cm-module .cta-bar__title {
        font-size: var(--fontsize-32);
        line-height: 40px;
        color: var(--color-white);
    }

    .cm-module .cta-bar__link {
        font-size: var(--fontsize-32);
        line-height: 40px;
        color: var(--color-accent);
    }

    .cm-module .cta-bar__arrow {
        width: 48px;
        height: 48px;
    }

    .cm-module .cta-bar__arrow svg,
    .cm-module .cta-bar__arrow img {
        width: 48px;
        height: 48px;
    }
}

@media (min-width: 1400px) {
    .cm-module {
        padding-left: 60px;
        padding-right: 60px;
    }

    .cm-module::before {
        left: 60px;
    }

    .cm-module__intro-col {
        padding-left: 60px;
    }
}

/*-- Module Detail Block end ---*/


/*-- Create Stats start --*/

.cm-stats {
    background: var(--color-white);
}

.cm-stats__header {
    text-align: center;
    margin-bottom: 48px;
}

.cm-stats__title {
    font-size: 26px;
    line-height: 34px;
    font-weight: 400;
    color: var(--grey-90);
    margin-bottom: 24px;
}

.cm-stats__title strong {
    font-weight: 500;
}

.cm-stats__subtitle p {
    font-size: var(--fontsize-18);
    line-height: 26px;
    color: var(--grey-90);
}

.cm-stats__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 40px;
}

.cm-stat__label {
    display: block;
    font-size: var(--fontsize-18);
    line-height: 26px;
    color: var(--grey-90);
    margin-bottom: 4px;
    min-height: 26px;
}

.cm-stat__number {
    display: block;
    font-size: 56px;
    line-height: 1.1;
    font-weight: 500;
    color: var(--grey-90);
    margin-bottom: 16px;
}

.cm-stat__body p {
    font-size: var(--fontsize-18);
    line-height: 26px;
    color: var(--grey-90);
}

@media (min-width: 768px) {
    .cm-stats__header {
        text-align: center;
        margin-bottom: 80px;
    }

    .cm-stats__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 40px 32px;
    }
}

@media (min-width: 1200px) {
    .cm-stats__title {
        font-size: var(--fontsize-40);
        line-height: 48px;
    }

    .cm-stats__header {
        margin-bottom: 120px;
    }

    .cm-stat__label {
        font-weight: 500;
    }

    .cm-stat__number {
        font-size: 80px;
        line-height: 88px;
    }

    .cm-stat__body p {
        font-weight: 500;
    }

    .cm-stats__grid {
        gap: 40px 60px;
    }
}

/*-- Create Stats end ---*/


/*-- Case Study (grey variant) start --*/

.cm-case-study {
    background: var(--grey-10);
}

/*-- Case Study (grey variant) end ---*/


/*-- Built into Connect (dark) start --*/

.cm-built-into {
    background: var(--grey-90);
    color: var(--color-white);
}

.cm-built-into .intro-block__heading {
    color: var(--color-white);
}

.cm-built-into .intro-block__body,
.cm-built-into .intro-block__body p {
    color: var(--color-white);
}

.cm-built-into .intro-block__body p + p {
    margin-top: 16px;
}

/*-- Built into Connect (dark) end ---*/


/*-- Create Modules mobile (max 767) start --*/

@media (max-width: 767px) {
    /* Module link cards */
    .cm-module-link {
        padding: 48px 0;
    }

    .cm-module-link__icon {
        margin-bottom: 32px;
    }

    .cm-module-link__title {
        font-size: 26px;
        line-height: 34px;
        font-weight: 500;
        color: var(--color-black);
        margin-bottom: 16px;
    }

    .cm-module-link__body p {
        font-size: var(--fontsize-16);
        line-height: 24px;
        color: var(--color-black);
    }

    .cm-module-link__action {
        margin-top: 32px;
        font-size: var(--fontsize-16);
        line-height: 24px;
        font-weight: 500;
        color: var(--grey-90);
    }

    /* Module detail blocks */
    .cm-module {
        margin-bottom: 48px;
    }

    .cm-module__intro > .container {
        padding-left: 0;
        padding-right: 0;
    }

    .cm-module__intro-col {
        padding: 48px 20px;
    }

    .cm-module__graphic-col {
        width: 100%;
        padding: 0;
    }

    .cm-module__graphic {
        min-height: 350px;
        height: 350px;
    }

    .cm-module__graphic-img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .cm-module__title {
        font-size: 36px;
        line-height: 40px;
        font-weight: 500;
        color: var(--color-white);
    }

    .cm-module__body p {
        font-size: var(--fontsize-18);
        line-height: 26px;
        color: var(--color-white);
    }

    .cm-module__features {
        padding: 88px 20px;
    }

    .cm-module__features-header {
        gap: 40px;
        margin-bottom: 88px;
    }

    .cm-module__features-title {
        font-size: 26px;
        line-height: 34px;
        font-weight: 400;
        color: var(--color-white);
    }

    .cm-module__features-title strong {
        font-weight: 500;
    }

    .cm-module__features-intro p {
        font-size: var(--fontsize-18);
        line-height: 26px;
        color: var(--color-white);
    }

    .cm-module__features-grid {
        gap: 88px;
    }

    .cm-feature__title {
        font-size: var(--fontsize-16);
        line-height: 24px;
        font-weight: 500;
    }

    .cm-feature__body p {
        font-size: var(--fontsize-16);
        line-height: 24px;
        color: var(--grey-10);
    }

    .cm-module .cta-bar__title,
    .cm-module .cta-bar__link {
        font-size: 26px;
        line-height: 34px;
    }

    /* Stats */
    .cm-stats__header {
        text-align: left;
        margin-bottom: 80px;
    }

    .cm-stats__title {
        font-size: 36px;
        line-height: 40px;
        font-weight: 400;
        color: var(--grey-90);
        margin-bottom: 40px;
    }

    .cm-stats__subtitle p {
        font-size: var(--fontsize-18);
        line-height: 26px;
        color: var(--grey-90);
    }

    .cm-stats__grid {
        gap: 80px;
    }

    .cm-stat__label {
        font-size: var(--fontsize-18);
        line-height: 26px;
        font-weight: 500;
        color: var(--grey-90);
    }

    .cm-stat__number {
        font-size: 72px;
        line-height: 80px;
        font-weight: 500;
        color: var(--grey-90);
        margin-bottom: 16px;
    }

    .cm-stat__body p {
        font-size: var(--fontsize-18);
        line-height: 26px;
        font-weight: 500;
        color: var(--grey-90);
    }

    /* Built into (create-page scoped) */
    .cm-built-into .intro-block__heading {
        font-size: 36px;
        line-height: 40px;
        font-weight: 400;
        color: var(--color-white);
    }

    .cm-built-into .intro-block__body,
    .cm-built-into .intro-block__body p {
        font-size: var(--fontsize-18);
        line-height: 26px;
        color: var(--color-white);
    }

    .cm-built-into .intro-block__body p + p {
        margin-top: 24px;
    }
}

/*-- Create Modules mobile (max 767) end ---*/


/*-- Create Modules desktop (min 768) start --*/

@media (min-width: 768px) {
    .cm-built-into .intro-block__heading {
        font-size: var(--fontsize-40);
        line-height: 48px;
        font-weight: 400;
        color: var(--color-white);
    }

    .cm-built-into .intro-block__heading strong {
        font-weight: 500;
    }

    .cm-built-into .intro-block__body,
    .cm-built-into .intro-block__body p {
        font-size: var(--fontsize-18);
        line-height: 26px;
        color: var(--color-white);
    }

    .cm-built-into .intro-block__body p + p {
        margin-top: 24px;
    }

    .cm-module .cta-bar--dark {
        border-top-color: var(--grey-80);
    }

    .cm-module .cta-bar__title {
        font-size: var(--fontsize-32);
        line-height: 40px;
        color: var(--color-white);
    }

    .cm-module .cta-bar__link {
        font-size: var(--fontsize-32);
        line-height: 40px;
        color: var(--color-accent);
    }

    .cm-module .cta-bar__arrow {
        width: 48px;
        height: 48px;
    }

    .cm-module .cta-bar__arrow svg,
    .cm-module .cta-bar__arrow img {
        width: 48px;
        height: 48px;
    }

    .rc-modules__col {
        min-height: 535px;
        padding: 32px 24px;
        gap: 64px;
    }

    .rc-modules__bottom {
        gap: 64px;
    }
}

/*-- Create Modules desktop (min 768) end ---*/


/*-- Connect Modules highlight (Create active = white) start --*/

.rc-modules__col--highlight {
    background: var(--color-white);
    color: var(--grey-90);
}

.rc-modules__col--highlight .rc-modules__top h5,
.rc-modules__col--highlight .rc-modules__top p,
.rc-modules__col--highlight .rc-modules__feature-text h6,
.rc-modules__col--highlight .rc-modules__feature-text span {
    color: var(--grey-90);
}

.rc-modules__col--highlight .rc-modules__icon {
    -webkit-filter: brightness(0);
    filter: brightness(0);
}

.rc-modules__col--highlight .btn {
    color: var(--grey-90);
    border-color: var(--grey-90);
    background: var(--color-white);
}

.rc-modules__col--highlight .btn:hover {
    color: var(--color-white);
    background: var(--grey-90);
    border-color: var(--grey-90);
}

/* Hover (same classes as offer-panel) — dark text on light hover bg */
.rc-modules__col.offer-panel--hover:hover {
    color: var(--grey-90);
}

.rc-modules__col.offer-panel--hover:hover .rc-modules__top h5,
.rc-modules__col.offer-panel--hover:hover .rc-modules__top p,
.rc-modules__col.offer-panel--hover:hover .rc-modules__feature-text h6,
.rc-modules__col.offer-panel--hover:hover .rc-modules__feature-text span {
    color: var(--grey-90);
}

.rc-modules__col.offer-panel--hover .rc-modules__icon {
    -webkit-transition: filter 0.45s ease;
    -ms-transition: filter 0.45s ease;
    -o-transition: filter 0.45s ease;
    -moz-transition: filter 0.45s ease;
    transition: filter 0.45s ease;
}

.rc-modules__col.offer-panel--hover:hover .rc-modules__icon {
    -webkit-filter: brightness(0);
    filter: brightness(0);
}

.rc-modules__col.offer-panel--hover:hover .btn {
    color: var(--grey-90);
    border-color: var(--grey-90);
    background: transparent;
}

.rc-modules__col.offer-panel--hover:hover .btn:hover {
    color: var(--color-white);
    background: var(--grey-90);
    border-color: var(--grey-90);
}

/*-- Connect Modules highlight end ---*/

/*======= Create Modules Page end =======*/


/*======= Meet the Team Page start =======*/

.team-section {
    background: var(--color-white);
}

.team-section__grid {
    display: grid;
    grid-template-columns: 1fr;
    column-gap: 40px;
    row-gap: 32px;
}

.team-tile {
    display: flex;
    flex-direction: column;
    gap: 24px;
    min-width: 0;
}

.team-tile__media {
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: var(--color-black);
}

.team-tile__img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    transition: transform 0.45s ease;
}

.team-tile:hover .team-tile__img {
    transform: scale(1.06);
}

.team-tile__body {
    display: flex;
    flex-direction: column;
}

.team-tile__body h5 {
    margin: 0;
    font-family: var(--font-body);
    font-size: var(--fontsize-20);
    font-weight: 500;
    line-height: 28px;
    color: var(--grey-90);
}

.team-tile__body h5 + h5 {
    font-weight: 400;
    color: var(--grey-80);
}

@media (min-width: 768px) {
    .team-section__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 80px;
    }
}

@media (min-width: 1200px) {
    .team-section__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/*======= Meet the Team Page end =======*/


/*======= Case Study Detail Page start =======*/

.csd-detail {
    display: flex;
    flex-direction: column;
    gap: 88px;
    padding-top: calc(var(--site-header-height) + 60px);
}

.csd-detail > div:last-of-type {
    margin-bottom: 88px;
}

/* Hero (Figma Frame 190): top(title+meta) → banner → facts, gap 24 */
.csd-hero .container {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.csd-hero__top {
    display: flex;
    flex-direction: column;
    gap: 64px;
}

.csd-hero__title {
    margin: 0;
    font-size: 44px;
    line-height: 50px;
    font-weight: 400;
    color: var(--color-black);
}

.csd-hero__meta {
    display: flex;
    flex-direction: column;
    gap: 64px;
}

.csd-author {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.csd-author__label {
    display: block;
    font-size: var(--fontsize-12);
    line-height: 20px;
    font-weight: 400;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--color-black);
}

.csd-author__identity {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.csd-author__name {
    margin: 0;
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 500;
    color: var(--grey-90);
}

.csd-author__role {
    margin: 0;
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 400;
    color: var(--grey-90);
}

.csd-author__bio {
    margin: 0;
    max-width: 527px;
    font-size: var(--fontsize-16);
    line-height: 24px;
    color: var(--grey-80);
}

/* Tags + Share row, then 24px, then full-width line */
.csd-hero__bar {
    padding-bottom: 24px;
    border-bottom: 1px solid var(--grey-40);
}

.csd-hero__bar-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px 24px;
    min-height: 24px;
}

.csd-hero__bar-row .mp-case-study__modules {
    min-width: 0;
    flex: 1 1 auto;
}

.csd-hero__share {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 0 0 auto;
    margin-left: auto;
    text-decoration: none;
    color: #000;
}

.csd-hero__share h6 {
    margin: 0;
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 500;
    color: #000;
}

.csd-hero__share-icon {
    display: block;
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    background: rgba(255, 0, 174, 0.2);
    text-decoration: none;
}

.csd-media {
    margin: 0;
    overflow: hidden;
}

.csd-media img {
    display: block;
    width: 100%;
    height: auto;
    transition: transform 0.45s ease;
}

.csd-media:hover img {
    transform: scale(1.06);
}

/* Facts + 24px + full-width line */
.csd-facts-wrap {
    padding-bottom: 24px;
    border-bottom: 0.5px solid var(--grey-40);
}

.csd-facts {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px 40px;
    margin: 0;
}

.csd-facts__item {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin: 0;
}

.csd-facts__item dt {
    font-size: var(--fontsize-12);
    line-height: 20px;
    font-weight: 400;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--grey-80);
}

.csd-facts__item dd {
    margin: 0;
    font-size: var(--fontsize-16);
    line-height: 24px;
    color: var(--color-black);
}

/* Intro two-col */
.csd-intro {
    margin-bottom: 0;
}

.csd-intro__row {
    display: grid;
    grid-template-columns: 1fr;
    gap: 32px;
}

.csd-intro__heading {
    margin: 0;
    font-size: 32px;
    line-height: 40px;
    font-weight: 400;
    color: var(--grey-90);
}

.csd-intro__body-col p {
    margin: 0;
    font-size: var(--fontsize-18);
    line-height: 26px;
    color: var(--grey-90);
}

.csd-intro__body-col p + p,
.csd-intro__body-col p + ul,
.csd-intro__body-col ul + p {
    margin-top: 24px;
}

.csd-intro__body-col ul {
    margin: 0;
    padding-left: 1.5em;
    list-style-type: square;
    font-size: var(--fontsize-18);
    line-height: 26px;
    color: var(--grey-90);
}

.csd-intro__body-col li + li {
    margin-top: 8px;
}

/* Text sits in RIGHT 640 col; article.csd-detail gap handles section spacing */
.csd-col-content {
    width: 100%;
    max-width: 640px;
}

@media (min-width: 768px) {
    .csd-col-content {
        width: 50%;
        max-width: none;
        margin-left: auto;
    }
}

.csd-col-content:not(.csd-takeaways) h4 {
    margin: 0 0 32px;
    font-size: 28px;
    line-height: 36px;
    font-weight: 500;
    color: var(--grey-90);
}

.csd-col-content p {
    margin: 0;
    font-size: var(--fontsize-16);
    line-height: 24px;
    color: var(--grey-90);
}

.csd-col-content p + p {
    margin-top: 24px;
}

.csd-col-content:not(.csd-takeaways):has(> h4) {
    padding-top: 42px;
}

.csd-col-content:not(.csd-takeaways) > ul {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: 16px;
    row-gap: 16px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.csd-col-content:not(.csd-takeaways) > ul li {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 24px;
    padding-left: 18px;
    font-size: var(--fontsize-16);
    line-height: 24px;
    color: var(--grey-90);
}

.csd-col-content:not(.csd-takeaways) > ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: 4px;
    height: 4px;
    background: var(--grey-90);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.csd-pullquote {
    max-width: 895px;
    margin: 0 auto;
    padding: 0 16px;
}

.csd-pullquote p {
    margin: 0;
    font-size: 32px;
    line-height: 40px;
    font-weight: 500;
    color: var(--color-black);
}

.csd-col-content .intro-block__accordion {
    margin-top: 0;
}

/* Quote block — grey-10, min-height 600 */
.csd-quote {
    display: flex;
    align-items: center;
    min-height: 420px;
    padding: 88px 0;
    background: var(--grey-10);
    color: var(--grey-90);
}

.csd-quote .mp-quote__inner {
    max-width: 866px;
    margin: 0 auto;
    text-align: left;
}

.csd-quote .mp-quote__text {
    margin-bottom: 48px;
    font-size: 32px;
    line-height: 40px;
    font-weight: 500;
    color: var(--grey-90);
}

.csd-quote .mp-quote__text h2 {
    margin: 0;
    font: inherit;
    color: inherit;
}

.csd-quote .mp-quote__name {
    color: var(--grey-90);
}

.csd-quote .mp-quote__role {
    color: var(--grey-80);
    max-width: 100%;
}

/* Split: text left, image right, gap 40 */
.csd-split {
    display: grid;
    grid-template-columns: 1fr;
    gap: 40px;
    align-items: center;
}

.csd-split__content h5 {
    margin: 0 0 32px;
    font-size: 28px;
    line-height: 36px;
    font-weight: 500;
    color: var(--grey-90);
}

.csd-split__content p {
    margin: 0;
    font-size: var(--fontsize-16);
    line-height: 24px;
    color: var(--grey-90);
}

.csd-split__content p + p {
    margin-top: 24px;
}

.csd-split__media {
    margin: 0;
    overflow: hidden;
}

.csd-split__media img {
    display: block;
    width: 100%;
    height: auto;
    transition: transform 0.45s ease;
}

.csd-split__media:hover img {
    transform: scale(1.06);
}

.csd-media-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 40px;
}

.csd-stack {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.csd-stats {
    display: grid;
    grid-template-columns: 1fr;
    gap: 48px;
    padding: 42px 0;
}

.csd-stat {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 0 8px;
}

.csd-stat__head {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.csd-stat__desc {
    font-size: var(--fontsize-18);
    line-height: 26px;
    font-weight: 500;
    color: var(--grey-90);
}

.csd-stat__value {
    font-size: 64px;
    line-height: 88px;
    font-weight: 500;
    color: var(--grey-90);
}

.csd-takeaways {
    padding: 40px;
    background: var(--grey-10);
}

.csd-takeaways h5 {
    margin: 0 0 24px;
    font-size: var(--fontsize-20);
    line-height: 28px;
    font-weight: 500;
    color: var(--grey-90);
}

.csd-takeaways ul {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: var(--fontsize-16);
    line-height: 24px;
    color: var(--grey-90);
}

.csd-takeaways li {
    position: relative;
    padding-left: 18px;
}

.csd-takeaways li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 10px;
    width: 4px;
    height: 4px;
    background: var(--grey-90);
}

.csd-takeaways li + li {
    margin-top: 0;
}

/* CTA — light, centered (Figma dark type) */
.csd-cta {
    min-height: 600px;
    background-color: var(--grey-10);
}

.csd-cta .mp-cta__title {
    font-size: var(--fontsize-40);
    line-height: 48px;
    font-weight: 500;
    color: var(--grey-90);
}

.csd-cta .mp-cta__subtitle {
    margin-bottom: 64px;
}

/* Cancel article gap — section-padding already handles CTA → more spacing */
.csd-detail > .csd-more {
    margin-top: -88px;
}

/* More articles — 3 columns: title | tile | tile, 40px gutters */
.csd-more__inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: 40px;
    align-items: start;
}

.csd-more h2 {
    margin: 0;
    font-size: 32px;
    line-height: 40px;
    font-weight: 400;
    color: var(--grey-90);
}

.csd-more__tiles {
    display: grid;
    grid-template-columns: 1fr;
    gap: 40px;
}

.csd-more .case-study-card {
    width: 100%;
    max-width: 100%;
    flex: none;
    gap: 24px;
}

.csd-more .case-study-card__media {
    margin-bottom: 0;
    aspect-ratio: 1 / 1;
}

.csd-more .case-study-card__image {
    aspect-ratio: 1 / 1;
}

.csd-more .case-study-card h6 {
    margin: 0;
    font-size: var(--fontsize-16);
    line-height: 24px;
    font-weight: 500;
    color: #000;
}

.csd-more .case-study-card__label,
.csd-more .case-study-card__body {
    display: none;
}

@media (min-width: 768px) {
    .csd-hero__title {
        font-size: var(--fontsize-64);
        line-height: 72px;
    }

    .csd-facts {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .csd-intro__heading {
        font-size: var(--fontsize-40);
        line-height: 48px;
    }

    .csd-pullquote p {
        font-size: 48px;
        line-height: 56px;
    }

    .csd-quote {
        min-height: 600px;
    }

    .csd-quote .mp-quote__text {
        font-size: 48px;
        line-height: 56px;
        margin-bottom: 136px;
    }

    .csd-media-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .csd-stats {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        column-gap: 40px;
        row-gap: 0;
    }

    .csd-stat__value {
        font-size: 80px;
        line-height: 88px;
    }

    .csd-more__tiles {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 1200px) {
    .csd-detail {
        padding-top: calc(var(--site-header-height) + 200px);
    }

    /* Preserve previous hero → intro spacing (64px vs article 88px gap) */
    .csd-detail > .csd-hero {
        margin-bottom: -24px;
    }

    .csd-hero__title {
        font-size: var(--fontsize-64);
        line-height: 72px;
        color: var(--color-black);
    }

    .csd-author__label {
        display: none;
    }

    .csd-author__name,
    .csd-author__role {
        color: var(--grey-90);
    }

    .csd-author__bio {
        color: var(--grey-80);
    }

    .csd-hero__bar-row .mp-case-study__modules-label {
        color: var(--grey-80);
    }

    .csd-hero__bar-row .mp-case-study__modules-list li {
        color: #070707;
    }

    .csd-hero__share,
    .csd-hero__share h6 {
        color: var(--grey-90);
    }

    .csd-facts__item dt {
        color: var(--grey-80);
    }

    .csd-facts__item dd {
        color: var(--color-black);
    }

    .csd-intro__row {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 16px;
        align-items: start;
    }

    .csd-intro__heading {
        max-width: 527px;
        font-size: var(--fontsize-40);
        line-height: 48px;
        color: var(--grey-90);
    }

    .csd-intro__body-col p {
        font-size: var(--fontsize-18);
        line-height: 26px;
        color: var(--grey-90);
    }

    /* Right column: 640 of 1320 → push to end */
    .csd-col-content {
        max-width: 640px;
        margin-left: auto;
    }

    .csd-col-content:not(.csd-takeaways) h4 {
        font-size: 28px;
        line-height: 36px;
        color: var(--grey-90);
    }

    .csd-col-content p {
        font-size: var(--fontsize-16);
        line-height: 24px;
        color: var(--grey-90);
    }

    .csd-col-content:not(.csd-takeaways) > ul {
        column-gap: 40px;
        row-gap: 16px;
    }

    .csd-col-content:not(.csd-takeaways) > ul li {
        font-size: var(--fontsize-16);
        line-height: 24px;
        color: var(--grey-90);
    }

    .csd-col-content .mp-accordion__title {
        font-size: var(--fontsize-18);
        line-height: 26px;
        color: var(--grey-90);
    }

    .csd-col-content .mp-accordion__content {
        font-size: var(--fontsize-16);
        line-height: 24px;
        color: var(--grey-90);
    }

    .csd-pullquote {
        max-width: 867px;
        padding: 0;
    }

    .csd-pullquote p {
        font-size: 48px;
        line-height: 56px;
        color: var(--color-black);
    }

    .csd-quote .mp-quote__text {
        font-size: 48px;
        line-height: 56px;
        color: var(--grey-90);
    }

    .csd-quote .mp-quote__name {
        font-size: var(--fontsize-16);
        line-height: 24px;
        font-weight: 500;
        color: var(--grey-90);
    }

    .csd-quote .mp-quote__role {
        font-size: var(--fontsize-16);
        line-height: 24px;
        font-weight: 400;
        color: var(--grey-80);
    }

    .csd-split {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 40px;
    }

    .csd-split__content h5 {
        font-size: 28px;
        line-height: 36px;
        color: var(--grey-90);
    }

    .csd-split__content p {
        font-size: var(--fontsize-16);
        line-height: 24px;
        color: var(--grey-90);
    }

    .csd-stats {
        column-gap: 40px;
    }

    .csd-stat__value {
        font-size: 80px;
        line-height: 88px;
        color: var(--grey-90);
    }

    .csd-stat__desc {
        font-size: var(--fontsize-18);
        line-height: 26px;
        color: var(--grey-90);
    }

    .csd-takeaways h5 {
        font-size: var(--fontsize-20);
        line-height: 28px;
        color: var(--grey-90);
    }

    .csd-takeaways ul {
        font-size: var(--fontsize-16);
        line-height: 24px;
        color: var(--grey-90);
    }

    .csd-takeaways li + li {
        margin-top: 16px;
    }

    .csd-cta .mp-cta__title {
        font-size: var(--fontsize-40);
        line-height: 48px;
        font-weight: 500;
        color: var(--grey-90);
    }

    .csd-cta .mp-cta__subtitle {
        font-size: var(--fontsize-18);
        line-height: 26px;
        color: var(--grey-90);
    }

    .csd-more__inner {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 40px;
        align-items: start;
    }

    .csd-more h2 {
        font-size: var(--fontsize-40);
        line-height: 48px;
        font-weight: 400;
        color: var(--grey-90);
    }

    .csd-more h2 strong {
        font-weight: 500;
    }

    .csd-more .case-study-card h6 {
        font-size: var(--fontsize-16);
        line-height: 24px;
        color: var(--color-black);
    }

    .csd-more__tiles {
        grid-column: 2 / -1;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 40px;
    }
}

@media (max-width: 767px) {
    .csd-detail {
        gap: 56px;
        padding-top: calc(var(--site-header-height) + 304px);
    }

    .csd-detail > div:last-of-type {
        margin-bottom: 56px;
    }

    .csd-detail > .csd-more {
        margin-top: -56px;
    }

    /* Preserve previous hero → intro spacing (64px vs article 56px gap) */
    .csd-detail > .csd-hero {
        margin-bottom: 8px;
    }

    .csd-hero__title {
        font-size: 44px;
        line-height: 50px;
        color: var(--color-black);
    }

    .csd-author__label {
        display: none;
    }

    .csd-author__name,
    .csd-author__role {
        color: var(--grey-90);
    }

    .csd-author__bio {
        color: var(--grey-80);
    }

    .csd-hero__bar-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 48px;
    }

    .csd-hero__share {
        margin-left: 0;
        color: var(--grey-90);
    }

    .csd-hero__share h6 {
        color: var(--grey-90);
    }

    .csd-hero__bar-row .mp-case-study__modules-row {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: flex-start;
        gap: 18px;
        width: 100%;
    }

    .csd-hero__bar-row .mp-case-study__modules-label {
        padding-top: 10px;
        color: var(--grey-80);
    }

    .csd-hero__bar-row .mp-case-study__modules-list {
        flex: 1 1 auto;
        min-width: 0;
    }

    .csd-hero__bar-row .mp-case-study__modules-list li {
        color: #070707;
    }

    /* .csd-hero__bar-row .mp-case-study__modules-list li:first-child {
        margin-left: 7px;
    } */

    .csd-hero__bar-row .mp-case-study__modules-list li:first-child::before {
        content: none;
    }

    .csd-facts {
        column-gap: 30px;
        row-gap: 32px;
    }

    .csd-facts__item dt {
        color: var(--grey-80);
    }

    .csd-facts__item dd {
        color: var(--color-black);
    }

    .csd-intro__row {
        gap: 40px;
    }

    .csd-intro__heading {
        font-size: 36px;
        line-height: 40px;
        color: var(--grey-90);
    }

    .csd-intro__body-col p {
        font-size: var(--fontsize-18);
        line-height: 26px;
        color: var(--grey-90);
    }

    .csd-col-content:not(.csd-takeaways):has(> h4) {
        padding-top: 48px;
    }

    .csd-col-content:not(.csd-takeaways):has(> ul) h4 {
        margin-bottom: 34px;
        font-size: 24px;
        line-height: 32px;
        color: var(--grey-90);
    }

    .csd-col-content:not(.csd-takeaways):has(> p) h4 {
        margin-bottom: 32px;
        font-size: 28px;
        line-height: 36px;
        color: var(--grey-90);
    }

    .csd-col-content p {
        font-size: var(--fontsize-16);
        line-height: 24px;
        color: var(--grey-90);
    }

    .csd-col-content:not(.csd-takeaways) > ul {
        grid-template-columns: minmax(0, 1fr);
        row-gap: 24px;
    }

    .csd-col-content:not(.csd-takeaways) > ul li {
        font-size: var(--fontsize-16);
        line-height: 24px;
        color: var(--grey-90);
    }

    .csd-col-content .mp-accordion__title {
        font-size: var(--fontsize-18);
        line-height: 26px;
        color: var(--color-black);
    }

    .csd-col-content .mp-accordion__content {
        font-size: var(--fontsize-16);
        line-height: 24px;
        color: var(--color-black);
    }

    .csd-pullquote {
        max-width: none;
        padding: 0;
    }

    .csd-pullquote p {
        font-size: 36px;
        line-height: 40px;
        color: var(--color-black);
    }

    .csd-quote {
        min-height: 600px;
        padding: 40px 20px;
    }

    .csd-quote .mp-quote__text {
        margin-bottom: 56px;
        font-size: 36px;
        line-height: 40px;
        color: var(--grey-90);
    }

    .csd-quote .mp-quote__name {
        font-size: var(--fontsize-16);
        line-height: 24px;
        font-weight: 500;
        color: var(--grey-90);
    }

    .csd-quote .mp-quote__role {
        font-size: var(--fontsize-16);
        line-height: 24px;
        font-weight: 400;
        color: var(--grey-80);
    }

    .csd-split {
        gap: 24px;
    }

    .csd-split__media {
        order: -1;
        height: 396px;
    }

    .csd-split__media img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .csd-split__content h5 {
        margin-bottom: 32px;
        font-size: 28px;
        line-height: 36px;
        color: var(--grey-90);
    }

    .csd-split__content p {
        font-size: var(--fontsize-16);
        line-height: 24px;
        color: var(--grey-90);
    }

    .csd-media {
        min-height: 220px;
    }

    .csd-media img {
        min-height: 220px;
        object-fit: cover;
    }

    .csd-media-grid {
        gap: 20px;
    }

    .csd-media-grid .csd-media {
        height: 396px;
        min-height: 396px;
    }

    .csd-media-grid .csd-media img {
        width: 100%;
        height: 100%;
        min-height: 396px;
        object-fit: cover;
    }

    .csd-stack {
        gap: 20px;
    }

    .csd-stats {
        gap: 80px;
        padding: 32px 0;
    }

    .csd-stat__value {
        font-size: 72px;
        line-height: 80px;
        color: var(--grey-90);
    }

    .csd-stat__desc {
        font-size: var(--fontsize-18);
        line-height: 26px;
        color: var(--grey-90);
    }

    .csd-takeaways {
        padding: 40px 16px;
    }

    .csd-takeaways h5 {
        font-size: var(--fontsize-20);
        line-height: 28px;
        color: var(--grey-90);
    }

    .csd-takeaways ul {
        font-size: var(--fontsize-16);
        line-height: 24px;
        color: var(--grey-90);
    }

    .csd-takeaways li + li {
        margin-top: 8px;
    }

    .csd-cta {
        min-height: 715px;
    }

    .csd-cta .mp-cta__title {
        font-size: 36px;
        line-height: 40px;
        font-weight: 400;
        color: var(--grey-90);
    }

    .csd-cta .mp-cta__subtitle {
        margin-bottom: 80px;
        font-size: var(--fontsize-18);
        line-height: 26px;
        color: var(--grey-90);
    }

    .csd-more__inner {
        gap: 48px;
    }

    .csd-more h2 {
        font-size: 36px;
        line-height: 40px;
        font-weight: 400;
        color: var(--grey-90);
    }

    .csd-more h2 strong {
        font-weight: 500;
    }

    .csd-more__tiles {
        gap: 56px;
    }

    .csd-more .case-study-card {
        gap: 24px;
    }

    .csd-more .case-study-card h6 {
        margin-bottom: 32px;
        font-size: var(--fontsize-20);
        line-height: 28px;
        color: var(--grey-90);
    }
}

/*======= Case Study Detail Page end =======*/